1.设计不用的语法:
1..initial[设计不用,仿真时使用]
2.task\funchon[设计不用,仿真时很少用]
3.for\while\forever[设计不用,仿真很少用]
4.integer[设计不用]
5模块内部不能有[X态,Z态,内部不能有三态接口]
6.casex\casez[设计不用,仿真很少用]
7.force\wait\fork[设计不用,仿真很少用]
8.#5[设计不用,仿真时使用]
2.设计使用的语法:
1.reg\wire .parameter
2.Assign[建议改名时使用]always
3.只允许使用if else的case两种条件语句
4.算术运算符[+. -. . /. %.]
5.赋值运算符[=, <=],时序逻辑用<=, 组合逻辑用=,其他情况不存在
6.关系运算符[&&, ||, !,][为避免歧义,逻辑运算符两边必须为1bit信号
7.位运算符[~, |, ^, &]
8移位运算符[<<, >>]
9.拼接运算符{}
1.电路设计的3种结构:
(1.组合逻辑:
always@()begin
语句
End
(2.时序逻辑:
a. 同步复位的时序电路:
always@(pposedge clk)begin
If (rst_n==1’b=0)begin
语句
Else begin
语句
End
End
b.异步复位的时序电路:
always@(posedge clk or negedge rst_n)begin
If(rst_n==1’b0)begin
语句
Else begin
语句
End
End
备注:一个always只产生一个信号,一个信号只产生一个always.