Diferență între revizuiri ale paginii „CID aplicatii 12 : Exercitii cu circuite secventiale”
Linia 1: | Linia 1: | ||
==Teorie== | ==Teorie== | ||
− | Acest laborator are rolul de a sedimenta | + | 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. | El consta in exercitii separate, unele date ca subiect la lucrarea 2 in anii anteriori. | ||
Linia 13: | Linia 13: | ||
===Exercitiul 1: Miniprocesor=== | ===Exercitiul 1: Miniprocesor=== | ||
− | Un exemplu de procesor Harvard minimal, avand memorii de data si instructiuni, un program counter si un | + | 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. | Dimensiunile nu sunt realiste, acest lucru fiind asa pentru a putea fi sintetizat si testat pe placa. | ||
Linia 21: | Linia 21: | ||
− | ===Exercitiul 2: password checker=== | + | ===Exercitiul 2: password checker=== |
− | Verilog suporta codul | + | Verilog suporta codul ASCII deci puteti introduce si litere/string-uri care vor fi tratate prin reprezentarea lor binara. |
[https://wiki.dcae.pub.ro/images/5/5c/Subiect_l2_password_checker.pdf password_checker.pdf] | [https://wiki.dcae.pub.ro/images/5/5c/Subiect_l2_password_checker.pdf password_checker.pdf] | ||
Linia 41: | Linia 41: | ||
− | ===Exercitiul 5: | + | ===Exercitiul 5: 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] | |
[https://wiki.dcae.pub.ro/images/d/d0/Subiect_l2_uart_tx.pdf uart_tx.pdf] | [https://wiki.dcae.pub.ro/images/d/d0/Subiect_l2_uart_tx.pdf uart_tx.pdf] | ||
Linia 49: | Linia 49: | ||
− | ===Exercitiul 6: | + | ===Exercitiul 6: UART rx - behavioural=== |
− | Daca ati inteles cum functioneaza mecanismul de | + | 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. | 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 | + | 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 | + | In always-urile acestuia vor aparea mecanisme de numarare care practic alcatuiesc un mic FSM de control. |
Linia 64: | Linia 64: | ||
===Exercitiul 7: microcontrollere - oscillator control register=== | ===Exercitiul 7: 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. | |
[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 15 aprilie 2022 19:14
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: 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 2: password checker
Verilog suporta codul ASCII deci puteti introduce si litere/string-uri care vor fi tratate prin reprezentarea lor binara.
Exercitiul 3: pseudorandom number generator
Exercitiul 4: calculator de siruri dupa formula data
Exercitiul 5: UART tx - structural
UART este un standard pentru transmisiune de date seriale. Pentru o descriere a protocolului puteti citi: functionare_uart
Exercitiul 6: 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 7: 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.