CDC 6600

A CDC 6600. A rendszerkonzol mögött a kereszt alakú ház két „karja” található nyitott panelekkel. Az egyes modulok belül láthatók. A modulok konzoljai csuklósak, hogy a mögöttük lévő konzolok hozzáférhetőek legyenek. A gép minden karján legfeljebb négy ilyen tartó volt. A hűtőrendszer a jobb oldalon látható.
CDC-6600 rendszer konzolja . Ezzel a fejlett kialakítással a képernyők és a billentyűzetek felváltották az akkori rendszerkonzolokon található több száz kapcsolót és jelzőfényt. A szoftver által vezérelt képernyők segítségével három választható betűmérettel jelenítették meg a szöveget, és egyszerű grafikákat is meg tudtak rajzolni. A modern raszteres grafikus képernyőktől eltérően a konzolnak két vektor képernyője volt ; a saját font , minden írásjel sorozatából állt vektorok. A kulcsszavak automatikus kitöltése gyorsabb parancsbeírást tett lehetővé.

A CDC 6600 volt a zászlóshajó a mainframe rendszerek a CDC-6000 sorozat honnan Control Data Corporation . Széles körben az első sikeres szuperszámítógépnek számít, és háromszorosára verte az előző ipari rekordot, az IBM 7030 Stretch-et . Legfeljebb három  MegaFLOPS kimenettel a CDC 6600 a világ leggyorsabb számítógépe volt 1964 és 1969 között, amikor elveszítette ezt a státuszt utódjának, a CDC 7600-nak .

Sok példányt különféle nukleáris fegyverek laboratóriumaiba szállítottak , és néhányan egyetemi számítógépes laboratóriumokba jutottak . A kaliforniai Mountain View- ban található Computer History Museumban CDC 6600 látható . Az egyetlen még működő gép a CDC-6000 sorozat helyreállt a Living Számítógépek: Múzeum + Labs in Seattle és lehet online is.

Történelem és hatás

A CDC első termékei az ERA- ban kifejlesztett gépeken alapultak , amelyeket Seymour Cray-nak frissítenie kellett , miután átállt a CDC-re. A Little Character nevű kísérleti gép után 1960- ban szállították a CDC 1604-et , amely az egyik első kereskedelmi tranzisztor alapú számítógép és az egyik leggyorsabb gép a piacon. A vezetőség örült, és új gépsorozatot tervezett, amely jobban megfelel az üzleti felhasználásnak. Például tartalmazniuk kell a karakterek feldolgozására és a rekordok mentésére vonatkozó utasításokat. Cray-t nem érdekelte egy ilyen projekt, és egy új gép gyártását tűzte ki célul, amely 50-szer gyorsabb, mint az 1604-es. Amikor felkérték, hogy készítsen részletes jelentést a tervekről egy és öt évvel a jövőre nézve, visszaírta, hogy ötéves célja az volt, hogy "a világ legnagyobb számítógépévé tegye" - "akkoriban" a legnagyobb "szinonimája a" leggyorsabb "-nak. ”- és egyéves terve az volt, hogy„ megtegye az út ötödét ”.

Miután új irodába költözött az eredeti CDC székhely közelében, alapcsoportja kísérletezni kezdett a Cray által 1604-ben használt "olcsó" tranzisztorok kiváló minőségű változataival . Sok kísérlet után azt tapasztalták, hogy a germánium tranzisztorai egyszerűen nem működhetnek sokkal gyorsabban, mint 1604-ben. Az "üzleti gép", amelyet a vezetés eredetileg kívánt, és most alapul a CDC 3000 sorozat jött létre, amennyire csak lehetséges. Megoldásként Cray ezután úgy döntött, hogy a Fairchild Semiconductor akkor új szilícium alapú tranzisztoraival dolgozik, amelyek nemrég jelentek meg a piacon, és drámai módon jobb kapcsolási teljesítményt nyújtottak.

Ezalatt a CDC induló vállalkozásból nagyvállalattá nőtte ki magát, és Cray egyre inkább csalódott volt a nevetségesnek tekintett irányítási követelmények miatt. A helyzet akkor került csúcsra, amikor az új CDC 3600 1962-ben megközelítette a gyártási készültséget , és úgy tűnt, hogy pontosan ez az, amit a vezetés és mikor akart. Cray végül elmondta a CDC vezérigazgatójának, William Norrisnak, hogy valaminek változtatnia kell, különben elhagyja a céget. Norris úgy érezte, hogy túl fontos ahhoz, hogy elveszítse, és zöld utat adott Cray-nek, hogy új laboratóriumot hozzon létre, ahol csak akar.

Gyors keresés után Cray úgy döntött, hogy visszatér szülővárosába , a wisconsini Chippewa Fallsba , ahol egy darab földet vásárolt, és új laboratóriumot nyitott.

Noha ez hosszú késést eredményezett új gépének megtervezésében, az új laboratórium fejlesztése minden vezetői beavatkozás nélkül gyorsan megkezdődött. Abban az időben az új tranzisztorok meglehetősen megbízhatóvá váltak, és a velük épített modulok többnyire először működtek. A 6600 alakot öltött, Cray Jim Thorntonnal, a rendszerépítész és a 6600 "titkos zsenijével" dolgozott.

Az első CDC 6600-at 1965-ben szállították Livermore-ba és Los Alamosba . Gyorsan elengedhetetlen rendszerré váltak a tudományos és matematikai számítástechnikai körökben, a rendszereket a Courant Matematikai Tudományok Intézetének , a CERN-nek , a Lawrence Sugárzási Laboratóriumnak és sok másnak szállították. Összesen mintegy 50 példányt szállítottak, más források szerint több mint 100.

Cray azonnal rátért utódmodelljére, amelyet CDC 7600 néven szállítottak, és a 6600 teljesítményének tízszeresét tűzte ki célul. A későbbi CDC Cyber 70 és 170 számítógépek összességében nagyon hasonlóak voltak a CDC 6600-hoz, és szinte teljesen visszafelé kompatibilisek voltak.

A 6600 háromszor gyorsabb volt, mint az előző rekordtulajdonos, az IBM 7030 Stretch ; ez riasztotta az IBM-t . Az akkori vezérigazgató, Thomas J. Watson, Jr. emlékeztetőt írt munkatársainak: „A múlt héten a Control Data bejelentette ... a 6600 rendszert. Megértem, hogy a rendszert fejlesztő laboratóriumban csak 34 ember dolgozik, beleértve a gondnokot is. Közülük 14 mérnök és 4 programozó ... Ha összehasonlítom ezeket a szerény erőfeszítéseket kiterjedt fejlesztési tevékenységeinkkel, nem tudom megérteni, miért vesztettük el vezetői pozíciónkat azzal, hogy hagytuk, hogy valaki más kínálja a világ legerősebb számítógépét. ”Cray válasza szardonikus volt: - Úgy tűnik, Mr. Watson válaszolt a saját kérdésére.

leírás

Az akkori tipikus gépek egyetlen CPU- t használtak a teljes rendszer futtatásához. Egy tipikus program először adatokat tölt be a fő memóriába (gyakran előre csomagolt könyvtári kódot használva), feldolgozza, majd visszaírja. Ezek a különféle feladatok kiterjedt utasításkészletet és így összetett CPU-t igényeltek. Ez viszont nagy CPU-t jelentett, ami késéseket okozott, miközben az információk az egyes moduljai között áramoltak. Ezek a késések korlátozták a gép teljesítményét; csak olyan órajellel működhetett, amely lehetővé tette, hogy a jelek időben elérjék a következő modult.

Cray más megközelítést alkalmazott. Abban az időben a CPU-k általában lassabban működtek, mint a memória , amelyhez csatlakoztak. Például egy processzornak 15 ciklusra volt szüksége két szám megtöbbszörözéséhez, miközben minden memória-hozzáféréshez csak egy vagy kettő kellett. Ez azt jelentette, hogy a memória jelentős ideig inaktív volt. Ezt a tétlen időt használta ki a 6600.

A CDC 6600 egy egyszerűsített főprocesszort használt, amelyet a matematikai és logikai műveletek lehető leggyorsabb végrehajtására terveztek. Ehhez a lehető legkisebbre kellett készíteni, hogy csökkentse a kábelezés hosszát és a kapcsolódó jelkésleltetéseket. Ez vezetett a gép (többnyire) kereszt alakú fő házához, amelyben a központi áramköri lapok a központ közelében voltak elrendezve. A CPU-t tíz perifériás processzor támogatta, amelyeket bemenetre / kimenetre és adatátvitelre használtak a CPU-hoz. Az 6600 használt 60 bites szó és az ember kiegészítője képviselete egész számok, amelyek később a CDC gépek fenn, amíg az 1980-as évek. Ez tette őket az utolsó ilyen architektúrájú rendszerré az UNIVAC 1100/2200 és néhány DSP mellett .

Ahelyett, hogy minden számítási és vezérlési feladatot elvégezne, mint a többi CPU, a 6600 CPU csak aritmetikai és logikai műveleteket hajtott végre. Ez lehetővé tette egy sokkal kisebb CPU-t, amely nagyobb órajelen működhet. A szilícium tranzisztorok nagyobb kapcsolási sebességével kombinálva az új CPU kialakítás messze felülmúlta az akkor elérhető összes alternatívát. Az új kialakítás 10 MHz-en (100 ns órajel) körülbelül tízszer gyorsabban működött, mint a piacon lévő többi gép. Az egyszerű processzor nemcsak gyorsabb volt, hanem kevesebb óraciklus alatt végrehajtotta az utasításokat is. Például a CPU tíz ciklusban képes elvégezni a szorzást.

Perifériás processzorok (tulajdonságok)

A CPU csak korlátozott számú egyszerű utasítással rendelkezett: míg a korszak tipikus CPU -inak összetett utasításkészlete volt , amely utasításokat tartalmazott minden normál "háztartási" feladatra, például a memória elérésére és a bemenetre / kimenetre , Cray ezeket a parancsokat a 6600 ehelyett külön, egyszerűbb „perifériás processzorokban” (PP), amelyeket kizárólag ilyen feladatokra szántak. Ennek eredményeként a CPU sokkal kisebb utasításkészlettel sikerült. Ez volt az első megvalósítása annak, ami később Reduced Instruction Set Computer (RISC) néven vált ismertté .

A CPU, a perifériás processzorok és az I / O párhuzamos működése jelentősen növelte a gép teljesítményét. Rendszerint egy több processzorral rendelkező gép sokkal többe került volna. A 6600 tervezésének kulcsa az volt, hogy a PP-ket a lehető legegyszerűbbé tegyék. Ezek az egyszerű, 12 bites CDC 160-A -n alapultak , amely sokkal lassabban futott, mint a CPU, adatokat gyűjtött és törésként nagy sebességgel dedikált hardveren keresztül továbbította a fő memóriába.

A 10 projekt gyakorlatilag megvalósult; csak egy processzor volt hardverként. Ez 10 PP regiszterkészlettel működött, amelyek a 10 PP példányt reprezentálták (hasonlóan a modern többszálas processzorokhoz), és ezeket hordónak hívták . Átvitt értelemben a hordó lépésről lépésre „megfordult” , és minden egyes PP regiszterkészletet a PP CPU nyílásához rendeltek . A CPU részben vagy egészben végrehajtotta az adott PP parancsát, ezután a hordó újra „megfordult”, és a következő PP regiszterkészletét (állapotát) rendelte hozzá a CPU-hoz. A hordó több "fordulatára" volt szükség egy utasítás feldolgozásához. A teljes hordó "fordulat" 1000 nanoszekundumot (PP / 100 nanoszekundum) vett igénybe, egy utasítás pedig egy vagy öt "fordulatot" vett igénybe, vagy több adatátviteli parancs esetén.

Utasításkészlet architektúra

A 6600-as CPU-t ma RISC- rendszernek neveznék , amelyben a processzort viszonylag egyszerű parancsokhoz tervezték, amelyeknek csak korlátozott és pontosan meghatározott memória-hozzáférésük van. Sok más gép összetett utasításokat használ - például lekér egy operandust a memóriából, és egyetlen gépi utasítással hozzáadja a regiszterhez. A 6600-on az érték memóriából való betöltése külön parancsot igényelt, és hozzáadott egy másodpercet. Elméletileg a további memóriaelérések lassabbá tették a feldolgozást, de ezt ellensúlyozta az a tény, hogy a jól elrendezett kód egyszerre több parancsot is képes feldolgozni. Ez az egyszerűsítés arra is rákényszerítette a programozókat, hogy nagyon tisztában legyenek memóriaeléréseikkel, ezért gondosan kódolják őket, hogy a lehető legnagyobb mértékben csökkentsék őket.

Modellek

A CDC-6000 sorozat négy alapmodellt tartalmazott: a CDC 6400, CDC 6500, CDC 6600 és CDC 6700. Ezek csak CPU-jukban különböztek meg, amelyek kétféle típusúak voltak: a 6400 CPU és a 6600 -CPU. A 6400-as processzor egyetlen, átfogó számtani egységgel rendelkezett, és külön számtani egységekkel nem rendelkezett . Ezért az utasítások végrehajtási ideje nem fedheti egymást. Például, ha egy összeadási utasítás azonnal követte a szorzási utasítást egy 6400-as CPU-ban, az összeadás csak a szorzás befejezését követően kezdődhetett el, így a két utasítás teljes végrehajtási ideje az egyes végrehajtási idők összege volt. Ezzel szemben a 6600-as processzornak több aritmetikai egysége volt, amelyek egyszerre működhettek, azaz. H. " Párhuzamos ", amely lehetővé tette a CPU számára, hogy átfedje a parancsok végrehajtási idejét. Például egy 6600-as CPU már a következő CPU-ciklusban elkezdhette az összeadási utasítás végrehajtását a szorzási utasítás megkezdése után (természetesen feltéve, hogy a szorzás eredménye nem az összeadás operandusza volt); ezért a két utasítás teljes végrehajtási ideje egyszerűen a szorzó utasítás (hosszabb) végrehajtási ideje volt. A 6600 CPU-ban volt egy utasítás verem is , az utasítások gyorsítótárának egy típusa , amely elősegítette a CPU áteresztőképességének növelését azáltal, hogy csökkentette a CPU üresjárati idejét, amelyet a memória várakozása okoz az utasítások újratöltésére. A két típusú CPU utasításokkal kompatibilis volt, így egy program, amely a kettő egyikén futtatható, a másikra is futtatható, de a 6600-as processzorral gyorsabban. Valójában a 6000-es sorozat modelljei teljesen kompatibilisek voltak egymással. A CDC 6400 egy CPU-val (egy 6400 CPU), a CDC 6500 két CPU-val (mind 6400 CPU), a CDC 6600 egy CPU-val (egy 6600 CPU) és a CDC 6700 két CPU-val (egy 6600 CPU és 6400 CPU) rendelkezik PROCESSZOR).

Központi processzor (CP)

A CDC 6 × 00 nyilvántartása
5 9 . . . 1 7 . . . 0 0 (Bit pozíció)
Operandus regiszter (60 bites)
X0 Regisztráció 0
X1 Regisztráció 1
X2 2. regisztráció
X3 3. regisztráció
X4 Regisztráció 4
X5 5. regisztráció
X6 Regisztráció 6
X7 7. regisztráció
Címjegyzék (18 bites)
  A0 0 cím
  A1 Cím 1
  A2 cím 2
  A3 3. cím
  A4 4. cím
  A5 5. cím
  A6 6. cím
  A7 7. cím
Növekményregiszter (18 bites)
  B0 (minden bit nulla) Növekmény 0
  B1 1. növekmény
  B2 2. növekmény
  B3 3. növekmény
  B4 4. növekmény
  B5 5. növekmény
  B6 6. növekmény
  B7 7. növekmény

A 6400, 6500 és 6600 gépek központi processzora (CP) és fő memóriája 60 bites szóhosszal rendelkezett. A CP-nek nyolc általános célú 60 bites X0-X7 regisztere volt, nyolc 18-bites A0-A7 címregiszter és nyolc 18-bites B0-B7 "növekményes" regiszter volt. A B0-t a hardver tartósan nullán tartotta. Számos programozó hasznosnak találta a B1 1-re állítását, és hasonlóan fix értékként történő kezelését.

Nem voltak CP utasítások a bemenetre és a kimenetre; ezeket perifériás processzorokon (PP, lásd alább) keresztül hajtottuk végre. A fő memória és a regiszterek között nem voltak külön opkódok sem a betöltéshez, sem a mentéshez. Ehelyett ez bizonyos A regiszterekhez való hozzárendelés mellékhatásaként következett be: Az A1 érték A5-re állításával az ezen a memóriacímen lévő szót X1-ből X5-be töltötték be, az A6 vagy A7 beállításával X6-ból vagy X7-ből mentettek egy szót. Az A0-hoz nem társult mellékhatás. Külön hardverterhelő / tároló egység, a kaszkadőr doboz hajtotta végre a tényleges adatmozgást az utasításfolyam-művelettől függetlenül, így más műveleteket is be lehet fejezni, miközben a memória még mindig elérhető volt; ehhez jobb esetben nyolc ciklus kellett.

A 6600-CP tíz párhuzamos funkcionális egységet tartalmazott, amelyekkel egyszerre több utasítás is feldolgozható. Ma ezt szuperskáláris processzortervnek nevezik , de akkoriban egyedülálló volt. A legtöbb modern CPU-tervvel ellentétben a funkcionális egységeket nem csővezetékkel kötötték össze. A funkcionális egység foglalt volt, amikor utasítást kaptak, és így maradt az utasítás teljesítéséhez szükséges teljes idő alatt. (Ezzel szemben a CDC 7600 számtani egységeiben a csővezeték bevezetése megtörtént.) Legjobb esetben mindannyian 100 ns parancsot kaphatnának egy számológéphez. A rendszer a lehető leggyorsabban, általában gyorsabban olvassa és dekódolta a memóriából az utasításokat, mint amennyit végre tudtak hajtani, és továbbította őket az aritmetikai és logikai egységekhez feldolgozás céljából. Ezek voltak:

  • Lebegőpontos szorzás (két eset)
  • Lebegőpontos felosztás
  • Lebegőpontos összeadás
  • "Hosszú" egész szám
  • Inkrementáló (két példány; végrehajtott memória betöltése / mentése)
  • váltás
  • Logikai logika
  • ág

A lebegőpontos műveletek nagy szerepet játszottak ebben az architektúrában: a CDC 6600 (és hozzátartozói) gyakorlatilag egyedüli képesek voltak egy 60 bites lebegőpontos szorzást elvégezni egy ághoz hasonló időben.

60 bites fixpont összeadást és kivonást hajtottunk végre a Long Add Unit- ban, negatív számokkal kiegészítve . A fixpontos szorzást speciális esetként hajtottuk végre a lebegőpontos szorzó egységben. Ha a kitevő nulla volt, az FP egység 48 bites egypontos lebegőpontos szorzást hajtott végre, és a felső részt kitette a kitevővel, 48 bites egész eredményt eredményezve. Az egész számfelosztást makró hajtotta végre, amely lebegőpontos számokká és vissza váltott.

A korábban végrehajtott utasításokat egy nyolc szavas gyorsítótárban, veremnek nevezték el . A veremben történő ugrások gyorsabbak voltak, mint a veremen kívüli ugrások, mert nem volt szükség memórialetöltésre. A verem egy feltétel nélküli ugrási utasítással törölve lett, így a ciklus végén a feltétel nélküli ugrásokat általában feltételes ugrásokként írták, amelyek mindig sikeresek voltak.

A rendszer 10 MHz-es órát használt, négyfázisú jellel. A lebegőpontos szorzás tíz ciklust vett igénybe, a 29. osztás, és a teljes teljesítmény, beleértve a memória késleltetéseit és egyéb problémákat, körülbelül 3  MFLOPS volt . A rendelkezésre álló legjobb fordítókkal a FORTRAN programok a gépelőzmények vége felé körülbelül 0,55 MFLOPS folyamatos kimenettel számolhatnak.

Tárolás szervezése

A felhasználói ügynökök csak a fő memória összefüggő területét használhatják. A memória azon részét, amelyhez egy futó program hozzáférhetett, az RA (relatív cím) és az FL (mező hossza) regiszterek határozták meg, amelyekhez a felhasználói programnak nem volt hozzáférése. Amikor egy felhasználói program megpróbált egy szót olvasni vagy írni a fő memóriába az a címen, a processzor először ellenőrizte, hogy a értéke 0 és FL-1 között van-e. Ebben az esetben a processzor az RA + a címen érte el a fő memóriában lévő szót. Ezt a folyamatot bázishoz kötött áthelyezésnek nevezték . Minden alkalmazás a fő memóriát az FL hosszúságú szavak összefüggő blokkjának tekintette, kezdve a 0 címmel; valójában a program bárhol lehet a fizikai memóriában. Ezzel a technikával az operációs rendszer bármilyen alkalmazási programot áthelyezhet a fő memóriába, amennyiben az RA regiszter tükrözi a memóriában elfoglalt helyét. Az operációs rendszer megszakította és megszakította azt a felhasználói programot, amely a megengedett tartományon kívül (azaz nem kevesebb, mint FL címmel) próbál hozzáférni a memóriához. Ebben az esetben az operációs rendszer létrehozhatott egy magdumpot, amely rögzítette a program memóriájának tartalmát, és fájlba mentette, hogy a program fejlesztője tudja, mi történt. Vegye figyelembe a virtuális tárolórendszerrel való különbséget ; ebben az esetben a folyamat teljes címezhető memóriaterületének a fő memóriában kell lennie, összefüggőnek kell lennie, és mérete nem lehet nagyobb, mint a tényleges memóriakapacitás.

A CDC 6000 sorozat első hét példányának kivételével minden eszköz konfigurálható egy opcionális Extended Core Storage (ECS) rendszerrel. Az ECS a főmemóriától eltérő típusú alapmemóriából készült, amelyet magonként csak két huzal huzalozott, szemben az öt huzallal. Ez lassabbá tette, mint a fő memória, de gazdaságosabb volt előállítani. Mivel nagyon széles átvitelt hajtott végre, szekvenciális átviteli sebessége megegyezett a fő memóriáéval. Egy 6000 CPU blokk memória átvitelt hajthat végre közvetlenül a felhasználó programja (vagy operációs rendszere) és az ECS egység között. Széles adatútvonalakat használtak, így ez nagyon gyors művelet volt. A fő memóriához hasonlóan az ECS memóriakorlátjait az operációs rendszer kezelte, relatív cím / mezőhossz mechanizmussal. Az ECS különféle célokra használható, ideértve a felhasználói adattömböket is, amelyek túl nagyok ahhoz, hogy a központi tárhely gyakran használt fájlokat tároljon, kirakodhasson, és akár kommunikációs útvonalként is egy több mainframe komplexumban.

Perifériás processzorok (PP)

A CPU-nak más tervezésben kijelölt "háztartási feladatok" kezelésére Cray további tíz processzort adott hozzá, amelyek közül néhány korábbi CDC 160-A számítógépén alapult. Ezek a perifériás processzoroknak vagy PP-knek nevezett számítógépek önmagukban teljes értékű számítógépek voltak, de az I / O feladatokra és az operációs rendszer futtatására voltak optimalizálva. (Az operációs rendszer jelentős része a PP-ken futott, így a központi processzor teljesítményének nagy része továbbra is elérhető volt a felhasználói programok számára.) Csak az PP-knek volt hozzáférése az I / O csatornákhoz. Az egyik PP feladata volt a gép átfogó irányítása, beleértve a fő CPU-n futó program vezérlését, míg a másiknak különféle I / O feladatokat rendeltek. Ha a CP programnak egy operációs rendszer funkciót kellett végrehajtania, akkor kérelmet nyújtott be egy meghatározott memóriahelyre (referencia cím + 1), amelyet a PP0 figyelt. Ha szükséges, a PP0 kijelölt egy másik PP-t a szükséges kód betöltéséhez és a kérés feldolgozásához. A PP ezután törölte az RA + 1-et, hogy tájékoztassa a CP programot a feladat befejezéséről.

A PP0 különleges szerepe a gép irányításában egyetlen meghibásodási pont volt , mivel meghibásodása esetén az egész gép meghibásodhat, még akkor is, ha a kilenc másik PP és a CPU még mindig megfelelően működött. Cray orvosolta ezt a gyenge pontot a 7600-as utódmodell kialakításában azzal, hogy minden PP-nek vezérlőnek, a CPU-nak pedig ezt a szerepet egy másikhoz rendelte.

Minden PP-nek saját memóriája volt, 4096 12 bites szóval; ezt a memóriát mind I / O pufferelésre, mind program tárolására használták. Ezzel szemben a tíz PP közös processzort használt a konfigurációban, amelyet úgy hívtak, hogy barrel and slot . Ez azt jelentette, hogy a rés (processzor) végezzük egy utasítást ciklus első PP, akkor egy ciklusban a második, és így tovább, egy kerek-robin módon. Ezt mind költség-okokból, mind azért, mert 10 CP órajelre volt szükség a CP memória eléréséhez: Ha egy PP elérte a CP memóriát, akkor az adatok rendelkezésre álltak, amikor legközelebb a PP megkapta a résidőt.

Szóhosszak, karakterek

A központi processzor 60 bites, míg a perifériás processzorok 12 bites szavakkal rendelkeztek. A CDC a bájt kifejezést használta a PP által használt 12 bites egységekre. A karakter hossza 6 bit volt, a CP utasításai pedig 15 vagy 30 bitek voltak, aláírt 18 bites címmezővel, ez utóbbi lehetővé tette a központi memória 128K szóból álló, közvetlenül címezhető tárhelyet. (Modern 8 bites bájtokban kifejezve ez 0,94 MB volt.) A címregiszterek aláírt jellege egyetlen programot 128K szóra korlátozott. (A későbbiekben a CDC 6000 kompatibilis gépek 256 KB vagy több fő memóriával rendelkezhetnek, ha a költségkeret megengedett, de az egyes felhasználói ügynökök továbbra is csak 128 KB szavakra korlátozódtak.) A CPU utasításainak egy szóhatáron kellett kezdődniük, amikor egy ugró utasítás vagy egy szubrutin visszatérés, néha op-no utasításokra van szükség a szó utolsó 15, 30 vagy 45 bitjének kitöltéséhez. Tapasztalt összeszerelő programozók optimalizálhatták programjaikat úgy, hogy kitöltik ezeket az opció nélküli területeket más utasításokkal, amelyekre a későbbiekben a programban szükség volt.

A CDC Display Code nevű kódolás 6 bites karaktereit legfeljebb 10 karakter tárolására lehet használni egy szóban. 64 karakterből álló karakterkészletet engedélyeztek, amely elegendő minden nagybetűre, számjegyre és néhány írásjelre, mindenesetre a FORTRAN írásához, vagy pénzügyi vagy tudományos jelentések nyomtatásához. Valójában a CDC megjelenítési kódot két változatban használták - 64 karakterben és 63 karakterben. A 64 számjegyű karakterkészletnek az volt a hátránya, hogy két egymást követő kettőspont karaktert egy sor végének értelmeztek, ha egy 10 bájtos szó végén voltak. Egy későbbi változatot, az úgynevezett 6/12 megjelenítő kódot , szintén alkalmazták a KRONOS és a NOS időmegosztó rendszerekben annak érdekében, hogy a teljes ASCII karakterkészletet nagyrészt kompatibilis legyen a régebbi szoftverekkel.

Mivel nem voltak utasítások a bájtok címzésére, kódot kellett írnia, hogy a karaktereket szavakba csomagolja és mozgassa őket. A nagyon nagy szavak és a viszonylag kicsi memória kapacitás azt jelentette, hogy a programozók gyakran úgy mentették meg a memóriát, hogy az adatokat bit szintre tették szavakba.

A hosszú szóhossz és a szavanként 10 karakter miatt gyakran gyorsabb volt egyszerre több szó feldolgozása, mint kicsomagolás, feldolgozás és újracsomagolás. Például a CDC- COBOL fordító elég jól tudta feldolgozni a tizedes mezőket ezzel a technikával. Ilyen technikákat manapság gyakran alkalmaznak a jelenlegi processzorok "multimédiás" utasításaiban.

Fizikai tervezés

CDC-6600 logikai modul 64 szilícium tranzisztorral, Cordwood technológiával . A koaxiális csatlakozók tesztcsatlakozások. A modult az előlapon keresztüli vezetéssel hűtötték. A CDC 6600 csaknem 6000 ilyen modult tartalmazott.

A gépet pluszjel alakú házban helyezték el, a négy kar legkülső 46 cm-es szivattyújával és hőcserélőjével. Hűtés végeztük Freon , amely forgalomban a gépben, és át hőt egy külső hűtővíz ellátás. Mindegyik kar négy, 20 cm vastag alvázat tudott elhelyezni, középen csuklósan és könyvszerűen kinyíló módon. A „plusz” kereszteződését kábelekkel töltötték össze, amelyek összekötötték az alvázat. Az alváz számozása egytől (mind a tíz PP-vel, emlékeikkel és a tizenkét meglehetősen minimális I / O csatornával) 16-ig volt megadva. A CPU fő memóriája sok alvázon volt elosztva. Egy olyan rendszerben, amelyben csak 64K szó van a fő memóriával, a "plusz" egyik karját kihagyták.

A gép logikája körülbelül 6,4 cm négyzet alakú és 2,5 cm vastag modulokba volt csomagolva. Mindegyik modul hátulján volt egy csatlakozó (30 csap, két függőleges 15-ös sor), elöl pedig hat tesztcsatlakozó. A modult a hőelvezetés érdekében két alumínium hűtőlemez közé helyezték. Két párhuzamos áramköri lapból állt, az alkatrészek vagy az egyik áramköri lapra, vagy a két áramköri kártya közé voltak felszerelve. Ennek eredményeként nagyon nagy a csomagolási sűrűség - ami általában nem javítható, de jó hőátadási tulajdonságokkal rendelkezik, és mint az angol kordfából készült szerkezet ismert.

Operációs rendszer és programozás

Volt egy fájó pont a 6600 operációs rendszer fejlesztésében : elmulasztották a határidőket. A gépek eredetileg egy nagyon egyszerű COS (Chippewa Operating System) elnevezésű szekvenciavezérlő rendszerrel rendelkeztek , amelyet a korábbi CDC 3000 operációs rendszer alapján gyorsan „összedobtak” annak érdekében, hogy a szállítás előtt valami készen álljon a rendszer tesztelésére. A gépeket azonban egy sokkal erősebb SIPROS (szimultán feldolgozó operációs rendszer) nevű rendszerrel kellett volna szállítani , amelyet a vállalat Los Angeles-i Rendszertudományi Osztályában fejlesztettek ki . Az ügyfeleket lenyűgözte a SIPROS funkcióinak listája, és sokaknál a SIPROS-t felvették az ellátási szerződésükbe.

A SIPROS nagy fiaskónak bizonyult. A fejlesztési ütemtervek tovább csúsztak, és a CDC jelentős nyereségbe került a szállítási késedelmekért kiszabott bírságok formájában. Néhány hónapos várakozás után, amelyek egyébként készen voltak a szállításra, a projektet végül megszakították. A COS-on dolgozó programozók alig bíztak a SIPROS iránt, és tovább dolgoztak a COS fejlesztésén.

Az operációs rendszer fejlesztését ezután két táborra osztották. A CDC által engedélyezett COS fejlesztését a kaliforniai Sunnyvale szoftverfejlesztő laboratóriumában hajtották végre. Sok ügyfél végül ezzel a szoftverrel kapta a rendszereit, amelyet akkor SCOPE (Program végrehajtásának felügyeleti ellenőrzése) néven ismertek . A SCOPE 1. verziója lényegében egy szétszerelt COS volt; A SCOPE 2. verzió új eszközöket és fájlrendszereket támogatott. A SCOPE 3. verziója az állandó fájlok támogatását, az EI / 200 távoli kötegelt támogatást és az INTERCOM időmegosztási támogatást tartalmazta. A SCOPE-nak mindig jelentős megbízhatósági és karbantartási problémái voltak.

A CDC 6000 sorozatú SCOPE 3.1 az asztali CYBER emulátoron történő futtatás közben hozza létre magát

A COS földalatti fejlesztésére a minnesotai Arden Hills-i összeszerelő üzemben került sor . A MACE-t ([Greg] Mansfield és [Dave] Cahlander Executive) nagyrészt egyetlen programozó írta munkaidőn kívül, amikor gépek álltak rendelkezésre. A funkcionalitás lényegében megegyezett a COS-szal és az SCOPE 1-vel. A korábbi COS fájlrendszert megtartották, de a kód modularitása jelentősen javult a rendszer megbízhatóságának és az új tárolóeszközökhöz való alkalmazkodóképesség javítása érdekében. A MACE soha nem volt hivatalos termék, de sok vásárló meg tudta szerezni a CDC-től.

A nem hivatalos MACE szoftvert később a hivatalos SCOPE termék helyett választották ki a következő CDC operációs rendszer, a KRONOS alapjául , amelyet az idő görög istenéről neveztek el . Azt mondják, hogy Dave Mansfield felhívta a Minnesotai Egyetem könyvtárát, és ősi szót kért, ami "időt" jelent. A "Chronos" helyett "Kronos" -ot írt. A fő marketing ok a TELEX időben megosztott szolgáltatás és a BATCHIO távoli kötegelt funkció fejlesztése volt. A Kronos továbbra is használta a COS / SCOPE-1 fájlrendszert, és állandó fájlfunkciót adott hozzá.

A NOS (Network Operating System) a SCOPE és a Kronos operációs rendszerek termékeinek egységesítésére tett kísérlet . Az NOS-nak kell lennie az egyetlen operációs rendszernek az összes CDC-gépen, ezt a tényt a CDC erősen támogatta. Sok SCOPE ügyfél továbbra is szoftverfüggő volt a SCOPE architektúrától, így a CDC egyszerűen átnevezte NOS / BE (Batch Environment) névre, és azt állíthatta, hogy minden felhasználó NOS-t futtat. A gyakorlatban sokkal könnyebb volt megváltoztatni a Kronos kódbázist az SCOPE függvények hozzáadásához, mint fordítva.

Más, a vevőnek soha nem szánt operációs rendszereket is az összeszerelő üzem közelében gyártottak. Ide tartoztak az SMM mérnöki eszközök a hardveres tesztekhez és a KALEIDOSCOPE a szoftveres „füsttesztekhez”. Egy másik eszköz, amelyet a CDC terepszakemberek gyakran teszteltek, a MALET (Maintenance Application Language for Equipment Testing) volt, amelyet az alkatrészek és eszközök stressztesztelésére használtak a mérnökök javítási vagy szervizelési munkái után. A vizsgálati körülmények gyakran merevlemez-csomagokat és mágneses szalagokat használtak, amelyek szándékosan hibásak voltak annak megállapítása érdekében, hogy a hibákat felismerték-e a MALET és a technikus.

NOS 1.3

Az SCOPE és a COMPASS neveket a CDC használta mind a CDC-6000 , mind a 6600 és a CDC-3000 sorozatokhoz :

  • A COMPASS volt a gyülekezési nyelvek neve mindkét családban.
  • A 3000 és 6000 sorozat operációs rendszereit SCOPE-nak hívták.

CDC 7600

A CDC 7600- at eredetileg úgy tervezték, hogy teljes mértékben kompatibilis legyen a meglévő 6000-es gépekkel. Eredetileg CDC 6800-nak hívták. A fejlesztés során azonban a fejlesztők rájöttek, hogy a teljes kompatibilitás fenntartása a meglévő 6000-es gépekkel korlátozni fogja a teljesítmény növekedését, és úgy döntöttek, hogy feláldozzák a kompatibilitást a teljesítmény érdekében. Míg a CDC 7600 processzora lényegében utasításokkal kompatibilis volt a 6400 és 6600 processzorokkal, és lehetővé tette a kód hordozhatóságát a magasabb szintű programozási nyelv forráskód szintjén , a CDC 7600 hardvere, különösen annak perifériás processzor egységei ( PPU-k) teljesen más volt. A CDC 7600 más operációs rendszert igényelt. Ez jólesőnek bizonyult, mivel a tervezők képesek voltak javítani a 6000-es tervezés néhány jellemzőjén, például az utóbbi teljes függőségén a perifériás processzoroktól, különösen az előbbieknél (az úgynevezett PP0), hogy ellenőrizzék a készülék működését. teljes számítógépes rendszer, beleértve a CPU-t is. A 6600 CPU-val ellentétben a CDC 7600 CPU-ja vezérelheti saját működését. Valójában a 6000-es sorozatú gépeket utólag szerelték fel ezzel a funkcióval .

irodalom

web Linkek

  • Neil R. Lincoln: A számítógép-építészet és a számítógép-tervezés emlékei a Control Data Corporation-nél . Charles Babbage Intézet, Minnesotai Egyetem . 1975. Letöltve: 2019. október 7. - Neil R. Lincoln által moderált megbeszélés a Control Data Corporation (CDC) számítógép-építészetéről és tervezéséről 18 CDC mérnökkel: Robert Moe, Wayne Specker, Dennis Grinna, Tom Rowan, Maurice Hutson, Curt Alexander, Don Pagelkopf, Maris Bergmanis, Dolan Toth, Chuck Hawley, Larry Krueger, Mike Pavlov, Dave Resnick, Howard Krohn, Bill Bhend, Kent Steiner, Raymon Kort és Lincoln. A megbeszélések témái: CDC 1604, CDC 6600, CDC 7600, CDC 8600, CDC STAR-100 és Seymour Cray.
  • Gordon Bell: Seymour Cray perspektíva . In: Seymour Cray előadássorozat . Minnesotai Egyetem . 1997. november 10.. Letöltve: 2019. október 7.
  • A CDC 6600 ötéves uralma . Számítástörténeti Múzeum. 2003. Letöltve: 2019. október 7 .: "A 6600-nak 400 000 tranzisztora volt, és több mint 100 mérföld vezetéke volt." - Illusztrált áttekintés.

Egyéni bizonyíték

  1. Ennek a sajátos betűképnek a mintája megtalálható James E. Thornton: Számítógép megtervezése - The Control Data 6600 címlapján . Scott, Foresman and Co, Glenview, IL 1970, LCCN  74-096462 ( bitsavers.org [PDF; hozzáférés: 2019. október 7.]).
  2. ^ Andrew RL Cayton , Richard Sisson, Chris Zacher: Az amerikai középnyugat: értelmező enciklopédia . 2006, ISBN 0-253-00349-0 .
  3. Alexander Smith: CDC 6600 - Történelmi közjáték: A nagygépektől a miniszámítógép 2. részéig az IBM és a hét törpe - Világokat hoznak létre . Letöltve: 2019. október 7.
  4. ^ A különbség világának megteremtése: A mérnöki ötletek a valóságba . Nemzeti Műszaki Akadémia, 2014, ISBN 0-309-31265-5 : "A Seymour Cray tervezte CDC 6600 majdnem háromszor gyorsabb volt, mint napjaink következő leggyorsabb gépe, az IBM 7030 Stretch."
  5. ^ Andreas Sofroniou: Szakértői rendszerek, tudástechnika az emberi replikációhoz . 2013, ISBN 1-291-59509-0 : "1964-ben Cray CDC 6600 váltotta a Stretch-et a Föld leggyorsabb számítógépeként."
  6. ^ Sebastian Anthony: A szuperszámítógépek története . 2012. április 10. Letöltve: 2019. október 7.
  7. CDC 6600 számítógép . Encyclopædia Britannica. Letöltve: 2019. október 7.
  8. Gordon Bell: A Seymour Cray perspektíva . In: Seymour Cray előadássorozat . Minnesotai Egyetem . 1997. november 10. Letöltve: 2019. október 7 .: „A 7600-as kivitel hosszabb ideig tartott, mint bármely más szuperszámítógép-tervezés. A számítógépek közül a legnagyobb teljesítményű volt az 1969-es bevezetéstől a Cray 1 1976-os bevezetéséig. "
  9. CDC 6500 . Élő számítógépek: Múzeum + Labs. Letöltve: 2019. október 7.
  10. ^ Control Data Corporation, "Kis karakter" prototípus . Számítástörténeti Múzeum. Letöltve: 2019. október 7.
  11. A CDC 6600 megérkezik a CERN-be . 1965. január 14.
  12. Lawrence és laboratóriuma, ch. 6: Lökhárító vágása . Lawrence Berkeley laboratórium . 1996. Letöltve: 2019. október 7.
  13. CDC 6600 . Január 16, 1998 archivált az eredeti január 4-én, 2001. A lap eredeti címe október 7, 2019.
  14. Mark D. Hill, Norman P. Jouppi, Gurindar S. Sohi (Szerk.): Olvasások a számítógépes építészetben . Morgan Kaufmann, 1999, ISBN 1-55860-539-8 , pp. 11 .
  15. Az emlékeztető pontos képe megjelenik: Thomas J. Watson: Memorandum . 1963. augusztus 28. Letöltve: 2019. október 7.
  16. Mark Smotherman, Dag Spicer: Az IBM egyprocesszoros szuperszámítógépes erőfeszítései . In: CACM . szalag 53 , no. 2010. december 12. , ISSN  0001-0782 , p. 28–30 ( acm.org [Hozzáférés: 2019. október 7.]).
  17. Hardver-kézikönyv . M. átdolgozás: Control Data 6000 sorozatú számítógépes rendszerek . Nem. 60100000 . Control Data Corporation , St. Paul, MN, 1971. június 20., p. 4-3, 4-4 ( trailing-edge.com [PDF; hozzáférés: 2019. október 7.]).
  18. Control Data 6400/6500/6600 Computer Systems Reference Manual . Revision H. Control Data Corporation, St. Paul, MN, 1969. február 21. ( archive.org [hozzáférés: 2019. október 7.]).
  19. Ez a leírás a CDC szoftver korai verzióira vonatkozik; a későbbi verziók a Central Exchange jump (XJ) paranccsal csökkentették az adminisztrációs költségeket azoknál a funkcióknál, amelyeket teljes egészében végrehajthattak a CP-ben.
  20. A kifejezés kijelző kódja járt CDC hasonló módon, mint EBCDIC-t eredetileg társított IBM. A számítógép-iparban használt egyéb kifejezések a BCD és a SIXBIT voltak , utóbbiakat a DEC preferálta .
  21. DEC / PDP karakterkódok . Miami Egyetem . Archivált az eredeti március 11-én, 2019. A lap eredeti címe október 7, 2019.
  22. KRONOS 2.1 Time-Sharing Felhasználói kézikönyv . B változat: In: Control Data Cyber ​​70 sorozatú modellek 72/73/74, 6000 sorozatú számítógépes rendszerek . Nem. 60407600 . Control Data Corporation , St. Paul, MN, 1974. május 1. ( bitsavers.org [PDF; hozzáférés: 2019. október 7.]).
  23. Sebesség és teljesítmény (a számítógépek megértése) . Time Life Education, 1990, ISBN 0-8094-7587-1 , pp. 17 .
  24. ^ HD Pridmore: COMPASS programozási képzési kézikönyv . In: 3100 3200 3300 3500 Számítógépes rendszerek . Nem. 60184200 . Control Data Corporation , St. Paul, MN 1967 ( archive.org [PDF; hozzáférés: 2019. október 7.]).
  25. COMPASS kézikönyv . Verzió C. In: 3600 Computer Systems . Nem. 60184200 . Control Data Corporation , St. Paul, MN 1967. december ( bitsavers.org [PDF; hozzáférés: 2019. október 7.]).
  26. ^ "A CDC kiadta SCOPE operációs rendszerük korai verzióját a 3600" Ernest J. Henley, Jeffery Lewins (szerk.): Advances in Nuclear Science and Technology . 9. kötet. Academic Press , New York 1976, ISBN 0-12-029309-9 , pp. 309 ( korlátozott előnézet a Google Könyvkeresőben).
előző Hivatal utód
IBM 7030 Stretch A világ legerősebb számítógépe
1964–1968
CDC 7600