论文部分内容阅读
二维SIMD结构是在嵌入式系统中提高多媒体处理能力的有效系统结构。该结构是指N X N个处理单元按一定的拓扑结构连接而成的阵列结构,同行/列的处理单元以SIMD的方式工作,不同行/列相当于并行执行的SIMD功能部件。基于这种结构数据和计算的并行性,它通常被作为多媒体加速部件与通用处理器核集成在一个SOC上,并由通用处理器完成应用程序中串行部分的计算。目前,二维SIMD结构在学术界和工业界都很受关注,许多高校和公司均有基于二维SIMD结构的产品。
虽然二维SIMD结构作为多媒体加速部件已经得到了越来越广泛的应用,但是如何充分利用二维SIMD结构的并行特性加速应用程序,还有很多尚未解决的问题。在这种情况下,程序员只能通过编译器有限的支持来使用二维SIMD结构,例如通过内嵌汇编代码显示地使用二维SIMD结构的并行性。这就要求程序员深入了解二维SIMD结构的体系结构特征,并且具备相当的并行处理代码开发能力。由于二维SIMD结构本身在结构上的复杂性,包括一些基于功耗和芯片面积的考虑而产生的结构上的限制,都大大降低了程序员为二维SIMD结构直接编程的可能性。为了解决这个问题,我们必须研究针对二维SIMD结构的编译优化技术,使得编译器能够使用二维SIMD结构的指令集优化高级语言编写的应用程序。
目前,现有的针对二维SIMD结构的编译技术也仅是通过匹配应用程序中固定模式来生成特定格式的汇编代码,并且对应用程序的并行性进行了一些假设,因此具有很大的局限性。本文在针对二维SIMD结构编译优化方法上,在以下几个方面给出了创新性的研究。
1.对目前出现的二维SIMD结构的结构特征进行了分析,总结了目前该类型结构的典型特征和缺陷。
2.针对二维SIMD结构共享数据总线这一限制,提出了一种高效的流水优化方法。
3.针对二维SIMD结构中各PE 间的互连方式,提出了一种新的资源分配方法。