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

 
 
> Синхронный ресет, Xilinx
TRILLER
сообщение Dec 11 2012, 11:53
Сообщение #1


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

Группа: Свой
Сообщений: 180
Регистрация: 17-02-09
Из: Санкт-Петербург
Пользователь №: 45 001



Здравствуйте.
Кто может уверенно сказать, можно ли делать так, как показано на схеме 2.
Прикрепленное изображение

Кристалл V6. Использован вход синхронного ресета.
Не возникнет ли проблем в дальнейшем? Да и вообще, есть ли какая либо разница на железном уровне между синхронным и асинхронным входами ресета? Или "синхронность" лишь заставляет роутер просчитывать путь так, как и для обычных сигналов.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Boris_TS
сообщение Dec 11 2012, 12:22
Сообщение #2


Злополезный
****

Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188



Цитата(TRILLER @ Dec 11 2012, 15:53) *
Да и вообще, есть ли какая либо разница на железном уровне между синхронным и асинхронным входами ресета?

Эээ... а вход-то в Slice - один... а способ его использования (синхронный/асинхронный) задаётся атрибутом - можете всё сами разглядеть при помощи FPGA Editor'a.

А т.к. вход один на весь Slice, то он заходит на все триггеры в Slice. Соответственно, если в схеме нет триггеров, которым нужен такой набор управляющих сигналов (CLK, CE, RST), то тогда неиспользованные в этом Slice триггеры не смогут быть использованы. Поэтому уникальные наборы управляющих сигналов необходимо использовать с умом.
Go to the top of the page
 
+Quote Post
TRILLER
сообщение Dec 11 2012, 12:59
Сообщение #3


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

Группа: Свой
Сообщений: 180
Регистрация: 17-02-09
Из: Санкт-Петербург
Пользователь №: 45 001



Цитата
Синхронный сброс - по факту является маской по И входных данных.

Этот факт реализован непосредственно в самом триггере? Ни на один из входов лата этот сигнал не поподает.

Цитата(Boris_TS @ Dec 11 2012, 16:22) *
Эээ... а вход-то в Slice - один... а способ его использования (синхронный/асинхронный) задаётся атрибутом - можете всё сами разглядеть при помощи FPGA Editor'a.

Вход в слайс то один, а вот в триггеры уже 2, стало быть между ними есть какая-то разница.

В общем, пришёл к выводу, что схему 2 использовать можно, так как Симплифай(провёл эксперимент) сам заводит выход лата на синхронный ресет, для уменьшения слоёв логики. А люди, его делавшие, скорее всего разобрались с этим вопросом..
Go to the top of the page
 
+Quote Post
Boris_TS
сообщение Dec 11 2012, 14:18
Сообщение #4


Злополезный
****

Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188



Цитата(TRILLER @ Dec 11 2012, 16:59) *
Этот факт реализован непосредственно в самом триггере? Ни на один из входов лата этот сигнал не поподает.

Ответы находятся в FPGA Editor'е, которым я настоятельно рекомендовал посмотреть Ваш кристалл, чтобы Вы не писали ахинею:
Цитата(TRILLER @ Dec 11 2012, 16:59) *
Вход в слайс то один, а вот в триггеры уже 2, стало быть между ними есть какая-то разница.

Ну вот расскажите мне: где тут "второй вход сброса в триггер" ? Я его, почему-то в упор не вижу...
Прикрепленное изображение

Зато вижу тут атрибут RESET TYPE: SYNC/ASYNC, о котором и писал ренее.
Go to the top of the page
 
+Quote Post
TRILLER
сообщение Dec 12 2012, 09:28
Сообщение #5


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

Группа: Свой
Сообщений: 180
Регистрация: 17-02-09
Из: Санкт-Петербург
Пользователь №: 45 001



Цитата(Boris_TS @ Dec 11 2012, 18:18) *
Ну вот расскажите мне: где тут "второй вход сброса в триггер" ? Я его, почему-то в упор не вижу...

Да, я был не прав..
Цитата
Почитайте вот эту, ставшую уже классикой, статью Кена Чапмена о вреде и пользе разных типов ресета.

Полезная статья. Вот только ни в одном примере на вход SR триггера он не заводит выход лата. Меня конкретно это интересовало. Но, поверю симплифаю и попробую это сделать)
Go to the top of the page
 
+Quote Post
Boris_TS
сообщение Dec 12 2012, 11:34
Сообщение #6


Злополезный
****

Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188



Цитата(TRILLER @ Dec 12 2012, 13:28) *
Вот только ни в одном примере на вход SR триггера он не заводит выход лата. Меня конкретно это интересовало.
Да, можно подавать данные с выхода LUT на синхронный вход SR триггеров. Но только на синхронный SR, если не хотите поиметь кучу проблем с асинхронщиной.
Более того, при синтезе сложных логических функций синтезаторы периодически сами синтезируют схемы в которых используются D, CE и SR, на которые подаются сигналы с выходов LUT'ов.

Цитата(Bad0512 @ Dec 12 2012, 13:55) *
А зачем заводить выход LUTа? Это наверняка отрицательно скажется на тайминге. Правильно выход LUTa защёлкнуть в триггере, а потом уже подавать на SR.
Это приведёт к задержке на 1 такт, но в большинстве случаев это некритично.
Да, скажется, но практически незаметно. Но зато может позволить реализовать очень вычурную логическую функцию с Logic Level = 1.

Единственным существенным (для Xilinx V-5/S-6 и более новых) является наличие уникального набора CE, SR, CLK, что с большой долей вероятности приводит к невозможности использования остальных триггеров в Slice. Но, иногда, даже такие жертвы - оправданы.
Go to the top of the page
 
+Quote Post
TRILLER
сообщение Dec 12 2012, 12:38
Сообщение #7


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

Группа: Свой
Сообщений: 180
Регистрация: 17-02-09
Из: Санкт-Петербург
Пользователь №: 45 001



Цитата(Boris_TS @ Dec 12 2012, 15:34) *
Да, можно подавать данные с выхода LUT на синхронный вход SR триггеров. Но только на синхронный SR, если не хотите поиметь кучу проблем с асинхронщиной.

Это именно то, что я хотел узнать - не будет ли проблем)

Цитата(Boris_TS @ Dec 12 2012, 15:34) *
Да, скажется, но практически незаметно.

В DS152 сказано, что
"TITO An – Dn inputs to A – D Q outputs 0.67" для V6-2
в то время, как
"TRQ Delay from SR input to AQ – DQ flip-flops 0.58".
Выходит, что будет даже лучше по времянке. Или я ошибаюсь?
Go to the top of the page
 
+Quote Post
Boris_TS
сообщение Dec 12 2012, 14:09
Сообщение #8


Злополезный
****

Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188



Цитата(TRILLER @ Dec 12 2012, 16:38) *
В DS152 сказано, что
"TITO An – Dn inputs to A – D Q outputs 0.67" для V6-2
в то время, как
"TRQ Delay from SR input to AQ – DQ flip-flops 0.58".
Выходит, что будет даже лучше по времянке. Или я ошибаюсь?

К сожалению, Вы ошибаетесь: не совсем то сравниваете:
1. TITO (An – Dn inputs to A – D Q outputs) - это задержка от изменения входов LUT до появления устойчивых данных на выходе Slice (актуально для первого LUT'а Вашей схемы). А второй LUT вашей схемы, если я ничего не путаю, описывается TILO (An – Dn LUT address to A = 0.07ns) + TDICK (A – D input to CLK on A – D Flip Flops = 0.36ns), итого 43ns.
2. TRQ (Delay from SR input to AQ – DQ flip-flops) - это задержка реакции триггера на асинхронный Reset (задержка от прихода SR до изменения Q триггера). А Вам нужно TSRCK (SR input to CLK on A – D Flip Flops = 0.44ns) - время предустановки для SR входа.
Т.е. получается, что разницы практически нет... Если я нигде не ошибся.

Также необходимо учитывать, что использование LUT -> MUXF7 (или MUXF8) -> D вход триггера может дать более интересный результат.

Для каждого семейства ПЛИС необходимо проверять всё это в Timing Analyzer'е, ибо не всё можно рассчитать по данным из Data Sheet, да и он ошибается значительно реже, чем сам разработчик.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 29th July 2025 - 08:14
Рейтинг@Mail.ru


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