1. Neumann-elvű számítógépek:
· A gép vezérlése tárolt program alapján történik.
· A gép irányítása vezérlésáramlásos rendszerű, azaz a számítógép vezérlő egysége a tárolt program utasításait egyenként sorra véve oldja meg az adott feladatot. az automatikus programvégrehajtás egyszerűsítése végett a vezérlő egységben egy utasításszámláló regiszter tárolja a soron következő utasítás tárolóbeli helyének címét.
· A gép egy közös tárolót tartalmaz, amely egyaránt tárolja a program utasításait és az utasítások által feldolgozandó adatokat is. A program és az adatok kódolására bináris kódrendszert alkalmaz.
· A program utasításai által kívánt aritmetikai és logikai műveletek elvégzésére egy önálló egység, az ALU szolgál.
· Az adatok és a program bevitelére/kihozatalára önálló egységek szolgálnak.
A teljesítmény növelésében akadályt jelent a processzor és a tároló közötti adatátviteli sebesség korlátozottsága, amelyet a közös program- és adattárolás, vagyis az utasítások soros feldolgozása csak fokoz.
A Neumann-elvű gépek az SISD csoportba tartoznak. A működésük gyorsításához, a teljesítmény növeléséhez kevés lehetőség van.
· A számítógép erőforrásainak egyenletesebb leterhelésére a multiprogramozott üzemmódot alkalmazzák.
· A funkcionális egységeket többszörözik, multifunkcionális processzort alakítanak ki.
· A processzor tevékenységeket és az I/O műveleteket átlapolással, spooling technikával oldják meg.
2. Harvard-architektúrájú számítógépek:
A Harvard-architektúrájú számítógépek felépítése ugyanaz, mint a Neumann-elvű gépeké, csupán abban különbözik, hogy külön program és külön adattárolót használ a processzor. A két tárolási funkció szétválasztásával csökken a közös sínrendszer használatából eredő szűk keresztmetszet, így növelhető a gép teljesítménye. Ezek a gépek szintén az SISD csoportba tartoznak.
A külön tárolók használata megszünteti a programutasítások felülírásának lehetőségét, így a futó program nem tudja módosítani önmagát.
3. Vektorszámítógépek:
A matematikai-tudományos számítások körében gyakran kell számsorozatokkal, vektorokkal műveleteket végezni. Ezekre a műveletekre jellemző, hogy azonos számításokat kell elvégezni egymás után. Az adatsoron történő műveletvégzés lehetőséget ad azok átlapolt (pipeling) végrehajtására és ezzel a teljesítmény növelésére.
A vektorszámítógépek a folyamatok kezelése szempontjából az SIMD csoportba tartoznak. A vektorprocesszorok teljesítménye függ az adatátlapolás hosszától. Minél több elem feldolgozását lehet átlapolni, annál inkább növekszik a processzor teljesítőképessége. Meg kell oldani a vektorelemek tárolóból történő lehívásának és visszatöltésének hatékony módját is, hiszen a tároló elérési ideje jelentősen csökkenti a számítógép teljesítményét. Ennek megakadályozására a műveletvégző egység előtt és után regiszterláncot alkalmaznak az adatok ideiglenes tárolására, és a tárolóterület több részre felosztva, a vektorelemeket sorra az egymást követő memóriablokkból készíti elő a processzor.
Teljesítőképességüket erősen rontja az, ha skalár mennyiségekkel kell dolgoznia, mert áthaladásuk a feldolgozó láncon időveszteséget okoz, ezért a vektorprocesszorok mellett külön processzor áll rendelkezésre.
4. Tömbprocesszoros számítógépek:
A tömbprocesszoros számítógépek a vektorszámítógépek továbbfejlesztett változata. A gépek több processzorral és ehhez kapcsolódó memóriamodullal rendelkeznek.
A vektor- és mátrixműveletek végrehajtásának sebessége nagymértékben növelhető, ha valódi párhuzamos műveletvégzés (nem átlapolás) történik a gépekben, vagyis minden processzoron ugyanazt a műveletet hajtja végre a gép, a vektorok vagy a mátrixok különböző elemeivel. Ezek a gépek is az SIMD csoportba sorolhatók.
A processzorokat és a memóriamodulokat egy vezérelhető kapcsolóhálózat köti össze, amely lehetővé teszi bármelyik processzor összekapcsolását bármelyik modullal.
5. Multiprocesszoros számítógépek:
A teljesítőképesség növelésének következő lépcsőfoka a több processzor használata. Lényeges, hogy a processzorok között feladatmegosztás legyen.
Ezek a gépek az MIMD kategóriába tartoznak.
A processzorok közötti, illetve a processzorok és a megosztott memóriamodulok kapcsolatok megvalósítására szolgáló hálózat statikus és dinamikus is lehet. Statikus hálózat esetében a processzorok között állandó struktúrájú a kapcsolatok kiépítése, dinamikus hálózat esetében a processzorok közötti kapcsolatokat igényeknek megfelelően lehet kialakítani.
A csomópontokban (processzorokban) elhelyezkedő egységek között az adatok továbbítása általában egységes formájú üzenetekben történik. Az üzenetek tartalmazzák a célállomás (fogadó processzor) azonosítóját, valamint a feldolgozandó adatokat és egyéb kiegészítő információkat.
6. Adatvezérelt számítógépek:
Az adatvezérelt számítógépek alapjaiban különböznek a Neumann-elvű gépektől. A vezérlés-áramlásos soros utasítás-feldolgozása helyett a feladatokhoz szükséges adatoktól függ a műveletek végrehajtása.
A számítógép logikai struktúráját az elvégzendő műveletek egymáshoz kapcsolódását leíró adatáramlási gráf határozza meg. A csomópontokhoz vannak hozzárendelve az elvégzendő műveletek. Egy-egy ilyen hozzárendelés aritmetikai és logikai műveletek elvégzését, több befutó adat közüli választást, egy adat valamely irányba történő irányítását eredményezi. A gráf éleihez a csomópont által igényelt adatok, illetve a művelet eredményeként keletkező adatok vannak hozzárendelve. Az adatáramlási gráf alapján készíti el a fordítóprogram annak programgráfját, amely kijelöli a műveletet és a kapcsolódó adatokat.
Az adatvezérelt számítógépek multiprocesszoros rendszerek, amelyben a processzorokat egy kapcsolóhálózaton keresztül kötik egymáshoz és minden ütemben az adatok egy-egy processzor-pár között mozognak az adatokban előírt módon.
Minden körben a bemeneti adatok és a kimeneti adatok (eredményadatok) kiegészítésre kerülnek a következő elvégzendő utasítás azonosítójával, majd a megjelölt utasítás alapján, a rendszer összepárosítja azzal az adattal, amelynek utasításazonosítója ugyanaz. Ezt követően a programtárolóból kikeresi az utasítás műveleti kódját és hozzáteszi az adatcsomaghoz, majd ezt még kiegészíti az eredmény következő felhasználási helyének címével. Az így összeállított adatcsomag kerül a processzorba, ahol az előírt utasítás végrehajtása megtörténik. A kapott eredmény a kapcsolóhálózat segítségével jut tovább a következő végrehajtási lépés előkészítési fázisába, vagy kerül ki a gépből.
Neumann-elvű számítógépek felépítése, erőforrásai
A Tipikus architektúra-elvek alatt már szó volt a Neumann-elvű gépekről. Mivel a PC-k is ebbe a csoportba tartoznak, bővebben kitérünk erre az elvre.
A hagyományos (Neumann-elvű) számítógépek felépítésének kidolgozásában hatalmas szerepet játszott a magyar származású Neumann János. Az 1940-es évek közepén fejlesztették ki azt a számítógépet, amely tárolt program alapján dolgozott soros feldolgozás szerint. A mai számítógépek többsége így működik.
A közös adat- és programtároló alkalmazásának következménye az, hogy a program utasításait a végrehajtás során át lehet írni - mintha az is adat volna. Ezt a lehetőséget ma már nem célszerű kihasználni, hiszen egyrészt a rendelkezésre álló tárolóhely nagysága már többnyire elegendő, másrészt a programok bonyolultsága olyan fokú lett, hogy az ellenőrizhetőség hosszadalmas.
Az automata gép hatékonyságának növelésére különböző önálló egységeket hoztak létre. A mikroszámítógépek esetében ez az elkülönítés már igen jól látható, mivel az egyes egységek vagy egy-egy integrált áramköri egységben (IC-ben), vagy egy-egy áramköri kártyán találhatók.
A számítógép több funkcionális 5 főegységre bontható. Ez a központi egység, a háttértárolók, a perifériák és a sínrendszer.
A különböző egységek mindig az alaplapon, vagy az alaplapra kapcsolva találhatók. A PC alaplapja a processzorra, a memóriára és a sínrendszerre épül. Erre kapcsolódnak a különféle perifériák.