Giáo trình lập trình Verilog Tiếng Việt 6
Số trang: 6
Loại file: pdf
Dung lượng: 121.48 KB
Lượt xem: 6
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Thông thường, điều này dẫn tới thỏa hiệp giữa thuận lợi cho việc lập trình và hiệu quả của chương trình (thỏa hiệp giữa "thời gian lập trình" and "và thời gian tính toán").
Nội dung trích xuất từ tài liệu:
Giáo trình lập trình Verilog Tiếng Việt 6Toùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilog toàn taïi baèng vieäc söû duïng ngoaøi nhöõng nhaùnh maëc ñònh. Chuù yù raèng choát seõ ñöôïc taïo ra neáu moät bieán khoâng ñöôïc gaùn cho caùc ñieàu kieän nhaùnh coù theå toàn taïi. Ñeå hoaøn thieän maõ coù theå ñoïc ñöôïc, duøng leänh case ñeå taïo maãu ña coäng lôùn.III. Boä coäng, tröø: Toaùn töû coäng tröø trong boä coäng tröø maø coù chieàu roäng phuï thuoäc vaøo chieàu roäg cuûa toaùn töû lôùn hôn.IV. Boä ñeäm 3 traïng thaùi: Boä ñeäm ba traïng thaùi ñöôïc suy ra neáu bieán ñöôïc gaùn theo ñieàu kieän giaù trò toång trôû cao Z duøng moät trong caùc toaùn töû: if, case,…V. Caùc linh kieän khaùc: Haàu heát caùc coång logic ñöôïc suy ra töø vieäc duøng nhöõng toaùn haïng töông öùng cuûa chuùng. Nhö moät söï löïa choïn moät coång hoaëc moät thaønh phaàn coù theå ñöôïc giaûi thích roõ raøng baèng ví duï cuï theå vaø söû duïng caùc coång cô sôû (and, or, nor, inv…) mieãn laø baèng ngoân ngöõ Verilog.GV: Nguyeãn Troïng Haûi Trang 30Toùm taét baøi giaûng TK Heä Thoáng Soá Phaàn VerilogChöông XIIMOÄT SOÁ VÍ DUÏI. Caáu truùc moät chöông trình duøng ngoân ngöõ Verilog: // Khai baùo module Module teân chöông trình (teân bieán I/O); // teân chöông trình truøng teân file.v. Input [msb:lsb] bieán; Output [msb:lsb] bieán; Reg [msb:lsb] bieán reg; Wire [msb: lsb] bieán wire; // Khai baùo khoái always, hoaëc khoái initial. … caùc leänh … EndmoduleII. Moät soá ví duï: Phaàn meàn hoã trôï: MAX+plusII 10.0 BASELINE1. Ví duï 1:a. Chöông trình tính NOR caùc bit cuûa bieán vaøo module vdcong(in,out); input[3:0] in; output out; assign out= ~|in; endmoduleGV: Nguyeãn Troïng Haûi Trang 31Toùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilogb. Moâ phoûng2. Ví duï 2:a. Chöông trình coäng hai bieán boán bit module adder (sum_out, carry_out, carry_in, ina, inb); output [3:0]sum_out; input [3:0]ina, inb; output carry_out; input carry_in; wire carry_out, carry_in; wire[3:0] sum_out, ina, inb; assign { carry_out, sum_out } = ina + inb + carry_in; EndmoduleGV: Nguyeãn Troïng Haûi Trang 32Toùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilogb. Moâ phoûng3. Ví duï 3:a. Chöông trình giaûi maõ 2 sang 4 module dec2to4 (w, en, y); input [1:0] w; input en; output[3:0] y; wire[1:0]w; reg[3:0]y; wire en; always @(w or en) begin if(en==1b1) begin case(w) 2b00: yToùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilog endcase end else yToùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilog always @(w0 or w1 or s) begin if(s==1) y = w0; else y = w1; end endmoduleb. Moâ phoûng5. Ví duï 5:a. Chöông trình doàn keânh 4 sang 1 module mux14(w0, w1, w2, w3, s, y); input w0, w1, w2, w3; input[1:0] s; output y; wire w0, w1,w2,w3; reg y;GV: Nguyeãn Troïng Haûi Trang 35
Nội dung trích xuất từ tài liệu:
Giáo trình lập trình Verilog Tiếng Việt 6Toùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilog toàn taïi baèng vieäc söû duïng ngoaøi nhöõng nhaùnh maëc ñònh. Chuù yù raèng choát seõ ñöôïc taïo ra neáu moät bieán khoâng ñöôïc gaùn cho caùc ñieàu kieän nhaùnh coù theå toàn taïi. Ñeå hoaøn thieän maõ coù theå ñoïc ñöôïc, duøng leänh case ñeå taïo maãu ña coäng lôùn.III. Boä coäng, tröø: Toaùn töû coäng tröø trong boä coäng tröø maø coù chieàu roäng phuï thuoäc vaøo chieàu roäg cuûa toaùn töû lôùn hôn.IV. Boä ñeäm 3 traïng thaùi: Boä ñeäm ba traïng thaùi ñöôïc suy ra neáu bieán ñöôïc gaùn theo ñieàu kieän giaù trò toång trôû cao Z duøng moät trong caùc toaùn töû: if, case,…V. Caùc linh kieän khaùc: Haàu heát caùc coång logic ñöôïc suy ra töø vieäc duøng nhöõng toaùn haïng töông öùng cuûa chuùng. Nhö moät söï löïa choïn moät coång hoaëc moät thaønh phaàn coù theå ñöôïc giaûi thích roõ raøng baèng ví duï cuï theå vaø söû duïng caùc coång cô sôû (and, or, nor, inv…) mieãn laø baèng ngoân ngöõ Verilog.GV: Nguyeãn Troïng Haûi Trang 30Toùm taét baøi giaûng TK Heä Thoáng Soá Phaàn VerilogChöông XIIMOÄT SOÁ VÍ DUÏI. Caáu truùc moät chöông trình duøng ngoân ngöõ Verilog: // Khai baùo module Module teân chöông trình (teân bieán I/O); // teân chöông trình truøng teân file.v. Input [msb:lsb] bieán; Output [msb:lsb] bieán; Reg [msb:lsb] bieán reg; Wire [msb: lsb] bieán wire; // Khai baùo khoái always, hoaëc khoái initial. … caùc leänh … EndmoduleII. Moät soá ví duï: Phaàn meàn hoã trôï: MAX+plusII 10.0 BASELINE1. Ví duï 1:a. Chöông trình tính NOR caùc bit cuûa bieán vaøo module vdcong(in,out); input[3:0] in; output out; assign out= ~|in; endmoduleGV: Nguyeãn Troïng Haûi Trang 31Toùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilogb. Moâ phoûng2. Ví duï 2:a. Chöông trình coäng hai bieán boán bit module adder (sum_out, carry_out, carry_in, ina, inb); output [3:0]sum_out; input [3:0]ina, inb; output carry_out; input carry_in; wire carry_out, carry_in; wire[3:0] sum_out, ina, inb; assign { carry_out, sum_out } = ina + inb + carry_in; EndmoduleGV: Nguyeãn Troïng Haûi Trang 32Toùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilogb. Moâ phoûng3. Ví duï 3:a. Chöông trình giaûi maõ 2 sang 4 module dec2to4 (w, en, y); input [1:0] w; input en; output[3:0] y; wire[1:0]w; reg[3:0]y; wire en; always @(w or en) begin if(en==1b1) begin case(w) 2b00: yToùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilog endcase end else yToùm taét baøi giaûng TK Heä Thoáng Soá Phaàn Verilog always @(w0 or w1 or s) begin if(s==1) y = w0; else y = w1; end endmoduleb. Moâ phoûng5. Ví duï 5:a. Chöông trình doàn keânh 4 sang 1 module mux14(w0, w1, w2, w3, s, y); input w0, w1, w2, w3; input[1:0] s; output y; wire w0, w1,w2,w3; reg y;GV: Nguyeãn Troïng Haûi Trang 35
Tìm kiếm theo từ khóa liên quan:
Chế tạo máy móc giáo trình khoa học công nghệ bài giảng cơ học vật liệu kết cấu chế tạo máy tự động hóa trong sản xuấtTài liệu có liên quan:
-
103 trang 322 1 0
-
Giáo trình lập trình Verilog Tiếng Việt 3
6 trang 117 0 0 -
Giáo trình lập trình Verilog Tiếng Việt 1
6 trang 44 0 0 -
Giáo trình lập trình Verilog Tiếng Việt 7
6 trang 40 0 0 -
Đồ án: Điều khiển tay máy gắp sản phẩm dùng PLC S7- 200
53 trang 38 0 0 -
giáo trình thiết kế Ô tô phần 7
14 trang 33 0 0 -
Luận văn: Tự động hóa quá trình sản xuất - ĐH Bách Khoa Hà Nội
108 trang 33 0 0 -
5 trang 32 0 0
-
giáo trình thiết kế Ô tô phần 6
13 trang 29 0 0 -
giáo trình thiết kế Ô tô phần 1
14 trang 29 0 0