使用自由软件Icarus Verilog Simulator进行仿真

Icarus Verilog Simulator(http://iverilog.icarus.com/home)使用iverilog作为源代码编译器,编译生成vvp程序文本,使用vvp作为运行时引擎,支持vcd波形Dump,支持lxt格式波形,可以使用gtkwave来Debug波形。

各大Linux发行版和Windows系统均可以直接安装iverilog/gtkwave,iverilog/vvp/gtkwave参数可以通过man *查看。

一个简单的Testbench示例:

 1 //***********************************************************************************************
 2 //  File               : tb_top.sv
 3 //  Author          : Lyu Yang
 4 //  Date             : 2018-12-09
 5 //  Description   : Simple Testbench using iVerilog
 6 //***********************************************************************************************
 7 `timescale 1ns/1ns
 8 module tb_top;
 9
10 logic            clk;
11 logic    [3:0]    cnt;
12
13 initial forever #5 clk = ~clk;
14
15 initial begin
16     clk = 0;
17     cnt = 0;
18     repeat(10)
19     begin
20         @(posedge clk);
21         cnt = cnt + 1;
22         $display("@%4t ns: cnt = 0x%-04X", $time, cnt);
23     end
24     #100;
25     $finish;
26 end
27
28 initial begin
29     //$dumpfile("tb_top.vcd");
30     $dumpfile("tb_top.lxt");
31     $dumpvars();
32 end
33
34 endmodule

使用上述工具集的Makefile示例:

 1 #***********************************************************************************************
 2 #   File              : Makefile
 3 #   Author         : Lyu Yang
 4 #   Date            : 2018-12-09
 5 #   Description  : Makefile for iVerilog
 6 #***********************************************************************************************
 7
 8 all: cmp vvp lxt
 9
10 cmp:
11     iverilog -g2005-sv tb_top.sv -o tb_top.vvp
12
13 vvp:
14     vvp tb_top.vvp -fst -sdf-verbose -lxt2
15
16 lxt:
17     gtkwave tb_top.lxt &
18
19 clean:
20     @rm -rf tb_top.vvp tb_top.lxt

波形窗口:

原文地址:https://www.cnblogs.com/lyuyangly/p/10090712.html

时间: 2024-11-05 15:17:45

使用自由软件Icarus Verilog Simulator进行仿真的相关文章

Icarus Verilog和GTKwave使用简析

Icarus Verilog和GTKwave使用简析 来源 http://blog.csdn.net/husipeng86/article/details/60469543 本文测试文件在windows10和windows7上测试通过,其它平台请参考官方文档 下载安装 由于Icarus Verilog中已经包含了GTKWave所以直接从http://bleyer.org/icarus/下载安装,这里提供的为Windows版,我下载的为当前时间最新版:iverilog-10.1.1-x64_set

CRC校验码的verilog实现与仿真结果

循环冗余校验码(CRC)的基本原理是: 将被处理的报文比特序列当做一个二进制多项式A(x)的系数,(任意一个由二进制位串组成的代码都可以和一个系数仅为'0'和'1'取值的多项式一一对应.例如:代码1010111对应的多项式为x6+x4+x2+x+1,而多项式为x5+x3+x2+x+1对应的代码101111),该系数乘以2^n(n为生成多项式g(x)中x的最高次幂)以后再除以发送方和接收方事先约定好的生成多项式g(x)后,求得的余数P(x)就是CRC校验码,把它副到原始的报文A(x)后面形成新的报

Verilog篇(三)仿真原理

首先引入一个例子: `timescale  1ns/100ps module   TB;                                                                                       module  INV_DFF(Clock, Reset_n, DataIn, DataOut); reg Ck, Rst_n, Din;                                                  

Chisel实验笔记(二)

在上一篇<Chisel实验笔记(一)>中,我们的到了对应的verilog文件,本文将采用Icarus Verilog + GtkWave进行仿真验证. 实验平台还是Ubuntu14.04(64位) 1.安装Icarus Verilog-0.9.7 首先输入如下命令: sudo apt-get install gperf sudo apt-get install flex sudo apt-get install bison sudo apt-get install build-essentia

全平台轻量开源verilog仿真工具iverilog+GTKWave使用教程

前言 如果你只是想检查Verilog文件的语法是否有错误,然后进行一些基本的时序仿真,那么Icarus Verilog 就是一个不错的选择.相比于各大FPGA厂商的IDE几个G的大小,Icarus Verilog 显得极其小巧,最新版安装包大小仅有17MB,支持全平台:Windows+Linux+MacOS,并且源代码开源.本文将介绍如何使用Icarus Verilog来进行verilog文件的编译和仿真. 关于 Icarus Verilog Icarus Verilog是一个轻量.免费.开源的

VCS课时1:仿真事件队列

1. 仿真事件队列 VCS仿真工具怎么处理交给他的代码,VCS支持Verilog.SV.VHDL.C语言 PPT1 CPU的环境的基于指令的,硬件电路和软件的不同,并发执行.怎么通过软件模拟硬件的并发性 IEEE1364: Verilog语言的仿真基于分层的事件队列 执行事件的队列 仿真时间的计算 Verilog仿真器先从没有延迟的事件开始,执行他们,然后把时间设成0,然后按照时间循序一次执行各个事件 Verilog语言规范没有规定当多个事件被安排在同一个时刻来 调度时,应该执行那个 只要在同一

ModelSim仿真入门 精讲

ModelSim仿真入门之一:软件介绍 编写这个教程之前,为了让不同水平阶段的人都能阅读,我尽量做到了零基础入门这个目标,所有的操作步骤都经过缜密的思考,做到了详细再详细的程度. 如果您是FPGA开发方面的初学者,那么这个教程一定能够帮助你在仿真技术上越过新人的台阶:如果您是FPGA开发的老手,这篇文档也并非对您没有帮助,您可以把教程发给其他刚入门的同事,免去您亲自上阵指导的麻烦,把主要的精力放在更有价值的地方. 一.FPGA设计仿真验证简介 严格来讲,FPGA设计验证包括功能仿真.时序仿真和电

MDK stm32 仿真

直接选择simulator,仿真时报错 *** error 65: access violation at 0x40021000 : no 'read' permission 修改系统配置,原配置如下 CPU DLL默认为SARMCM3.DLL,经查找Keil的安装目录下没有SARMCM4.DLL的文件,基本判定目前暂不支持…………,白忙活了…… 麻烦可能有用的方法: http://www.mesnet.com.cn/fileup/HTML/20131007.shtml

汉澳sinox平台的大量CAD制图、PCB电路板、IC集成电路、HDL硬件描述语言、电路仿真和元素分析等设计软件一览表

汉澳sinox平台的大量CAD制图.PCB电路板.IC集成电路.HDL硬件描述语言.电路仿真和元素分析等设计软件一览表,让你大开眼界. 最近研究在sinox运行windows版的protel,powerpcb,autucad,觉得很麻烦.转念一想,sinox下面其实也有很多辅助设计软件可用,可是大家并不知道. 于是花了不少时间逐个研究,终于发现sinox下面有很多功能强大的2d,3d CAD制图软件,pcb电路板. IC集成电路设计软件,以及电子信号仿真模拟软件. 如此也能做到,为何要去使用盗版