Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog

Proiect
8/10 (1 vot)
Domeniu: Electronică
Conține 1 fișier: doc
Pagini : 13 în total
Cuvinte : 2440
Mărime: 112.50KB (arhivat)
Publicat de: Vasile Oroș
Puncte necesare: 8
Profesor îndrumător / Prezentat Profesorului: Andrei Bragarenco
Universitatea Tehnică a Moldovei Facultatea Calculatoare , Informatică şi Microelectronică Catedra Microelectronică şi Dispozitive Semiconductoare

Extras din proiect

Introducere

În prezent dezvoltarea tehnico-ştiinţifică se bazează pe progresele electronicii digitale de calcul şi procesare a datelor şi mai mult decît atît, e necesară din ce în ce mai multă performanţă în acest . Elaborarea unui nou procesor fără unelte performante ar fi foarte anevoioasă, din acest motiv, în anul 1985, a fost elaborat limbajul descriptiv Verilog, ce permite descrierea comportamentului şi/sau arhitecturii unui sistem numeric.

În acest program urmează să proiectăm un procesor şi să-l simulăm.

Fundamentare teoretică

Procesorul Elementar

Cîteva definiţii de bază :

Un procesor este un SO-3 la care unul din automate este de tip RALU iar celălalt îndeplineşte funcţia de automat de control.

Un procesor elementar, PE, este un procesor al cărui automat de control este strict iniţial

Vom numi microinstrucţiuni elementele produsului Y x Q ale unui automat de control

Un procesor elementar va fi format, conform definiţiilor anterioare, dintr-un circuit de tip RALU şi un automat de control strict iniţial CROM. Acest procesor se va iniţializa prin resetare şi va executa o singură funcţie, cea definită de secvenţa de comandă pentru care a fost proiectat automatul de control. Altfel spus, PE este procesorul cu o singură instrucţiune pe care o interpretează continuu.

Figura 1 .Procesor Elementar

Fie PE din figura 1, format din CR0M, în calitate de automat de control, definit de următorul format al microinstrucţiunii pe care o generează:

<microinstructiune>::= <com. ralu> <com. i/o> <mod>

<test> <jump>

<com. i/o>::= READ | WRITE | -

<Mod>::= JMP | CJMP | -

<Test>::= CR | WAITJR. | WAIT.W | -

<Jump>::= <o eticheta formata dintr-un sir, nefolosit ca mnemonica, de cel mult 6 caractere>

şi RALU1 definit prin următoarea structură a comenzii:

<com.ralu>::= <Left> <Right> <Dest> <Sel> <Func> <Write>

<Left::= L0 | L1 | L2 | - ,

<Right>::= R0 | Rl | R2 | - ,

<Dest>::= DO | Dl | D2 | - ,

<Sel>::= DIN |- ,

<Func>::= XOR | NOT | ADD | LEFT | SHR,

<Write>::= W | -

CROM comandă în exteriorul PE1, citirea unor configuraţii binare prin ieşirea READ, scrierea prin WRITE. Va recepţiona, în consecinţă indicatorii WAIT_R şi WAIT.W prin care este sincronizată recepţia pe intrarea DIN şi emiterea pe ieşirea DOUT. Indicatorul CR este recepţionat pe buclă de la ieşirea ALU din RALUl. CROM posedă şi o intrare sincronă de reset, RST, prin acţiunea căreia se iniţializează pentru generarea primei microinstructiuni din secvenţa pentru care a fost proiectat. Comanda implicită în câmpul <Mod> este INC.

Procesorul elementar PE1 definit prin interconectarea celor două automate (RALU ŞI CROM) va putea folosi următorul limbaj de microprogramare:

<microinstructiune>::= <com. ralu> <com. i/o> <mod>

<test> <jump>

<com.ralu>::= <Left> <Right> <Dest> <Sel> <Func> <Write>

<Left>::= L0 | L1 | L2 | - ,

<Right>::= R0 | Rl | R2 | - ,

<Dest>::= DO | Dl | D2 | - ,

<Sel>::= DIN | - ,

<Func>::= XOR | NOT | ADD | LEFT | SHR,

<Write>::= W | - .

<com. i/o>::= READ | WRITE | -

<Mod>::= INC | JMP | CJMP

<Test>::= CR | WAIT„R | WAIT_W | -

<Jump>::= <o eticheta formata dintr-un sir, nefolosit ca mnemonica, de cel mult 6 caractere>.

Modulul CROM

CROM-ul este un automat de control tip Moore imediat în componenţa căruia este şi un ROM pentru stocarea comenzilor CROM-ului.

Structura CROM-ului este următoarea:

Circuitul INC este un circuit de incrementare combinaţional care ne pune în fiecare ciclu de ceas la dispoziţie valoarea incrementată a stării curente. Dacă pe intrările de selecţie ale MUX se aplică S1 S0 = 00, atunci starea următoare a autoamtului de control va fi obţinută prin incrementarea celei curente.Registrul împreună cu circuitul de incrementare formează un numărător sincron.

Circuitul TC este un foarte modest circuit combinaţional folosit pentru transcodificarea câmpului MOD în funcţie de valoarea bitului testat, T, selectat de mul-tiplexorul de test, MUXT. Tabelul de mai jos descrie funcţia realizată de acest circuit.Câmpul MOD este codificat prin biţii Ml, MO, iar ieşirea TC generează cei doi biţii de selecţie pentru MUX. Câmpul MOD va specifica cele patru moduri de tranziţie ale CROM-ului:

INC : starea următoare a CROM se obţine prin incrementare

Figura 4. Structura CROM-ului Figura 5. Tabelul de adevăr al circuitului transcodor

JMP : starea următoare a CROM este dată de câmpul JUMP prin selectarea intrării 1 a MUX de către ieşire TC

CJMP : starea următoare depinde de valoarea intrării selectate, prin codul TEST sub denumirea de T, la intrarea TC:

* dacă testul nu este îndeplinit, T = 0, atunci tranziţia are loc prin incre-mentare pentru că ieşirile TC iau valoarea 00

* dacă testul este îndeplinit, T = 1, atunci tranziţia are loc prin saltui la adresa dată de câmpul JUMP, selectat prin valoarea 01 de la ieşirea TC

INIT : starea următoare este dată de codul de iniţializare prezent pe intrarea X1, conec-tată la intrările 2 şi 3 ale MUX.

Preview document

Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 1
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 2
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 3
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 4
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 5
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 6
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 7
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 8
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 9
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 10
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 11
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 12
Descrierea și Simularea unui Procesor cu Ajutorul Limbajului Verilog - Pagina 13

Conținut arhivă zip

  • Descrierea si Simularea unui Procesor cu Ajutorul Limbajului Verilog.doc

Alții au mai descărcat și

Proiect SDPST

TEMA PROIECTULUI Se cere sa se realizeze din punct de vedere hardware si software un sistem cu procesor DSP - ADSP2181 care sa implementeze o...

Proiect modul de transmisie serială UART

1. Port Serial (UART) – Tx Sa se scrie modelul Verilog al unui modul de transmisie seriala uart_tx.v si un modul de test testbench_tx.v...

Memorie Adresabilă prin Conținut

1. Introducere Memoria adresabilă prin conţinut ( CAM – content addresable memory ) reprezintă o memorie în care căutarea se face după o cheie de...

Monitorul

O clasificare sumara a monitoarelor ar putea fi dupa unul din criteriile : a) dupa culorile de afisare -monitoare monocrome (afiseaza doar doua...

Stabilizator de Tensiune

3. Functionarea În general, pentru realizarea stabilizatoarelor de tensiune se folosesc proprietatile diodelor. Cel mai simplu tip de...

Ai nevoie de altceva?