-
Ynicky
-
Автор темы
-
Не в сети
-
Завсегдатай
-
-
Сообщений: 209
-
Спасибо получено: 39
-
-
-
-
|
Создам новую тему по плате Марсоход3, чтобы вопросы были в одном месте.
При создании своего проекта возникли такие вопросы:
1. На схеме платы выводы 118 и 119 FPGA подключены соответственно к портам IO18 и IO19.
А в файле max10_50.qsf наоборот. Где правильно?
2. Откуда приходят сигналы CEC, SCL, SDA, HPD на разъем HDMI?
3. Сигнал RESERVED подключен к выводу 133. Это ошибка?
В файле max10_50.qsf - к выводу 123.
4. Почему сигналы TMDSC и TMDS0 выведены не на диф. пары? (например 123/124 и 119/120).
И следующий вопрос.
В своем проекте инверсные выводы HDMI описал на VHDL через инвертор:
TMDS(7) <= sHDMI_D2;
TMDS(6) <= not sHDMI_D2;
TMDS(5) <= sHDMI_D1;
TMDS(4) <= not sHDMI_D1;
TMDS(3) <= sHDMI_D0;
TMDS(2) <= not sHDMI_D0;
TMDS(1) <= sHDMI_CLK;
TMDS(0) <= not sHDMI_CLK;
При этом Quartus выдает следующую ошибку:
Error (176670): Pin "TMDS[3]" requires a pseudo-differential I/O assignment.
Как с этим бороться?
Попробовал разобраться сам - не получилось.
В проекте max10_hdmi - ошибок нет, но там схемотехнический проект.
Николай.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
umarsohod
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 816
-
Спасибо получено: 168
-
-
|
Ynicky пишет: При этом Quartus выдает следующую ошибку:
Error (176670): Pin "TMDS[3]" requires a pseudo-differential I/O assignment.
Назначения сигналов RESERVED, IO18 и IO19 правильные в "qsf " , в схеме ошибка. :( нужно будет поправить.
Сигналы CEC, SCL, SDA, HPD никуда не подключены, просто подписаны для информации.
Если сигналы TMDSC и TMDS0 используются только на выход, то, на мой взгляд, выводить их на диф.пары не имеет никакого смысла.
По поводу ошибки в проекте. Какой у вас пиксель-клок и клок для TMDS?.Используете ли вы DDIO?.
Честно говоря VHDL я не знаю совсем, но если вы пришлете мне какой-нибудь простеникий проект,
например только синхрогенератор, то я попробую разобраться.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
Ynicky
-
Автор темы
-
Не в сети
-
Завсегдатай
-
-
Сообщений: 209
-
Спасибо получено: 39
-
-
-
-
|
Сделал простой проект.
Но, кажется, понял в чем дело.
В качестве сериалайзера использую мегафункцию.
Пиксельклок = 800МГц.
Николай.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Последнее редактирование: от Ynicky.
|
-
umarsohod
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 816
-
Спасибо получено: 168
-
-
|
Ynicky пишет: Сделал простой проект.
Но, кажется, понял в чем дело.
В качестве сериалайзера использую мегафункцию.
Пиксельклок = 800МГц.
Николай.
У вас наверное Пиксельклок = 80МГц а TMDS -400
Это, конечно "финт ушами", но я думаю дожно работать.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
Ynicky
-
Автор темы
-
Не в сети
-
Завсегдатай
-
-
Сообщений: 209
-
Спасибо получено: 39
-
-
-
-
|
Имя файла: hdmi_prb_vhd.txt
Размер файла: 1 KB
Да, так без ошибок. Спасибо.
Буду дальше разбираться.
Николай.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
frantony
-
-
Не в сети
-
Осваиваюсь на форуме
-
-
Сообщений: 36
-
Спасибо получено: 6
-
-
|
Про подключения LED'ов информация противоречива.
На принциапиальной схеме LED'ы на выводы назначены так:
LED7 --- 81
LED6 --- 82
LED5 --- 83
LED4 --- 84
LED3 --- 85
LED2 --- 86
LED1 --- 87
LED0 --- 88
А вот цитата из файла max10_50.qsf:
set_location_assignment PIN_83 -to LED[7]
set_location_assignment PIN_80 -to LED[6]
set_location_assignment PIN_81 -to LED[5]
set_location_assignment PIN_84 -to LED[4]
set_location_assignment PIN_85 -to LED[3]
set_location_assignment PIN_86 -to LED[2]
set_location_assignment PIN_87 -to LED[1]
set_location_assignment PIN_88 -to LED[0]
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
Ynicky
-
Автор темы
-
Не в сети
-
Завсегдатай
-
-
Сообщений: 209
-
Спасибо получено: 39
-
-
-
-
|
А у меня так.
Вроде, одинаково.
Николай.
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
frantony
-
-
Не в сети
-
Осваиваюсь на форуме
-
-
Сообщений: 36
-
Спасибо получено: 6
-
-
|
Ynicky пишет: А у меня так.
Ситуация несколько сложнее.
Я использовал проект, который, по видимому, скачал 15 августа:
$ ls -la max10_leds.zip
-rw-r--r-- 1 antony antony 35546 Aug 15 19:30 mmax10_leds.zip
$ sha1sum max10_leds.zip
68d750ed4825cd1be4debd46c3ea37c08a968017 max10_leds.zip
$ unzip max10_leds.zip
Archive: max10_leds.zip
creating: max10_leds/
inflating: max10_leds/max10.bdf
inflating: max10_leds/max10.qpf
inflating: max10_leds/max10_50.qsf
inflating: max10_leds/max10_50.qws
inflating: max10_leds/max10_50.sdc
inflating: max10_leds/max10_50_assignment_defaults.qdf
inflating: max10_leds/max10_8.qsf
inflating: max10_leds/max10_8.qws
inflating: max10_leds/max10_8.sdc
inflating: max10_leds/max10_8_assignment_defaults.qdf
inflating: max10_leds/mypll.bsf
inflating: max10_leds/mypll.ppf
inflating: max10_leds/mypll.qip
inflating: max10_leds/mypll.v
inflating: max10_leds/mypll_bb.v
inflating: max10_leds/PLLJ_PLLSPE_INFO.txt
$ grep LED max10_leds/max10_50.qsf
max10_leds/max10_50.qsf:set_location_assignment PIN_83 -to LED[7]
max10_leds/max10_50.qsf:set_location_assignment PIN_80 -to LED[6]
max10_leds/max10_50.qsf:set_location_assignment PIN_81 -to LED[5]
max10_leds/max10_50.qsf:set_location_assignment PIN_84 -to LED[4]
max10_leds/max10_50.qsf:set_location_assignment PIN_85 -to LED[3]
max10_leds/max10_50.qsf:set_location_assignment PIN_86 -to LED[2]
max10_leds/max10_50.qsf:set_location_assignment PIN_87 -to LED[1]
max10_leds/max10_50.qsf:set_location_assignment PIN_88 -to LED[0]
Как видно соответствие не согласуеся со схемой.
А вот если попробовать скачать архив с проектом сейчас, то будет скачан другой архив,
с иным содержанием max10_50.qsf:
$ wget https://marsohod.org/downloads/doc_download/168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody
--2015-09-05 19:45:25-- https://marsohod.org/index.php/downloads/doc_download/168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody
Resolving marsohod.org (marsohod.org)... 176.9.178.85
Connecting to marsohod.org (marsohod.org)|176.9.178.85|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 35647 (35K) [application/zip]
Saving to: ‘168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody’
168-pervyj-proekt-na-max10-dvoich 100%[===============================================================>] 34.81K 174KB/s in 0.2s
2015-09-05 19:45:26 (174 KB/s) - ‘168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody’ saved [35647/35647]
$ ls -l 168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody
-rw-r--r-- 1 antony antony 35647 Sep 5 19:45 168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody
$ sha1sum 168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody
37a34668bb9e20019a1552b1ca66df7c229811e8 168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody
$ rm -rf max10_leds
$ unzip 168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody
Archive: 168-pervyj-proekt-na-max10-dvoichnyj-schetchik-i-svetodiody
creating: max10_leds/
inflating: max10_leds/max10.bdf
inflating: max10_leds/max10.qpf
inflating: max10_leds/max10_50.qsf
inflating: max10_leds/max10_50.qws
inflating: max10_leds/max10_50.sdc
inflating: max10_leds/max10_50_assignment_defaults.qdf
inflating: max10_leds/max10_8.qsf
inflating: max10_leds/max10_8.qws
inflating: max10_leds/max10_8.sdc
inflating: max10_leds/max10_8_assignment_defaults.qdf
inflating: max10_leds/mypll.bsf
inflating: max10_leds/mypll.ppf
inflating: max10_leds/mypll.qip
inflating: max10_leds/mypll.v
inflating: max10_leds/mypll_bb.v
inflating: max10_leds/PLLJ_PLLSPE_INFO.txt
$ grep LED max10_leds/max10_50.qsf
max10_leds/max10_50.qsf:set_location_assignment PIN_81 -to LED[7]
max10_leds/max10_50.qsf:set_location_assignment PIN_82 -to LED[6]
max10_leds/max10_50.qsf:set_location_assignment PIN_83 -to LED[5]
max10_leds/max10_50.qsf:set_location_assignment PIN_84 -to LED[4]
max10_leds/max10_50.qsf:set_location_assignment PIN_85 -to LED[3]
max10_leds/max10_50.qsf:set_location_assignment PIN_86 -to LED[2]
max10_leds/max10_50.qsf:set_location_assignment PIN_87 -to LED[1]
max10_leds/max10_50.qsf:set_location_assignment PIN_88 -to LED[0]
И это не единственное изменение. Моя "старая" версия проекта датируется 12 августа, то, что можно скачать сейчас --- 19 августа:
--- max10_leds/max10.qpf 2015-08-19 13:20:36.000000000 +0300
+++ max10_leds.old/max10.qpf 2015-08-12 15:39:44.000000000 +0300
@@ -19,14 +19,14 @@
#
# Quartus II 64-Bit
# Version 15.0.0 Build 145 04/22/2015 SJ Web Edition
-# Date created = 13:20:36 August 19, 2015
+# Date created = 15:39:45 August 12, 2015
#
# -------------------------------------------------------------------------- #
Пора бы какую-то версификацию вести для выкладываемых материалов!
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
alman
-
-
Не в сети
-
Завсегдатай
-
-
Сообщений: 263
-
Спасибо получено: 41
-
-
-
-
-
|
Соединяю RXD Channel B с выходом TXD Channel B
assign FTDI_BD1 = FTDI_BD0;
Putty и TerreTerm при этом работают на любой скорости. Пробую подключить UART, который безупречно работает на Марсоходе-2, к Марсоходу-3, но uart не работает. Ни на запись, ни на чтение. Решил посмотреть что приходит на RXD. Для этого считаю время между изменениями входного сигнала, заношу это время в массив и по таймауту вывожу эти данные на шину, чтобы посмотреть на протокол в SignalTap.
Конечно, я могу ошибаться, но результат теста обескуражил. Похоже, что данные передаются не формате UART 8N1, а закодированы какой-то разновидностью широтной модуляции. Посему вопросы - такое вообще возможно? Если возможно и там используется какой-то протокол, то как он называется? Может быть дело в конфигурации FTDI или его драйвера? Что и где нужно поменять, чтобы заработал обычный 8N1?
Например, одиночный пробел даёт такую картину:
Конфигурация FTDI "заводская":
Если описанная ситуация невозможна, то я приведу тестовый пример, а вы, по возможности, укажите на ошибки.
Два дня борьбы с UART - "коту под хвост" :angry:
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
Время создания страницы: 0.290 секунд