首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Linux在Xilinx FPGA上的移植

Linux在Xilinx FPGA上的移植

1 引言
嵌入式系统是以应用为中心、以计算机技术为基础, 软硬件可裁, 符合应用系统对功能、可靠性、体积、功耗等严格要求的专用系统。SOPC技术作为一门全新的综合性电子设计技术, 结合了片上系统SOC和PLD、FPGA各自的优点, 集成了CPU、DSP、存储器、外围I /O及可编程逻辑, 它涵盖了嵌入式系统设计技术的全部内容, 是目前嵌入式系统设计的中坚力量。随着SOPC技术的发展, FPGA规模的不断扩大, 将处理器嵌入到FPGA 中成为必然的发展趋势。Xilinx公司结合其Virtex- II pro等芯片在FPGA中嵌入了PowerPC处理器硬核。在FPGA中嵌入处理器一方面可以充分发挥FPGA 吞吐率大,资源丰富等优势, 另一方面结合处理器的特点, 在内嵌的处理器中编写C代码完成既定任务, 实现FPGA与DSP处理器的结合, 这也是今后发展的必然趋势。
对于嵌入式系统而言, 应用程序可以没有操作系统而直接在芯片上运行, 但随着应用复杂度的不断增加, 多任务需要合理的调度, 系统资源、系统函数以及专有函数接口需要得到充分的利用, 此时选配嵌入式操作系统开发平台便显得尤为重要。因为只有这样才能保证程序执行的实时性和可靠性, 并减少开发时间, 提高软件质量。而Linux作为一个免费的操作系统, 由于其具有开放源代码、内核稳定、功能强大、可裁剪和低成本的特性, 而倍受嵌入式开发者的青睐[ 3]。
本系统结合Xilinx公司推出的基于SOPC技术的嵌入式处理器PowerPC硬核, 在XUP Virtex2II Pro开发平台上, 将Linux操作系统嵌入到PowerPC405处理器中, 最后给出了一个成功运行的测试实例。
2 SOPC技术及PowerPC硬核介绍
所谓SOPC( System On Programmab le Chip)即可编程的片上系统, 在一片系统芯片上通过编程来实现一整套嵌入式系统的搭建。SOPC技术尽可能在单片FPGA上集成大规模的完整的电子系统, 包括处理器系统、外设控制器系统、存储器、DSP系统、通信系统和普通的数字电路逻辑等, 从而使得电子电路系统在功能、规模、可靠性、体积、功耗、性能指标、上市周期及其硬件升级等多方面达到综合上的最优化; SOPC设计技术是一门全新的综合性电子设计技术, 涉及面很广, 它将普通EDA 技术、计算机系统、嵌入式系统、工业自动化控制系统、DSP及无线电等融为一体, 涵盖了嵌入式系统设计技术的全部内容; 同时它结合了SOC 和PLD、FPGA 各自的优点, 集成了CPU、DSP、存储器、外围I/O及可编程逻辑, 用户可以利用SOPC平台自行设计各种高速高性能的DSP处理器或特定功能的CPU处理器, 从而使得电子系统设计进入了一个全新的模式[ 1]。
Xilinx公司结合其高端芯片Virtex- II Pro和Virtex 4 FPGA推出了全新的嵌入式开发系统, 利用先进的IP植入技术, 实现以硬核PowerPC405或软核Microblaze 32位处理器为核心的SOPC系统。本系统将L inux操作系统移植到内嵌于芯片Virtex-II Pro的PowerPC405硬核中, 并完成了相应的测试, 其开发平台是ML300。
PowerPC405是一个32位、采用IBM. PowerPC体系结构的嵌入式处理器。它的运行频率高达400MH z; 具有5阶段流水线; 32* 32bit通用寄存器;增强的指令和数据片上存储器控制器, 直接与嵌入式块RAM接口; 支持JTAG调试和跟踪; 新的辅助处理器单元(APU)控制器, 使CPU管道直接与FPGA 架构接口; 同时支持用户定义的指令等等, 这些都使得移植Linux 到该目标板上成为可能。另外PowerPC405处理器采用IBM CoreConnect总线技术, 该总线结构由处理器局部总线( PLB)、片上外设总线(OPB)和设备控制寄存器总线(DCR)组成。PLB总线为片内的高速数据通道, 通常连接高速外设、DMA存储控制器等; OPB总线通常用于连接速率较低的片上外设, 如串口、键盘等; PLB总线和OPB总线通过总线桥接器相连。DCR 总线用于实现PowerPC的通用寄存器与逻辑设备控制寄存器的数据通信。
嵌入式系统设计涉及了硬件和软件的开发以及两者的综合设计。针对Linux的移植问题, 硬件部分采用的开发工具是Xilinx公司提供的功能强大、操作简单的工具集EDK911。EDK自带了许多工具和IP, 主要包括Xilinx平台工作室XPS、软件开发套件SDK和XMD, 可方便的规划、设计并生成整个片上系统的硬件和软件结构。软件部分主要指内核配置部分在L inux操作系统下完成, 最终的检测部分则在XMD下实现。
将Linux嵌入到PowerPC中的设计流程见图1。

3 搭建硬件平台及软件平台设置
311 硬件平台设置
针对实际的需要及现有的硬件条件, 利用EDK开发工具, 搭建具有下面特性的硬件平台。
( 300MHz处理器时钟频率;
( FPGA JTAG编译;
( 串口OPB- UARTLITE (波特率9600, 数据宽度8位, 无奇偶校验);
( CF卡控制器SysACE;
( 256MB内存DDR以及LED, 以上各个部件都有中断支持。具体的硬件信息如图2所示。通过执行EDK中的命令Generate Bitstream产生包含上述信息的比特流文件( led-linux. bit)。

继承事业,薪火相传
返回列表