реклама на сайте
подробности

 
 
> достоинства и недостатки variable?, Давайте совместно разберемся!
Мур
сообщение Jun 23 2017, 07:58
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Приветствую всех!
Практика использования VHDL дает возможность применять кроме SIGNAL еще и variable. Не знаю, как вам, а мне хватало всегда SIGNAL. Но вот когда стал смотреть чужой код, что столкнулся с проблемой невозможности наблюдения в ModelSim этих самых variable..
Тупая замена на SIGNAL - верный прием наблюдать желаемое

НО! Остается вопрос, где эти самые variable просто незаменимы?

Что скажут корифеии HDL-дизайна?.. Должна быть (не только у меня) ясность в этом вопросе. 1111493779.gif
Спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Maverick
сообщение Jun 23 2017, 09:25
Сообщение #2


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(Мур @ Jun 23 2017, 10:58) *
Приветствую всех!
Практика использования VHDL дает возможность применять кроме SIGNAL еще и variable. Не знаю, как вам, а мне хватало всегда SIGNAL. Но вот когда стал смотреть чужой код, что столкнулся с проблемой невозможности наблюдения в ModelSim этих самых variable..
Тупая замена на SIGNAL - верный прием наблюдать желаемое

сделать например
Код
signal ODD : std_logic := '0';

process (A)
   variable TMP : std_logic := '0';
begin
   TMP := '0';
   for I in A'low to A'high loop
      TMP := TMP xor A(I);
   end loop;
   ODD <= TMP;
end process;


для моделсима выводите сигнал ODD

Латчей синтезатор не выдает?


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
Мур
сообщение Jun 23 2017, 09:30
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 815
Регистрация: 7-06-06
Из: Харьков
Пользователь №: 17 847



Цитата(Maverick @ Jun 23 2017, 12:25) *
сделать например
Код
signal ODD : std_logic := '0';

process (A)
   variable TMP : std_logic := '0';
begin
   TMP := '0';
   for I in A'low to A'high loop
      TMP := TMP xor A(I);
   end loop;
   ODD <= TMP;
end process;


для моделсима выводите сигнал ODD


По любому предстоит дополнительная компиляция... Я так тоже делаю. Под настроение... Спасибо!

Цитата
Латчей синтезатор не выдает?

Хорошее замечание. Тут ушки на макушке!... Может быть. Надо смотреть пространство перебора и синхронность. Ничего не пропустил?.. Если пропущено, то синтезатор вставит латч. Особенно при асинхроне!
Идея понятна.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Мур   достоинства и недостатки variable?   Jun 23 2017, 07:58
- - andrew_b   Цитата(Мур @ Jun 23 2017, 10:58) Но вот к...   Jun 23 2017, 08:29
|- - Мур   Цитата(andrew_b @ Jun 23 2017, 11:22) Раз...   Jun 23 2017, 08:33
|- - andrew_b   Цитата(Мур @ Jun 23 2017, 11:33) Чувствуе...   Jun 23 2017, 08:41
|- - Мур   Цитата(andrew_b @ Jun 23 2017, 11:41) Зам...   Jun 23 2017, 08:47
|- - andrew_b   Цитата(Мур @ Jun 23 2017, 11:47) Так это ...   Jun 23 2017, 08:57
|- - Мур   Цитата(andrew_b @ Jun 23 2017, 11:57) Вы ...   Jun 23 2017, 09:10
- - Amurak   При написании функций (function) переменные незаме...   Jun 23 2017, 08:53
|- - Мур   Цитата(Amurak @ Jun 23 2017, 11:53) При н...   Jun 23 2017, 08:55
- - KalashKS   Не знаю, как в моделсиме, а в NCsim и Aldec переме...   Jun 23 2017, 12:35
- - FPG   Вот применение! Пользуюсь регулярно! где-т...   Jun 29 2017, 15:20
|- - andrew_b   Цитата(FPG @ Jun 29 2017, 18:20) Вот прим...   Jun 29 2017, 17:39
- - FPG   функция дешифрации основана как раз на свойстве va...   Jul 3 2017, 10:52
- - andrew_b   Цитата(FPG @ Jul 3 2017, 13:52) функция д...   Jul 3 2017, 14:52


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 20:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01395 секунд с 7
ELECTRONIX ©2004-2016