TS-Conf на ReVerSE-U8

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

Postby TS-Labs » Wed, 22.07.2015 00:43:54

Имеется у кого-нить рабочая?
Нашел в закромах: http://rghost.net/8VCy2Mfnj
Зашил - развертка на ВГА есть, экран черный, на клаву не реагирует.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Wed, 22.07.2015 09:03:42

Шей последнюю 0.2.8
Робусу привет.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Wed, 22.07.2015 14:03:20

Взял отсюда:
https://github.com/mvvproject/ReVerSE-U ... t_file.jic
Прошил. Черный экран.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Mon, 27.07.2015 17:37:33

Т.к. на U8 не формируется DQM (всегда 0), не подскажешь как обойтись без него? Пробовал BURST TERMINATE, почему-то не хочет работать. Это чтобы не паяться с DQM SDRAM.
Делал при записи так:
Code: Select all
            when "11100" =>               -- s1C
               case bsel_int is
                  when "00" =>
                     sdr_cmd <= SdrCmd_xx;
                     sdr_a <= "001" & address(8 downto 0) & '0'; --FIRST BYTE A(0) = 0
                     sdr_dq(7 downto 0) <= data_in(7 downto 0);
                  when "01" =>
                     sdr_cmd <= SdrCmd_wr;   -- WRITE (A10 = 1 enable auto precharge; A7..0 = column)
                     sdr_a <= "001" & address(8 downto 0) & '0'; --FIRST BYTE A(0) = 0
                     sdr_dq(7 downto 0) <= data_in(7 downto 0);
                  when "10" =>
                     sdr_cmd <= SdrCmd_wr;
                     sdr_a <= "001" & address(8 downto 0) & '1'; --FIRST BYTE A(0) = 1
                     sdr_dq(7 downto 0) <= data_in(15 downto 8);
                  when "11" =>
                     sdr_cmd <= SdrCmd_wr;
                     sdr_a <= "001" & address(8 downto 0) & '0'; --FIRST BYTE A(0) = 0
                     sdr_dq(7 downto 0) <= data_in(7 downto 0);
                  when others => null;
               end case;
               state <= "11101";         -- s1D
            when "11101" =>               -- s1D   
               sdr_dq(7 downto 0) <= data_in(15 downto 8);
               case bsel_int is
                  when "00" =>
                     sdr_cmd <= SdrCmd_xx;
                  when "01" =>
                     sdr_cmd <= SdrCmd_bt;
                  when "10" =>
                     sdr_cmd <= SdrCmd_bt;
                  when "11" =>
                     sdr_cmd <= SdrCmd_xx;
                  when others => null;
               end case;
               state <= "10111";         -- s17

https://github.com/mvvproject/ReVerSE-U ... /sdram.vhd
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Wed, 29.07.2015 12:49:47

Отключаешь авто-пречардж и делаешь закат солнца вручную: 1) активейт, 2) врайт (1 или 2 байта - в зависимости от того кто пишет проц или дма), 3) пречардж.
И да, перетащи контроллер на 133МГц - сэкономишь на длительности бурста.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Wed, 29.07.2015 13:13:55

Нужно будет попробовать, если не пойдет, то придется паять проводок. Да, и ещё, вопрос - можно ли втиснуть запрос от GS или DMA Sound, а то без цифры не весело как-то.
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Wed, 29.07.2015 13:33:08

Если буду заниматься конфой под реверс, то добавлю цифровой звук. На еве оно не добавлябельно.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby Sergey78 » Wed, 29.07.2015 14:50:39

А что, есть софты для конфы, использующие ГС?
Sergey78
 
Posts: 422
Joined: Wed, 05.09.2012 20:04:40

Postby MVV » Wed, 29.07.2015 19:32:01

Sergey78 wrote:А что, есть софты для конфы, использующие ГС?

Есть, очень классный Wild Commander. Вот бы для VS1053 плагинчик к нему ещё...
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby TS-Labs » Wed, 29.07.2015 20:06:48

MVV wrote:Вот бы для VS1053 плагинчик к нему ещё...

Где описание портов?
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Thu, 30.07.2015 00:22:18

TS-Labs wrote:Где описание портов?

Пример:
Code: Select all
; Тест проигрывания MP3 v0.0.1

; Port #xx04 Data Buffer (write/read)
; Port #xx05 Command/Status Register (write/read)

; Data Buffer (write/read):
;   bit 7-0   = Stores read/write data

; Command/Status Register (write):
;   bit 7   = XSC      0: активен
;   bit 6   = XDCS      0: активен
;   bit 5   = mode      0: режим SCI/SDI; 1: STREAM 32bit(левый канал + правый канал)
;   bit 4-0   = Reserved

; Command/Status Register (read):
;    bit 7   = BUSY      1: Занято, идет передача; 0: Свободно
;    bit 6   = DREQ      1: Запрос новых данных; 0: Занято
;   bit 5-0   = Reserved

   ORG #8000
        DI

; Отключение SYSTEM_AUDIO потока звука от AY, GS....

        LD A,%11000000
        OUT (#05),A

        CALL WAIT

        LD A,%01000000   ; SCI
        OUT (#05),A

        LD D,#02      ; Write
        CALL VS_RW
        LD D,#00      ; SCL_MODE
        CALL VS_RW
        LD D,#48      ; SM_LINE1 & SM_SDNEW & SM_RESET
        CALL VS_RW
        LD D,#04
        CALL VS_RW

        CALL WAIT
        CALL WAIT
        CALL WAIT

        LD A,%11000000
        OUT (#05),A

        CALL WAIT

        LD A,%00000000   ; SDI
        OUT (#05),A

        LD HL,#8100             ; Адрес MP3 файла "ROCKET"
        LD BC,18252             ; Длина MP3 файла "ROCKET"
        CALL VS_STREAM          ; Проиграть

        LD BC,2048
CLS     LD D,0
        CALL VS_RW
        DEC BC
        LD A,C
        OR B
        JR NZ,CLS

        LD A,%11000000
        OUT (#05),A

        CALL WAIT

        LD A,%00000000
        OUT (#05),A


        LD HL,TABLE
        LD BC,44
        CALL VS_STREAM


; Подключить SYSTEM_AUDIO поток для вывода звука от AY, GS...
        LD A,%00100000          ; XCS=0 XDCS=0
        OUT (#05),A
        RET

VS_STREAM
        LD D,(HL)
        CALL VS_RW              ; Передача в VS1053
        INC HL
        DEC BC
        LD A,B
        OR C
        JR NZ,VS_STREAM
        RET

VS_RW   IN A,(#05)
        OUT (#FE),A
        RLCA
        JR C,VS_RW
        RLCA
        JR NC,VS_RW
        LD A,D
        OUT (#04),A

VS_RW1  IN A,(#05)
        OUT (#FE),A
        RLCA
        JR C,VS_RW1
        RLCA
        JR NC,VS_RW1
        IN A,(#04)
        RET

WAIT    LD BC,0
LL0     DEC BC
        LD A,C
        OR B
        JR NZ,LL0
        RET

; Обычный заголовок PCM с безконечной длиной для SYSTEM_AUDIO
; См. мануал VS1053b стр.51 9.6 Feeding PCM data
TABLE   DB #52,#49,#46,#46,#FF,#FF,#FF,#FF      ; REFF....
        DB #57,#41,#56,#45,#66,#6D,#74,#20      ; WAVEfmt
        DB #10
        DB #00,#00,#00,#01,#00,#02,#00

        DB #80,#BB,#00,#00                      ; 48kHz
        DB #00,#EE,#02,#00

        DB #04,#00
        DB #10,#00
        DB #64,#61,#74,#61                      ; data
        DB #FF,#FF,#FF,#FF

http://zx-pk.ru/showpost.php?p=621709&postcount=897
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby MVV » Sun, 04.10.2015 22:49:59

Небольшое обновление TS-Conf для reverse u8

TS-Conf build 20151004
.доработан контроллер SDRAM (автор shurik-ua)

теперь проводочек который припаивали к выв.39 SDRAM можно отпаять и выв.39 посадить на землю - то есть вернуть в первоначальное положение )
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby Merlin2010 » Fri, 27.11.2015 23:44:00

Залил эту конфу в свой U8 - есть проблема с чтением ROM. Ни с одной из имеющихся SD карт (четыре штуки) не грузится ROMS/ZXEVO.ROM ( SD card, FAT32. Форматировал и с разбиением на разделы и без - все равно.
Файл в папке есть, но ядро или сразу пишет absent или зависает на загрузке Rom (F12 при этом перезапускает процесс заново но всё равно висит). Куда копать?
Эти же карточки отлично работают в других конфигурациях U8.
Merlin2010
 
Posts: 4
Joined: Wed, 20.11.2013 19:02:38

Postby MVV » Sun, 29.11.2015 23:07:30

Merlin2010 wrote:Залил эту конфу в свой U8 - есть проблема с чтением ROM.

Перепрошил ts-conf (build 20151004) для U8, описанную выше проблему не обнаружил (не удалось повторить), проверил на двух платах и парой SD (FAT32). Т.к. с момента сборки прошивки никто не отписался по этой проблеме, могу предложить, что проблема только у Вас одного. Копайте loader, добавив код проверки загрузки файла с SD... У меня имя папки и файла в нижнем регистре - "roms/zxevo.rom".
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Postby biyixuj » Sat, 05.12.2015 00:36:22

Прошивал, проблемы не наблюдаю.
User avatar
biyixuj
 
Posts: 5
Joined: Thu, 31.10.2013 17:28:51

Postby kasper » Sat, 09.04.2016 20:32:04

А у меня REVERSE U8 на ПЛИС с индексом I7N, конфигурация не заработала, проект менял под нее, ПЛЛ на grade 7 поставил... Проблема с SDRAM, если судить по начальному экрану, в 1 трети в каждом нечетном столбце не пишутся 1 в D2 и D4, во 2 трети D7 и D5((. SDRAM сдул, поставил новую - ситуация почти таже, правда единицы иногда пишутся. Куда смотреть кто бы подсказал? Не хочется сдувать I7N и ставить C8N.
kasper
 
Posts: 17
Joined: Sat, 09.04.2016 01:48:11

Postby TS-Labs » Sat, 09.04.2016 23:47:14

Хм... Почему я не удивлен?
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby TS-Labs » Sun, 10.04.2016 00:46:14

MVV, как ты там сделал эмуляцию 16-битного доступа? Я бы сделал бурст из 2-х адресов с маскированием записи.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby kasper » Sun, 10.04.2016 18:10:27

Так там и есть burst из 2 адресов. Почему именно 2 бита, и именно эти биты не успевают считаться или записаться на I7N при определенных адресах. А маскирование записи - имеется ввиду использование сигнала DQM?
kasper
 
Posts: 17
Joined: Sat, 09.04.2016 01:48:11

Postby kasper » Sun, 10.04.2016 18:11:10

А MVV куда то пропал, видно ему уже не интересно (((
kasper
 
Posts: 17
Joined: Sat, 09.04.2016 01:48:11

Postby TS-Labs » Sun, 10.04.2016 18:22:43

kasper wrote:А маскирование записи - имеется ввиду использование сигнала DQM?

Да.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby kasper » Sun, 10.04.2016 18:57:52

Стоп, у меня в исходнике
when "00011" | "01010" => -- s03 s0A
sdr_cmd <= SdrCmd_re; -- REFRESH
state <= state + 1;
when "10001" => -- s11
sdr_cmd <= SdrCmd_ms; -- LOAD MODE REGISTER
sdr_a <= "000" & "0" & "00" & "010" & "0" & "000"; -- BURST (2byte) read/write
state <= state + 1;

но это не burst, а последовательное чтение.
Придется наверное проводок паять на DQM. Версия контроллера от shurik_ua у меня не работает, а разобраться в чем дело не получается((
kasper
 
Posts: 17
Joined: Sat, 09.04.2016 01:48:11

Postby kasper » Sun, 10.04.2016 19:11:13

Там несколькими постами выше у merlina такая же проблема, скорее всего. Глюки SDRAM не попали на экран, и он их не заметил. А так как из ОЗУ читается чушь - получается зависание.
kasper
 
Posts: 17
Joined: Sat, 09.04.2016 01:48:11

Postby TS-Labs » Sun, 10.04.2016 20:07:58

Без DQM в принципе тоже можно реализовать, раз он не припаян.
Просто выбирать из 3 вариантов при записи:
- если пишем только по А0=0, то ставим адрес хххххх0, прерываем бурст после 1 байта,
- если пишем только по А0=1, то ставим адрес хххххх1, прерываем бурст после 1 байта,
- если пишем по 2 адресам, то ставим адрес хххххх0, бурст идет 2 байта.
Учитывая, что 16-битное обращение всегда по смежным адресам, риска перехода на другой ROW нет.
Должно работать, если по времянкам все в порядке.
User avatar
TS-Labs
 
Posts: 5398
Joined: Thu, 26.07.2012 01:29:56

Postby MVV » Sun, 10.04.2016 22:48:12

kasper wrote:Версия контроллера от shurik_ua у меня не работает, а разобраться в чем дело не получается((

Проверил на двух платах, работает. Что за память у тебя на плате? Попробуй проверить тестом во вложении...
Attachments
u8mt_20160410.zip
ReVerSE-U8 Memory Test
(58.04 KiB) Downloaded 844 times
MVV
 
Posts: 479
Joined: Sun, 01.12.2013 22:48:17

Next

Return to Hardware

Who is online

Users browsing this forum: No registered users and 1 guest

x