- Procesora arhitektūra
- RISC un CISC instrukciju komplekta arhitektūra
- Sarežģīta instrukciju komplekta skaitļošana (CISC)
- Samazināta instrukciju kopu skaitļošana (RISC)
Iegultā sistēma ir vairumam tirgū pieejamo elektronisko produktu pamats un pamats. Tā ir inženierijas ieviešana, kurā aparatūra atbilst programmatūrai. Mūs ieskauj iegulto sistēmu pasaule, ar mini datoriem biometriskās durvju slēdzenēs, lidmašīnās, automašīnās, elektrokardiostimulatoros utt. Šie ierobežoto resursu ierobežotās, mazās, viedās un jaudīgās sistēmas palīdz mums veikt ikdienas uzdevumus.
Kādreiz ir domāts par to, kā darbojas mūsu ķermenis, nervu sistēmu, smadzenes un spēju veikt daudzuzdevumus. Ja jūs apvienojat visas šīs funkcijas, jūs iegūtu aptuvenu priekšstatu par bioloģiski iegulto sistēmu. Mūsu smadzenes slēpj sarežģītas darbības funkcijas, kas notiek to iekšienē, bet tomēr ļauj mums to maksimāli kontrolēt. Tāda pati sarežģītība ir procesoram vai kontrolierim, ko izmanto iegultās sistēmās. Tie slēpj sarežģītas detaļas un nodrošina mums augsta līmeņa saskarni, ar kuru strādāt. Abstrakcijas līmenim var saistīt to, kā divu skaitļu pievienošanas kods augsta līmeņa programmēšanas valodā izraisa mikroshēmu reģistru apstrādes bitus un atdod izvadi lietotājam.
Procesora arhitektūra
Centrālā procesora bloks, atsaucoties gan uz mikroprocesoru, gan uz mikrokontrolleru, veic īpašus uzdevumus ar vadības bloka (CU) un aritmētiskās loģiskās vienības (ALU) palīdzību. Tā kā instrukcijas tiek piegādātas no RAM, centrālais procesors darbojas ar divu palīdzības vienību palīdzību, izveidojot mainīgos un piešķirot tiem vērtības un atmiņu. Ir ļoti svarīgi zināt, kā CPU veic visu šo darbību, izmantojot tās arhitektūru. Ja vēlaties uzzināt vairāk par mikrokontrollera darbību, varat izlasīt šo mikrokontrollera pamata rakstu.
Katram centrālajam procesoram ir saistīta atmiņa programmas un datu glabāšanai. Programma un dati strādā ar CPU, lai iegūtu izvadi. Programma sniedz norādījumus, savukārt dati sniedz informāciju, pie kuras jāstrādā. Lai piekļūtu programmai un datiem, centrālais procesors izmanto kopnes, šīs kopnes ir vadi, precīzāk, tie ir vadu pēdas, kā jūs, iespējams, redzējāt uz iespiedshēmas plates. Šo gadu laikā mikrokontrolleri un mikroprocesori ir attīstījušies, pielāgojot dažādas arhitektūras, pamatojoties uz lietojuma vai dizaina prasībām, mikrokontrolleru izvēli ietekmē tajā izmantotais arhitektūras veids. Apskatīsim populārās arhitektūras.
Fon-Neimaņa / Prinstonas arhitektūra
Veids, kādā CPU iegūst piekļuvi programmai un datiem, stāsta par CPU arhitektūru. Iepriekš piekļuvei programmai un datiem tika izmantota viena kopne. Šis arhitektūras veids ir pazīstams kā Von Neumann arhitektūra vai vienkāršāk Princeton Architecture. Viena koda koda un datu iegūšanai nozīmē, ka viņi viens otram traucas un palēnina CPU apstrādes ātrumu, jo katram bija jāgaida, kamēr otrs pabeidz ielādi. Šis ierobežojums ir pazīstams arī kā Von-Neumann sastrēguma stāvoklis.
Hārvardas arhitektūra
Lai paātrinātu procesu, tika ierosināta Hārvardas arhitektūra. Šajā arhitektūrā ir atsevišķas datu kopnes datiem un programmai. Tātad tas nozīmē, ka šī arhitektūra ierosināja izmantot četrus autobusus
- Datu kopnes kopa, kas datus ievada procesorā un no tā.
- Adrešu kopnes kopa, lai piekļūtu datiem.
- Datu kopnes kods koda ievadīšanai CPU.
- Adreses kopne piekļuvei kodam.
Atsevišķas adrešu kopnes un datu kopnes izmantošana nozīmēja zemu centrālā procesora izpildes laiku, taču tas rada sarežģītību arhitektūras projektēšanā. Fon Nīmaņa arhitektūra var izklausīties mazliet slinka, taču tās priekšrocība ir tās vienkāršais dizains.
Hārvardas arhitektūru ir daudz viegli ieviest, ja centrālajam procesoram un atmiņas vienībām ir viena un tā pati vieta vai arī RAM un ROM ir iebūvēti (mikroshēmā) ar procesoru, piemēram, mikrokontrollerī, kur attālumi ir mikronos un milimetros. Tomēr to pašu arhitektūru ir grūti īstenot, ja atmiņa, kas satur kodu, ir ārpus apstrādes vienības, piemēram, x86 IBM PC atmiņa. Kopums atsevišķu stiepļu pieraksti gan datus un adresi, uz mātesplati padarītu valdes sarežģīti un dārgi. Sapratīsim to ar procesora piemēru.
Procesoram ar 64 bitu datu kopni un 32 bitu adreses kopni Von-Neumann arhitektūras ieviešanai būtu nepieciešami aptuveni 100 kopņu (96 datu un adrešu kopnei un daži citi vadības signāliem). Tāda pati struktūra, ja to ieviesīs ar Hārvardas arhitektūru, dubulto vadu pēdām izmaksātu aptuveni 200, no procesora iznākot daudzām tapām. Tā paša iemesla dēļ mēs neredzam tīru Hārvardas arhitektūru, kas ieviesta personālajiem datoriem un darbstacijām. Tā vietā tiek izmantota modificēta Hārvardas arhitektūra, kurā programmas un datu atdalīšanai tiek izmantota atmiņas hierarhija ar CPU kešatmiņu. Atmiņas hierarhija atdala krātuvi, pamatojoties uz procesu reakcijas laika hierarhiju.
Instrukciju kopas arhitektūra
Tā kā programma (kods) tiek ielādēta sistēmas atmiņā (RAM), to ienes CPU (atsaucoties gan uz mikroprocesoru, gan uz mikrokontrolieri), lai darbotos ar datiem, tas ir daudz līdzīgi, jo mēs dodam norādījumus, apmācot suni noteiktas darbības un komandas. Tā kā šie norādījumi tiek iedarbināti uz noteiktiem tranzistoriem, tas notiek no viena loģiskā līmeņa uz otru. Tātad būtībā ar instrukciju palīdzību cilvēka programmētājs sazinās ar procesoru. Katram centrālajam procesoram ir savs instrukciju komplekts, instrukciju kolekcija, pamatojoties uz tā arhitektūru un iespējām.
Centrālais procesors saprot šīs instrukcijas kombinācijā no 0 un 1, kas ir pazīstami arī kā opkods. Cilvēka programmētājam ir patiešām grūti atcerēties 0 un 1 kombināciju katrai instrukcijai, kas ir saistīta ar CPU. Lai atvieglotu cilvēka programmētāja darbu, mums tiek nodrošinātas šo instrukciju augsta līmeņa saskarnes, un kompilators tās pārveido 0 un 1 formā tā apstrādei. Arī katra CPU instrukciju komplektā tam ir ierobežots instrukciju skaits, ko tā var saprast.
CPU veiktspēja
Iespējams, esat dzirdējis terminu CPU pulksteņa ātrums, kas saistīts ar CPU veiktspēju. Procesoriem parasti ir takts frekvence MHz (Mega-Hertz) vai GHz (Giga-Hertz), piemēram, 25 GHz takts frekvence. Ar pulksteņa ātrumu saistītais skaitlis norāda, cik reizes CPU iekšējais pulkstenis tiek atzīmēts ciklos sekundē. Pulksteņa ātruma praktiskumu var saprast ar to, ka instrukcijas tiek veiktas, pamatojoties uz CPU pulksteņa cikliem, kas ir proporcionāli to programmu skaitam, kuras CPU var darbināt vienlaikus.
CPU veiktspēju atkarīga no vairākiem norādījumiem, kas ir rakstīts programmā, vairāk norādījumiem, vairāk laika, ko pieņēmusi CPU, lai veiktu tos. Tas ir atkarīgs arī no pulksteņa ciklu skaita, kurā tiek izpildīta katra instrukcija, dažām instrukcijām ir nepieciešams izpildīt vairāk pulksteņu ciklu nekā citiem, tāpēc tās atpaliek no CPU veiktspējas. Norādījumi programmā un cikli, kas nepieciešami katras instrukcijas veikšanai, ir apgriezti proporcionāli viens otram. Viena mainīšana ietekmēs otru. Tas ir punkts, kur CPU nozare ir sadalīta.
RISC un CISC instrukciju komplekta arhitektūra
Kā minēts iepriekš, programmas izpilde un centrālā procesora veiktspēja ir atkarīga no programmas instrukciju skaita, kurā instrukcijas tiek piedāvātas konkrētajam centrālajam procesoram kā daļu no instrukciju kopas, un otrais faktors ir pulksteņa ciklu skaits kuru katra instrukcija tiek izpildīta. Pamatojoties uz šiem diviem faktoriem, pašlaik ir pieejami divi instrukciju komplekti. Agrākais no tiem ir sarežģīts instrukciju kopas skaitļošana (CISC), bet otrs - samazinātu instrukciju kopu skaitļošana (RISC). Detalizēti apspriedīsim katru no šīm arhitektūrām, lai saprastu atšķirību starp RIC un CISC arhitektūru.
Sarežģīta instrukciju komplekta skaitļošana (CISC)
CISC nozīmē Complex Instruction Set Computing. Galvenais CISC motīvs ir samazināt izpildāmo instrukciju skaitu, tas tiek darīts, apvienojot daudzas vienkāršas instrukcijas, piemēram, adreses režīmu, ielādi utt., Un izveidojot vienu sarežģītu instrukciju. CISC instrukcija ietver virkni vienkāršu instrukciju, kā arī dažas īpašas instrukcijas, kas ilgst vairāk nekā vienu pulksteni ciklu izpildīt. CISC instrukcijas var tieši darboties atmiņā bez reģistru iejaukšanās, kas nozīmē, ka tas novērš vajadzību pēc dažām pamatnorādījumiem, piemēram, vērtību ielādēšanas un atmiņas (RAM) prasības. CISC instrukcijās vairāk tiek uzsvērta aparatūra, nevis programmatūra, kas nozīmē, ka kompilatoru slodzes vietāCISC izmanto tranzistorus kā aparatūru instrukciju atšifrēšanai un ieviešanai. Tomēr, tā kā instrukcija ir sarežģīta un sastāv no vairākiem soļiem, tās tiek izpildītas vairāk pulksteņa ciklu skaitā.
Vienkārša analoģija attiekties ir tad, kad jūs esat teicis, lai atvērtu grāmatu un izlasīt 3 rd nodaļā ir 2 nd lapu. Šajā darbību sērijā jūs veicat vairākas darbības, piemēram, atrodat grāmatu no somas, nevis sajaucat lapu līdz 3. nodaļai un pēc tam dodaties uz nodaļas otro lappusi un pēc tam sākat lasīt. Pakāpiena sērijas ja apvienoti vienā instrukciju lasīšanas 44 lapā (kas ir 2 nd lappuses numurs 3 rd nodaļas), mēs iegūtu CISC norādījumu.
Samazināta instrukciju kopu skaitļošana (RISC)
Pirmo integrēto mikroshēmu 1958. gadā izstrādāja Džeks Kilbijs, kas bija oscilators, un 1970. gadā Intel ieguva pirmo komerciālo mikroprocesoru. Kaut arī procesoru darbības sākumā CISC nebija. Bet, ņemot vērā lielās skaitļošanas prasības, CISC arhitektūra kļuva arvien sarežģītāka un grūtāk apstrādājama. Džons Koks no IBM izstrādāja pilnīgu CISC arhitektūras, kas pazīstama kā RISC, pārveidošanu. Tādējādi, lai atšķirtu abas arhitektūras, tika ieviesti termini RISC un CISC.
RISC apzīmē samazinātu instrukciju kopu skaitļošanu. RISC galvenais motīvs bija ieviest vienveidību instrukciju lielumā un izpildē. Tas tika izdarīts, ieviešot vienkāršu instrukciju kopu, kuru varēja izpildīt kā vienu instrukciju ciklā, tas tiek darīts, sadalot sarežģītas instrukcijas, piemēram, iekraušanu un glabāšanu dažādās instrukcijās, kur katras instrukcijas izpildei ir nepieciešams aptuveni viens pulksteņa cikls. RISC arhitektūra ietver vienkāršus norādījumus tā paša izmēra, kas varētu tikt izpildīts vienā taktī. RISC balstītām mašīnām ir nepieciešams vairāk RAM nekā CISC, lai saglabātu vērtības, ielādējot katru instrukciju reģistros. Vienas instrukcijas izpilde vienā ciklā dod RISC balstītām mašīnām priekšrocības cauruļvados(konveijers ir process, kurā nākamā instrukcija tiek ielādēta pirms pirmās instrukcijas izpildes, tas palielina izpildes efektivitāti). RISC arhitektūra uzsver