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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Как ПЛИС принять DVI сигнал., Как правильно организовать согласование уровней
Flip-fl0p
сообщение Jun 1 2017, 07:36
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 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 линиях меня волновать не должно...
Go to the top of the page
 
+Quote Post
andrewkrot
сообщение Jun 1 2017, 17:56
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 297
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 106



Где-то читал, что в DVI используется CML на физическом уровне, и что-то мне подсказывает что 5 циклон прямо не держит оного. В описании DVI сказано - "The conceptual schematic of one T.M.D.S. differential pair is shown in Figure 4-1. T.M.D.S. technology uses current drive to develop the low voltage differential signal at the receiver side of the DC-coupled transmission line" т.е. терминация должна быть DC-coupled. IMHO
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 1 2017, 20:26
Сообщение #3


Местный
***

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



Цитата(andrewkrot @ Jun 1 2017, 20:56) *
Где-то читал, что в DVI используется CML на физическом уровне, и что-то мне подсказывает что 5 циклон прямо не держит оного. В описании DVI сказано - "The conceptual schematic of one T.M.D.S. differential pair is shown in Figure 4-1. T.M.D.S. technology uses current drive to develop the low voltage differential signal at the receiver side of the DC-coupled transmission line" т.е. терминация должна быть DC-coupled. IMHO

Спасибо за ответ. Действительно очень похоже что физический уровень это CML
https://en.wikipedia.org/wiki/Transition-mi...ntial_signaling
Go to the top of the page
 
+Quote Post
umarsohod
сообщение Jun 2 2017, 05:57
Сообщение #4


Участник
*

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



Когда-то , в познавательных целях, изучал, на что способен MAX10.
Пропускал DVI-сигнал на Марсоходе3 "насквозь". Подключал только две пары, клок и синий.
Клок подавал на PLL, синий фиксировал в триггере, и соответственно, все это выводил на HDMI-разъем.
только синий размножал на все три пары. На выходе получалось черно-белое изображение.
Максимум, что удалось пропустить -1280х1024 с пиксель-клоком 108Мгц.
Никаких буферов не ставил, насколько помню,было только 6 резисторов.

Сообщение отредактировал umarsohod - Jun 2 2017, 05:57
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Jun 2 2017, 06:49
Сообщение #5


отэц
*****

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



Нашёл такой документ про HDMI (в приложении) там на 136 странице сказано что HDMI источники совместимы с DVI потребителями.
Воот , а на стр 38 есть описание электрики сигналов .
Может поможет.
Прикрепленные файлы
Прикрепленный файл  HDMI_Spec_1.3_GM1.pdf ( 1.92 мегабайт ) Кол-во скачиваний: 20
 


--------------------
"..не нравятся мои выборы? ..приходите в мой суд."
Узурпатор П.
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 2 2017, 07:01
Сообщение #6


Местный
***

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



Цитата(umarsohod @ Jun 2 2017, 08:57) *
Никаких буферов не ставил, насколько помню,было только 6 резисторов.

В качестве приёмников применяли LVDS входы или обычные пины ?
Я правильно думаю, что Вы собирали проект на плате марсоход3 ?
Go to the top of the page
 
+Quote Post
umarsohod
сообщение Jun 2 2017, 07:47
Сообщение #7


Участник
*

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



Цитата(Flip-fl0p @ Jun 2 2017, 10:01) *
В качестве приёмников применяли LVDS входы или обычные пины ?
Я правильно думаю, что Вы собирали проект на плате марсоход3 ?

Для клока нужна диф-пара, которую можно завести на вход PLL, а для сигналов, наверное, любые диф-пары.
Режим ставил LVDS, другого, для диф-пар, в максе нет.

Сообщение отредактировал umarsohod - Jun 2 2017, 07:47
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 2 2017, 08:02
Сообщение #8


Местный
***

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



Цитата(umarsohod @ Jun 2 2017, 10:47) *
Для клока нужна диф-пара, которую можно завести на вход PLL, а для сигналов, наверное, любые диф-пары.
Режим ставил LVDS, другого, для диф-пар, в максе нет.

А внутренние терминаторы включали ?
Пока навскидку прочитав про HDMI, пришел выводу, что каждую линию надо терминировать 50 омным резистором, подтянутым к 3,3V.
Go to the top of the page
 
+Quote Post
umarsohod
сообщение Jun 2 2017, 08:42
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 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в, один между линиями.
Не претендую на академическую правильность такой схемы, но у меня работало.
Go to the top of the page
 
+Quote Post
andrewkrot
сообщение Jun 2 2017, 08:52
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 297
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 106



Если хотите правильно - см. http://www.ti.com/product/SN65LVDS100 а если быстро то можно попробовать на резисторах http://pdfserv.maximintegrated.com/en/an/AN291.pdf
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 2 2017, 10:56
Сообщение #11


Местный
***

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



Цитата(andrewkrot @ Jun 2 2017, 11:52) *
Если хотите правильно - см. http://www.ti.com/product/SN65LVDS100 а если быстро то можно попробовать на резисторах http://pdfserv.maximintegrated.com/en/an/AN291.pdf

Боюсь, что придётся всё-же делать платку для согласования уровней. Изучив datasheet я не нашёл возможности установить 50 омный терминатор с подтяжкой на VCC(3,3в) как того требует схема согласования CML-LVDS (DC coupled).
Сейчас буду искать аналоги SN65LVDS100, где купить подешевле и побыстрее. Пока нашел в чип и дипе за 460 деревянных за преобразователь... cranky.gif
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 5 2017, 10:29
Сообщение #12


Местный
***

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



Товарищи, а подскажите как вообще проверить что DVI источник что-то выдает ?
Смотрел осциллографом одну из LVDS линий CLK (смотрел между землёй и одной из линий) так на осциллограмме не видно ничего. Либо я меряю неправильно, либо источник не хочет ничего выдавать мне.
Go to the top of the page
 
+Quote Post
warrior-2001
сообщение Jun 6 2017, 07:52
Сообщение #13


Местный
***

Группа: Свой
Сообщений: 322
Регистрация: 9-10-08
Из: Таганрог, Ростовская обл.
Пользователь №: 40 792



Там вроде без обратной связи нет передачи. По выводам не помню - в мануале должно быть описано.


--------------------
Глупцы игнорируют сложность. Прагматики терпят ее. Некоторые могут избегать ее. Гении ее устраняют.
Go to the top of the page
 
+Quote Post
Flip-fl0p
сообщение Jun 6 2017, 08:58
Сообщение #14


Местный
***

Группа: Участник
Сообщений: 408
Регистрация: 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 ом cranky.gif Но таки на выходе ds90lv001 какой-то сигнал присутствует. Хочу поставить 50 Ом терминаоры, да вот в моих закромах таких резисторов не водится....
На стороне ПЛИС буду применять внутричиповые терминаторы, Cyclone V содержит таковые. Есть ли какие подводные камни с внутричиповыми терминаторами ?

Сообщение отредактировал Flip-fl0p - Jun 6 2017, 09:01
Go to the top of the page
 
+Quote Post
andrewkrot
сообщение Jun 14 2017, 13:30
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 297
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 106



У Xilinx - TMDS
https://www.xilinx.com/support/documentatio...tes/xapp460.pdf
https://www.xilinx.com/support/documentatio...o_Interface.pdf
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th October 2017 - 07:29
Рейтинг@Mail.ru


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