User Tag List

Показано с 1 по 10 из 12

Тема: DRAM контроллер для 4164

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    13.08.2021
    Адрес
    г. Краснодар
    Сообщений
    10
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию DRAM контроллер для 4164

    Здрасьте друзья.
    После столетнего перерыва вернулся к железякам поколдовать.
    Захотелось чего-то большего и более современного, а ПИО более чем на 6 мегаГ не нашел, да и кучу регистров и логики нету сил паять, то закрутил я все это вокруг СПЛД Макс2.
    Забегая вперед, все равно пришлось кучу проводов паять для трасиверов 3.3<->5В.

    Запихнул в сплд логику и маленькое ПЗУ для кода (мапнул на 0-127 адреса).

    И тут дай, думаю, ради интереса я СРАМ на ДРАМ поменяю. Нашел 41464. Так, что получилось вот такая схемка.



    Ну слепил все как смог.



    Написал простой счетчик, где переменная каждый раз читается из памяти, инкрементируется и сохраняется обратно в память.
    Это, как бы, тест у меня такой для памяти.

    Код:
    P_OUT .equ 3h
    
    	.org 0h
    	
    	ld sp, 0fff0h
    	
    	; save initial counter value in RAM
    	ld hl, 3000h
    	ld (hl), 1h
    
    main:	
    	ld hl, 3000h
    	ld a, (hl)
    	out (P_OUT), a
    	inc a
    	ld (hl), a
    
    	ld de, 3FFFh	        ;Loads DE with 16383 ;MAX - 7FFFh 
    dly:
    	dec de                  ;Decrements DE
    	ld a, d                 ;Copies D into A
    	or e                    ;Bitwise OR of E with A (now, A = D | E)
    	jp nz, dly            	;Jumps back to Inner: label if A is not zero
    		
    	jp main
          
    	.END

    Натужился, занизил 20 мегаГ до 6, что бы пока с ~WAIT не путаться и написал конроллер памяти. Вот FSM.



    , протестил и..... не работает.
    Причем в тестах все круто выглядит и по таймингам и по форме.



    Тыкаюсь осцилом в RAS (красный) CAS (желтый) и чей-то вижу не то что-то. Похоже, вроде, но на инициализации (8 циклов CAS before RAS) RAS какой-то странный, а в M1 CAS кривится.
    Подумал может горелые выходы, поменял рас и кас местами - картина тоже поменялась, значит сплд в норме. Может осцилограф кривой?



    Вот уже месяц с перерывами голову ломаю - не выходит каменный цветок. Не фурычит.

    Подумал, может вообще все плохо, ан нет. Заменил для переменной память на регистр и все работает, считает.
    Значится дело в контроллере.

    Очень нужна помощь. На Вас, светлые головы нашего форума надеюсь и уповаю, ибо уже свои все мысли от напряги скисли. Если до ума доведу - сделаем это опенсорсным и подарим zx-pk и миру.

    Вот тут сорсы для icarusa:
    z80_dram.7z
    Последний раз редактировалось fromzero2infinity; 25.08.2023 в 18:46.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Тестер 4164 и 41256 на arduino
    от kolobokru в разделе Оборудование
    Ответов: 5
    Последнее: 18.02.2022, 23:22
  2. DRAM SDRAM DDR2/3/4/5
    от bigral в разделе Для начинающих
    Ответов: 17
    Последнее: 25.09.2020, 20:33
  3. Быстрые 41256/4164
    от LeoN65816 в разделе Память
    Ответов: 5
    Последнее: 15.03.2019, 11:52
  4. SRAM vs DRAM
    от Eugene Palenock (500:95/468.1) в разделе Память
    Ответов: 7
    Последнее: 03.10.2009, 18:26
  5. DRAM vs SRAM объясните разницу
    от DimkaM в разделе Для начинающих
    Ответов: 12
    Последнее: 03.05.2009, 12:18

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •