TS-Conf на ReVerSE-U16

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

Postby MVV » Sun, 20.07.2014 16:57:29

Скрепил три проекта, для U9, U8 и TWARM. Делаю порт для U16. Если и на U16 с 16bit SDRAM не заработает, то хз зачем весь этот хлам на новом железе )...
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Sun, 20.07.2014 17:05:50

Хаха ) А что должно работать на новом железе? :)
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Sun, 20.07.2014 17:11:10

А сам как думаешь? )
TS-Labs, без твоего участия как ведущего разработчика сей конфы, тут никак ) А то займусь новым железом...
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Sun, 20.07.2014 17:18:57

Так что конкретно от меня требуется?
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Sun, 20.07.2014 17:24:51

TS-Labs wrote:Так что конкретно от меня требуется?

Я до этого вопроса все ещё сомневался, правда это или...
Last edited by MVV on Sun, 20.07.2014 17:25:44, edited 1 time in total.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Sun, 20.07.2014 17:25:42

Что?
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Sun, 20.07.2014 17:26:27

Или нет?
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Sun, 20.07.2014 17:32:08

MVV wrote:Пока TSL занят мечтами о вечном
решил столько не ждать, и перенести TS-Conf "в лоб" на U8.

Я прямо сейчас не имею возможности заняться портированием. В силу безумной занятости. Я написал - когда сяду за рефакторинг, сделаю все по-человечески (контроллеры, кеши и тд). Поэтому, портировать сейчас я не буду. Дебажить тапом, почему не работает сдрам я тоже не буду. Равно, как и разгребать сорцы, чтоб понять что не так. Но могу ответить на какие-то конкретные вопросы по конфе. Был бы очень благодарен, если бы портировали модули с б-гмерзкаго вхдля на нормальный сисверилог...
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby dsp » Sun, 20.07.2014 19:54:14

Хлам всегда нужен для опыта, тем более что это не бизнес проект что сроки поджимают, это я как понимаю для удовольствия ))). А если серьезно, то не вижу повода для беспокойства. MVV, конечно не надо тратить время на то, чтобы сейчас разбираться, что не так (тем более что если нет желания и есть более интересные вещи –как то новое железо) Я ценю твое время и не думаю, что это хорошая идея тебе разбираться с этим. Я буду потихоньку это делать. Если будешь просто тестировать мой хлам – то буду признателен. Типа да запустилось или нет. Обещаю сильно не беспокоить. У меня нет Cyclone III, но думаю приобрести. Мы пока на это два дня потратили, это вообще не срок для меня. У меня тоже не просто так за неделю внезапно получилось (типа хз, работает и все, как то скрестил.). Тем более что запускал на двух разных Dev board. Все работало. Есть еще DE-1 (Cyclone II), на ней попробую тоже.
Для примера ZET вроде на DE-1 давно портировали, но я потратил много времени, так как загрузчик не работал правильно или SRAM от ISSI – тоже никогда не думал, что нормально не будет работать, если все время CS на земле будет сидеть.
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby dsp » Sun, 20.07.2014 19:55:07

Мне пришла такая вот глупая идея скрестить ReVerSE c TS-Config уже давно.
Не секрет что ReVerSE железо более прогрессивное код пусть и VHDL но вполне понятен и читаем (да и портировать можно, ведь дело в читаемости а не на чем написано, даже есть конвертор xhdl3.2.52_windows.exe, но я им не разу и не пользовался). Контроллер SDRAM для ReVerSE–понятнее и проще кода не видел вообще.TS-Conf – тоже код вполне разобрать можно, да и софт и эмулятор FDD не за один день и не одним человеком делались. То есть тот опыт, который уже накоплен на железе PenEVO и само железо – само собой просится новое железо, но я любитель здесь и хочеЦЦа попроще и малой кровью сделать пусть и в лоб и топорно – НО мне для начала достаточно. Главное что как можно быстрее получить результат. Вот пришла идея сместить циклы, попробовал – не сразу получилось, заработало на Cyclone IV. Вот попробовали на Cyclone III, не пошло сразу. Так тоже бывает. По сравнению с тем, сколько я на это время потратил то купить DEV BOARD на Cyclone III и попытаться его запустить – это капля в море. Даже если и не пойдет по какой-то причине (и такое тоже бывает) то я не сильно расстроюсь, но опыт приобрету. Да и c хорошими людьми всегда приятно пообщаться.
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby MVV » Sun, 20.07.2014 21:44:08

TS-Labs, без проблем. Я конфигурацию пока слабо изучил, поэтому и надеялся на твою синхронную помощь в тестировании, т.к. у dsp нет платы ReVerSE. Будет время присоединяйся.
Для слаженной работы над конфигурацией, у меня нет ни DE1 ни WARM. Если dsp не против, могу предложить то что есть - свою вторую плату U8 и U16. В любое время, если надоест, можешь отправить назад. Так дело пойдет веселей и интересней.
Я сейчас не слабо завис над U16, потихоньку разбираюсь с обвеской. На примерах отладил работу HDMI и VNC2 на очереди ENC424. На днях сделал первую конфигурацию для U16 ZX-Spectrum 48K. Пару дней ушло на подключение USB HID клавиатуры. Хочу разобраться с передачей звука по HDMI и сделать второй конфиг ZX-Spectrum 128K подключив ещё SDRAM, DivMMC... Spectranet ) Продолжить портирование Zet, доработать loader и модуль SPI для загрузки BIOS со SPI FLASH.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby dsp » Mon, 21.07.2014 03:36:51

MVV - спасибо за платы, назад я их конечно отправлять не буду, поэтому куплю с удовольствием и U8 и U16.
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby dnik75 » Mon, 21.07.2014 07:15:43

Люди добрые - кто может спаять, продать u16?
Если что-то хочкшь сделать хорошо, сделай это сам :D
User avatar
dnik75
 
Posts: 171
Joined: Fri, 04.07.2014 19:41:26

Postby MVV » Mon, 21.07.2014 09:33:33

dnik75 wrote:Люди добрые - кто может спаять, продать u16?

Спаять не проблема, было бы с чего... Печатных плат U16 валом у perestoronin и zorel. В связи с обстановкой в стране, производством плат не занимался. У perestoronin, для разработчиков конфигураций, печатные платы были бесплатно.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Mon, 21.07.2014 10:54:52

dsp wrote:Если будешь просто тестировать мой хлам – то буду признателен.

Я при возможности гляну, что там творится в сигналах.Но я еще раз говорю: без переделки арбитра ничего не выйдет. Я уже это проходил. Передвинуть сигналы на такт - не поможет. Нужно основательно вникать в логику и рефакторить.
dsp wrote:даже есть конвертор xhdl3.2.52_windows.exe,

Он конвертит говнокод. После него нужно вычитывать и сравнивать логику.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby dsp » Mon, 21.07.2014 21:00:49

По такому случаю приобрел DE0 (Cyclone III) от Terasic. Портировал TS-Conf (поменял только адресацию SDRAM, так как всего 8MB). Запустил SDRAM на 16bit DATA (ВСЕ РАБОТАЕТ), 8 битный не могу влоб проверить так как тогда получится всего 4MB RAM а на ROM уже нет места. Разве что FLASH использовать, но лучше я подготовлю тесты (типа шаг за шагом от простого к сложному). Портирование (потратил день, хоть и всего ничего поменял в коде) привело к мысли что надо больше информации подготовить а не просто просить тестирвать. Короче сейчас перерыв. Почему не пошло сразу на U8, U9 - может специфика разводки PCB или банально - человеческий фактор. Нет документации от меня - основная причина я так думаю. Повторю - я потратил день из за того что SDRAM на меньшую память и я уже сам забыл как с адресами дела обстоят. Хотя в результате поменял всего пару строк в коде.
Attachments
TS_Conf (DE0 -TeraSic).RAR
(384.96 KiB) Downloaded 364 times
DE0_Release.pdf
(339.7 KiB) Downloaded 362 times
DE0.JPG
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby dsp » Tue, 22.07.2014 05:37:41

Чтобы было понятно самому себе ).
1. В PentEvo(Ts-Conf) доступ Z80 к DRAM осуществляется через ARBITER который принимает решение, кому предоставить доступ к памяти. Другие устройcтва, если выставили запрос на обращение к DRAM - ждут.
2. Рассмотрим операцию чтения. Z80 выставляет запрос на чтение (допустим, что к памяти больше никто не обращается кроме Z80). Время на эту операцию состоит из двух промежутков (не обязательно одинаковых): 1- принятие решения ARBITER кто будет следующим обращаться к памяти (next); 2- само обращение к памяти SDRAM (current).
3. Время (current) обращения к памяти DRAM у железа PentEvo занимает один период частоты 7 MHz (4 такта с частотой 28MHz: c0,c1,c2, c3) и не может быть меньше. Переход от next к current всегда по положительному фронту сигнала с0. Если Z80 работает на частоте 14 MHz, то вводятся такты ожидания. Будем рассматривать работу Z80 на частоте 7 MHz.
4. В процессоре PentEvo время активного состояния сигнала чтения Z80 занимает больше одного такта частоты zclk. Зеленая область на рисунке отведена для ARBITER (next), а синяя - для обращения и чтения даныx из DRAM (current).
5. В процессоре, реализованном на VHDL (Verilog) сигнал чтения активен только в синей области.
6. Что делать, пока нет новой конфигурации от TS-Labs для решения данной проблемы?
7. Есть простая идея поделить синюю область между ARBITER и SDRAM. Такое возможно, так как для SDRAM для чтения вовсе не обязательно время в один период от частоты 7 MHz. Поделить время во время активного сигнала чтения Z80 означает сдвинуть цикл Z80 относительно 4 тактов с частотой 28MHz: c0,c1,c2,с3 которые будем считать привязаны к работе SDRAM (переход от next к current по положительному фронту с0).
8. Теперь следующий вопросc – в какой пропорции делить время одного цикла (синяя область на рисунке) между next-current. Я поделил (без всяких обоснований) как 1.5 – 2.5 (единичка – период частоты 28 Mhz). Что имеем в имеющейся реализации (DevBoard) данной бредовой идеи перенести TS-Conf для z80 (в имеющейся версии) на FPGA.
Испытывал на трех DevBoard от разичных компаний Terasic, ZR-Tech и http://www.heijin.org – не удосужился даже посмотреть что за компания, поэтому просто назвал TWARM (это скорее название магазина, в котором я покупал через интернет эту плату - DB4CE15)
- DE0: Cyclone III + SDRAM (84MHz, 16bit) - запустилось
- ZR-Tech: Cyclone IV + SDRAM (84MHz, 16bit) - запустилось
- TWARM: Cyclone IV + SDRAM (84MHz, 16bit) - запустилось.
Вроде как 2.5 периода от 28MHz хватает для чтения SDRAM 16bit, но при удлинении на один период 84MHz для реализации чтения 8bit на U8, U9 – не пошло. В тоже время для TWARM – запустилось. Скорее всего, 2.5 периода от 28MHz для чтения SDRAM 8bit (в текущей реализации) – критическое время.
9. Итого:
- сама идея адаптации TS-Conf для z80 (в имеющейся версии) на FPGA путем сдвига циклов SDRAM и z80 является жизнеспособной и я без проблем (пока не обнаружил во всяком случае) использовал для трех DevBoard для SDRAM 16bit.
- адаптация для SDRAM 8bit существует пару дней и я мало ее запускал, поэтому надо больше времени чтобы сказать что то больше.
10. Что дальше
Буду смотреть в сторону SDRAM 8bit
Делать тесты для SDRAM и менять соотношение next-current.
11. В скором будущем TS-Labs порадует нас новой конфигурацией, где этих проблем не будет. Так стоит ли на это тратить время? Если интересен сам процесс – то почему нет. Я всегда был сторонником делать (пусть и топорно), а не ждать. Спасибо MVV, что согласился протестировать мою адаптацию на U8, U9. С утра на свежую голову я склоняюсь к мысли, что проблема в критичности времени для SDRAM 8bit (в текущей реализации конфигурации).
Attachments
Z80_rd.JPG
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby MVV » Tue, 22.07.2014 11:08:36

dsp, да не парься ты опусами и не трать время на TSConf, все в руках её автора. Появится у него время и желание портировать, портирует. Нужна будет помощь, поможем. А так, конфигурация эта пока одна - как бы в "себе".
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Tue, 22.07.2014 11:14:45

Влад, да не трать ты время, портируй новое железо, сотни его.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby dsp » Tue, 22.07.2014 12:59:31

Это последний опус )))
Написал три теста для тестирования SDRAM (IS42S16400.pdf) DE0 (скорее скомбинировал из модулей MVV и TS-Labs). ROM test находится в памяти Cyclone. Надо только монитор подключить (31Hz). Все три теста проходят и с разной конфигурацией SDRAM.

DE0_STEP_1 (14Mhz).rar – это чисто ReVerSE. Нужен для проверки работает ли вообще или нет.
DE0_STEP_2 (7MHz).rar – сделана синхронизация для переделки на TS-Conf, но SDRAM блок от первого теста.
DE0_STEP_3(7MHz).rar – SDRAM модуль точно как в TWARM или в конечном проекте DE0 для TS-Conf. В папке DE0_STEP_3 (7Mhz).rar\core\sdram\ находятся три директории
Для 16bit, 8bit, 8bit DQM-GND.

Все тесты проходят. на картинке для BURST - Ch-1 -c0, Ch2-zclk, Ch3 -dram_req, Ch4-время активного преиода SDRAM. Видно что два байта считываются то завершения цикла чтения z80.
Attachments
7 c0 zclk dram_req dram_stb.png
DE0_STEP_3 (7Mhz).rar
(245.6 KiB) Downloaded 312 times
DE0_STEP_2 (7MHz).rar
(244.97 KiB) Downloaded 277 times
DE0_STEP_1 (14Mhz).rar
(241.73 KiB) Downloaded 321 times
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby Sergey78 » Tue, 22.07.2014 13:36:15

dsp wrote:Написал три теста для тестирования SDRAM (IS42S16400.pdf) DE0

На DE0 разве IS42S16400 стоит? Такая на DE1.
Sergey78
 
Posts: 422
Joined: Wed, 05.09.2012 20:04:40

Postby MVV » Tue, 22.07.2014 14:42:08

TS-Labs wrote:да не трать ты время, портируй новое железо, сотни его.

Спасибо за совет ) Да, действительно, это не стоит потраченного времени...
dsp wrote:Все три теста проходят и с разной конфигурацией SDRAM.

Проверил, все тесты работают. Набросал времянки чтения.
Attachments
read2.jpg
20140722_143116.jpg
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby dsp » Wed, 23.07.2014 05:38:35

MVV, замечательно!!!!
После третьего шага у нас уже соотношение циклов CPU-SDRAM как у рабочего варианта TWARM для TS-Conf.
По фронту c0 - SDRAM контроллер проверяет есть ли команда чтения или записи, если есть то выполняет за 2.5 такта с0-c2(1/2) и потом ждет 1.5 такта новой команды (RFSH).
Attachments
Z80_SDRAM.JPG
Last edited by dsp on Wed, 23.07.2014 06:27:35, edited 1 time in total.
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby dsp » Wed, 23.07.2014 05:47:54

Sergey78, возможно у кого то другая, у меня вот такая SDRAM впаяна в DE0
Attachments
DE0_SDRAM.JPG
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

Postby dsp » Wed, 23.07.2014 08:12:10

Я со следующего вторника добавлю arbiter и остальные модули по частям
dsp
 
Posts: 127
Joined: Wed, 25.06.2014 05:53:32

PreviousNext

Return to Hardware

Who is online

Users browsing this forum: No registered users and 1 guest

x