Documente Academic
Documente Profesional
Documente Cultură
Registre de uz
general
Registru de stare
Registru de adrese
ale memoriei
Registru de
complementare
Logica boolean
i adunare
Magistrala de date
Registru de
deplasare
Numrtorul
program
Registrul
instruciunii
Unitatea de control
(UC)
Registru tampon
pentru operaii de tipul PUSH sau POP. Stiva este o memorie de tipul
LIFO (ultimul intrat primul extras).
Un exemplu de utilizare a regitrilor poate fi descris astfel:
Se consider un program ce realizeaz adunarea a dou numere.
Primul numr este stocat n memorie la adresele succesive 1010 i
respectiv, 1012. Presupunem c valorile ce sunt stocate la aceste adrese
sunt [1010]=0001h i [1012]=0002h.
Pentru realizarea operaiei de adunare va fi realizat urmtoarea
succesiune de operaii:
a.
Se ncarc registru de adrese al memoriei cu adresa
primei valori, deci se va ncrca adresa 1010 n acest
registru;
b.
Se mut ceea ce se gsete la aceast adres (valoarea
0001h) n registrul de date, D0;
c.
Se incrementeaz registru de adrese al memoriei cu 2 (se
lucreaz la nivel de cuvnt), practic se va trece la
urmtoarea adres (1012), ce conine a doua valoare
implicat n operaia de adunare;
d.
Adun coninutul acestei locaii de memorie cu valoarea
ce a fost mutat n registrul datelor D0, i memoreaz
rezultatul n registru pe 16 bii (D0).
1.2 Unitatea de control
Principalul scop al unitii de control este acela de a citi i decoda
instruciunile din memoria program. Pentru executarea unei instruciuni,
unitatea de control acceseaz blocurile unitii logice i aritmetice, pe
baza op-codurilor coninute n registrul instruciunii. Op-codurile
definesc operaiile ce sunt realizate prin intermediul unitii de control
cu scopul execuiei unei instruciuni.
Unitatea de control interpreteaz coninutul registrului
instruciunii i apoi rspunde la instruciune prin generarea unei
secvene de semnale de activare. Aceste semnale activeaz blocurile
logice ale ALU pentru realizarea operaiei dorite.
Unitatea de control genereaz semnalele de control, care
constituie ieiri ctre alte elemente ale microcalculatorului prin
intermediul magistralei de control. De asemenea, unitatea de control ia
msurile necesare ca rspuns la semnalele de control de pe magistrala de
control ce provin de la alte elemente ale microcalculatorului.
n funcie de tipul microprocesorului, semnalele de control pot
varia. Totui, exist o serie de semnale specifice majoritii
microprocesoarelor:
RESET atunci cnd pinul de intrare este n starea HIGH
sau LOW (n funcie de microprocesor), numrtorul
program este ncrcat cu o adres predefinit specificat de
AX
Regitrii
generali
AH
20
AL
BX
BH
BL
CX
CH
CL
DX
DH
DL
ALU
pentru
calculul
adreselor
Registre
segment pe
16 bii
Ali regitrii
generali
Pointerul de
instruciuni
Pointer la stiva
Controlul
logic al
magistralei
Magistrala de date
Registrul de instruciuni
Regitrii temporari
ALU
pentru
operaii aritmetice
i logice
Unitatea
de control
ase instruciuni
sunt puse n coada
de ateptare n
memoria FIFO
Registru de stare
Unitatea de execuie
Unitatea de segmentare
Unitatea de paginare
Registre
Regitrii
segment
Registru
tampon pentru
translatare
Translatorul de
segment
Translator de
pagin
Deplasare
nmulire/
mprire
ALU
Unitatea magistralelor
Interfaa
magistrale
lor
Decodificator
Coad de
ateptare pentru
instruciuni
Unitatea de decodificare
Coad de
ateptare a
unitii de preaducere
Pre-aducere
Unitatea de pre-aducere
2. Magistrale externe
Un numr prestabilit de fire numite magistrale, sunt utilizate
pentru interfaarea procesorului cu lumea exterioar sau pentru
transferul informaiilor n interiorul unitii centrale de procesare.
Magistralele externe sunt grupate n urmtoarele categorii: magistrala de
date, magistrala de adrese i magistrala de control.
2.1 Magistrala de date
Magistrala de date este o magistral bidirecional prin care se
realizeaz schimbul de date dintre procesor i dispozitivele externe
(dispozitive de I/O, memorii, etc.). Magistrala de date poate juca i rolul
de transfer unidirecional de instruciuni de la memorie.
Direcia transferului de informaii (n cazul bidirecional) este
supervizat de unitatea de control a microprocesorului, prin generare de
semnale specifice de citire, scriere, discriminare ntre diversele
dispozitive externe, definire a secvenelor de transmitere a datelor, etc.
Dimensiunea magistralei (numrul de linii de conexiune) depinde
de lungimea cuvntului specific microprocesorului (8, 16, 32,64, etc.
Microprocesor
Magistrala de date
INTA
INTR
Dispozitiv
1
Dispozitiv
2
Dispozitiv
3
INTR
INTA
Logica de control a
ntreruperilor
Microprocesor
Magistrala de date
INTR
IRQ1
IRQn
IRQ0
Dispozitiv
1
Dispozitiv
Dispozitiv
2
n
ntrerupere de tipul 1
sau ntr-un singur pas
ntrerupere de tipul 2
sau NMI
00008h
0000Ch
ntrerupere de tipul 5
(rezervat)
ntrerupere de tipul 6
(rezervat)
ntrerupere de tipul 13
(rezervat)
ntrerupere de tipul 32
(rezervat)
ntrerupere de tipul 33
(disponibil)
ntreruperi rezervate
(27)
00004h
ntrerupere de tipul 3
sau breakpoint
ntrerupere de tipul 4
sau INTO
00000h
ntrerupere de tipul 0
sau mprire prin zero
003FFh