异构多核SoC的体系结构设计方法_2

文档序号:9274459阅读:来源:国知局
由于信号从快时钟域传递到慢时钟域发生亚稳态的风险较低, 所以当freq_MP和freq_SP不同时,快时钟域的时钟同步寄存器深度取3,慢时钟域的时钟 同步寄存器深度取2。因此,通过相关专业知识背景的指导性原理和公式后,探索空间减小 为1种情况。
[0042] 协处理器个数的取值范围是6种情况,外部高速存储器的取值范围是4种情况。利 用枚举法,协处理器和外部高速存储器原本的探索空间是6*4 = 24种情况。但根据协处理 器的峰值带宽和外部高速存储器的峰值带宽性能手册,1片外部高速存储器最多连接4个 协处理器,否则数据带宽不够,协处理器处于"饥饿"状态,浪费计算资源。这样,同时考虑 到整个体系结构的对称性,此处的探索空间是2 (1、2)、4(1、2、4)、6 (2、3)、8 (2、4)、12 (3、4)、 16 (4),共12种情况,其中括号外数据指协处理器个数,括号内数据指外部处理器个数。因 此,通过相关专业知识背景的指导性原理和公式,SoC体系结构设计的探索空间从768000 种减少为16050种,探索空间大大化简。这不但减轻了设计人员的工作量,并且剔除了很多 不符合设计实情的备选方案,提高了设计结果的质量。
[0043] 在步骤S105,对所述第二SoC体系结构的探索空间中的变量进行选取得到变量的 组合,利用所述仿真的输入激励对各种变量的组合对应的SoC体系结构进行仿真,得到运 行时间,并对所述变量的组合对应的SoC体系结构进行综合,得到芯片面积和功耗。
[0044] 这里,从第二SoC体系结构的探索空间中随机选取变量组合,使组合的变量通过 仿真和综合,获得程序运行时间、芯片面积和功耗的性能指标。
[0045] 利用Synopsys公司的Design Compiler软件计算得到面积和功耗的性能指标。为 了加速合成速度,本方法对SoC体系结构中会变化的模块单独综合,结合未变化模块预先 获得的性能指标,通过累加估计整个芯片的面积和功耗。
[0046] 具体地,以128bit位宽、16个协处理器、4个外部高速存储器、每个总线桥写数据 通道fifo深度12,读数据通道fifo深度2等参数组合的SoC体系结构为例,其总线部分的 体系结构通过DC工具综合得功耗898mW,cell面积2202519,用时395分钟;通过单独模块 综合后,加和计算该部分得功耗为645mW,cell面积1886270,用时12分钟。可以看到,功 耗和面积的误差分别是28%和14%,但时间节省了 95%以上。
[0047] 在步骤S106,将所述变量的组合、所述运行时间、所述芯片面积和所述功耗通过 机器学习算法进行训练得到回归模型或分类模型。
[0048] 这里,回归模型可以是例如,但不限于,具体为M5P回归模型;分类模型可以是例 如,但不限于,具体为rankboost分类模型。
[0049] 具体地,首先使用Rankboost算法训练模型,用于样本的优劣性能比较。 Rankboost算法是利用带标签的样本进行两两之间的比较,学习特征的阈值,用于比较优 劣。由于训练过程是两两之间进行比较,所以原本N个带标签的样本,可以训练模型达C| 次,高效使用了样本。
[0050] 然后,利用rankboost的结果,辅助训练M5P回归模型,提高预测结果不准样本的 权重。最后,再利用大量未标签的样本进一步修正M5P回归模型,提高其精度。这样,两个 模型互相配合使用,不但能够排序选取优秀的SoC体系结构参数,同时还可以预测SoC体系 结构的性能指标。
[0051] 在步骤S107,根据所述回归模型或所述分类模型,探索所述第二SoC体系结构的 设计空间,并从中获取满足多个约束条件的SoC体系结构参数组合。
[0052] 进一步地,所述多个约束条件包括运行时间、芯片面积和功耗,所述并从中获取满 足多个约束条件的SoC体系结构参数组合包括:
[0053] 并从中获取满足所述运行时间、所述芯片面积和所述功耗的SoC体系结构参数组 合。
[0054] 这里,以芯片应用于100000个节点的电网体系为例,获取同时满足约束条件的运 行时间、芯片面积和功耗,如每次暂态分析的运行时间小于lms,单个芯片的功耗小于10W, 面积小于400mm 2。
[0055] 由于可以通过模型估计SoC体系结构的性能指标或者直接比较优劣,完成此步骤 的方法可以有很多,例如利用M5P回归模型做线性规划寻优。或者对一定集合的SoC体系 结构候选方案,依据某一性能指标排序后,二分法快速寻找合适阈值;然后再用同样的方法 筛选集合中满足另一个性能指标的候选方案,指导多个目标均满足为止。最后,建议对所选 的SoC体系结构方案进行完整的仿真和综合,验证性能指标是否满足要求。
[0056] SoC体系结构的设计工作贯穿于芯片设计、验证、实现的整个流程之中。设计人员 需要持有开放的态度,不断完善细节,优化结构直至流片。
[0057] 以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何 熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵 盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
【主权项】
1. 一种异构多核SoC的体系结构设计方法,其特征在于,所述方法包括: 根据应用领域算法中各个函数的运行时间和访问次数,获取第一调用函数集; 通过分析所述第一调用函数集的计算特征,设计仿真的输入激励; 根据应用领域的设计需求,确定第一片上SoC体系结构的探索空间; 对所述第一 SoC体系结构的探索空间进行修剪得到第二SoC体系结构的探索空间; 对所述第二SoC体系结构的探索空间中的变量进行选取得到变量的组合,利用所述仿 真的输入激励对各种变量的组合对应的SoC体系结构进行仿真,得到运行时间,并对所述 变量的组合对应的SoC体系结构进行综合,得到芯片面积和功耗; 将所述变量的组合、所述运行时间、所述芯片面积和所述功耗通过机器学习算法进行 训练得到回归模型或分类模型; 根据所述回归模型或所述分类模型,探索所述第二SoC体系结构的设计空间,并从中 获取满足多个约束条件的SoC体系结构参数组合。2. 根据权利要求1所述的方法,其特征在于,所述通过分析所述第一调用函数集的计 算特征,设计仿真的输入激励包括,重复执行以下处理,直至全部的输入数据计算结束: 将输入数据根据协处理器片内存储空间的大小进行分块得到分块的输入数据; 直接内存存取DM模块将所述分块的输入数据从片外存储器存入片内存储器,并调用 函数对所述分块的输入数据进行计算得到运算结果; 将所述运算结果从所述片内存储器存入所述片外存储器。3. 根据权利要求1所述的方法,其特征在于,所述变量包括协处理器的个数、高速存储 器的性能参数和所述高速存储器的个数、高速外设的性能参数和所述高速外设的个数、体 系结构互联拓扑结构、总线位宽频率和总线桥参数。4. 根据权利要求1所述的方法,其特征在于,所述多个约束条件包括运行时间、芯片面 积和功耗,所述并从中获取满足多个约束条件的SoC体系结构参数组合包括: 并从中获取满足所述运行时间、所述芯片面积和所述功耗的SoC体系结构参数组合。
【专利摘要】本发明提供的异构多核SoC体系结构设计方法,包括:根据应用领域算法中函数的运行时间和访问次数,获取第一调用函数集;通过分析第一调用函数集的计算特征,设计仿真输入激励;根据应用领域的设计需求,确定第一SoC体系结构的探索空间;修剪第一SoC体系结构的探索空间,得到第二SoC体系结构的探索空间;从第二SoC体系结构的探索空间中随机选取变量组合,对各组SoC体系结构进行仿真和综合,得到运行时间,芯片面积和功耗;将变量组合、运行时间、芯片面积和功耗利用机器学习算法,训练得到回归模型或分类模型;利用上述模型探索第二SoC体系结构的探索空间,并从中选取满足多个约束条件的SoC体系结构。本发明可以实现最优的异构多核SoC体系结构设计。
【IPC分类】G06F15/76
【公开号】CN104991884
【申请号】CN201510340625
【发明人】林忱, 杜学亮
【申请人】中国科学院自动化研究所
【公开日】2015年10月21日
【申请日】2015年6月18日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1