Reg khác YӟL Wire QKѭ WKӃ nào?module RegAndWireclk, reset, inA, inB, wireOut1, wireOut2, regOut1, regOut2; assign wireOut1 = inA + inB; assign testWire = inA; assign wireOut2 = testWire
Trang 17KLӃW NӃ IC trên FPGA (final)
(Field-Programmable Gate Array )
ĈһQJ Bá KҳF 7ULӅX
*LҧQJ viên Khoa CNTT 7UѭӡQJ Ĉ+%.Ĉj 1ҹQJ
Trang 2Reg khác YӟL Wire QKѭ WKӃ nào?
module RegAndWire(clk, reset, inA, inB, wireOut1, wireOut2, regOut1, regOut2);
input clk, reset;
input [3:0] inA, inB;
output [3:0] wireOut1, wireOut2, regOut1, regOut2;
reg [3:0] regOut1, regOut2;
wire [3:0] testWire;
reg [3:0] testReg;
assign wireOut1 = inA + inB;
assign testWire = inA;
assign wireOut2 = testWire + inB;
always @(posedge clk) begin
regOut1 <= inA + inB;
testReg <= inA;
regOut2 <= testReg + inB;
end
Trang 3Reg khác YӟL Wire QKѭ WKӃ nào?
module RegAndWire(clk, reset, inA, inB, wireOut1, wireOut2, regOut1, regOut2);
input clk, reset;
input [3:0] inA, inB;
output [3:0] wireOut1, wireOut2, regOut1, regOut2;
reg [3:0] regOut1, regOut2;
wire [3:0] testWire;
reg [3:0] testReg;
Trang 4Reg khác YӟL Wire QKѭ WKӃ nào?
module RegAndWire(clk, reset, inA, inB, wireOut1, wireOut2, regOut1, regOut2);
assign wireOut1 = inA + inB;
assign testWire = inA;
assign wireOut2 = testWire + inB;
always @(posedge clk) begin
regOut1 <= inA + inB;
testReg <= inA;
regOut2 <= testReg + inB;
end endmodule
Trang 5 wireOut1 và wireOut2 cho NӃW TXҧ JLӕQJ nhau
Trang 6 wireOut1 và wireOut2 có input JLӕQJ nhau,
output JLӕQJ nhau
Trang 7Reg khác YӟL Wire QKѭ WKӃ nào?
Trang 9 %ҧQ báo cáo YLӃW EҵQJ Word, JӱL theo email
và in ra PӝW EҧQ QӝS WUӵF WLӃS
7KӡL gian: WҩW Fҧ QӝS vào FKLӅX WKӭ 4 ngày
6/5/2009 ( QӃX có gì thay ÿәL VӁ thông báo sau)
Trang 101 7KLӃW NӃ PҥFK nhân ÿѭӧF FҩX WҥR EӣL ít FәQJ
logic QKҩW %LӃW UҵQJ khi Vӱ GөQJ phép nhân trong Verilog thì 8b x 8b KӃW 368 FәQJ, 16b x 16b KӃW
1632 FәQJ (Nhóm 1 QJѭӡL)
2 7KLӃW NӃ PӝW thanh RAM (có WKӇ ÿӑF, ghi Gӳ OLӋX)
YӟL dung OѭӧQJ tùy FKӑQ (Nhóm 1 QJѭӡL)
3 7KLӃW NӃ PӝW CPU ÿѫQ JLҧQ, Vӱ GөQJ RAM làm
Eӝ QKӟ FKӭD OӋQK và NӃW TXҧ.
4 7ӵ do 7KLӃW NӃ GӵD trên tài OLӋX tham NKҧR KRһF
Wӵ suy QJKƭ 1Kӟ ghi rõ tên tài OLӋX tham NKҧR,
[XҩW [ӭ và PҥFK ÿy không trùng OһS YӟL QKӳQJ PҥFK ÿѫQ JLҧQ ÿm trình bày trong bài JLҧQJ
ĈӅ bài
Trang 11 Sau PӛL clock giá WUӏ WăQJ lên 1
=> 0ҥFK ÿӃP ÿѫQ JLҧQ QKҩW bao JӗP PӝW
D Flip-flop và PҥFK FӝQJ 1.
Trang 13 Là counter FKӍ WKӵF KLӋQ YLӋF ÿӃP khi có tín
KLӋX cho phép (enable)
Trang 14&KѭѫQJ trình
module counter2(clk, reset, enable, counter);
input clk, reset, enable;
Trang 15SG1
S G 2 S G 3
S G 6 S G 5
Trang 171 7ҥR PC (program counter), YӟL ÿӏD FKӍ cao
Trang 18endmodule
Trang 20endfunction endmodule
Trang 21end end
Trang 23.ӃW TXҧ
Trang 25 Click FKXӝW trái vào FKӳ 887ӣPHQXbên
trái ta VӁ WKҩ\ ÿѭӧF 2 tín KLӋX WҥP là addr
và instData
3KѭѫQJpháp xem tín KLӋX bên trong
Trang 26 1KҩS FKXӝW trái vào tín KLӋX ӣ{Name và
kéo WKҧ vào ô Messages; UӗL EҩP nút
EҩP nút run ta VӁ xem ÿѭӧF tín KLӋX ÿy.
3KѭѫQJpháp xem tín KLӋX bên trong
Trang 27 Click FKXӝW vào GҩX + bên FҥQK UUT VӁ
KLӋQ ra các module QKӓ; ta có WKӇ xem giá WUӏ các tín KLӋX này QKѭ SKѭѫQJ pháp trên
3KѭѫQJpháp xem tín KLӋX bên trong