论文部分内容阅读
随着半导体制造工艺的不断进步,嵌入式微处理器早已进入多核时代。由于嵌入式系统应用的不断丰富,使得嵌入式系统结构的设计目标逐渐从以前的以微体系结构为中心过渡为以目标应用为中心,而设计模式则从应用适应体系结构转变为系统结构适应具体应用。如何面向应用设计高效能、高可用的系统体系结构成为多核时代的研究主题。粗粒度可重构体系结构和应用定制指令集处理器是嵌入式系统中两种主流的领域应用定制的高效体系结构。粗粒度可重构体系结构存在应用计算过程中硬件资源利用率低以及软件编程能力较弱等问题,而应用定制指令集处理器则在定制结构设计及多核结构下的性能优化等方面面临挑战。本文工作主要针对这两种主流体系结构,研究面向具体领域应用的高效体系结构定制设计实现技术和优化方法。本文的主要工作和贡献如下:1、粗粒度可重构体系结构方面,通过对比分析现有的几种主流体系结构抽象模型,提出了一种基于可编程数据流计算的体系结构框架ProDFA并设计实现了一种高效支持分组密码算法的可重构SoC体系结构。ProDFA体系结构框架通过采用细粒度长时控制逻辑,将灵活的可编程特性与高效率的数据流计算特性相结合,可实现灵活可编程的高效能计算过程;基于ProDFA体系结构框架设计实现的可重构SoC,其可重构协处理部分采用四个可重构处理单元和一个可重构节点控制单元,利用配置描述语言CDL手工编写算法计算过程并采用辅助工具进行同步优化的方式,实现了对主流分组密码算法的高效支持;通过与多个算法定制电路进行性能和硬件开销的对比分析,表明该可重构结构具有良好的硬件执行效率和很高的执行性能,证明了可编程数据流计算结构的灵活可编程特性和高效计算特性。2、可重构结构的领域应用定制设计方法方面,提出了一种面向可重构功能单元应用定制的候选功能子图快速生成方法。该方法通过将自顶向下的最大有效子图枚举算法与拓扑序遍历搜索算法相结合,实现了对应用程序数据流图最大有效子图快速枚举并确认候选功能子图的过程。采用对无效节点的分簇算法,有效减少数据流图中的无效节点个数;基于无效节点消除的图拆分算法,实现对应用程序数据流图的最大有效子图枚举;在枚举过程中引入数据流图的拓扑序,继而采用基于拓扑序的遍历搜索算法,通过引入可重构功能单元的设计约束作为启发式规则,对搜索空间进行有效裁剪,加速搜索算法的执行过程;最后通过对确认的候选数据流子图进行相似性判断,将候选数据流子图进行分类,用于指导可重构功能单元的设计。通过与传统的自底向上设计方法和基于图拆分子图枚举算法的性能对比,本文提出的候选功能子图生成方法速度更快,结果更直观有效。3、应用定制指令集处理器体系结构方面,面向嵌入式可视媒体处理应用,设计实现了一款异构多核SoC芯片——EVMPSoC。EVMPSoC是由一个高性能嵌入式微处理器核与两个SIMD应用定制协处理器核构成的异构多核SoC芯片,采用0.13um CMOS工艺流片。两个SIMD结构的应用定制协处理器具有相同的基本指令集,但两者分别针对可视媒体处理应用中的不同应用类型进行应用指令集定制设计;通过将应用定制处理器核与显示驱动模块和大位宽存储接口紧耦合,设计多通道通信访问控制模块,实现协处理系统的高效独立运行。通过多个应用计算内核的性能测试表明,应用定制协处理器核具有良好的计算性能,获得相对主处理器较大的加速比。最后通过一个可视媒体处理的典型应用验证了该芯片的高效率和对应用的良好适应性。4、异构多核SoC性能优化方面,针对所设计的EVMPSoC,提出一种基于多面体循环仿射转换的异构多核计算性能综合优化方法。利用多面体模型的循环仿射转换技术所具有的并行性优化和局部性优化相统一的特点,针对EVMPSoC片内所具有的SIMD数据级并行、多核并行和存储流水化并行等三种并行性,综合采用嵌套循环的向量化、多级划片和循环片流水技术,实现嵌套循环在EVMPSoC上的计算性能优化。针对三种典型应用算法,进行嵌套循环的性能优化实验,结果表明,使用综合优化技术之后,三种应用算法计算时间明显缩短,获得较好的优化效果。