Stronicowanie już za Ciebie zaplanował Yarek
Wzorował się na Z88.
4 rejestry o adresach D0..D3, w które wpisujesz numer strony z bloku RAM (plus opcja ROM w pierwszej ćwiartce adresowej). Wszystko jest na jego stronie. To daje bodajże 4MB przestrzeni adresowej:
http://8bit.yarek.pl/upgrade/yabus.tf/index-pl.html
Musi być dokładnie tak samo ? Chodzi mi o te ograniczenia.
Bardziej byłbym skłonny rozszerzyć szynę adresową o dodatkowe 6 bitów.
Takie rozwiązanie jest w Enterprise, bardzo eleganckie.
W czterech rejestrach są zapisane adresy segmentów pamięci, które mogą być dowolnie podstawiane pod cztery 16KB strony dostępne dla procesora.
Cała przestrzeń adresowa A0..A21 może być dowolnie obsadzona pamięcią RAM/ROM/Flash. To też jest 4MB (256 stron po 16KB).
Adresy A0..A13 są wystawiane wprost przez procesor, a pozostałe 8 bitów A14..A21 jest pobierane z rejestrów zależnie od stanu linii A14 i A15 procesora.
Adresy rejestrów mogę zostawić D0..D3, ale całą logikę adresowania zrobił bym tak jak w Enterprise.
Trzeba będzie użyć jakiejś stonogi CPLD, ale za to może się okazać, że płytka wyjdzie jeszcze mniejsza