否
正
确
,
并
输
出
期望
结
果
和
实
际
结
果
的
差
距
测
试
程
序
代
码
仅
⽤
于
模
拟
⽽
不
能
⽤
于
综
合
(
可
以
理
解
为
,
测
试
程
序
仅仅
为
了
在
正
式
将
硬
件
转
换
成
逻
辑
门
之
前
检
测
硬
件
描
述
是
否
正
确
,
以
减
少
损
失
,
所
以
不
会
被
实
际
转
换
成
逻
辑
门
)
3.
组
合
逻
辑
位
运
算
符
位
运
算
符
对
单
位
信
号
和
多
位
总
线
进
⾏
操
作
例
如
module inv(input logic [3:0] a,
output logic [3:0] y);
assign y = ~a;
endmodule
其
中
a[3:0]
代
表
⼀个
四
位
的
总
线
。
这
⾥
最
低
有
效
位
的
序
号
最
⼩
,
称
为
⼩
端
总
线
的
字
节
顺
序
是
可
以
任
意
选
择
的
,
⽐
如
可
以
选
择
a[3:0]
,
也
可
以
选
择
a[4:1],
字
节
顺
序并
不
重
要
注
释
和
空
⽩
system Verilog
和
C
语
⾔
和
java
注
释
⼀
样
。
单
⾏
注
释
⽤
//
,
多
⾏
注
释
⽤
/*……*/
,
并
且
sv
语
⾔
对
⼤
⼩
写
也
是
敏
感
的
assign
语
句
module gates(input logic [3:0] a, b,
output logic [3:0] y1, y2, y3, y4, y5);//
分
号
不
能
忘
/*five different two-input logic gates acting on 4-bit busses*/
assign y1 = a & b; //and
assign y2 = a | b; //or
assign y3 = a ^ b; //xor
assign y4 = ~(a & b);//nand
assign y5 = ~(a | b);//nor
endmodule
assign
语
句
称
为
连
续
赋
值
语
句
,
以
⼀个
分
号
[ ; ]
结
束
。
等
号右
边
的
输
⼊
值
改
变
,
等
号
左
边
的
输
出
就
会
随
之
重
新
计
算
。
所
以
,
assign
语
句
⽤
于
描
述
组
合
逻
辑
;
缩
位
运
算
符
评论0
最新资源