|
Как узнать у кратных частот номер такта относительно медленной частоты? |
|
|
|
 |
Ответов
|
Jan 5 2016, 09:48
|
Профессионал
    
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643

|
Приветствую! Цитата(MegaVolt @ Jan 4 2016, 15:02)  ... Простейшее решениее подать медленную частоту на вход данных триггера и протактировать второй не прокатывает потому что фронты каждый второй такт совпадут и будет бардак. ... Почему столь категоричное утверждение? Вполне рабочая схема для синхронных клоков. Естественно при этом надо учитывать задержку между буфером F1 и D входом триггера. Цитата(MegaVolt) ... Боюсь это не то место которое нужно делать глядя на симулятор. ... Вобще все как раз и нужно проверять сначала в симе! Сначала functional а затем и post-place&route с учетом реальных задержек по SDF annotation . Простенький тестовый модуль с парой буферов и парой тригеров не займет много времени на P&R и прогон сима. Успехлв! Rob.
|
|
|
|
|
Jan 5 2016, 10:36
|
Знающий
   
Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783

|
Цитата(RobFPGA @ Jan 5 2016, 12:48)  Вполне рабочая схема для синхронных клоков. Естественно при этом надо учитывать задержку между буфером F1 и D входом триггера. Чисто теоретически должно работать. А практически кто проконтролирует время сетап-холд? Или раскладчик поймёт всё правильно и я зря парюсь? Цитата Вобще все как раз и нужно проверять сначала в симе! Сначала functional а затем и post-place&route с учетом реальных задержек по SDF annotation . Простенький тестовый модуль с парой буферов и парой тригеров не займет много времени на P&R и прогон сима. Симуляция не может являться гарантией работоспособности изделия. Т.е. аргумент про то что у меня всё в симуляторе работает совершенно не аргумент. Аргументом может являться только верное схемотехническое решение подкреплённое цифрами из даташита. Особенно если речь идёт про начальные условия. Иначе есть шанс поиметь схему которая будет от разводки к разводке работать по разному. Напрмер банальное. Глобальный ресет приходит на триггеры не одновременно. И соответственно есть шанс что часть триггеров уже сработают а вторая половина ещё в ресете. Если схемотехнически не обеспечить правильный ресет то схема будет с особенностями. Причём конкретную раскладку можно отсимулить и увидеть эти особенности. Но со следующей всё придётся делать заново.
|
|
|
|
|
Jan 6 2016, 06:24
|

Участник

Группа: Участник
Сообщений: 20
Регистрация: 21-10-13
Из: Петербург
Пользователь №: 78 826

|
Цитата(MegaVolt @ Jan 5 2016, 14:36)  Напрмер банальное. Глобальный ресет приходит на триггеры не одновременно. И соответственно есть шанс что часть триггеров уже сработают а вторая половина ещё в ресете. Если схемотехнически не обеспечить правильный ресет то схема будет с особенностями. Причём конкретную раскладку можно отсимулить и увидеть эти особенности. Но со следующей всё придётся делать заново. То, что происходит в схеме между фронтами тактовой частоты - вас волновать по идее не должно. Вы же цифровым дизайном занимаетесь, а не аналоговым. Роутер постарается развести так, чтобы К СЛЕДУЮЩЕМУ фронту клока на выходе всех регистров был годный результат. Именно для этого пишутся констрейнты, в которых явно прописываются частоты и нестабильности клоков. Если времянка сошлась, схема БУДЕТ работать на этой частоте. Цитата(MegaVolt @ Jan 5 2016, 14:36)  Чисто теоретически должно работать. А практически кто проконтролирует время сетап-холд? Или раскладчик поймёт всё правильно и я зря парюсь? Вот, это правильные слова! Нужно написать XDC constraints - и сетапы-холды будут проверены автоматически, и даже репорт будет генериться на каждую реинкарнацию дизайна.
Сообщение отредактировал Кoнстантин - Jan 6 2016, 06:26
|
|
|
|
|
Jan 6 2016, 08:11
|
Знающий
   
Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783

|
Цитата(Кoнстантин @ Jan 6 2016, 09:24)  То, что происходит в схеме между фронтами тактовой частоты - вас волновать по идее не должно. Вы же цифровым дизайном занимаетесь, а не аналоговым. Роутер постарается развести так, чтобы К СЛЕДУЮЩЕМУ фронту клока на выходе всех регистров был годный результат. Именно для этого пишутся констрейнты, в которых явно прописываются частоты и нестабильности клоков. Если времянка сошлась, схема БУДЕТ работать на этой частоте. Я говорил про начальные условия. Когда внутренний глобальный ресет плисины привязан совершенно не к той частоте на которой работает сама схема. В результате имеем асинхронный сброс который ещё и skew имеет. В результате если не сделать правильную схему сброса мы получим любопытный фокус. Часть триггеров уже выйдут из реста и увидят клок. А часть ещё будет в ресете. Например мы имеем регистр защёлку который имеет два бита. Предположем что он сбрасывается в ноль и на входе у него единицы. Чисто по цифровому дизайну у него по включению должно быть 00 а через 1 такт на выходе должно быть 11. Но если у нас не сделана схема корректного сброса то мы имеем шанс получить на выходах вот такую последовательность: 00 -> 01 -> 11. Более того скажу что это эффект отлично симулиться при симуляции уже разложенной схемы. Цитата Вот, это правильные слова! Нужно написать XDC constraints - и сетапы-холды будут проверены автоматически, и даже репорт будет генериться на каждую реинкарнацию дизайна. А вот тут поподробнее. Какие дополнительные констрейны нужно прописать? Ведь формально если мы указали тактовую на выходе до делителей всё остальное вычисляется. Хватит ли раскладчику одного таймспека на частоту или нужно ещё что-то?
|
|
|
|
|
Jan 6 2016, 08:50
|

Участник

Группа: Участник
Сообщений: 20
Регистрация: 21-10-13
Из: Петербург
Пользователь №: 78 826

|
Цитата(MegaVolt @ Jan 6 2016, 12:11)  А вот тут поподробнее. Какие дополнительные констрейны нужно прописать? Ведь формально если мы указали тактовую на выходе до делителей всё остальное вычисляется. Хватит ли раскладчику одного таймспека на частоту или нужно ещё что-то? Достаточно обконстрейнить быстрый клок. В общем-то и все. У вас нет асинхронных проблем. Clock domain - всего один. Да, в нем есть еще сигнал, который меняет состояние каждый второй такт (вы его зовете медленным клоком) - ну и ОК. А еще есть внешний ресет. Да, это внешний асинхронный сигнал, его нужно синхронизировать - записать в регистр по клоку. А на выходе регистра будет он уже синхронным в этом клок домейне. ОСтальные расчеты оставьте технике.
|
|
|
|
|
Jan 6 2016, 09:18
|
Знающий
   
Группа: Свой
Сообщений: 779
Регистрация: 3-01-05
Из: Минск
Пользователь №: 1 783

|
Цитата(Кoнстантин @ Jan 6 2016, 11:50)  Достаточно обконстрейнить быстрый клок. В общем-то и все. У вас нет асинхронных проблем. Clock domain - всего один. Да, в нем есть еще сигнал, который меняет состояние каждый второй такт (вы его зовете медленным клоком) - ну и ОК. Ну я бы всё же не называл его сигналом. Сигнал был бы если бы у меня стоял T триггер. Тогда и проблем не было бы. А тут всё же обе частоты совпадают регулярно фронтами. Хотя формально можно считать сигналом. Цитата А еще есть внешний ресет. Да, это внешний асинхронный сигнал, его нужно синхронизировать - записать в регистр по клоку. А на выходе регистра будет он уже синхронным в этом клок домейне. По хорошему 2 триггера надо бы  Цитата ОСтальные расчеты оставьте технике. Просто хотелось убедиться что техника поймёт этот изврат правильно.
|
|
|
|
Сообщений в этой теме
MegaVolt Как узнать у кратных частот номер такта относительно медленной частоты? Jan 4 2016, 13:02 krux а можно чуть поподробнее, в чем задача, или зачем ... Jan 4 2016, 15:48 Кoнстантин Если вам нужно знать фазовые соотношения - то они ... Jan 4 2016, 17:17 MegaVolt Цитата(Кoнстантин @ Jan 4 2016, 20:17) Сч... Jan 5 2016, 08:40  Kolya Цитата(MegaVolt @ Jan 5 2016, 10:40) Вот ... Jan 5 2016, 08:46   MegaVolt Цитата(Kolya @ Jan 5 2016, 11:46) А хендш... Jan 5 2016, 09:36  Кoнстантин Цитата(MegaVolt @ Jan 5 2016, 12:40) мы м... Jan 5 2016, 09:21       MegaVolt Цитата(Кoнстантин @ Jan 6 2016, 12:33) А ... Jan 6 2016, 09:35 MegaVolt Вариант с заведением двух клоков на один триггер р... May 13 2016, 08:40 Maverick Цитата(MegaVolt @ May 13 2016, 11:40) Вар... May 13 2016, 10:49  MegaVolt Цитата(Maverick @ May 13 2016, 13:49) луч... May 13 2016, 13:06
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|