欢迎来到天天文库
浏览记录
ID:38603301
大小:428.50 KB
页数:23页
时间:2019-06-16
《《SOPC实验讲》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验一ModelSim与QuartusII的结合实验1、实验目的(1)学习设置从QuartusII中运行ModelSim。(2)学习使用ModelSim进行功能仿真。(3)熟悉ModelSim软件。2、实验内容本实验通过设计一个4位计数器学习设置从QuartusII中运行ModelSim,学习使用ModelSim进行功能仿真和熟ModelSim软件及VHDL硬件描述语言。2、实验内容“count4.v”的源代码如下所示modulecount4(clk,reset,out);//4位计数器模块inputclk,reset;output[3:0]out;reg[3:0]out;always@
2、(posedgeclk)beginif(reset)out<=0;elseout<=out+1;endendmodule2、实验内容ModelSim仿真用到的测试文件“count_tp.v”源码为`timescale1ns/1ns//定义时延单位1ns和时延精度为1ns(即精确到1ns)modulecount_tp;//测试模块regclk,reset;//输入激励信号定义为reg型wire[3:0]out;//输出信号定义为wire型parameterDELY=100;count4mycount(.clk(clk),.reset(reset),.out(out));//调用测试对象cou
3、nt4always#(DELY/2)clk=~clk;//产生时钟波形initial//激励波形定义beginclk=0;reset=0;#DELYreset=1;#DELYreset=0;#(DELY*20)$finish;endinitial$monitor($time,,,"clk=%dreset=%dout=%d",clk,reset,out);//结果显示endmodule3、实验步骤(1)打开QuartusII软件,新建工程,这里选择“EDAsimulationtool”中的“ModelSim(Verilog)”项和下面的“Runthistoolautomaticallyaft
4、ercompilation”,最后完成工程建立。(2)在该工程文件下新建顶层设计文件“count4.v”的源代码(3)为ModelSim仿真设置参数,如图ModelSim仿真参数设置选择测试文件3、实验步骤(4)进行编译,并会自动调用ModelSim进行仿真。选择Tools
5、CompilerTool,开始编译,我们会发现QuartusII状态栏多出两项“EDANetlistWriter”和“EDASimulationTool”。仿真波形图4、实验要求(1)记录调试与验证的结果(2)记录实验过程中出现的问题及解决办法(3)实验结束,保持实验室整洁实验二LED实验1、实验目的(1)学习使用SO
6、PCBuilder定制一个最小NiosII硬件系统的设计。(2)学习使用NiosIIIDE软件完成应用程序开发。(3)掌握从NiosIIIDE中进行硬件调试与验证。(4)掌握QuartusII、SOPCBuilder、NiosIIIDE和ModelSim四种工具的配合使用。2、实验内容(1)根据开发板资源,使用SOPCBuilder定制一个最小NiosII系统(推荐含“cpu、on_chip_ram、pio核”),完成硬件配置,从QuartusII分配管脚,编译、下载,完成NiosII硬件系统的开发。(2)运行NiosIIIDE,设计一个循环点亮8个LED的应用程序。(3)最后在NiosI
7、IIDE上进行硬件调试与验证,观察实验结果3、实验步骤QuartusIISOPCBuilderNiosIIIDE4、思考题(1)怎样改变LED灯点亮的顺序和时间?(2)假如NiosII硬件系统中添加一个UART核,应用程序如何实现对串口的访问?5、思考题提示#include"system.h"#include"altera_avalon_pio_regs.h"#include"alt_types.h"intmain(void)__attribute__((weak,alias("alt_main")));intalt_main(void){alt_u8led=0x2;alt_u8
8、dir=0;volatileintpio_led_data=0;//添加的代码,对应pio_led输出的8位数据volatileinti;while(1){if(led&0x81){dir=(dir^0x1);}if(dir){led=led>>1;}else{led=led<<1;}pio_led_data=~led;//添加的代码,本开发板LED低电平亮,实现逐个点亮功能IOWR_ALTE
此文档下载收益归作者所有