Mga sistema ng microprocessor
Ang paggamit ng mga microprocessor system sa halos lahat ng mga de-koryenteng aparato ay ang pinakamahalagang katangian ng teknikal na imprastraktura ng modernong lipunan. Ang elektrisidad, industriya, transportasyon, mga sistema ng komunikasyon ay lubos na nakadepende sa mga sistema ng kontrol sa computer. Ang mga microprocessor system ay naka-embed sa mga instrumento sa pagsukat, mga de-koryenteng aparato, mga pag-install ng ilaw, atbp.
Ang lahat ng ito ay nag-oobliga sa electrical engineer na malaman ang hindi bababa sa mga pangunahing kaalaman ng microprocessor technology.
Ang mga microprocessor system ay idinisenyo upang i-automate ang pagproseso ng impormasyon at kontrolin ang iba't ibang proseso.
Ang terminong "microprocessor system" ay napakalawak at kabilang ang mga konsepto tulad ng "electronic computing machine (ECM)", "control computer", "computer" at iba pa.
Kasama sa microprocessor system ang Hardware o sa English — hardware at software (Software) — software.
Digital na impormasyon
Gumagana ang microprocessor system sa digital na impormasyon, na isang serye ng mga numerical code.
Sa core ng anumang microprocessor system ay isang microprocessor na maaari lamang tumanggap ng mga binary na numero (binubuo ng 0s at 1s).Ang mga binary number ay isinusulat gamit ang binary number system. Halimbawa, sa pang-araw-araw na buhay, gumagamit kami ng sistema ng decimal na gumagamit ng sampung character o digit para isulat ang mga numero, 0,1,2,3,4,5,6,7,8,9. Alinsunod dito, sa binary system mayroon lamang dalawang tulad na mga simbolo (o mga numero) - 0 at 1.
Kinakailangang maunawaan na ang sistema ng numero ay ang mga panuntunan lamang para sa pagsusulat ng mga numero, at ang pagpili ng uri ng sistema ay matutukoy sa pamamagitan ng kadalian ng paggamit. Ang pagpili ng isang binary system ay dahil sa pagiging simple nito, na nangangahulugang ang pagiging maaasahan ng mga digital na aparato at ang kadalian ng kanilang teknikal na pagpapatupad.
Isaalang-alang ang mga yunit ng pagsukat ng digital na impormasyon:
Ang kaunti (mula sa Ingles na «BInary digiT» — binary digit) ay tumatagal lamang ng dalawang halaga: 0 o 1. Maaari mong i-encode ang lohikal na halaga na «oo» o «hindi», ang estado na «on» o «off», ang estado « bukas» «o» sarado «atbp.
Ang pangkat ng walong bits ay tinatawag na byte, halimbawa 10010111. Ang isang byte ay nagbibigay-daan sa iyo na mag-encode ng 256 na halaga: 00000000 — 0, 11111111 — 255.
Ang bit ay ang pinakamaliit na yunit ng impormasyon.
Byte — ang pinakamaliit na yunit ng pagproseso ng impormasyon. Byte - bahagi ng isang machine word, karaniwang binubuo ng 8 bits at ginagamit bilang isang yunit para sa dami ng impormasyon sa panahon ng pag-iimbak, paghahatid at pagproseso nito sa isang computer. Ang isang byte ay nagsisilbing kumakatawan sa mga titik, pantig at mga espesyal na karakter (karaniwang sumasakop sa lahat ng 8 bits) o decimal na digit (bawat 2 digit sa 1 byte).
Dalawang magkadikit na byte ang tinatawag na salita, 4 byte isang double word, 8 byte isang quad word.
Halos lahat ng impormasyon na nakapaligid sa atin ay analog. Samakatuwid, bago pumasok ang impormasyon sa processor para sa pagproseso, ito ay na-convert gamit ang isang ADC (analog-to-digital converter).Bilang karagdagan, ang impormasyon ay naka-encode sa isang tiyak na format at maaaring digital, lohikal, textual (symbolic), graphic, video, atbp.
Halimbawa, ang isang talahanayan ng mga ASCII code (mula sa English American Standard Code for Information Interchange) ay ginagamit upang i-encode ang impormasyon ng teksto. Ang isang character ay nakasulat sa isang byte, na maaaring tumagal ng 256 na halaga. Ang graphical na impormasyon ay nahahati sa mga tuldok (pixel), at ang kulay at posisyon ng bawat tuldok ay naka-code nang pahalang at patayo.
Bilang karagdagan sa binary at decimal system, ang MS ay gumagamit ng isang hexadecimal system kung saan ang mga simbolo na 0 ... 9 at A ... F ay ginagamit upang magsulat ng mga numero. Ang paggamit nito ay dahil sa katotohanan na ang isang byte ay inilalarawan ng isang dalawa -digit na hexadecimal na numero, na lubos na binabawasan ang record ng numeric code at ginagawa itong mas nababasa (11111111 — FF).
Talahanayan 1 — Pagsusulat ng mga numero sa iba't ibang sistema ng numero
Upang matukoy ang halaga ng numero (halimbawa, ang halaga ng numero 100 para sa iba't ibang mga sistema ng numero ay maaaring 42, 10010, 25616), sa dulo ng numero magdagdag ng isang Latin na titik na nagpapahiwatig ng sistema ng numero: para sa mga binary na numero ang titik b, para sa mga numerong hexadecimal — h , para sa mga decimal na numero — d. Ang isang numero na walang karagdagang pagtatalaga ay itinuturing na isang decimal.
Ang pag-convert ng mga numero mula sa isang system patungo sa isa pa at ang mga pangunahing aritmetika at lohikal na operasyon na may mga numero ay nagpapahintulot sa iyo na gumawa ng isang calculator ng engineering (karaniwang aplikasyon ng Windows operating system).
Istraktura ng isang microprocessor system
Ang microprocessor system ay batay sa isang microprocessor (processor) na nagsasagawa ng pagpoproseso ng impormasyon at mga function ng kontrol. Ang iba pang mga device na bumubuo sa microprocessor system ay nagsisilbi sa processor sa pamamagitan ng pagtulong dito na gumana.
Ang mga ipinag-uutos na aparato para sa paglikha ng isang microprocessor system ay mga input / output port at bahagyang memorya... Input - ang mga output port ay kumokonekta sa processor sa labas ng mundo sa pamamagitan ng pagbibigay ng impormasyon para sa pagproseso at pag-output ng mga resulta ng pagproseso o kontrol ng mga aksyon. Ang mga pindutan (keyboard), iba't ibang mga sensor ay konektado sa mga input port; sa mga output port — mga device na nagbibigay-daan sa kontrol ng kuryente: mga indicator, display, contactor, solenoid valve, electric motor, atbp.
Pangunahing kailangan ang memorya upang mag-imbak ng isang programa (o hanay ng mga programa) na kinakailangan para gumana ang processor. Ang isang programa ay isang pagkakasunud-sunod ng mga utos na naiintindihan ng processor, na isinulat ng isang tao (karaniwan ay isang programmer).
Ang istraktura ng isang microprocessor system ay ipinapakita sa Figure 1. Sa isang pinasimpleng anyo, ang processor ay binubuo ng isang arithmetic logic unit (ALU) na nagpoproseso ng digital na impormasyon, at isang control unit (CU).
Karaniwang kinabibilangan ng memorya ang read-only memory (ROM), na hindi pabagu-bago at nilayon para sa pangmatagalang pag-iimbak ng impormasyon (hal., mga programa), at random-access memory (RAM), na nilayon para sa pansamantalang pag-iimbak ng data.
Figure 1 — Ang istruktura ng microprocessor system
Ang processor, port, at memory ay nakikipag-ugnayan sa isa't isa sa pamamagitan ng mga bus. Ang bus ay isang hanay ng mga wire na functionally united. Ang isang solong hanay ng mga system bus ay tinatawag na intrasystem bus, kung saan mayroong:
-
DB data bus (Data Bus), kung saan ang data ay ipinagpapalit sa pagitan ng processor, memorya at mga port;
-
address bus AB (Address Bus), na ginagamit upang tugunan ang mga memory cell at port ng processor;
-
control bus CB (Control Bus), isang hanay ng mga linya na nagpapadala ng iba't ibang mga signal ng kontrol mula sa processor patungo sa mga panlabas na device at vice versa.
Mga microprocessor
Microprocessor — isang aparatong kontrolado ng software na idinisenyo upang iproseso ang digital na impormasyon at kontrolin ang proseso ng pagproseso na ito, na ginawa sa anyo ng isa (o ilang) integrated circuit na may mataas na antas ng pagsasama ng mga elektronikong elemento.
Ang isang microprocessor ay nailalarawan sa pamamagitan ng isang malaking bilang ng mga parameter, dahil ito ay parehong kumplikadong software-controlled na aparato at isang elektronikong aparato (microcircuit). Samakatuwid, para sa isang microprocessor, ang parehong uri ng kaso at ang set ng pagtuturo para sa processor... Ang mga kakayahan ng isang microprocessor ay tinukoy ng konsepto ng microprocessor architecture.
Ang prefix na «micro» sa pangalan ng processor ay nangangahulugan na ito ay ipinatupad gamit ang micron technology.
Figure 2 — Panlabas na view ng Intel Pentium 4 microprocessor
Sa panahon ng operasyon, binabasa ng microprocessor ang mga utos ng programa mula sa memorya o isang input port at ipinapatupad ang mga ito. Ang ibig sabihin ng bawat command ay tinutukoy ng set ng pagtuturo ng processor. Ang set ng pagtuturo ay binuo sa arkitektura ng microprocessor, at ang pagpapatupad ng command code ay ipinahayag sa pagpapatupad ng ilang mga micro-operasyon ng mga panloob na elemento ng processor.
Arkitektura ng microprocessor — ito ang lohikal na organisasyon nito; ito ay tumutukoy sa mga kakayahan ng microprocessor sa mga tuntunin ng hardware at software na pagpapatupad ng mga function na kinakailangan upang bumuo ng isang microprocessor system.
Mga pangunahing katangian ng microprocessors:
1) Dalas ng orasan (unit ng pagsukat na MHz o GHz) — ang bilang ng mga pulso ng orasan sa 1 segundo.Ang mga pulso ng orasan ay nabuo ng isang generator ng orasan, na karaniwang matatagpuan sa loob ng processor. Dahil ang lahat ng mga operasyon (mga tagubilin) ay ginagawa sa mga cycle ng orasan, kung gayon ang pagganap ng trabaho (ang bilang ng mga operasyon na isinagawa sa bawat yunit ng oras) ay nakasalalay sa dalas ng orasan. Maaaring mag-iba ang dalas ng processor sa loob ng ilang partikular na limitasyon.
2) Bit processor (8, 16, 32, 64 bits, atbp.) — tumutukoy sa bilang ng mga byte ng data na naproseso sa isang clock cycle. Ang bit width ng isang processor ay tinutukoy ng bit width ng mga panloob na registers nito. Ang isang processor ay maaaring 8-bit, 16-bit, 32-bit, 64-bit, atbp. ie. ang data ay pinoproseso sa mga chunks ng 1, 2, 4, 8 bytes. Ito ay malinaw na ang mas malaki ang bit depth, mas mataas ang work productivity.
Panloob na arkitektura ng microprocessor
Ang isang pinasimple na panloob na arkitektura ng isang tipikal na 8-bit na microprocessor ay ipinapakita sa Figure 3. Ang istraktura ng microprocessor ay maaaring nahahati sa tatlong pangunahing bahagi:
1) Nagrerehistro para sa pansamantalang imbakan ng mga command, data at address;
2) Arithmetic logic unit (ALU) na nagsasagawa ng arithmetic at logical operations;
3) Control at timing circuit — nagbibigay ng command selection, inaayos ang operasyon ng ALU, nagbibigay ng access sa lahat ng microprocessor registers, perceives at bumubuo ng external control signals.
Figure 3 — Pinasimpleng panloob na arkitektura ng isang 8-bit na microprocessor
Tulad ng makikita mo mula sa diagram, ang processor ay batay sa mga rehistro, na nahahati sa espesyal (na may isang tiyak na layunin) at pangkalahatang layunin na mga rehistro.
Program counter (computer) — isang rehistro na naglalaman ng address ng susunod na command byte. Kailangang malaman ng processor kung aling utos ang susunod na isasagawa.
Baterya — isang rehistro na ginagamit sa karamihan ng mga tagubilin para sa pagpoproseso ng lohika at aritmetika; pareho itong pinagmumulan ng isa sa mga byte ng data na kinakailangan para sa operasyon ng ALU at ang lugar kung saan inilalagay ang resulta ng operasyon ng ALU.
Ang isang function register (o flag register) ay naglalaman ng impormasyon tungkol sa panloob na estado ng microprocessor, partikular ang resulta ng huling operasyon ng ALU. Ang rehistro ng bandila ay hindi isang rehistro sa karaniwang kahulugan, ngunit isang hanay lamang ng mga flip flop (i-flag pataas o pababa. Karaniwang mayroong zero, overflow, negatibo at nagdadala ng mga flag).
Stack Pointer (SP) - sinusubaybayan ang posisyon ng stack, iyon ay, naglalaman ito ng address ng huling ginamit nitong cell. Stack — isang paraan ng pag-aayos ng imbakan ng data.
Ang isang command register ay naglalaman ng kasalukuyang command byte na nade-decode ng command decoder.
Ang mga panlabas na linya ng bus ay nakahiwalay mula sa mga panloob na linya ng bus sa pamamagitan ng mga buffer, at ang mga pangunahing panloob na elemento ay konektado ng isang high-speed na panloob na data bus.
Upang mapabuti ang pagganap ng isang multiprocessor system, ang mga function ng central processor ay maaaring ipamahagi sa ilang mga processor. Upang matulungan ang gitnang processor, ang computer ay madalas na nagpapakilala ng mga co-processor, na nakatuon sa mahusay na pagpapatupad ng anumang partikular na function. Laganap na mathematical at graphic na mga co-processor, input at output na nag-a-offload sa gitnang processor mula sa simple ngunit maraming operasyon ng pakikipag-ugnayan sa mga panlabas na device.
Sa kasalukuyang yugto, ang pangunahing direksyon ng pagtaas ng produktibidad ay ang pagbuo ng mga multi-core processor, i.e. pagsasama-sama ng dalawa o higit pang mga processor sa isang kaso upang maisagawa ang ilang mga operasyon nang magkatulad (sabay-sabay).
Ang Intel at AMD ay ang mga nangungunang kumpanya para sa pagdidisenyo at pagmamanupaktura ng mga processor.
Algoritmo ng sistema ng microprocessor
Algorithm — isang tumpak na reseta na natatanging nagtatakda ng proseso ng pagbabago ng paunang impormasyon sa isang pagkakasunud-sunod ng mga operasyon na nagbibigay-daan sa paglutas ng isang hanay ng mga gawain ng isang partikular na klase at makuha ang ninanais na resulta.
Ang pangunahing elemento ng kontrol ng buong sistema ng microprocessor ay isang processor... Ito, maliban sa ilang mga espesyal na kaso, ay kumokontrol sa lahat ng iba pang mga aparato. Ang natitirang mga aparato, tulad ng RAM, ROM at I / O port, ay nasa ilalim.
Sa sandaling ito ay naka-on, ang processor ay magsisimulang magbasa ng mga digital code mula sa lugar ng memorya na nakalaan para sa pag-iimbak ng mga programa. Ang pagbabasa ay ginagawa nang sunud-sunod sa bawat cell, simula sa pinakaunang isa. Ang isang cell ay naglalaman ng data, mga address, at mga utos. Ang isang pagtuturo ay isa sa mga pangunahing aksyon na maaaring gawin ng isang microprocessor. Ang lahat ng gawain ng microprocessor ay nabawasan sa sunud-sunod na pagbabasa at pagpapatupad ng mga utos.
Isaalang-alang ang pagkakasunud-sunod ng mga aksyon ng microprocessor sa panahon ng pagpapatupad ng mga utos ng programa:
1) Bago isagawa ang susunod na pagtuturo, iniimbak ng microprocessor ang address nito sa counter ng computer program.
2) Ina-access ng MP ang memorya sa address na nakapaloob sa computer at binabasa mula sa memorya ang unang byte ng susunod na command sa command register.
3) Ang command decoder ay nagde-decode (nagde-decipher) ng command code.
4) Alinsunod sa impormasyong natanggap mula sa decoder, ang control unit ay bumubuo ng isang time-ordered sequence ng micro-operations na nagsasagawa ng command instructions, kabilang ang:
— kinukuha ang mga operand mula sa mga rehistro at memorya;
— nagsasagawa ng aritmetika, lohikal o iba pang mga operasyon sa mga ito ayon sa inireseta ng command code;
— depende sa haba ng utos, binabago ang mga nilalaman ng computer;
— naglilipat ng kontrol sa susunod na command na ang address ay nasa counter ng computer program.
Ang set ng pagtuturo para sa isang microprocessor ay maaaring nahahati sa tatlong grupo:
1) Mga utos upang ilipat ang data
Ang paglipat ay nagaganap sa pagitan ng memorya, processor, I / O port (bawat port ay may sariling address), sa pagitan ng mga rehistro ng processor.
2) Mga utos sa pagbabago ng data
Ang lahat ng data (teksto, larawan, video, atbp.) ay mga numero, at tanging aritmetika at lohikal na mga operasyon ang maaaring gawin gamit ang mga numero. Samakatuwid, ang mga utos ng pangkat na ito ay kinabibilangan ng karagdagan, pagbabawas, paghahambing, lohikal na operasyon, atbp.
3) Paglipat ng control command
Napakabihirang para sa isang programa na binubuo ng isang solong sunud-sunod na pagtuturo. Karamihan sa mga algorithm ay nangangailangan ng pagsasanga ng programa. Upang mabago ng programa ang algorithm ng trabaho nito, depende sa anumang kondisyon, ginagamit ang mga control transfer command. Tinitiyak ng mga utos na ito ang daloy ng pagpapatupad ng programa sa iba't ibang mga landas at ayusin ang mga loop.
Mga panlabas na device
Kasama sa mga panlabas na device ang lahat ng device na nasa labas ng processor (maliban sa RAM) at nakakonekta sa pamamagitan ng mga I/O port. Ang mga panlabas na aparato ay maaaring maiuri sa tatlong pangkat:
1) mga aparatong komunikasyon ng tao-computer (keyboard, monitor, printer, atbp.);
2) mga aparato para sa komunikasyon sa mga control object (sensors, actuators, ADC at DAC);
3) mga panlabas na storage device na may malaking kapasidad (hard disk, floppy disk).
Ang mga panlabas na device ay konektado sa microprocessor system nang pisikal — sa pamamagitan ng mga konektor at lohikal na — sa pamamagitan ng mga port (controller).
Ang isang interrupt system (mekanismo) ay ginagamit upang mag-interface sa pagitan ng processor at mga panlabas na device.
Makagambalang sistema
Ito ay isang espesyal na mekanismo na nagbibigay-daan sa anumang oras, sa pamamagitan ng isang panlabas na signal, upang pilitin ang processor na ihinto ang pagpapatupad ng pangunahing programa, magsagawa ng mga operasyon na may kaugnayan sa kaganapan na naging sanhi ng pagkagambala, at pagkatapos ay bumalik sa pagpapatupad ng pangunahing programa. .
Ang bawat microprocessor ay may kahit isang interrupt request input na INT (mula sa salitang Interrupt).
Isaalang-alang natin ang isang halimbawa ng pakikipag-ugnayan ng isang processor ng personal na computer sa isang keyboard (Larawan 4).
Keyboard — isang aparato para sa pagpasok ng simbolikong impormasyon at mga control command. Upang ikonekta ang keyboard, ang computer ay may isang espesyal na port ng keyboard (chip).
Figure 4 — Operasyon ng CPU gamit ang keyboard
Algorithm ng trabaho:
1) Kapag pinindot ang isang key, bubuo ng numeric code ang keyboard controller. Ang signal na ito ay papunta sa keyboard port chip.
2) Ang keyboard port ay nagpapadala ng interrupt signal sa CPU. Ang bawat panlabas na aparato ay may sariling interrupt na numero kung saan kinikilala ito ng processor.
3) Pagkatapos makatanggap ng isang interrupt mula sa keyboard, ang processor ay nakakaabala sa pagpapatupad ng programa (halimbawa, ang Microsoft Office Word editor) at nilo-load ang programa para sa pagproseso ng mga keyboard code mula sa memorya. Ang ganitong programa ay tinatawag na driver.
4) Ang program na ito ay nagdidirekta sa processor sa port ng keyboard at ang numerong code ay na-load sa rehistro ng processor.
5) Ang digital code ay naka-imbak sa memorya at ang processor ay patuloy na nagsasagawa ng isa pang gawain.
Dahil sa mataas na bilis ng operasyon, ang processor ay nagsasagawa ng isang malaking bilang ng mga proseso nang sabay-sabay.
