Autor Wątek: FDD3000 na świeżo  (Przeczytany 210273 razy)

pear

  • *****
  • Wiadomości: 5511
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: FDD3000 na świeżo
« Odpowiedź #135 dnia: 2016.01.21, 15:41:36 »
- 2xUART - zamiast oryginalnego WD2123, moja propozycja to 2xST16C550, chyba że ktoś zna inny łatwo dostępny, a najlepiej podwójny;
Z80SIO, DART...?
Miały być łatwo dostępne :) Z80SIO jest chyba w czterech wersjach i nie wiadomo na co się trafi.

Cytuj
Będzie trudno rozróżnić przed MREQ/IORQ co będzie adresował procesor.

Nie rozumiem. Masz sygnały IORQ i MREQ, w czym problem?
W timingach. MREQ pojawia się dopiero po wystawieniu adresu na szynie. Jeśli chciałbym użyć MREQ do adresowania rejestrów stron, to mogą pojawić się zbyt duże opóźnienia i błędy w adresowaniu.

Jeszcze odnośnie WD1772 i trybu HD - podwojenie zegara (z 8 na 16 MHz) to nie koniec atrakcji, jest problem w postaci skrócenia czasu skoku między ścieżkami (seek time). Jakiś atarowiec kiedyś opracował sprytny układzik, który wymusza bity w komendach, by zawsze był używany najdłuższy dostępny seek time. Warto pamiętać, że WD1772 ma te czasy już skrócone w stosunku do WD1770. Napędy 3,5 cala nie mają zwykle problemu (2 milisekundy im wystarczają), ale starsze napędy mogą dostać kociokwiku.
Spokojnie da się czytać dyskietkę przy 3ms. Przy podwojonym zegarze można ustawić dłuższy czas.
Poza tym ten tryb ma być do nowszych napędów HD przecież.
ZX/Enterprise/CPC/Robotron/C128D

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: FDD3000 na świeżo
« Odpowiedź #136 dnia: 2016.01.21, 17:16:57 »
Miały być łatwo dostępne :) Z80SIO jest chyba w czterech wersjach i nie wiadomo na co się trafi.

Można je jeszcze normalnie kupić, mogę poszukać.
DART chyba jest najciekawszy ;)
Albo jakiś jednoukładowiec, który ma UART-y na pokładzie?

Cytuj
W timingach. MREQ pojawia się dopiero po wystawieniu adresu na szynie. Jeśli chciałbym użyć MREQ do adresowania rejestrów stron, to mogą pojawić się zbyt duże opóźnienia i błędy w adresowaniu.

Nadal nie rozumiem. Logika adresów A16..Ann może (a nawet powinna) być całkowicie niezależna od MREQ. Przecież w rpzestrzeni I/O nie masz tych adresów. Linie A14 i A15 systemowe i "pamięciowe" powinny być odgrodzone logiką stronicowania, więc tu nic nie będzie przenikać.

Cytuj
Przy podwojonym zegarze można ustawić dłuższy czas.
Poza tym ten tryb ma być do nowszych napędów HD przecież.

Ale istniejące oprogramowanie (np. TOS V.A2) o tym nie będzie "wiedział". Polecana lektura:
http://www.exxoshost.co.uk/atari/last/floppy/index.htm

pear

  • *****
  • Wiadomości: 5511
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: FDD3000 na świeżo
« Odpowiedź #137 dnia: 2016.01.21, 17:49:28 »
Albo jakiś jednoukładowiec, który ma UART-y na pokładzie?
Rozważam tą opcję. Może być najtańsza i najprostsza w użyciu.
Jednocześnie może też załatwić SPI i USB.

Nadal nie rozumiem. Logika adresów A16..Ann może (a nawet powinna) być całkowicie niezależna od MREQ. Przecież w rpzestrzeni I/O nie masz tych adresów. Linie A14 i A15 systemowe i "pamięciowe" powinny być odgrodzone logiką stronicowania, więc tu nic nie będzie przenikać.
No właśnie linii A14 i A15 nie będziesz miał dostępnych wprost z procesora. Chyba, że wyprowadzić je osobno dla I/O ?

Ale istniejące oprogramowanie (np. TOS V.A2) o tym nie będzie "wiedział". Polecana lektura:
http://www.exxoshost.co.uk/atari/last/floppy/index.htm
Właśnie dlatego TOS V.A2 nie będzie sobie potrafił załączyć HD :) Przecież ma być kompatybilnie w dół, więc po co dyskietki HD w TOS V.A2, skoro i tak z nich nie skorzysta ?
ZX/Enterprise/CPC/Robotron/C128D

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: FDD3000 na świeżo
« Odpowiedź #138 dnia: 2016.01.21, 18:04:13 »
Rozważam tą opcję. Może być najtańsza i najprostsza w użyciu.
Jednocześnie może też załatwić SPI i USB.

Są jeszcze Z80 KIO i Z80 IPC, po umiarkowanych cenach.
No i Z80 SIO cały czas u Chińczyków można dostać :)
Ja bym w ogóle optował za eZ80, który ma wszystko w środku, łącznie z adresowaniem 4MB.

Cytuj
No właśnie linii A14 i A15 nie będziesz miał dostępnych wprost z procesora. Chyba, że wyprowadzić je osobno dla I/O ?

Nadal nie rozumiem. I/O "dotyka" A14 i A15 w sposób tradycyjny. Do pamięci te linie nie mają wjazdu, a jedynie do logiki stronicowania.
Pamiętam, że wysłałem Ci taki schemat w PDF kiedyś.

Cytuj
Właśnie dlatego TOS V.A2 nie będzie sobie potrafił załączyć HD :) Przecież ma być kompatybilnie w dół, więc po co dyskietki HD w TOS V.A2, skoro i tak z nich nie skorzysta ?

...i pierwszy lepszy kopier wszystko "skopie" ;)
Patent atarowca jest naprawdę użyteczny.

pear

  • *****
  • Wiadomości: 5511
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: FDD3000 na świeżo
« Odpowiedź #139 dnia: 2016.01.21, 18:13:30 »
No i Z80 SIO cały czas u Chińczyków można dostać :)
Ja bym w ogóle optował za eZ80, który ma wszystko w środku, łącznie z adresowaniem 4MB.
Z Chińczykami nigdy nie wiadomo co przyślą. Zaczynają coraz bardziej kombinować.
O tym eZ80 mało wiem. Muszę poczytać.

Nadal nie rozumiem. I/O "dotyka" A14 i A15 w sposób tradycyjny. Do pamięci te linie nie mają wjazdu, a jedynie do logiki stronicowania.
Pamiętam, że wysłałem Ci taki schemat w PDF kiedyś.
Znalazłem rozwiązanie. Adres dla pamięci można wystawiać na szynę sygnałem M1. Pojawia się przed MREQ, tylko przy adresowaniu pamięci.
Linie A14 i A15 będą sterowane z procesora dla I/O, a z rejestrów stronicowania przy adresowaniu pamięci.
Trzeba to jakoś rozdzielić, żeby procesor nie poszedł w maliny przy przełączaniu stron.

...i pierwszy lepszy kopier wszystko "skopie" ;)
Patent atarowca jest naprawdę użyteczny.
Dobra można zrobić jakieś zabezpieczenie. Co za uparty gość ;D
ZX/Enterprise/CPC/Robotron/C128D

nietoperz

  • ****
  • Wiadomości: 400
Odp: FDD3000 na świeżo
« Odpowiedź #140 dnia: 2016.01.21, 18:23:01 »
SIO bez problemu dostępne (Gembara, Sławmir) i zawsze wiadomo jaka wersja będzie. Problem będzie z dostępnością wersji 8MHz (zresztą dostać tanio oryginalny Z80 na 8MHz też problem, te z ebaya po $1.5 to malowanki, które rzadko kiedy pracują wyżej niż 6MHz mimo, że niby to wersja CMOS 20MHz). No i baudrate generator potrzebny.

CPLD jeżeli XL 3.3V to wyjścia OD i rezystory podciągające ale najlepiej użyć zwykłej 5V - kupowałem na ali i są oryginalne (ale tylko tqfp jest tanie, plcc ma chore ceny).

Polecam przemyśleć dobrze prowadzenie linii przerwań - dlatego najlepiej jak najwiecej z rodziny Z80 wykorzystać. Mam teraz płytkę Z80 + DMA + UART 16C450 + FDC WD37C65 i jest lipa obsłużyć wszystkie przerwania (FDC wystawia zawsze nINT, DMA kasuje linie przerwań po zobaczeniu RETI - jeżeli IEI jest 1). A miałem dać SIO ale szkoda mi było miejsca na dodatkowy generator - brak przerwania od FDC przeżyje (dzięki DMA, jest czas na sprawdzanie statusu w poolingu). A teraz jak mam wszystko poowijane to już pruć płytki nie będę.

A i SIO duży plus. Można podlaczyć klawiaturę lub mysz PS/2 do jednego z wejść :)

pear

  • *****
  • Wiadomości: 5511
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: FDD3000 na świeżo
« Odpowiedź #141 dnia: 2016.01.21, 18:34:27 »
Z eZ80 może być mały problem. Ma dwa tryby pracy: jeden kompatybilny z Z80 i drugi z liniowym adresowaniem 24-bity (16 MB przestrzeni adresowej).
W pierwszym trybie rejestry są 16-bitowe, a dodatkowe 8 bitów adresu wystawia się przez oddzielny rejestr.
Trochę kiepsko przekazać sterowanie do innej strony pamięci, jeśli strona jest wielkości całej przestrzeni adresowej.

W drugim trybie rejestry są 24-bitowe, więc kompletny brak kompatybilności z kodem Z80 (argumenty bezpośrednie mają 3 bajty zamiast dwóch).
ZX/Enterprise/CPC/Robotron/C128D

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: FDD3000 na świeżo
« Odpowiedź #142 dnia: 2016.01.21, 18:37:54 »
Z tego co pamiętam, eZ80 oferuje specjalny tryb adresowania większej pamięci w trybie zgodności z Z80. Poczytam o tym wieczorem.
Najtaniej chyba jednak wyjdzie jakiś PIC z wbudowanymi kanałami szeregowymi, zwłaszcza, że któryś miał fajny tryb pracy, emulujący port 8-bitowy. Czyli komunikacja z Z80 byłaby bardzo prosta.

pear

  • *****
  • Wiadomości: 5511
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: FDD3000 na świeżo
« Odpowiedź #143 dnia: 2016.01.21, 18:41:38 »
SIO bez problemu dostępne (Gembara, Sławmir) i zawsze wiadomo jaka wersja będzie. Problem będzie z dostępnością wersji 8MHz (zresztą dostać tanio oryginalny Z80 na 8MHz też problem, te z ebaya po $1.5 to malowanki, które rzadko kiedy pracują wyżej niż 6MHz mimo, że niby to wersja CMOS 20MHz). No i baudrate generator potrzebny.
Nie mówię nie, ale SIO ma 40 nóżek. To spory scalak, a płytka kosztuje od metra kwadratowego :)
Taniej może wyjść rzeczywiście jakiś 20 nóżkowy jednoukładowiec. Zajmuje 4-krotnie mniej miejsca (cały czas zakładam montaż THT).

CPLD jeżeli XL 3.3V to wyjścia OD i rezystory podciągające ale najlepiej użyć zwykłej 5V - kupowałem na ali i są oryginalne (ale tylko tqfp jest tanie, plcc ma chore ceny).
Wersje 5V trudniej dostać w dobrej cenie. Mam to przećwiczone :)
A wersje 3.3V spokojnie tolerują poziomy TTL 5V.
Drabinki rezystorowe nie zajmują dużo miejsca.

Polecam przemyśleć dobrze prowadzenie linii przerwań - dlatego najlepiej jak najwiecej z rodziny Z80 wykorzystać. Mam teraz płytkę Z80 + DMA + UART 16C450 + FDC WD37C65 i jest lipa obsłużyć wszystkie przerwania (FDC wystawia zawsze nINT, DMA kasuje linie przerwań po zobaczeniu RETI - jeżeli IEI jest 1). A miałem dać SIO ale szkoda mi było miejsca na dodatkowy generator - brak przerwania od FDC przeżyje (dzięki DMA, jest czas na sprawdzanie statusu w poolingu). A teraz jak mam wszystko poowijane to już pruć płytki nie będę.
Dlatego kontroler przerwań będzie na pewno wpisany w PLD.

A i SIO duży plus. Można podlaczyć klawiaturę lub mysz PS/2 do jednego z wejść :)
PS/2 to inny protokół niż ten w UART. Poza tym UART jest asynchroniczny, a PS/2 synchroniczny (zegar jest podawany z zewnętrznego urządzenia).
ZX/Enterprise/CPC/Robotron/C128D

pear

  • *****
  • Wiadomości: 5511
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: FDD3000 na świeżo
« Odpowiedź #144 dnia: 2016.01.21, 18:51:01 »
Z tego co pamiętam, eZ80 oferuje specjalny tryb adresowania większej pamięci w trybie zgodności z Z80. Poczytam o tym wieczorem.
No właśnie jest do bólu zgodny z Z80, a my chcemy więcej niż 64 KB pamięci.

Najtaniej chyba jednak wyjdzie jakiś PIC z wbudowanymi kanałami szeregowymi, zwłaszcza, że któryś miał fajny tryb pracy, emulujący port 8-bitowy. Czyli komunikacja z Z80 byłaby bardzo prosta.
Zrób mi, zrób mi, zrób mi :)
ZX/Enterprise/CPC/Robotron/C128D

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: FDD3000 na świeżo
« Odpowiedź #145 dnia: 2016.01.21, 18:57:41 »
No właśnie jest do bólu zgodny z Z80, a my chcemy więcej niż 64 KB pamięci.

Jest jakiś myk, że można przez RST przełączyć tryb, by sięgnąć do całej pamięci, a potem wrócić do trybu Z80.
Jak masz ściągnięty manual, to poszukaj MADL.

Cytuj
Zrób mi, zrób mi, zrób mi :)

Na PIC się niestety kompletnie nie znam - bo nie są one ani ze stajni Intela, ani Ziloga ;)

pear

  • *****
  • Wiadomości: 5511
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: FDD3000 na świeżo
« Odpowiedź #146 dnia: 2016.01.21, 19:11:59 »
Na PIC się niestety kompletnie nie znam - bo nie są one ani ze stajni Intela, ani Ziloga ;)
Czas się poznać, bo Microchip pochłonął Atmela.

A zaxon patrzy i się nic nie odzywa :)
Domyślam się co o tym projekcie myśli, więc poniżej dla ochłody wstępnie podsumowałem ile będą kosztować same części ;)

Z8020,00 złokoło
512 KB RAM40,00 zł
128 KB Flash ROM10,00 zł
PLD20,00 złod Chińczyka
FDC30,00 złjak wyżej
RTC15,00 złjak wyżej
UART/SPI (na PIC-u)15,00 złokoło
Płytka PCB50,00 złokoło
pozostała drobnica100,00 złlekko licząc
RAZEM:300,00 złminimum

To tak, żeby nie było później niedomówień i było wyobrażenie o skali życzeń :)
Zupełnie nie liczę czasu jaki trzeba na taki projekt poświęcić.
ZX/Enterprise/CPC/Robotron/C128D

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: FDD3000 na świeżo
« Odpowiedź #147 dnia: 2016.01.21, 19:13:14 »
Co to za RAM, że taki drogi???

pear

  • *****
  • Wiadomości: 5511
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: FDD3000 na świeżo
« Odpowiedź #148 dnia: 2016.01.21, 19:14:30 »
Nowa cena w TME. Przed świętami kupowałem po 25 zł  :o
ZX/Enterprise/CPC/Robotron/C128D

trojacek

  • *****
  • Wiadomości: 6846
  • Miejsce pobytu:
    Warszawa
Odp: FDD3000 na świeżo
« Odpowiedź #149 dnia: 2016.01.21, 19:17:14 »
Są po 10 zł + VAT, podawałem linka. Co prawda SOJ a nie DIL, ale dla takiej różnicy chyba warto.
Poza tym przy podanych kwotach, 15 euro za WD2123 zaczyna nabierać sensu ;)