-
1. Data: 2025-01-08 14:14:37
Temat: Podłączenie DMA 8257 do 8085
Od: Atlantis <m...@w...com>
Szukając przyczyny niedziałania karty CF w moim komputerku na 8085
znalazłem kilka innych błędów i zabrałem się za lekką optymalizację
konstrukcji, która oryginalnie była w prosty sposób przeniesiona z
wcześniejszego projektu na 8080.
Jedną z pierwszych zmian było wykorzystanie sygnału IOM do sterowania
dekoderami adresów, tak więc teraz są one aktywne tylko wtedy, gdy
faktycznie chcemy odwołać się do jakiejś pamięci/urządzenia I/O. Ułatwia
to debugowanie i zmniejsza zakłócenia, bo linie CS nie zmieniają co
chwilę swojego stanu.
Po wprowadzeniu tej zmiany zbędne stało się rozróżnienie na osobne linie
IORD/MEMRD i IOWR/MEMWR w stylu 8080. Przy okazji zauważyłem, że logika
która wykorzystywałem do ich generowania miała błąd, który w przyszłości
uniemożliwiłby poprawną prace DMA - linie te nie były przełączane w stan
wysokiej impedancji sygnałem AEN.
Skoro jednak rezygnuję z konwencji 8080 (MEMRD, MEMWR, IORD, IOWR) i
chcę mieć w systemie jedynie zestaw trzech sygnałów typowych dla 8085
(RD, WR, IOM) pojawia się problem właśnie z DMA 8257, który zakłada
obecność sygnałów z 8080. Z tego co widzę, większość konstrukcji
korzystających z tego DMA na 8085 zwyczajnie odtwarza dodatkowe sygnały
np. za pomocą 74138.
Istnieje może jakiś sprytny sposób, żeby łatwo zrobić to w drugą stronę?
To znaczy wygenerować systemowe sygnały RD, RW i IOM z MEMRD, MEMWR,
IORD, i IOWR wychodzących z 8257, ale jednocześnie pozostawiając
możliwość pracy z IORD/IOWR jako wejściami, gdy chcemy zapisać coś do
lub odczytać coś z rejestrów układu?