Microarchitecture ati awọn lilo rẹ

Microarchitecture ati awọn lilo rẹ

Microarchitecture ni “inu” ero isise kan: bi a ṣe n kọ CPU kan ati bi a ṣe n ṣiṣẹ inu lati ṣe awọn itọnisọna ti a ṣalaye nipasẹ Eto Eto Itọsọna (ISA) gẹgẹbi x86, ARM, tabi RISC-V. Ti a ba le fi ISA we awọn ofin ede kan—akojọ awọn ọrọ ati eto wọn—nigba naa microarchitecture ni bi eto ọpọlọ ṣe n ṣiṣẹ ki a le loye awọn gbolohun ọrọ wọnyẹn ki a si sọ wọn ni kiakia, ni agbara daradara, ati ni iduroṣinṣin. Ọpọlọpọ eniyan mọ awọn orukọ ero isise nipasẹ ami iyasọtọ tabi jara, ṣugbọn awọn iyatọ gidi ninu iṣẹ ṣiṣe ati ṣiṣe ni a maa n pinnu nipasẹ awọn ipinnu ni ipele microarchitecture.

Lílóye ìbáṣepọ̀ láàárín ISA àti microarchitecture

ISA kan ṣoṣo le ni ọpọlọpọ awọn imuṣẹ microarchitectural. Fun apẹẹrẹ, awọn ero isise meji le ṣe atilẹyin fun ISA kan pato, ṣugbọn awọn apẹrẹ inu wọn yatọ: ọkan fẹran iyara aago giga, ekeji fẹran kika mojuto tabi ṣiṣe agbara. Eyi ṣalaye idi ti awọn CPU meji ti n ṣe awọn ilana “kanna” kii ṣe nigbagbogbo ṣiṣẹ kanna.

Àwọn ohun èlò ìkọ́lé kékeré kan ní àwọn apá bíi pípọ́n omi, ìṣiṣẹ́ tí kò bá ìlànà mu, àsọtẹ́lẹ̀ ẹ̀ka, àwọn ìpele àkójọpọ̀, àwọn ẹ̀ka ìṣiṣẹ́ (ALU/FPU), àti àwọn ọ̀nà ìṣàkóso agbára. Ọ̀kọ̀ọ̀kan àwọn ohun èlò wọ̀nyí ń ṣe àfikún sí àwọn ibi-àfojúsùn pàtàkì mẹ́ta: iṣẹ́, agbára ṣíṣe, àti iye owó/ìṣòro.

Awọn ẹya pataki ti microarchitecture

1. Pípìlì: ìlà ìtòlẹ́sẹẹsẹ àwọn ìtọ́ni
Póìpù kan máa ń pín ìṣiṣẹ́ ìtọ́ni sí ọ̀pọ̀lọpọ̀ ìpele, bíi gbígbà (ìmúra ìtọ́ni), yíyọ ìtumọ̀ (ìtumọ̀), ṣíṣe (ìmúṣẹ), wíwọlé ìrántí (ìwọlé ìrántí), àti kíkọ ìdáhùn (kíkọ ìdáhùn). Pẹ̀lú píípù, CPU lè ṣe àgbékalẹ̀ ọ̀pọ̀ ìtọ́ni nínú àkójọpọ̀ kan, gẹ́gẹ́ bí ìlà ìpéjọpọ̀ ilé iṣẹ́.

Bí ọ̀nà ìtúpalẹ̀ náà bá ṣe jinlẹ̀ tó, bẹ́ẹ̀ náà ni CPU náà ṣe lè dé ibi tí ó yẹ ní ti ìmọ̀. Síbẹ̀síbẹ̀, ọ̀nà ìtúpalẹ̀ tí ó jinlẹ̀ jù ń mú kí ìyà fún àwọn ẹ̀ka tí kò tọ́ pọ̀ sí i, ó sì ń mú kí ìṣòro ìṣàkóso pọ̀ sí i.

2. Ìbáradọ́gba Superscalar àti Ìpele Ẹ̀kọ́
Àwọn CPU òde òní sábà máa ń jẹ́ superscalar, èyí tí ó túmọ̀ sí wípé wọ́n lè ṣe ju ìtọ́ni kan lọ fún gbogbo cycle pẹ̀lú ọ̀pọ̀lọpọ̀ àwọn ẹ̀rọ ìṣiṣẹ́ parallel. Èyí ń lo àǹfààní ti parallelism ipele ìtọ́ni (ILP), agbára láti ṣe ọ̀pọ̀lọpọ̀ ìtọ́ni, tí ó dá dúró.

Sibẹsibẹ, ILP kii ṣe nigbagbogbo wa. Ti eto kan ba ni ọpọlọpọ awọn igbẹkẹle data tabi ọpọlọpọ awọn ẹka, agbara afiwera yii kii ṣe lilo ni kikun. Nitorinaa, awọn microarchitectures tun gbarale awọn ọna miiran lati "kun" awọn ẹya ipaniyan lati dena wọn lati di alaiṣiṣẹ.

KỌRỌ  Àgbékalẹ̀ àti ipa rẹ̀ lórí microclimate

3. Ìṣiṣẹ́ tí kò bá ìlànà mu (OoO)
Ìṣiṣẹ́ tí kò bá sí ní ipò àṣẹ ń jẹ́ kí CPU ṣe àwọn ìlànà tí kò bá ìlànà mu, níwọ̀n ìgbà tí àbájáde ìkẹyìn bá tọ́. Fún àpẹẹrẹ, tí ìtọ́ni kan bá ń dúró de dátà láti inú ìrántí, CPU lè ṣe ìtọ́ni mìíràn tí ó ti ṣetán. Láti ṣe èyí, CPU náà ń lo àwọn èròjà bíi àtúntò àwọn ohun èlò ìpamọ́, àwọn ibùdó ìforúkọsílẹ̀, àti yíyí orúkọ padà sí ìforúkọsílẹ̀.

OoO mu iṣẹ ṣiṣe dara si, ṣugbọn o nilo agbegbe ati agbara silikoni diẹ sii, o si mu ki idiju idaniloju pọ si. Lori awọn ẹrọ agbara kekere kan, awọn apẹẹrẹ le yan fun iṣẹ ṣiṣe ni aṣẹ ti o rọrun.

4. Àsọtẹ́lẹ̀ ẹ̀ka àti ìmúṣẹ àròsọ
Àwọn ìlànà ẹ̀ka (tí/ẹ̀yà mìíràn, loop) fipá mú kí CPU yan ipa ọ̀nà ìṣiṣẹ́ kan. Dídúró de ìpinnu ẹ̀ka kan yóò "ba" ọ̀nà ìṣiṣẹ́ náà jẹ́. Àsọtẹ́lẹ̀ ẹ̀ka gbìyànjú láti mọ ipa ọ̀nà tí a óò gbà, èyí tí yóò jẹ́ kí CPU náà máa bá a lọ láìdáwọ́ dúró.

Tí àsọtẹ́lẹ̀ náà bá tọ́, iṣẹ́ rẹ̀ máa ń sunwọ̀n sí i gidigidi. Tí kò bá tọ́, CPU gbọ́dọ̀ yọ àbájáde ìròhìn kúrò (yí padà) kí ó sì tún bẹ̀rẹ̀, èyí tí yóò mú kí ó ní ìyà ìyípo. Àsọtẹ́lẹ̀ ẹ̀ka tó lọ́ra jẹ́ ohun pàtàkì fún iṣẹ́ ṣíṣe, ṣùgbọ́n a ti so ó pọ̀ mọ́ àwọn ọ̀ràn ààbò bíi Spectre, èyí tí ó ń lo àwọn ipa ẹ̀gbẹ́ ìròhìn.

5. Kaṣe logalomomoise: L1, L2, L3
Iyara CPU ju iranti akọkọ lọ (RAM). Iranti kaṣe jẹ iranti kekere, iyara pupọ ti a lo lati tọju data ti a le wọle nigbagbogbo. O maa n ni awọn ipele pupọ: L1 (eyiti o yara julọ ati ti o kere julọ), L2 (ti o tobi ju), ati L3 (ti o tobi ju, ti a maa n pin laarin awọn kootu).

Apẹẹrẹ cache jẹ́ ìforúkọsílẹ̀ pàtàkì: àwọn cache tó tóbi jù máa ń dín ìjákulẹ̀ kù, ṣùgbọ́n wọ́n máa ń gbowó jù, wọ́n sì lè lọ́ra. Ṣíṣe àwọn ìlànà ìforúkọsílẹ̀ ṣáájú àti ìbáṣepọ̀ cache lórí àwọn ètò multi-core tún ṣe pàtàkì fún microarchitecture.

6. Àwọn ẹ̀rọ ìṣe: nọ́ńbà odidi, ojú ìfófó, SIMD, àti pàtàkì
CPU ní oríṣiríṣi ẹ̀rọ: ALU fún iṣẹ́ odidi, FPU fún àwọn nọ́mbà ìpín, àwọn ẹ̀rọ load/store fún ìrántí, àti SIMD (fún àpẹẹrẹ AVX/NEON) fún ṣíṣe àgbékalẹ̀ ọ̀pọ̀lọpọ̀ dátà ní ẹ̀ẹ̀kan náà—ó wúlò gan-an fún multimedia, ìfúnpọ̀, àti ẹ̀kọ́ ẹ̀rọ light light pàápàá.

Ni afikun, awọn ero isise ode oni maa n ni awọn ohun elo iyara kan pato (da lori pẹpẹ), gẹgẹbi fun fifi ẹnọ kọ nkan, iṣiro AI, tabi sisẹ ifihan agbara aworan lori awọn ẹrọ alagbeka. Lakoko ti a ko pe ni “microarchitecture CPU mimọ,” iṣọpọ yii ni ipa lori apẹrẹ gbogbogbo ti eto-lori-chip.

KỌRỌ  Kọnkíríìtì nínú ìkọ́lé ilé òde òní

7. Iṣakoso agbara ati apẹrẹ ooru
Ẹ̀rọ microarchitecture náà tún ń pinnu bí ẹ̀rọ isise náà ṣe ń ṣàtúnṣe fóltéèjì àti ìgbóhùnsáfẹ́fẹ́ (DVFS), ó ń pa àwọn ohun èlò tí a kò lò (ìwọ̀n aago, ìwọ̀n agbára), ó sì ń pa ìwọ̀n otútù mọ́ láàárín ààlà. Nínú àwọn kọ̀ǹpútà alágbèéká àti àwọn fóònù alágbéká, ìṣiṣẹ́ fún watt kọ̀ọ̀kan sábà máa ń ṣe pàtàkì ju iṣẹ́ gíga lọ.

Àwọn lílo microarchitecture ní ayé gidi

1. Mu iṣẹ kọmputa ati olupin pọ si
Àwọn lílò tó hàn gbangba jùlọ ni mímú iṣẹ́ àwọn ohun èlò ojoojúmọ́ (browser, application office), computation (simulations), àti server services (databases, web services). Àwọn ọ̀nà bíi OoO, advanced caching, àti branch prediction mú kí àwọn ètò máa ṣiṣẹ́ kíákíá láìsí pé wọ́n máa ń mú kí ìgbàkúgbà pọ̀ sí i gidigidi.

Nínú ibi ìtọ́jú dátà, àwọn àyípadà kékeré nínú iṣẹ́ àgbékalẹ̀ microarchitectural lè túmọ̀ sí fífi agbára àti ìtura tó ṣe pàtàkì pamọ́. Ìdí nìyí tí a ṣe ń lo ẹ̀rọ server microarchitectural láti fi ṣe àkójọpọ̀ iṣẹ́, ìpele ìrántí, àti àwọn agbára ìfọ̀rọ̀wérọ̀ púpọ̀.

2. Mu agbara ṣiṣe dara si lori awọn ẹrọ alagbeka
Àwọn fóònù alágbékalẹ̀ nílò iṣẹ́ gíga fún àwọn kámẹ́rà, eré orí ìtàgé, àti AI, nígbàtí wọ́n tún ń pa bátírì mọ́. Nítorí náà, àwọn microarchitectures alágbékalẹ̀ sábà máa ń so àwọn mojuto tí ó lágbára pọ̀ mọ́ àwọn mojuto tí ó ṣiṣẹ́ (ọ̀nà ńlá tàbí àwọn ìyàtọ̀ wọn). Èyí ń jẹ́ kí a gbé àwọn iṣẹ́ tí ó rọrùn sí i sórí àwọn mojuto kéékèèké àti àwọn iṣẹ́ tí ó wúwo lórí àwọn mojuto tí ó tóbi, èyí tí ó ń yọrí sí agbára tí ó pọ̀ sí i láìsí ìyípadà ìdáhùnpadà.

3. Pinnu ihuwasi aabo ati idinku
Kì í ṣe nípa iyàrá nìkan ni Microarchitecture ṣe; ó tún ní ipa lórí ààbò. Àwọn ọ̀nà ìṣírò, àwọn caches, àti àsọtẹ́lẹ̀ ẹ̀ka lè mú kí àwọn ọ̀nà ẹ̀gbẹ́ wá. Lẹ́yìn náà, ilé iṣẹ́ náà yóò ṣe àgbékalẹ̀ àwọn ìdínkù ní ìpele sọ́fítíwè àti ohun èlò, bí àyípadà sí àwọn àsọtẹ́lẹ̀, ìyàsọ́tọ̀ àròjinlẹ̀, tàbí àwọn ọ̀nà ìpínyà cache. Lílóye microarchitecture ń ran àwọn onímọ̀ ẹ̀rọ ààbò lọ́wọ́ láti ṣe àyẹ̀wò àwọn ewu àti láti yan àwọn ìṣètò ìdínkù tó yẹ.

4. Ran àwọn olùgbékalẹ̀ lọ́wọ́ láti mú kí sọ́fítíwọ́ọ̀kì wọn dára síi
Bí àwọn olùgbékalẹ̀ kò bá tilẹ̀ ṣe àgbékalẹ̀ àwọn CPU, wọ́n lè kọ kódì kíákíá nípa lílóye ìwà microarchitectural. Fún àpẹẹrẹ:
– Din awọn ipadanu kaṣe ku pẹlu awọn eto data ti o rọrun fun kaṣe diẹ sii.
– Yẹra fún àwọn ẹ̀ka tí kò pọndandan tàbí kí o jẹ́ kí àwọn àpẹẹrẹ ẹ̀ka túbọ̀ ṣe àsọyé.
- Lo SIMD fun awọn iṣẹ vector.
– Ó dín àríyànjiyàn lórí ọ̀pọ̀lọpọ̀ okùn tí ó ń fa ìjádepọ̀ ìṣọ̀kan àkápò kù.

KỌRỌ  Àwòrán àwọn ibi ìjọsìn àti àmì

Nínú ẹ̀ka ìmọ̀ ìṣirò iṣẹ́ gíga (HPC), ìmọ̀ yìí ṣe pàtàkì nítorí pé agbára ìṣe rẹ̀ sábà máa ń dínkù nípasẹ̀ ìwọ̀n ìrántí, kìí ṣe iye ìtọ́ni lásán.

5. Di ipilẹ fun awọn apẹrẹ ohun elo tuntun
Nínú ilé-ẹ̀kọ́ gíga àti ilé-iṣẹ́ semiconductor, microarchitecture jẹ́ pẹpẹ fún ìṣẹ̀dá tuntun: mímú kí ìbú iṣẹ́ pọ̀ sí i, yíyípadà àwọn ìlànà ìpamọ́, mímú àwọn àsọtẹ́lẹ̀ ẹ̀ka sunwọ̀n sí i, tàbí ṣíṣe àgbékalẹ̀ àwọn ọ̀nà tí ó yàtọ̀ síra (CPU + accelerator). Ìlò rẹ̀ hàn gbangba nínú ìdíje ọjà: ìran kan ṣoṣo ti àwọn àpẹẹrẹ tuntun lè mú àwọn ìdàgbàsókè pàtàkì wá nínú IPC (ìtọ́ni fún gbogbo cycle) àti ìṣedéédé, kódà bí ìgbà tí ó bá ṣì wà láìyípadà.

Awọn italaya ati awọn itọsọna ti idagbasoke

Àwọn ilé ìkọ́kọ́ọ́lẹ̀ òde òní dojúkọ ààlà ti fisiksi: jíjí agbára, ìṣẹ̀dá ooru, àti ìdàgbàsókè tó ń pọ̀ sí i. Nítorí pé pípọ̀ sí i kì í ṣe ohun tó rọrùn bí ó ti rí tẹ́lẹ̀, àfiyèsí ti yí padà sí:
– Ifarabalẹ giga (multi-core, SMT).
– Awọn ohun elo iyara ti a yasọtọ fun awọn iṣẹ ṣiṣe pato.
– Iṣapeye ti ipo iranti ati isopọmọ.
– Lilo agbara bi iwọn pataki.
– Ààbò micro-architectural láti ìbẹ̀rẹ̀ ìṣẹ̀dá (ààbò nípasẹ̀ ìṣẹ̀dá).

Ní àwọn ọdún àìpẹ́ yìí, ọ̀nà tí ó yàtọ̀ síra—pípapọ̀ àwọn CPU gbogbogbòò pẹ̀lú AI pàtàkì, àwòrán, àti àwọn ẹ̀ka media—ti di èyí tí ó gbajúmọ̀ síi, pàápàá jùlọ ní SoCs.

Ipari

Microarchitecture ni ipilẹ ti o pinnu bi ero isise kan ṣe n ṣe awọn itọnisọna ni otitọ: bawo ni yarayara, bi o ṣe n ṣiṣẹ daradara, ati bi o ṣe n ni aabo to. Awọn ọna pipelines, ipaniyan ti ko ni aṣẹ, asọtẹlẹ ẹka, awọn caches, awọn ẹya ipaniyan, ati iṣakoso agbara jẹ gbogbo awọn paati pataki ti o ni ipa lori ara wọn. Lilo rẹ gbooro lati imudarasi iṣẹ kọmputa ati olupin ati fifipamọ igbesi aye batiri lori awọn ẹrọ alagbeka si iranlọwọ lati mu sọfitiwia dara si ati mu aabo eto lagbara. Lílóye microarchitecture tumọ si oye awọn idi ti o wa lẹhin awọn iyatọ iṣẹ laarin awọn ero isise, lakoko ti o tun ṣafihan awọn oye sinu bi imọ-ẹrọ kọmputa ṣe n tẹsiwaju lati dagbasoke.

Tí o bá fẹ́, mo lè ṣe àtúnṣe àpilẹ̀kọ yìí sí àyíká pàtó kan (fún àpẹẹrẹ fún iṣẹ́ ilé-ẹ̀kọ́/kẹ̀ẹ̀jì, fún ìwé ìròyìn gbogbogbò, tàbí àtúnṣe ìmọ̀-ẹ̀rọ tó péye pẹ̀lú àwọn àtẹ ìṣàn omi àti àpẹẹrẹ àwọn ọ̀ràn ìṣelọ́pọ́).

Fi ọ̀rọ̀ sílẹ̀