|
Повтор темы: выравнивание задержки глобального клока, Из темы ПЛИС |
|
|
|
May 18 2012, 22:53
|
Профессионал
    
Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884

|
да простят меня админы так как в ПЛИС-ах никто не отвечает, спрошу здесь:
В проекте Virtex2 c фаноутом на опорном клоке 1050 цепей skew по отчету составил 240 пс. Клок заведен через bufg. Подскажите, как реализован механизм выравнивания skew на кристале ? в глобальной матрице ведь нет pll, и если даже просто клок задерживать во всех узлах кроме загруженных, по моему получится хрень. Кроме того, насколько я понимаю процесс выравнивания должен быть динамическим (ведь триггеры каждого квадранта щелкают не в каждом такте ... ) Значит, механзмы синхронизации в матрице должны быть динамическими и реализованными в аналоге ?
--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
|
|
|
|
|
 |
Ответов
|
May 20 2012, 19:57
|

Знающий
   
Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950

|
Вы говорите о clock tree, а в ПЛИС он фиксированный. Обычно в ПЛИС выделяют некие быстрые клоки для регионов, и глобальные клоки для всего дизайна. У глобальных большая нагрузочная способность и лучший охват i/o банков и внутренней логики. Итого, если вы завели тактирование правильно (в самую быструю pll, выход которой и есть глобальный клок для ПЛИС), и у вас тем не менее плохая времяннка, значит самое время заняться оптимизацией дизайна - выискивать мультисайкл пути, уменьшать нагрузку на ключевые триггера и т.д. В общем, ваша проблема - в схематехнике дизайна, есть над чем работать
|
|
|
|
|
May 21 2012, 03:44
|
Участник

Группа: Участник
Сообщений: 22
Регистрация: 23-03-12
Пользователь №: 70 970

|
Цитата(Shivers @ May 20 2012, 23:57)  Вы говорите о clock tree, а в ПЛИС он фиксированный. Обычно в ПЛИС выделяют некие быстрые клоки для регионов, и глобальные клоки для всего дизайна. У глобальных большая нагрузочная способность и лучший охват i/o банков и внутренней логики. Итого, если вы завели тактирование правильно (в самую быструю pll, выход которой и есть глобальный клок для ПЛИС), и у вас тем не менее плохая времяннка, значит самое время заняться оптимизацией дизайна - выискивать мультисайкл пути, уменьшать нагрузку на ключевые триггера и т.д. В общем, ваша проблема - в схематехнике дизайна, есть над чем работать Не совсем понятно кому вы отвечаете/комментируете, но вообще это не столь важно, вы по-моему не поняли сути вопроса. Сlock tree или без Сlock tree (честно признаюсь, что не знаю что такое фиксированный) ни в этом суть вопроса. У вас, кстати говоря, и получается дерево - ствол это глобальные, а веточки внутри блоков (регионов, по-вашему). Регионы/блоки/иерархия все это естественно и понятно и нужно, и если между этими блоками нет перекрёстных и обратных с связей то почти и никаких вопросов с глобольной синхронизацией. А если эти связи есть? - Вот здесь и получается "петруха-андрюха". Это на глобальном уровне, а на уровне блоков (внутри блоков) хоть и в меньшей степени, но вопрос остаётся тоже. На сколько это опасно - это нужно считать, а для считать нужна информация. Но вот что-то я при беглом просмоте мануала так и не нашел данных по задержкам на шинах и соответствующих расчетных формул (может и не заметил). Эти вопросы, думаю (да вроде и читал когда-то какой-то ноут), это часть работы ихнего синтезатора. Но на бога надейся, но и сам не плошай. "и у вас тем не менее плохая времяннка, значит самое время заняться оптимизацией дизайна - выискивать мультисайкл пути, уменьшать нагрузку на ключевые триггера и т.д. В общем, ваша проблема - в схематехнике дизайна, есть над чем работать " - работать всегда есть над чем, кто-то, например, круглое таскает, а кто-то плоское катает и оптимизировать можно до бесконечности. kondensator42
|
|
|
|
|
May 21 2012, 04:28
|

Знающий
   
Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950

|
Цитата(kondensator42 @ May 21 2012, 06:44)  Не совсем понятно кому вы отвечаете/комментируете, но вообще это не столь важно, вы по-моему не поняли сути вопроса. Сlock tree или без Сlock tree (честно признаюсь, что не знаю что такое фиксированный) ни в этом суть вопроса. У вас, кстати говоря, и получается дерево - ствол это глобальные, а веточки внутри блоков (регионов, по-вашему). Регионы/блоки/иерархия все это естественно и понятно и нужно, и если между этими блоками нет перекрёстных и обратных с связей то почти и никаких вопросов с глобольной синхронизацией. А если эти связи есть? - Вот здесь и получается "петруха-андрюха". Это на глобальном уровне, а на уровне блоков (внутри блоков) хоть и в меньшей степени, но вопрос остаётся тоже. На сколько это опасно - это нужно считать, а для считать нужна информация. Но вот что-то я при беглом просмоте мануала так и не нашел данных по задержкам на шинах и соответствующих расчетных формул (может и не заметил). Эти вопросы, думаю (да вроде и читал когда-то какой-то ноут), это часть работы ихнего синтезатора. Но на бога надейся, но и сам не плошай. "и у вас тем не менее плохая времяннка, значит самое время заняться оптимизацией дизайна - выискивать мультисайкл пути, уменьшать нагрузку на ключевые триггера и т.д. В общем, ваша проблема - в схематехнике дизайна, есть над чем работать " - работать всегда есть над чем, кто-то, например, круглое таскает, а кто-то плоское катает и оптимизировать можно до бесконечности.
kondensator42 В предыдущем посте я отвечал топикстартеру, теперь отвечу вам: под фиксированным clock tree имелось ввиду одно большое дерево. и несколько дублирующих и региональных деревьев, причем у каждого дерева могут быть разные источники (две или три pll). Конкретику читайте в доке на ПЛИС, это все должно быть описано. Далее, по задержкам: сделайте backannotate нетлиста с задержками и моделируйте - это единственный вариант увидеть глазами как распределились задержки внутри ПЛИС. И последнее - работа над оптимизацией не может быть бесконечной, т.к. алгоритм предельно простой: берете самый плохой триггер в списке, который можно переписать, правите и переразводите. Затем правите следующий и т.д.-алгоритм конечный, и иногда он приводит к переписыванию целых блоков. Если же конечная цель- asic, то иногда можно остановиться и на пониженных частотах, т.к. проект работающий в ПЛИС на конкретной частоте, будет работать на той же частоте в asic сделанном по тех процессу примерно в три раза лучше. Т.е. если работает в плис по 90нм, то можно смело синтезировать asic 28нм. Правило (в три раза) естественно чисто эмпирическое, но некая корреляция между тех процессами плис и asic прослеживается.
|
|
|
|
|
May 21 2012, 19:35
|
Участник

Группа: Участник
Сообщений: 22
Регистрация: 23-03-12
Пользователь №: 70 970

|
"Конкретику читайте в доке на ПЛИС" и "Что касается FPGA, то Shivers Вам ответил - клок три фиксировано" - и прочитал и поиском на "tree" и "fixed" искал в двух документах: "Virtex-II Platform FPGA User Guide" и "Virtex-II Platform FPGAs: Complete Data Sheet", и никаких таких "клок три фиксировано" ибн "fixed clock tree"не нашел. А нашел вот это для DCM: "Phase offset between CLKIN and CLKFB is the worst-case fixed time difference between rising edges of CLKIN and CLKFB, excluding output jitter and input clock jitter." и ещё подобное для синтезаторов. И понял откуда ноги растут у этих заявлений "клок три фиксировано". Не "клок три фиксировано", а максимальная ошибка PLL в точке подключения сигнала CLKFB нормирована. И опять же это DCM, то о чем я писал в первом сообщении, а не какие-то там мифические "клок три фиксировано" претендующие на нобелевскую премию. И возножное число этих контролируемых точек равно числу блоков DCM. Просматривая иногда приглашения на работу иногда находишь очень забавные объявления от очень известных фирм типа: "Требуется инженер-схемотехник с 8-летним стажем знающий Cadence, Synopsys, Mentor,.., VHDL, Verilog, C++,.., и понимающий схемотехнику. Значит как-то просачиваются/туннелируют туда эти операторы тулзоф. Существуют некоторые прописные истины в электронике и в частности это Clock. Даже любой более или менее профессиональный тополог знает что синхросигнал нужно разводить аккуратно с минимизацией переходов и без никакого там поликремния. Однако: "skew тул выравнивает: вставляя буфера, меняя их розмер, делая оптимальний плейсмент, меняя точки подключение листьев, строя физически симетричную или несиметричную структуру." или "В этом случае будет не хрень а Useful Skewp. При этом можно как буферы вставлять так и подключать флопы кудато в середину дерева" Последний перл вдвойне интересен если учитывать возможную неустойчивую работу триггера при заваленном синхросигнале. Ну а здесь для особо одарённых операторов тулзоф инфа от самого Xilinx: "Up to 12 DCM blocks are available. To generate de-skewed internal or external clocks, each DCM can be used to elimi- nate clock distribution delay" Ваши ракеты, Torpeda, могут и не туда полететь. Если, конечно, вы имеете к ним хоть какое-то отношение. Был я раза два на таком Харьковском предприятии с очень крутым допуском и было это очень давно. kondensator42
|
|
|
|
Сообщений в этой теме
a123-flex Повтор темы: выравнивание задержки глобального клока May 18 2012, 22:53 kondensator42 Цитата(a123-flex @ May 19 2012, 02:5... May 19 2012, 03:25   Torpeda Цитата(Shivers @ May 21 2012, 07:28) ....... May 21 2012, 07:04 a123-flex Цитата(Shivers @ May 20 2012, 22:57) Вы г... May 21 2012, 15:34 dm.pogrebnoy to kondensator42
Я в топологии м/сх вообще ничего ... May 21 2012, 19:55 kondensator42 Цитата(dm.pogrebnoy @ May 21 2012, 23:55)... May 22 2012, 03:03  Torpeda Цитата(kondensator42 @ May 22 2012, 06:03... May 22 2012, 09:49  Torpeda Цитата(kondensator42 @ May 22 2012, 06:03... May 22 2012, 12:59   kondensator42 Цитата(Torpeda @ May 22 2012, 16:59) ну и... May 22 2012, 17:36    Torpeda Цитата(kondensator42 @ May 22 2012, 20:36... May 23 2012, 07:54     AJIEKCEu Попробую изложить свое видение. Специально для kon... Jun 8 2012, 11:19 MadGarry Здесь наверное имеет смысл разделить детали клоков... May 22 2012, 05:05 kondensator42 Цитата(MadGarry @ May 22 2012, 09:05) Зде... May 22 2012, 20:04 dm.pogrebnoy Сделал пару картинок (из FPGA Editor от Xilinx) по... May 22 2012, 07:39 MadGarry Цитата(dm.pogrebnoy @ May 22 2012, 11:39)... May 22 2012, 13:10  dm.pogrebnoy Цитата(MadGarry @ May 22 2012, 17:10) Инт... May 22 2012, 13:49 dm.pogrebnoy Мне одному кажется что здесь никто не понимает как... May 22 2012, 18:30
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|