Tylko z Amiga jest to mozliwe!
Rodzina Warp – uniwersalne karty rozszerzeń dla Amigi
Witaj na stronie Amiga Cizar & Sellen
Projektowanie i produkcja akceleratorów Amiga nie jest główną działalnością CS-Lab. Jest to poboczny projekt, który zrodził się z nostalgii i pasji do komputerów Amiga, na których wraz z moim partnerem biznesowym i przyjacielem rozpoczęliśmy naszą długą przygodę z elektroniką i tworzeniem oprogramowania.
W kwietniu 2018 roku wpadliśmy na pomysł, żeby zrobić kartę rozszerzeń do Amigi – tak dla zabawy 🙂 Nie było w planach realizacji żadnego komercyjnego projektu. Chcieliśmy zrobić coś tylko dla siebie. Po pierwsze, zaczęliśmy studiować karty katalogowe procesorów 68K i bawić się płytą TF530, aby dowiedzieć się więcej o specyfikacjach magistrali rodziny 68k itp. Dwuwarstwowa płytka drukowana TF530 szybko stała się poważnym ograniczeniem ze względu na słabą integralność sygnału, a następnie gdzieś w lipcu 2018 roku zbudowaliśmy nasz pierwszy prototyp dla A500 z MC68030+MC68882 50MHz i 64MB SDRAM turbo. Był duży, dość brzydki, ale działał 🙂 W sierpniu 2018 roku zbudowano pierwszy prototyp A500 z MC68040, a także drugi prototyp z nowym układem FPGA (Artix-7), pamięcią RAM DDR3 i wszystkimi zintegrowanymi na jednej płytce drukowanej. Pamięć DDR3 na początku była bardzo problematyczna. Jest bardzo wymagająca pod względem konstrukcji PCB, integralności sygnału itp. Mieliśmy wiele chwil desperacji, zanim w końcu udało nam się to rozwiązać. Innym problemem związanym z pamięcią DDR3 jest to, że pomimo dużej przepustowości, opóźnienia są ogromne. To ogromne opóźnienie jest również efektem kontrolera pamięci w FPGA. Dlaczego więc ostatecznie umieściliśmy DDR3 na tej płycie? Ponieważ jest tani i ma niezłą przepustowość, a oprócz procesora nie zabrakło również grafiki RTG. Jeśli chodzi o grafikę, DDR3 był idealny, a jeśli chodzi o procesor – cóż… Nowoczesne procesory mają dużo pamięci podręcznej, więc opóźnienia pamięci nie wpływają na nie tak bardzo, jak stare 68K, które mają tylko kilka kB. Postanowiliśmy dać tej pamięci szansę i zaprojektowaliśmy pamięć podręczną L2 pomiędzy pamięcią RAM a procesorem 68 KB. Było to bardzo pracochłonne, ale umożliwiło całkiem efektywne działanie 68K z tego typu pamięcią. Nie jest jednak idealnie. W przyszłych aktualizacjach pamięć podręczna L2 zmieni się na tzw. dwukierunkową, a może i czterokierunkową pamięć podręczną i również zostanie poddana pewnej optymalizacji.
Wreszcie w kwietniu 2019 roku mieliśmy działające prototypy z procesorem MC68060 .
Ten procesor jest dla nas wyjątkowy, ponieważ w latach 90. akceleratory 060 były tak drogie, że o ich posiadaniu mogliśmy tylko pomarzyć. Nawiasem mówiąc, ostatnie ceny takich akceleratorów na eBay też są szalone. Po pomyślnym uruchomieniu 060 było dużo pracy z dodatkowym sprzętem do płyty. Komunikacja ARM <-> 68K i DMA, sterownik P96, komunikacja z modułem WiFi ESP32, bootloader i wiele innych rzeczy…
W międzyczasie zdaliśmy sobie sprawę, że na rynku Amigi retro jest duże zapotrzebowanie na tego typu płytki i wiele osób pytało nas, czy nie byłoby możliwości zakupu tych płytek. Zabawa dobiegła końca, a projekt stał się komercyjnym 😉 Nie jest to takie proste, jak mogłoby się wydawać. Pracy jest znacznie więcej, aby taki projekt był gotowy do użycia dla każdego. Zdecydowaliśmy jednak, że chcemy stworzyć coś dla wciąż żywej i bardzo aktywnej społeczności Amigi.
Teraz, po wielu dniach, wielu prototypach i naprawionych błędach później, jesteśmy prawie gotowi do rozpoczęcia wysyłki do pierwszych użytkowników. Dwa lata i tylko dwie osoby pracujące nad tym projektem, więc jeśli kupisz tę kartę i znajdziesz jakieś problemy, uzbrój się w cierpliwość. Napisz do nas, a na pewno otrzymasz wsparcie. Pamiętaj tylko, że nie jesteśmy Apple i nie mamy centrum wsparcia 24/7 😉
Jest jeszcze wiele do zrobienia, ale będą aktualizacje. Obecnie skupiamy się przede wszystkim na integracji różnych funkcji sprzętowych z AmigaOS. Optymalizacje zostaną wykonane później, aby wycisnąć każdy pojedynczy MIPS z tego starego, dobrego 060 🙂
Amiga Rulez!
P.S. Dołącz do społeczności Warp Discord server.