You are on page 1of 21

UNIVERSITETI POLITEKNIK I TIRANËS

FAKULTETI
AKULTETI I INXHINIERISË ELEKTRIK
ELEKTRIKE
DEPARTAMENTI I AUTOMATIKËS

ORGANIZIMI I CPU-së NË MIKROKONTROLLUES

ARKITEKTURA E SISTEMEVE TË KONTROLLIT


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
2 Elementët përbërës të CPU
CPU (Central Processing Unit) përmban

• Njësinë e kontrollit (Control Unit CU)


• Njësinë aritmetike logjike (Arithmetic Logic Unit ALU)
• Një numër i caktuar regjistrash
• Të gjithë elementët e përmendur më sipër janë të lidhur me njëri-tjetrit
nëpërmjet bus-ve (bus-i është një rrugë elektrike për lëvizjen e të dhënave,
nga një pike në një tjetër pike të sistemit)

MIKROKONTROLLUES
CPU
Memoria
Regjistrat
Memoria e
të dhënave
CU Memoria e
CPU programit

ALU I/O
Periferikët

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
3 Arkitekturat Von Neumann dhe Harvard
Harvard
Arkitektura Von
Neumann ka vetëm Të dhënat Programi
një bus që përdoret Memoria e
për transmetimin e Memoria e
CPU programit
të dhënave
të dhënave dhe
instruksioneve Adresa Adresa
(progamit)

Von Neumann
Memoria
Të dhënat, programi Arkitektura e Harvardit e ka bus-in e të
Memoria e dhënave të ndarë nga bus-i i
CPU instruksioneve (programit), duke lejuar
të dhënave
Adresa
Memoria e që transmetimet të kryhen në të njëjtën
programit kohë në të dy bus-et

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
4 Arkitektura Von Neumann avantazhet dhe disavantazhet
Të dy arkitekturat kanë avantazhe dhe disavantazhe. Është e pamundur për të
vendosur se cila është më e mirë. Të dyja përdoren ende në mikrokontrolluesit modern

Avantazhet e arkitekturës Von Neumann


• Me një bus komunikimi është më i thjeshtë procesi i projektimi të njësisë së
kontrollit
• Njësia e kontrollit është më e lirë dhe më e shpejtë
• Mikrokontrolluesi me një bus është më i lirë
Disavantazhet e arkitekturës Von Neumann
• Një bus (për të dhënat, instruksionet, dhe Von Neumann
periferikët) është një pengesë pasi vetëm
një informacion mund të transmetohet në Të dhënat, programi
Memoria
të njëjtën kohë Memoria e të
CPU
• Instruksionet e ruajtura në të njëjtën dhënave
Memoria e
memorie me të dhënat mundet që Adresa programit

aksidentalisht të rishkruahen nga një


gabim në program

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
5 Arkitektura Harvard avantazhet dhe disavantazhet
Avantazhet e arkitekturës Harvard
• Përderisa ka dy memorie kjo arkitekturë lejon transmetimin paralel të të dhënave
dhe instruksioneve. Ekzekutimi mund të jetë 2 herë më i shpejtë
• Të dy memoriet mund të prodhohen nga teknologji të ndryshme (Flash/EEPROM,
SRAM/DRAM)
• Të dy memoriet mund të përdorin madhësi të ndryshme qelizash
Disavantazhet e arkitekturës Harvard
• Njësia e kontrollit me dy bus-e është
më e ndërlikuar dhe e kushtueshme Harvard
• Prodhimi i një mikrokontrolluesi me
dy bus-e është më i kushtueshëm Të dhënat Programi
• Prodhimi i njësisë së kontrollit kërkon Memoria e
Memoria e
më shumë kohë dhe ka kosto më të të dhënave CPU programit

lartë
• Memoria e të dhënave që është e Adresa Adresa

pazënë nuk mund të përdoret për


instruksionet (programin) dhe
anasjelltas
4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS
ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
6 Arkitektura e CPU-së
MAR
Bus-i i adresave MEMORIA
PC SP
CPU
IR
IR (opcode) IR (Address) MDR
Bus-i i të dhënave

AC

CU STATUS ALU

Bus-i i kontrollit
Brënda CPU Jashtë CPU
(te regjistrat, ALU, memorja)
4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS
ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
7 Arkitektura e CPU-së
• Arkitektura e paraqitur në MAR
Bus-i i adresave MEMORIA
figurë është arkitekturë e PC SP
thjeshtë CPU
IR
IR (opcode) IR (Address) MDR
• Kjo shërben për të kuptuar Bus-i i të dhënave
AC
parimet themelore për
projetkimin e CPU-së si CU STATUS ALU
edhe për të kuptuar në
parim se si funksionon Bus-i i kontrollit Brënda CPU Jashtë CPU
CPU-ja (te regjistrat, ALU, memorja)

• Qëllimi i shqyrtimit të një versioni të thjeshtuar është që të kuptohet në përgjithësi


se si një CPU ekzekuton instruksionet, pa qenë e ngarkuar me kompleksitetetin
ekstrem që ekziston në CPU-të e shpejtësisë së lartë të ditëve të sotme

• Procesi i projektimit të një CPU-je ndryshon kryesisht në kompleksitet nga


arkitektura e paraqitur por jo në parim

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
8 Memorja RAM dhe ROM
• Memoria RAM (Random Access Memory) përdoret si për të shkruar
informacionin ashtu edhe për ta lexuar atë. Memoria RAM e ruan informacionin
për aq kohë sa mikrokontrolluesi furnizohet me energji në të kundërt
informacioni që ndodhet në RAM humbet
• Tipet e RAM-it
- SRAM (Static Random Access Memory)
- DRAM (Dynamic Random Access Memory)
• Memoria ROM (Read Only Memory) progromohet vetëm një here në fabrikë dhe
kësaj memorie vetëm mund ti lexohet informacioni por jo të shkruhet. Kjo
memorie ruan informacionin edhe pas ndërprerjes se furnizimit me energji
• Tipey e ROM-it
- PROM (Programmable Read-Only Memory) e cila mund të progamohet
vetëm një here nga përdoruesi
- EPROM (Erasable Programmable Read-Only Memory ) e cila fshihet dhe
programohet shumë here nga përdoruesi
- EEPROM (Electrically Erasable Programmable Read-Only Memory) e cila
fshihet dhe programohet shumë here nga përdoruesi
• FLASH Memory është një variant i EEPROM-it. Termi "flash" u zgjodh sepse një
sasi e madhe e memories mund të fshihet me një hap të vetëm
4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS
ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
9 Memorja e perdorur në mikrokontrollues
• Memoria e mikrokontrolluesit përbëhet kryesisht nga FLASH Memory dhe memorja
SRAM
• Kodi ose instruksionet që do të ekzekutohen (programi) ruhen në FLASH Memory-in e
mikrokontrolluesit
• Të gjithë mikrokontrolluesit e sotëm e kamë memorien e programit të tipit FLASH
Memory e cila mundëson fshirjen e programit dhe riprogramimin nga përdoruesi

MAR
Bus-i i adresave MEMORIA
PC SP
• Memoria e të dhënave CPU
(SRAM) e mikrokontrolluesit IR
IR (opcode) IR (Address) MDR
ruan të dhënat që përdoren Bus-i i të dhënave

gjatë funksionimit normal AC

të mikrokontrolluesit për aq
CU STATUS ALU
kohë sa mikrokontrolluesi
furnizohet me energji Bus-i i kontrollit Jashtë CPU
Brënda CPU
(te regjistrat, ALU, memorja)

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
10 Regjistrat e CPU-së
• MAR (Memory Address Register) është një regjistër i cili përdoret për të mbajtur
adresën e të dhënës që do të përpunohet
• MDR (Memory Data Register) është një regjistër i cili ruan informacionin që po
dërgohet ose merret nga memoria përgjatë bus-it të të dhënave
• AC (Accumulator) përdoret për të ruajtur të dhënat që përpunohen nga ALU-ja,
dhe është regjistri kryesor në sektorin e të dhënave të CPU-së
• PC (Program Counter) regjister që ruan adresën e instruksionit pasardhës që do
të ekzekutohet
MAR
Bus-i i adresave MEMORIA
PC SP

Regjistrat janë memorie IR


CPU
shumë të shpejta që IR (opcode) IR (Address) MDR
Bus-i i të dhënave
mbajnë një instruksion AC
ose një të dhënë që do të
përpunohet menjëherë CU STATUS ALU

Bus-i i kontrollit Brënda CPU Jashtë CPU


(te regjistrat, ALU, memorja)

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
11 Regjistrat e CPU-së
• IR (Instruction Register) është regjistri i instruksioneve dhe në fazën kur lexohet
memoria, të dhënat së pari shkojnë në MDR. Nëse e dhëna është një instruksion ajo
zhvendoset tek regjistri i instruksioneve. Regjistri i instruksioneve (IR) ka dy pjesë
• IR(opcode) është kodi i operimit i cili përbën një pjesë të instruksionit. Kjo pjesë
e instruksionit tregon se çfarë do të bëjë CPU-ja. Kodi i operimit IR(opcode)
dekodohet nga njësia e kontrollit (CU)
• IR(address) është operandi dhe përbën pjesën e mbetur të instruksionit. Këto
pjesë zakonisht janë adresa të cilat dërgohen në MAR
MAR
Bus-i i adresave MEMORIA
• SP (Stack Pointer) është PC SP

një regjistër i cili IR


CPU
përdoret për të raujtur IR (opcode) IR (Address) MDR
Bus-i i të dhënave
përkohësisht adresat e AC
pjesëve të veçanta të
memories gjatë CU STATUS ALU

ekzekutimit të programit
Bus-i i kontrollit Brënda CPU Jashtë CPU
(te regjistrat, ALU, memorja)

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
12 CU dhe ALU e CPU-së
• CU (Control Unit) është njësia e kontrollit në CPU, dhe është një qark që përdor
sinjale elektrike për të drejtuar ose komanduar të gjithë sistemin, e thënë ndryshe
është përgjegjëse për ekzekutimin e instruksioneve. Njësia e kontrollit (CU) nuk
ekzekuton instruksionet, përkundrazi ajo drejton apo komandon pjesët e tjera të
sistemit për të bërë të mundur ekzekutimin e instruksionit. Njësia e kontrollit
komunikon me njësinë aritmetike logjike (ALU) dhe me memorien
• ALU (Arithmetic Logic Unit)
është njësia aritmetike logjike MAR
Bus-i i adresave MEMORIA
e cila përmban një qark PC SP

elektronik që ekzekuton të IR
CPU
gjitha operacionet aritmetike IR (opcode) IR (Address) MDR
Bus-i i të dhënave
dhe logjike. Ajo mund të AC
kryejë katër llojet e
operacioneve aritmetike: CU STATUS ALU
mbledhjen, zbritjen,
shumëzimin dhe pjesëtimin Bus-i i kontrollit Brënda CPU Jashtë CPU
(te regjistrat, ALU, memorja)
gjithashtu mund të kryej edhe
operacione logjike AND, OR etj
4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS
ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
13 Rrugët e komunikimit (BUS-et)
Për të funksionur si një njësi komplekse memoria, njësia aritmetike logjike (ALU) dhe
njësia e kontrollit (CU) duhet të komunikojnë ndërmjet tyre. Rrugët e komunikimit
ndërmjet njësive të ndryshme quhen bus-e. Një bus nuk është gjë tjetër veçse një
rrugë elektrike për lëvizjen e të dhënave nga një pike në një pike tjetër të qarkut.
• CPU-ja komunikon me memorien përmes dy bus-ve: Bus-i i adresës dhe Bus-i i të
dhënave
• Bus-i i adresës i tregon memories se ku duhet të lexohen ose të shkruhen të
dhënat ose ku duhet të lexohen instruksionet
• Bus-i i të dhënave transmeton të dhënat që shkëmbehen midis CPU-së dhe
memories MAR
Bus-i i adresave MEMORIA
PC SP
• Bus-i i kontrollit (Control
CPU
Bus) transmeton të IR
IR (opcode) IR (Address) MDR
gjithë sinjalet e kontrollit Bus-i i të dhënave

nga njësia e kontrollit AC

tek njësitë e tjera të


CU STATUS ALU
sistemit
Bus-i i kontrollit (te regjistrat, ALU, memorja) Brënda CPU Jashtë CPU

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
14 Marrja (fetch), dekodimi dhe ekzekutimi i instruksionit
• Marrja (fetch) e instruksionit nga memorja dhe dërgimi i tij në regjistrin e
instruksioneve (Instruction Register IR)
• Dekodimi i instruksionit nga njësia e kontrollit (CU) ku përcaktohet se cilat pjesë të
sistemit do të aktivizohen për të ekzekutuar instruksionin
• Ekzekutimi i instruksionit
Fillim
MAR
Bus-i i adresave MEMORIA
Instrukion Jo PC SP

tjetër ? CPU
IR
IR (opcode) IR (Address) MDR
Po Bus-i i të dhënave
Marrja (fetch) AC

Dekodimii CU STATUS ALU

Ekzekutimi Bus-i i kontrollit Brënda CPU Jashtë CPU


(te regjistrat, ALU, memorja)

Fund
4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS
ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
15 Marrja (fetch) e instruksionit: hapi 1
• Filimisht instruksioni duhet të lexohet nga memoria
• PC (Program Counter) është regjistri kryesorë në marrjen e instruksionit, ai mban
adresën e instruksionit në memorie
• Adresa që ndodhet në PC kalon në MAR (Memory Address Register ) dhe mbetet e
pandryshuar në këtë hap

MAR←PC

MAR
Bus-i i adresave MEMORIA
PC SP

IR
CPU
IR (opcode) IR (Address) MDR
Bus-i i të dhënave
AC

CU STATUS ALU

Bus-i i kontrollit Brënda CPU Jashtë CPU


(te regjistrat, ALU, memorja)

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
16 Marrja (fetch) e instruksionit: hapi 2

• Përmbajta e adresës së memories kalon në MDR (Memory Data Register )

MDR← MAR

• x do të kuptohet si përmbajta e adresës x

MAR
Bus-i i adresave MEMORIA
PC SP

IR
CPU
IR (opcode) IR (Address) MDR
Bus-i i të dhënave
AC

CU STATUS ALU

Bus-i i kontrollit Brënda CPU Jashtë CPU


(te regjistrat, ALU, memorja)

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
17 Marrja (fetch) e instruksionit: hapi 3
• Hapi tjetër është lëvizja e instruksionit drejt regjistrit të instruksioneve (IR)
IR←MDR
• Regjistri i instruksioneve (IR) është e ndarë në dy pjesë IR (opcode) dhe IR (address)
dhe në këtë fazë IR (opcode) është dekoduar nga njësia e kontrollit

• Zakonisht instruksioni tjetër që do të merret (fetch) ndodhet në pozicionin


pasardhës të memorjes, kështu që adresa në PC (Program Counter) do të rritet
PC←PC + 1
MAR
Bus-i i adresave MEMORIA
PC SP

IR
CPU
IR (opcode) IR (Address) MDR
Bus-i i të dhënave
AC

CU STATUS ALU

Bus-i i kontrollit (te regjistrat, ALU, memorja) Brënda CPU Jashtë CPU

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
18 Marrja (fetch) e instruksionit nga memoria dhe dekodimi

Marrja (fetch) e instruksionit


1. MAR←PC
Në mënyrë të përmbledhur jepen të
2. MDR← MAR gjithë hapat gjatë marrjes (fetch) së
instruksionit nga memoria e programit
3. IR←MDR; PC←PC + 1
ku më pas bëhet dekodimi i tij
(dekodimi i instruksionit)

MAR
Bus-i i adresave MEMORIA
PC SP

IR
CPU
IR (opcode) IR (Address) MDR
Bus-i i të dhënave
AC

CU STATUS ALU

Bus-i i kontrollit Brënda CPU Jashtë CPU


(te regjistrat, ALU, memorja)

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
19 Disa instruksione në gjuhën Assembler

Instruksioni Përshkrimi Opcode Kuptimi


LDA x AC ← x 00000000 Ngarkon AC me përmbajtjen e adresës x të memories
STA x x ← AC 00000001 Ngarkon përmbajtjen e AC në memorie te adresa x e
memories
ADD x AC←AC + x 00000010 Mbledh AC me përmbajtjen e adresës x të memories
dhe rezultatin e ruan në AC
AND x AC = AC ‫ ר‬x 00000011 Veprimi logjik AND

• Gjuha Assembler është një gjuhë MAR


Bus-i i adresave MEMORIA
e projektuar rreth një CPU-je të PC SP

veçantë IR
CPU
• Një instruksion përbëhet nga IR (opcode) IR (Address) MDR
Bus-i i të dhënave
kodi i operimit (opcode) dhe AC

aperand-i (psh opcode është LDA STATUS


CU ALU
dhe operand është x )
• Operand-ët manipulohen nga Bus-i i kontrollit Brënda CPU Jashtë CPU
(te regjistrat, ALU, memorja)
opcode-et
4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS
ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
20 Ekzekutimi i një instruksioni
• Le të analizojmë LDA x.
• Opcode është 00000000. Gjatë marrjes (fetch) së instruksionit, pjesa që
përmban opcode është vendosur në IR (opcode), dhe dekodohet nga njësia e
kontrollit (CU)
• Njësia e kontrollit (CU) tani e di se cili është instruksioni dhe prodhon sinjalet e
kontrollit për të bërë të mundur ekzekutimin e tij
• Variabli x quhet operand-i dhe është pjesë e instruksionit, ku gjatë marrjes së
instruksionit oprand-i është vendosur në IR(address)
MAR
Bus-i i adresave MEMORIA
PC SP

IR
CPU
Ekzekutimi i LDA x IR (opcode) IR (Address) MDR
Bus-i i të dhënave
MAR ← IR (address) AC
LDA x MDR ← MAR
AC ← MDR CU STATUS ALU

Bus-i i kontrollit Brënda CPU Jashtë CPU


(te regjistrat, ALU, memorja)

4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS


ORGANIZIMI I CPU--së NË MIKROKONTROLLUES
21 Marrja (fetch), dekodimi dhe ekzekutimi i një instruksioni
a
PC=2 MAR=2 Memorja
7 -
g
PC=3 MAR=5 6 -
5 00000010 00001111
e f b
4 -
h
IR (opcode) IR (Address) 3 -
00000000 00000101 2 00000000 00000101
1 -
Dekodimi d c
0 -

LDA x
MDR= 00000000 00000101
MAR ← IR (address)
MDR ← MAR
AC ← MDR MDR=00000010 00001111

AC=527 (sistem dhjetor)


i
4/19/2018 ARKITEKTURA E SISTEMEVE TË KONTROLLIT UNIVERSITETI POLITEKNIK I TIRANËS

You might also like