挺早以前就刷了裡面一些題,結果不知道為啥登錄賬號刷題記錄又沒了,強迫症又讓我不想從中間開始刷。既然如此,那就從頭開始刷吧。QWQ Step one 第一題,沒啥好說的。 module top_module( output one ); // Insert your code here assign ...
挺早以前就刷了裡面一些題,結果不知道為啥登錄賬號刷題記錄又沒了,強迫症又讓我不想從中間開始刷。既然如此,那就從頭開始刷吧。QWQ
Step one
第一題,沒啥好說的。
module top_module( output one ); // Insert your code here assign one = 1'b1; endmodule
Zero
同樣沒啥好說的。
module top_module( output zero );// Module body starts after semicolon assign zero = 1'b0; endmodule
Wire
assign賦值。
module top_module( input in, output out ); assign out = in; endmodule
Wire4
註意input和output的預設類型為wire。
module top_module( input a,b,c, output w,x,y,z ); assign w = a; assign x = b; assign y = b; assign z = c; endmodule
Notgate
一個反向,註意verilog有按位取反:~
和 邏輯反:!。
module top_module( input in, output out ); assign out = ~in; endmodule
andgate
與門同樣有按位與:&和邏輯與:&&。
module top_module( input a, input b, output out ); assign out = a & b; endmodule
Norgate
或非門,或門同樣有按位或:|和邏輯或:||。
module top_module( input a, input b, output out ); assign out = ~(a|b); endmodule
Xnorgate
同或門,或者叫異或非門,可以先異或再取反
module top_module( input a, input b, output out ); assign out = ~(a^b); endmodule
Wire decl
多了幾個assign,也沒啥好說的。
`default_nettype none module top_module( input a, input b, input c, input d, output out, output out_n ); wire e,f; assign e = a & b; assign f = c & d; assign out = e | f; assign out_n = ~out; endmodule
7458
同樣是一堆簡單的門電路。
module top_module ( input p1a, p1b, p1c, p1d, p1e, p1f, output p1y, input p2a, p2b, p2c, p2d, output p2y ); assign p1y = (p1a & p1b & p1c)|(p1d & p1e & p1f); assign p2y = (p2a & p2b)|(p2c & p2d); endmodule
今天的題都比較簡單,也沒刷多久,就當放鬆了。