GCSE Von Neumann Architecture (14-16 év)

  • Egy szerkeszthető PowerPoint leckepozíció
  • Edzselhető ismétlési kézikönyvek
  • Egy szójegyzék, amely a modul kulcsfogalmait tartalmazza
  • Tematikus gondolattérképek a kulcsfogalmak vizualizálásához
  • NYomtatható tanulókártyák az aktív emlékezés és a magabiztos tanulás elősegítésére.a modul ismereteinek és megértésének tesztelésére

A-Kortárs feldolgozók szintje (16-18 évesek)

  • Egy szerkeszthető PowerPoint órai prezentáció
  • Eddíthető ismétlési kézikönyvek
  • Egy szójegyzék, amely a modul legfontosabb fogalmait tartalmazza
  • Tematikus elméleti térképek a kulcsfogalmak vizualizálásához
  • NYomtatható tanulókártyák az aktív emlékezés és a magabiztos tanulás segítésére.alapú ismétlést
  • Kvíz a válaszkulccsal a modul ismereteinek és megértésének tesztelésére

A számítógép architektúrák kifejezés olyan szabályrendszerre utal, amely meghatározza, hogy a számítógépes szoftver és hardver hogyan kombinálódik egymással, és hogyan lépnek kölcsönhatásba, hogy egy számítógép működőképes legyen, továbbá a számítógép-architektúra azt is meghatározza, hogy a számítógép milyen technológiákat képes kezelni.

A számítógép-architektúra egy olyan specifikáció, amely leírja, hogy a szoftver és a hardver hogyan működik együtt, hogy egy működő platformot hozzon létre.

Amikor valaki az “építészet” szóra gondol, az emberi elme valószínűleg az épületek vagy házak összeszerelésére gondol, ráadásul ugyanezt az elvet szem előtt tartva a számítógép-architektúra egy számítógépes rendszer belső és külső felépítését foglalja magában.

A számítógép-architektúrának három fő kategóriája van:

  • Rendszertervezés:
    • A rendszertervezés a hardverrészek, amelyek közé tartoznak a multiprocesszorok, a memóriavezérlők, a CPU, az adatfeldolgozók és a közvetlen memóriaelérés. A rendszertervezés tekinthető a tényleges számítógépes rendszernek.
  • Az utasításkészlet architektúra:
    • Ez a CPU körül forog. Magában foglalja a CPU képességeit és funkcióit, továbbá tartalmazza a CPU adatformátumait, a programozási nyelvet és a processzor regisztertípusait és utasításait, amelyeket a számítógép programozói használnak.
    • A CPU az a rész a számítógépben, amely egy programot futtat, legyen az az operációs rendszer vagy egy olyan alkalmazás, mint a Photoshop.
  • Mikroarchitektúra:
    • A mikroarchitektúra egy rendszerben meghatározza a tárolóelemet/adatútvonalakat és azt, hogy ezek hogyan lesznek implementálva az utasításkészlet-architektúrába, a mikroarchitektúra felelős az adatfeldolgozásért is.

Mindezek egy bizonyos sorrendben összeforrnak, hogy a rendszer működőképes legyen.

Mi a von Neumann-architektúra?

1945-ben John von Neumann, aki akkoriban matematikus volt, elmélyült abban a tanulmányban, hogy, egy számítógépnek lehet egy rögzített egyszerű szerkezete, és mégis képes lehet bármilyen számítást végrehajtani hardveres módosítás nélkül. Feltéve, hogy a számítógépet megfelelően programozzák a megfelelő utasításokkal, amelyekben képes azokat végrehajtani.

Von Neumann elsődleges előrelépését “feltételes vezérlés-átvitel”-nek nevezte, amely lehetővé tette, hogy egy programsorozatot megszakítsanak, majd bármely ponton újraindítsanak, továbbá ez az előrelépés lehetővé tette, hogy az adatokat az utasításokkal egy memóriaegységben tárolják.

Ez azért volt előnyös, mert ha az utasításokat kívánták, akkor azokat az adatokkal azonos módon lehet aritmetikailag módosítani.

A von Neumann-architektúra egy olyan tárolt programú digitális számítógép tervezési modelljét írja le, amely csak egyetlen feldolgozóegységet és egyetlen különálló tárolószerkezetet tartalmaz, amely az utasításokat és az adatokat egyaránt tárolja.

A von Neumann-architektúra olyan architektúrára utal, amely az adatokat és a programozott utasításokat is írható-olvasható RAM-ban (Random Access Memory) tárolja.

A von Neumann-architektúra jellemzői

Amint már említettük, a von Neumann-architektúra azon alapul, hogy a programadatokat és az utasításadatokat ugyanabban a memóriaegységben tárolják. Ezt nevezhetjük a “tárolt program koncepciójának” is.

Ezt a felépítést a napjainkban gyártott számítógépekben is alkalmazzák:

Von-Neumann vs Harvard architektúra 1. kép

Central Processing Unit (CPU):

  • A CPU egy elektronikus áramkör, amely a számítógépes program utasításait hajtja végre.
  • A CPU-t mikroprocesszornak vagy processzornak is nevezhetjük.

A CPU-n belül található az ALU, a CU és a regiszterek, amelyeket az alábbiakban részletesen ismertetünk:

Vezérlőegység:

  • Vezérli az ALU, a memória és a be- és kimenet működését, utasítja őket, hogyan reagáljanak a memóriaegységből éppen beolvasott és értelmezett program utasításaira. A vezérlőegység a következő feladatok végrehajtásával irányítja a CPU műveleteit:
    • A CPU tevékenységeinek koordinálása és irányítása
    • A többi komponens és a CPU közötti adatáramlás irányítása
    • A következő utasítás nyugtázása és elfogadása
    • Az utasítások dekódolása
    • A kapott adatok visszatárolása a memóriaegységbe

Aritmetikai és logikai egység (ALU):

  • Elvégzi a logikai és aritmetikai műveleteket, például az összeadást és a kivonást.
  • (Logikai operátorok: AND, OR, NOT, XOR)

Memóriaegység:

  • A RAM-ból áll, amely fel van particionálva, és egy címből és annak tartalmából áll, amely bináris formában van.
  • A RAM (Random Access Memory) a merevlemezekkel ellentétben gyors memóriatípus, a CPU által közvetlenül is elérhető.
  • A RAM létezése a CPU-ban, lehetővé teszi, hogy sokkal gyorsabban és ezáltal hatékonyabban működjön.

Regiszterek:

  • Kis blokk a CPU-ban, amely nagysebességű tároló memóriacellákból áll, amelyek az adatokat a feldolgozás előtt tárolják, minden logikai, aritmetikai és eltolási művelet itt történik.
  • A regiszter 5 összetevőből áll
    • Programszámláló (PC): A következő végrehajtandó utasítás címét tartja
    • Akkumulátor (AC): Tárolási terület, ahol a logikai és aritmetikai eredmények tárolódnak
    • Memória címregiszter (MAR): Tartja az adatok egy helyének címét, ahonnan olvasni vagy ahová írni kell
    • Memória adatregiszter (MDR): Ideiglenes tárolóhely, amely a beolvasott vagy még beírandó adatokat tárolja
    • Current Instruction Register (CIR): Az a terület, ahol az aktuális utasítás végrehajtása zajlik. A művelet operandusra és opkódra oszlik.
      • Operandus: Adatot vagy az adat címét tartalmazza (ahol a művelet végrehajtásra kerül)
      • Opcode: Megadja a végrehajtandó utasítás típusát

Buszok:

  • Ezek olyan párhuzamos vezetékek, amelyek a CPU-n belüli (két vagy több) komponenst kötnek össze. A CPU-n belül háromféle busz létezik, és ezeket mind rendszerbusznak nevezik. A buszok típusai a következők: Adatbusz, vezérlőbusz és címbusz.
  • Adatbusz: Ezt a buszt kétirányú busznak nevezik, ami azt jelenti, hogy a “biteket” mindkét irányba lehet szállítani. Ez a busz a processzor, a memóriaegység és a bemenet/kimenet közötti adat- és utasításszállításra szolgál.
  • Címbusz: Továbbítja a memóriacímet, amely megadja, hogy a vonatkozó adatot honnan kell elküldeni vagy lekérni. (A címbusz nem szállítja az adatokat, csak a címet)
  • Vezérlőbusz: Ez szintén egy kétirányú busz, amelyet a CPU-tól érkező “vezérlőjelek”/parancsok (és más komponensek állapotjelzései) továbbítására használnak a számítógépen belüli összes tevékenység vezérlése és koordinálása érdekében.

Bemenetek/Kimenetek:

  • A felhasználótól átadott információ/a felhasználó által kapott információ.

A von Neumann architektúra előnyei és hátrányai

Előnyei Hátrányai
A vezérlőegység az utasításokat és az adatokat ugyanúgy egy memóriaegységből hívja le. Ez leegyszerűsíti a vezérlőegység fejlesztését és tervezését A soros utasításfeldolgozás miatt a programok párhuzamos végrehajtása nem lehetséges
A fenti előny azt is jelentené, hogy a memóriából és az eszközökből származó adatokhoz azonos módon férünk hozzá. Így nő a hatékonyság Egyszerre csak egy “busz” érhető el. Ez azt eredményezi, hogy a CPU üresjáratban van (mivel gyorsabb, mint egy adatbusz) Ezt tekintik a von Neumann-féle szűk keresztmetszetnek
Egy előnyös tulajdonság, hogy a programozók irányíthatják a memória szervezését Az, hogy mind az utasítások, mind az adatok egy helyen tárolódnak, összességében előnynek tekinthető. Ez azonban azt eredményezheti, hogy a program hibájából
Ha egy hibás program nem szabadítja fel a memóriát, amikor már nincs rá szüksége (vagy nem végez vele), az a számítógép összeomlását okozhatja, a rendelkezésre álló memória elégtelensége miatt

Von Neumann szűk keresztmetszet

Mivel a processzorok, és a számítógépek az évek során a feldolgozási sebesség növekedett, és a memóriafejlesztések inkább a kapacitást, mint a sebességet növelték, ez eredményezte a “von Neumann szűk keresztmetszet” kifejezést. Ez azért van, mert a CPU nagy mennyiségű időt tölt üresjáratban (nem csinál semmit), miközben arra vár, hogy az adatokat a memóriából lehívják. Nem számít, hogy mennyire gyors a processzor, ez végső soron az átviteli sebességtől függ, ami azt illeti, ha a processzor gyorsabb, az csak azt jelenti, hogy nagyobb lesz az “üresjárati” ideje.

Az e szűk keresztmetszet leküzdésére szolgáló módszerek a következők:

  • Tárolás:
    • Az adatok, amelyek könnyebben elérhetők a RAM-ban, mint a főmemóriában tárolva. Az itt tárolt adatok típusa olyan típusú adat lesz, amelyet gyakran használnak.
  • Előhívás:
    • Az egyes adatoknak a gyorsítótárba való szállítása, mielőtt azokat kérnénk. Ez felgyorsítja a hozzáférést az adat kérése esetén.
  • Multithreading:
    • Egyszerre több kérés kezelése külön szálakban.
  • Új típusú RAM:
    • Mint például a DDR SDRAM (Double Data Rate Synchronous Dynamic Random Access Memory).
    • Ez a RAM-típus a kimenetet a rendszeróra csökkenő és emelkedő élére is aktiválja, nem csak az emelkedő élre.
    • Ez potenciálisan megduplázhatja a kimenetet.
  • RAMBUS:
    • A RAM-vezérlőt, a RAM-ot és a RAM-ot a mikroprocesszorral és a számítógépen belüli, azt használó eszközökkel összekötő busz (útvonal) alrendszere.
  • Processing in Memory (PIM):
    • A PIM-ek egyetlen mikrochipbe integrálják a processzort és a memóriát.

Mi a Harvard architektúra?

A Harvard architektúra nevét a “Harvard Mark I” relé alapú számítógépről kapta, amely egy IBM számítógép volt a Harvard Egyetemen.

A számítógép az utasításokat “lyukszalagra” (24 bit széles) tárolta, továbbá az adatokat elektromechanikus számlálókban tárolták. Ezeknek a korai számítógépes rendszereknek a CPU-ja teljes egészében tartalmazta az adattárolót, és nem biztosított hozzáférést az utasítás-tárolóhoz, mint adathoz.

A Harvard-architektúra egy olyan architektúratípus, amely az adatokat és az utasításokat külön tárolja, ezért a memóriaegységet kettéválasztja.

A Harvard-architektúrájú rendszerben a CPU képes az adatok és az utasítások egyidejű lehívására, mivel az architektúra külön buszokkal rendelkezik az adatátvitelhez és az utasításlehíváshoz.

A Harvard-architektúra jellemzői

Az architektúrák mindkét típusa ugyanazokat a komponenseket tartalmazza, a fő különbség azonban az, hogy a Harvard-architektúrában az utasításlehívások és az adatátvitelek egyidejűleg (egyidejűleg) végezhetők el (mivel a rendszer két buszon, egy az adatátvitelhez és egy az utasításlehíváshoz).

Von-Neumann vs Harvard architektúra 2. kép

A Harvard architektúra előnyei és hátrányai

előnyök hátrányok
Az utasítások és az adatok különböző buszokon történő továbbítása miatt, ez azt jelenti, hogy kisebb az adatrongálódás esélye Az egyes (adatok és utasítások) számára dedikált memóriát a gyártónak ki kell egyensúlyoznia. Ugyanis ha van szabad adatmemória, azt nem lehet utasításokra használni és fordítva
Az utasítások és az adatok ugyanúgy elérhetők Ez az előny (balra) azonban bonyolultabb architektúrát eredményez, mivel két buszra van szükség. Ami azt jelenti, hogy több időt vesz igénybe a gyártása, és drágábbá teszi ezeket a rendszereket
A Harvard-architektúra nagy teljesítményt nyújt, mivel ez az architektúra lehetővé teszi az adatok és az utasítások egyidejű áramlását. Ezeket külön memóriában tartják, és külön buszokon közlekednek Ez az architektúra azonban a nagy teljesítmény ellenére nagyon bonyolult, különösen az alaplapgyártók számára, hogy megvalósítsák
Az architektúra nagyobb memória-sávszélességgel rendelkezik, amely jobban kiszámítható, mivel az utasítások és az adatok számára külön memóriával rendelkezik Bár mint fentebb említettük, a bal oldali előny eléréséhez a Harvard architektúra két busz vezérlőegységet igényel. Ami növeli a komplexitást és megnehezíti a fejlesztést. Mindezek növelik a rendszer árát

Módosított Harvard architektúra

Von Neumann architektúra vs. Harvard architektúra:

Von Neumann architektúra Harvard architektúra
A tárolt programú számítógép koncepcióján alapul A Harvard Mark I relé alapú számítógép modellen alapul
Egyazon fizikai memóriacímet használja az utasítások és a adatok Egy utasítás és az adatok számára külön memóriacímet használ
A processzoroknak két órajelciklusra van szükségük egy utasítás végrehajtásához A processzornak csak egy ciklusra van szüksége egy utasítás végrehajtásához
A von Neumann architektúra egyszerűbb vezérlőegység-kialakításból áll, ami azt jelenti, hogy kevésbé összetett fejlesztésre van szükség. Ez azt jelenti, hogy a rendszer kevésbé lesz költséges A Harvard architektúra vezérlőegysége két buszból áll, ami bonyolultabb rendszert eredményez. Ez növeli a fejlesztési költségeket, ami drágább rendszert eredményez
Instrukciólehívások és adatátvitelek nem végezhetők el egyidejűleg Instrukciólehívások és adatátvitelek végezhetők el egyidejűleg
Laptopokban használatos, személyi számítógépekben és munkaállomásokon Jelfeldolgozásban és mikrokontrollerekben

Modifikált Harvard architektúra:

A tiszta Harvard architektúra hátránya, hogy olyan mechanizmust kell biztosítani, amely a betöltést a végrehajtandó programtól az utasításmemóriába választja el, és így a műveletre szánt adatokat az adatmemóriában hagyja.

A modern rendszerek azonban manapság csak olvasható technológiát használnak az utasításmemóriára és írható/olvasható technológiát ugyanerre a memóriára.

Ez lehetővé teszi a rendszer számára, hogy egy előre betöltött program végrehajtását lehetővé tegye, amint bekapcsolják az áramot.

Az adatok azonban ismeretlen állapotban lesznek, ezért nem tudnak előre meghatározott értékeket szolgáltatni a programnak.

A megoldás erre az, hogy gépi nyelvű utasításokat biztosítanak, hogy az utasításmemória tartalmát úgy lehessen olvasni, mintha adatok lennének, valamint hardveres utat biztosítanak.

A Harvard-architektúra legtöbb átvétele napjainkban egy módosított formája, ez az adatok és a kód közötti szigorú elválasztás feloldását szolgálja, miközben továbbra is fenntartja az eredeti Harvard-architektúra nagy teljesítményű egyidejű adat- és utasításhozzáférését.

A módosított Harvard-architektúra az eredeti Harvard-architektúra egyik változata. A kettő közötti különbség azonban az, hogy a módosított architektúra lehetővé teszi, hogy az utasításmemória tartalmát adatként lehessen elérni.

A módosított Harvard-architektúrán alkalmazott három fő módosítás a következő:

  • Split-cache architektúra:
    • Ez a módosítás a von Neumann-architektúrához nagyon hasonlóan egy olyan memóriahierarchiát épít ki, amelyben a CPU az utasítások és az adatok számára a hierarchia alacsonyabb szintjein elhelyezett gyorsítótárakat tartalmaz.
  • Instruction-memory as data architecture:
    • Ez a módosítás lehetővé teszi, hogy az utasításmemória tartalmát adatként érjük el. Ezt azért lehet hordozni, mert az adatokat nem lehet közvetlenül utasításként végrehajtani.
    • (Bár vita van arról, hogy ezt valóban “módosított” Harvard architektúrának lehet-e nevezni)
  • Data-memory-as-instruction architecture:
    • A bármely memóriaszegmensből lehívott utasítások végrehajtása, ellentétben a Harvard architektúrával, amely csak a programmemória szegmensből lehívott utasításokat tudja végrehajtani.

Összefoglaló és tények

A von Neumann-architektúra nagy előrelépés volt az 1940-es években használt programvezérelt számítógépekhez képest. Az ilyen számítógépeket úgy programozták, hogy az adat- és vezérlőjelek különböző funkcionális készletek közötti átirányítására szolgáló patch-vezetékeket és kapcsolókat helyeztek be.

Míg napjainkban a számítógépes rendszerek többsége ugyanazt a memóriát használja mind az adatok, mind a programutasítások számára.

A Harvard-architektúrájú rendszerben a CPU egyszerre képes adatokat és utasításokat lehívni, mivel az architektúrának külön buszai vannak az adatátvitelre és az utasításlehívásra.

Mi a von Neumann-architektúra?

A von Neumann-architektúra olyan architektúrára utal, amely az adatokat és a programozott utasításokat is írható RAM-ban (Random Access Memory) tartja.

A von Neumann architektúra jellemzői:

  • Central Processing Unit (CPU)
  • Control Unit
  • Arithmetic and Logical Unit (ALU)
  • Memory Unit
  • Regiszterek:
    • Kisebb költség/komplexitás a Harvard architektúrához képest
    • Takarékos

    Hátrányok:

    • Von Neumann Bottleneck
    • Nagyobb az adatvesztés esélye

    Mi a Harvard architektúra?

    • A Harvard architektúra olyan számítógépes rendszer, amely két külön területet tartalmaz az adatok és a parancsok/utasítások számára.
    • A Harvard architektúra egy olyan architektúratípus, amely az adatokat és az utasításokat külön tárolja, tehát kettéválasztja a memóriaegységet.

    Előnyei:

    • Kisebb az adatrongálódás esélye
    • Nagy teljesítmény
    • Nagyobb memória-sávszélesség

    Hátrányai:

    • bonyolult
    • drága

    Módosított Harvard architektúra:

    A módosított Harvard architektúra az eredeti Harvard architektúra egyik változata. A kettő közötti különbség azonban az, hogy a módosított architektúra lehetővé teszi az utasításmemória tartalmának adatként való elérését.

    A módosított Harvard architektúrán alkalmazott három fő módosítás a következő:

    • Split-cache architektúra
    • Instrukciómemória mint adat architektúra
    • Adatmemória mint-utasítás architektúra
    1. https://www.techopedia.com/definition/19737/harvard-architecture
    2. https://tdck.weebly.com/uploads/7/7/0/5/77052163/03_-_harvard_architecture_comparison.pdf
    3. https://getrevising.co.uk/grids/von-neumann-architecture
    4. http://differencebetween.net/technology/difference-between-von-neumann-and-harvard-architecture/
    5. https://en.wikipedia.org/wiki/Von_Neumann_architecture
    6. https://www.geeksforgeeks.org/computer-organization-von-neumann-architecture/
    7. https://www.techopedia.com/definition/32480/von-neumann-architecture
    8. http://www.computinghistory.org.uk/det/3665/John-von-Neumann/
    9. https://www.computerscience.gcse.guru/theory/von-neumann-architecture
    10. https://en.wikipedia.org/wiki/Modified_Harvard_architecture
    11. https://www.edaboard.com/threads/harvard-vs-modified-harvard-architechture.111764/

Articles

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.