[RCBus] Specyfikacja

Kącik dla elektroniki retro - układy, urządzenia, podzespoły, literatura itp.
tapy
User
User
Posty: 123
Rejestracja: niedziela 14 kwie 2019, 17:09
Kontaktowanie:

[RCBus] Specyfikacja

Postautor: tapy » sobota 18 mar 2023, 10:00

Po dłuższych dyskusjach została wydana pierwsza wersja specyfikacji RCBus zawierająca obsługę najpopularniejszych procesorów 8-bit. Procesory 16-bitowe zostaną uwzględnione w kolejnych wydaniach, bo proces uzgodnienia trwał stanowczo za długo i należało dotychczasowe ustalenia opublikować.
Specyfikacja posiada agendę elementów które nie znalazły się w pierwszym wydaniu i z obserwacji dyskusji wynika, że każdy przyjmuje postawę zachowawczą, więc należy się spodziewać że kolejne elementy zostaną dodane na zasadzie "kto pierwszy, ten lepszy" w przypadku fizycznej z sukcesem realizacji brakujących elementów. Czasami trudno uzyskać kompromis. Zachęcam wszystkich którzy oczekiwali obsługi procesorów nie uwzględnionych w obecnej specyfikacji do realizacji w ramach które zostały nakreślone.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

Awatar użytkownika
Zegar
User
User
Posty: 320
Rejestracja: wtorek 02 lip 2019, 14:42

Re: [RCBus] Specyfikacja

Postautor: Zegar » sobota 18 mar 2023, 21:03

tapy pisze:Po dłuższych dyskusjach została wydana pierwsza wersja specyfikacji RCBus zawierająca obsługę najpopularniejszych procesorów 8-bit.

Trochę się pospieszyłem i zrobiłem wg "rcbus-specification-v0.0.006-2023-03-09"...
CA80-backplane.png
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."
A. Einstein

tapy
User
User
Posty: 123
Rejestracja: niedziela 14 kwie 2019, 17:09
Kontaktowanie:

Re: [RCBus] Specyfikacja

Postautor: tapy » sobota 18 mar 2023, 22:22

To nie pośpiech, a nieuważne czytanie, bo nie zmieniał się już układ pinów ;)
Nie uwzględniłeś kaskady IEI/IEO, BAI,BAO i rolę MEM_EN pełni pin 60 (dla zmyłki pozostała ta nieszczęśliwa nazwa PAGE). Jak starczy czasu to zrobię szczegółowy opis na swojej stronie, bo rzeczywiście specyfikacja może być niejasna dla osób które nie śledziły uważnie dyskusji.
Pocieszę Cię, ja też popełniłem moduł nie do końca zgodny z przyjętymi zasadami :)
W65C816.png
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

Awatar użytkownika
Zegar
User
User
Posty: 320
Rejestracja: wtorek 02 lip 2019, 14:42

Re: [RCBus] Specyfikacja

Postautor: Zegar » sobota 18 mar 2023, 22:51

tapy pisze:Nie uwzględniłeś kaskady IEI/IEO, BAI,BAO

Daisy chain mam skopiowany z Twojej łytki. ;)
tapy pisze: rolę MEM_EN pełni pin 60 (dla zmyłki pozostała ta nieszczęśliwa nazwa PAGE)


CA80-BACKPLANE-REWERS.png


Mój MEM_EN to odpowiednik RAM_CE2 z Z80-MBC2. Nie podmienia on pamięci ale ją całkowicie blokuje, żeby umożliwić "karmienie" procesora przez bootloader. Dlatego nie wchodziłem na ten pin, tylko wykorzystałem "40" - USER4.

"PAGE - Page RAM/ROM, active high. Low to enable ROM and disable its shadow RAM. High to
disable ROM and enable its shadow RAM. For a Z80 system the ROM is at the bottom of
memory (starting at address 0x0000) following reset. This signal is set high to replace this
ROM with RAM, allowing a full 64k of RAM. Perhaps a better name would be RAM_ENable.
There are other memory management schemes in use that do not use this signal. "

Opisałem płytkę "for CA80", więc nie będzie problemu. :lol:
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."
A. Einstein

tapy
User
User
Posty: 123
Rejestracja: niedziela 14 kwie 2019, 17:09
Kontaktowanie:

Re: [RCBus] Specyfikacja

Postautor: tapy » sobota 18 mar 2023, 23:30

Fakt, przeoczyłem kaskadę IEI/IEO :D
Niestety Steve nie do końca dobrze opisał znaczenie tego pinu, więc sugeruje że wyłącza tylko ściśle określoną część obszaru obsługiwanego przez RAM. Tak, z tym że jest to szczególny przypadek w celu zachowania zgodności z istniejącymi rozwiązaniami, w pozostałych przypadkach wyłącza ją całą lub na podobieństwo Twojego modułu CA80-Flash, dekoder adresujący pamięć na innym module ma możliwość wycięcia określonego obszaru dla własnych celów. Generalnie zasada jest dokładnie taka sama, jaką stosujesz w swoim modułowym CA80. Ta funkcja jest opcjonalna, a nie wymagana.
Jak wcześniej wspomniałem, standard RCBus v1.0 jest mocno zachowawczy i stara się unikać zbyt radykalnych zmian. Prowadzi to do pewnego kuriozum, bo obecnie przewidziana jest obsługa wielu kontrolerów DMA z kaskadą priorytetów, a nie ma ani jednego sygnału wywołującego te układy przez urządzenia peryferyjne. Trochę śmiesznie i zarazem straszne, bo uczestniczyli w ustaleniach praktycy mający w swoim portfolio wiele konstrukcji. :shock: Moje moduły będę projektować zgodnie z agendą do tego dokumentu, bo poddaję w wątpliwość, by w tak niewielkim systemie znalazło się wiele układów DMA wymagających arbitrażu, a nie znalazł się żaden by mógł zostać przez nie obsłużony. 8-)
Jeszcze jedna kwestia, która przeszła bez echa to znaczenie pinów 75 i 76 obecnie przypisanych dla sygnałów RX2 i TX2 dla drugiego portu szeregowego konsoli, co nigdy nie zostało wykorzystane. Więc planuję dokonać zmiany "siłowej" przypisując te piny do sygnałów CTS i RTS dla pierwszego portu szeregowego w swoim najnowszym backplane i module CPU+UART. Drażnią mnie dydające na przewodach konwertery USB-Serial bez obsługi potwierdzenia. Cóż pewnie mnie nie będą za to lubić :mrgreen:


Wróć do „Retro”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 4 gości