120 likes | 247 Views
Egy második generációs gép (az IBM 7094) felépítése. Technikai részletek a z információs rendszerek történet ének 6 . fejezet éhez. Forrás: Hayes, John P.: Computer Achitecture and Organization. McGraw-Hill Book Company, 1978. Az I BM 7094 előzményei. 1955 , csöves IBM 704 :
E N D
Egy második generációs gép(az IBM 7094) felépítése Technikai részletek az információs rendszerek történetének 6. fejezetéhez Forrás: Hayes, John P.: Computer Achitecture and Organization. McGraw-Hill Book Company, 1978.
Az IBM 7094 előzményei • 1955, csöves IBM 704: • Indexregiszter • Lebegőpontos aritmetika • Az első üzleti számítógép, aminek volt egy „vezérlőprogramja”, egy kezdetleges operációs rendszer • Későbbi modellek és az utód (IBM 709): • Input-output processzor • A 7090 és a 7094 gyakorlatilag az IBM 709 tranzisztorizált változata • Az IBM 7094 tudományos célú számítógép
Az információ tárolási formája • 36 bites szóhossz • 1 szó = 1 előjeles fixpontos szám • Az első (legnagyobb helyiértékű) bit az előjelbit • Aztán a 2-1, 2-2, … 2-35 helyiérték • 1 szó = 1 előjeles lebegőpontos szám • Mantissza: 28 bit • Karakterisztika: 8 bit • 1 szó = 6 karakter (6 x 6 bit) (input-output esetén) • 1 szó = 1 utasítás • Az első 21 bit a művelet kódja • 15 bit memóriacím (a másik operadusz az egyik regiszterben) • Így 32 kiloszó közvetlenül címezhető
A CPU felépítése: az ALU • Gyakorlatilag megegyezik az IAS felépítésével • Az operátori konzol nem a CPU része, de közvetlen hozzáférést biztosít a regiszterek tartalmához
A CPU felépítése: az utasításpuffer szerepe • A gép memóriája két független modulból áll • Egyikben a páros, másik-ban a páratlan címek • Egyidőben elérhetők (átlapolás, interleaving) • Egy memóriából való olvasás mindig két egymás utáni cím tartalmát szolgáltatja • A második utasítást félre kellett tenni az első szóban lévő utasítás végrehajtásáig
A CPU felépítése: az indexregiszterek használata • 7 db 15 bites indexregiszter • Az utasításkódokban egy 3 bites rész adta meg, hogy melyik indexregisztert kell használni. • A tényleges tárcímet úgy kapták meg, hogy az AR címregiszter tartalmából a címkiszámító áramkörök kivonták a megadott indexregiszter tartalmát. • Úgy lehetett ciklust szervezni, hogy a program eredeti utasításai nem változtak meg, csak az indexregiszter tartalmát változtatta a program.
Az indirekt címzés • A gép egy másik hasznos lehetősége • Ha ez volt előírva az utasításban, akkor a gép a szokásos módon ért el egy memóriacímet, de az utasítást nem annak a tartalmával hajtotta végre, hanem az ott lévő adatot egy újabb címként értelmezte, és ezen az újabb címen lévő adattal hajtotta végre az utasítást.
A gép utasításkészlete • Több mint 200 utasítás • Adatátviteli utasítások • A CPU és a memória, vagy két regiszter között • Fixpontos aritmetikai utasítások • Lebegőpontos aritmetikai utasítások • Logikai utasítások • Az indexregiszterek módosítására szolgáló ut. • Feltétlen és feltételes vezérlésátadás • Input-output utasítások
Hívásra TSX kódú utasítás (Transfer and Set indeX) HIVAS TSX SUB, 4 Az utasítás saját címét a 4-es index-regiszterbe teszi Átadja a vezérlést a SUB címkével jelzett helyre Visszatérésre TRA kódú utasítás (TRAnsfer) TRA 1, 4 1-et ad a 4-es index-regiszter tartalmához (így a HIVAS címke utáni címet kapja) Erre a címre adja a vezérlést Szubrutinhívás
Paraméterátadás a szubrutinnak • Pl. két paraméter esetén őket a HIVAS címke utáni két szóba teszik • A szubrutin megtalálja őket a 4-es indexregiszter segítségével • Visszatérés a TRA 3, 4 utasítással, ez a paraméterek utáni szóra adja a vezérlést
Az input-output végrehajtása • Az IO processzorok speciális IO programot hajtottak végre (ez is az operatív tárban van) • IO esetén a CPU elküldte az IO processzornak a periféria címét és az IO program kezdőcímét • Adatátvitel az IOP és a memória között szavanként, az IOP és a periféria között karakterenként (6 bit) • Az IO végén állapotregiszter beállítása (a CPU rendszeresen ellenőrzi) • Az IOP küldhet speciális jelet (interrupt) is a CPU-nak
A memória-hozzáférés vezérlése • A CPU is és az IO processzor is hozzá akar férni • Vezérlőegység szükséges • IO ritkábban van, ezért elsőbbséget élvez • A CPU igényét egy ciklusra felfüggeszti a vezérlő (cikluslopás, cycle stealing)