Kas ir instrukciju caurule?

Jebkura procesora instrukcija darbojas vairākos posmos. Katram no šiem posmiem ir nepieciešams viens CPU cikls. Šie posmi ir instrukciju ielāde, instrukciju dekodēšana, izpilde, piekļuve atmiņai un atpakaļrakstīšana. Attiecīgi tie saņem aizpildāmo instrukciju, atdala operāciju no operējamām vērtībām, izpilda procesu, atver reģistru, kurā tiks ierakstīts rezultāts, un ieraksta rezultātu atvērtajā reģistrā.

Vēsturiski sakārtoti apstrādātāji

Pirmajos datoros CPU neizmantoja instrukciju cauruļvadu. Šajos CPU katrai viena cikla darbībai bija jānotiek katrai instrukcijai. Tas nozīmēja, ka bija nepieciešami pieci pulksteņa cikli, lai vidējā instrukcija tiktu pilnībā apstrādāta, pirms varēja sākt nākamo. Dažām darbībām, iespējams, nav nepieciešams izrakstīt rezultātu reģistrā, kas nozīmē, ka piekļuves atmiņai un ierakstīšanas posmus var izlaist.

Kas ir instrukciju caurule?

Subskalārajā procesorā bez konveijera katras instrukcijas daļa tiek izpildīta secībā.

Tomēr pastāv problēma, kad tiek izpildīta pilnīga instrukcija, pirms varat pāriet uz nākamo instrukciju. Problēma ir kešatmiņas trūkums. CPU datus, kurus tas aktīvi apstrādā, saglabā reģistrā. Tam var piekļūt ar viena cikla latentumu. Problēma ir tā, ka reģistrs ir mazs, jo tas ir iebūvēts procesora kodolā. Ja dati vēl nav ielādēti, centrālajam procesoram ir jāpāriet uz lielāku, bet lēnāku L1 kešatmiņu. Ja tā nav, tai atkal ir jāiet uz lielāku un lēnāku L2 kešatmiņu. Nākamais solis ir L3 kešatmiņa; pēdējā iespēja ir sistēmas RAM. Katrai no šīm opcijām ir nepieciešams vairāk un vairāk CPU ciklu, lai pārbaudītu.

Tagad šis papildu pievienotais latentums var būt liela problēma sistēmā, kurai pirms nākamās instrukcijas ir pilnībā jāpabeidz katra instrukcija. Tas, kas agrāk bija 5 ciklu uz vienu instrukciju procesors, var pēkšņi pieķerties vienai instrukcijai desmitiem vai simtiem pulksteņa ciklu. Visu laiku datorā nekas cits nevar notikt. Tehniski to var nedaudz mazināt, ja ir divi neatkarīgi kodoli. Tomēr nekas neliedz viņiem abiem darīt vienu un to pašu, iespējams, vienlaikus. Tātad, ejot pa daudzkodolu maršrutu, tas netiek novērsts.

Klasiskais RISC cauruļvads

RISC apzīmē samazinātu instrukciju komplekta datoru . Tas ir procesora dizaina stils, kas optimizē veiktspēju, atvieglojot katras instrukcijas atšifrēšanu. Tas ir salīdzinājumā ar CISC vai Complex Instruction Set Computer, kas izstrādā sarežģītākas instrukciju kopas, ļaujot to pašu uzdevumu veikšanai izmantot mazāk instrukciju.

Klasiskais RISC dizains ietver instrukciju cauruļvadu. Tā vietā, lai jebkurā ciklā palaistu kādu no pieciem instrukciju posmiem, konveijers ļauj izpildīt visus piecus posmus. Protams, jūs nevarat izpildīt visus piecus vienas instrukcijas posmus ciklā. Bet jūs varat ievietot rindā piecus secīgus norādījumus ar viena posma nobīdi. Tādā veidā katru pulksteņa ciklu var izpildīt jaunu instrukciju. Piedāvājot potenciālu 5x veiktspējas pieaugumu salīdzinoši zemam kodola sarežģītības pieaugumam.

Kas ir instrukciju caurule?

Skalārā konveijera procesorā katru instrukciju izpildes posmu var veikt vienu reizi pulksteņa ciklā. Tas nodrošina vienas pabeigtas instrukcijas maksimālo caurlaidspēju ciklā.

Procesori, kuriem nav konveijera, vienmēr var būt tikai subskalāri, jo tie nevar izpildīt vienu pilnīgu instrukciju ciklā. Izmantojot šo primāro piecu pakāpju cauruļvadu, varat izveidot skalāru centrālo procesoru, kas var izpildīt norādījumus katram procesam. Izveidojot vēl tālejošākus cauruļvadus, varat izveidot superskalārus CPU, kas vienā pulksteņa ciklā var izpildīt vairāk nekā vienu instrukciju. Protams, joprojām pastāv iespējamās problēmas.

Joprojām secīgi

Neviens no tiem neatrisina problēmu, kas saistīta ar daudzu ciklu gaidīšanu, lai saņemtu atbildi, kad nepieciešams vaicāt dažādos kešatmiņas un RAM līmeņos. Tas arī ievieš jaunu problēmu. Ko darīt, ja viena instrukcija balstās uz iepriekšējās instrukcijas izvadi? Šīs problēmas tiek patstāvīgi atrisinātas, izmantojot progresīvu dispečeru. Tā rūpīgi plāno izpildes secību, lai neviena instrukcija, kas balstās uz cita izvadi, neatrastos pārāk tuvu viena otrai. Tas arī apstrādā kešatmiņas kļūdas, novietojot instrukciju stāvvietā un aizvietojot to konveijerā ar citām instrukcijām, kas ir gatavas izpildei un kurām nav nepieciešams rezultāts, atsākot instrukciju, kad tā ir gatava.

Šie risinājumi var darboties bezkonveijera procesoros, taču tie ir nepieciešami superskalāram procesoram, kas vienā pulkstenī izpilda vairāk nekā vienu instrukciju. Nozares prognozētājs ir arī ļoti noderīgs, jo tas var mēģināt paredzēt iznākumu norādījumam ar vairāk nekā vienu iespējamo iznākumu un turpināt pieņemt, ka tas ir pareizs, ja vien nav pierādīts pretējais.

Secinājums

Cauruļvads ļauj izmantot visas procesora atšķirīgās iespējas katrā ciklā. Tas tiek darīts, vienlaikus izpildot dažādus dažādu instrukciju posmus. Tas pat nepalielina CPU dizaina sarežģītību. Tas arī paver iespēju vairāk nekā vienai instrukcijai veikt vienu posmu ciklā.


Leave a Comment

10 labākie NAS uzglabāšanas risinājumi mājai un profesionālai lietošanai

10 labākie NAS uzglabāšanas risinājumi mājai un profesionālai lietošanai

Ja meklējat NAS risinājumu mājai vai birojā, iepazīstieties ar šo labāko NAS uzglabāšanas iekārtu sarakstu.

Kā atrast drukātāja IP adresi

Kā atrast drukātāja IP adresi

Vai jums ir grūtības noskaidrot, kāda IP adrese jūsu drukātājam tiek izmantota? Mēs parādīsim, kā to atrast.

Kā novērst GeForce Now kļūdas kodu 0xC272008F

Kā novērst GeForce Now kļūdas kodu 0xC272008F

Jūs gatavojaties vakaram ar spēlēšanu, un tas būs liels vakars – jūs tikko esat iegādājies “Star Wars Outlaws” GeForce Now straumēšanas pakalpojumā. Uzziniet vienīgo zināmo risinājumu, kas parāda, kā novērst GeForce Now kļūdas kodu 0xC272008F, lai jūs varētu sākt spēlēt Ubisoft spēles atkal.

5 Iemesli, Kāpēc Jūsu Klēpjdators Pārkarst

5 Iemesli, Kāpēc Jūsu Klēpjdators Pārkarst

Uzziniet dažus iespējamos iemeslus, kāpēc jūsu klēpjdators pārkarst, kā arī padomus un trikus, lai izvairītos no šīs problēmas un uzturētu savu ierīci vēsu.

3D drukāšanas pamati: obligāta apkopes pārbaudes liste

3D drukāšanas pamati: obligāta apkopes pārbaudes liste

Uzturēt aprīkojumu labā stāvoklī ir svarīgi. Šeit ir daži noderīgi padomi, kā saglabāt jūsu 3D printeri augstā stāvoklī.

Kā instalēt SSD galddatoros un portatīvajos datoros

Kā instalēt SSD galddatoros un portatīvajos datoros

Vai jūs tikko iegādājāties SSD, cerot uzlabot sava PC iekšējo atmiņu, bet nezināt, kā to instalēt? Izlasiet šo rakstu tagad!

Canon Pixma MG5220: Skaņojiet bez tintes

Canon Pixma MG5220: Skaņojiet bez tintes

Kā iespējot skenēšanu Canon Pixma MG5220, kad ir beigusies tinti.

3D Drukāšanas Pamatprincipi: Apkopes Padomi Jūsu 3D Dr printerim

3D Drukāšanas Pamatprincipi: Apkopes Padomi Jūsu 3D Dr printerim

Uzturot savus 3D printerus, ir ļoti svarīgi iegūt labākos rezultātus. Šeit ir daži svarīgi padomi, par kuriem jāpatur prātā.

Kā rīkoties, ja Powerbeats Pro netiek uzlādēti kārbā

Kā rīkoties, ja Powerbeats Pro netiek uzlādēti kārbā

Ja jūsu Powerbeats Pro netiek uzlādēti, izmantojiet citu enerģijas avotu un notīriet ausu aizbāžņus. Atstājiet kārbu atvērtu, kamēr uzlādējat ausu aizbāžņus.

Kas ir saziņas ierīce?

Kas ir saziņas ierīce?

Sakaru ierīcei ir dažas iespējamās nozīmes. Jebkura elektroniska ierīce, kas elektroniski sazinās ar citām ierīcēm.