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

 
 
> Quartus не понимает power-up state
DmitryR
сообщение Feb 24 2005, 08:54
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Перешел тут с Xilinx на Altera и столкнулся с неприятностью: Quatrus не транслирует значение сигнала по умолчанию (VHDL) в register power-up state. Пишет ignored и все. Не подскажте, как бороться? В fpga-faq написано, что VHDL default с register power-up ничего общего не имеет, тем не менее софт Xilinx это компилирует правильно.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
cdg
сообщение Feb 24 2005, 10:14
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 8-09-04
Из: Таганрог
Пользователь №: 617



Цитата
Warning пропал, однако с триггером все равно что-то непонятное (его aclr привязан к VCC).

Скорее всего добавили инверсию на выходе, это у Altera излюбленный прием, я тоже частенько таким пользуюсь.
Цитата
И еще, что делать, если сигнал - std_logic_vector, причем немаленький? Если разобрать его по битам (допустим, хотя это почти нереально) - то как потом, например, программировать арифметические операции с ним?

Используйте прием от Altera, описанный выше. Вообще не являюсь большим спецом в области VHDL, я Verilog люблю smile.gif . Поройтесь по докам Quartus huh.gif
Go to the top of the page
 
+Quote Post
DmitryR
сообщение Feb 24 2005, 10:32
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770



Цитата(cdg @ Feb 24 2005, 14:14)
Скорее всего добавили инверсию на выходе, это у Altera излюбленный прием, я тоже частенько таким пользуюсь.


Не понял, ведь aclr - это асинхронных сброс. Если на нем всегда 1 - то на выходе будет всегда 0. Не так?

Цитата
Используйте прием от Altera, описанный выше. Вообще не являюсь большим спецом в области VHDL, я Verilog люблю  smile.gif . Поройтесь по докам Quartus  huh.gif


А как прием, описанный выше, применить к вектору, если мне половину бит надо в 1 поставить, а половину - в 0? В доках - голяк, я уже второй день решаю эту весьма тупую проблему.
Go to the top of the page
 
+Quote Post
cdg
сообщение Feb 24 2005, 11:17
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 8-09-04
Из: Таганрог
Пользователь №: 617



Цитата
Не понял, ведь aclr - это асинхронных сброс. Если на нем всегда 1 - то на выходе будет всегда 0. Не так?

Altera примитив DFF имеет инверсные входы асинхронной предустановки excl.gif

У Altera действительно кривовато с использованием altera_attribute констрейнсов. Если не могу обойтись без пред установки, и c составным сигналом косяк (в Verilog без проблем k = {a0, a1, d5 ...}), то можно сделать так (у меня это работает безотказно): вожу сигнал асинхронной предустановки, коим устанавливаю вектор в нужное состояние b'11100011, синтезатор Altera дает предупреждение "not gete push back" и у станавливает нужные триггера в 1 состояние по включению питания, не могу сказать что это документированная возможность, но на протяжении нескольких версий Quartus все работает нормально.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 13:16
Рейтинг@Mail.ru


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