modelsim仿真代码编写(具详细)

依旧是以i2c为例

基本仿真都是以信号定义->产生时钟->产生激励->模块例化

1、信号定义

这里全部统一 1、输入定义为reg型 2、输出定义为wire型

3、双向口定义为wire(必须使用三态门)(例如 assign sda = sda_out_en?sda_out:1'bz;
 assign sda_in = sda;)

2.产生时钟

时钟有多钟写法

(1)parameter T=20 //定义时钟周期

initial begin

clk = 0 ;//初始值为零

end

always #(T/2)clk = ~clk ;

如果觉得麻烦

(2)直接

always #10 clk=~clk

这是我平时用的最多的写法

3、产生激励(复位定义)

激励根据自己需求写 #代表延时的

例如

initial begin

rst =1 ;

# T*20 //延时20个周期

rst =0 ;

#T*100 //再延时100个周期

end

(这里只例举了一种最简单的写法,特殊激励总共还有好多,如果需要可以私信我扣扣1316256023)

4.例化

例化都是一样的,就不在赘述

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值