2. Maszyna EW
28 _
2.3.1. Opis układu wejścia-wyjścia
Dla rzeczywistej maszyny cyfrowej typu EW [5] układ wejścia - wyjścia związany był z czytnikiem taśmy dziurkowanej (później klawiaturą) jako urządzeniem wejściowym oraz perforatorem (dziurkarka) tejże taśmy (później monitorem) jako urządzeniem wyjściowym.
Uproszczony schemat logiczny obwodu wymiany urządzenia wejściowego przedstawia rysunek 2.6. Część sterująca obwodu składa się z dwóch przerzutników:
- startu ST,
- gotowości GOT.
Po zerowaniu początkowym maszyny stan przerzutników jest następujący ST^-0, GOT=l. Sygnał start wysłany do obwodu wymiany zmienia stany tych przerzutników na przeciwne, tzn. ST=1, GOT=0.
Wyjście przerzutnika ST powoduje generację sygnału AC. który inicjuje pracę urządzenia wejściowego. Urządzenie po ustaleniu informacji wejściowej podaje ją na linie 11-18 i ustawia sygnał SC w stan 1. Sygnał ten wpisuje przeczytaną informację do rejestru buforowego RWE oraz gasi przerzutnik ST i ustawia przerzutnik GOT.
Czas propagacji sygnału przez przerzutnik sprawia, żc zostanie wygenerowany impuls ZGL1, który jest sygnałem zgłoszenia dla układu przerwań. Jeżeli zatem układ przerwań dopuszcza przerwanie od tego obwodu wymiany, wysłanie informacji przez UZ spowoduje przerwanie. Jeżeli przerwania takiego nie dopuszcza się (np. jest ono zamaskowane), możliwa jest programowa kontrola stanu przerzutnika GOT. Wysłanie sygnału wyg do tego obwodu wymiany powoduje podanie stanu przerzutnika GOT na najstarszy bit magistrali S. Można go następnie testować dokonując odpowiedniego rozgałęzienia mikroprogramu.
Stan buforowego rejestru informacyjnego zostaje podany na magistralę S po wysłaniu do obwodu wymiany sygnału £we. W obwodzie wymiany znajduje sic dekoder sygnału selekcyjnego, który wypracowuje sygnał bramkujący sygnały mikrosterującc wysyłane do systemu we/wy (start, wyg, rwę, rwy). Sygnały te są wysyłane do wszystkich obwodów wymiany, jednak efekt spowodują tylko w obwodzie określonym przez kod selekcyjny. Ponieważ dekoder wypracowuje kod selekcyjny na podstawie stanu bitów AD5-AD7 (bity rejestru rozkazów), narzuca to format rozkazów we/wy, które powinny mieć w części adresowej kod selekcyjny obwodu wymiany (urządzenia zewnętrznego). Obwód wymiany urządzenia wyjściowego jest analogiczny.
2.3.2. Rozkazy wejścia-wyjścia
Rozkazy wejścia-wyjścia mają do spełnienia 3 podstawowe funkcje:
- przesył danych (z procesora do UZ lub odwrotnie),
- inicjacja pracy UZ,
- testowanie stanu UZ (lub jego obwodu wymiany).
Rozkaz może również określać sposób przesyłu, rodzaj pracy UZ i charakter testu. Powyższe, podstawowe funkcje może realizować jeden rozkaz we/wy lub też (częściej) dla
Rys. 2.6. Schemat logiczny obwodu wymiany urządzenia wejściowego
każdej funkcji zarezerwowany jest oddzielny rozkaz (a nawet kilka). W laboratoryjnym systemie we/wy przesył danych nastąpić może jedynie między rejestrami buforowymi obwodów wymiany a rejestrami procesora, np. akumulatorem. Jest to przesył prosty słów 8-bitowych, bez kontroli poprawności znaku, bez konwersji. Inicjacja pracy UZ spowoduje (w zależności od urządzenia) wczytanie lub wyprowadzenie jednego znaku. Testowaniu może podlegać jedynie gotowość obwodu (stan przerzutnika GOT).
Architektura maszyny cyfrowej EW pozwala na zaprojektowanie rozkazów we/wy opartych na różnych koncepcjach:
1. pętla mikroprogramowa - wyprowadzenie jednego słowa, a więc przesłanie go z procesora do rejestru buforowego obwodu wymiany, start urządzenia wyjściowego i testowanie gotowości urządzenia realizuje jeden rozkaz. Jedna z mikro instrukcji tego rozkazu testuje stan przerzutnika GOT w pętli. Wyjście z pętli następuje dopiero po zgłoszeniu przez urządzenie gotowości. Podobnie działa rozkaz dla wczytania znaku;
2. pętla programowa - każda operacja we/wy realizowana jest innym rozkazem: wprowadzenie znaku, start UZ. test gotowości. Test gotowości może polegać na