基于FPGA的SOPC设计第二章SOPC开发流程及Quartus II的使用

上传人:ap****ve 文档编号:118920414 上传时间:2019-12-30 格式:PPT 页数:81 大小:3.02MB
返回 下载 相关 举报
基于FPGA的SOPC设计第二章SOPC开发流程及Quartus II的使用_第1页
第1页 / 共81页
基于FPGA的SOPC设计第二章SOPC开发流程及Quartus II的使用_第2页
第2页 / 共81页
基于FPGA的SOPC设计第二章SOPC开发流程及Quartus II的使用_第3页
第3页 / 共81页
基于FPGA的SOPC设计第二章SOPC开发流程及Quartus II的使用_第4页
第4页 / 共81页
基于FPGA的SOPC设计第二章SOPC开发流程及Quartus II的使用_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《基于FPGA的SOPC设计第二章SOPC开发流程及Quartus II的使用》由会员分享,可在线阅读,更多相关《基于FPGA的SOPC设计第二章SOPC开发流程及Quartus II的使用(81页珍藏版)》请在金锄头文库上搜索。

1、基于FPGA的SOPC设计第二章 SOPC开发流程及Quartus II的使用,2.1 SOPC开发流程和开发工具,SOPC设计包括硬件和软件两部分。 硬件设计:主要基于Quartus II和SOPC Builder。 软件设计:基于Nios II IDE。,SOPC开发流程简图,分析系统需求,NiosII内核,&标准外设,定制指令&定,制外设逻辑,硬件抽象层,(HAL)&外设,驱动程序,用户C/C+应,用程序代码,和定制的库,自定义的,功能模块,建立Quartus II工程,,建立顶层图*.bdf,打开SOPC Builder,定义和生成系统,集成SOPC生,成的系统到,Quartus II

2、工程,使用Nios II,IDE开发软件,Altera的,LPM模块,连接各,功能模块,选择FPGA型号,并进行管脚分配,进行编译,选项设置,编译硬件系统,生成配置文件sof,编译软件,生成可执,行文件elf,在目标板上,下载可执行,软件到,Nios II系统,下载配置文件到,FPGA器件,在目标板上运,行/调试软件,调试好的,硬件和软件,在IDE中使用,ISS运行/调试,软件,设置软件运行,硬件环境属性,使用IDE编程工具,烧写配置文件和,软件代码,在进行SOPC开发之前,首先必须确定系统的需求,如应用系统需求的计算性能、需要的带宽和吞吐量、需求的接口类型以及是否需求多线程的软件等。,每个开

3、发过程开始时都应建立一个工程,Quartus II是以工程的方式对设计过程进行管理。在工程中建立顶层模块文件.bdf相当于传统电路设计中的电路板(PCB)。,在SOPC Builder中添加需要的功能模块(Nios II及其标准外设模块),完成后生成一个系统模块。,如果需要,用户可以定制指令和外设逻辑。,分析系统需求,NiosII内核,&标准外设,定制指令&定,制外设逻辑,硬件抽象层,(HAL)&外设,驱动程序,用户C/C+应,用程序代码,和定制的库,自定义的,功能模块,建立Quartus II工程,,建立顶层图*.bdf,集成SOPC生,成的系统到,Quartus II工程,使用Nios I

4、I,IDE开发软件,Altera的,LPM模块,连接各,功能模块,选择FPGA型号,并进行管脚分配,进行编译,选项设置,编译硬件系统,生成配置文件sof,编译软件,生成可执,行文件elf,在目标板上,下载可执行,软件到,Nios II系统,下载配置文件到,FPGA器件,在目标板上运,行/调试软件,调试好的,硬件和软件,在IDE中使用,ISS运行/调试,软件,设置软件运行,硬件环境属性,在Quartus II软件中包含了大量的Altera公司提供的LPM功能模块,相当与传统设计中除处理器以外的逻辑芯片(如74系列);,当设计中现有模块不能满足设计要求时,可设计自己的功能模块。并在顶层模块中使用;

5、,打开SOPC Builder,定义和生成系统,在顶层模块中,分别将SOPC Builder生成的系统模块、LPM功能模块以及用户自定义功能模块添加到顶层模块中;,然后将各个功能模块用连线连起来组成系统功能原理图。,这个两过程类似传统电路设计中,将所有要使用的芯片焊接到电路板上,然后通过PCB上的连线将各个芯片连接起来,组成电路系统。,使用IDE编程工具,烧写配置文件和,软件代码,SOPC开发流程简图,分析系统需求,NiosII内核,&标准外设,定制指令&定,制外设逻辑,硬件抽象层,(HAL)&外设,驱动程序,用户C/C+应,用程序代码,和定制的库,自定义的,功能模块,建立Quartus II

6、工程,,建立顶层图*.bdf,集成SOPC生,成的系统到,Quartus II工程,使用Nios II,IDE开发软件,Altera的,LPM模块,连接各,功能模块,选择FPGA型号,并进行管脚分配,进行编译,选项设置,编译硬件系统,生成配置文件sof,编译软件,生成可执,行文件elf,在目标板上,下载可执行,软件到,Nios II系统,下载配置文件到,FPGA器件,在目标板上运,行/调试软件,调试好的,硬件和软件,在IDE中使用,ISS运行/调试,软件,设置软件运行,硬件环境属性,打开SOPC Builder,定义和生成系统,为系统功能原理图选择芯片载体并为各个输入输出信号分配芯片的管脚;,

7、设置编译选项,从而让编译器按照用户设定来进行编译;,编译系统生成硬件系统的配置文件*.sof和*.pof。编译系统是一个非常复杂的过程,包括优化逻辑的组合、综合逻辑、适配FPGA、布线以及时序分析等步骤。,使用IDE编程工具,烧写配置文件和,软件代码,SOPC开发流程简图,分析系统需求,NiosII内核,&标准外设,定制指令&定,制外设逻辑,硬件抽象层,(HAL)&外设,驱动程序,用户C/C+应,用程序代码,和定制的库,自定义的,功能模块,建立Quartus II工程,,建立顶层图*.bdf,集成SOPC生,成的系统到,Quartus II工程,使用Nios II,IDE开发软件,Altera

8、的,LPM模块,连接各,功能模块,选择FPGA型号,并进行管脚分配,进行编译,选项设置,编译硬件系统,生成配置文件sof,编译软件,生成可执,行文件elf,在目标板上,下载可执行,软件到,Nios II系统,下载配置文件到,FPGA器件,在目标板上运,行/调试软件,调试好的,硬件和软件,在IDE中使用,ISS运行/调试,软件,设置软件运行,硬件环境属性,打开SOPC Builder,定义和生成系统,软件开发也可以在SOPC Builder 生成系统模块后立即进行!与传统软件开发类似,唯一不同在于系统是自己定制的,所受局限小!,使用IDE编程工具,烧写配置文件和,软件代码,分析系统需求,Nios

9、II内核,&标准外设,定制指令&定,制外设逻辑,硬件抽象层,(HAL)&外设,驱动程序,用户C/C+应,用程序代码,和定制的库,自定义的,功能模块,建立Quartus II工程,,建立顶层图*.bdf,集成SOPC生,成的系统到,Quartus II工程,使用Nios II,IDE开发软件,Altera的,LPM模块,连接各,功能模块,选择FPGA型号,并进行管脚分配,进行编译,选项设置,编译硬件系统,生成配置文件sof,编译软件,生成可执,行文件elf,在目标板上,下载可执行,软件到,Nios II系统,下载配置文件到,FPGA器件,在目标板上运,行/调试软件,调试好的,硬件和软件,在IDE

10、中使用,ISS运行/调试,软件,设置软件运行,硬件环境属性,打开SOPC Builder,定义和生成系统,设置好软件运行的硬件环境属性后,便可进行编译、链接和调试、运行程序。,对用户程序进行编译,生成可执行文件*.elf。,接下来在IDE的指令集仿真器(ISS)上仿真软件和运行/调试软件。,将配置文件.sof下载到FPGA,将可执行文件.elf下载到RAM。,在目标板上反复调试软件。,直到硬件和软件设计都达到设计要求。,最后利用IDE的编程工具将配置文件烧写到FPGA的配置芯片或Flash,将可执行文件*.elf编程到Flash中。,使用IDE编程工具,烧写配置文件和,软件代码,2.1 SOP

11、C开发流程和开发工具,硬件开发,硬件开发使用Quartus II和SOPC Builder,配置Nios II处理器,选择并配置外设.IP,连接各外设模块,分配外设地址和中断,生成系统,SOPC Builder GUI,自定义命令,IP,模块,处理器库,外设模块库,硬件开发,Nios II IDE,软件开发,Quartus II,GNU Tools,用SOPC Builder软件从NiosII处理器内核和NiosII开发套件提供的外设列表中选取合适的CPU、存储器以及各外围器件,并定制和配置它们的功能;,分配外设地址及中断号; 设定复位地址;,最后生成系统。,用户也可以添加用户自身定制指令逻辑

12、到NiosII内核以加速CPU性能;,添加用户自己设计的IP模块。,硬件开发,硬件开发使用Quartus II和SOPC Builder,配置Nios II处理器,选择并配置外设.IP,连接各外设模块,分配外设地址和中断,生成系统,SOPC Builder GUI,自定义命令,IP,模块,处理器库,外设模块库,硬件开发,Nios II IDE,软件开发,Quartus II,GNU Tools,编译Quartus II工程,对HDL文件进行布局布线,从HDL源文件综合生成一个适合目标器件网表,生成FPGA配置文件(.sof);,HDL 源文件 测试台,用户逻辑设计 其它的IP模块 SOPC B

13、uilder的 顶层.bdf文件,管脚连接分配,编译(分析与综合、布局布线、时序分析等),验证调试,硬件配置 文件,JTAG,串口、以太网,片上调试 (软件跟踪、硬件断点 SignalTap II),Altera GPGA,用下载电缆(如 ByteBlaster II),将配置文件下载到目标板上。硬件校验完成后,可将新的硬件配置文件下载到目标板上的非易失存储器(如EPCS器件)。,2.1 SOPC开发流程和开发工具,硬件开发,配置Nios II处理器,选择并配置外设.IP,连接各外设模块,分配外设地址和中断,生成系统,SOPC Builder GUI,自定义命令,IP,模块,处理器库,外设模块

14、库,硬件开发,Nios II IDE,软件开发,Quartus II,GNU Tools,编译Quartus II工程,对HDL文件进行布局布线,从HDL源文件综合生成一个适合目标器件网表,生成FPGA配置文件(.sof);,HDL 源文件 测试台,用户逻辑设计 其它的IP模块 SOPC Builder的 顶层.bdf文件,管脚连接分配,编译(分析与综合、布局布线、时序分析等),验证调试,硬件配置 文件,JTAG,串口、以太网,片上调试 (软件跟踪、硬件断点 SignalTap II),Altera GPGA,用下载电缆(如 ByteBlaster II),将配置文件下载到目标板上。硬件校验完成后,可将新的硬件配置文件下载到目标板上的非易失存储器(如EPCS器件)。,2.1 SOPC开发流程和开发工具,2.1 SOPC开发流程和开发工具,软件开发 软件开发使用Nios II IDE,它是一个基于Eclipse IDE架构的集成开发环境,它包括: GNU开发工具(标准GCC编译器,连接器,汇编器和makefile工具等); 基于GDB的调试器,包括软件仿真和硬件调试; 提供用户一个硬件抽象层HAL; 提供嵌入式操作系统MicroC/OS-II和LwTCP/IP协议栈的支持; 提供帮助用户快速入门的软件模板; 提供Flas

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号