【乌拉喵.教程】编写TestBench,quartus与modelsim时序仿真

简介: 【乌拉喵.教程】编写TestBench,quartus与modelsim时序仿真

科技背景_副本 公众号_副本.png

最近将多年来收集到的教学视频、国内外图书、源码等整理整合拿出来,涉及arm、Linux、python、信号完整性、FPGA、DSP、算法、stm32、单片机、制图、电子模块、kali、出版社图书等。资料目前约1.5TB+。详情请见:

https://www.bilibili.com/read/cv20701606


昨天搜了一圈,也没整会这个仿真,今天在武梦梦的指导下修改了testbench,偶然一个操作,才成功。

下面详细的说说这个过程。

假设现在已经写好了一个电路vhdl,编译也没问题了,什么都没问题了,就差仿真了。


  1. 设置testbench语言

这里使用Verilog语言,因为从网上看的,说VHDL的testbench比较难,所以这里就用Verilog,确认。


  1. 生成testbench

点击之后,quartus会自动生成以.vt为扩展名的testbench文件。

  1. 添加testbench文件到工程中


找到button.vt添加工程中,现在testbench就是这个.vt文件了。

  1. 编译工程
  2. 调用modelsim仿真


接下来就进入modelsim仿真界面了。

  1. 编辑button.vt  testbench文件


Modelsim会弹出一个界面打开button.vt界面,可以看一下

下面就要修改这个文件

首先把注释什么的删了,干干净净的就这些东西


也就这么几块。首先要把 timescale改了,后面两个数据 /前的是仿真的时间单位 /后的是精度


我们把时间单位改成 1ns 精度改为1ps


其次,initial中的代码执行一次,always中的代码会一直执行。


为了演示方便,现在我们就只生成一个clk波形。那么我们在intial中为clk赋值(必须要赋初值),在always中对clk进行翻转。这样就可以形成一个clk了。

代码写成这样之后,我们保存,关闭即可。

  1. 编译testbench


如果modelsim没有报错,那么说明上面testbench的代码没有问题

  1. 加载测试文件

通过这样,就加载了测试文件

  1. 添加pin


在弹出的串口中 ctrl+A,选中所有的pin,有的不一定是监控的端口,有的是中间量,我不知道这个怎么叫,按照逻辑分析的意思,这个东西就是pin


注意:在objects窗口中添加的pin才是最终的有效的,以前我从别的窗口添加pins,到调试的时候总是不出来波形,只有从object窗口添加的才是正确的!

点击Add wave命令后,就会打开另一个窗口,这个窗口就是最终的调试窗口了。


  1. 调试

先修改整体的调试时间,将100ps改为100ns

即将


改为



之后点击run就行了……


多点几次run,之后将图像缩小,就能看到clk的出现了

相关文章
|
安全 Linux 网络安全
Vivado 2017.04版本安装教程
Vivado 2017.04版本安装教程
1415 0
|
4月前
|
存储 测试技术 开发者
NVFP4量化技术深度解析:4位精度下实现2.3倍推理加速
本文深入解析NVIDIA推出的NVFP4量化技术,探讨其在Blackwell GPU架构下的性能优势。通过对比主流4位量化方法,分析NVFP4在精度、内存和推理吞吐量方面的表现,结合LLM-Compressor与vLLM框架展示量化与部署实践,验证其在消费级与企业级应用中的高效性与实用性。
644 15
NVFP4量化技术深度解析:4位精度下实现2.3倍推理加速
|
Python
Pandas 安装
10月更文挑战第26天
365 59
Pandas 安装
|
12月前
|
搜索推荐 物联网 PyTorch
Qwen2.5-7B-Instruct Lora 微调
本教程介绍如何基于Transformers和PEFT框架对Qwen2.5-7B-Instruct模型进行LoRA微调。
12147 34
Qwen2.5-7B-Instruct Lora 微调
|
自然语言处理
大模型在应用中面临的局限性
【7月更文挑战第25天】大模型在应用中面临的局限性
2320 3
【乌拉喵.教程】进一步学习编写TestBench(VHDL语言),quartus与modelsim时序仿真
【乌拉喵.教程】进一步学习编写TestBench(VHDL语言),quartus与modelsim时序仿真
606 0
【乌拉喵.教程】进一步学习编写TestBench(VHDL语言),quartus与modelsim时序仿真
|
异构计算
实验四 基于FPGA的数字电子钟设计(1) 基本功能的实现 quartus电路图演示
实验四 基于FPGA的数字电子钟设计(1) 基本功能的实现 quartus电路图演示
1420 0
实验四 基于FPGA的数字电子钟设计(1) 基本功能的实现 quartus电路图演示
|
编译器 开发工具 C语言
vscode安装+配置+使用+调试【保姆级教程】
vscode安装+配置+使用+调试【保姆级教程】
59281 9
|
编译器 C语言 C++
VSCode上搭建C/C++开发环境(vscode配置c/c++环境)Windows系统---保姆级教程
VSCode上搭建C/C++开发环境(vscode配置c/c++环境)Windows系统---保姆级教程
10784 0