srdjan Postat Decembrie 17, 2009 Partajează Postat Decembrie 17, 2009 salut... se apropie examenul la ASDN (analiza si sinteza dispozitivelor numerice)... parca de anul asta asa-i spune la CID si as vrea sa exersez niste probleme in vacanta. totusi tind sa ma plafonez prin simplul fapt ca nu pot sa concep singur enunturi la probleme pentru ca tind sa concep enunturi la probleme care le stiu face fara prea mult stress... de aceea va rog care aveti la indemana niste probleme cu porti, minimizari, mux, dmux, dcd, cd si priority encoders. si eventual niste chestii simple despre registrii, memorii, buffere, etc. pt ca astea nu au apucat sa ni le predeie...anu asta e cam nasol de noi pt ca pe cand incepe sa se complice teoria a ramas putin timp si se preda in ritm alert... Link spre comentariu
cirip Postat Decembrie 17, 2009 Partajează Postat Decembrie 17, 2009 Nu ai o culegere de probleme de CID?daca nu, baga o cautare pe gogu. Sau cauta un tutorial de verilog sau vhdl si sa vezi acolo probleme cu carul.Uite cateva sugestii: Combinationale: convertor binar-7 segmente (include codurile hex), codor de prioritati, mux/demux numai din porti NAND.Secventiale: Frecventmetru, automat ptr comanda unui semafor, automat ptr comanda unui ascensor, numarator sincron/asincron folosind numai bistabili D, JK sau T. La un proiect de scoala eu am avut un serializor ptr ethernet. Ai datele intr-o memorie, citeste cate 8 biti, serializeaza-i si codeaza-i Manchester in acelasi timp.Una tare la care ma strofoc eu... Ai un sir de date serial. Trebuie sa detectezi aparitia unei anumite secvente de 8 biti. Dupa ce ai detectat-o, urmatorul octet iti spune cat sa astepti, apoi, dupa ce ai asteptat nr de octeti care trebuie, sa incepi sa incarci date intr-o memorie de 8 biti.Si poate mai au si altii idei.Bafta! Link spre comentariu
srdjan Postat Decembrie 17, 2009 Autor Partajează Postat Decembrie 17, 2009 merci de sugestiile cu tutorialu... ceva ceva am gasit... o sa mai insist. ma gandeam ca poate am noroc sa aibe cineva culegere sa-mi scaneze si mie 1-2 pagini...pe partea de memorii si registrii ma descurc de la uC dar nu am baze teoretice solide.legat de problema ta eu as folosi un shift register facand right shift cu fiecare bit ce vine pe seriala dupa care as aduna-o cu o masca negativa introdusa manual in alt registru iar daca rezultatul lor este 11111111 (AND 8 intrari) urmatorii 8 biti ii incarci in al 2-lea registru care va tine numarul de cicli care vei sta inainte sa incepi partea cu ram-ul. si aici dupa 8 cicli trebuie sa opersti right shift-ul si la acest registru.pana aici ai detectat byte-ul de trigger si byte-ul contorului de delay. byte-ul contorului trebuie sa-l incarci intr-un counter care va decrementa la fiecare ciclu cu 1 iar cand declanseaza carry comuti un flip-flop care va activa ram-ul si counterul pt adresa incarcand date-le ce urmeaza pe seriala... nu am experienta deloc si deci cele spuse de mine pot fi SF-uri sau aiureli pamantene... dar le-am gandit in timp ce le-am scris Link spre comentariu
srdjan Postat Decembrie 17, 2009 Autor Partajează Postat Decembrie 17, 2009 am incercat sa fac ce ai zis tu si am intampinat o greseala de logica chiar simpatica :)in felul in care am spus eu practic la fiecare clock tick poti avea valoarea dorita... nu la multiplu de 8 (byte complet) care bulverseaza logica problemei... mai insist sa vad ce-o sa iasa Link spre comentariu
cirip Postat Decembrie 18, 2009 Partajează Postat Decembrie 18, 2009 Multam de intentie, dar nu te zbate cu problema mea. Cred ca e mai util sa te agiti ptr examenul tau.Idee in mare am si eu cam cu sa fac minunea aia, dar detaliile sunt cele care imi mananca plamanii. Eu mai am oarece restrictii. Dupa ce merge logica, tre sa fac sinteza si sa verific si taimingul, ptr ca trebuie sa torn toata sandramaua intr-un FPGA. Frecv de lucru e de vreo 90-100MHz. Si nici nu prea am chef de munca zilele astea ... Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum