|
Как ПЛИС принять DVI сигнал., Как правильно организовать согласование уровней |
|
|
|
Jun 1 2017, 07:36
|

В поисках себя...
   
Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140

|
Добрый день господа. Снова требуется помощь опытных коллег. Основная задача, которую я хочу решить - это принять данные от источника DVI сигнала и вывести их на LVDS матрицу. Работаю с отладочной платой http://www.terasic.com.tw/cgi-bin/page/arc...lish&No=930 На данный момент для меня не составляет проблем вывести тестовое изображение, записанное в SDRAM память, на LVDS матрицу или VGA монитор. Все блоки для приёма DVI сигнала у меня описаны, промоделированы, и вроде бы готовы для работы. Основная проблем в том, что не знаю как правильно принять сигнал DVI на физическом уровне. Как я понял, данные по DVI физически передаются по LVPECL каналу, а не LVDS, как я думал изначально. Первым же делом, я стал смотреть datasheet на ПЛИС, чтобы узнать может ли она работать с этим физическим уровнем. С одной стороны результат меня обрадовал, поскольку ПЛИС умеет работать напрямую с LVPECL, но с другой стороны результат не принёс никакой пользы, поскольку: Цитата The Cyclone V devices support the LVPECL I/O standard on input clock pins only: • LVPECL input operation is supported using LVDS input buffers. • LVPECL output operation is not supported. Т.е. работать может, но требует применения специальных ножек, которых на моей отладочной плате хватит только на 1 диф. пару... Поскольку напрямую работать с LVPECL не выходит, то необходимо согласовывать уровни LVPECL и LVDS. После прочтения я статьи http://kit-e.ru/articles/plis/2004_1_56.php у меня возник вопрос, а какое согласование правильно применять в случае приёма DVI сигнала ? Ведь в DVI применяется TMDS кодирование, поэтому можно применять как, прямое согласование (DC coupled), так и согласование по переменному току (AC coupled). Порывшись на форуме нашёл вот такую вот тему http://electronix.ru/forum/lofiversion/ind...hp/t120518.html Это всё хорошо, но можно ли обойтись малой кровью: например поставить готовые LVDS буфера, к примеру DS90LV001, которые как раз умеют работать с LVPECL. Поскольку у меня есть готовая платка с четырьмя DS90LV001 буферами, то мне такой вариант кажется наиболее простым для реализации. И ещё маленький вопрос. А как проверить выдаёт ли DVI источник хоть какой-то сигнал ? В настройках источника у меня отключено чтение EDID поэтому наличие DDC канала в DVI линиях меня волновать не должно...
|
|
|
|
|
Jun 2 2017, 05:57
|
Участник

Группа: Участник
Сообщений: 31
Регистрация: 24-11-11
Пользователь №: 68 492

|
Когда-то , в познавательных целях, изучал, на что способен MAX10. Пропускал DVI-сигнал на Марсоходе3 "насквозь". Подключал только две пары, клок и синий. Клок подавал на PLL, синий фиксировал в триггере, и соответственно, все это выводил на HDMI-разъем. только синий размножал на все три пары. На выходе получалось черно-белое изображение. Максимум, что удалось пропустить -1280х1024 с пиксель-клоком 108Мгц. Никаких буферов не ставил, насколько помню,было только 6 резисторов.
Сообщение отредактировал umarsohod - Jun 2 2017, 05:57
|
|
|
|
|
Jun 2 2017, 06:49
|

отэц
    
Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684

|
Нашёл такой документ про HDMI (в приложении) там на 136 странице сказано что HDMI источники совместимы с DVI потребителями. Воот , а на стр 38 есть описание электрики сигналов . Может поможет.
--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0 SHA-256
|
|
|
|
|
Jun 2 2017, 07:47
|
Участник

Группа: Участник
Сообщений: 31
Регистрация: 24-11-11
Пользователь №: 68 492

|
Цитата(Flip-fl0p @ Jun 2 2017, 10:01)  В качестве приёмников применяли LVDS входы или обычные пины ? Я правильно думаю, что Вы собирали проект на плате марсоход3 ? Для клока нужна диф-пара, которую можно завести на вход PLL, а для сигналов, наверное, любые диф-пары. Режим ставил LVDS, другого, для диф-пар, в максе нет.
Сообщение отредактировал umarsohod - Jun 2 2017, 07:47
|
|
|
|
|
Jun 2 2017, 08:02
|

В поисках себя...
   
Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140

|
Цитата(umarsohod @ Jun 2 2017, 10:47)  Для клока нужна диф-пара, которую можно завести на вход PLL, а для сигналов, наверное, любые диф-пары. Режим ставил LVDS, другого, для диф-пар, в максе нет. А внутренние терминаторы включали ? Пока навскидку прочитав про HDMI, пришел выводу, что каждую линию надо терминировать 50 омным резистором, подтянутым к 3,3V.
|
|
|
|
|
Jun 2 2017, 08:42
|
Участник

Группа: Участник
Сообщений: 31
Регистрация: 24-11-11
Пользователь №: 68 492

|
Цитата(Flip-fl0p @ Jun 2 2017, 11:02)  А внутренние терминаторы включали ? В максе их нет. Цитата(Flip-fl0p @ Jun 2 2017, 11:02)  Пока навскидку прочитав про HDMI, пришел выводу, что каждую линию надо терминировать 50 омным резистором, подтянутым к 3,3V. У меня на каждую пару было три резистора на 150ом. Два с каждой линии на 3.3в, один между линиями. Не претендую на академическую правильность такой схемы, но у меня работало.
|
|
|
|
|
Jun 6 2017, 08:58
|

В поисках себя...
   
Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140

|
Цитата(warrior-2001 @ Jun 6 2017, 10:52)  Там вроде без обратной связи нет передачи. По выводам не помню - в мануале должно быть описано. Вроде разобрался. Всё дело в 14 ноже (+5 Вольт). Методом научного тыка установил, что если данная ножка висит в воздухе DVI источник отключается. Если соединена с монитором - то передатчик выдает данные. Да и контакт hotplug требует подтяжки к питанию. Если висит в воздухе приёмник молчит... В общем соединил контакт hotplug c 14 ножкой через 2 кОм резитор, и передатчик начал выдавать сигналы... Осталось разобраться с преобразователем уровней CML => LVDS. Для этих целей применяю микросхемы ds90lv001. И организую согласование в таком виде:  Немного ошибся и вместо 50 Ом поставил 500 ом  Но таки на выходе ds90lv001 какой-то сигнал присутствует. Хочу поставить 50 Ом терминаоры, да вот в моих закромах таких резисторов не водится.... На стороне ПЛИС буду применять внутричиповые терминаторы, Cyclone V содержит таковые. Есть ли какие подводные камни с внутричиповыми терминаторами ?
Сообщение отредактировал Flip-fl0p - Jun 6 2017, 09:01
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|