|
Цифровая линия задержки |
|
|
|
 |
Ответов
(1 - 8)
|
Jul 21 2016, 08:05
|
Знающий
   
Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515

|
Цитата(_Anatoliy @ Jul 21 2016, 10:33)  Проблема в том что не удаётся убрать минусовые слэки между регистрами address_rd,address_wr и входными регистрами адреса памяти. Колдовство с настройками фиттера ощутимого результата не дало. Может подскажете чего,коллеги? Не хватает всего 200ps... Очевидно, памяти используется много, отсюда большое ветвление шины адреса. Можно добавить ещё один конвейерный регистр в шину адреса, если Квартус сумеет его правильно размножить, или вручную размножить. Ещё можно тактировать память дополнительным клоком, смещённым по фазе на +200ps или побольше, при этом может не хватить запаса по выходам, тогда на выходы добавить ещё регистр.
|
|
|
|
|
Jul 21 2016, 08:16
|

Утомлённый солнцем
     
Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832

|
Цитата(Timmy @ Jul 21 2016, 11:05)  Очевидно, памяти используется много, отсюда большое ветвление шины адреса. Можно добавить ещё один конвейерный регистр в шину адреса, если Квартус сумеет его правильно размножить, или вручную размножить. Ещё можно тактировать память дополнительным клоком, смещённым по фазе на +200ps или побольше, при этом может не хватить запаса по выходам, тогда на выходы добавить ещё регистр. Ага,спасибо! Да,памяти много - 3Mbit. Насчёт дополнительного клока уже пробую.
|
|
|
|
|
Jul 21 2016, 08:43
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(_Anatoliy @ Jul 21 2016, 10:33)  Вот возникла необходимость реализовать цифровую линию задержки данных АЦП с высоким разрешением. Тактовая частота 300МГц, максимальная задержка 200мкс, данные представляют собой четыре фазы потока от АЦП, чип Arria V. На каждую фазу ставлю двухпортовку на M10K,адреса wr/rd по 16 бит.
Проблема в том что не удаётся убрать минусовые слэки между регистрами address_rd,address_wr и входными регистрами адреса памяти. Колдовство с настройками фиттера ощутимого результата не дало. Может подскажете чего,коллеги? Не хватает всего 200ps... А если сначала данные писать в регистр двойной разрядности, сначала младшее слово, потом - старшее. А уже из этого регистра - в память... Тогда тактовая для памяти будет вдвое ниже... Либо 2 поля памяти и писать-читать в них по-очереди...
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Jul 21 2016, 09:35
|

Утомлённый солнцем
     
Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832

|
Цитата(iosifk @ Jul 21 2016, 11:43)  А если сначала данные писать в регистр двойной разрядности, сначала младшее слово, потом - старшее. А уже из этого регистра - в память... Тогда тактовая для памяти будет вдвое ниже... Пока компилится с новым клоком... Да,мысль хорошая,но тогда дискрета задержки увеличится в 2 раза,пока не готов ответить устроит или нет. Запишем резервным решением,спасибо! Цитата(des00 @ Jul 21 2016, 11:38)  Итого задержка 64к. Я бы раздробил на 8 каскадов 8k если у вас ария не жизель (GZ) и 4 каскада по 16к если жизель. В противном случае, на выходе есть лишние мультиплексоры. Это дополнительно ограничивает размещение на кристалле. Задержка на 8к (13 бит) для 64бит свободно разводиться на 337 на C5. Тоже хорошая мысль и без потери дискретности,спасибо! С дополнительным клоком сразу не получилось,сдвинул фазу на 330 градусов(-30) - слэки выросли до -6 нс но уже по данным с клока RAM на основной клок. Похоже тут нужно прописывать мультициклы...
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|