172162. lajstromszámú szabadalom • Digitális kisszámítógép az utsítástároló regiszter tartalmának dinamikus módosítására
5 172162 6 mely ezután, közvetlenül vezérelve a ki-bemeneti vonalrendszert és az 1 aritmetikai egységet, lebonyolítja a külső adatforgalmat. Ennek befejeztével nyugtázó jelzést ad vissza a 2 utasításvégrehaj tó-vezérlő egységnek, mely ezután folytatja az utasítások, illetve a program végrehajtását. A számítógépek vezérlő rendszerének bemutatását az 1 aritmetikai egységre, a 2 utasításvégrehajtó-vezérlő egységre és a 4 utasítástárolóra korlátozva folytatjuk. Az általánosan alkalmazott elrendezést a 2. ábrán mutatjuk be. A 10 aritmetikai egységet a 2. ábrán 11 beíró hálózatra, 12 regisztercsoportra, 13 kimeneti kapurendszerre, 14 multiplexerre és 15 műveletvégző egységre bontva ábrázoljuk. Természetesen ennek a megoldásnak több változata lehetséges. Az egyes változatok többnyire abban különböznek egymástól, hogy belső regisztercsoportot és/vagy műveletvégző egységet tartalmaznak, amelyek között a belső adatforgalmi kapcsolatot értelemszerűen több adatforgalmi vonal (ún. belső sín-rendszer) biztosítja. Minthogy azonban a találmány szerinti (és később bemutatandó) vezérlési megoldás tetszőleges felépítésű aritmetikai rendszerre érvényes, az általános vezérléseket a 2. ábrán látható általánosított aritmetikai egységen mutatjuk be. A 10 aritmetikai egység regisztereit a 12 regisztercsoport tartalmazza. A regiszterek kimenetei a 14 multiplexeren keresztül kapcsolódnak a 15 műveletvégző egység bemeneteire. A 12 regisztercsoportba két irányból történik adatbeírás, egyrészt a 3 ki-bemeneti vezérlő egységből a b beíró-kimeneten érkező vezérlő jelekkel beírható a regiszter(ek)be a 6 ki-bemeneti vonalrendszer adatvezeték-kötegén megjelenő adat, másrészt pedig a 20 utasításvégrehajtó-vezérlő egységből az f vezérlő vezetékkötegen érkező vezérlő jelekkel beírható a regiszterekbe a 15 műveletvégző egység e műveleti kimeneteken megjelenő műveleti eredmény. A beírás a 11 beíró hálózaton keresztül történik, mely a b beíró kimeneten, ill. f vezérlő vezetékkötegeken megjelenő vezérlőjelek jelkombinációjának megfelelően kiválasztja az előírt regisztert és abba beírja a 6 ki-bemeneti vonalrendszer adatvezetékkötegen, illetve az e műveleti kimeneteken megjelenő műveleti eredményt. A 12 regisztercsoport regisztereinek tartalma egyrészt a 14 multiplexeren keresztül a 15 műveletvégző egység bemenetére, másrészt a 13 kimeneti kapurendszeren keresztül a 6 ki-bemeneti vonalrendszer adatvezetékkötegére kapuzódik. A megfelelő regiszter kiválasztását és az adatok kikapuzását a 13 kimeneti kapurendszer végzi a 3 ki-bemeneti vezérlő egységből a c kiolvasó kimeneten érkező vezérlő jel hatására. A 14 multiplexer működését a g vezérlő vezetékköteg jelei vezérlik. Ezek a vezérlőjelek meghatározzák, hogy a 14 multiplexer adatbemenetére kapcsolódó regiszterek közül melyiknek, vagy melyeknek a tartalmát kell a 15 műveletvégző egység bemefteteire továbbítani. A 14 multiplexer adatbemeneteire nemcsak a 12 regisztercsoport regisztereinek tartalma kapcsolható, hanem a 22 utasítástároló regiszter tartalma is, mert a végrehajtandó utasítás tartalmazhat adatinformációt is (pl. relatív cím, vagy közvetlen operandus), amit így közvetlenül a 15 műveletvégző egységbe lehet juttatni. A 15 műveletvégző egység elvégzi a 14 multiplexer által kiválasztott adat(ok)on a h vezérlő vezetékkötegen érkező vezérlő jelek által előírt műveletet. A művelet eredménye a 15 műveletvégző egységből az e műveleti kimeneteken jelenik meg, és innen all beíró hálózaton keresztül jut el az előírt regiszterbe. Egyes belső regiszterek (pl. számláló regiszter, shiftregiszter stb.) tartalma módosítható anélkül, hogy ehhez a módosításhoz a regiszter tartalmát keresztül kellene vezetni a 15 műveletvégző egységen. Ezeket a közvetlen módosításokat az i vezérlő vezetékkötegen megjelenő vezérlő jelek Végzik. A 12 regisztercsoport a j jelző vezetékkötegen az egyes regiszterek tartalmától függő, a 15 műveletvégző egység pedig a k jelző vezetékkötegen a művelet eredményétől függő jelzéseket szolgáltat a 20 utásításvégrehajtó-vezérlő egységnek. (Ilyen jelzések pl. az előjel, aritmetikai túlfolyás, párosság, normál alak, számláló túlcsordulás stb.) A 4 utasítástárolót a 21 beíró hálózat és a 22 utasítástároló regiszter alkotja. A 22 utasítástároló regiszterbe az utasítás végrehajtásának meggyorsítására az általánosan alkalmazott megoldásokban a 21 beíró hálózaton keresztül írják be a 6 ki-bemeneti vonalrendszer adatvezetékkötegéről a végrehajtandó utasítást. Az utasítás kódjának beírását a 3 ki-bemeneti vezérlő egységből a d mintavevő kimeneten érkező utasításbeíró jel vezérli. A 22 utasítástároló regiszternek az utasításvégrehajtó áramkörök vezérlési folyamatában meghatározó szerepe van, amenynyiben a végrehajtandó utasítás kódját tartalmazva alapvető feltételeket ad az utasításvégrehajtó-vezérlő rendszer belső állapotainak (az utasítás végrehajtási szekvenciájának megfelelő) változásaihoz és az egyes vezérlő állapotokban előírt (aritmetikai, külső-belső adatforgalmi és egyéb speciális) vezérlőjelek előállításához. Ezért a 22 utasítástároló regiszter minden bitje bemenő feltételként szolgál az utasításvégrehajtó-vezérlő rendszer vizsgálódöntő hálózataihoz. A 22 utasítástároló regiszterbe beírt utasítás végrehajtásának vezérlését az 1. ábrán látható 2 utasításvégrehajtó-vezérlő egység végzi, kivéve a szükséges külső adatforgalmi vezérléseket, melyeknek lebonyolítása a 3 ki-bemeneti vezérlő egység feladata. Az 1. ábrán látható 2 utasításvégrehajtó-vezérlő egységet a 2. ábrán a 17 szekvenciatárolóra, a 19 feltételtárolóra, a 16 és 18 bemeneti és 25 kimeneti kombinációs hálózatra bontva mutatjuk be. Az ábrázolt vezérlő rendszer két automata összekapcsolásának tekinthető. A vezérlő automatát a 17 szekvenciatároló és a 16 bemeneti kombinációs hálózat, a feltételauto-5 10 15 20 25 30 35 40 45 50 55 60 65 3