Diferență între revizuiri ale paginii „CID aplicatii 12 : Exercitii cu circuite secventiale”

De la WikiLabs
Jump to navigationJump to search
Linia 11: Linia 11:
  
 
==Exercitii==
 
==Exercitii==
===Exercitiul 1: Miniprocesor===
 
 
Un exemplu de procesor Harvard minimal, avand memorii de data si instructiuni, un program counter si un ALU.
 
  
Dimensiunile nu sunt realiste, acest lucru fiind asa pentru a putea fi sintetizat si testat pe placa.
+
===Exercitiul 1: password checker===
 
 
[https://wiki.dcae.pub.ro/images/7/76/Subiect_l2_miniprocesor.pdf miniprocesor.pdf]
 
 
 
 
 
 
 
===Exercitiul 2: password checker===
 
  
 
Verilog suporta codul ASCII deci puteti introduce si litere/string-uri care vor fi tratate prin reprezentarea lor binara.
 
Verilog suporta codul ASCII deci puteti introduce si litere/string-uri care vor fi tratate prin reprezentarea lor binara.
Linia 29: Linia 20:
  
  
===Exercitiul 3: pseudorandom number generator===
+
===Exercitiul 2: pseudorandom number generator===
  
 
[https://wiki.dcae.pub.ro/images/0/05/Subiect_l2_pseudorandom_nr_generator.pdf pseudorandom_nr_generator.pdf]
 
[https://wiki.dcae.pub.ro/images/0/05/Subiect_l2_pseudorandom_nr_generator.pdf pseudorandom_nr_generator.pdf]
Linia 35: Linia 26:
  
  
===Exercitiul 4: calculator de siruri dupa formula data===
+
===Exercitiul 3: calculator de siruri dupa formula data===
  
 
[https://wiki.dcae.pub.ro/images/a/a2/Subiect_l2_sir_calculator.pdf calculator_siruri.pdf]
 
[https://wiki.dcae.pub.ro/images/a/a2/Subiect_l2_sir_calculator.pdf calculator_siruri.pdf]
Linia 41: Linia 32:
  
  
===Exercitiul 5: UART tx - structural===
+
===Exercitiul 4: UART tx - structural===
  
 
UART este un standard pentru transmisiune de date seriale. Pentru o descriere a protocolului puteti citi: [https://www.circuitbasics.com/basics-uart-communication/ functionare_uart]
 
UART este un standard pentru transmisiune de date seriale. Pentru o descriere a protocolului puteti citi: [https://www.circuitbasics.com/basics-uart-communication/ functionare_uart]
Linia 49: Linia 40:
  
  
===Exercitiul 6: UART rx - behavioural===  
+
===Exercitiul 5: UART rx - behavioural===  
  
 
Daca ati inteles cum functioneaza mecanismul de UART (si pentru a testa functionarea TX de la exercitiul anterior) puteti scrie modulul de RX (receiver) al protocolului, astfel incat cele 2 sa comunice intre ele.
 
Daca ati inteles cum functioneaza mecanismul de UART (si pentru a testa functionarea TX de la exercitiul anterior) puteti scrie modulul de RX (receiver) al protocolului, astfel incat cele 2 sa comunice intre ele.
Linia 62: Linia 53:
  
  
===Exercitiul 7: microcontrollere - oscillator control register===  
+
===Exercitiul 6: microcontrollere - oscillator control register===  
  
 
Acest subiect prezinta un modul simplificat al mecanismului de control al oscilatorului de pe un microcontroller. Acest modul controleaza generarea smenalului de ceas ce se propaga catre microcontroller si deci viteza la care sistemul va functiona.
 
Acest subiect prezinta un modul simplificat al mecanismului de control al oscilatorului de pe un microcontroller. Acest modul controleaza generarea smenalului de ceas ce se propaga catre microcontroller si deci viteza la care sistemul va functiona.
  
 
[https://wiki.dcae.pub.ro/images/0/09/Subiect_l2_uc_osccon.pdf uc_osccon.pdf]
 
[https://wiki.dcae.pub.ro/images/0/09/Subiect_l2_uc_osccon.pdf uc_osccon.pdf]

Versiunea de la data 21 mai 2023 13:17

Teorie

Acest laborator are rolul de a sedimenta cunostintele dobandite anterior.

El consta in exercitii separate, unele date ca subiect la lucrarea 2 in anii anteriori.

Unele exercitii contin si automate. Daca acestea nu au fost inca predate, puteti ignora partea aceea de circuit.

Dupa cum se poate observa, exemplele sunt diverse ca domeniu de aplicabilitate. Prin asta se doreste a se arata importanta si diversitatea circuitelor digitale in societatea moderna.


Exercitii

Exercitiul 1: password checker

Verilog suporta codul ASCII deci puteti introduce si litere/string-uri care vor fi tratate prin reprezentarea lor binara.

password_checker.pdf


Exercitiul 2: pseudorandom number generator

pseudorandom_nr_generator.pdf


Exercitiul 3: calculator de siruri dupa formula data

calculator_siruri.pdf


Exercitiul 4: UART tx - structural

UART este un standard pentru transmisiune de date seriale. Pentru o descriere a protocolului puteti citi: functionare_uart

uart_tx.pdf


Exercitiul 5: UART rx - behavioural

Daca ati inteles cum functioneaza mecanismul de UART (si pentru a testa functionarea TX de la exercitiul anterior) puteti scrie modulul de RX (receiver) al protocolului, astfel incat cele 2 sa comunice intre ele.

La nivel de TB ar fi amandoua instantiate si conectate intre ele.

UART RX ar trebui sa scoata un puls al semnalului "valid" impreuna cu 8 biti de date daca transmisiunea a fost efectuata cu succes, datele care ies din el fiind cele care au intrat in modulul de tx.

Pentru a compara abordarea structurala cu cea comportamentala, acest modul se doreste a fi facut comportamental. In always-urile acestuia vor aparea mecanisme de numarare care practic alcatuiesc un mic FSM de control.


Exercitiul 6: microcontrollere - oscillator control register

Acest subiect prezinta un modul simplificat al mecanismului de control al oscilatorului de pe un microcontroller. Acest modul controleaza generarea smenalului de ceas ce se propaga catre microcontroller si deci viteza la care sistemul va functiona.

uc_osccon.pdf