verilog 反相器的设计与仿真

在这里插入图片描述


inv.v:

在这里插入图片描述

编译器UltraEdit


// 2021-1-15 verilog学习
// 反相器设计

`timescale 1ns/10ps  // 一个时间单位 1ns,精度是10ps

module inv(A,Y);
input A;  // 输入端口
output Y;  // 输出端口
assign Y=~A;   // 输入输出关系 ~取反
endmodule

//  testbench of inv 测试台

module inv_tb;  //  测试台没有测试端口,不用括号:inv_tb()
reg aa;    // 定义寄存器型变量 锁存功能 取名为aa
wire yy;   // 定义线性变量,值不定  取名为yy

inv inv(
.A(aa), 
.Y(yy)
);

initial begin
		aa<=0;
#10 aa<=1;  // 过10个时间单位
#10 aa<=0; 
#10 aa<=1; 
#10 $stop;  // $stop 停止
end

endmodule

8位反相器只需在 input,output 后加 [7:0]

在这里插入图片描述


仿真:

仿真器 modelsim
change 工作目录到程序文件 inv.v 所在目录
在这里插入图片描述
new library
在这里插入图片描述
编译,点击compile图标(右上),找到程序目录,点击inv.v文件,依次点击 complie,done
在这里插入图片描述
仿真,点开work,点击测试台 inv_tb,右键选择 simulate

在这里插入图片描述
打开波形观察器 wave
添加波形观察器变量在这里插入图片描述
在这里插入图片描述
restart,依次点击run,run all
在这里插入图片描述

出现波形图,红框中为全局视图

在这里插入图片描述


  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值