Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Unsorted (http://zx-pk.ru/forumdisplay.php?f=13)
-   -   ZX-MMC контроллер (http://zx-pk.ru/showthread.php?t=4146)

Orionsoft 14th November 2006 06:38

ZX-MMC контроллер
 
ZX_MMC http://www.zxbada.bbk.org/zxmmc/

судя по описанию представляет собой аппаратный котроллер SPI
под спековские порты

кому нибудь удалось скачать схему этого устройства ?
а то у меня выдаёт черный квадрат заместо картинки или говорит - формат нераспознан.

вопрос к гуру по cpld - если такую штуку делать , т0 в какой минимальный xilinx оно войдёт ? или можно перекопмпилировать
програму например под альтеру ?

caro 14th November 2006 09:36

Quote:

Originally Posted by Orionsoft
ZX_MMC http://www.zxbada.bbk.org/zxmmc/

судя по описанию представляет собой аппаратный котроллер SPI
под спековские порты

Не только SPI:
Code:

TXREG          equ $0F                ; регистр передатчика RS232
RXREG          equ $0F                ; регистр приемника RS232
KEMPSTON        equ $1F
STATUS          equ $2F                ; регистр состояния SPI
NMIREG                equ $2F                ; регистр готовности --> NMI Z80
SPI_PORT        equ $3F              ; порт данных SPI
OUT_PORT        equ $1F                ; порт выборки CS control (D0)

Quote:

Originally Posted by Orionsoft
кому нибудь удалось скачать схему этого устройства ?
а то у меня выдаёт черный квадрат заместо картинки или говорит - формат нераспознан.

вопрос к гуру по cpld - если такую штуку делать , т0 в какой минимальный xilinx оно войдёт ? или можно перекопмпилировать
програму например под альтеру ?

У меня скачалось все без проблем.
Устройство сделано на CPLD Xilinx XC9572XL-VQ44 (72 макроячейки).
Переделывать под Alterу можно, но какой смысл, ведь автор выложил все
что нужно для повторения устройства вплоть до исходника прошивки и трассировки печатной платы.

Mikka_A 14th November 2006 10:56

Quote:

Originally Posted by caro

У меня скачалось все без проблем.

у меня скачалось,но не открывается...непонятно,кстати,почему.

Камиль - можешь мне мылом схемку кинуть?

Quote:

Originally Posted by caro

Устройство сделано на CPLD Xilinx XC9572XL-VQ44 (72 макроячейки).

а чем оно шьестся ( из общедоступного )?

ЗЫ.Посмотрел по лавкам - плиска есть только в одной лавке в питере,да и то под заказ.

10$ примерно по цене....

caro 14th November 2006 11:18

Quote:

Originally Posted by Mikka_A
у меня скачалось,но не открывается...непонятно,кстати,почему.

Формат - JPEG old on TIFF.
Надеюсь автор не обидится, сконвертировал в PNG.

icebear 14th November 2006 12:26

Quote:

Originally Posted by Mikka_A
10$ примерно по цене....

Дешевле должна быть. Смотри другие скорости и корпуса. Этот камень кстати и в PLCC есть.

caro 14th November 2006 12:29

Quote:

Originally Posted by icebear
Дешевле должна быть. Смотри другие скорости и корпуса. Этот камень кстати и в PLCC есть.

Используется 10 нсек. кристал.
По efind.ru цена колеблется от 3 до 12$

fan 7th February 2007 01:16

Созрел вопрос отчасти по сабжу - ктонить может сказать какие таки чудо возможности спека +3 использует ResiDOS что была заточена только под него ???

А сам васик +3 насколько сильно отличается от васика 128 (по коду прошивки) ???

caro 7th February 2007 09:54

Quote:

Originally Posted by fan
Созрел вопрос отчасти по сабжу - ктонить может сказать какие таки чудо возможности спека +3 использует ResiDOS что была заточена только под него ???

Главное отличие +3 от остальных моделей возможность отключения ПЗУ
и работа со всем адресным пространством Z80 в режиме чтения/записи.
Плюс встроенная дисковая подсистема ввода/вывода.

fan 7th February 2007 12:43

Quote:

Originally Posted by caro
Главное отличие +3 от остальных моделей возможность отключения ПЗУ
и работа со всем адресным пространством Z80 в режиме чтения/записи.

Мда , этот момент я упустил %(
Ещё один хороший повод устандартить и узаконить порт/бит на подтыкание RAM вместо ПЗУ .

А "хитрое" подтыкание страничек ResiDOS не использует ??? (чёто я не вижу описание этого момента, наверное опять не туда смотрю %) )

Quote:

Originally Posted by caro
Плюс встроенная дисковая подсистема ввода/вывода.

Т.е. та что в ПЗУ ?

(Кстати если кому интересно - на +2A эта штука то же должна пахать после замены ПЗУшек (http://www.worldofspectrum.org/zxplus3e/p3eroms.html)).

Quote:

Originally Posted by caro
SP3plus.zip

"Сделай сам" & MOA Spectrum +3
Ого , такой брошурки у меня в коллекции нет , 10X !

fan 14th July 2007 17:11

Тут у меня вспонтанно вопрос по сабжу возник - чем таким полезным занимается "bus_cnt" ??? (торчит в начале процесса , там где запись в порты).

И вопрос скорее из оперы VHDL - что будет если к bus_cnt(1 downto 0) равный "11" прибавить ещё единицу ? Обнулится или останется "11" ?

ILoveSpeccy 14th July 2007 17:56

Quote:

Originally Posted by caro (Post 64743)
автор выложил все
что нужно для повторения устройства вплоть до исходника прошивки и трассировки печатной платы.

Чтото я исходников не нашел :( Только JED-файлы.
Дайте кто нибудь если есть....

fan 15th July 2007 05:33

1 Attachment(s)
Шиздец... Я спрашиваю о том чего уже нет , пересэтэ...
Даже с основного сайта все сырки поубирал... Злобный партизанен :D

Собсно вот (в аттаче) , там только сырок , ибо весь проэкт состоящий из мусора в запакованном виде занимает аж полтара мега...
Если кому нужен фаил с распиновкой чипа , то скажите какое у него расширение , а то файлов где торчит распиновка просто дофигища .

Чуть не забыл - в файле залочена всякая там билиберда вроде RS232/кемпстона и оставлен SPI . Но это не значит что компилироваться будет только под SPI , чтоб было только под SPI нужно либо закоментировать , либо прибить всё лишнее , иначе только ячейки зря отжираться будут .
Как разлочить RS232 и прочее ниписано внутри файла .

Старая описака -
The project fits into a Xilinx's XC9572XL 3.3V cpld, 5V tolerant. This component is well suited for interfacing the 5V ZX-Spectrum logic to 3.3V sd/mmc card logic. The picture above shows the cpld in VQ44 package, which is used in the project.

After programming through the JTAG header, the CPLD will work as an SPI device on I/O port $3F.

The 115K2baud RS-232, NMI handling and Kempston Joystick ports, who are present in the zx-badaloc version, are disabled by default in order to avoid conflicts with existing hardware. These features can be easily enabled by programming the alternate JEDEC file.

Port List for the STANDARD version:

$1F: WR = 2 bit chip select register (D0 = MMC0; D1 = MMC1), active LOW
$3F: WR = SPI TX register; RD = SPI RX register (8 bit)


Port List for the FULL version:

$0F: WR = RS-232 TX register; RD = RS-232 receive register (8 bit)
$1F: RD = KEMPSTON PORT (5 bit, '1' = input active); WR = 2 bit chip select register (D0 = MMC0; D1 = MMC1), active LOW
$2F: WR = D0: 0 = NMI disabled; 1 = enabled. RD = read RS232 status (4 bit)
$3F: WR = SPI TX register; RD = SPI RX register (8 bit)
STATUS REGISTER ($2F):
D0: 0 = receiver empty; 1 = receiver has data
D1: 0 = no error; 1 = overrun
D2: 0 = no error; 1 = framing error
D3: 0 = transmitter idle (ready); 1 = transmitter full


Further details can be found in the VHDL source code. Please note that the SPI-only version still has WRITE ENABLED on all ports. This means that a byte written to port $0F will be sent through the rs-232 TX pin in all versions. READING is disabled on all ports but $3F. Chip selects control is then assured by writing to port $1F in all versions (D0 = MMC0, D1 = MMC1). Internal CPLD logic avoids simultaneous chip select activation: in case "00" is written to this register: MMC0 takes over (MMC1 chip select will be forced HIGH). Both chip selects are in HIGH (inactive) state at power-on.

When the processor reads one of the above I/O ports for the full version, or the SPI port for the standard version, the corresponding data is placed on databus.

When the processor writes to one of the above I/O ports, then the CPLD starts an internal counter that latches databus status into proper internal register on the falling edge of T3 cycle, which is right in the middle of the write operation. Since IORQ and WR are issued on the rising edge of main clock (on T2), the internal logic (counter and latches) works on falling edge in order to guarantee reliability in the count process.

This diagram shows a write cycle to port $3F, which is the SPI OUT register. For debug purposes, a "capture" signal has been configured on the CS1 pin (unused), that goes high when data is latched (which happens on the falling edge of T3 cycle, as stated above). The diagram also shows how the byte is transferred to the SD.MMC card in the following 16T-states (SPI CLOCK is toggled on each Z80 T-state). The byte written to port $3F was "$55".

ILoveSpeccy 15th July 2007 16:51

На ZXMMC странице стоит
Quote:

it works on any spectrum including 16/48K machines, but there are physical clearance problems
Как это понимать???
Просто я хотел сегодня попробовать прикрутить сей
девайс к моей машине (стандартный 128K).
13 пинов на матрице свободно и ячеек около 2 десятков...

Добавлено через 19 минут
Quote:

Originally Posted by fan (Post 94895)
Если кому нужен фаил с распиновкой чипа , то скажите какое у него расширение , а то файлов где торчит распиновка просто дофигища

Это файл с расширением .ucf
Выложи плиз для полного комплекта, а то непонятно, для чего OUT1_reg.
Или раньше схема другая была??? Если да, может сохранилась??

Добавлено через 40 минут
Quote:

Originally Posted by fan (Post 94866)
И вопрос скорее из оперы VHDL - что будет если к bus_cnt(1 downto 0) равный "11" прибавить ещё единицу ? Обнулится или останется "11" ?

Обнулится...

fan 15th July 2007 20:25

1 Attachment(s)
Quote:

Originally Posted by ILoveSpeccy (Post 94936)
Это файл с расширением .ucf

Окей , кидаюсь . Схема наверное такая же . Просто сам проэк был выдран этим же чуваком из другова проэкта (www.zxbada.bbk.org), вероятно поэтому такие шаманские названия . OUT1_reg всеголишь выбор одной из двух карточек .

-- Названия сигналов и номера пинов .
-- GND ---------------- CN4 Pin1 RS232
-- dtr - P41 CN4 Pin2 RS232 (status_register(0))
-- tx_pin - P44 CN4 Pin3 RS232
-- rx_pin - P1 CN4 Pin4 RS232

-- GND ---------------- CN4 Pin3
-- kempston<0> - P38
-- kempston<1> - P39
-- kempston<2> - P40
-- kempston<3> - P42
-- kempston<4> - P2

-- OUT1_reg<0> - P33 CS0 (CS MMC) выбор первой карточки
-- OUT1_reg<1> - P3 PAD1 выбор второй карточки
-- spi_clock - P34 MMC CLK
-- spi_datain - P37 MMC IN (->OUT)
-- spi_dataout - P36 MMC OUT (->IN) -- подаём на IN SD/MMC карточки .

-- clock - P43 Z80 CLK
-- address<0> - P18
-- address<1> - P20
-- address<2> - P22
-- address<3> - P27
-- address<4> - P29
-- address<5> - P30
-- address<6> - P31
-- address<7> - P32
-- z80_databus<0> - P13
-- z80_databus<1> - P12
-- z80_databus<2> - P16
-- z80_databus<3> - P23
-- z80_databus<4> - P28
-- z80_databus<5> - P21
-- z80_databus<6> - P19
-- z80_databus<7> - P14
-- z80_iorq - P6
-- z80_nmi - P5
-- z80_rd - P7
-- z80_wr - P8

Quote:

Originally Posted by ILoveSpeccy (Post 94936)
Как это понимать???
Просто я хотел сегодня попробовать прикрутить сей
девайс к моей машине (стандартный 128K).
13 пинов на матрице свободно и ячеек около 2 десятков...

Ну как железяка работать то будет , а вот шёб засунуть дамп нужно ещё прогу в мозгах держать . Я так понимаю RisiDOS как раз и юзает нулевую банку для хранения всего необходимого для рулёжки карточкой .
Короче нужно дорулить спек до +3 , два десятка ечеек должно вполне хватить .
Хотя там должен быть малюсенький програмуль и видео ролик демонстрирующий загрузку какойто фигни на спеке 48к (покрайней мере раньше был).

Sonic 16th July 2007 10:49

Quote:

Originally Posted by ILoveSpeccy (Post 94936)
Как это понимать???

Это понимать так, что платка физически плохо встает в машину отличную от +3 - то клавиатурному кабелю мешается то еще чему-то...
Наших клонов, разумеется, данное замечание вообще не касается.

Добавлено через 2 минуты
Quote:

Originally Posted by fan (Post 76939)
А сам васик +3 насколько сильно отличается от васика 128 (по коду прошивки) ???

Очень сильно. Во-первых он занимает 32 кб (две страницы ROM). Во-вторых, он умеет работать с +3DOS (LOAD, SAVE и прочие нативно понимают дисковод). В-третьих, отсутствует поддержка кейпада.


All times are GMT +4. The time now is 15:43.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.