1.3.5 嵌入 powerpc405 微处理 器的 fpga 设计流程

18
1.3.5 嵌嵌 PowerPC405 嵌嵌嵌 嵌嵌 FPGA 嵌嵌嵌嵌

Upload: elvis-gilbert

Post on 15-Mar-2016

61 views

Category:

Documents


8 download

DESCRIPTION

1.3.5 嵌入 PowerPC405 微处理 器的 FPGA 设计流程. 1.PowerPC405 的使用方式. Xilinx 公司的 Virtex -ⅡPro 系列器件内嵌高性能的 32 位 RISC 内核 PowerPC405 。在 Virtex -ⅡPro 系列器件中, PowerPC405 主要有两种使用方式: 1. 深埋式应用 2. 复杂嵌入式应用. 1. 深埋式应用. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

1.3.5 嵌入 PowerPC405 微处理 器的 FPGA 设计流程

Page 2: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

1.PowerPC405 的使用方式 Xilinx 公司的 Virtex -ⅡPro 系列器件内嵌高性能的 32 位 RISC 内核 PowerPC405 。在 Virtex -ⅡPro 系列器件中, PowerPC405 主要有两种使用方式: 1. 深埋式应用 2. 复杂嵌入式应用

Page 3: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

1. 深埋式应用 深埋式应用如图 1.3.5 所示, PowerPC405 仅使用 FPGA 内部的 BlockRAM ,不与 FPGA 外部资源发生直接联系,不需要实时操作系统和外界接口。 PowerPC405 的深埋式应用比较适合于 FPGA 内部复杂逻辑控制、数据包处理等场合。

Page 4: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

图 1.3.5 PowerPC405 深埋式应用

Page 5: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

2. 复杂嵌入式应用 复杂嵌入式应用如图 1.3.6 所示, PowerPC405 使用 FPGA 外部的存储单元,使用 CoreConnect 总线和外围接口。 PowerPC405 的复杂嵌入式应用通常需要实时操作系统,比较适合于以 FPGA 为核心的复杂应用。

Page 6: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

图 1.3.6 PowerPC405 复杂嵌入式应用

Page 7: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

2. 设计流程 针对嵌入 PowerPC405 的 FPGA 设计,Xilinx 公司提出了软硬件协同设计的完整流程,包括:整体方案设计、硬件系统设计、硬件系统仿真和验证、软件系统设计、软件仿真与验证几部分。

Page 8: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

① 整体方案设计 在整体方案设计阶段,将明确设计目标,划分软硬件系统,确定仿真验证策略。

Page 9: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

② 硬件系统设计 在硬件系统设计阶段,将确定硬件系统的整体结构,明确 PowerPC405 的目标功能和具体应用方案,并通过微处理器硬件规范( MHS , Microprocssor Hardware Specification )文件来描述 PowerPC405 的总线和接口结构。在 EDK 集成开发环境中,调用 platgen 可以将 MHS 文件转换成相应的网表文件和顶层 HDL 文件。

Page 10: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

③ 硬件系统仿真和验证 在硬件系统仿真和验证的设计阶段,将确定整个硬件系统的仿真和验证方案,并通过微处理器验证规范( MVS , Microprocessor Verification Specification )文件描述。在 EDK 集成开发环境中,调用 simgen 可以将 MVS 文件转换成相应的仿真和验证文件。

Page 11: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

④ 软件系统设计 在软件系统设计阶段,将确定基于 PowerPC405 的软件系统,并通过微处理器软件规范( MSS , Microprocessor Software Specification )文件描述。在 EDK 集成开发环境中,调用 libgen 可以将 MSS 文件转换成相应的用户驱动、库文件和中断处理程序。

Page 12: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

⑤ 软件仿真与验证 在软件仿真与验证阶段,通过使用 Xilinx 公司提供的 GNU Debugger 或其他第三方设计工具,对嵌入式软件进行调试。 针对 Virtex -ⅡPro 系列器件中 PowerPC405 的设计和使用, Xilinx 公司基于 ISE4 . 2 系列软件推出了专用开发工具一 V2PDK ,基于 ISE5.x 系列软件推出了专用开发工具 EDK 。

Page 13: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

在基于 PowerPC405 的 FPGA 设计过程中,嵌入式软件工程师仍然可以独立地进行软件设计,硬件逻辑工程师也可以继续采用过去的设计方法。通过使用 Data2BlockRAM ,软件代码可以在 FPGA 中使用。 Data2BlockRAM 的主要作用是把软件代码( .elf 文件)、 FPGA 设计( .bit 文件)、 BlockRAM初始化数据( .bmm 文件)转换成新的 FPGA 设计( .bit 文件)和存储数据( .mem 文件)。 以下是嵌入 PowerPC405 的 FPGA 软硬件设计流程

Page 14: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

嵌入 PowerPC405 的 FPGA 软硬件设计流程

Page 15: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

⑤ 软件仿真与验证 目前,针对 Virtex -ⅡPro 系列器件中 PowerPC405 的软件开发, Xilinx 公司推出了两种软件开发工具: GNU 和 WindRiver XE 。其中,WindRiver XE 是 Xilinx 公司与 WindRiver 公司合作开发的嵌入式软件设计工具,它包括 Diab Compiler 和 Single Step Debugger 。 GNU 是 XilillX 公司自主开发的嵌入式软件设计工具。基于 GNU 的嵌入式软件设计主要包括编辑、编译、链接和调试等步骤。

Page 16: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

在 Virtex -ⅡPro 系列器件的硬件开发过程中,如果不使用 PowerPC4OS 内核,整个设计流程与普通 FPGA 的设计流程完全一致。如果使用 POwerPC405 内核,硬件设计应注意以下三点。 ①正确设计 PowerPC405 的外围总线和接口。 ②正确使用 PowerPC405 的仿真模型。目前, PowerPC405 的仿真模型包括:

Page 17: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

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 。

Page 18: 1.3.5 嵌入 PowerPC405 微处理        器的 FPGA 设计流程

③正确设计 PowerPC405 的初始配置。因为 Virtex -ⅡPro 系列器件中的 PowerPC405只有在 FPGA配置完成后才能正常工作,所以它不能对 FPGA自身进行下载配置。