这里我们使用一个波形发生器作为例子,来说明如何使用Modelsim对Quartus II生成的IP Core和相应的HDL文件进行功能仿真和时序仿真。这个例子里面使用到了由Quartus II生成的一个片上ROM存储单元。这种存储单元和RAM一样,都是基本的FPGA片上存储单元,在以后的设计里面会经常使用到。
功能仿真
(1)在Quartus II中设置第三方仿真工具,选择“Assignments-Settings-EDA Tool Settings-Simulation”,选择“ModelSim-Verilog”。如图1所示。
图1 EDA工具设置
(2)编译工程。编译带有IP Core的工程文件。
(3)编译完成后会在工程目录下生成“simulation-modelsim”的目录,如图2所示。其中包含了3个文件:“.vo”是仿真网表文件,可以用来代替设计文件;“.xrf”是Quartus编译生成的信息文件;“.sdo”是工程延时信息。
图2 编译生成文件(4)加入仿真库文件。
仿真库的路径为“C:\altera\quartus50\eda\sim_lib”,包含了如下3个仿真库文件。
· 220model.v:带有用户原语类型的Quartus自带的IP核的库文件。
· altera_mf.v:Quartus自带的IP核的库文件。
· cyclone_atoms.v:相应系列的器件库。
在本例中需要添加altera_mf.v,cyclone_atoms.v两个库文件。
(5)将测试文件粘贴到刚才生成的目录中,如图3所示。
图3 添加测试文件
(7)打开modelsim。
(8)创建工程并添加源文件,如图4所示。
图4 为工程添加源文件(9)编译工程。结合库文件一起进行编译、如图5和6所示。
图5 全部编译前
图6 全部编译后
(10)修改wave.vo文件。将文件中的延时信息注释掉,即:
//initial $sdf_annotate("WAVE_v.sdo");
(11)重新编译wave.vo文件。
时序仿真
(1)将功能仿真第(10)步中对wave.vo文件做的注释改回来,重新进行编译。
(2)重新打开开始仿真对话框,选择顶层模块。
(3)选择“SDF”选项卡。
(4)加入“.sdo”文件,将两个SDF Options都选中。
(5)和功能仿真一样,为波形窗口添加信号,开始进行仿真。
(6)通过波形图,查看时序仿真的延时。
关键字:FPGA 仿真 时序仿真
编辑:探路者 引用地址:FPGA验证之功能仿真和时序仿真的区别与方法
推荐阅读最新更新时间:2023-10-12 22:35
一种基于FPGA的语音密码锁系统的研究与设计
引言
电子密码锁系统主要由电子锁体、电子密匙等部分组成,一把电子密匙里能存放多组开锁密码,用户在使用过程中能够随时修改开锁密码,更新或配制钥匙里开锁密码。一把电子锁可配制多把钥匙。语音方面的广泛应用,使得具有语音播放的电子密码锁使用起来更加方便。语音密码锁的体积小、保密性能好、使用方便,是用在保险箱、电话或是房门上不可少的部分。
本文介绍的基于FPGA的语音密码锁电路具有显示接口,显示时可以是明文也可以是密文星号。由于FPGA具有ISP功能,当用户需要更改时,如增加口令位数和更改口令权限管理时,只需更改FPGA中的控制和接口电路,利用EDA工具将更新后的设计下载到FPGA中即可,无需更改外部电路,这就大大
[嵌入式]
基于FPGA的IEEE-1394b双向数据传输系统设计
随着IEEE Std 1394-1995技术的高速发展,IEEE 1394已经成为众多电子设备基本的外部接口。然而,要进一步扩展它的适用领域,就必须克服其接口被限制工作在较短距离以及不适用于较高数据传输率的缺陷。IEEE Std 1394b-2002作为其修订版本支持800 Mb·s-1传输速率,且中继距离长达100m。它将原来的DS(Data-Strobe)编码方式改进为8B/10B编码方式,这对于1394性能的改进起着决定性作用。同时,1394b是向下兼容的,也就是说同一个电路既可以选择使用DS编码也可以选择使用8B/10B编码。
现在符合1394b标准的链路层和物理层控制芯片都遵循1394 OHCI(开放式主机控
[嵌入式]
利用视频套件加速FPGA上的视频开发
随着下一代视频压缩标准问世,行业从基本视频处理向更复杂的集成处理解决方案转移,这使得系统的要求超越了独立DSP力所能及的视频性能。FPGA以不到30美元的价格提供20GMACs以上的DSP性能,从而为成本敏感型军事、汽车、医疗、消费、工业和安全应用填补了这一空白。只有FPGA能够为整套端对端视频解决方案提供逻辑、嵌入式处理、OS支持和驱动器。
妨碍开发人员将FPGA用于视频应用的因素并非他们缺乏对FPGA性能优势的了解,而是缺乏使用其设计流程的经验,对于那些习惯于用C语言编程的传统DSP程序开发人员来说尤为如此。
开发人员可以利用FPGA的灵活性来配置针对特定应用而优化的硬件架构,以此发挥该器件的性能优势。
[嵌入式]
51proteus仿真:adc0804实现模数转换
系统采集到的信号,几乎都是模拟信号。学习单片机的模拟数字ad转换是必须的。 这个仿真就是利用adc0804把模拟电压转换为数字信号,然后再输出到数码管。 由于最大电压不超过5v,所以数码管显示只有个位,和小数点后面,我只显示小数点后3位,没有四舍五入。 仿真电路图: c程序: #include reg52.h #include intrins.h #define uchar unsigned char #define uint unsigned int sbit duan=P3^0; //u1 sbit wei=P3^1; sbit ADC_CS=P3^2; sbit ADC_RD=P3^3; sbit ADC_WR
[单片机]
Silicon Witchery发布集成Nordic SoC与Lattice FPGA的开发板
瑞典嵌入式模块供应商 Silicon Witchery 发布了一款非常紧凑的模块S1,旨在将 Nordic Semi nRF52840 连接到空间最受限的项目中,该模块还集成了 Lattice iCE40 现场可编程门阵列 (FPGA) . “专为最小边缘设备上的高效人工智能而设计。”Silicon Witchery 声称其结合了微处理和 FPGA 设备。 “S1 旨在简化您的设计并为您节省数月的 RF HDI 布局。S1 是四个关键组件的结合,这对于开发微型电池供电产品至关重要。它满足应用要求的苛刻算法,同时消耗尽可能少的功耗。” 尽管 S1 模块尺寸仅为 11×6 毫米(约 0.43×0.24 英寸),但它包含了四个
[嵌入式]
基于模糊控制的迟早门同步器及其FPGA实现
摘要:介绍了迟早门同步器的基本工作原理,提出了在迟早门同步器中引入模糊逻辑控制获得较小相位抖动的方法,给出了迟早门同步器在FPGA上的具体实现。 关键词:符号同步 模糊控制 FPGA 在数字通信系统中,必须以符号速率对解调器的输出进行周期性地采样。为此,接收器需要一个采样时钟信号,这个时钟信号的频率和符号速率相等,相位则必须保证采样时刻是最佳的。在接收器中获得这个采样时钟的过程被称为符号同步或符号定时恢复。迟早门(Early-late Gate)是实现符号同步的重要方法之一,广泛运用于各种数字通信系统中。本文提出的基于模糊控制的迟早门与传统的迟早门相比,具有同步速度快、过冲小、相位抖动小等优点。在其FPGA实现中,采用了离线计算实时
[半导体设计/制造]
基于CPLD的雷达仿真信号设计实现
引言
随着新一代作战飞机大量装备现役,机载雷达设备的维修任务越来越繁重,现代化的仿真测试系统成为重要的维修设备。雷达信号的仿真又是测试系统中必不可少的。但采用函数/任意波发生器组成测试系统,不仅增加系统成本,而且还给系统软件设计增加不必要的负担。为此,提出了一种基于CPLD的雷达仿真信号的实现方案,它能为机载雷达测试系统提供所需的多种典型的重频脉冲及制导信号。
雷达仿真信号发生器的结构
雷达仿真信号发生器主要由输入输出控制和产生仿真信号的CPLD芯片两部分组成。输入输出控制信号是利用测试系统的工控机通过数字I/O卡来产生,当工控机通过数字I/O卡输出有效信号时,发生器将会输出相应的脉冲信号。雷达仿真信号发生器的结构如图
[半导体设计/制造]