论文部分内容阅读
随着超大规模集成电路技术的迅速发展,片上系统(System-on-Chip,SoC)的集成度不断增高,系统功能日益丰富,设计复杂性越来越大,SoC设计方法学面临严峻的技术挑战。SoC设计的主要目标是能高效运行系统应用程序,并实现低功耗和低成本。对应用程序特征进行充分而有效的分析,是设计实现SoC应用高效能的有效技术途径。本文面向粗粒度可重构密码处理SoC体系结构设计和系统任务分配的需求,研究SoC应用程序特征分析方法,研究基于应用特征分析的SoC任务分配方法,以及相应工具的设计实现技术。完成的主要工作如下:1.粗粒度可重构密码处理SoC采用可重构协处理器进行加速,协处理器可重构运算部件的指令集对应用程序的适用程度,决定了粗粒度可重构加密SoC芯片在实际应用中的效果。本文以应用程序特征分析为基础,提出了一种可有效支持可重构协处理器指令集设计的应用特征自动分析方法。该方法可自动生成可视化的密码算法控制流图,自动分析程序的计算特征、指令序列特征、操作数特征,循环特征、循环结构特征和核心循环特征、自动提取核心代码块等,为粗粒度可重构密码处理SoC体系结构设计,提供可靠的分析结果。2.提出了一种基于应用程序特征分析的可重构密码处理SoC任务分配方法。该方法使用图节点多着色模型描述任务分配问题,并使用课题组提出的进化蚁群算法进行分配空间探索,寻找高质量的分配方案。实验结果表明:相对于同类典型方法,本文方法可以获得高质量的分配解,并较大幅度地加快了收敛速度,对提高粗粒度可重构加密SoC处理性能具有重要作用。3.采用所提出的方法,实现了一个SoC应用程序特征分析工具原型和一个基于应用程序特征分析的SoC任务分配工具原型。利用程序特征分析工具对典型的几种加密算法进行分析,得到了可重构协处理器指令集和体系结构设计所需的特征信息;在粗粒度可重构加密SoC体系结构确定的基础上,利用基于应用程序特征分析的SoC任务分配工具,对典型密码应用处理任务进行自动分配,结果以简明直观的方式提供给SoC设计人员,有利于提高可重构密码处理SoC任务分配的质量和效率。典型的应用实例,验证了本文方法的有效性。本文方法不仅可以辅助支持粗粒度可重构SoC专用指令集设计与SoC任务分配工作,同时也可为其它领域的程序分析、SoC编译优化等工作提供一定的设计辅助指导。