systemverilog中logic变量的使用

本文介绍了SystemVerilog中的logic变量,它是对Verilog中reg类型的改进,可用于连续赋值、门驱动和模块驱动。在实现RAM建模等场景下,logic变量简化了变量类型的选择。然而,logic不允许多驱动,若需要多驱动应使用wire类型。同时,展示了如何在inout双向总线建模中正确使用类型。
摘要由CSDN通过智能技术生成

对verilog的初学者来说,线网和变量reg之间的不同点,也许是最难的。你有时得用reg而有时却得使用wire,使用来使用去,简直头晕。

而在SystemVerilog中,我们将会看到你可以在过去verilog中用reg型或是wire型的地方用logic型来代替。

实际上logic是对reg数据类型的改进,使得它除了作为一个变量之外,还可以被连续赋值、门单元和模块所驱动,显然,logic是一个更合适的名字。

举个RAM modelling的例子来说明上述问题,我们分别用Verilog和SystemVerilog来实现。

复制代码
//RAM modelling in Verilog
1 module mema (r_wb,addr,d_q);
2 input r_wb;
3 input [ 7 : 0 ] addr;
4 inout [ 7 : 0 ] d_q;
5
6 wire r_wb;
7 wire [ 7 : 0 ] addr, d_q;
8 reg [ 7 : 0 ] mem [ 0 : 255 ];
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值