TS-Conf на ReVerSE-U16

Железо, связанное с TS-Conf

Postby dsp » Thu, 18.09.2014 10:25:27

TS-Labs, спасибо за обратную связь. Я не могу SDK пристегнуть (занимает упакованный 2MB, да и не надо наверное), расскажу как делал. Скачал исходники на пенево у тебя. Там есть директория evosdk.
zx-evo-fpga-e4dbd0fbc473\pentevo\sdk\evosdkts\evosdk\
Это то что у меня на рисунке 1 – evosdk.

6) открываем эту директорию, там только исходники и есть еще
_compile.bat – это для сборки нашего проекта, он вызывается из директории PING при запуске PING\compile.bat
compile_sdk_libs.bat – этот вот надо запустить прям отсюда для получения crt0.o, evo.o
7) допустим мы просто скопировали evosdk, тогда если попытаться скомпилировать то получим ошибку –не найдены crt0.o, evo.o.
8) поэтому перед компиляцией нашего проетка PING\compile.bat, надо сначала получить crt0.o, evo.o , для этого запускаем compile_sdk_libs.bat
9) когда уже есть crt0.o, evo.o. (в принципе делается один раз) тогда запускаем PING\compile.bat

Чтобы увидеть ассемблерный файл надо в evosdk\_compile.bat заремарить удаление временной директории( rem rd /s /q %temp%).
rem удаляем временную директорию
:clean
rem rd /s /q %temp%

_naked – можно убрать, так же как и функцию заполнения бордюра определенным цветом, использовал для теста.

sfr -0xFF, если sfr banked (at 0x0001 Port_0001; ), то 0xFFFF. Я не знаю, как в IAR реализовано обращение к портам поэтому ничего сказать не могу
Attachments
_compile.rar
(1022 Bytes) Downloaded 302 times
6a.JPG
7.JPG
8.JPG
9.JPG
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby TS-Labs » Thu, 18.09.2014 19:53:53

dsp wrote:8) поэтому перед компиляцией нашего проетка PING\compile.bat, надо сначала получить crt0.o, evo.o , для этого запускаем compile_sdk_libs.bat

О, за это спасибо. Я когда-то компилил, но напрочь забыл.
dsp wrote:Я не знаю, как в IAR реализовано обращение к портам поэтому ничего сказать не могу

Я знаю как ) Через сами понимаете что )
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby dsp » Fri, 19.09.2014 03:33:33

VBI, я вспомнил хороший метод быстрой загрузки (для отладки) лоадера через JTAG. Я увидел его применение в проекте Вячеслава Славинского - VECTOR06 (DE1). Он использовал PC программу (загрузчик по JTAG) от Terasic DE1, для обновления RAM памяти. Для этого надо вставить модуль JTAG загрузчика в проект на FPGA. Не пробовал перениести это все на Cyclone IV, но мне кажется это лучший вариант если нет подводных камней.

http://code.google.com/p/vector06cc/wik ... ementation
DE1 is supplied with a useful sw/hw combo called USB JTAG API/DE1 Control Panel. It implements control of various DE1 peripherals. This is very convenient for debugging. For example, memory can be preloaded or read at any time. But for the Control Panel software to be useful, matching hardware has to be implemented.

Единственное что хочу заметить, сейчас Terasic использует для демонстрации возможностей плат другой метод поэтому в частности новая DE1 Control Panel не подойдет.
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby VBI » Fri, 19.09.2014 08:23:55

"видит глаз, да зуб не ймёт"
dsp, ты знаешь мои "успехи" с фпга)
по сему я лучше переделаю твой загрузчик и пока буду бегать с флешками))
судя по описанию, это как раз то, что нужно: memory can be preloaded or read at any time. у нас есть Control Panel software ?

В любом случае, спасибо большое!
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby dsp » Fri, 19.09.2014 11:58:17

VBI, я не предлагаю тебе сделать на FPGA, я лишь хотел сказать что не все так безнадежно (я после клавы сделаю). Постоянно компилировать весь FPGA проект из за загрузчика - знаю раздражает. Просто до этого я предлагал через RS232, сейчас думаю что через JTAG - более привлекательно. Control Panel Software есть (1.2MB) и я его использовал для прошивки FLASH на DE1 и код есть для FPGA. То есть это не асбстрактная идея.
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby VBI » Fri, 19.09.2014 12:01:11

JTAG круче, он уже есть.
хорошо
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby TS-Labs » Sat, 20.09.2014 13:27:10

dsp wrote:Для этого надо вставить модуль JTAG загрузчика в проект на FPGA. Не пробовал перениести это все на Cyclone IV, но мне кажется это лучший вариант если нет подводных камней.

http://bsvi.ru/tutorial-po-ispolzovaniyu-signaltapii/
Посмотри туда, я тап использую ВСЕГДА.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Sat, 20.09.2014 15:42:15

VBI, а что собственно требуется от загрузчика? Все что было нужно (модификация RTC, поддержка FAT32) уже сделано.
Off Topic
MVV Сб, 13.09.2014 21:00:38

Или ты делаешь setup для возможности конфигурирования платы файлом *.jic с SD карточки? :bang:
MVV wrote:Сам setup можно сделать подгружаемым, оставив в FPGA только простой загрузчик блока инициализации.

В общем - в одном блоке М9К (1К) записан загрузчик, задача его - копирование данных определенной длины по конкретному адресу из М25 (это SPI-FLASH) в оперативную память с последующем анализом на достоверность загрузчику по идентификатору в начале и его запуск.
Или самый простой способ, как написал dsp - это модификация M9K блока загрузчика на лету, через JTAG интерфейс.
Заглядывайте хоть в репу временами. Добавляйте замечания, исправления, а то смысл тогда какой в репозитарии, если им не пользуются? :dontknow: :help:
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby dsp » Tue, 23.09.2014 09:58:07

Keyboard U16. На базе U16 V26, cделал конвертор USB to PS2 (первая рабочая версия) и добавил буфер клавиатуры (это типа драйвер клавиатуры для нормальной работы TS-Conf, если можно так сказать). CLI2 запускается клавиши нормально работают. VNC2 не трогал (до нее еще очередь дойдет, когда мышку подключать буду).
rtl (CLI2).rar – это то, что менял,
2014_09_23 U16_Project_V26 (CLI2).rar – весь проект
В проекте отключил звук и вместо него приделал RS 232. На скорости 115200 можно посмотреть, что пишется в буфер клавиатуры. При желании можно вернуть звук. Надо заменить tsconf.vhd на tsconf (CLI2 SOUND).rar
Attachments
rtl (CLI2).rar
(14.7 KiB) Downloaded 340 times
tsconf (CLI2 SOUND).rar
(9.51 KiB) Downloaded 301 times
2014_09_23 U16_Project_V26 (CLI2).rar
(410.07 KiB) Downloaded 297 times
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby dsp » Thu, 25.09.2014 10:12:36

Terasic JTAG загрузчик не подойдет
- используются дополнительные 4 пина FPGA
- Terasic Byte Blaster имеет дополнительный CS pin.

Сделал загрузчик по RS 232 (уже проще нельзя придумать).
-Z80 не используется.
- ROM подключен как линейный буфер приемника UART.
- Left GUI кнопка ресет (обнуление счетчика адреса) и запуск загрузчка

Как работает. При подаче питания память ROM инициализирована загрузчиком стандартным. Если надо проверить новый загрузчик без перекомпиляции проекта то
- нажимаем Left GUI (или любой сброс), счетчик байт обнуляется
- по RS232 на скорости 115200 посылаем содержимое бинарного файла, по приходу нового байта в U16 он помещается по адресу счетчика байт и его значение приращивается.
- по окончании загрузки жмем Left GUI и смотрим как работает загрузчик

Для загрузки бинарного файла я модифицировал rs232mnt от TS-Tabs. 2014_09_25 LOADER(RS232).RAR.
Весть проект U16 прикрепил. 2014_09_25 U16_Project_V26.rar

Если будут наблюдаться сбои при передаче, скорость лучше понизить . Я использовал подобный загрузчик для запуска ZET bios. Скорость передачи была 9600, все на ура работало.
Attachments
2014_09_25 U16_Project_V26.rar
(482.42 KiB) Downloaded 300 times
2014_09_25 LOADER(RS232).RAR
(60.35 KiB) Downloaded 297 times
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby Дмитрий2012 » Sun, 19.10.2014 15:40:02

MVV , залил на свою платку с чипом EP3C25E144I7N версию u16_tsconf_v028(20141018). С графикой совсем беда стала, все глючит в демах и играх для tsconf. Версия 026 работала стабильнее, кроме звука в демке VBI "RUBICON".
У Вас версия u16_tsconf_v028 работает нормально?
Дмитрий2012
 
Posts: 13
Joined: Mon, 04.08.2014 20:24:45

Postby MVV » Sun, 19.10.2014 15:57:18

Дмитрий2012 wrote:С графикой совсем беда стала, все глючит в демах и играх для tsconf.

Ссылки на то, что не работает, можно? Попробую разобраться, т.к. не все проверял...
Дмитрий2012 wrote:кроме звука в демке VBI "RUBICON"

Там юзается MP3 кодек. Soft-core кодека MP3 есть, можно прикрутить. Нет толковых программеров для написания мозгов для его работы :)
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby Дмитрий2012 » Sun, 19.10.2014 16:18:26

MVV wrote:Ссылки на то, что не работает, можно? Попробую разобраться, т.к. не все проверял...

Вот хотя бы эти проги:
Rubicon
http://zxaaa.untergrund.net/get.php?f=DEMO6/rubicon.zip

Uwol, Quest For Money
download/file.php?id=500

http://zxaaa.untergrund.net/view_demo.php?id=8341

У меня они работают так:
http://youtu.be/Hvrq4HmSx9c
http://youtu.be/B-B-DGqvYPk
http://youtu.be/L0aJdsjB7Lg

А вот звук в Rubicon на версии v028 по моему работать стал лучше, по крайней мере нет того треска и шипения, что было с прошивкой v026.
Дмитрий2012
 
Posts: 13
Joined: Mon, 04.08.2014 20:24:45

Postby Buyan » Sun, 19.10.2014 17:21:40

Дмитрий2012 wrote:У меня они работают так:
http://youtu.be/Hvrq4HmSx9c
http://youtu.be/B-B-DGqvYPk
http://youtu.be/L0aJdsjB7Lg

отрисовка спрайтов глючит
Buyan
 
Posts: 159
Joined: Fri, 08.03.2013 19:14:56

Postby MVV » Sun, 19.10.2014 18:00:11

Дмитрий2012, поправил, проверь сборку 20141019. Дальше пусть TS-Labs посмотрит, если нет, то придется переписать все его модули и объявить релиз новой TS-Conf, а это несильно ему понравится...
Да, ещё, заменил tv80s на t80s. Пока не разбирался в чем причина, но на tv80s дрожат мультиколорные эффекты?! Возможно t80s как-то иначе себя поведет и с прерываниями, а на них висит и звук...
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby Дмитрий2012 » Sun, 19.10.2014 19:19:26

MVV wrote:Дмитрий2012, поправил, проверь сборку 20141019.

Проверил, теперь с отрисовкой спрайтов все в порядке: :). Жаль только звук в демо RUBICON опять хрипеть начал.
Визуально разницу в работе по сравнению с прошивкой v026 не заметил. Мультиколорные эффекты еще не смотрел.
Дмитрий2012
 
Posts: 13
Joined: Mon, 04.08.2014 20:24:45

Postby TS-Labs » Mon, 20.10.2014 11:44:38

MVV wrote:Дальше пусть TS-Labs посмотрит

Дай перефразирую: "нет толковых программеров/хдл-еров (кроме меня ясен пень), но я ниасиливаю разгрести регрешены, которые полезли, когда я натянул чужой дремучий лес на более продвинутое железо, потому прошу автора разобраться в моих чудо-кодах, он ведь только и ждет от меня команды".
MVV wrote:если нет, то придется переписать все его модули и объявить релиз новой TS-Conf

А лишень бись вже осилив...
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Mon, 20.10.2014 21:20:32

TS-Labs wrote:Дай перефразирую: "нет толковых программеров/хдл-еров (кроме меня ясен пень), но я ниасиливаю разгрести регрешены, которые полезли, когда я натянул чужой дремучий лес на более продвинутое железо, потому прошу автора разобраться в моих чудо-кодах, он ведь только и ждет от меня команды".
А лишень бись вже осилив...

"— Правильно, — приговаривал Остап, — а теперь по шее. Два раза. Так. Ничего не поделаешь. Иногда яйцам приходится учить зарвавшуюся курицу… Еще разок… Так. Не стесняйтесь. По голове больше не бейте. Это самое слабое его место.
Если бы старгородские заговорщики видели гиганта мысли и отца русской демократии в эту критическую для него минуту, то, надо думать, тайный союз «Меча и орала» прекратил бы свое существование."
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Tue, 21.10.2014 15:04:49

Довольно симметричненько. Одобряю.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby dsp » Thu, 06.11.2014 12:22:41

Спаял 5 плат U16 – все платы заработали сразу. Грузил JIС файлы от MVV V28 для версии Сyclone IV N7 (у меня все N8) так и свои естественно.
На сегодняшний день слышал только о следующих проблемах.
1. В зависимости от типа процессора либо звук в рубиконе хрипит (T80s) либо якобы неправильно отображается палитра и наблюдается дрожания border эффектов (tv80s). Я использую процессор tv80s так как звук для меня более критичен и более понятна связь с процессором –не успевает обрабатывать прерывания например или их пропускает. На счет того, что неправильно отображает палитру и дергается бордюр (не знаю что это)
– не наблюдал сам так как не приводит народ примеров на каких программах можно увидеть и как это конекретно проявляется
- если из за процессора то по логике неправильно должен писать в память, но пока на стабильность никто не жаловался, поэтому я склоняюсь к мысли что если и зависит то косвенно. (сам процессор скорее всего ни при чем). Cкажем, как дергание бордюра может быть связано с типом процессора или дрожание цвета ?

2. VBI при написании загрузчика тоже говорил о непредсказуемости его работы при довольно стабильной работы все системы в целом. Тут все без мистики. Спасибо VBI за исходники. Я его запустил в первоначально задуманном варианте (исходники привожу) и работает все предсказуемо и стабильно. Основная проблема в том что ему никто не сказал что память загрузчика это не память RAM и через DMA прочитать ее скорее всего не получится для данной конфигурации железа (Прошу прощения за такое недоразумение ). В исходниках логотип и палитра загружались через DMA – естественно первоначально на экране я ничего не видел покуда не переделал копировальщик из памяти загрузчика в RAM. И цвета тоже естественно могли быть произвольными так как палитра была не загружена. Скорее для меня мистика как вообще мог логотип попать на экран. Потом еще больше недопонимания из за того, что моя конфигурации (для FAT32) и MVV для FLASH отличаются тем, что в режиме загрузки я к верхней памяти (отведенной под ROM) подключал все 4 окна а MVV только третье окно. Сейчас я сделал компромиссный вариант 0-1 окна во время работы загрузчика подключены к RAM а 2-3 к ROM. Если VBI пробовал разные конфигурации то это токо могло добавить уверенности в нестабильной работе.
Но он программист а не жестяншик так что это не его вина. Вообще с VBI всегда приятно общаться и он со своей стороны просил посмотреть что не так а я из за загруженности не находил время чтобы сесть и все проверить. В конце концов естественно ему непредскуазуемость железа надоела. Могу токо сказать что код не пропадет – это точно.
Даже то что он подтолкнул сделать загрузчик загрузчика – уже огромное ему спасибо.
Я сейчас сделал вот так
cpu_addr_ext <= "100" when (loader = '1' and (cpu_a_bus(15 downto 14) = "10" or cpu_a_bus(15 downto 14) = "11")) else csvrom & "00";
При таком варианте и FAT32 загрузчик работает и MVV(FLASH) и VBI c логотипом.
Я все грузил через RS232 и все запускались. Больше сотни раз грузил различные варианты загрузчиков через RS232 на скорости 115200 – проблем не заметил. Зато в отладке здорово помогло – от момента начала компиляции загрузчика до его запуска на U16 обычно проходит минута в лучшем случае.
В общем, подвожу итог на основании моего опыта и 5 собранных плат. U16 применительно к TS-Conf работала стабильно. Я не заметил каких-либо проблем, связанных с разводкой печатной платы. Все что касается каких то багов то это скорее всего от недостатка информации. VBI еще раз большое спасибо за код загрузчика. Во всяком случае я его использую для конечного варианта только цвет экрана поменяю на черный.
Attachments
VBI Loader.JPG
2014_11_06 VBI Loader.RAR
(8.17 KiB) Downloaded 295 times
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby VBI » Thu, 06.11.2014 12:53:03

dsp...
у меня нет слов.
щас заплАчу :)
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby dsp » Thu, 06.11.2014 13:01:07

:beer:
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby VBI » Thu, 06.11.2014 13:07:31

dsp, :beer: !
не пропадай :ura:
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

Postby MVV » Thu, 06.11.2014 13:32:42

По поводу исходников, все новые версии в первом сообщении темы. На данный момент последняя v0.2.9 (20141102). Исходники соответственно там и по ссылке в репозитарии. Было бы неплохо, если уважаемый dsp создал бы аккаунт для репозитария. Так проще было-бы отслеживать изменения в проекте, да и в целом вести совместную над ним работу :)
Отсутствие информации по данной конфигурации, как оказалось, большой минус и проблема. Тут VLB можно понять. Я не мастер пера, чтобы на понятном для всех языке рассказать и показать всё на пальцах. Да и наличие талмуда, скорей всего отпугивало бы желающих своим объемом :) Как ни крути, на всё нужно время, опыт и тяга к знаниям, т.е. способность самостоятельно разобраться в проблеме и задать соответственно если есть вопросы по сути.

В v0.2.9 ядро tv80 было заменено на t80s из проекта Speccy2010, проблем с работой программ, мультиколора уже не наблюдается, кроме Rubicon. Ну это скорее вопрос к VBI.

Нужна помощь в допиливании передачи звука по HDMI. Несколько видео режимов вносят сложность в формирование audio пакетов в CTL и Data Island периодах, т.к. для их формирования нужна привязка к TMDS клоку.
Также сейчас занимаюсь SoCZ80 на U16. Вывод на терминал и чтение ROM из SPI FLASH 8MB это хорошо, но вывод на HDMI графического/текстового режима и чтение ROM из SD, Ethernet, USB Host ещё было-бы лучше :) Не знаю почему, но интерес у меня к этой системе с каждым днем всё больше :)
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby VBI » Thu, 06.11.2014 13:46:42

MVV, "способность самостоятельно разобраться в проблеме и задать соответственно если есть вопросы по сути"
http://www.zx.kaniv.net/Rubicon.zip - исходники внутри, вместе с демой.
User avatar
VBI
 
Posts: 1965
Joined: Mon, 03.06.2013 09:20:29

PreviousNext

Return to Hardware

Who is online

Users browsing this forum: No registered users and 1 guest

x