Mi az Instruction Pipeline?

Mi az Instruction Pipeline?

Minden processzor utasításnak több szakasza van a működéséhez. Ezen szakaszok mindegyike egyetlen CPU ciklust vesz igénybe. Ezek a szakaszok az utasítás lekérése, az utasítás dekódolása, a végrehajtás, a memória hozzáférés és a visszaírás. Illetve megkapják a kitöltendő utasítást, elválasztják a műveletet a kezelt értékektől, végrehajtják a folyamatot, megnyitják azt a regisztert, amelyre az eredményt írják, és az eredményt beírják a megnyitott regiszterbe.

Történelmi In Order feldolgozók

A korai számítógépeken a CPU nem használt utasítási folyamatot. Ezekben a CPU-kban minden egyciklusos műveletnek minden utasításhoz meg kellett történnie. Ez azt jelentette, hogy öt óraciklusba telt az átlagos utasítás teljes feldolgozása, mielőtt a következő elindítható lett volna. Előfordulhat, hogy egyes műveleteknél nem kell eredményt kiírni a regiszterbe, ami azt jelenti, hogy a memóriaelérési és -visszaírási szakaszok kihagyhatók.

Mi az Instruction Pipeline?

Csővezeték nélküli szubskaláris processzorban az egyes utasítások minden része sorrendben kerül végrehajtásra.

Van azonban egy probléma, amikor egy teljes utasítást lefuttat, mielőtt továbblépne a következő utasításra. A probléma a gyorsítótár hiánya. A CPU az általa aktívan feldolgozott adatokat a regiszterben tárolja. Ez egyciklusos késleltetéssel érhető el. A probléma az, hogy a regiszter kicsi, mert a processzormagba van beépítve. A CPU-nak a nagyobb, de lassabb L1 gyorsítótárba kell lépnie, ha az adatok még nem lettek betöltve. Ha nincs ott, akkor újra a nagyobb és lassabb L2 gyorsítótárba kell mennie. A következő lépés az L3 gyorsítótár; az utolsó lehetőség a rendszer RAM. Ezen opciók mindegyikének ellenőrzése egyre több CPU-ciklust igényel.

Ez az extra késleltetés nagy problémát jelenthet egy olyan rendszerben, amelynek minden utasítást a következő utasítás megkezdése előtt teljesen végre kell hajtania. Az 5-ciklusú, utasításonkénti processzor hirtelen lefagyhat egy utasításra több tucat vagy több száz órajel ciklusra. Mindeközben semmi más nem történhet a számítógépen. Technikailag ez némileg enyhíthető két független maggal. Azonban semmi sem akadályozza meg mindkettőjüket abban, hogy ugyanazt, potenciálisan egyidejűleg tegyék. Tehát a többmagos útvonalon haladva ez nem oldódik meg.

A klasszikus RISC Pipeline

A RISC a Reduced Instruction Set Computer rövidítése . Ez egy olyan processzortervezési stílus, amely optimalizálja a teljesítményt azáltal, hogy megkönnyíti az egyes utasítások dekódolását. Ez összehasonlítható a CISC-vel vagy a Complex Instruction Set Computerrel, amely összetettebb utasításkészleteket tervez, amelyek lehetővé teszik, hogy ugyanazon feladatok végrehajtásához kevesebb utasításra legyen szükség.

A klasszikus RISC dizájn tartalmaz egy utasítási csővezetéket. Ahelyett, hogy egy adott ciklusban az öt utasításszakasz bármelyikét futtatná, a folyamat lehetővé teszi mind az öt szakasz végrehajtását. Természetesen nem futtathatja le egy ciklusban egy utasítás mind az öt szakaszát. De sorba állíthat öt egymást követő utasítást egy-egy szakasz eltolással. Így minden óraciklusban egy új utasítás teljesíthető. Potenciális 5-szörös teljesítménynövekedést kínál a mag összetettségének viszonylag alacsony növekedéséhez.

Mi az Instruction Pipeline?

Egy skaláris csővezetékes processzorban az utasítások végrehajtásának minden szakasza órajelenként egyszer végrehajtható. Ez ciklusonként egy befejezett utasítás maximális átvitelét teszi lehetővé.

Azok a processzorok, amelyek nem rendelkeznek csővezetékkel, mindig csak szubskalárisak lehetnek, mivel nem tudnak ciklusonként egy teljes utasítást végrehajtani. Ezzel az elsődleges ötlépcsős folyamattal olyan skaláris CPU-t készíthet, amely minden folyamathoz képes végrehajtani egy utasítást. Még nagyobb horderejű csővezetékek létrehozásával szuperskaláris CPU-kat készíthet, amelyek egynél több utasítást tudnak végrehajtani órajelenként. Természetesen továbbra is vannak potenciális problémák.

Még mindig szekvenciális

Ezek egyike sem oldja meg azt a problémát, hogy több cikluson át kell várni a válaszra, amikor a gyorsítótár és a RAM különböző szintjeit kell lekérdezni. Ez egy új problémát is bevezet. Mi van akkor, ha az egyik utasítás az előző utasítás kimenetére támaszkodik? Ezeket a problémákat egy fejlett diszpécser önállóan oldja meg. Gondosan megtervezi a végrehajtás sorrendjét, hogy ne legyenek túl közel egymáshoz a másik kimenetére támaszkodó utasítások. A gyorsítótár hiányosságait is kezeli azáltal, hogy leparkolja az utasításokat, és a folyamatban lévő más utasításokkal helyettesíti, amelyek készen állnak a futtatásra, és nem igényelnek eredményt, és folytatja az utasítást, amikor az kész.

Ezek a megoldások működhetnek unpipelin processzorokon is, de szükség van rájuk olyan szuperskaláris processzorokhoz, amelyek óránként egynél több utasítást futtatnak. Az elágazás-előrejelző szintén nagyon hasznos, mivel megpróbálhatja megjósolni egy több lehetséges kimenetelű utasítás kimenetelét, és továbbra is feltételezi, hogy az helyes, hacsak az ellenkezőjét nem bizonyítják.

Következtetés

Egy folyamat lehetővé teszi a processzor összes különálló képességének használatát minden ciklusban. Ezt a különböző utasítások különböző szakaszainak egyidejű futtatásával teszi. Ez még csak nem is bonyolítja a CPU tervezését. Azt is megnyitja, hogy ciklusonként egynél több utasítás hajtson végre egyetlen szakaszt.


Merevlemez klónozása

Merevlemez klónozása

A modern digitális korban, ahol az adatok értékes eszközök, a merevlemez klónozása Windows rendszeren sokak számára döntő fontosságú folyamat lehet. Ez az átfogó útmutató

Hogyan javítható a WUDFRd illesztőprogram betöltése a Windows 10 rendszeren?

Hogyan javítható a WUDFRd illesztőprogram betöltése a Windows 10 rendszeren?

A számítógép indításakor a hibaüzenet azt jelzi, hogy nem sikerült betölteni a WUDFRd illesztőprogramot a számítógépére?

Az NVIDIA GeForce Experience hibakód 0x0003 kijavítása

Az NVIDIA GeForce Experience hibakód 0x0003 kijavítása

Az NVIDIA GeForce tapasztalati hibakód 0x0003 az asztalon? Ha igen, olvassa el a blogot, hogy megtudja, hogyan javíthatja ki ezt a hibát gyorsan és egyszerűen.

Mi az SMPS?

Mi az SMPS?

Mielőtt SMPS-t választana számítógépéhez, ismerje meg, mi az SMPS és mit jelent a különböző hatékonysági besorolások.

Miért nem kapcsol be a Chromebookom?

Miért nem kapcsol be a Chromebookom?

Válaszokat kaphat a következő kérdésre: Miért nem kapcsol be a Chromebookom? Ebben a Chromebook-felhasználóknak szóló hasznos útmutatóban.

Az adathalász csalások bejelentése a Google-nak

Az adathalász csalások bejelentése a Google-nak

Ebből az útmutatóból megtudhatja, hogyan jelentheti be a csalókat a Google-nak, hogy megakadályozza, hogy átverjenek másokat.

A Roomba megáll, kiáll és megfordul – Javítás

A Roomba megáll, kiáll és megfordul – Javítás

Javítsa ki azt a problémát, amikor a Roomba robotporszívója leáll, beragad, és folyamatosan megfordul.

Grafikai beállítások módosítása a Steam Decken

Grafikai beállítások módosítása a Steam Decken

A Steam Deck robusztus és sokoldalú játékélményt kínál az Ön keze ügyében. Azonban a játék optimalizálása és a lehető legjobb biztosítása érdekében

Mi az elszigetelésen alapuló biztonság?

Mi az elszigetelésen alapuló biztonság?

Egy olyan témában készültek elmélyülni, amely egyre fontosabbá válik a kiberbiztonság világában: az elszigeteltségen alapuló biztonsággal. Ez a megközelítés a

Az Auto Clicker használata Chromebookhoz

Az Auto Clicker használata Chromebookhoz

Ma egy olyan eszközzel készültünk, amely képes automatizálni az ismétlődő kattintási feladatokat a Chromebookon: az Automatikus klikkelőt. Ezzel az eszközzel időt takaríthat meg és