论文部分内容阅读
片上多核技术(NoC)作为当代集成电路设计的战略性技术,是当前集成电路领域的研究热点。NoC的核心思想是将以计算机网络通信技术移植到芯片设计中来,从而代替传统的总线通信架构,NoC在可扩展性、可重用性、设计效率、带宽、同步策略等方面具有无可比拟的优势,成为解决片上通信问题最有潜力的方案之一。
片上多核芯片实现的挑战之一,在于其软件设计与硬件结构的关系非常紧密,必须基于多核硬件体系结构进行并行编程和优化,才能合理分配和使用多核的各种硬件资源,更好地发挥多核硬件体系的性能。本文在阅读了NoC领域的大量相关文献基础上,首先对当前已发表的有关NoC的设计进行了分类、总结和比较,然后着重研究了面向层次化NoC的并行编程模型,设计了一款面向NoC的测试软件。
论文基于并行计算机集群和多核处理器平台介绍了并行编程模型、并行编程语言、并行编译器等并行编程技术。然后,论文着重分析了NoC多核处理器平台上的软/硬件协同开发、并行开发环境、并行编译技术以及当前国际上关于NoC并行编程的研究进展。
在此基础上,论文针对层次化NoC硬件体系结构,提出了一种混合并行编程模型,并给出理论分析和编程框架设计。混合并行编程模型的优点在于该编程策略和硬件体系结构紧密吻合。为测试该混合并行编程模型的效率,本论文设计了一个实验,采取了混合并行的编程方式,基于计算机集群进行测试,并分析测试结果。实验发现,混合编程模型提高了并行加速比,能很好地发挥多核处理器硬件的优势。
最后,论文基于项目组自主设计的H3MP-16多核处理器,在Linux操作系统下设计了一套用于测试该处理器性能的流媒体演示系统,该系统使用原始套接字进行数据包收发,实现了ffmpeg的在线传输、同步播放,实现了完全同步、无乱屏并能对丢包率进行统计,对播放速率、效果进行调节的流媒体演示系统,为多核处理器提供了一个良好的测试和演示平台。
目前,NoC的软件设计还停留在初期阶段,本文的工作面向NoC并行软件的实现,致力于探索和解决NoC软件并行化可能遇到的问题,为设计基于NoC的软件积累了经验。