Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: TLK3101
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Цифровые схемы, высокоскоростные ЦС
Corvus
Доброго времени суток!
Краткое описание ситуации: есть 2 платы, между ними нужно наладить обмен по оптическому кабелю.
Каждая плата структурно: FPGA (Spartan 3E) -> SerDes (TLK3101) ->SFP модуль. Если на любой из плат, оптическим кабелем соединить вход и выход SFP модуля, то всё работает замечательно. Принимаю те же данные, что передаю. Т.е "петля" на каждой плате работает.

Но если соединить платы между собой, то идёт большая потеря пакетов (более 50%). Связь устанавливается, потом падает, потом снова восстанавливается. И так бесконечно. smile3046.gif

На вход FPGA поступает 66 МГц от кварцевого генератора, в FPGA умножается на 2, и на TLK3101 поступает 133 МГц.
Пробовал подавать 66 МГц на TLK3101 напрямую - не помогло. Врочем, для TLK3101 работа на такой частоте не гарантируется.

Собственно вопрос, куда копать, чтобы добиться устойчивой связи? rolleyes.gif
Может кто-нибудь работал с этим SerDes?

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

P.S. Страница с описанием TLK3101 http://focus.ti.com/docs/prod/folders/print/tlk3101.html
reddrug
Цитата(Corvus @ Jan 12 2010, 21:16) *
Доброго времени суток!
Краткое описание ситуации: есть 2 платы, между ними нужно наладить обмен по оптическому кабелю.
...
если соединить платы между собой, то идёт большая потеря пакетов (более 50%). Связь устанавливается, потом падает, потом снова восстанавливается. И так бесконечно. smile3046.gif


1. что за оптический модуль используется?
2. как Вы подключили параллельный приемный интерфейс tlk3101 к FPGA?
3. как ведут себя сигналы RX_DV/LOS и RX_ER при приеме битых пакетов?
RobFPGA
Приветствую!

Делал похожее и TLK2501 и на TLK3101 и с похожими проблемами.

Глюки были из за кривости тактирования TLK.
Во первых надо на передающем и приемном конце иметь кварцы с разницей
частот не более ±200 PPM. Во вторых тактировать с выхода FPGA проблемно - уж больно 'грязный' такт получается (шумов много).
Пришлось ставить отдельный кварц для такта и заводить его прямо на TLK и FPGA. Теперь работает как на "меди" так и на оптике.

При работе на себя ошибок нет так как опора одна и для передачи и для приема .

Успехов! Rob.
Corvus
1. Finisar FTLF1319P1BTL http://www.finisar.com/download_nG9CKZFTLF...L_Spec_RevA.pdf
2. Напрямую к одному банку.
3. RX_DV держится в единице, RX_ER переключается 1 в 0, и обратно.

Смущает то, что по отдельности, каждая плата по петле работает. Подозреваю, что всё дело в синхре. Попробую проверить с 2-мя генераторами по 133 МГц, подать прямо на SerDes, без использования PLL в FPGA.

Update:
Пока отвечал, RobFPGA предложил то же самое. biggrin.gif
Спасибо!

Попробую так сделать.
reddrug
Цитата(RobFPGA @ Jan 13 2010, 14:16) *
Приветствую!

Делал похожее и TLK2501 и на TLK3101 и с похожими проблемами.

Глюки были из за кривости тактирования TLK.
Во первых надо на передающем и приемном конце иметь кварцы с разницей
частот не более ±200 PPM. Во вторых тактировать с выхода FPGA проблемно - уж больно 'грязный' такт получается (шумов много).
Пришлось ставить отдельный кварц для такта и заводить его прямо на TLK и FPGA. Теперь работает как на "меди" так и на оптике.

При работе на себя ошибок нет так как опора одна и для передачи и для приема .

Успехов! Rob.


даже хуже: "...GTX_CLK must be within ±100 PPM of the desired parallel data rate clock." page 11
AndriAno
Работаем с TLK2711. Действительно необходимо подавать правильную тактуху на обе микрухи. В нашем случае, с одной платы тактовая по коаксиалу(дополнительной линией) идет на другую. Тактовую подаем через PLL, без дополнительной фильтрации, проблем с потерей пакетов не наблюдаем.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.