论文部分内容阅读
目前基于FPGA(Field Programmable Gate Array)嵌入式系统已广泛应用于航空、智能家电和数据采集等领域,尤其在航空领域系统远程升级维护极其重要。由于嵌入式系统硬件资源有限,需通过静态或动态重构实现硬件资源复用。静态重构会终止整个系统运行,影响系统效率和稳定性。而动态重构能在不影响其它功能情况下,实现新功能配置,对嵌入式系统发展尤为重要。单核处理器往往能较好处理某一任务,但异构多核系统组合具有不同优势的处理器,可高效完成复杂计算任务。本文提出并实现了基于异构多核的远程动态可重构SoPC(System on a Programmable Chip)系统,其硬件子系统采用EAPR(Early Access Partial Reconfiguration)方法设计实现,软件子系统设计遵循MVC(Model View Controller)框架的业务逻辑与数据显示分离思想。首先对硬件子系统进行了模块化设计,其中包括有32位符号整型加法器和乘法器可重构IP核及其接口模块、远程重构所需的以太网、内部配置访问端口ICAP和CF卡接口控制模块等的设计实现。运用所设计的这些功能模块实现了基于单MicroBlaze软核的远程动态可重构SoPC。此后使用MicroBlaze核和PowerPC硬核构成异构多核架构,PowerPC主处理器负责硬件资源局部重构等工作,MicroBlaze处理器负责软件程序运算验证工作。最终融合所设计的各个功能模块,经布局布线配置完成完整的硬件子系统。软件子系统运用YUI等Web前台技术完成了页面展示和事件响应;通过XHR注入技术实现了Web命令异步传输;使用C语言实现了包括动态部分重构、多核交互验证、文档浏览、更新配置文件等功能的后台Web服务。两个SoPC都具有远程局部重构加法器、乘法器和空操作功能,可进行远程系统升级和切换,Web网页能实时显示操作响应时延和重构状态信息。系统操作方便易于维护,尤其设计的异构双核架构和在线升级使系统扩展性强,有效降低了系统重构时间。实验证明两系统在Virtex5ML507FPGA上运行稳定,且系统在线传输速率、远程局部重构时延及Web响应时延评估数据表明该方案可应用于远程重构实际场景。