Jump to content
Rine

Список чувствительности

Recommended Posts

process (int,b)
begin
   if (int'event and int='1') then  
          if (b="01") then  x<='1';  b1 <= "00";
                else b<=b+1; x<='0';
        end if;
    end if;
end process;

;

 

Здравствуйте! Не подскажите как правильно понять этот кусок кода...

В списке чувствительности сигнал int он периодически меняется, по его изменению выполняется код ниже... Но непонятно зачем в список занесли b, этот сигнал меняется только в этом коде и нигде больше...  К примеру изменился в коде b и процесс выполняется еще раз, или изменение сигналов чувствительности во время выполнения процесса не активируют выполнение процесса еще один раз?

Edited by Rine
дополнение

Share this post


Link to post
Share on other sites

Скорее всего сигнал "b" нужен в списке чувствительности потому что он проверяется внутри if 

if (b="01")

А вообще - используй Verilog и всё будет гораздо понятнее и проще.

Edited by Vascom

Share this post


Link to post
Share on other sites

Тогда два вопроса

1)То, что используется внутри надо выносить в список чувствительности?

2)Если переменная, которая в списке чувствительности изменится во время выполнения процесса, он начнется еще раз?

Share this post


Link to post
Share on other sites

Высококачественные конденсаторы Panasonic для надежности вашей электроники!

Электролитические алюминиевые конденсаторы Panasonic отличаются повышенной надежностью, длительным сроком службы, низким импедансом и выдерживают большой ток пульсаций, в то время как семейства полимерных конденсаторов Panasonic SP-CAP, POSCAP, OS-CON и HYBRID характеризуют сверхнизкий ESR и увеличенная емкость, работа при высоких напряжениях и в расширенном температурном диапазоне. Приобретая продукцию Panasonic, вы гарантированно получаете самое передовое решение для ваших задач. Для облегчения вашего выбора, мы подготовили подборку полезных материалов.

Читать статьи

В список надо вносить то, что проверяется в условиях (if, case). Хотя... Но в данном случае это ни на что не влияет.

Нет, ещё раз не начнётся, поскольку условие фронта int не наступит.

Не стоит относиться к этому коду, как к программе для компьютера. Лучше сразу примерно представлять во что данный код будет синтезирован.

Тут будут три регистра x, b, b1, которые будут менять своё значение только по положительному фронту тактового сигнала int.

Share this post


Link to post
Share on other sites

Да, условия фронта не наступит, но чтоб до проверки условия фронта дойти надо зайти в процесс... 

Правильно  я понимаю - изменился int, мы зашли в процесс и поменяли b. Тк b изменился мы входим еще раз в процесс, но так как не выполнено условие фронта int мы выходим?

Share this post


Link to post
Share on other sites
                     

Вебинар "Как создать BLE-устройство на базе новейшего беспроводного микроконтроллера STM32WB55"

27 ноября 2019 года компания КОМПЭЛ приглашает разработчиков, технических руководителей и энтузиастов беспроводной связи на вебинар, посвященный новинке 2019 года – мультипротокольному беспроводному микроконтроллеру STM32WB55, который позволяет создавать устройства на базе стандартов BLE 5.0; BLE Mesh; 802.15.4/ZigBee и Thread. На вебинаре мы покажем, как с помощью привычных инструментов STM32Cube и STM32CubeMX можно создать свое первое, надежно работающее BLE-приложение.

Зарегистрироваться на вебинар

Нет, я же говорю, ни куда мы не заходим. Этот код синтеризуется в регистры. Ни каких заходов как в функции обычных языков программирования тут нет. Все описанные регистры и логические элементы существуют и работают одновременно.

Share this post


Link to post
Share on other sites
process (a, b, tmp)
begin
tmp <= tmp or b;
y <= tmp;
end process;

тогда такой пример, здесь мы имеем дело с комбинационной петлей и элементом ИЛИ ... Зачем tmp в списке чувствительности? Я всегда думал, что список чувствительности это те сигналы, изменение которых начинает начало процесса... А что делать с сигналами, которые меняются в самом процессе, и одновременно находятся в списке чувствительности? 

Share this post


Link to post
Share on other sites

Тут просто комбинационная логика получится.

Можешь синтезировать оба варианта и построить схему, тогда всё будет ясно видно.

 

Тебе принципиально VHDL нужен? На Verilog подобных вопросов не возникнет.

Share this post


Link to post
Share on other sites
23 часа назад, Rine сказал:

process (int,b)
begin
   if (int'event and int='1') then  
          if (b="01") then  x<='1';  b1 <= "00";
                else b<=b+1; x<='0';
        end if;
    end if;
end process;

Здравствуйте! Не подскажите как правильно понять этот кусок кода...

В списке чувствительности сигнал int он периодически меняется, по его изменению выполняется код ниже... Но непонятно зачем в список занесли b, этот сигнал меняется только в этом коде и нигде больше...  К примеру изменился в коде b и процесс выполняется еще раз, или изменение сигналов чувствительности во время выполнения процесса не активируют выполнение процесса еще один раз?

Очень странный код в отрыве от программы целиком. Да, при изменении переменной b компилятор будет обращаться к этому коду, но так как переменная b проверяется только внутри старшего условия, то ничего в этом коде выполняться не будет. Из списка чувствительности можно смело убрать переменную b.

Share this post


Link to post
Share on other sites
В 30.11.2017 в 15:03, Rine сказал:

process (a, b, tmp)
begin
tmp <= tmp or b;
y <= tmp;
end process;

тогда такой пример, здесь мы имеем дело с комбинационной петлей и элементом ИЛИ ... Зачем tmp в списке чувствительности? Я всегда думал, что список чувствительности это те сигналы, изменение которых начинает начало процесса... А что делать с сигналами, которые меняются в самом процессе, и одновременно находятся в списке чувствительности? 

А не сможете прокомнтировать, пожалуйста, зачем в этом куске в список занесен tmp,  это комбиционная петля,  из учебника пример

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By bugway
      Требуется инженер-программист ПЛИС для проектирования плат и написания прошивок для нескольких проектов.

      Требования к кандидату:

      - Опыт работы с различными типами ПЛИС не менее 3 лет
      - Опыт работы с микроконтроллерами STM32 и другими не менее 3 лет
      - Опыт работы с Altium Designer, Quartus и другими средами.
      - Опыт видеообработки с помощью ПЛИС
      - Опыт работы в команде
      - Умение разбираться в чужих проектах
      - Проживание в Москве, желательно поближе к Люберецкому району

      Немного общей информации по проектам:

      1. Видеообработка (2 проекта) - ключевые моменты: сглаживание изображений, работа с видеобуфером, работа с MIPI, PAL/SECAM видеовыходом, работа ПЛИС в паре с микроконтроллером
      2. Обработка сигналов (1 проект) - ключевые моменты: работа ПЛИС в паре с микроконтроллером, работа с таймером, точные временные измерения, детектирование аналоговых и цифровых сигналов, работа с оптическими датчиками

      Оплата договорная
      Есть перспектива трудоустройства на штатную должность.

      Контакты:
      E-mail: vbug2 (собака) yandex.ru
      Вконтакте: vk.com/bugway
    • By владислав соломенцев
      сгенерировал файл в QSYS и вставил в top-level файл проекта Quartus2 (17.0) для De10-nano(cyclone5)
      запускаю tcl скрипт из tools/tcl scripts/hps_sdram_p0_pin_assignments.tcl  чтобы назначить пины HPS
      вылезают такие вот строки, как поправить?
      Error:    while executing Error:"exec $cmd -t [ info script ] $project_name " Error:    invoked from within Error:"if { ![info exists quartus(nameofexecutable)] || ($quartus(nameofexecutable) != "quartus_sta" && $quartus(nameofexecutable) != "quartus_map") } { Error:    pos..." Error:    (file "D:/FPGA/project/try/unsaved/synthesis/submodules/hps_sdram_p0_pin_assignments.tcl" line 110) Error:    invoked from within Error:"_source D:/FPGA/project/try/unsaved/synthesis/submodules/hps_sdram_p0_pin_assignments.tcl" Error:    ("uplevel" body line 1) Error:    invoked from within Error:"uplevel 1 $cmd " Error:    (procedure "source" line 5) Error:    invoked from within Error:"source "D:/FPGA/project/try/unsaved/synthesis/submodules/hps_sdram_p0_pin_assignments.tcl""
       
    • By Катерина
      Очень-очень нужны инженеры по схемотехнике!!! 
      АО «НПО «Орион» сейчас находится в поиске крутых и грамотных специалистов для разных проектов! Мы занимаемся разработкой микрофотоэлектроники как на гражданку, так и на оборонку. Это и  тепловизоры, и SWIR-камеры, инфракрасные термосканы и конструктор Smart Blocks на базе Ардуино, а также фотоприемные устройства, лазерные целеуказатели, очки ночного виденья, микрокриогенные системы и другое.
      Нам нужен такой человек, который по сформулированному техническому заданию сможет с нуля разработать и спроектировать схему «на железе» для того или иного проекта. Также создать макет электронной схемы, протестировать и испытать его. Ну и естественно сопроводить процесс производства от опытного до серийного. Работа в паре с инженером-конструктором. Очень круто, если вы уже проектировали ПЛИС и микроконтроллеры.
      Наши плюшки:
      Интересные проекты, некоторые из них в России еще никогда не разрабатывались. У вас будет возможность для творчества, новых разработок и предложений. Стабильность и гарантию! Не смотря на наши проекты и разработки в гражданском направлении, предприятие у нас государственное и соблюдает все нормы трудового законодательства. Очень вкусную столовую на территории с завтраками и обедами (средняя стоимость ~ 150 рублей). Уникальную возможность – увидеть производство матриц фоточувствительных элементов от подложки до готовой матрицы, которую потом Вы и будете разводить на схеме. Множество спортивных и культурных мероприятий в большом и дружном коллективе. А также для пешеходов – доступность от метро Выхино (7 минут пешком или 1 остановка на автобусе). Бонусом водителям автомобилей - две бесплатные корпоративные парковки. Локация: Москва, ст. метро Выхино;
      График работы: 5/2 с 9:00 до 17:45 (+/- час);
      З/п по результатам собеседования
      Контакты: hr@npo-orion.ru
      +7 499 786 3669 (Екатерина) 
    • Guest Rijiko
      By Guest Rijiko
      Привет всем! 

      Мы - команда разработчиков, занимающиеся исследованием и апробацией способов, алгоритмов и программ контроля целостности данных в процессе передачи или хранения. 
      В рамках преакселерационной программы по гранту "УМНИК" нам необходимо найти контакты лиц, заинтересованных в применении результатов наших разработок. 

      На данный момент имеются реализации на ПЛИС циклического метода декодирования для кодов БЧХ(15,7,5) и (15,5,7), а также для кодов, исправляющих пакетные ошибки (аналог кодов Рида-Соломона).


      Есть ли заинтересованные лица в разработках по данной области исследования (реализация контроля целостности данных при передаче по каналу связи с помехами, или при хранении данных)?
    • By zontoo
      Нужен программист ПЛИС для создания прошивки шагового двигателя
      чип xilinx (драйвер и программатор предоставлю).
      Начать нужно немедленно.
      Укажите примерную стоимость, скайп, опыт по ПЛИС. 
      Пишите на почту yanbotalov (собака) gmail.com с резюме и портфолио по ПЛИС
  • Сообщения

    • Привет) Подскажите пожалуйста формулу для расчета емкости однослойной плоской спиральной катушки ?
    • не хочется заводить отдельную тему, есть ли у кого еще материал по TPS7A4700 (TPS7A4701) ? посомтрел на easydna что-то проектов открытых не нашел(
    • Ну у меня этот же ЦАП. Только на плату заходит 5 питаний от двух отдельных трансов. Отдельно аналог, отдельно цифра.
    • АК4490, дак это только входное питание, в обвязке цапа там стаб 5в и 3,3в, рядышком в отдельном блоке цап идет знаю, ставил "разделительные" конденсаторы от постоянки на выход усилителя: неполярные электролиты, керамика, пленка, разницы абсолютно никакой. измерял конечно ачх с разными
    • разводку платы покажите... ну и так для ознакомления http://easyelectronics.ru/lazha.html как один из вариантов детских граблей.
    • Ну так и мерий ПОСЛЕ кондеров. А про пелнку бред сивой кобылы, особенно если учесть, что она стоит в питании! А что за ЦАП такой, что ему всего одно питание нужно?
    • Помогите идетифицировать жк экран (на фото), 26 пин на шлейфе, от универсального зарядного устройства  аналог китайского imax b6, только называется B8AC но немного другой. Экран перестал работать. Само устройство на кнопки откликается писком, как и раньше. Померил напругу на выводах, гдето 5В , где-то 4, где-то 3. Определил осцилографом выводы данных 0-7 на ни бегают импульсы. Похоже сехема живая.  Гадаю или экран сдох или может всетаки схема. Может у кого схема есть этой зарядки?
×
×
  • Create New...