基于Xilinx FPGA的多核嵌入式系统设计基础章 (2)
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
安装完成后的ISE10.1集成环境的图形用户界面如图2.1.6 所示。
第2章 多核系统设计环境与设计流程 图2.1.6 ISE10.1的用户界面
第2章 多核系统设计环境与设计流程
用于嵌入式系统设计的XPS工具,其图形用户界面如图 2.1.7所示。
第2章 多核系统设计环境与设计流程 图2.1.7 XPS图形界面
第2章 多核系统设计环境与设计流程 图2.1.1 ISE10.1安装启动界面
第2章 多核系统设计环境与设计流程 图2.1.2 ISE10.1的安装图标
第2章 多核系统设计环境与设计流程
(2) 进入ISE10.1安装的欢迎界面。 进入ISE10.1安装的欢迎界面后,输入购买ISE软件时 Xilinx公司提供的序列号,点击Next按钮,进入下一个界面, 如图2.1.3所示。 (3) 根据用户的需求,选择你所要用到的开发工具,即 在开发工具前面的方框中打钩即可,如图2.1.4所示。
第2章 多核系统设计环境与设计流程
2.2 利用ISE进行硬件逻辑设计的流程
2.2.1 创建新工程
创建一个新工程,工程名为“fifo_link”,具体步骤如 下:
(1) 首先双击桌面上的ISE10.1软件,选择File菜单下的 New Project新建工程,注意,工程的存放路径中不能含有中 文文字以及空格,因为ISE和EDK系统均无法识别中文路径。 完成之后点击Next选项,如图2.2.1所示。
(4) ISE:侧重于硬件逻辑设计,其项目导航器是项目管 理工具的主体,集成了设计过程中要使用的一系列软件工具, 主要包括设计输入(Design Entry),设计综合(Design Synthesis)、仿真(Simulation)以及器件编程等。
(5) PlanAhead:用于设计大规模FPGA设备的一款设计 和分析的软件产品,其核心技术包括了层次化的 floorplanning工具,用以将物理设计划分为更小的、更易于 管理的小模块,从而减少了FPGA上理解、设计、辨认和实 现的时间。
第2章 多核系统设计环境与设计流程 图2.1.3 安装序列号的输入界面
第2章 多核系统设计环境与设计流程 图2.1.4 开发工具的选择界面
ቤተ መጻሕፍቲ ባይዱ
第2章 多核系统设计环境与设计流程
(4) 按照安装向导的提示,同意相应的软件协议并点击 一系列的确认按钮进入安装目录的选择界面,如图2.1.5所示。 ISE10.1开发套件占用资源比较大,不推荐安装在系统盘C盘 下。此外,安装目录的文件夹命名需要注意,不能出现中文 以及类似于空格这种ISE10.1无法识别的命名方式。
第2章 多核系统设计环境与设计流程 图2.2.5 模块端口定义界面
第2章 多核系统设计环境与设计流程
(3) 点击Next按钮,出现Summary窗口,可以核对一下信 息。确认后点击Finish按钮。
(4) 在自动生成的fifo.vhd文件中,所用到的库已经自动 添加。所需要做的是在fifo的实体定义部分(entity…end内)检 查有没有尚未添加的端口定义,然后在实现部分(architecture 下 begin…end内)给出模块功能性的描述,如图2.2.6所示。
第2章 多核系统设计环境与设计流程 图2.2.1 创建新工程
第2章 多核系统设计环境与设计流程
(2) 在Device Properties属性窗口中,选择合适的开发板 系列(Family)、器件类型(Device)、封装形式(Package)、速度 等级(Speed)、综合工具(Synthesis Tool)、仿真器(simulator)以 及编程语言等。完成之后连续点击Next选项,直至Project Summary窗口出现,如图2.2.2所示。
第2章 多核系统设计环境与设计流程 图2.3.5 处理器选择界面
第2章 多核系统设计环境与设计流程 图2.3.6 MicroBlaze处理器的配置界面
第2章 多核系统设计环境与设计流程
2.3.2 选择必要外设,并进行参数配置
在Configure I/O Interfaces窗口中,仅选择需要用到的外 设,以减少资源浪费。这里选用RS232串口打印,以方便后 期在PC机上能够从终端中通过观察核间通信的信息来验证通 信系统是否正常运行。串口的波特率、数据位长度、奇偶校 验位等采用默认设置即可。同时选择Compact_Flash外设和 MDM模块,便于后续的一些应用程序的设计,如图2.3.7所 示。
第2章 多核系统设计环境与设计流程
2.1.2 ISE的安装
ISE10.1开发软件支持Windows 2000、Windows XP、 Windows Vista以及Linux操作系统。
(1) 将ISE10.1 DVD光盘放入主机光驱中,等待安装光盘 自动启动安装界面(见图2.1.1),当然也可以手动进入安装光 盘的根目录(如E:\ISE10.1 \10.1_unified),双击Setup.exe安装, 如图2.1.2所示。
第2章 多核系统设计环境与设计流程 图2.2.7 XST中的语法检查
第2章 多核系统设计环境与设计流程 图2.2.8 Console窗口下的打印信息
第2章 多核系统设计环境与设计流程
(2) 双击XST下的View RTL Schematic选项,查看设计模 块的电路原理图,如图2.2.9和2.2.10所示。之所以需要做这 一步,是由于只有在电路图级别达到综合与验证时,才能保 证这样的逻辑设计在FPGA上是有可能通过门电路实现的。
第2章 多核系统设计环境与设计流程 图2.2.9 自定义FIFO的顶层模块
第2章 多核系统设计环境与设计流程 图2.2.10 自定义FIFO的底层门电路
第2章 多核系统设计环境与设计流程
2.3 利用XPS向导进行多核硬件系统设计的流程
实验要求:创建一个单核系统,要求包含UART和 Compact_Flash等IP核。模块图如图2.3.1所示。
第2章 多核系统设计环境与设计流程
2.1 开发软件简介 2.2 利用ISE进行硬件逻辑设计的流程 2.3 利用XPS向导进行多核硬件系统设计的流程 2.4 利用EDK套件进行多核软件开发的流程 2.5 本章小结
第2章 多核系统设计环境与设计流程
2.1 开发软件简介
2.1.1 ISE开发软件简介
Xilinx公司推出的ISE10.1开发套件包括了以下几个主要 组成部分。
第2章 多核系统设计环境与设计流程 图2.3.8 软件设置界面
第2章 多核系统设计环境与设计流程 图2.3.9 单核系统的Block Diagram
第2章 多核系统设计环境与设计流程 图2.3.3 单核工程的存放路径
第2章 多核系统设计环境与设计流程
(3) 进入Base System Builder-Welcome窗口,选择“I would like to create a new design”选项后,点击Next按钮。
在Select board窗口下选用合适的板型,由于本文所采用 的是ML310示范板,故在提供的Board name中能够找到这款 板型,如图2.3.4所示。
(1) ChipScope Pro:一种片内逻辑分析工具,它能通过 JTAG口,将FPGA内部信号实时读出,并传入计算机进行分 析。
第2章 多核系统设计环境与设计流程
(2) DSP_Tools:在ISE10.1套件的DSP_tools中集成了 AccelDSP Synthesis Tool和System Generator工具。
(3) EDK:作为一套完整的嵌入式开发套件,集成了 Xilinx Platform Studio(XPS)、Software Development Kit(SDK)、 库文件产生器(Libgen)和编译工具(GNU Compile Tools)等开 发模块。
第2章 多核系统设计环境与设计流程
第2章 多核系统设计环境与设计流程
2.2.2 新建HDL源文件
新建一个HDL源文件,命名为“fifo”,具体步骤如下: (1) 选中Sources窗口下的器件类型,然后在Project下选 择New Source新建源文件,出现Select Source Type窗口框。 左边选中VHDL Module,右边给出文件名称,点击Next按钮, 如图2.2.4所示。
第2章 多核系统设计环境与设计流程 图2.2.2 设备属性窗口
第2章 多核系统设计环境与设计流程
(3) 在Project Summary窗口中,可以了解到该工程创建的 选项信息,如图2.2.3所示,检查是否与之前的设置相符合。 确认无误后点击Finish按钮。
第2章 多核系统设计环境与设计流程 图2.2.3 项目的信息概述窗口
第2章 多核系统设计环境与设计流程 图2.3.7 外围设备的选择
第2章 多核系统设计环境与设计流程
2.3.3 配置启动内存,并选用内存测试文件
配置启动内存并选用内存测试文件的具体步骤如下: (1) 进入Software Setup窗口,如图2.3.8所示,根据需要 选择输入/输出标准以及启动内存所存放的空间。 (2) 弹出的Configure Memory Test Application窗口中相关 内容就按默认设置即可,点击Next按钮进入System Created窗 口,再点击Generate按钮。
第2章 多核系统设计环境与设计流程 图2.3.1 单核硬件系统的模块图
第2章 多核系统设计环境与设计流程
2.3.1 利用BSB新建一个工程
利用BSB新建一个工程的具体步骤如下: (1) 双击桌面上的XPS图标,打开Xilinx Platform Studio 软件,出现如图2.3.2所示的对话框,选择BSB向导建立一个 单核工程,点击OK按钮。
第2章 多核系统设计环境与设计流程 图2.1.5 安装目录的选择文件
第2章 多核系统设计环境与设计流程
(5) 选择安装目录后,点击一系列的确认按钮。最后点 击Install按钮进入到软件的安装过程,过程中会显示各个安 装组件的特性。
(6) ISE10.1安装完成后,会针对SP2系统的某些不兼容 性,自动从Xilinx官网上下载相应的补丁。当然,出于安装 速度的考虑,可以选择手动从Xilinx官网上逐个下载这些补 丁。
第2章 多核系统设计环境与设计流程 图2.3.4 板型选择界面
第2章 多核系统设计环境与设计流程
(4) 在Select Processor窗口下选择使用MicroBlaze软核处 理器,如图2.3.5所示,点击Next按钮。
(5) 在Configure Microblaze Processor窗口中,主要选择 时钟频率以及Local Memory的大小。对于未用到的逻辑单元, 如FPU浮点运算尽量不选用,以减少片上资源的浪费。相关 设置信息如图2.3.6所示,完成后点击Next按钮。
第2章 多核系统设计环境与设计流程 图2.3.2 进入BSB创建向导
第2章 多核系统设计环境与设计流程
(2) 在Create New XPS Project Using BSB Wizard窗口中输 入文件存放路径,和ISE环境相同,切记路径名中不能包含 中文或是空格等字符,如图2.3.3所示。
第2章 多核系统设计环境与设计流程 图2.2.6 FIFO功能设计代码
第2章 多核系统设计环境与设计流程
2.2.3 对源文件进行综合以及仿真
对源文件进行综合以及仿真的具体步骤如下: (1) 源文件设计完成之后,在Processes窗口下选择仿真工 具XST带有的语法检查Check Syntax,如果设计无误,则该 选项前方会出现 标志,如图2.2.7所示。Transcript窗口的 Console视图区内也会打印出语法检查的信息,如图2.2.8所示。
第2章 多核系统设计环境与设计流程 图2.2.4 新建源文件类型选择列表
第2章 多核系统设计环境与设计流程
(2) 在Define Module窗口下(如图2.2.5所示),可以选择将 模块中所有的in、out、inout型端口一次性列出,方便ISE自 动生成模板,也可以选择跳过该步骤,在源文件编辑框下手 动输入各个端口。
第2章 多核系统设计环境与设计流程 图2.1.6 ISE10.1的用户界面
第2章 多核系统设计环境与设计流程
用于嵌入式系统设计的XPS工具,其图形用户界面如图 2.1.7所示。
第2章 多核系统设计环境与设计流程 图2.1.7 XPS图形界面
第2章 多核系统设计环境与设计流程 图2.1.1 ISE10.1安装启动界面
第2章 多核系统设计环境与设计流程 图2.1.2 ISE10.1的安装图标
第2章 多核系统设计环境与设计流程
(2) 进入ISE10.1安装的欢迎界面。 进入ISE10.1安装的欢迎界面后,输入购买ISE软件时 Xilinx公司提供的序列号,点击Next按钮,进入下一个界面, 如图2.1.3所示。 (3) 根据用户的需求,选择你所要用到的开发工具,即 在开发工具前面的方框中打钩即可,如图2.1.4所示。
第2章 多核系统设计环境与设计流程
2.2 利用ISE进行硬件逻辑设计的流程
2.2.1 创建新工程
创建一个新工程,工程名为“fifo_link”,具体步骤如 下:
(1) 首先双击桌面上的ISE10.1软件,选择File菜单下的 New Project新建工程,注意,工程的存放路径中不能含有中 文文字以及空格,因为ISE和EDK系统均无法识别中文路径。 完成之后点击Next选项,如图2.2.1所示。
(4) ISE:侧重于硬件逻辑设计,其项目导航器是项目管 理工具的主体,集成了设计过程中要使用的一系列软件工具, 主要包括设计输入(Design Entry),设计综合(Design Synthesis)、仿真(Simulation)以及器件编程等。
(5) PlanAhead:用于设计大规模FPGA设备的一款设计 和分析的软件产品,其核心技术包括了层次化的 floorplanning工具,用以将物理设计划分为更小的、更易于 管理的小模块,从而减少了FPGA上理解、设计、辨认和实 现的时间。
第2章 多核系统设计环境与设计流程 图2.1.3 安装序列号的输入界面
第2章 多核系统设计环境与设计流程 图2.1.4 开发工具的选择界面
ቤተ መጻሕፍቲ ባይዱ
第2章 多核系统设计环境与设计流程
(4) 按照安装向导的提示,同意相应的软件协议并点击 一系列的确认按钮进入安装目录的选择界面,如图2.1.5所示。 ISE10.1开发套件占用资源比较大,不推荐安装在系统盘C盘 下。此外,安装目录的文件夹命名需要注意,不能出现中文 以及类似于空格这种ISE10.1无法识别的命名方式。
第2章 多核系统设计环境与设计流程 图2.2.5 模块端口定义界面
第2章 多核系统设计环境与设计流程
(3) 点击Next按钮,出现Summary窗口,可以核对一下信 息。确认后点击Finish按钮。
(4) 在自动生成的fifo.vhd文件中,所用到的库已经自动 添加。所需要做的是在fifo的实体定义部分(entity…end内)检 查有没有尚未添加的端口定义,然后在实现部分(architecture 下 begin…end内)给出模块功能性的描述,如图2.2.6所示。
第2章 多核系统设计环境与设计流程 图2.2.1 创建新工程
第2章 多核系统设计环境与设计流程
(2) 在Device Properties属性窗口中,选择合适的开发板 系列(Family)、器件类型(Device)、封装形式(Package)、速度 等级(Speed)、综合工具(Synthesis Tool)、仿真器(simulator)以 及编程语言等。完成之后连续点击Next选项,直至Project Summary窗口出现,如图2.2.2所示。
第2章 多核系统设计环境与设计流程 图2.3.5 处理器选择界面
第2章 多核系统设计环境与设计流程 图2.3.6 MicroBlaze处理器的配置界面
第2章 多核系统设计环境与设计流程
2.3.2 选择必要外设,并进行参数配置
在Configure I/O Interfaces窗口中,仅选择需要用到的外 设,以减少资源浪费。这里选用RS232串口打印,以方便后 期在PC机上能够从终端中通过观察核间通信的信息来验证通 信系统是否正常运行。串口的波特率、数据位长度、奇偶校 验位等采用默认设置即可。同时选择Compact_Flash外设和 MDM模块,便于后续的一些应用程序的设计,如图2.3.7所 示。
第2章 多核系统设计环境与设计流程
2.1.2 ISE的安装
ISE10.1开发软件支持Windows 2000、Windows XP、 Windows Vista以及Linux操作系统。
(1) 将ISE10.1 DVD光盘放入主机光驱中,等待安装光盘 自动启动安装界面(见图2.1.1),当然也可以手动进入安装光 盘的根目录(如E:\ISE10.1 \10.1_unified),双击Setup.exe安装, 如图2.1.2所示。
第2章 多核系统设计环境与设计流程 图2.2.7 XST中的语法检查
第2章 多核系统设计环境与设计流程 图2.2.8 Console窗口下的打印信息
第2章 多核系统设计环境与设计流程
(2) 双击XST下的View RTL Schematic选项,查看设计模 块的电路原理图,如图2.2.9和2.2.10所示。之所以需要做这 一步,是由于只有在电路图级别达到综合与验证时,才能保 证这样的逻辑设计在FPGA上是有可能通过门电路实现的。
第2章 多核系统设计环境与设计流程 图2.2.9 自定义FIFO的顶层模块
第2章 多核系统设计环境与设计流程 图2.2.10 自定义FIFO的底层门电路
第2章 多核系统设计环境与设计流程
2.3 利用XPS向导进行多核硬件系统设计的流程
实验要求:创建一个单核系统,要求包含UART和 Compact_Flash等IP核。模块图如图2.3.1所示。
第2章 多核系统设计环境与设计流程
2.1 开发软件简介 2.2 利用ISE进行硬件逻辑设计的流程 2.3 利用XPS向导进行多核硬件系统设计的流程 2.4 利用EDK套件进行多核软件开发的流程 2.5 本章小结
第2章 多核系统设计环境与设计流程
2.1 开发软件简介
2.1.1 ISE开发软件简介
Xilinx公司推出的ISE10.1开发套件包括了以下几个主要 组成部分。
第2章 多核系统设计环境与设计流程 图2.3.8 软件设置界面
第2章 多核系统设计环境与设计流程 图2.3.9 单核系统的Block Diagram
第2章 多核系统设计环境与设计流程 图2.3.3 单核工程的存放路径
第2章 多核系统设计环境与设计流程
(3) 进入Base System Builder-Welcome窗口,选择“I would like to create a new design”选项后,点击Next按钮。
在Select board窗口下选用合适的板型,由于本文所采用 的是ML310示范板,故在提供的Board name中能够找到这款 板型,如图2.3.4所示。
(1) ChipScope Pro:一种片内逻辑分析工具,它能通过 JTAG口,将FPGA内部信号实时读出,并传入计算机进行分 析。
第2章 多核系统设计环境与设计流程
(2) DSP_Tools:在ISE10.1套件的DSP_tools中集成了 AccelDSP Synthesis Tool和System Generator工具。
(3) EDK:作为一套完整的嵌入式开发套件,集成了 Xilinx Platform Studio(XPS)、Software Development Kit(SDK)、 库文件产生器(Libgen)和编译工具(GNU Compile Tools)等开 发模块。
第2章 多核系统设计环境与设计流程
第2章 多核系统设计环境与设计流程
2.2.2 新建HDL源文件
新建一个HDL源文件,命名为“fifo”,具体步骤如下: (1) 选中Sources窗口下的器件类型,然后在Project下选 择New Source新建源文件,出现Select Source Type窗口框。 左边选中VHDL Module,右边给出文件名称,点击Next按钮, 如图2.2.4所示。
第2章 多核系统设计环境与设计流程 图2.2.2 设备属性窗口
第2章 多核系统设计环境与设计流程
(3) 在Project Summary窗口中,可以了解到该工程创建的 选项信息,如图2.2.3所示,检查是否与之前的设置相符合。 确认无误后点击Finish按钮。
第2章 多核系统设计环境与设计流程 图2.2.3 项目的信息概述窗口
第2章 多核系统设计环境与设计流程 图2.3.7 外围设备的选择
第2章 多核系统设计环境与设计流程
2.3.3 配置启动内存,并选用内存测试文件
配置启动内存并选用内存测试文件的具体步骤如下: (1) 进入Software Setup窗口,如图2.3.8所示,根据需要 选择输入/输出标准以及启动内存所存放的空间。 (2) 弹出的Configure Memory Test Application窗口中相关 内容就按默认设置即可,点击Next按钮进入System Created窗 口,再点击Generate按钮。
第2章 多核系统设计环境与设计流程 图2.3.1 单核硬件系统的模块图
第2章 多核系统设计环境与设计流程
2.3.1 利用BSB新建一个工程
利用BSB新建一个工程的具体步骤如下: (1) 双击桌面上的XPS图标,打开Xilinx Platform Studio 软件,出现如图2.3.2所示的对话框,选择BSB向导建立一个 单核工程,点击OK按钮。
第2章 多核系统设计环境与设计流程 图2.1.5 安装目录的选择文件
第2章 多核系统设计环境与设计流程
(5) 选择安装目录后,点击一系列的确认按钮。最后点 击Install按钮进入到软件的安装过程,过程中会显示各个安 装组件的特性。
(6) ISE10.1安装完成后,会针对SP2系统的某些不兼容 性,自动从Xilinx官网上下载相应的补丁。当然,出于安装 速度的考虑,可以选择手动从Xilinx官网上逐个下载这些补 丁。
第2章 多核系统设计环境与设计流程 图2.3.4 板型选择界面
第2章 多核系统设计环境与设计流程
(4) 在Select Processor窗口下选择使用MicroBlaze软核处 理器,如图2.3.5所示,点击Next按钮。
(5) 在Configure Microblaze Processor窗口中,主要选择 时钟频率以及Local Memory的大小。对于未用到的逻辑单元, 如FPU浮点运算尽量不选用,以减少片上资源的浪费。相关 设置信息如图2.3.6所示,完成后点击Next按钮。
第2章 多核系统设计环境与设计流程 图2.3.2 进入BSB创建向导
第2章 多核系统设计环境与设计流程
(2) 在Create New XPS Project Using BSB Wizard窗口中输 入文件存放路径,和ISE环境相同,切记路径名中不能包含 中文或是空格等字符,如图2.3.3所示。
第2章 多核系统设计环境与设计流程 图2.2.6 FIFO功能设计代码
第2章 多核系统设计环境与设计流程
2.2.3 对源文件进行综合以及仿真
对源文件进行综合以及仿真的具体步骤如下: (1) 源文件设计完成之后,在Processes窗口下选择仿真工 具XST带有的语法检查Check Syntax,如果设计无误,则该 选项前方会出现 标志,如图2.2.7所示。Transcript窗口的 Console视图区内也会打印出语法检查的信息,如图2.2.8所示。
第2章 多核系统设计环境与设计流程 图2.2.4 新建源文件类型选择列表
第2章 多核系统设计环境与设计流程
(2) 在Define Module窗口下(如图2.2.5所示),可以选择将 模块中所有的in、out、inout型端口一次性列出,方便ISE自 动生成模板,也可以选择跳过该步骤,在源文件编辑框下手 动输入各个端口。