论文部分内容阅读
动态配置是指依据外界需求对系统的功能做出灵活的调整或改变。本文提出了一种SoPC(System-on-a-Programmable-Chip)平台下的SCI(Serial Configuration Interface)动态配置电路架构,设计了动态配置控制程序和多种应用功能,实现了高性能的动态配置效果。SCI——串行配置接口,是配置数据与FPGA之间的通道。与常见的JTAG配置方式不同的是,SCI接口配置FPGA属于从串模式配置,FPGA被当做配置的从设备,外部有一个CPU作为配置的主动方。因此,完整的动态配置系统包括一颗自主SoPC芯片、外围开发板电路和指令控制终端等。SoPC芯片由国产龙芯LS232芯片和自主FPGA通过AMBA总线互联,并在总线上挂载SDRAM控制器、UART、SPI Flash、SCI等模块,最后基于SMIC 65nm工艺流片得到。同时,设计了开发板平台电路对芯片进行测试。其中,SCI模块和配置电路设计是整个系统的特色。本文着重介绍了动态配置几大关键组成,包括NAND Flash控制器、SCI控制器和SCI动态配置软件设计。NAND Flash是动态配置数据的存储区域,也是功能设计中图片、音频等数据的存放位置,主要介绍了NAND Flash的特点、组成和使用方法。SCI控制器作为动态配置的核心,主要由SCI_REG模块SCI_FIFO模块和SCI_CTRL模块三大部分组成,论文较为详细地分析了每一模块的设计与功能。利用MIPS汇编语言开发了完整的动态配置控制程序,实现了CPU的启动,串口、SDRAM等外设的初始化和动态配置控制。介绍了程序的编译流程和调试方式。依靠外围开发板电路对NAND Flash控制器进行了多项功能的测试,验证了SCI模块配置FPGA的可行性,并测试两个控制器的工作速度。论文以图表等形式给出了详细的测试结果。利用硬件描述语言开发了包括时间、动态图像、游戏、屏保、超声波测距、图像处理在内的多种应用功能,并将应用功能的配置比特流数据依次存放到NAND Flash中。在SCI动态配置软硬件的协同下成功实现了应用功能之间的切换配置。相比于国内现有的同类产品,本动态配置方案具有速率更高、控制更方便、容量更大、切换更灵活的优点。