论文部分内容阅读
随着FPGA(Field Programmable Gate Array)的应用越来越广泛和基于SRAM工艺的FPGA通过修改配置存储器即可方便实现系统升级,设计人员一直在寻求实现FPGA系统升级尤其是系统远程升级的方案。目前已经提出了基于单片机、ARM、CPLD或者是主控FPGA的远程升级方案,但是这些方案都需要外部控制器对待配置FPGA芯片进行配置控制,增加了电路设计的复杂度和配置出错的几率,同时也提高了系统设计的成本。针对以上方案存在的不足,本文提出了一种通过TCP/IP协议实现远程升级数据的传输,在单片FPGA芯片上实现系统升级的方案。对于本方案的研究,论文主要完成了以下的工作:(1)系统总体方案设计分析TCP/IP协议进行远程升级数据传输的软硬件需求,最终选用了嵌入式SOPC+μC/OS-Ⅱ+LwIP的总体设计方案;并完成了SOPC片上系统的组建、μC/OS-Ⅱ精简指令集实时操作系统和LwIP协议栈在Nios Ⅱ CPU的移植;在eclipse软件中编写了相应的测试代码,通过JTAG调试工具在Nios Ⅱ console窗口显示测试结果,验证了移植的正确性;(2)系统硬件平台设计分析了FPGA远程升级系统和自身功能系统的对资源的需求,对硬件电路进行了模块划分,并选择合适的芯片,在Altium designer软件中完成了原理图设计、PCB电路图设计;对设计完成的电路板进行了焊接和测试,解决了设计中的问题,实现了硬件平台的正常工作;(3)以太网收发芯片IP核的设计用硬件描述语言设计了以太网收发芯片MAC子层通信的IP核代码,在Qsys工具中实现了IP组件的生成;在eclipse软件中,通过PC机与设计的IP组件进行通信,在Nios Ⅱ console窗口中显示获取到的结果,从而验证了设计的正确性。(4)集成设计的各个部分,验证系统设计的功能把设计的各个功能部分集成在一个系统中,设计了远程系统升级的流程,编写了相关的测试代码,在实验室项目LED大屏幕控制系统中进行远程升级测试,结果成功实现了FPGA的远程升级。