реклама на сайте
подробности

 
 
> Вопрос по использованию корки RocketIO Xilinx10.2
ovs_pavel
сообщение Oct 24 2010, 11:10
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 275
Регистрация: 19-05-06
Пользователь №: 17 249



Используется данная корка при построении интерфейса Fibre Channel. Возник вопрос по подключению конкретно двух сигналов:
ENMCOMMAALIGN и ENPCOMMAALIGN (необходимы для выравнивания последовательного входящего потока по принимаемым символам "comma", отрицательному или положительному значению. В UG024 приводится, на стр. 68, схема подключения этих сигналов, но не приводится описание формирования сигналов "PCOMMA_CONTROL" и "MCOMMA_CONTROL". В этом и есть проблемма. Упоминания про них больше нигде не встречается ((.
Если на вход этих сигналов подать просто уровень логической единицы, т.е. ENMCOMMAALIGN = 1 и ENPCOMMAALIGN = 1, то выравнивание происходит, но я пока проводил только временной анализ в пакете, не в железе. Как будет в железе не ясно.
Мне кажется, что заводить эти сигналы тупо на "1" не совсем корректно, т.к. выравнивание должно происходить только в моменты поступления именно символов "comma". Не хелпните, кто уже работал с этой коркой в железе. Как использовались эти сигналы.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Shtirlits
сообщение Oct 24 2010, 13:41
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905



Мне кажется, что эти сигналы нужны для выбора способа выравнивания или реализации протоколов, в которых выравнивание выполняется каким-то другим способом.
Если управлять ими динамически, то нужно использовать RXRECCLK, который из PLL трансивера выходит и замучать P&R констрейнами, чтобы он разместил схему синхронизации.
В infiniband я тупо заводил единицу на оба, потом определял полярность подключения и реагировал согласно спецификации.
Go to the top of the page
 
+Quote Post
ovs_pavel
сообщение Oct 24 2010, 18:34
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 275
Регистрация: 19-05-06
Пользователь №: 17 249



Эти сигналы нужны именно для выравнивания входного последовательного потока данных, по крайней мере это написанно в UG024:
"These two alignment ports control how the PMA aligns incoming serial data. It can align on a minus-comma (negative disparity), a plus-comma (positive disparity), both, or neither if comma alignment is not desired. These signals are latched inside the transceiver with RXRECCLK." К тому же, если на эти сигналы подать логический 0, то выравнивание байт не происходит, т.е. если выдавали, например, 15FB, 1324 и т.д., то на приемной стороне можем получить FB13, т.е неправильно определяется граница между байтами (это конкретно для 2-х байтной ширины пакета). Как раз в доке они и рекомендуют управлять динамически, и для этого на них необходимо подать через триггер сигналы, как я уже писал ранее, "PCOMMA_CONTROL" и "MCOMMA_CONTROL". Триггеры разместить в заданном месте не проблемма, проблемма сформировать эти сигналы, т.к. никаких рекомендаций нет. Если просто подать 1, то получается что мы всегда принимаем символ "comma"... Вообщем пока думаю.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 02:12
Рейтинг@Mail.ru


Страница сгенерированна за 0.01393 секунд с 7
ELECTRONIX ©2004-2016