Inafasiriwa moja kwa moja kutoka kwa Wikipedia ya Kiingereza na Tafsiri ya Google

Kitengo cha usindikaji wa kati

Intel 80486DX2 CPU, kama inavyoonekana kutoka hapo juu.
Chini ya Intel 80486DX2 , kuonyesha pini zake.

Usindikaji kuu kitengo (CPU) ni circuitry umeme ndani ya kompyuta ambalo linafanya maelekezo ya programu ya kompyuta kwa kufanya msingi hesabu , mantiki, kudhibiti na pembejeo / pato (I / O) shughuli maalum kwa maelekezo. Sekta ya kompyuta imetumia neno "kitengo cha usindikaji kuu" angalau tangu mapema miaka ya 1960. [1] Kwa kawaida, neno "CPU" linahusu processor , hasa kwa kitengo chake cha usindikaji na kitengo cha kudhibiti (CU), kutofautisha vipengele hivi vya msingi vya kompyuta kutoka vipengele vya nje kama kumbukumbu kuu na mizunguko ya I / O. [2]

Fomu, kubuni , na utekelezaji wa CPUs zimebadilika wakati wa historia yao, lakini operesheni yao ya msingi bado haibadilika. Vipengele kuu ya CPU ni pamoja hesabu mantiki kitengo (ALU) kwamba hufanya hesabu na mantiki shughuli , processor madaftari kwamba ugavi operands kwa ALU na kuhifadhi matokeo ya shughuli ALU, na kitengo cha kudhibiti kwamba inachochea katika kuleta (kutoka kumbukumbu) na utekelezaji ya maagizo kwa kuongoza shughuli za kuratibu za usajili wa ALU, na vipengele vingine.

CPU nyingi za kisasa ni microprocessors , kwa maana zinazomo kwenye mzunguko mmoja wa mzunguko (IC). IC ambayo ina CPU inaweza pia kuwa na kumbukumbu, interfaces ya pembeni , na vipengele vingine vya kompyuta; vifaa vile jumuishi huitwa microcontrollers mbalimbali au mifumo kwenye chip (SoC). Kompyuta nyingine zinaajiri processor ya msingi , ambayo ni chip moja iliyo na CPU mbili au zaidi inayoitwa "cores"; katika hali hiyo, mtu anaweza kuzungumza kama vile "matumba" . [3] Wasindikaji wa kawaida au wasindikaji wa vector wana vichwa vingi vinavyofanya kazi kwa sambamba, na hakuna kitengo kinachozingatiwa kati. Pia kuna dhana ya CPU virtual ambayo ni kinyume cha rasilimali ya nguvu ya computational rasilimali. [4]

Yaliyomo

Historia

EDVAC , mojawapo ya kompyuta za kwanza za kuhifadhiwa

Kompyuta za mwanzo kama vile ENIAC zilipaswa kurekebishwa kimwili kutekeleza kazi tofauti, ambazo zinawafanya mashine hizi ziitwa "kompyuta-fasta-program". [5] Tangu neno "CPU" linaelezewa kwa ujumla kama kifaa cha programu ( programu ya kompyuta), vifaa vya mwanzo ambavyo vinaweza kuitwa vizuri vya CPU vinakuja na ujio wa kompyuta iliyohifadhiwa .

Wazo la kompyuta iliyohifadhiwa tayari ilikuwa tayari katika muundo wa J. Presper Eckert na ENIAC ya John William Mauchly , lakini awali iliondolewa ili iweze kumalizika mapema. [6] Mnamo Juni 30, 1945, kabla ya ENIAC kufanywa, mtaalamu wa hisabati John von Neumann alisambaza karatasi yenye kichwa cha kwanza cha Ripoti ya EDVAC . Ilikuwa ni muhtasari wa kompyuta iliyohifadhiwa ambayo hatimaye kukamilishwa Agosti 1949. [7] EDVAC iliundwa kufanya idadi fulani ya maagizo (au shughuli) za aina mbalimbali. Kwa kushangaza, mipango iliyoandikwa kwa EDVAC ilitakiwa kuhifadhiwa kwenye kumbukumbu ya kompyuta ya kasi kuliko ilivyoelezwa na wiring ya kimwili. [8] Hii ilishinda ukomo mkubwa wa ENIAC, ambayo ilikuwa muda mwingi na jitihada zinazohitajika ili upatanishe kompyuta ili kufanya kazi mpya. Kwa mpango wa von Neumann, programu ambayo EDVAC inaendesha inaweza kubadilishwa tu kwa kubadilisha maudhui ya kumbukumbu. EDVAC, hata hivyo, haikuwa kompyuta ya kwanza ya kuhifadhiwa; mashine ya majaribio ya Manchester Small-Scale , mfumo mdogo wa kompyuta iliyohifadhiwa, iliendesha mpango wake wa kwanza tarehe 21 Juni 1948 [9] na Manchester Mark 1 iliendesha mpango wake wa kwanza wakati wa usiku wa 16-17 Juni 1949. [10]

CPU za awali walikuwa miundo ya desturi iliyotumika kama sehemu ya kompyuta kubwa na wakati mwingine tofauti. [11] Hata hivyo, njia hii ya kubuni CPU za kawaida kwa ajili ya maombi maalum imetoa kwa njia kubwa ya maendeleo ya wasindikaji mbalimbali kusudi zinazozalishwa kwa kiasi kikubwa. Mfumo huu ulianza mwaka enzi ya kipekee transistor mainframes na minicomputers na ina kasi kasi na popularization ya mzunguko jumuishi (IC). IC imeruhusu CPU zinazozidi kuwa ngumu ili kuundwa na kutengenezwa kwa uvumilivu kwa utaratibu wa nanometers . [12] Wote miniaturization na taratibu za CPUs imeongeza uwepo wa vifaa vya digital katika maisha ya kisasa zaidi ya matumizi mdogo ya mashine ya kujitolea kompyuta. Microprocessors za kisasa zinaonekana katika vifaa vya umeme vinavyotoka magari [13] hadi kwenye simu za mkononi, [14] na wakati mwingine hata katika vidole. [15]

Wakati von Neumann mara nyingi hujulikana kwa mpango wa kompyuta iliyohifadhiwa kwa sababu ya muundo wake wa EDVAC, na muundo ulijulikana kama usanifu wa von Neumann , wengine mbele yake, kama vile Konrad Zuse , walipendekeza na kutekeleza mawazo sawa. [16] Hivi kinachojulikana kama usanifu wa Harvard wa Harvard Mark I , ambayo ilikamilishwa kabla ya EDVAC, [17] [18] pia ilitumia mpango wa kuhifadhiwa kwa kutumia tepi ya karatasi iliyopigwa badala ya kumbukumbu ya elektroniki. [19] tofauti muhimu kati ya von Neumann na Harvard usanifu ni kwamba mwisho hutenganisha kuhifadhi na matibabu ya maelekezo CPU na data, wakati zamani anatumia huo kumbukumbu nafasi kwa wote wawili. [20] Vipengee vya kisasa vya kisasa ni von von Neumann katika kubuni, lakini CPU na usanifu wa Harvard huonekana pia, hasa katika programu zilizoingia; kwa mfano, microcontrollers ya Atmel AVR ni wasindikaji wa usanifu wa Harvard. [21]

Relays na tubes vacuum (tubmionic zilizopo) zilikuwa zinazotumiwa kama vitu vya kubadili; [22] [23] kompyuta yenye manufaa inahitaji maelfu au makumi ya maelfu ya vifaa vya byte. Kasi ya jumla ya mfumo inategemea kasi ya swichi. Kompyuta za Tube kama EDVAC zilikuwa na wastani wa masaa nane kati ya kushindwa, wakati kompyuta za relay kama (polepole, lakini mapema) Harvard Mark I alishindwa mara chache sana. [1] Mwishoni, CPU za msingi za tube zilikuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimekuwa zimeongezeka kwa sababu faida kubwa za kasi zilipatikana kwa kiasi kikubwa kutoweka matatizo ya kuaminika Wengi wa CPU hizi za mwanzo zilipimia viwango vya chini ya saa ikilinganishwa na miundo ya kisasa ya microelectronic. Mifumo ya signal ya saa ya kutoka kHz 100 hadi 4 MHz ilikuwa ya kawaida sana wakati huu, iliyopunguzwa kwa kiasi kikubwa na kasi ya vifaa vya kubadili ambavyo vilijengwa nayo. [24]

Vipengele vya Transistor

Programu ya IBM PowerPC 604e

Utata wa kubuni wa CPU uliongezeka kama teknolojia mbalimbali ziliwezesha kujenga vifaa vidogo vyenye vifaa vya elektroniki. Uboreshaji wa kwanza huo ulikuja na ujio wa transistor . Ma CPU yaliyobadiliwa wakati wa miaka ya 1950 na 1960 haikuhitajika kujengwa kwa vipengele vingi visivyoaminika, visivyoaminika, na vyema kama vile zilizopo utupu na relays . [25] Pamoja na uboreshaji huu rahisi zaidi na wa kuaminika CPU zilijengwa kwenye bodi moja au kadhaa zilizochapishwa za mzunguko zilizo na vipengele vya discrete (binafsi).

Mwaka wa 1964, IBM ilianzisha mfumo wake wa IBM / 360 wa usanifu wa kompyuta uliotumiwa katika mfululizo wa kompyuta zinazoweza kuendesha mipango hiyo kwa kasi tofauti na utendaji. [26] Hii ilikuwa muhimu wakati ambapo kompyuta nyingi za elektroniki hazikubaliana, hata zile zilizofanywa na mtengenezaji sawa. Ili kuwezesha uboreshaji huu, IBM ilitumia dhana ya microprogramu (mara nyingi huitwa "microcode"), ambayo bado inaona matumizi mengi katika CPU za kisasa. [27] Usanifu wa Mfumo / 360 ulikuwa maarufu sana kwa kuwa umesimamia soko la kompyuta kuu kwa miongo kadhaa na kuacha urithi ambao bado unaendelea na kompyuta za kisasa sawa kama IBM zSeries . [28] [29] Mwaka 1965, Digital Equipment Corporation (DEC) ilianzisha kompyuta nyingine yenye ushawishi yenye lengo la masoko ya sayansi na utafiti, PDP-8 . [30]

Bodi ya Fujitsu na wasindikaji wa SPARC64 VIIIfx

Kompyuta za msingi za transistor zilikuwa na manufaa kadhaa tofauti juu ya watangulizi wao. Mbali na kuwezesha kuongezeka kwa kuaminika na matumizi ya chini ya nguvu, transistors pia waliruhusu CPU kufanya kazi kwa kasi kubwa zaidi kwa sababu ya muda mfupi wa kubadilisha transistor ikilinganishwa na tube au relay. [31] Kuongezeka kwa kuegemea na kasi ya kasi ya vitu vya kugeuka (ambavyo vilikuwa karibu tu transistors kwa wakati huu), viwango vya saa ya CPU katika megahertz makumi zilipatikana kwa urahisi wakati huu. [32] Zaidi ya hayo wakati transistor na IC CPU zilikuwa na matumizi mazito, miundo mpya ya utendaji kama SIMP (Data Single Data Multiple Data) processor vector ilianza kuonekana. [33] Mipango hii ya awali ya majaribio baadaye ilimfufua wakati wa wasimamizi maarufu kama wale waliofanywa na Cray Inc na Fujitsu Ltd. [33]

Kiwango kidogo ushirikiano CPU

CPU, kumbukumbu ya msingi , na interface ya nje ya basi ya DEC PDP-8 / I. Imefanywa kwa nyaya za kati zilizounganishwa.

Katika kipindi hiki, njia ya kutengeneza transistors nyingi zilizounganishwa katika nafasi ya compact ilianzishwa. Mzunguko jumuishi (IC) kuruhusiwa idadi kubwa ya transistors kuwa viwandani kwenye kufa moja semiconductor -based, au "Chip". Mara ya kwanza, tu za msingi zisizo maalumu za duru za digital kama vile milango NOR zilikuwa miniaturized katika ICs. Vipengee vya msingi vya "IC block" hizi zinajulikana kama "ushirikiano wadogo wadogo" (SSI). SSI ICs, kama vile zilizotumiwa kwenye kompyuta ya mwongozo wa Apollo , mara nyingi zilizomo hadi transistors kadhaa kadhaa. Kujenga CPU nzima kutoka kwa SSI ICs inahitajika maelfu ya chips binafsi, lakini bado hutumiwa nafasi kidogo na nguvu kuliko mipango ya awali ya transistor.

Mfumo wa IBM / 370 , endelea kwenye Mfumo wa System / 360, uliotumika SSI IC badala ya moduli za Soli za Teknolojia za Siri za Transistor. [34] [35] PDP-8 / I za DEC na KI10 PDP-10 pia zimebadilisha kutoka kwa transistors binafsi zinazotumiwa na PDP-8 na PDP-10 kwa SSI ICs, na mstari wao maarufu sana wa PDP-11 ulianzishwa awali na SSI IC lakini hatimaye ilitekelezwa kwa vipengele vya LSI mara hizi zilipokuwa zikifanya kazi.

Kwa kiasi kikubwa ushirikiano CPU

Lee Boysel alichapisha makala za ushawishi, ikiwa ni pamoja na "manifesto" ya 1967, ambayo ilielezea jinsi ya kujenga sawa sawa na kompyuta ya 32-bit kuu ya kompyuta kutoka kwa idadi ndogo ndogo ya nyaya za ushirikiano mkubwa (LSI). [36] [37] Wakati huo, njia pekee ya kujenga vifupisho vya LSI, ambazo zimekuwa na milango mia au zaidi, ilikuwa kujenga kwa kutumia MOS mchakato (yaani, mantiki ya PMOS , mantiki ya NMOS , au mantiki ya CMOS ). Hata hivyo, baadhi ya makampuni yaliendelea kujenga wasindikaji nje ya vifaranga vya bipolar kwa sababu transistors ya bipolar ya junction yalikuwa kasi zaidi kuliko vifua vya MOS; kwa mfano, wasindikaji wa Datapoint waliojenga nje ya mantiki ya transistor-transistor (TTL) hadi mapema miaka ya 1980. [37] Wakati huo, MOS ICs walikuwa polepole sana kwamba walikuwa kuchukuliwa muhimu tu katika maombi niche kadhaa ambayo required nguvu chini. [38] [39]

Kama teknolojia ya microelectronic ya juu, idadi kubwa ya transistors iliwekwa kwenye ICs, kupunguza idadi ya ICs binafsi zinahitajika kwa CPU kamili. MSI na LSI ICs ziliongezeka kwa transistor kwa mamia, na kisha maelfu. Mwaka wa 1968, idadi ya IC waliohitaji kujenga CPU kamili ilikuwa imepungua hadi IC 24 za aina nane tofauti, na kila IC iliyo na MOSFET takriban 1000. [40] Tofauti kabisa na watangulizi wake wa SSI na MSI, utekelezaji wa kwanza wa LSI wa PDP-11 ulikuwa na CPU iliyojumuishwa na nyaya nne tu za LSI. [41]

Microprocessors

Kufa kwa microprocessor Intel 80486DX2 (ukubwa halisi: 12 × 6.75 mm) katika ufungaji wake
Intel Core i5 CPU kwenye motherboard ya mbali ya Vaio E ya mbali (upande wa kulia, chini ya bomba la joto )

Tangu kuanzishwa kwa microprocessor ya kwanza ya kibiashara, Intel 4004 mwaka wa 1970, na ya kwanza ya microprocessor , Intel 8080 mwaka 1974, darasa hili la CPUs karibu karibu zaidi ya njia nyingine zote za usindikaji wa kitengo cha usindikaji. Wafanyabiashara wengi na wazalishaji wa madini ya wakati wa mradi walizindua mipango ya maendeleo ya IC ya mmiliki ili kuboresha usanifu wa kompyuta zao za zamani, na hatimaye ilizalisha maelekezo ya kuweka microprocessors sambamba ambazo zilikuwa nyuma-sambamba na vifaa vyao vya zamani na programu. Pamoja na ujio na mafanikio ya baadaye ya ubiquitous kompyuta binafsi , neno CPU ni sasa kutumika peke [a] kwa prosesa. Vipande kadhaa vya CPU (vyema vidogo ) vinaweza kuunganishwa kwenye chip chipiti cha usindikaji. [42]

Vizazi vilivyotangulia vya CPU vilifanywa kutekelezwa kama vipengele visivyo na vipindi vingi vingi vya jumuishi (ICs) kwenye bodi moja au zaidi za mzunguko. [43] Microprocessors, kwa upande mwingine, ni CPU zinazozalishwa kwa idadi ndogo sana ya IC; kawaida tu moja. [44] Ukubwa wa CPU ndogo, kama matokeo ya kutekelezwa kwa kufa moja, inamaanisha kasi ya kubadili kwa sababu ya sababu za kimwili kama uwezo wa kupungua kwa kinga . [45] [46] Hii imeruhusu microprocessors synchronous kuwa na viwango vya saa kutoka kutoka megahertz hadi gigahertz kadhaa. Zaidi ya hayo, uwezo wa kujenga transistors ndogo sana kwenye IC imeongeza utata na idadi ya transistors katika CPU moja mara nyingi. Mwelekeo huu unaoonekana sana unaelezewa na sheria ya Moore , ambayo imeonyesha kuwa ni sahihi ya utabiri wa ukuaji wa CPU (na nyingine IC) utata. [47]

Wakati utata, ukubwa, ujenzi, na aina zote za CPU zimebadilishana sana tangu mwaka wa 1950, [48] inaonekana kuwa kubuni na kazi ya msingi haijabadilika sana. Karibu CPU zote za kawaida leo zinaweza kuelezewa kwa usahihi kama mashine ya programu ya kuhifadhi Neumann. [b] Kama sheria ya Moore iliyotajwa hapo juu inaendelea kushikilia ukweli, [47] wasiwasi juu ya mipaka ya teknolojia ya mzunguko wa transistor jumuishi. Miniaturization kubwa ya milango ya umeme ni kusababisha athari za matukio kama uhamishaji wa umeme na uingizaji wa chini kuwa muhimu zaidi. Masuala haya mapya ni kati ya mambo mengi yanayosababisha watafiti kuchunguza mbinu mpya za kompyuta kama kompyuta ya quantum , pamoja na kupanua matumizi ya parallelism na njia zingine ambazo zinapanua manufaa ya mfano wa classic von Neumann.

Uendeshaji

Uendeshaji wa msingi wa CPU nyingi, bila kujali fomu ya kimwili wanayochukua, ni kutekeleza mlolongo wa maagizo yaliyohifadhiwa ambayo huitwa programu. Maelekezo ya kutekelezwa yanahifadhiwa katika aina fulani ya kumbukumbu ya kompyuta . Karibu CPU zote zinafuata kufuata, kuamua na kutekeleza hatua katika uendeshaji wao, ambazo zinajulikana kama mzunguko wa maelekezo .

Baada ya utekelezaji wa maelekezo, mchakato mzima unarudia, na mzunguko wa maelekezo ya pili hutafuta maagizo yafuatayo kwa sababu ya thamani iliyoongezeka katika counter counter . Ikiwa maagizo ya kuruka yamepigwa, mpango wa programu utabadilishwa kuwa na anwani ya maelekezo yaliyotumwa na utekelezaji wa programu inaendelea kwa kawaida. Katika CPU zilizo ngumu zaidi, maelekezo mengi yanaweza kufutwa, kutumiwa, na kutekelezwa wakati huo huo. Sehemu hii inaelezea kile kinachojulikana kama " bomba la RISC ya kawaida ", ambayo ni ya kawaida kati ya CPU zilizo rahisi kutumika katika vifaa vingi vya umeme (mara nyingi huitwa microcontroller). Kwa kiasi kikubwa hupuuza jukumu muhimu la cache ya CPU , na hivyo hatua ya upatikanaji wa bomba.

Maagizo mengine yanafanya kazi ya mpango wa mpango badala ya kutoa data ya matokeo moja kwa moja; maelekezo hayo kwa ujumla huitwa "kuruka" na kuwezesha tabia ya mpango kama matanzi , utekelezaji wa mpango wa masharti (kupitia matumizi ya kuruka masharti), na kuwepo kwa kazi . [c] Katika wasindikaji wengine, maelekezo mengine yanabadilisha hali ya bits kwenye rejista ya "bendera" . Bendera hizi zinaweza kutumika kuathiri jinsi mpango unavyofanya, kwa kuwa mara nyingi huonyesha matokeo ya shughuli mbalimbali. Kwa mfano, katika wasindikaji vile "kulinganisha" maelekezo hupima maadili mawili na kuweka au kufuta bits katika bendera kujiandikisha ili kuonyesha ambayo ni mkubwa au kama ni sawa; moja ya bendera hizi inaweza kisha kutumika na kuruka maelekezo ya baadaye ili kuamua mtiririko wa mpango.

Tengeneza

Hatua ya kwanza, kuingiza, inahusisha kurejesha maelekezo (ambayo inawakilishwa na idadi au mlolongo wa idadi) kutoka kwenye kumbukumbu ya programu. Eneo la maelekezo (anwani) katika kumbukumbu ya programu inatajwa na counter counter (PC), ambayo huhifadhi namba inayobainisha anwani ya maagizo yafuatayo ya kufuatiwa. Baada ya kuagizwa, PC imeongezeka kwa urefu wa mafundisho ili iwe na anwani ya maagizo yafuatayo katika mlolongo. [d] Mara nyingi, maelekezo ya kutakiwa yanapaswa kurejeshwa kutoka kwenye kumbukumbu ndogo, na kusababisha CPU kupoka wakati wa kusubiri maelekezo ya kurejeshwa. Suala hili ni kwa kiasi kikubwa kushughulikiwa katika wasindikaji wa kisasa na caches na usanifu wa bomba (angalia hapa chini).

Thibitisha

Maagizo ambayo CPU hutafuta kutoka kwenye kumbukumbu huamua kile CPU itafanya. Katika hatua ya decode, iliyofanywa na mzunguko unaojulikana kama decoder ya maelekezo, maelekezo yanabadilishwa kuwa ishara zinazodhibiti sehemu nyingine za CPU.

Njia ambayo maelekezo inafasiriwa huelezewa na maelekezo ya CPU ya kuweka usanifu (ISA). [e] Mara nyingi, kikundi kimoja cha bits (yaani, "shamba") ndani ya maagizo, inayoitwa opcode, inaonyesha ni operesheni gani inayofanyika, wakati mashamba yaliyobaki hutoa maelezo ya ziada yanayotakiwa kufanya kazi, kama vile operesheni. Wafanyakazi hao wanaweza kuelezwa kama thamani ya mara kwa mara (inayoitwa thamani ya haraka), au kama eneo la thamani ambayo inaweza kuwa rejista ya processor au anwani ya kumbukumbu, kama ilivyoelezwa na hali ya kushughulikia .

Katika baadhi ya CPU hutengeneza decoder ya maagizo inatekelezwa kama ngumu, mzunguko usiobadilishwa. Kwa wengine, microprogram hutumiwa kutafsiri maagizo katika seti ya ishara za usanidi wa CPU ambazo hutumiwa sequentially juu ya vurugu nyingi za saa. Katika hali nyingine kumbukumbu ambayo huhifadhi microprogram inarejeshwa, na hivyo inawezekana kubadili njia ambayo CPU huamua maagizo.

Tengeneza

Baada ya kuteka na kuamua hatua, hatua ya kutekeleza inafanyika. Kulingana na usanifu wa CPU, hii inaweza kuwa na hatua moja au mlolongo wa vitendo. Wakati wa kila hatua, sehemu mbalimbali za CPU zinaunganishwa kwa umeme ili waweze kufanya yote au sehemu ya operesheni inayotakiwa na kisha hatua imekamilika, kwa kawaida katika kukabiliana na pigo la saa. Mara nyingi matokeo yanaandikwa kwa usajili wa ndani wa CPU kwa upatikanaji wa haraka na maagizo yafuatayo. Katika kesi nyingine Matokeo yanaweza kuandikwa kwa polepole, lakini chini ya ghali na ya juu ya uwezo kumbukumbu kuu .

Kwa mfano, ikiwa maagizo ya ziada yanapaswa kutekelezwa, pembejeo za mantiki ya vitengo (ALU) zinaunganishwa kwa jozi ya vyanzo vya operesheni (nambari zinazopigwa), ALU imetengenezwa kufanya operesheni ya kuongeza ili jumla yake pembejeo za uendeshaji zitatokea katika pato lake, na pato la ALU limeunganishwa na kuhifadhi (kwa mfano, rejista au kumbukumbu) ambayo itapata jumla. Wakati pembe ya saa ikitokea, jumla itahamishiwa kuhifadhiwa, na ikiwa kiasi kikubwa ni kubwa sana (yaani, ni kubwa kuliko ukubwa wa neno la pato la ALU), bendera ya kufurika ya hesabu itawekwa.

Muundo na utekelezaji

Zima mchoro wa kompyuta ya msingi ya uniprocessor-CPU. Mstari mweusi huonyesha mtiririko wa data, wakati mistari nyekundu yanaonyesha mtiririko wa udhibiti; Mishale huonyesha maelekezo ya mtiririko.

Uingizwaji katika mzunguko wa CPU ni seti ya shughuli za msingi ambazo zinaweza kufanya, inayoitwa kuweka maelekezo . Shughuli hizo zinaweza kuhusisha, kwa mfano, kuongeza au kusitisha namba mbili, kulinganisha namba mbili, au kuruka kwenye sehemu tofauti ya programu. Kila operesheni ya msingi inawakilishwa na mchanganyiko fulani wa bits , inayojulikana kama opcode lugha ya opcode ; wakati wa kutekeleza maagizo katika programu ya lugha ya mashine, CPU huamua ni operesheni gani inayofanya kwa "kuainisha" opcode. Maagizo kamili ya lugha ya mashine yanajumuisha opcode na, mara nyingi, bits za ziada ambazo hufafanua hoja za operesheni (kwa mfano, namba za kuingizwa katika kesi ya operesheni ya kuongeza). Kuendeleza kiwango cha utata, programu ya lugha ya mashine ni mkusanyiko wa maelekezo ya lugha ya mashine ambayo CPU hufanya.

Operesheni halisi ya hisabati kwa kila maelekezo hufanywa na mzunguko wa mantiki ya pamoja ndani ya processor ya CPU inayojulikana kama kitengo cha mantiki ya hesabu au ALU. Kwa ujumla, CPU hufanya maagizo kwa kuifuta kutoka kwenye kumbukumbu, kwa kutumia ALU kufanya kazi, na kisha kuhifadhi matokeo kwa kumbukumbu. Mbali na maagizo ya hisabati kamili na shughuli za mantiki, maagizo mengine ya mashine huwepo, kama vile wale wa kupakia data kutoka kwenye kumbukumbu na kuihifadhi, shughuli za matawi, na uendeshaji wa hisabati kwenye nambari za uhakika zinazoendeshwa na kitengo cha CPU kilichozunguka (FPU ). [50]

Udhibiti wa kitengo

Kitengo cha udhibiti cha CPU kina mzunguko unaotumia ishara ya umeme ili kuongoza mfumo wa kompyuta nzima kutekeleza maagizo ya mpango wa kuhifadhiwa. Kitengo cha udhibiti haufanyi maagizo ya programu; badala, inaelekeza sehemu nyingine za mfumo wa kufanya hivyo. Kitengo cha kudhibiti kinawasiliana na ALU na kumbukumbu.

Kitengo cha mantiki ya Hesabu

Uwakilishi wa alama ya ALU na ishara zake za pembejeo na pato

Hesabu mantiki kitengo (ALU) ni mzunguko digital ndani ya processor kwamba hufanya integer hesabu na bitwise mantiki utendaji. Pembejeo kwa ALU ni maneno ya data yanayotumika kwenye (inayoitwa operesheni ), maelezo ya hali kutoka kwa shughuli za awali, na kanuni kutoka kwa kitengo cha udhibiti kinachoonyesha kazi inayofanya. Kulingana na maagizo yanayotakiwa, waendeshaji wanaweza kuja kutoka kwa usajili wa ndani wa CPU au kumbukumbu ya nje, au inaweza kuwa mara kwa mara yanayotokana na ALU yenyewe.

Wakati ishara zote za uingizaji zimepangwa na kuzienea kwa njia ya mzunguko wa ALU, matokeo ya operesheni iliyofanywa inaonekana katika matokeo ya ALU. Matokeo yake ni neno la data, ambalo linaweza kuhifadhiwa kwenye rejista au kumbukumbu, na maelezo ya hali ambayo kawaida kuhifadhiwa katika usajili maalum, ndani ya CPU iliyohifadhiwa kwa lengo hili.

Kitengo cha usimamizi wa Kumbukumbu

Wengi wa mwisho wa microprocessors (kwenye desktop, kompyuta, kompyuta za seva) wana kitengo cha usimamizi wa kumbukumbu, kutafsiri anwani za mantiki kwenye anwani za kimwili za RAM, kutoa ulinzi wa kumbukumbu na uwezo wa kupiga kura , muhimu kwa kumbukumbu halisi . Wasindikaji wachache, hususan microcontrollers , kwa kawaida hawajumuishi MMU.

Kiwango cha saa ya

Wengi CPU ni mzunguko wa synchronous , ambayo ina maana wanatumia ishara ya saa ili kuendesha shughuli zao za uwiano. Ishara ya saa huzalishwa na mzunguko wa nje wa oscillator ambao huzalisha idadi ya pulses kila mara kwa njia ya wimbi la mraba mara kwa mara. Mzunguko wa mzunguko wa saa huamua kiwango ambacho CPU hufanya maelekezo na, kwa hiyo, kasi ya saa, maagizo zaidi ya CPU atafanya kila pili.

Ili kuhakikisha uendeshaji sahihi wa CPU, muda wa saa ni mrefu kuliko muda uliohitajika kwa ishara zote kueneza (kusonga) kupitia CPU. Kwa kuweka muda wa saa kwa thamani zaidi juu ya ucheleweshaji mbaya zaidi wa uenezi , inawezekana kuunda CPU nzima na jinsi inavyohamisha data karibu na "pande zote" za ishara ya saa na kupanda. Hii ina faida ya kurahisisha CPU kwa kiasi kikubwa, wote kutoka mtazamo wa kubuni na mtazamo wa kuhesabu sehemu. Hata hivyo, pia hubeba hasara kwamba CPU nzima inapaswa kusubiri vipengele vyake vya polepole, ingawa baadhi ya sehemu zake zina kasi zaidi. Ukomo huu kwa kiasi kikubwa ume fidia fidia kwa njia mbalimbali za kuongezea parallelism ya CPU (tazama hapa chini).

Hata hivyo, maboresho ya usanifu pekee haina kutatua matatizo yote ya CPU za synchronous. Kwa mfano, ishara ya saa inakabiliwa na ucheleweshaji wa ishara nyingine yoyote ya umeme. Viwango vya saa ya juu katika CPU zinazozidi kuwa ngumu hufanya iwe vigumu zaidi kuweka ishara ya saa katika awamu (iliyochanganywa) katika kitengo hicho. Hii imesababisha CPU nyingi za kisasa kuhitaji ishara nyingi za saa zinazolingana ili kuepuka kuchelewesha ishara moja kwa kiasi kikubwa ili kusababisha CPU kuwa mbaya. Suala jingine kubwa, kama viwango vya saa huongezeka kwa kasi, ni kiasi cha joto ambacho hutolewa na CPU . Saa inayobadili daima husababisha vipengele vingi vya kubadili bila kujali ikiwa vinatumiwa wakati huo. Kwa ujumla, kipengele kinachotumia hutumia nishati zaidi kuliko kipengele katika hali ya tuli. Kwa hiyo, kama kiwango cha saa kinaongezeka, pia hutumia matumizi ya nishati, na kusababisha CPU kuhitaji kutoroka zaidi kwa joto kwa njia ya ufumbuzi wa baridi ya CPU .

Njia moja ya kushughulika na uingizaji wa vipengele visivyosaidiwa huitwa saa ya kupiga saa , ambayo inahusisha kuzima ishara ya saa kwa vipengele visivyo na kazi (kwa ufanisi kuwazuia). Hata hivyo, mara nyingi hii inaonekana kuwa vigumu kutekeleza na kwa hiyo haioni matumizi ya kawaida nje ya miundo ya chini sana. Muundo mmoja wa hivi karibuni wa CPU ambao hutumia saa nyingi sana ni IBM PowerPC -iliyobaki Xenon iliyotumika katika Xbox 360 ; kwa njia hiyo, mahitaji ya nguvu ya Xbox 360 yanapunguzwa sana. [51] Njia nyingine ya kukabiliana na baadhi ya matatizo na ishara ya saa ya kimataifa ni kuondolewa kwa ishara ya saa kabisa. Wakati kuondokana na ishara ya saa ya kimataifa hufanya mchakato wa kubuni kuwa ngumu zaidi kwa njia nyingi, miundo ya asynchronous (au ya saa) hubeba faida kubwa katika matumizi ya nguvu na kutoweka kwa joto kwa kulinganisha na miundo sawa ya synchronous. Ingawa si kawaida, CPU zote zenye nguvu zamejengwa bila kutumia ishara ya saa ya kimataifa. Mifano mbili muhimu ya hii ni AMULET inayofaa ya ARM na MiniMIPS inayoambatana na MIPS R3000.

Badala ya kuondoa kabisa ishara ya saa, baadhi ya miundo ya CPU inaruhusu sehemu fulani za kifaa kuwa zenye nguvu, kama vile kutumia ALU zisizo na nguvu pamoja na superscalar pipelining kufikia baadhi ya faida ya hesabu ya hesabu. Ingawa si wazi kabisa kama miundo isiyo na nguvu kabisa inaweza kufanya kwa kiwango kinachofananishwa au bora kuliko wenzao wa synchronous, ni dhahiri kwamba hufanya vizuri zaidi katika shughuli za hesabu rahisi. Hii, pamoja na matumizi bora ya nguvu na mali ya kutoweka kwa joto, huwafanya kuwa mzuri sana kwa kompyuta zilizoingia . [52]

kamili

Kila CPU inawakilisha maadili ya nambari kwa namna fulani. Kwa mfano, baadhi ya mapema kompyuta digital kuwakilishwa namba kama ukoo decimal (msingi 10) mfumo wa nambari maadili, na wengine walioajiriwa uwakilishi zaidi ya kawaida kama vile ternary (msingi tatu). Karibu CPU zote za kisasa zinawakilisha idadi katika fomu ya binary , na kila tarakimu inawakilishwa na wingi wa thamani ya kimwili kama vile "high" au "chini" voltage . [f]

Neno sita-sita linalowakilisha uwakilishi wa binary wa thamani ya decimal 40. Wengi wa CPU za kisasa hutumia ukubwa wa maneno ambayo ni nguvu ya mbili, kwa mfano 8, 16, 32 au 64 bits.

Kuhusiana na uwakilishi wa namba ni ukubwa na usahihi wa namba za integer ambazo CPU inaweza kuiwakilisha. Katika kesi ya CPU binary, hii inapimwa na idadi ya bits (tarakimu kubwa ya integer binary encoded) ambayo CPU inaweza mchakato katika operesheni moja, ambayo ni kawaida huitwa " neno ukubwa ", "bit upana", "data upana wa njia "," usahihi wa integer ", au" umuhimu wa ukubwa ". Ukubwa wa ukubwa wa CPU huamua maadili ya jumla ambayo yanaweza kuendesha moja kwa moja. [g] Kwa mfano, CPU 8-bit inaweza kuendesha moja kwa moja integers kuwakilishwa na bits nane, ambayo ina aina 256 (2 8 ) discrete integer.

Vipengele vingi vinaweza pia kuathiri idadi ya maeneo ya kumbukumbu ambayo CPU inaweza kushughulikia moja kwa moja (anwani ni thamani ya jumla inayowakilisha eneo fulani la kumbukumbu). Kwa mfano, kama CPU ya binary inatumia bits 32 ili kuwakilisha anwani ya kumbukumbu kisha inaweza kushughulikia moja kwa moja maeneo ya kumbukumbu 32 . Ili kuzuia ukomo huu na kwa sababu nyingine mbalimbali, baadhi ya CPU hutumia taratibu (kama vile kubadili benki ) ambayo inaruhusu kumbukumbu ya ziada ili kushughulikiwa.

CPU zilizo na ukubwa wa neno zinahitaji mzunguko zaidi na kwa hiyo ni kubwa zaidi, gharama zaidi, na hutumia nguvu zaidi (na hivyo huzalisha joto zaidi). Matokeo yake, microcontrollers ndogo ya 4 au 8-bit hutumika kwa kawaida katika matumizi ya kisasa hata ingawa CPU zilizo na ukubwa wa neno kubwa (kama vile 16, 32, 64, hata 128-bit) zinapatikana. Wakati utendaji wa juu unavyotakiwa, hata hivyo, faida za ukubwa wa neno kubwa (safu kubwa za data na nafasi za anwani) zinaweza kuzidi hasara. CPU inaweza kuwa na njia za data za ndani mfupi kuliko ukubwa wa neno ili kupunguza ukubwa na gharama. Kwa mfano, hata ingawa IBM System / 360 ya kuweka maagizo ilikuwa kuweka 32-bit maelekezo, System / 360 Model 30 na Model 40 alikuwa njia 8-bit data katika kitengo mantiki kitengo, hivyo kuongeza 32-bit required nne mizunguko, moja kwa kila bits 8 ya operesheni, na, ingawa kuweka maagizo ya mfululizo wa Motorola 68000 ilikuwa ni kuweka maagizo ya 32-bit, Motorola 68000 na Motorola 68010 walikuwa na njia za data 16-bit katika kitengo cha mantiki ya hesabu, ili Kuongeza 32-bit inahitaji mizunguko miwili.

Ili kupata baadhi ya faida zinazotolewa na urefu wa chini na wa juu kidogo, seti nyingi za maelekezo zina tofauti tofauti tofauti kwa data integer na floating-point, kuruhusu CPU kutekeleza maagizo ya kuweka kuwa tofauti tofauti widths kwa sehemu tofauti ya kifaa. Kwa mfano, mfumo wa IBM / 360 wa maagizo ulikuwa ni mdogo wa 32, lakini uliunga mkono maadili ya hatua ya chini ya 64-bit ili kuwezesha usahihi zaidi na upeo katika nambari za uhakika. [27] Mfumo / Mfano 360 wa 65 ulikuwa na nyongeza ya 8-bit kwa hesabu ya decimal na fasta-point binary na adder 60-bit kwa hesabu-hatua ya hesabu. [53] Mipango ya baadaye ya CPU hutumia upana sawa na mchanganyiko, hususan wakati processor ina maana ya matumizi ya jumla-msingi ambapo usawa unaofaa wa integer na uwezo unaozunguka unahitajika.

Ulinganisha

Mfano wa CPU ya subscalar, ambayo inachukua mizunguko ya saa kumi na tano ili kukamilisha maelekezo matatu.

Maelezo ya utendaji wa msingi wa CPU iliyotolewa katika sehemu ya awali inaelezea fomu rahisi ambayo CPU inaweza kuchukua. Aina hii ya CPU, ambayo hujulikana kama subscalar , inafanya kazi na kutekeleza maelekezo moja kwa vipande moja vya data kwa wakati mmoja, ambayo ni chini ya maelekezo moja kwa mzunguko wa saa ( IPC <1 ).

Utaratibu huu unaleta ufanisi wa asili katika CPU za kibinadamu. Kwa kuwa maagizo moja tu yanatekelezwa kwa wakati, CPU nzima lazima isisubiri maagizo hayo ya kukamilisha kabla ya kuendelea na maagizo yafuatayo. Matokeo yake, CPU ya malipo hupata "hung up" kwenye maelekezo ambayo inachukua mzunguko wa saa zaidi ili kukamilisha utekelezaji. Hata kuongeza kitengo cha pili cha utekelezaji (angalia hapa chini) haimaboresha utendaji sana; badala ya njia moja kuwa hung up, sasa njia mbili ni Hung up na idadi ya transistors zisizotumika ni kuongezeka. Mpangilio huu, ambapo rasilimali za utekelezaji wa CPU zinaweza kufanya kazi kwa maagizo moja tu kwa wakati mmoja, inaweza tu kufikia utendaji wa scalar (maelekezo moja kwa mzunguko wa saa, IPC = 1 ). Hata hivyo, utendaji ni karibu daima subscalar (chini ya maelekezo moja kwa mzunguko wa saa, IPC <1 ).

Majaribio ya kufikia uchezaji na utendaji bora yamesababisha njia mbalimbali za kubuni ambazo hufanya CPU iwe chini ya mstari na zaidi. Wakati akimaanisha kufanana kwa vyuo vya CPU, maneno mawili hutumiwa kutengeneza mbinu hizi za kubuni:

  • uwiano wa ngazi ya mafundisho (ILP), ambayo inataka kuongeza kiwango ambacho maelekezo hufanyika ndani ya CPU (yaani, kuongeza matumizi ya rasilimali za kutekeleza kufa);
  • ufananishaji wa kiwango cha kazi (TLP), ambayo inalenga kuongeza idadi ya thread au michakato ambayo CPU inaweza kutekeleza wakati huo huo.

Kila mbinu inatofautiana kwa njia zote ambazo zinatekelezwa, pamoja na ufanisi wa jamaa wanazopata katika kuongeza utendaji wa CPU kwa ajili ya maombi. [h]

Ulinganisho wa kiwango cha mafundisho

Bomba la msingi la tano. Katika hali bora zaidi, bomba hii inaweza kuendeleza kiwango cha kukamilika kwa maelekezo moja kwa mzunguko wa saa.

Njia moja rahisi zaidi ya kukamilisha kufanana kwa uwiano ni kuanzisha hatua za kwanza za maelekezo ya kupakua na kuamua kabla ya maagizo ya awali ya kumaliza. Hii ni aina rahisi zaidi ya mbinu inayojulikana kama maagizo ya pipelining , na hutumiwa karibu na CPU zote za kisasa za jumla. Pipelining inaruhusu maagizo zaidi ya moja ambayo yanapaswa kutekelezwa wakati wowote kwa kuvunja njia ya utekelezaji katika hatua za wazi. Ugawanyiko huu unaweza kulinganishwa na mstari wa mkusanyiko, ambapo maagizo yanafanywa zaidi katika kila hatua hadi itakapopona bomba la kutekeleza na hustaafu.

Pipelining haina, hata hivyo, kuanzisha uwezekano kwa hali ambapo matokeo ya operesheni ya awali inahitajika kukamilisha operesheni ijayo; hali mara nyingi hujulikana kama mgogoro wa kutegemea data. Ili kukabiliana na hili, huduma ya ziada inapaswa kuchukuliwa ili kuchunguza hali hizi na kuchelewesha sehemu ya bomba la mafundisho ikiwa hii inatokea. Kwa kawaida, kukamilisha hili inahitaji mzunguko wa ziada, hivyo wasindikaji wa pipelini ni ngumu zaidi kuliko wale wanaojitokeza (ingawa si kwa kiasi kikubwa hivyo). Programu ya pipelisi inaweza kuwa karibu sana, iliyozuiwa tu na maduka ya bomba (matumizi ya maagizo zaidi ya mzunguko wa saa moja katika hatua).

Bomba rahisi zaidi. Kwa kuteka na kupeleka maelekezo mawili kwa wakati mmoja, maelekezo mawili juu ya mzunguko wa saa inaweza kukamilika.

Uboreshaji zaidi juu ya wazo la kufundisha pipelining ulisababisha maendeleo ya njia ambayo hupunguza muda usiofaa wa vipengele vya CPU hata zaidi. Miundo ambayo inasemekana kuwa ya juu ni pamoja na bomba la mafunzo ya muda mrefu na vitengo vingi vinavyofanyiwa utekelezaji . [54] Katika bomba la superscalar, maelekezo mengi yanasomewa na kupitishwa kwa mjumbe, ambayo huamua ikiwa maelekezo yanaweza kufanywa sawa (wakati huo huo). Ikiwa ndivyo wanavyopelekwa kwa vitengo vya kutosha vya kutosha, na kusababisha uwezo wa maelekezo kadhaa ya kutekelezwa wakati huo huo. Kwa ujumla, maagizo zaidi ya CPP superscalar ina uwezo wa kupeleka wakati huo huo kusubiri vitengo vya utekelezaji, maagizo zaidi yatafanywa katika mzunguko uliotolewa.

Ugumu zaidi katika muundo wa usanifu wa CPU superscalar uongo katika kuunda dispatcher yenye ufanisi. Mtangazaji anahitaji kuwa na haraka na kwa usahihi kutambua kama maelekezo yanaweza kufanywa kwa usawa, na pia kuwapeleka kwa njia ya kuweka vitengo vingi vya kutekeleza kazi iwezekanavyo. Hii inahitaji kwamba bomba la mafundisho lijazwe mara nyingi iwezekanavyo na inasababisha haja katika mbinu za usanifu wa superscala kwa kiasi kikubwa cha cache ya CPU . Pia inafanya athari -avoiding mbinu kama utabiri tawi , utekelezaji kubahatisha , na nje ya utaratibu wa utekelezaji muhimu kwa kudumisha viwango vya juu vya utendaji. Kwa kujaribu kutabiri ni tawi gani (au njia) maelekezo ya masharti yatachukua, CPU inaweza kupunguza idadi ya mara ambazo bomba nzima inasubiri mpaka maagizo ya masharti yamekamilishwa. Ufanisi wa utekelezaji mara nyingi hutoa utendaji wa kawaida huongeza kwa kutekeleza sehemu za msimbo ambao hauwezi kuhitajika baada ya operesheni ya masharti kukamilika. Utaratibu wa nje wa utaratibu unapanga upya amri ambayo maelekezo hufanyika ili kupunguza kuchelewesha kutokana na utegemezi wa data. Pia ikiwa kuna mwongozo mmoja wa maelekezo, mkondo wa data nyingi -kesi wakati data nyingi kutoka kwa aina hiyo zinapaswa kusindika-, wasindikaji wa kisasa wanaweza kuzima sehemu za bomba ili wakati maagizo moja yamefanyika mara nyingi, CPU huacha kurudi na kuamua hatua na hivyo huongeza utendaji kwa wakati fulani, hasa katika injini za programu nyingi sana kama programu ya uumbaji video na usindikaji picha.

Katika kesi ambapo sehemu ya CPU ni superscalar na sehemu sio, sehemu ambayo haitoshi adhabu ya utendaji kutokana na ratiba ya ratiba. Intel P5 Pentium ilikuwa na viwango viwili vya superscala ambavyo vinaweza kukubali maelekezo moja kwa kila mzunguko wa saa kila mmoja, lakini FPU haikuweza kukubali maelekezo moja kwa mzunguko wa saa. Hivyo P5 ilikuwa integer superscalar lakini si floating uhakika superscalar. Mrithi wa Intel kwa usanifu wa P5, P6 , aliongeza uwezo mkuu wa vipengele vyake vilivyozunguka, na hivyo aliongeza ongezeko kubwa la utendaji wa maelekezo ya uhakika.

Pipelining rahisi na superscalar inaongeza ILP ya CPU kwa kuruhusu processor moja kukamilisha utekelezaji wa maelekezo kwa viwango vya zaidi ya maelekezo moja kwa mzunguko wa saa. [I] wengi wa kisasa CPU miundo ni angalau superscalar, na karibu wote CPU madhumuni ya jumla iliyoundwa katika miaka kumi iliyopita superscalar. Katika miaka ya baadaye baadhi ya msisitizo katika kubuni high-ILP kompyuta imetolewa nje ya vifaa vya CPU na katika interface yake ya programu, au ISA . Mkakati wa neno la muda mrefu sana wa mafundisho (VLIW) husababisha ILP kuwa na maoni moja kwa moja na programu, kupunguza umuhimu wa kazi ambayo CPU inapaswa kufanya ili kuongeza ILP na hivyo kupunguza ugumu wa kubuni.

Ulinganisho wa ngazi ya kazi.

Mkakati mwingine wa kufikia utendaji ni kutekeleza nyuzi nyingi au michakato kwa sambamba. Eneo hili la utafiti linajulikana kama kompyuta sambamba . [55] Katika utamaduni wa Flynn , mkakati huu unajulikana kama mkondo wa maelekezo mengi, mkondo wa data nyingi (MIMD). [56]

Teknolojia moja kutumika kwa ajili hii ilikuwa multiprocessing (MP). [57] Ladha ya awali ya teknolojia hii inajulikana kama multiprocessing ya kawaida (SMP), ambapo idadi ndogo ya CPUs hushiriki mtazamo thabiti wa mfumo wao wa kumbukumbu. Katika mpango huu, kila CPU ina vifaa vya ziada ili kudumisha mtazamo wa kumbukumbu wa kila siku. Kwa kuepuka mtazamo wa kumbukumbu za kawaida, CPU zinaweza kushirikiana kwenye programu sawa na programu zinaweza kuhamia kutoka kwenye CPU moja hadi nyingine. Ili kuongeza idadi ya CPU zilizoshirikisha zaidi ya mipango machache, mipango kama vile upatikanaji wa kumbukumbu isiyo ya sare (NUMA) na taratibu zinazohusiana na saraka zilianzishwa miaka ya 1990. Mfumo wa SMP ni mdogo kwa idadi ndogo za CPU wakati mifumo ya NUMA imejengwa na maelfu ya wasindikaji. Awali, multiprocessing ilijengwa kwa kutumia CPU nyingi na bodi ili kutekeleza ushirikiano kati ya wasindikaji. Wakati wasindikaji na ushirikiano wao wote wanatekelezwa kwenye chip moja, teknolojia inajulikana kama multi -cessing kiwango cha chip (CMP) na chip moja kama programu ya msingi .

Baadaye ilifahamu kwamba ulinganifu wa nafaka bora ulikuwepo na mpango mmoja. Programu moja inaweza kuwa na thread kadhaa (au kazi) ambazo zinaweza kutekelezwa tofauti au sambamba. Baadhi ya mifano ya mwanzo ya teknolojia hii kutekelezwa usindikaji wa pembejeo / utoaji wa pato kama vile upatikanaji wa kumbukumbu moja kwa moja kama thread tofauti kutoka kwenye fomu ya kuhesabu. Mbinu zaidi ya teknolojia hii ilianzishwa miaka ya 1970 wakati mifumo ilipangwa kutekeleza nyuzi nyingi za kuhesabu kwa sambamba. Teknolojia hii inajulikana kama threading nyingi (MT). Njia hii inachukuliwa kuwa ya gharama nafuu zaidi kuliko uingizaji wa multiprocessing, kama namba ndogo tu ya vipengele ndani ya CPU inachukuliwa ili kuunga mkono MT kinyume na CPU nzima katika kesi ya Mbunge. Katika MT, vitengo vya utekelezaji na mfumo wa kumbukumbu ikiwa ni pamoja na caches hushirikiwa kati ya thread nyingi. Kushindwa kwa MT ni kwamba msaada wa vifaa kwa multithreading unaonekana zaidi kwa programu kuliko ya MP na hivyo programu ya msimamizi kama mifumo ya uendeshaji lazima iwe na mabadiliko makubwa ya kusaidia MT. Aina moja ya MT iliyofanywa kutekelezwa inajulikana kama multithreading ya muda , ambapo fimbo moja inafanywa mpaka imesimama kusubiri data kurudi kutoka kumbukumbu ya nje. Katika mpango huu, CPU ingekuwa haraka kwa muktadha kubadili thread nyingine ambayo tayari kukimbia, kubadili mara nyingi kufanyika katika mzunguko wa saa moja ya CPU, kama UltraSPARC T1 . Aina nyingine ya MT ni multithreading wakati huo huo , ambapo maagizo kutoka thread nyingi zinafanyika kwa sambamba ndani ya mzunguko wa saa moja ya CPU.

Kwa miongo kadhaa tangu miaka ya 1970 hadi kufikia miaka ya 2000, lengo la kubuni mipango ya juu ya utendaji wa CPU ilikuwa kwa kiasi kikubwa katika kufikia ILP juu kupitia teknolojia kama vile pipelining, caches, superscalar utekelezaji, utekelezaji wa nje, nk. , CPU zenye njaa za nguvu kama vile Intel Pentium 4 . Katika miaka ya 2000 iliyopita, wabunifu wa CPU walishindwa kutokana na kufikia utendaji wa juu kutoka kwa mbinu za ILP kutokana na tofauti ya kukua kati ya mzunguko wa uendeshaji wa CPU na masafa kuu ya uendeshaji kumbukumbu na pia kuongezeka kwa upungufu wa nguvu za CPU kutokana na mbinu zaidi za ILP za esoteric.

Wazalishaji wa CPU kisha walikopwa mawazo kutoka kwa masoko ya biashara ya kibiashara kama vile usindikaji wa shughuli , ambapo utendaji wa jumla wa programu nyingi, pia unajulikana kama toput kompyuta, ulikuwa muhimu zaidi kuliko utendaji wa thread moja au mchakato.

Mkazo huu wa kuzingatia unaonyeshwa na kuenea kwa miundo miwili na ya msingi ya processor na hasa, miundo mpya ya Intel inayofanana na usanifu wa chini wa P6 . Vipengee vya muda mfupi katika familia kadhaa za wasindikaji huonyesha CMP, ikiwa ni pamoja na x86-64 Opteron na Athlon 64 X2 , SPARC UltraSPARC T1 , IBM POWER4 na POWER5 , pamoja na CPU nyingi za video za console za video kama muundo wa PowerPC wa Xbox 360 wa tatu, na microprocessor ya kiini cha kati ya PlayStation 3 .

Takwimu za kulinganisha

Mtazamo usio wa kawaida lakini unaozidi kuwa muhimu wa wasindikaji (na kwa kweli, kompyuta kwa ujumla) huhusika na ulinganifu wa data. Wachunguzi waliokujadiliwa hapo awali wote hujulikana kama aina fulani ya kifaa cha scalar. [j] Kama jina linamaanisha, wasindikaji wa vector kushughulikia vipande vingi vya data katika mazingira ya maelekezo moja. Hii inatofautiana na wasindikaji wa scalar, unaohusika na kipande kimoja cha data kwa kila maelekezo. Kutumia utawala wa Flynn , mipango miwili ya kushughulika na data kwa ujumla inajulikana kama mkondo wa maelekezo moja, mkondo wa data nyingi (SIMD) na mkondo wa maelekezo moja, mkondo wa data moja (SISD), kwa mtiririko huo. Huduma kubwa katika kuunda wasindikaji unaohusika na vectors data ni katika optimizing kazi ambayo huwa na haja ya operesheni sawa (kwa mfano, jumla au bidhaa dot ) kufanyika katika seti kubwa ya data. Baadhi ya mifano ya classic ya aina hizi za kazi ni pamoja na maombi ya multimedia (picha, video, na sauti), pamoja na aina nyingi za kazi za sayansi na uhandisi. Ingawa mchakato wa scalar lazima kukamilisha mchakato mzima wa kutengeneza, kuainisha, na kutekeleza kila maelekezo na thamani katika seti ya data, processor ya vector inaweza kufanya operesheni moja kwa seti kubwa ya takwimu na maelekezo moja. Bila shaka, hii inawezekana tu wakati programu inaelekea kuhitaji hatua nyingi ambazo zinatumika operesheni moja kwa seti kubwa ya data.

Wasindikaji wengi wa awali wa vector, kama vile Cray-1 , walihusishwa karibu na utafiti wa kisayansi na maombi ya cryptography . Hata hivyo, kama multimedia kwa kiasi kikubwa imebadilika kwenye vyombo vya habari vya digital, haja ya aina fulani ya SIMD kwa wasindikaji wa kusudi la jumla imekuwa muhimu. Muda mfupi baada ya kuingizwa kwa vipengee vya hatua zinazoanza ilianza kuwa sehemu ya kawaida kwa wasindikaji wa kusudi la jumla, vipimo na utekelezaji wa vitengo vya utekelezaji wa SIMD pia vilianza kuonekana kwa wasindikaji wa kusudi la jumla. [ wakati? ] Baadhi ya vipimo hivi vya awali vya SIMD - kama vile HP Multimedia Acceleration eXtensions (MAX) na MMX ya Intel - zilikuwa za pekee. Hii imeonekana kuwa kizuizi kikubwa kwa waendelezaji wa programu, kwani programu nyingi ambazo zinafaidika na SIMD hasa zinahusika na nambari za uhakika . Kwa kasi, watengenezaji wamesafisha na kurejesha miundo hii ya awali katika baadhi ya vipimo vya kawaida vya SIMD vya kisasa, ambazo huhusishwa na ISA moja. Mifano michache mashuhuri wa kisasa ni pamoja na Intel ya SSE na PowerPC yanayohusiana AltiVec (pia inajulikana kama VMX). [k]

Vipengee vya Virtual

Kompyuta ya wingu inaweza kuhusisha ugavi wa CPU kwenye vitengo vya usindikaji vya kati [58] (vCPUs [59] ).

Jeshi ni sawa sawa na mashine ya kimwili, ambayo mfumo wa virusi hufanya kazi. [60] Iwapo kuna mashine kadhaa za kimwili ambazo zinatumika chini na zinaweza kusimamiwa kwa ujumla, rasilimali za kikundi na rasilimali za kumbukumbu zinaunda fungu . Katika mifumo mingine, inawezekana kuongeza na kuondoa kutoka kwenye nguzo. Rasilimali zinazopatikana katika kiwango cha jeshi na kikundi kinaweza kugawanywa kwenye mabwawa ya rasilimali na granularity nzuri.

utendaji

Utendaji au kasi ya processor inategemea, kati ya mambo mengine mengi, kiwango cha saa (kwa ujumla hutolewa kwa wingi wa hertz ) na maelekezo kwa saa (IPC), ambayo pamoja ni sababu za maagizo kwa pili (IPS) ambayo CPU inaweza kufanya. [61] Wengi waliripoti maadili ya IPS wamewakilisha viwango vya utekelezaji wa "kilele" juu ya utaratibu wa mafundisho ya bandia na matawi machache, wakati mzigo wa kazi halisi unahusisha mchanganyiko wa maelekezo na matumizi, ambayo baadhi yake huchukua muda mrefu kutekeleza kuliko wengine. Utendaji wa utawala wa kumbukumbu pia huathiri sana utendaji wa processor, suala ambalo halijafikiriwa katika mahesabu ya MIPS. Kwa sababu ya matatizo haya, vipimo mbalimbali vya kawaida, mara nyingi huitwa "benchmarks" kwa kusudi hili-kama vile SPECint - vimeanzishwa ili kujaribu kupima utendaji halisi halisi katika matumizi ya kawaida.

Usindikaji utendaji wa kompyuta huongezeka kwa kutumia programu mbalimbali za msingi , ambazo huwa ni kuziba processors mbili au zaidi (inayoitwa cores kwa maana hii) katika mzunguko mmoja jumuishi. [62] Kwa hakika, programu ya msingi ya msingi itakuwa karibu mara mbili yenye nguvu kama mchakato mmoja wa msingi. Kwa mazoezi, faida ya utendaji ni ndogo sana, ni asilimia 50 tu, kutokana na algorithms ya programu isiyo ya kawaida na utekelezaji. [63] Kuongeza idadi ya cores katika processor (yaani mbili-core, quad-msingi, nk) huongeza mzigo wa kazi ambayo inaweza kushughulikiwa. Hii inamaanisha kwamba mtengenezaji sasa anaweza kushughulikia matukio mbalimbali ya kushindana, kuingilia kati, nk ambayo inaweza kuchukua pigo kwenye CPU ikiwa imefadhaika. Vipodozi hivi vinaweza kufikiriwa kama sakafu tofauti katika mmea wa usindikaji, na kila sakafu inachukua kazi tofauti. Wakati mwingine, vidonda hivi vitashughulikia kazi sawa kama vidonda karibu nao ikiwa msingi mmoja hautoshi kushughulikia habari.

Kutokana na uwezo maalum wa CPU za kisasa, kama kuunganisha vibaya na uncore , ambayo inahusisha kugawana rasilimali halisi za CPU wakati wa lengo la kuongezeka kwa matumizi, kiwango cha ufuatiliaji wa utendaji na matumizi ya vifaa polepole ikawa kazi ngumu zaidi. [64] Kama jibu, baadhi ya CPU hutekeleza mantiki ya ziada ya vifaa ambayo huangalia matumizi halisi ya sehemu mbalimbali za CPU na hutoa counters mbalimbali kupatikana kwa programu; mfano ni teknolojia ya Intel ya Utendaji wa Kuzingatia Utendaji . [3]

Tazama pia

  • Inazungumzia hali
  • Kituo cha Usindikaji wa AMD kasi
  • CISC
  • Kadi ya kompyuta
  • Uhandisi wa kompyuta
  • CPU msingi voltage
  • Tundu la CPU
  • Programu ya ishara ya Digital
  • Kuunganisha kwa sauti
  • Orodha ya usanifu wa CPU
  • Microprocessor
  • Multi-core processor
  • Pete ya ulinzi
  • RISC
  • Usindikaji wa mkondo
  • Kiwango cha Utendaji wa Kweli
  • Jaribu hali

Maelezo ya

  1. ^ Circuits zilizounganishwa sasa zinatumika kutekeleza CPU zote, ila kwa mashine chache zilizopangwa kuhimili mapigo makubwa ya umeme, sema kutoka silaha ya nyuklia.
  2. ^ Ile inayoitwa "von Neumann" memo aliwaeleza wazo la programu za kuhifadhiwa, [49] ambayo kwa mfano inaweza kuhifadhiwa kwenye kadi zenye mashimo , mkanda karatasi, au mkanda magnetic.
  3. ^ Kompyuta nyingine za kwanza kama Harvard Mark I haziunga mkono maelekezo yoyote ya "kuruka", kwa ufanisi kuzuia utata wa programu ambazo zinaweza kukimbia. Kwa kiasi kikubwa kwa sababu hii kwamba kompyuta hizi mara nyingi hazifikiriwa kuwa na CPU sahihi, licha ya kufanana kwao karibu na kompyuta za programu iliyohifadhiwa.
  4. ^ Tangu mpango wa programu unahesabu anwani za kumbukumbu na si maagizo , imeongezeka kwa idadi ya vitengo vya kumbukumbu ambayo neno la mafundisho lina. Katika kesi ya ISAs ya neno la maagizo ya muda mrefu, hii ni daima namba sawa. Kwa mfano, neno la maagizo la urefu wa 32-bit ISA ambalo linatumia maneno ya kumbukumbu ya 8-bit ingeweza kuongeza kasi ya PC kwa nne (isipokuwa katika kesi ya kuruka). ISAs ambazo hutumia maneno ya maagizo ya urefu wa urefu huongeza PC kwa idadi ya maneno ya kumbukumbu ambayo inalingana na urefu wa mafundisho ya mwisho.
  5. ^ Kwa sababu maelekezo ya kuweka usanifu wa CPU ni ya msingi kwa interface yake na matumizi, mara nyingi hutumiwa kama uainishaji wa "aina" ya CPU. Kwa mfano, "PowerPC CPU" inatumia tofauti ya PowerPC ISA. Mfumo unaweza kutekeleza ISA tofauti kwa kuendesha emulator.
  6. ^ Dhana ya kimwili ya voltage ni moja ya analog kwa asili, kwa kawaida kuwa na aina isiyo na kipimo cha maadili iwezekanavyo. Kwa madhumuni ya uwakilishi wa kimwili wa namba ya binary, aina mbili za volt zinafafanuliwa, moja kwa mantiki '0' na nyingine kwa mantiki '1'. Vipande hivi vinaelezewa na maumbo ya kubuni kama vile vilio vya kelele na sifa za vifaa vinazotumiwa kuunda CPU.
  7. ^ Wakati ukubwa wa ukubwa wa CPU unaweka kikomo kwenye safu za integer, hii inaweza (na mara nyingi ni) kushinda kutumia mchanganyiko wa programu na vifaa vya vifaa. Kwa kutumia kumbukumbu ya ziada, programu inaweza kuwakilisha integers magnitudes nyingi kubwa kuliko CPU inaweza. Wakati mwingine maagizo ya CPU yataweka hata kuwezesha shughuli kwenye idadi kubwa zaidi kuliko inaweza kuwakilisha kwa kutoa maelekezo ya kufanya hesabu kubwa ya hesabu kwa haraka. Njia hii ya kushughulika na integers kubwa ni polepole kuliko kutumia CPU na ukubwa wa integer ya juu, lakini ni biashara ya kutosha katika kesi ambapo natively kusaidia kamili integer mbalimbali zinazohitajika itakuwa gharama ya kuzuia. Angalia hesabu ya usahihi kwa maelezo zaidi juu ya integers za ukubwa wa kizuizi ambazo zinasaidia programu.
  8. ^ ILP wala TLP sio bora kuliko nyingine; wao ni njia tofauti tu ambazo zinaongeza ukubwa wa CPU. Kwa hivyo, wote wawili wana faida na hasara, ambazo mara nyingi hutegemea aina ya programu ambayo processor inalenga kukimbia. Mara nyingi CPU za High-TLP hutumiwa katika programu ambazo zinajipa vizuri kwa kugawanywa katika programu ndogo ndogo, kinachojulikana kama " shida zinazosababishwa na aibu ". Mara kwa mara, tatizo la computational ambayo inaweza kutatuliwa haraka na mikakati ya juu ya kubuni ya TLP kama multiprocessing ya kawaida inachukua muda zaidi kwa vifaa vya juu vya ILP kama vile CPU za superscalar, na kinyume chake.
  9. ^ Mfano bora zaidi (au kilele) viwango vya IPC katika architectures sana sana ni vigumu kudumisha kwani haiwezekani kuweka bomba la maarifa kujazwa wakati wote. Kwa hiyo, katika CPU nyingi za juu, wastani wa IPC endelevu mara nyingi hujadiliwa badala ya kilele cha IPC.
  10. ^ Mapema neno la scalar lilitumiwa kulinganisha hesabu ya IPC inayotolewa na mbinu mbalimbali za ILP. Hapa neno hutumiwa kwa hisia kali ya hisabati ili kulinganisha na vectors. Angalia scalar (hisabati) na Vector (jiometri) .
  11. ^ Ijapokuwa SSE / SSE2 / SSE3 imesimamia MMX katika wasindikaji wa kusudi la jumla wa Intel, baadaye miundo ya IA-32 bado inaunga mkono MMX. Hii mara nyingi hufanyika kwa kutoa zaidi ya utendaji wa MMX na vifaa sawa ambavyo vinasaidia seti nyingi za maelekezo ya SSE.

Marejeleo

  1. ^ B Weik, Martin H. (1961). Uchunguzi wa Tatu wa Mazingira ya Ndani ya Kompyuta ya Kompyuta . Maabara ya Utafiti wa Ballistic .
  2. ^ Kuck, David (1978). Kompyuta na Mafunzo, Vol 1 . John Wiley & Wanaume, Inc. p. 12. ISBN 0471027162 .
  3. ^ B Thomas Willhalm; Roman Dementiev; Patrick Fay (Desemba 18, 2014). "Intel Performance Counter Monitor - Njia bora ya kupima matumizi ya CPU" . software.intel.com . Iliondolewa Februari 17, 2015 .
  4. ^ Liebowitz, Kusek, Wapelelezi, Matt, Christopher, Rynardt (2014). Ufanisi wa VMware vSphere: Kuunda CPU, Kumbukumbu, Uhifadhi, na Mitandao kwa Mzigo wa Kazi wa Utendaji . Wiley. p. 68. ISBN 978-1-118-00819-5 .
  5. ^ Regan, Gerard. Historia Fupi ya Kompyuta . p. 66. ISBN 1848000839 . Iliondolewa Novemba 26, 2014 .
  6. ^ "Bit Bit" . Chuo cha Haverford. Imehifadhiwa kutoka kwa asili ya Oktoba 13, 2012 . Iliondolewa Agosti 1, 2015 .
  7. ^ "Rasimu ya kwanza ya Ripoti kwenye EDVAC" (PDF) . School Moore ya Uhandisi wa Umeme , Chuo Kikuu cha Pennsylvania . 1945.
  8. ^ Chuo Kikuu cha Stanford. "Historia ya kisasa ya kompyuta" . The Stanford Encyclopedia of Philosophy . Iliondolewa Septemba 25, 2015 .
  9. ^ Enticknap, Nicholas (Summer 1998), "Jubilee ya Golden Computing" , Ufufuo , Kampuni ya Uhifadhi wa Kompyuta (20), ISSN 0958-7403 , iliyopatikana 19 Aprili 2008
  10. ^ "Marko ya Manchester 1" . Chuo Kikuu cha Manchester . Iliondolewa Septemba 25, 2015 .
  11. ^ "Mzazi wa Kwanza" . Makumbusho ya Historia ya Kompyuta . Iliondolewa Septemba 29, 2015 .
  12. ^ "Historia ya Circuit Integrated" . Nobelprize.org . Iliondolewa Septemba 29, 2015 .
  13. ^ Turley, Jim. "Motoring na microprocessors" . Imeunganishwa . Iliondolewa Novemba 15, 2015 .
  14. ^ "Mwongozo wa Programu ya Mkono - Summer 2013" . Mamlaka ya Android . Iliondolewa Novemba 15, 2015 .
  15. ^ "ARM946 Programu" . ARM . Iliondolewa Novemba 15, 2015 .
  16. ^ "Konrad Zuse" . Makumbusho ya Historia ya Kompyuta . Iliondolewa Septemba 29, 2015 .
  17. ^ "Muda wa Historia ya Kompyuta: Kompyuta" . Makumbusho ya Historia ya Kompyuta . Iliondolewa Novemba 21, 2015 .
  18. ^ Nyeupe, Stefano. Historia Fupi ya Kompyuta - Kompyuta za Mwanzo wa Kwanza " . Iliondolewa Novemba 21, 2015 .
  19. ^ "Haraka ya Chuo Kikuu cha Harvard - Kitengo cha Punch Punch Unit" . Makumbusho ya Historia ya Kompyuta . Iliondolewa Novemba 21, 2015 .
  20. ^ "Ni tofauti gani kati ya usanifu wa von Neumann na usanifu wa Harvard?" . ARM . Iliondolewa Novemba 22, 2015 .
  21. ^ "Usanifu wa Mipangilio ya Juu unasaidia CPI ya Atmel AVR" . Atmel . Iliondolewa Novemba 22, 2015 .
  22. ^ "Inachukua, transistors na relays" . BBC . Iliondolewa Februari 7, 2016 .
  23. ^ "Kuanzisha Transistor ya Vurugu: Kifaa hiki hakifanyika chochote" . IEEE Spectrum . Iliondolewa Februari 7, 2016 .
  24. ^ "Utendaji wa Kompyuta ni nini?" . The National Academy Press . Iliondolewa Mei 16, 2016 .
  25. ^ 1953: Uhamisho wa Kompyuta Uliopita " . Makumbusho ya Historia ya Kompyuta . Imetafutwa Juni 3, 2016 .
  26. ^ "IBM System / 360 Dates na Tabia" . IBM.
  27. ^ B Amdahl, GM , Blaauw, GA ; Brooks, FP Jr. (Aprili 1964). "Usanifu wa IBM System / 360". IBM Journal ya Utafiti na Maendeleo . IBM . 8 (2): 87-101. Nini : 10.1147 / rd.82.0087 . ISSN 0018-8646 .
  28. ^ Brodkin, John. "Miaka 50 iliyopita, IBM iliunda umbo mkubwa ambao umesaidia kutuma watu kwa Mwezi" . Ars Technica . Iliondolewa Aprili 9, 2016 .
  29. ^ Clarke, Gavin. "Kwa nini huwezi kufanya IBM ya S / 360 na urithi wake saa 50" . Daftari . Iliondolewa Aprili 9, 2016 .
  30. ^ "Ukurasa wa Mwanzo wa PDP-8, Run PDP-8" . PDP8 . Iliondolewa Septemba 25, 2015 .
  31. ^ "Transistors, Relays, na Kudhibiti mizigo ya sasa ya sasa" . Chuo Kikuu cha New York . ITP Kimwili Computing . Iliondolewa Aprili 9, 2016 .
  32. ^ Lilly, Paul. Historia fupi ya CPU: 31 Miaka ya Ajabu ya x86 " . Gamer ya PC . Iliondolewa Juni 15, 2016 .
  33. ^ B Patterson, David A .; Hennessy, John L .; Larus, James R. (1999). Shirika la Kompyuta na Uumbaji: Kiambatisho cha Vifaa / Programu (2. ed., Magazeti ya 3. Ed.). San Francisco: Kaufmann. p. 751. ISBN 1558604286 .
  34. ^ "Utangazaji wa Mfumo / 370" . Archives za IBM . Iliondolewa Oktoba 25, 2017 .
  35. ^ "System / 370 Model 155 (Inaendelea)" . Archives za IBM . Iliondolewa Oktoba 25, 2017 .
  36. ^ Ross Knox Bassett. "Kwa Umri wa Umri: Maabara ya Utafiti, Makampuni ya Mwanzoni, na Kuongezeka kwa Teknolojia ya MOS" . 2007. p. 127-128, 256, na 314.
  37. ^ B Ken Shirriff. "Vyombo vya Texas TMX 1795: microprocessor ya kwanza, yamesahau" .
  38. ^ "Speed ​​& Power katika Familia ya Logic" . .
  39. ^ TJ Stonham. "Digital Logic Techniques: Kanuni na Mazoezi" . 1996. p. 174.
  40. ^ RK Booher. "MOS GP Kompyuta" . afips, pp.877 1968 Kesi ya Kuanguka Pamoja Mkutano wa kompyuta, 1968 doi : 10.1109 / AFIPS.1968.126
  41. ^ "Maelezo ya Moduli ya LSI-11". LSI-11, mwongozo wa mtumiaji wa PDP-11/03 (PDF) (2nd ed.). Maynard, Massachusetts: Digital Equipment Corporation . Novemba 1975. uk. 4-3.
  42. ^ Margaret Rouse (Machi 27, 2007). "Ufafanuzi: multi-core processor" . TechTarget . Iliondolewa Machi 6, 2013 .
  43. ^ Richard Birkby. "Historia fupi ya Microprocessor" . kompyutamuseum.li . Iliondolewa Oktoba 13, 2015 .
  44. ^ Osborne, Adam (1980). Utangulizi wa Microcomputers . Kitabu cha 1: Dhana za msingi (2nd ed.). Berkeley, California: Osborne-McGraw Hill. ISBN 0-931988-34-9 .
  45. ^ Zhislina, Victoria. "Kwa nini mzunguko wa CPU umekoma kukua?" . Intel . Iliondolewa Oktoba 14, 2015 .
  46. ^ "Mto Transistor - Uhandisi wa Umeme na Sayansi ya Kompyuta" (PDF) . Chuo Kikuu cha California . Iliondolewa Oktoba 14, 2015 .
  47. ^ B "Sehemu ya Mazungumzo na Gordon Moore: Sheria Moore" (PDF). Intel. 2005. Imehifadhiwa kutoka kwa asili (PDF) mnamo 2012-10-29 . Ilifutwa 2012-07-25 .
  48. ^ Lilly, Paul. Historia fupi ya CPU: 31 Miaka ya Ajabu ya x86 " . Upeo wa PC . Iliondolewa Desemba 10, 2015 .
  49. ^ Aspray, William. "Dhana ya kuhifadhiwa" . Tazama, IEEE . Iliondolewa Septemba 29, 2015 .
  50. ^ Ian Wienand (Septemba 3, 2013). "Sayansi ya Kompyuta kutoka chini ya chini, sura ya 3. usanifu wa kompyuta" (PDF) . bottomupcs.com . Iliondolewa Januari 7, 2015 .
  51. ^ Brown, Jeffery (2005). "Programu iliyoboreshwa ya programu ya CPU" . Msaidizi wa IBMWorks . Ilipatikana 2005-12-17 .
  52. ^ Garside, JD; Furber, SB; Chung, SH (1999). "AMULET3 Ilifunuliwa" . Idara ya Sayansi ya Sayansi ya Chuo Kikuu cha Manchester . Imehifadhiwa kutoka kwa asili ya Desemba 10, 2005.
  53. ^ "IBM System / 360 Model 65 Tabia za Kazi" (PDF) . IBM . Septemba 1968. pp. 8-9. A22-6884-3.
  54. ^ Huynh, Jack (2003). "Programu ya AMD Athlon XP na Cache 512KB L2" (PDF) . Chuo Kikuu cha Illinois, Urbana-Champaign. pp. 6-11 . Ilifutwa 2007-10-06 .
  55. ^ Gottlieb, Allan; Almasi, George S. (1989). Kompyuta iliyo sawa sana . Redwood City, Calif .: Benjamin / Cummings. ISBN 0-8053-0177-1 .
  56. ^ Flynn, MJ (Septemba 1972). "Mashirika mengine ya Kompyuta na ufanisi wao". IEEE Trans. Tumia. C-21 (9): 948-960. Je : 10.1109 / TC.1972.5009071 .
  57. ^ "Kufananisha ukamilifu katika matumizi makubwa zaidi" . IEEE Xplore . Iliondolewa Aprili 25, 2016 .
  58. ^ Anjum, Bushra; Perros, Harry G. (2015). "1: Kugawa kipengee cha mwisho cha QoS kwa Mwisho kwa Domains". Ugawaji wa Bandwidth kwa Video Chini ya Vikwazo vya Huduma . Mfululizo wa Focus. John Wiley & Wana. p. 3. ISBN 9781848217461 . Ilifutwa 2016-09-21 . [...] katika kompyuta ya wingu ambapo vipengele vingi vya programu huendeshwa kwenye mazingira ya kawaida kwenye blade moja, sehemu moja kwa kila mashine ya virusi (VM). VM ya kila mmoja imetengwa kitengo cha usindikaji wa kati [...] ambayo ni sehemu ya CPU ya blade.
  59. ^ Fifield, Tom; Fleming, Diane; Mpole, Anne; Hochstein, Lorin; Proulx, Jonathan; Toews, Everett; Topjian, Joe (2014). "Glossary". Mwongozo wa Uendeshaji wa OpenStack . Beijing: O'Reilly Media, Inc. p. 286. ISBN 9781491906309 . Ilifutwa 2016-09-20 . Kitengo cha Virtual Central Processing (vCPU) [:] Inashirikisha CPU za kimwili. Mara kwa mara unaweza kutumia mgawanyiko huo.
  60. ^ "Vipengele vya Usanifu wa Miundombinu ya VMware-Karatasi Myeupe" (PDF) . VMware . VMware. 2006.
  61. ^ "Mzunguko wa CPU" . CPU World Glossary . CPU World. Machi 25, 2008 . Iliondolewa Januari 1, 2010 .
  62. ^ "Ni nini (a) programu ya msingi ya msingi?" . Ufafanuzi wa Kituo cha Takwimu . TafutaDataCenter.com . Iliondolewa Agosti 8, 2016 .
  63. ^ "Quad Core Vs. Dual Core" . Piga . Iliondolewa Novemba 26, 2014 .
  64. ^ Tegtmeier, Martin. "CPU matumizi ya architectures mbalimbali Threaded alielezea" . Oracle . Iliondolewa Septemba 29, 2015 .

Viungo vya nje

Kusikiliza makala hii (sehemu 2) · (info)
Faili hii ya redio iliundwa kutoka kwa marekebisho ya makala " Kitengo cha usindikaji wa kati " kilichowekwa mwaka wa 2006-06-13, na haionyeshi marekebisho ya baadaye kwa makala hiyo. ( Msaada wa sauti )
Vipengele vilivyozungumzwa zaidi