180 likes | 338 Vues
1.3.5 嵌入 PowerPC405 微处理 器的 FPGA 设计流程. 1.PowerPC405 的使用方式. Xilinx 公司的 Virtex -ⅡPro 系列器件内嵌高性能的 32 位 RISC 内核 PowerPC405 。在 Virtex -ⅡPro 系列器件中, PowerPC405 主要有两种使用方式: 1. 深埋式应用 2. 复杂嵌入式应用. 1. 深埋式应用.
E N D
1.PowerPC405的使用方式 • Xilinx公司的Virtex -ⅡPro系列器件内嵌高性能的 32位RISC内核PowerPC405。在Virtex -ⅡPro系列器件中,PowerPC405主要有两种使用方式: 1. 深埋式应用 2. 复杂嵌入式应用
1. 深埋式应用 • 深埋式应用如图1.3.5所示,PowerPC405仅使用FPGA内部的BlockRAM,不与FPGA外部资源发生直接联系,不需要实时操作系统和外界接口。PowerPC405的深埋式应用比较适合于FPGA内部复杂逻辑控制、数据包处理等场合。
2. 复杂嵌入式应用 • 复杂嵌入式应用如图1.3.6所示,PowerPC405使用FPGA外部的存储单元,使用CoreConnect总线和外围接口。PowerPC405的复杂嵌入式应用通常需要实时操作系统,比较适合于以FPGA为核心的复杂应用。
2.设计流程 • 针对嵌入PowerPC405的FPGA设计,Xilinx公司提出了软硬件协同设计的完整流程,包括:整体方案设计、硬件系统设计、硬件系统仿真和验证、软件系统设计、软件仿真与验证几部分。
①整体方案设计 • 在整体方案设计阶段,将明确设计目标,划分软硬件系统,确定仿真验证策略。
②硬件系统设计 • 在硬件系统设计阶段,将确定硬件系统的整体结构,明确PowerPC405的目标功能和具体应用方案,并通过微处理器硬件规范(MHS,Microprocssor Hardware Specification)文件来描述PowerPC405的总线和接口结构。在EDK集成开发环境中,调用platgen可以将MHS文件转换成相应的网表文件和顶层HDL文件。
③硬件系统仿真和验证 • 在硬件系统仿真和验证的设计阶段,将确定整个硬件系统的仿真和验证方案,并通过微处理器验证规范(MVS,Microprocessor Verification Specification)文件描述。在EDK集成开发环境中,调用simgen可以将MVS文件转换成相应的仿真和验证文件。
④软件系统设计 • 在软件系统设计阶段,将确定基于PowerPC405的软件系统,并通过微处理器软件规范(MSS,Microprocessor Software Specification)文件描述。在 EDK集成开发环境中,调用 libgen可以将MSS文件转换成相应的用户驱动、库文件和中断处理程序。
⑤软件仿真与验证 • 在软件仿真与验证阶段,通过使用Xilinx公司提供的GNU Debugger或其他第三方设计工具,对嵌入式软件进行调试。 • 针对Virtex -ⅡPro系列器件中PowerPC405的设计和使用,Xilinx公司基于ISE4.2系列软件推出了专用开发工具一V2PDK,基于ISE5.x系列软件推出了专用开发工具EDK。
在基于PowerPC405的FPGA设计过程中,嵌入式软件工程师仍然可以独立地进行软件设计,硬件逻辑工程师也可以继续采用过去的设计方法。通过使用Data2BlockRAM,软件代码可以在FPGA中使用。Data2BlockRAM的主要作用是把软件代码(.elf文件)、FPGA设计(.bit文件)、BlockRAM初始化数据(.bmm文件)转换成新的FPGA设计(.bit文件)和存储数据(.mem文件)。在基于PowerPC405的FPGA设计过程中,嵌入式软件工程师仍然可以独立地进行软件设计,硬件逻辑工程师也可以继续采用过去的设计方法。通过使用Data2BlockRAM,软件代码可以在FPGA中使用。Data2BlockRAM的主要作用是把软件代码(.elf文件)、FPGA设计(.bit文件)、BlockRAM初始化数据(.bmm文件)转换成新的FPGA设计(.bit文件)和存储数据(.mem文件)。 • 以下是嵌入 PowerPC405的FPGA软硬件设计流程
⑤软件仿真与验证 • 目前,针对 Virtex -ⅡPro系列器件中 PowerPC405的软件开发,Xilinx公司推出了两种软件开发工具:GNU和WindRiver XE。其中,WindRiver XE是 Xilinx公司与 WindRiver公司合作开发的嵌入式软件设计工具,它包括 Diab Compiler和 Single Step Debugger。GNU是 XilillX公司自主开发的嵌入式软件设计工具。基于GNU的嵌入式软件设计主要包括编辑、编译、链接和调试等步骤。
在Virtex -ⅡPro系列器件的硬件开发过程中,如果不使用PowerPC4OS内核,整个设计流程与普通FPGA的设计流程完全一致。如果使用POwerPC405内核,硬件设计应注意以下三点。 • ①正确设计PowerPC405的外围总线和接口。 • ②正确使用PowerPC405的仿真模型。目前,PowerPC405的仿真模型包括:
PowerPC405的仿真模型 • a. SmartModel 该模型是加密仿真模型,仿真速度很慢。SmartModel仿真模型必须在支持SWIFT接口的仿真工具中使用。目前,ModeISim SE5.6可以支持SWIFT接口。 • b. Bus Functional Model 该模型仿真速度比较快,它通过模拟 PowerPC405外围总线的操作对PowerPC405内核进行仿真。由于Virtex -ⅡPro系列器件中的PowerPC405内核仅支持ICU、DCU和DCR三种CPU总线工作模式,所以Virtex -ⅡPro系列器件中的Bus Functional M odel必须模拟这三种工作方式之一。另外,使用 Bus Functional Model仿真前,必须安装IBM CoreConnect Kit。
③正确设计 PowerPC405的初始配置。因为Virtex -ⅡPro系列器件中的 PowerPC405只有在FPGA配置完成后才能正常工作,所以它不能对FPGA自身进行下载配置。