论文部分内容阅读
随着半导体工艺的发展,在单一芯片上集成多个处理器核已成为可能,在高端应用需求的驱动下,片上多核系统为高度并行的计算和通信提供了一种可行的解决方案。从上世纪90年代开始,多核处理器逐渐从研究领域进入商业应用,在这个处理器更新换代的时期,各种新兴的小公司开始崭露头角,夺走了不少原来被世界几大处理器公司垄断的市场份额。这启发着我们要及时抓住时代发展的契机,使中国在多核处理器时代能够进入项尖水平的行列,在处理器领域不再受制于人。
本文设计了两款基于不同通信架构的多核处理器系统。一款基于AMBA-AHB总线架构,是一个层次化的多核模型,每个核在本地总线中具有各自的私有存储器,存放启动代码、应用程序和私有数据;在全局总线中所有核共享一个全局存储器存放共享数据,一个同步存储器存放同步信息;本地总线通过AHB-AHB桥与全局总线进行通信和数据交换。另一款基于片上网络通信架构,本地系统与总线架构下的相同,本地系统、全局存储器和同步存储器通过各自的网络接口模块连接到片上网络的通信节点上。文中以四核为例,分别对这两个体系架构进行了RTL级建模,并实现了FPGA原型。
除了硬件架构以外,并行化软件设计是多核处理器领域另一个重要的研究方向。本文以传统的串行JPEG解码程序为例,针对四核处理器架构进行任务分解,实现了粗粒度和细粒度两种并行化方案,然后以此为应用对两个四核处理器FPGA原型进行了功能验证。理论计算和实际运行表明JPEG解码的内在特性使它在粗粒度的并行情况下能够达到更好的性能,总线结构的最大加速比是2.23,片上网络结构的最大加速比是2.17。
在研究了简单的层次化总线结构和片上网络结构之后,本文以SystemC语言设计了一款基于层次化片上网络通信架构的64核网络处理器的系统级模型,其中通信节点采用了独特的包/电路交换策略,兼顾了整个系统对高带宽和高实时性的要求,并以IPv4数据包为例介绍了其处理网络数据包的基本流程。然后简单介绍了多核处理器系统的并行编程模型,并以本文层次化片上网络通信架构多核处理器为基础,规划了一个并行编程模型的实施蓝图。最后,定义了一套面向层次化多核处理器的软/硬件协同开发平台的方案,目标在于实现系统开发流程的并行化和自动化,以提高本项目多核处理器设计的效率和成功率。
本文的研究集中在多核处理器的硬件架构设计上,并兼顾并行编程和开发环境的设计,致力于实现一款高性能、低成本的基于层次化NoC通信架构的64核网络处理器,同时解决开发过程对统一平台的需求问题,为本项目的后续发展奠定了良好的基础。