论文部分内容阅读
多处理器片上系统已成为下一代嵌入式系统发展的潮流。由于各FPGA器件生产厂商、开源组织、第三方芯片设计公司已开发了大量经过验证的优秀IP软核。因此,本文重点研究使用IP软核复用技术构建在FPGA上运行的多处理器系统,尝试在不改动IP核内部逻辑的情况下实现片上多处理器的互连,解决多处理器间的通信问题和缓存一致性问题。
本文在研究分析FPGA器件、IP核复用技术、SOPC技术的特点以及四种常用的CPU软核的特性之后,论述了基于IP软核复用技术的多处理器片上系统的基本结构、系统开发流程、可复用IP核的获取途径,以及与硬件开发过程并行的操作系统的移植过程。
相对于单处理器系统,多处理器系统需要解决处理器之间的通信问题,本文系统地论述了在不改动通信IP软核内部逻辑的前提下,多处理器片上系统中的处理器的通信问题的IP核复用解决方案,包括多处理器的拓扑结构的选择和通信IP核的选用。同时,在不改动所复用的CPU软核的Cache控制器的前提下,采用总线监听协议,区别对待“写直通”缓存和“写回”缓存,实现多处理器缓存的一致性。
本文有针对性地选择了轻量级的CPU软核Nios Ⅱ(没有MMU,只能移植uCLinux等轻量级操作系统)和全功能的CPU软核OpenRIsc 1200(带MMU,可以移植全功能Linux),分别就这两种软核的复用构建了两个多处理器基本平台,文中提供了这两个多处理器基本平台的具体实现步骤,并就复甩OpenRISC 1200的多核系统给出了多核取指功能仿真验证。
文章最后构建了一个基于IP软核复用技术的多处理器片上系统应用实例:在FPGA上实现基于SOPC技术的多CPU软核B/S系统。通过该应用实例探讨了在基于IP软核复用技术的片上多处理器系统中进行系统架构的方法和应用软件的开发方法,在基于IP软核复用技术的多处理器片上系统上移植了DBMS、Web Server等系统软件。
使用IP核复用技术构建在FPGA上运行的多处理器系统,能够缩短多处理器系统的开发周期,构建的多处理器系统有着良好的可配置性与可扩展性,在嵌入式系统的设计中,有着广泛的应用前景。