|
Cyclone II, два вопроса. |
|
|
|
Jun 7 2007, 13:01
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Имеется проект на EP1C6T144I7. Портирован на EP2C8F256I8. В проекте есть SDRAM контроллер, при его проектировании в свое время вставал вопрос о реальных временнЫх задержках между логикой ПЛИС и ее выводами. Например, через сколько времени от фронта клока на выходном триггере IO элемента сигнал вывалится на вывод микросхемы. И через сколько времени от поступления на вывод микросхемы сигнал дойдет до входного триггера IO элемента (все это актуально для чтения из SDRAM). Для EP1C6T144I7 в симуляторе было установлено, что выходная задержка порядка 2.2 нс, входная - 1.4 нс. Сигнал там поступает с вывода микросхемы через элемент задержки. Значение этого элемента задержки по умолчанию указано 0 нс. На основе этих времянок выстроена схема тактирования выходного и входного триггеров - так, чтобы тактирующий фронт приходил на входной триггер тогда, когда сигнал с выхода SDRAM прошел с вывода ПЛИС до входного триггра и присутствовал на его входе с соблюдением setup/hold требований. Аналогичное моделирование EP2C8F256I8 показало, что по умолчанию элемент задержки имеет значение максимальной задержки, которое составляет немного-немало, а целых 4.940 нс, т.е. порядка 5 нс (тактовая частота проекта 100 МГц, SDRAM тактируется с этой же чатотой). Естественно, из-за этой задержки сигнал уже не успевает достичь входного триггера, не говоря уже о соблюдении требований setup/hold, т.е. попросту во время прихода тактирующего фронта на входе данных триггера неверное значение (в симуляторе читается z-состояние, реально, очевидно, должно читать что попало, скорее всего, предыдущее значение, "запомненное" на паразитных емкостях). Комилю проект, проверяю, что реально читается - читается все правильно (контролирую Signal-Tap'ом). Меняю величину задержки этого элемента задержки от минимума (0 нс), до максимума (4.940 нс), ничего не меняется - всегда читается правильно. Отсюда вопрос: эта задержка реально присутствует в микросхеме или это только в симуляторе видно да в Chip Editor'е? Может кто-нибудь прояснить описанный феномен? Второй вопрос: для контроля за чтением решил использоовать In-System Memory Content Editor - при чтении из внешней SDRAM писать считанные данные во внутренний буфер (память ПЛИС), а этим инструментом контролировать содержимое буфера. На предыдущем этапе в первом Циклоне это все прекрасно работало, очень удобно было экспериментировать. Здесь же при компиляции получаю ошибку с объяснением (вольный перевод): блок памяти М4К микросхемы Cyclone II не может быть использован в режиме Dual-Clock True Dual-Port Memory, обратитесь к еррате. Обращаюсь к еррате, обнаруживаю, что действительно в ревизии А есть проблемы при записи с двух портов при определенном временном соотношении клоков может происходить сбой записи. Для разных режимов там воркэраунды предлагаются, а про In-System Memory Content Editor сказано, что это может использоваться только с исправленными микросхемами, т.е. с ревизией В. Ну ладно, понятно. Пытаюсь выяснить, какая же у меня используется ревизия, и не могу найти, где это описано. В доке не нашел ничего - на слово "revision" оно выдает только "Revision Histoty".  Где есть описание маркировки так, чтоб можно было выяснить ревизию? Или, может, по дате выпуска можно определить? Где это можно глянуть?
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
 |
Ответов
|
Jun 7 2007, 14:52
|

МедвеД Инженер I
   
Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951

|
Цитата(dxp @ Jun 7 2007, 17:01)  ................. Здесь же при компиляции получаю ошибку с объяснением (вольный перевод): блок памяти М4К микросхемы Cyclone II не может быть использован в режиме Dual-Clock True Dual-Port Memory, обратитесь к еррате. Обращаюсь к еррате, обнаруживаю, что действительно в ревизии А есть проблемы при записи с двух портов при определенном временном соотношении клоков может происходить сбой записи. Для разных режимов там воркэраунды предлагаются, а про In-System Memory Content Editor сказано, что это может использоваться только с исправленными микросхемами, т.е. с ревизией В. Ну ладно, понятно. Пытаюсь выяснить, какая же у меня используется ревизия, и не могу найти, где это описано. В доке не нашел ничего - на слово "revision" оно выдает только "Revision Histoty".  Где есть описание маркировки так, чтоб можно было выяснить ревизию? Или, может, по дате выпуска можно определить? Где это можно глянуть? да ругаться он будет, но можно "обмануть" квартус у меня получалось так - если "вырубить PowerPlay power optimization - OFF" квартус перестал ругаться проект был в ep2c256 той самой ревизии. как ни страно описаный глюк M4K не наблюдал, и тоже как и вы использовал In-System Memory Content Editor, не более 50 мгц В вашем случае всё же не обманывать :-), купить нормальной ревизии. ревизию как обнаружить вам уже обьяснили скажем такая надпись EP2C256C8N K BA A9T0625A ревизия будет A
--------------------
Cogito ergo sum
|
|
|
|
|
Jun 8 2007, 07:08
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата В еррате, 1 страница, последний абзац + Figure 1. Цитата ревизию как обнаружить вам уже обьяснили скажем такая надпись EP2C256C8N K BAA9T0625A ревизия будет A Спасибо, парни! Я всю доку на Циклон2 просканил, хелп и доку на Квартус - не нашел. В еррате не ожидал это найти и не искал. А на глаза не попалось (выборочно читал). Цитата(Postoroniy_V @ Jun 7 2007, 21:52)  да ругаться он будет, но можно "обмануть" квартус у меня получалось так - если "вырубить PowerPlay power optimization - OFF" квартус перестал ругаться проект был в ep2c256 той самой ревизии. как ни страно описаный глюк M4K не наблюдал, и тоже как и вы использовал In-System Memory Content Editor, не более 50 мгц В вашем случае всё же не обманывать :-), купить нормальной ревизии. Микрухи уже куплены и запаяны. И ревизия там стоит В. Осталось только объяснить Квартусу этот момент. Попробую сделать как Вы. Вообще, это тут у них недоработка - если есть ревизии и разное поведение, то и Квартус должен эти вещи понимать и поддерживать. Спасибо еще раз.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
Сообщений в этой теме
dxp Cyclone II Jun 7 2007, 13:01 vmp Цитата(dxp @ Jun 7 2007, 17:01) Где есть ... Jun 7 2007, 14:34 SunnyDevil Цитата(dxp @ Jun 7 2007, 16:01) симулятор... Jun 11 2007, 13:05 dxp Цитата(SunnyDevil @ Jun 11 2007, 20:05) С... Jun 12 2007, 14:03 SunnyDevil Да хоть для 7 спида, 1.4 нс и 2.2 нс это уж очень ... Jun 12 2007, 16:48 dxp Цитата(SunnyDevil @ Jun 12 2007, 23:48) Д... Jun 13 2007, 05:43 Gate Задержки на пинах приводятся для нагрузки 50 пф, е... Jun 13 2007, 12:28 dxp Цитата(Gate @ Jun 13 2007, 19:28) Задержк... Jun 13 2007, 13:10  Gate Цитата(dxp @ Jun 13 2007, 17:10) А Вы о ч... Jun 13 2007, 19:25 SunnyDevil А у вас случаем вот этой ситуации нет?
However, i... Jun 13 2007, 19:45 dxp Цитата(SunnyDevil @ Jun 14 2007, 02:45) А... Jun 14 2007, 04:34 SunnyDevil А если провести эксперимент.
Этот сигнал выдать че... Jun 14 2007, 11:40 dxp Цитата(SunnyDevil @ Jun 14 2007, 18:40) А... Jun 14 2007, 12:59  SunnyDevil Цитата(dxp @ Jun 14 2007, 15:59) Что имен... Jun 14 2007, 13:07   dxp Цитата(SunnyDevil @ Jun 14 2007, 20:07) Э... Jun 15 2007, 05:35    SunnyDevil Цитата(dxp @ Jun 15 2007, 08:35) Эта карт... Jun 23 2007, 14:57
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|