Documente Academic
Documente Profesional
Documente Cultură
Calculatoare Engleza
Informatiiledespreblocuri :
U_PC ProgCnt in care PC va stoca valoarea din NEW_PC bazandu-se pe frontal crescator al Clk.
U_ROM ROM32x24 in care se folosesc doar adresele Addr(4:0), celelalte nefiind importante.
U_MUXRegD MUX2V4 este un multiplexor folosit pentru stabilirea pozitiei bitului de destinatie.
U_Ctrl ctrl in care odata primita instructiunea, este responsabil pentru determinarea valorilor si a
tuturor semnalelor si a ordinii in care o sa fie folosite in executie.
U_REGS File_Regs consta intr-un set de registrii care pot sa fie scrisi sau cititi. Contine 2 porturi de
citire RdReg1 si RdReg2 si un singur port de scriere WrReg.
U_ALU ALU este responsabil cu operatiile aritmetico-logice. Primeste 2 valori RdData1 si RdData2 si
face operatia dorita in functie de valoarea ALUOP si trimite rezultatul pe iesirea Y. Este de asemenea
responsabil pentru calcularea valorii flag-ului.
U_DataMem DataMem este blocul de memorie care contine memorie RAM si care este resposabil
pentru operatie de Input/Output.
XLXI_4 MUX2V16 este multiplexorul folosit la stabilirea daca informatia care a fost scrisa in registru
vine de la ALU sau de la blocul de memori edepinzand de instructiunea curenta.
Tabelul de adevar al semnalelor generate de blocul de control:
Rolurile semnalelor:
BranchZ se face 1 daca opcodul instructiunii din ctrl reprezinta instructiunea BRA Z,Expr si in caz contrar
se face 0.
Tabelul cu instructiuni:
Instructiuni
ADD 0100 0www wBqq qddd dppp ssss
wb,ws, wd
SUB 0101 0www wBqq qddd dppp ssss
wb,ws, wd
AND 0110 0www wBqq qddd dppp ssss
wb,ws, wd
IOR 0111 0www wBqq qddd dppp ssss
wb,ws, wd
MOV 1000 1fff ffff ffff ffff ssss
wns, f
MOV 1000 1fff ffff ffff ffff dddd
f, wnd
BRA 0011 0111 nnnn nnnn nnnn nnnn
expr
BRA 0011 0010 nnnn nnnn nnnn nnnn
Z, expr
AND 0110 0www wBqq qddd d11k kkkk
wb, #lit5, wd
B = byte/word operation
d = destination register
s = source register