Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Spartan2, DLL, модели
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Little_boo
Два вопроса:

1) Как синхронизовать внешний клок и внутренний на этой ПЛИС? По документации обещают разброс в 3,3нс. Но реально выводя сигнал с ноги и сравнивая его на входе я вижу 4-5нс. Это много. Попытки выровнять фронты, вставляя задержку в цепь клока и обратной связи в ДЛЛ ни к чему не привели.

2) Как мне кажется ПОСТ-ФИТ модель, должна реально отражать задежки ПЛИС. Чего не происходит. В пост фит модели, я наблюдаю задерзжки порядка 100пс - смех. В то время реально получается нечколько нс. Как с этим боротся.

Ещё один вопрос родился.

Зачастую прошивка не совпадает в моделями. Это нормально? И кто в этом виноват: Я, ПЛИС, САПР?

Заранее спасибо.
BSV
sdf в моделсиме подключали? При выводе синхросигнала на ногу неизбежно добавится некоторая задержка.
Little_boo
Цитата(BSV @ Feb 1 2007, 11:43) *
sdf в моделсиме подключали? При выводе синхросигнала на ногу неизбежно добавится некоторая задержка.


Я пост-фит в Актив подключаю.
Понятно что задержка будет. Но я хочу вставив задержку - сдвинуть её на такт и получить меньше 5 нс Ж).
Boris_TS
Цитата(Little_boo @ Feb 1 2007, 11:40) *
1) Как синхронизовать внешний клок и внутренний на этой ПЛИС? По документации обещают разброс в 3,3нс. Но реально выводя сигнал с ноги и сравнивая его на входе я вижу 4-5нс. Это много. Попытки выровнять фронты, вставляя задержку в цепь клока и обратной связи в ДЛЛ ни к чему не привели.


Мне не очень понятна ситуация с которой вы боретесь, опишите ее по подробнее. (откуда взялся Clock и через куда его пропустили)

Посмотрите http://direct.xilinx.com/bvdocs/publications/xapp174.pdf (Using DLL in Spartan-II FPGAs) - вотзможно он вас наведет на решение вашей проблеммы.
Если я правильно понял, то подобный вашему случай изображен на Figure 11: DLL Deskew ob Board Level Clock Between Multiple Startan-II Devices.
Little_boo
Цитата(Boris_TS @ Feb 1 2007, 16:41) *
Мне не очень понятна ситуация с которой вы боретесь, опишите ее по подробнее. (откуда взялся Clock и через куда его пропустили)

Посмотрите http://direct.xilinx.com/bvdocs/publications/xapp174.pdf (Using DLL in Spartan-II FPGAs) - вотзможно он вас наведет на решение вашей проблеммы.
Если я правильно понял, то подобный вашему случай изображен на Figure 11: DLL Deskew ob Board Level Clock Between Multiple Startan-II Devices.


Поссылке у меня не ПДФ. И без картинки. glare.gif

Я использую DLL. С него клок развожу по ПЛИС и на ногу. С ноги на анилизатор. И на анализатор ногу, по которой клок заходит в ПЛИС. Разница полчается 5нс. Я пытаю её уменьшить, встявляя задержу в цепь клока с целью сдвинуть его на такт - не выходит.
andrew_b
Цитата(Little_boo @ Feb 1 2007, 16:49) *
Я использую DLL. С него клок развожу по ПЛИС и на ногу. С ноги на анилизатор. И на анализатор ногу, по которой клок заходит в ПЛИС. Разница полчается 5нс.
"Ну, это нормально". smile.gif

Цитата
Я пытаю её уменьшить, встявляя задержу в цепь клока с целью сдвинуть его на такт - не выходит.
Ну что вы как на допросе. Инфу надо клещами вытаскивать. sad.gif Как вы эту задержку делаете. И главное, зачем вы это делаете?
Boris_TS
Цитата(Little_boo @ Feb 1 2007, 16:49) *
Поссылке у меня не ПДФ. И без картинки. glare.gif

Извиняюсь за битую ссылку, привильная http://direct.xilinx.com/bvdocs/appnotes/xapp174.pdf
Little_boo
Цитата(andrew_b @ Feb 1 2007, 17:05) *
Ну что вы как на допросе. Инфу надо клещами вытаскивать. sad.gif Как вы эту задержку делаете. И главное, зачем вы это делаете?


Я патался вставить в цепь между входными BUFG и DLL задержку (логические вентили). Потом пытался с выхода DLL вставить их в цепь обратной связи.

А мучения ради того, что бы сравнять фронты клока на входе и выходе(в нутри ПЛИС).




Цитата(Boris_TS @ Feb 1 2007, 17:42) *
Цитата(Little_boo @ Feb 1 2007, 16:49) *

Поссылке у меня не ПДФ. И без картинки. glare.gif

Извиняюсь за битую ссылку, привильная http://direct.xilinx.com/bvdocs/appnotes/xapp174.pdf


Я подключая DLL как на этой картинке внизу. Не очень понимаю зачем там сверху столько понакручено. К томежу в ПЛИС всего 4 BUFG, а мне парочка нужна для пары важных сигналов. Не понятно для 4-х ДЛЛ можно было побольше буферов сделать.
Boris_TS
Цитата(Little_boo @ Feb 1 2007, 18:25) *
К томежу в ПЛИС всего 4 BUFG, а мне парочка нужна для пары важных сигналов. Не понятно для 4-х ДЛЛ можно было побольше буферов сделать.

Ну вот и они так подумали, и в Spartan-2E добавили еще 4 входных буффера для обратных связей DLL.


Вы может воспользоваться схемой с Figure 10 (в точности).
Или, если вам необходимо по каким-то причинам внутреннуй CLK сдвинуть на опережение входного (ровно на задержку выходного буфера + трассировочных ресурсов), то возьмите только один DLL (по Figure 10 верхний из двух) и вставьте BUFG (от которого питаются внутренние узлы ПЛИС) в ответвление перед OBUF.

Но мне все равно как-то не понятно зачем это надо. Поэтому не могу подсказать точное решение. А если учесть, что DLL добавляет jitter (для некоторых систем неприемлемо большой), то совсем становиться не интересно. Если у вас не выйдет желаемое, попробуйте подробней описать, что и главное зачем вам недо.

Я не знаю в курсе вы или нет: FPGA editor, может добавлять тестовые выходы различных сигналов ПЛИС на выходные ножки (указывая при этом задержку от источника сигнала до выходного блока, при +25С), разводка ПЛИС при этом не меняется, что позволяет отлаживать тяжелые случаи. Может еще где и пригодится эта методика.
avesat
Посмотрите FloorPlanner-ом как развелся ваш клок по кристалу
Little_boo
Цитата(Boris_TS @ Feb 1 2007, 20:16) *
Вы может воспользоваться схемой с Figure 10 (в точности).
Или, если вам необходимо по каким-то причинам внутреннуй CLK сдвинуть на опережение входного (ровно на задержку выходного буфера + трассировочных ресурсов), то возьмите только один DLL (по Figure 10 верхний из двух) и вставьте BUFG (от которого питаются внутренние узлы ПЛИС) в ответвление перед OBUF.


Не очень понял, что при этом получится...
На 10-том обратная связи идет с наружи ПЛИС... у меня такой цепи нет. У меня схема соответствует нижнему случаю на 10-том рисунте, т.е. всего 1 ДЛЛ. Внешних устройств с клока ПЛИС я не питаю.

Цитата(Boris_TS @ Feb 1 2007, 20:16) *
Я не знаю в курсе вы или нет: FPGA editor, может добавлять тестовые выходы различных сигналов ПЛИС на выходные ножки (указывая при этом задержку от источника сигнала до выходного блока, при +25С), разводка ПЛИС при этом не меняется, что позволяет отлаживать тяжелые случаи. Может еще где и пригодится эта методика.


нет не знаю... я это вручную делаю.
Boris_TS
Цитата(Little_boo @ Feb 2 2007, 14:28) *
Не очень понял, что при этом получится...

А получится компенсация задержки IBUFG и (OBUF + Troute delay) - вроде компенсация вашей задержки содиться к этому, как я понял:

Цитата
("Разница полчается 5нс. Я пытаю её уменьшить, встявляя задержу в цепь клока с целью сдвинуть его на такт - не выходит.").

Если же я вас понял неверно, то опишите подробно, что и зачам вам необходимо.
Little_boo
Цитата(Boris_TS @ Feb 2 2007, 14:52) *
А получится компенсация задержки IBUFG и (OBUF + Troute delay) - вроде компенсация вашей задержки содиться к этому, как я понял:

Если же я вас понял неверно, то опишите подробно, что и зачам вам необходимо.


Да, но на этом рисунке, цепь обратной связи идет с наружи ПЛИС. У меня нет такой цепи. Или вы предлагаете после OBUF - завести на обратную связь внутри ПЛИС? Я попробую, по поюсь маппер такие выкрутасы не пропустит.
Little_boo
Цитата(Little_boo @ Feb 1 2007, 11:40) *
2) Как мне кажется ПОСТ-ФИТ модель, должна реально отражать задежки ПЛИС. Чего не происходит. В пост фит модели, я наблюдаю задерзжки порядка 100пс - смех. В то время реально получается нечколько нс. Как с этим боротся.

Моделирую в Актив.

3) Зачастую прошивка не совпадает в моделями. Это нормально? И кто в этом виноват: Я, ПЛИС, САПР?

Заранее спасибо.


Кто-нибудь с этим сталкивался?
Vadim
Цитата(Little_boo @ Feb 5 2007, 14:00) *
Цитата(Little_boo @ Feb 1 2007, 11:40) *

2) Как мне кажется ПОСТ-ФИТ модель, должна реально отражать задежки ПЛИС. Чего не происходит. В пост фит модели, я наблюдаю задерзжки порядка 100пс - смех. В то время реально получается нечколько нс. Как с этим боротся.

Моделирую в Актив.


Кто-нибудь с этим сталкивался?

Ну я сталкивался smile.gif Подключил sdf-файл и все стало нормально. Вам же об этом писали во втором посте.
SergeyX
Цитата(Little_boo @ Feb 5 2007, 14:00) *
Цитата(Little_boo @ Feb 1 2007, 11:40) *

2) Как мне кажется ПОСТ-ФИТ модель, должна реально отражать задежки ПЛИС. Чего не происходит. В пост фит модели, я наблюдаю задерзжки порядка 100пс - смех. В то время реально получается нечколько нс. Как с этим боротся.

Моделирую в Актив.

3) Зачастую прошивка не совпадает в моделями. Это нормально? И кто в этом виноват: Я, ПЛИС, САПР?

Заранее спасибо.


Кто-нибудь с этим сталкивался?


...крайне редко сталкивался с такой ситуацией, когда все работает в симуляторе с реальными задержками, но отказыается рабоать в железе...но это похоже не Ваш случай - если посмотреть Switching Charachteristics для Spartan2, то можно увидеть что задержки pin-to-pin составляют единицы наносекнд и никак не 100пс. Основная задержка сигнала происходит на IBUF/OBUF. И тут могут быть две причины расхождений: или как уже писалось проблема с sdf файлом или при симулировании Вы анализируете сигнал до OBUF.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.