欢迎来到天天文库
浏览记录
ID:52471692
大小:9.06 MB
页数:43页
时间:2020-03-27
《socp_实验5 计数器地sopc设计.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、SOPC设计实验五基于DE2平台的计数器的SOPC系统设计用SOPC系统在DE2平台上实现一个计数器。先在DE2平台上建立SOPC系统的硬件,这个系统包括一个NIosII/s嵌入式处理器、存储器、一个JTAGUART及一个定时器,一个ID模块。另外,我们将加入一个自定义组件,实现对DE2平台上七段数码管的控制。-----硬件设计-----1.建立工程启动QuartusII软件,用New>NewProjectWizard…菜单在QuartusII中新建一个工程图1QuartusII启动界面2.建立顶层设计文件建立工程之后,需要为工程建立一个顶层设计文件,这个设计文件的名称应该
2、与工程的名称完全一致,设计文件可以是QuartusII允许的各种设计输入格式的文件,如VerilogHDL、VHDL、AHDL及原理图设计文件等。在本例中使用原理图设计文件。用File>New菜单建立一个新文件,选择BlockDiagram/SchematicFile文件,文件名称与工程名称保持一致,保存新建的文件。1课程实验示例3.用SOPCBuilder建立一个新的SOPC硬件系统单击工具按钮或者是Tool>SOPCBuilder菜单启动SOPCBuilder。如图所示,输入新系统的名称为count_s_sopc,当然也可以输入其他名称,但是应该注意,所有的名称中都不能
3、出现空格。TargetHDL选项可以选择Verilog,也可以选择VHDL,这里选择Verilog。按OK按钮,进入到SOPCBuilder的主界面。2SOPC设计4.向系统中添加NiosII处理器在SOPCBuilder左侧的组件列表中,选择NiosIIProcessor,,按鼠标右键,在弹出的菜单中选择AddNewNiosIIProcessor,显示如图所示的NiosII处理器的配置界面。选择NiosII/s作为本设计的处理器,从界面上可以看到,NiosII/s占3课程实验示例用约1200~1400个逻辑单元,2个M4KRAM块。由于可以添加指令缓存,缓存需要占用额外的
4、M4KRAM块,因此NiosII/s比NiosII/e相比,增加了指令缓存、分支预测、硬件乘法器及硬件除法器。NiosII/s的最好性能可达25MIPS.按下Next按钮,设置处理器的指令缓存和紧密耦合指令存储器,如图18所示,选择指令缓存为4K字节,不使用紧密耦合指令存储器。按下Next按钮,设置JTAG调试模块,JTAG调试模块分为四个级别,每个级别的功能不同,占用的逻辑资源也不相同,在本设计中选择占用逻辑资源最少的级别Level1,如图21所示按下Next按钮可以添加自定义指令,在本例中不添加自定义指令,按Finish按钮结束NiosII控制器的设置。4SOPC设计5
5、课程实验示例6SOPC设计7课程实验示例8SOPC设计9课程实验示例10SOPC设计11课程实验示例12SOPC设计13课程实验示例5.添加片上存储器在SOPCBuilder主界面左侧的组件列表Memory组中,选中On-ChipMemory(RAMorROM),按鼠标右键,在弹出的菜单中选择AddNewOn-ChipMemory(RAMorROM),显示如图所示的片上存储器的配置界面。选择存储类型为RAM,存储器宽度为32位,总内存尺寸为40K字节。单击Finish按钮完成片上存储器的配置。14SOPC设计15课程实验示例6.添加JTAGUART在SOPCBuilder主
6、界面左侧的组件列表中,选择JTAGUART,按鼠标右键,在弹出的菜单中选择AddNewJTAGUART,显示如图所示的JTAGUART配置界面。按照默认设置,配置不作改变,单击Finish按钮完成JTAGUART的设置。16SOPC设计17课程实验示例7.添加定时器在SOPCBuilder主界面左侧组件列表中选中IntervalTimer,按鼠标右键,在弹出的菜单中选择AddNewIntervalTime,显示如图所示的定时器配置界面。按照默认的设置。配置不作改变,即可生成一个初始周期为1ms的定时器,单击Finish按钮完成定时器的设置。18SOPC设计8.添加自定义组件
7、七段数码管控制器先在QuartusII中建立两个Verilog文件,作为七段数码管显示驱动的控制器,一个是SEG7_LUT.V,如代码代码1所示,另一个是SEG7_LUT_8.V,代码如代码2所示。SEG7_LUT.V是一个查找表,完成七段码显示的译码。当输入iDIG在0x0~0xF之间变化时,输出oSEG的七段码也发生相应的变化,并在数码管上显示iDIG的值。SEG7_LUT_8.V,对SEG7_LUT.V进行了8次例化,分别对应于七段数码管HEX0~HEX7。在SEG7_LUT_8.V中,对输入/输出信号的定义
此文档下载收益归作者所有