|
Выходные сигналы ПЛИС и их "времянка" |
|
|
|
Jun 20 2009, 11:00
|

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

|
Давно хотел спросить, но как-то руки не доходили...  Вот есть некие сигналы внутри ПЛИС (пусть для определенности какая-нибудь FPGA типа Cyclone от Altera): Код bit clock; bit [7:0] data; Задача вывести поток данных наружу на внешнее устройство: выходит шина данных (data) и сигнал тактовой частоты (clock). Есть требование, чтобы clock был сдвинут по фазе относительно данных - задержан, т.е. чтобы на том внешнем устройстве выполнялись требования по setup. До сих пор задача успешно решалась так: в PLL заводилось два клока - один системный (например, 100 МГц), второй вспомогательный (200 МГц), сдвинутый относительно системного на четверть периода (2.5 нс). Данные выходят наружу через выходные триггеры IO элементов ПЛИС, которые тактируются системным клоком, а clock выходит наружу тоже через выходной триггер IO элемента, но подается он на вход данных триггера, а тактируется этот триггер вышеуказанным вспомогательным высокочастотным клоком, сдвинутым на 2.5 нс. Таким образом, на выходе получаются данные и клок без перекосов и с четко выдержанной времянкой. Все это работает. Но есть сомнение. Как-то все это кажется сложновато и некрасиво - есть подозрение, что можно вывести клок с заданной задержкой без всяких подобных наворотов, а просто обконстрейнив. На "некрасивость" еще указывает то, что квартус на этот финт выдает предупреждение: Warning: PLL "ClkGen|pllclkgen:PLLClkGen|altpll:altpll_component|pll" output port clk[0] feeds output pin "SCLK" via non-dedicated routing -- jitter performance depends on switching rate of other design elements. Use PLL dedicated clock outputs to ensure jitter performance Понятно, что страшного ничего нет, но нехорошо. Какие мнения? Как делать правильно?
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
 |
Ответов
|
Jun 21 2009, 11:21
|

Lazy
     
Группа: Свой
Сообщений: 2 070
Регистрация: 21-06-04
Из: Ukraine
Пользователь №: 76

|
Цитата(dxp @ Jun 20 2009, 14:00)  Давно хотел спросить, но как-то руки не доходили...  Вот есть некие сигналы внутри ПЛИС (пусть для определенности какая-нибудь FPGA типа Cyclone от Altera): Код bit clock; bit [7:0] data; Задача вывести поток данных наружу на внешнее устройство: выходит шина данных (data) и сигнал тактовой частоты (clock). Есть требование, чтобы clock был сдвинут по фазе относительно данных - задержан, т.е. чтобы на том внешнем устройстве выполнялись требования по setup. До сих пор задача успешно решалась так: в PLL заводилось два клока - один системный (например, 100 МГц), второй вспомогательный (200 МГц), сдвинутый относительно системного на четверть периода (2.5 нс). Данные выходят наружу через выходные триггеры IO элементов ПЛИС, которые тактируются системным клоком, а clock выходит наружу тоже через выходной триггер IO элемента, но подается он на вход данных триггера, а тактируется этот триггер вышеуказанным вспомогательным высокочастотным клоком, сдвинутым на 2.5 нс. Таким образом, на выходе получаются данные и клок без перекосов и с четко выдержанной времянкой. Все это работает. Но есть сомнение. Как-то все это кажется сложновато и некрасиво - есть подозрение, что можно вывести клок с заданной задержкой без всяких подобных наворотов, а просто обконстрейнив. На "некрасивость" еще указывает то, что квартус на этот финт выдает предупреждение: Warning: PLL "ClkGen|pllclkgen:PLLClkGen|altpll:altpll_component|pll" output port clk[0] feeds output pin "SCLK" via non-dedicated routing -- jitter performance depends on switching rate of other design elements. Use PLL dedicated clock outputs to ensure jitter performance Понятно, что страшного ничего нет, но нехорошо. Какие мнения? Как делать правильно? Не кажется Вам, что перемудрили? Сравните полученный для FPGA Tco и требуемый Tsu... Если Tclk - Tco > Tsu - то и не каких проблем быть не должно (Tclk - период тактовой)
--------------------
"Everything should be made as simple as possible, but not simpler." - Albert Einstein
|
|
|
|
Сообщений в этой теме
dxp Выходные сигналы ПЛИС и их "времянка" Jun 20 2009, 11:00 SM Цитата(dxp @ Jun 20 2009, 15:00) Какие мн... Jun 20 2009, 11:25 dxp Цитата(SM @ Jun 20 2009, 18:25) Ну, напри... Jun 20 2009, 12:05  SM Цитата(dxp @ Jun 20 2009, 16:05) Да, варн... Jun 20 2009, 12:38  Boris_TS Цитата(dxp @ Jun 20 2009, 16:05) Еще вари... Jun 20 2009, 17:27   FPGA В FPGA от XILINX очень удобно использовать блоки D... Jun 20 2009, 20:19    DENDI Цитата(FPGA @ Jun 20 2009, 23:19) В FPGA ... Jun 21 2009, 11:10     SM Цитата(DENDI @ Jun 21 2009, 15:10) Интере... Jun 21 2009, 11:32 dxp Цитата(Victor® @ Jun 21 2009, 18:21) Не к... Jun 22 2009, 03:27  des00 Цитата(dxp @ Jun 21 2009, 21:27) Неужели ... Jun 22 2009, 03:38   MrYuran Цитата(des00 @ Jun 22 2009, 07:38) господ... Jun 22 2009, 04:15   dxp Цитата(des00 @ Jun 22 2009, 10:38) господ... Jun 22 2009, 05:15    des00 Цитата(dxp @ Jun 21 2009, 23:15) А вы зна... Jun 22 2009, 05:33     dxp Цитата(des00 @ Jun 22 2009, 12:33) наскол... Jun 22 2009, 07:31      SM Цитата(dxp @ Jun 22 2009, 11:31) А вы как... Jun 22 2009, 07:32       dxp Цитата(SM @ Jun 22 2009, 14:32) Я понимал... Jun 22 2009, 08:28        Andr2I Цитата(dxp @ Jun 22 2009, 12:28) Цитата(S... Jun 22 2009, 18:52         Shtirlits Цитата(Andr2I @ Jun 22 2009, 22:52) ...по... Jun 22 2009, 19:21        SM Цитата(dxp @ Jun 22 2009, 12:28) В чем кр... Jun 25 2009, 08:39         dxp Цитата(SM @ Jun 25 2009, 15:39) По идее н... Jun 26 2009, 02:45    ReAl Цитата(dxp @ Jun 22 2009, 08:15) И вообще... Jun 22 2009, 08:44  SM Цитата(dxp @ Jun 22 2009, 07:27) Но ведь ... Jun 22 2009, 06:18   des00 Цитата(SM @ Jun 22 2009, 00:18) А я что-т... Jun 22 2009, 06:24  Shtirlits Цитата(dxp @ Jun 22 2009, 07:27) Это что,... Jun 22 2009, 10:56   dxp Цитата(Shtirlits @ Jun 22 2009, 17:56) Ес... Jun 22 2009, 11:24 Andr2I Цитата(dxp @ Jun 20 2009, 15:00) До сих п... Jun 21 2009, 14:46 Shtirlits dxp, правильно вам quartus наругался, клок ходит п... Jun 21 2009, 23:30 disel У ксалинса в ДДР было сделано так: выход клока зав... Jun 22 2009, 09:56 Shtirlits В данном случае то, что клок чуть раньше данных то... Jun 22 2009, 11:44
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|