EDA技术——SOPC设计“hello-world”(共13页).doc

上传人:飞****2 文档编号:13850434 上传时间:2022-05-01 格式:DOC 页数:13 大小:720KB
返回 下载 相关 举报
EDA技术——SOPC设计“hello-world”(共13页).doc_第1页
第1页 / 共13页
EDA技术——SOPC设计“hello-world”(共13页).doc_第2页
第2页 / 共13页
点击查看更多>>
资源描述

《EDA技术——SOPC设计“hello-world”(共13页).doc》由会员分享,可在线阅读,更多相关《EDA技术——SOPC设计“hello-world”(共13页).doc(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上昆明理工大学信息工程与自动化学院学生实验报告( 201201学年 第 学期 )课程名称:EDA技术 开课实验室: 年 月 日年级、专业、班学号姓名成绩实验项目名称 SOPC设计“hello world”实验指导教师教师评语 教师签名: 年 月 日一、实验目的通过本实验具体学习SOPC 开发流程。二、实验设备1、 带有windows 操作系统,quartusII,niosII 软件的PC 机台。2、 FPGA 实验箱及电源线,下载线。三、实验要求熟悉SOPC 从定制cpu 到nios 软核内程序编写的整个流程。四 实验原理利用QuartusII 中的SOPCbuilde

2、r 来定制cpu,然后配合niosII,来实现一个完整的嵌入式系统功能,这是不同于FPGA 的开发方式。五、实验步骤1、 按照前面实验在QuartusII中建立工程,在TOOLs菜单中选择SOPC Builder,如图 3.1。图3.1 建立工程 新工程名命名为SOPC。 建完这个工程后,首先建一个原理图文件。 File-new-Block Diagram/Schematic File,通过此操作建好一个原理图文件,如图3.2所示。图3.2 建立原理图文件2、 定制CPU,参照上图,有一个图标,点击它打开SOPC builder,打开后,在弹出的界面system name后填写名字,这里写的是

3、cpu,自己可以起其他名字,然后点ok,如图 3.3。图 3.3 SOPC builder 界面1) 构建处理器模块:处理器就是用来做解释程序,运算等操作,图中左栏可以看到,Nios II Processer选项,双击后弹出处理器的属性选项框,我们自己设置参数,来定制所需的处理器,如图 3.4。图 3.4 处理器属性框 这里为我们提供了三种类型的CPU,Nios II/e 占用资源最少600-800LEs,功能也最简单,速度最慢。 Nios II/s 占资源比前者多一些,功能也多了,速度也快一些。 Nios II/f 占资源最多,功能也最多,速度就快。 选择的时候要根据你的需求和你的芯片资源来

4、决定。在这里,我们选择Nios II/e,功能和速度都可以得到满足。 其他的选用默认选项,点击finish, cpu模块就出现在主框区中了,如图3.5。图 3.5 定好的处理器2) 定制on-chip memory:它是用来存储程序的,它的容量比较小,因为我们的“hello world”程序也比较小,所以只要on-chip memory就好了,如果以后写的程序比较复杂,on-chip memory装不下了,我们就要用sdram代替,我们先点击图中菜单中选项,如图 3.6。 图 3.6 on-chip memory 选项位置 点击后像处理器一样,我们先对其属性进行设置,如图 3.7。 图 3.7

5、 on-chip memory 属性框 这里改下内存大小,如图中所示,改好后点finish,如果报错,重新分配一下地址。在上面菜单栏中,选system-auto-assign base addresses,点击它,就自动分好了,我们的memory定制就完成了,如图 3.8。 图 3.8 主框区 观察上图,主框区又多了一项。3) 定制jtag-uart:这是用来调试程序的,通过它,我们的“hello world”就能打在console栏里了,它的位置如图 3.9。 图 3.9 jtag-uart 位置 属性框中都用默认的,点finish,定制好后,看图 3.10。 图 3.10 主框区4) 配置

6、CPU:还有一项重要的工作就是配置cpu memory,点击上图中主框区的cpu_0 后,出现如图 3.11。 图 3.11 memory 配置界面 下面的Reset Vector 是复位后的Memory 类型。 Exception Vector 是异常情况时的Memory 类型。 因为我们只定制了on-chip memory,所以下拉菜单中只有这一项,两个memory 后的白框里都选on-chip memory。 offset不管,点击finish。5) 分配地址:接下来我们要再分配一下地址, 是很好操作的, 回到主框区后, 上面菜单栏中,选system-auto-assign base a

7、ddresses,点击它,就自动分好了。6) 编译:至此,完成了三个模块的定制,它们互相配合就能实现 “hello world”实验了。写好的程序存在on-chip memory中,然后处理器开始解释程序,运行程序,程序运行后,就把“hello world”这句话打在console栏里了。当然,此模块中能定制多种模块。保存后点,开始编译;编译完成后,所定制的CPU就会以原理图的方式展现在我们面前。编译完成后,如图 3.12。 图 3.12 编译完成点击exit。回到quartus界面,如图 3.13。 图 3.13 quartus 原理图输入界面3、 分配引脚,编译工程。将我们定制好的CPU调

8、入上图空白处,双击点击空白处,出现如图 3.14。 图 3.14 所定制cpu 点ok将其调入空白区,如图 3.15。 图 3.15 quartus 界面 这就是定制的CPU,由于定制的模块少,所以看起来很简洁。 下面给它分配管脚,鼠标放在它上面,右键,有个选项是generate pins for symbolports,点击它就分好了。 自动分配的管脚名是和CPU模块上的名字一样的,需要改一下,要想让管脚分配正确,必须保证管脚名和tcl 文件中的一样。 根据tcl文件里的管脚名改原理图中管脚,分别改成clk,rst,如图 3.16。 图 3.16 管脚分配 分配好后,需要run一下tcl文件

9、,首先保证工程文件夹里有一份tcl文件,然后tool-tcl需要 script,点击后如图 3.17。 图 3.17 run tcl 文件 这里有三个tcl 文件,选中用到的那个,点run,管脚就分配好了。 分配好管脚后保存,编译。 编译好后,quartus 中的操作就告一段落了,先把它放在一边。接下来要在niosII中操作。4、 niosII中的操作。打开niosII,如图 3.18。图 3.18 noisII 界面1) 建立工程:这个工程不需要单独的文件夹,默认下就放在了我们在quartus中的工程文件夹中。File-new-protect,点击后,如图 3.19。 图 3.19 创建C

10、文件 点击Next,如图 3.20。 图 3.20 引入ptf 文件 Browse,找到我们工程文件夹里的cpu.ptf 文件,把它导入进来。 这个文件是nios 中工程与quartus 中的cpu 连接的桥梁,两者联系起来才能工作。 选好后,点finish,如图 3.21。 图 3.21 代码区 可见,工程目录区多了几个文件夹,代码区自动装入了一个代码,不是“hello world”。 但是,输出的字都是自己定义的,自己可以改。可把“hello from nios II”改成“hello world”。到时打出的字就变了,其他的一样。 改好后,要进行一些必要的设置,图 3.22为属性配置界面

11、。 图 3.22 属性配置2) 属性配置:选中图 3.22中选项,右键,点击system library properties,出现图 3.23图 3.23 优化设置界面 选中图中蓝色选项,再点击右边general,出现菜单,进行如图 3.24设置。 图 3.24 优化设置 还有一项需要设置,看下图 3.25。图 3.25 优化设置 前两步的设置,是设置优化级别,如果不优化,编译生成的代码就会很大,on-chipmemory 就放不下了,编译时就会报错了。 设置好后,apply-ok。回到主界面,因为给的程序就能用,还不需要自己写程序,下面就要开始编译。3) 编译:鼠标放在hello_word

12、_0 文件夹上,右键,build project,就开始编译了,编译时间较长,需耐心等待。4) 运行:编译好后,就要开始在开发板上运行了,jtag接口上连上下载线,然后按以下步骤进行,首先看软件界面菜单栏,这里点Run,出现下拉菜单,再点另一个Run,出现下面图 3.26。图 3.26 run 设置界面 默认这页会自动设置好,但意外情况下,文件没有自动加进来,还需要自己把文件加进来(通过Browse),设置好后,再点设置下一页,如图 3.27。图 3.27 run 设置界面 设置好后,点击Run。 成功后,如下图 3.28所示。图 3.28 最终结果六、 实验总结 在第前两次实验的基础上进行了SOPC设计,感觉实验的难点并不完全类似于单片机的学习,在于以往觉得复杂的编程上,更重要的是SOPC系统硬件设计流程,不管是添加相应得UART引脚,还是改变开发板上的串口连接线,每一个步骤都要我们熟悉才能更好的完成实验设计。 专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁