Laboratórium 1 - 10. Mérésből ellenőrző mérés
A VIK Wikiből
Ez az oldal a korábbi SCH wikiről lett áthozva.
Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor, kérlek, javíts rajta egy rövid szerkesztéssel!
Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót.
10-es ellenőrző mérés
- Egy tetszőleges kombinációs vagy sorrendi hálózatot kellett írni verilogban. Javasolta, hogy pl. számláló, vagy multiplexer legyen. Vagyis mi megválaszthattuk, hogy mit írunk. Csinálni kellett egy test bench waveform-ot, majd fpga-ra kellett küldeni. Úgy emlékszem azt mondta, hogy ha fpga-n működik: 5-ös, ha a test bench: 4-es, helyes szintaktika: 2-es. Jegyzőkönyv nem kellett.
- Számláló és egy multiplexer (8 bites)
- Nem akarok belerondítani a kódba, de számmal nem kezdünk modulnevet. *
Az if(Enable==0) jellegű furcsaságot így lenne érdemes inkább:
if(RESET) resetelsz else if(enable) dolgozol
-- Main.wachag - 2012.10.17.
module 8counter(CLK,Enable,Q,RESET) output Q; input CLK,RESET,Enable; reg [7:0] Q; always@(posedge CLK or posedge RESET) if(Enable==0) Q <= Q; else if(RESET==0) Q <= 0; else Q <= Q + 1; end endmodule ////////////////////////////////////////__________________//////// module 8mux(data,select,Q) input data; input select; output Q; reg [7:0] data; reg [2:0] select; always@(data or select) begin case(select) 3'b000 : Q = data[0]; 3'b001 : q = data[1]; 3'b010 : q = data[2]; 3'b011 : q = data[3]; 3'b100 : q = data[4]; 3'b101 : q = data[5]; 3'b110 : q = data[6]; 3'b111 : q = data[7]; endcase end endmodule
- Nekem az volt a feladatom, hogy jönnek négyesével a bitek sorosan,az ad egy számot,és el kell dönteni a paritását.Páros esetén nekem a végén 1-et kellett jelezzen,tehát ha a 4 bites számban páros számú 1-es van,akkor 1 a kimenet a végén (0 is páros szám). Midnegy volt ,hogy mealy vagy moore szerint oldjuk meg,majd verilogban le kell kódolni, és ha jó 4-es,ha kézi CLK-t is csinálsz hozzá,5-ös.Ez kedden volt Varjasi tanár úrnál és Kálmán Viktornál.
- Feladat: 4 bites decimális számláló készítése. Ehhez testbench waveform, aztán topmodul, ami abból áll h példányosítod a számlálót. UCF fájl készítése feltöltés FPGA-ra és kész. Segítőkészek voltak, a feladattal meg voltam hamar, majd nem látta a PC az FPGA-t így hosszú szenvedés után elküldtek egy 4essel. Kellett a számlálóhoz Enable, RESET... és külüön felhívták a figyelmet arra, hogy az always@(posedge CLK or posedge RESET) -nél a RESET-et nem érti, hogy miért rakjuk bele, mert semmi értelme és ez biztos valami villanysite-os baromság. (Szerk: ehhez hozzáfűzném, hogy nem baromság, aszinkron reset-nek hívjuk, és nem használjuk általában FPGA-n belül, de létezik azért.)