Skocz do zawartości

Pomocna odpowiedź

Napisano

Osoby śledzące na forum moje projekty pewnie zdążyły zauważyć pewną zależność: moje konstrukcje (zwłaszcza te związane z tematyką retro) mają tendencję do powstawania seriami. Nie jest to przypadkiem. Wynika to z prostego faktu, że w swoim warsztacie zdążyłem zgromadzić całkiem sporą kolekcję części z epoki. Nieraz po złożeniu jakiegoś urządzenia uświadamiam sobie, że relatywnie niewielka (chociaż nie zawsze trywialna i bezproblemowa) modyfikacja pozwoliłaby mi na użycie nieco innego procesora i/lub układu peryferyjnego. I tak na przykład po zbudowaniu komputera na MOS6502 tworzyłem drugi, na Motoroli MC6802, albo zabawy z polskim mikroprocesorem MCY7880 (klon 8080) owocowały w końcu powstaniem komputerków na 8085 i Z80.

Podobnie było i tym razem. Po uruchomieniu komputerka na dość mało znanym układzie Z80182 (opisywany tutaj) zdałem sobie sprawę, że będę w stanie zbudować podobną płytkę pod procesor HD64180, którego kilka sztuk leżało w jednym z pudełek z częściami.

h1.thumb.jpg.41f952386326e04b998ca7542028d0b1.jpg

Część bloków funkcyjnych (np. obwód zasilania) mogłem wykorzystać praktycznie bez wprowadzenia jakichkolwiek zmian, co najwyżej lekko je przesuwając, aby zrobić więcej miejsca pod zauważalnie większy CPU. W przypadku innych (np. RAM i FLASH) trzeba było trochę zmienić sposób prowadzenia ścieżek. Inne części komputerka (dekoder adresów ROM/RAM i układ maskowania RAM po rozruchu) trzeba było w ogóle zbudować od podstaw za pomocą układów logicznych, bo w oryginalnej konstrukcji były one zintegrowane w strukturze krzemowej mikroprocesora. HD64180 jest jakby nie patrzeć starszym i znacznie mniej zaawansowanym układem. Nie obeszło się przy tym bez pomyłek i w paru miejscach musiałem potem wprowadzać poprawki za pomocą kynaru.

Zmian wymagała także część programowa, bo o ile obydwa układy posiadają rdzeń zgodny z Z180, to różnią się pod względem zintegrowanych peryferiów oraz mapy adresów I/O. Trzeba było też oczywiście przygotować inny sterownik UART. Większość kodu bootloadera i BIOS-u CP/M została jednak przeniesiona ze starszego projektu.

h3.thumb.jpg.911085b76e6d711f1ee32b6dfc66031b.jpgh2.thumb.jpg.b709202d08bfbcc34f1b8352b4ed0e5d.jpg

Działanie systemu jest właściwie takie samo - bootloader zapisany w pamięci FLASH uruchamia się po resecie, inicjując ładowanie systemu z karty CF. Po uruchomieniu systemu ROM znika z przestrzeni adresowej, która od tej pory jest w całości dostępna dla RAM-u. Ponieważ HD64180 również posiada kontroler pamięci z systemem przełączania banków, możliwe jest zaadresowanie większej pamięci niż w zwykłym Z80 (64kB). Komputer jest wyposażony w 512kB RAM, chociaż możliwe byłoby podwojenie tej liczby - po prostu taki układ pamięci SRAM miałem pod ręką. 😉 Te zasoby sprzętowe przydadzą się, gdy w końcu zabiorę się za uruchamianie na tym systemu MP/M z obsługą multitaskingu.

h4.thumb.jpg.accc851f8a69e74654328b3c487d8e63.jpg

  • Lubię! 2

Podoba Ci się ten projekt? Zostaw pozytywny komentarz i daj znać autorowi, że zbudował coś fajnego!

Masz uwagi? Napisz kulturalnie co warto zmienić. Doceń pracę autora nad konstrukcją oraz opisem.

Przed chwilą, BlackJack napisał:

Widzę zapalony, z ciebie budowniczy, chyba ci podrzucę 8086 od NECa V30 bodaj, to zbudujesz retro PC XT i Dooma na tym odpalisz.

Komputer na 8086 (a właściwie 8088) już zbudowałem. Nawet wrzuciłem do niego FPU 8087. Dooma jeszcze nie próbowałem na nim odpalać. Normalny Doom i tak na tym nie ruszy, ale pewnie ktoś już zrobił odpowiednio odchudzoną wersję pod takie komputery. 😉

Nie chwaliłem się tutaj tym projektem, bo nie jest mój - po prostu użyłem cudzych płytek. Chodziło mi kiedyś po głowie zbudowanie czegoś własnego na 8086/8088. Jeśli kiedyś do tego dojdzie, to pewnie nie będzie to całkowicie kompatybilne z PC - raczej po prostu system umożliwiający odpalenie CP/M 86.

Na razie jednak mam trochę innych architektur do sprawdzenia. Chciałbym chociażby zbudować coś na MC68008 i TMS9900. W dalszej kolejności myślę o jakimś komputerku na MC68030/MC68040, na którym dałoby się odpalić Linuksa. Ale tutaj też nie wiem czy nie skorzystam z gotowego projektu.

MC68008 może być ciężko zdobyć. Z80 mogę cię zasypać, mam tego na pęczki ze starych sterowników PLC. Jakiś MC6808 też może bym miał. Szkoda że nie wiedziałem że w moim starym zakładzie złomują starą drążarkę, tam cała szafa  komputera była na Motoroli 6800 z kartą graficzną, peryferiami. Kompletny komputer przemysłowy z schematami. MC68000 na pewno były w starych falownikach Lenze, takich jeszcze bez wyświetlaczy. AMD 286 chyba też mi jeszcze gdzieś leży.

1 godzinę temu, BlackJack napisał:

MC68008 może być ciężko zdobyć.

Kilka egzemplarzy gdzieś udało mi się kupić jakiś czas temu i teraz czekają, aż w końcu będę miał czas się za to zabrać (i uporam się z projektami o wyższym priorytecie). 😉

1 godzinę temu, BlackJack napisał:

MC68000 na pewno były w starych falownikach Lenze, takich jeszcze bez wyświetlaczy.

Tylko podejrzewam, że to pewnie mogły być układy z serii MC68EC0x0 - głównie takich używano w sterownikach. Są tanie, ale nie posiadają FPU i MMU (w przypadku wyższych modeli, które normalnie je posiadały). Nie są też dostosowane do integracji z zewnętrznymi układami tego rodzaju. Tak więc prosty komputerek się na tym złoży, ale z bardziej zaawansowanym systemem na 68k będzie problem. 😉

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...