Rapidus Accelerator
From Atariki
Wersja z dnia 09:23, 3 wrz 2019 Dracon (Dyskusja | wkład) (Lotharek sprzedaje :)) ← Previous diff |
Wersja z dnia 18:27, 27 lis 2023 KMK (Dyskusja | wkład) Next diff → |
||
Linia 14: | Linia 14: | ||
Możliwe jest uruchomienie obydwu procesorów jednocześnie. Mogą one wtedy działać zupełnie niezależnie, dopóki nie wchodzą sobie w drogę; ale gdy 65C816 będzie potrzebował dostępu do rejestrów I/O lub "starej" pamięci, 6502 zostanie na chwilę zatrzymany (sygnałem HALT). | Możliwe jest uruchomienie obydwu procesorów jednocześnie. Mogą one wtedy działać zupełnie niezależnie, dopóki nie wchodzą sobie w drogę; ale gdy 65C816 będzie potrzebował dostępu do rejestrów I/O lub "starej" pamięci, 6502 zostanie na chwilę zatrzymany (sygnałem HALT). | ||
+ | |||
+ | == Wersje == | ||
+ | |||
+ | W obiegu istnieją dwie główne wersje karty: | ||
+ | |||
+ | 1) wersje przedprodukcyjne, które mają po 512 KB Fast RAM-u - można je poznać po zielonym kolorze płytki PCB; | ||
+ | |||
+ | 2) wersje produkcyjne z 1 MB Fast RAM-u i białą płytką PCB. | ||
+ | |||
+ | Ponadto można spotkać produkcyjne karty z wersją rdzenia FPGA starszą niż ostateczna 6S9054E (znana jako "054E"). | ||
+ | |||
+ | Prototypowe rdzenie z roku 2020, wykorzystujące procesor 65C816 zaimplementowany w FPGA i pozwalające na pracę z zegarem 40 MHz, działają tylko z kartami "zielonymi". | ||
== Montaż == | == Montaż == | ||
Linia 33: | Linia 45: | ||
Zunifikowany sposób obsługi "wysokiej" pamięci zapewnia [[DracOS]]. Akcelerator ma też wsparcie ze strony [[SpartaDOS X]]. | Zunifikowany sposób obsługi "wysokiej" pamięci zapewnia [[DracOS]]. Akcelerator ma też wsparcie ze strony [[SpartaDOS X]]. | ||
- | Pierwszym, większym programem na szerszą skalę korzystającym z możliwości Rapidusa jest emulator ZX Spectrum [[Let's Emu!]]. | + | Pierwszym, większym programem na szerszą skalę korzystającym z możliwości Rapidusa jest emulator ZX Spectrum [[Let's Emu!]]. Istnieje też dedykowany, natywny asembler [[ELSA]]. |
== Problemy z kompatybilnością == | == Problemy z kompatybilnością == |
Wersja z dnia 18:27, 27 lis 2023
Karta akceleratora dla Atari 8-bit opracowana przez Pasia na podstawie wcześniejszych doświadczeń z Warp4 i F7.
Pierwsze produkcyjne egzemplarze zaczęły trafiać do odbiorców począwszy od 24 marca 2016.
Spis treści |
Dane techniczne
- Pierwsze CPU: 65C816, 20 MHz (powstały też wcześniej prototypy działające na 14 i 16 MHz)
- Drugie CPU: 6502C, 1,77 MHz (1,79 MHz NTSC)
- Fast RAM: 1 MB w obszarze $000000-$0FFFFF (lub 512 KB w obszarze $000000-$07FFFF)
- SD-RAM: 14 lub 14,5 MB (od końca Fast RAM-u do $EFFFFF), pracujący z częstotliwością 160 MHz
- Bankowany SD-RAM: 4x4 MB (16 MB) w obszarze $800000-$BFFFFF
- 4 KB cache dla SD-RAM-u
- Fast ROM: 512 KB w obszarze $F00000-$F7FFFF
Możliwe jest uruchomienie obydwu procesorów jednocześnie. Mogą one wtedy działać zupełnie niezależnie, dopóki nie wchodzą sobie w drogę; ale gdy 65C816 będzie potrzebował dostępu do rejestrów I/O lub "starej" pamięci, 6502 zostanie na chwilę zatrzymany (sygnałem HALT).
Wersje
W obiegu istnieją dwie główne wersje karty:
1) wersje przedprodukcyjne, które mają po 512 KB Fast RAM-u - można je poznać po zielonym kolorze płytki PCB;
2) wersje produkcyjne z 1 MB Fast RAM-u i białą płytką PCB.
Ponadto można spotkać produkcyjne karty z wersją rdzenia FPGA starszą niż ostateczna 6S9054E (znana jako "054E").
Prototypowe rdzenie z roku 2020, wykorzystujące procesor 65C816 zaimplementowany w FPGA i pozwalające na pracę z zegarem 40 MHz, działają tylko z kartami "zielonymi".
Montaż
Akcelerator ma postać karty, którą trzeba wpiąć w płytę główną Atari, w miejsce powstałe po wylutowaniu starego CPU. Stare CPU należy z kolei włożyć w przeznaczoną do tego podstawkę, znajdującą się na karcie akceleratora. Instalacja wymaga też podłączenia trzech sygnałów z płyty Atari do gniazdka umieszczonego na karcie akceleratora (oznacza to trzy punkty lutownicze). W przypadku posiadania VBXE może zajść potrzeba zastosowania ok. 3 dodatkowych podstawek aby Rapidus nie kolidował z dotychczasową płytką VBXE.
Konfiguracja pamięci
W karcie dostępne jest łącznie 31 MB pamięci RAM. W pierwszych 64 KB (pamięć zgodna z obszarem 6502) możliwy jest wybór pomiędzy pamięcią Fast RAM i ROM, a pamięcią znajdującą się na płycie głównej Atari: każdy blok 16k może być w ten sposób oddzielnie skonfigurowany.
Fast RAM, SD-RAM i Fast ROM są oczywiście niedostępne dla układów scalonych znajdujących się na płycie głównej, np. dla ANTIC-a. Ma to ten negatywny skutek, że nie można w tej pamięci przechowywać danych graficznych przeznaczonych do bezpośredniego wyświetlenia, mimo że pozornie może się ona znaleźć w odpowiednim obszarze adresowym. Pozytywnym skutkiem jest to, że program działający w tej pamięci, o ile nie potrzebuje dostępu do płyty głównej (pamięć, rejestry I/O), nie jest cyklicznie zatrzymywany przez układ ANTIC. Dzięki temu np. sample grają zupełnie czysto mimo włączonego ekranu.
Niezależnie od tych ustawień obsługiwane są standardowe rozszerzenia pamięci RAM (jak Ultimate1MB), VBXE itd., jakkolwiek trzeba pamiętać, że przy dostępie do nich (oraz ogólnie do sprzętu podłączonego do płyty głównej) procesor zwalnia do 1,77 MHz.
W skrajnym przypadku przestrzeń adresową można skonfigurować tak, że w obszarze od $000000 do $EFFFFF będzie widoczny ciągły blok RAM-u o wielkości 15 MB. Rejestry I/O dostępne są wtedy pod $FFD000-$FFD7FF.
Oprogramowanie
Zunifikowany sposób obsługi "wysokiej" pamięci zapewnia DracOS. Akcelerator ma też wsparcie ze strony SpartaDOS X.
Pierwszym, większym programem na szerszą skalę korzystającym z możliwości Rapidusa jest emulator ZX Spectrum Let's Emu!. Istnieje też dedykowany, natywny asembler ELSA.
Problemy z kompatybilnością
Rapidus nie będzie współpracował z IDE Plus 2.0 rev. C. Problem i sposób jego rozwiązania został opisany na forum atari area
Nazwa
Rapidus znaczy po łacinie "gwałtowny, szybki, rwący".