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

 
 
> Особенности аппаратного синтеза конструкций Verilog, Quartus II, Cyclone IV
shamrel
сообщение Mar 26 2016, 09:26
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 132
Регистрация: 10-10-07
Из: Новосибирск
Пользователь №: 31 229



Приветствую! Нужна литература. Видимо с английским у меня все плохо: не могу грамотно сформулировать вопрос гуглу. Потому прошу подсказать литературу. Device Handbook и "Recommended HDL Coding Styles" уже прочитаны. Хочется большего.
Суть вопроса. В силу аппаратных особенностей ПЛИС (структура LE, LUT, LAB) некоторые конструкции синтезируются оптимальным образом, достигается максимальное быстродействие и плотность упаковки, а какие-то нет. Например, если в триггере логического элемента есть асинхронный сброс, то конструкция:
Код
always @ (posedge reset or posedge clk)
        if(reset)
            q <= 0;
        else
            q <= x;

Займет один LAB, но если добавить еще и асинхронную установку, то схема займет уже 4 LE:
Код
always @ (posedge reset or posedge set or posedge clk)
        if(reset)
            q <= 0;
        else if (set)
            q <= 1;
        ekse    
            q <= x;


А вот если set убрать из списка чувствительности, то опять 1 LE.
Или как лучше оформить выражение, что бы был задействован вход ENA триггера, а не обратная связь?
И много подобны вопросов.
Оно мне понятно почему и как, но где об этом почитать подробнее? Кое-что есть в "Advanced Synthesis Cookbook", но это для Stratix. Уж очень он от Cyclone отличается.


--------------------
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
blackfin
сообщение Mar 28 2016, 04:14
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(shamrel @ Mar 26 2016, 13:26) *
Потому прошу подсказать литературу. Device Handbook и "Recommended HDL Coding Styles" уже прочитаны. Хочется большего.

Quartus Prime Standard Handbook v15.1.1, стр. 778:
Цитата
Avoid Asynchronous Register Control Signals
Avoid using an asynchronous load signal if the design target device architecture does not include registers with dedicated circuitry for asynchronous loads.
Also, avoid using both asynchronous clear and preset if the architecture provides only one of these control signals.
Some Altera devices directly support an asynchronous clear function, but not a preset or load function.

When the target device does not directly support the signals, the synthesis or placement and routing software must use combinational logic to implement the same functionality.
In addition, if you use signals in a priority other than the inherent priority in the device architecture, combinational logic may be required to implement the necessary control signals.
Combinational logic is less efficient and can cause glitches and other problems; it is best to avoid these implementations.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 25th June 2025 - 02:32
Рейтинг@Mail.ru


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