论文部分内容阅读
随着集成电路加工工艺的发展,芯片集成度越来越高。据估计在2010年,单个芯片上可以集成数十亿只晶体管。如此大规模的晶体管可以使设计人员构造功能更为复杂的系统,但如何有效地使用如此数量的晶体管高效地完成设计,是IC自动化设计领域急需解决的问题。
行为综合是高层自动化设计技术,它是指将高级语言所描述的行为表示向寄存器级结构描述转换的过程。行为综合的设计抽象层次高于传统的RTL级设计,因此其设计效率也更好。行为综合广泛应用于数字信号处理中,数字信号处理算法通常包含大量的循环结构,功能流水线是提高算法循环结构执行速度的关键技术。
本文第一部分对当前行为综合技术的发展现状进行了扼要介绍,说明了当前存在的关键问题,讨论了本文课题的选题依据和研究价值,之后阐述了本文主要的研究内容。
本文第二部分介绍了行为综合理论并讨论了功能流水线调度问题。行为综合可以划分为数据通道设计和控制器设计。数据通道设计又包括调度和分配。功能流水线调度属于行为综合数据通道设计中的调度问题。
在本文第三部分中,作者在引入蚁群优化算法(ACO)的介绍和现有功能流水线调度算法存在的不足的讨论后,提出了一种新的行为综合功能流水线调度算法——负载平衡蚁群调度算法(Load-Balanced Ant Colony Optimization Scheduling,LB-ACO)。LB-ACO算法基于蚁群优化算法(Ant Colony Optimization,ACO),借用力向算法(Force-Directed Scheduling,FDS)负载平衡的思想来确定局部试探因子,以调度结果评估方程来更新全局因子。LB-ACO算法具有以下几个方面的特点:
(1)它可以解决时间约束和资源约束两方面的功能流水线调度问题。功能流水线调度算法一般区分为时间约束和资源约束两类,LB-ACO算法对这两类问题都可以解决。
(2)调度结果较优,调度性能稳定。LB-ACO算法的调度结果优于大多已有算法。而且,在所选择的测试用例上,算法调度性能稳定。
(3)运行时间复杂度低。LB-ACO算法是一种进化类算法,它达到了与构造类算法力向列表算法相同的时间复杂度O(cn2);
(4)同样适用于非流水线调度。力向算法可以进行一般调度和流水线调度,如果LB-ACO算法使用力向算法中的非流水线分布流图来确定局部试探因子,那么它就可以解决行为综合的一般调度问题。
本文最后一个部分是实验结果。作者介绍了行为综合中的两个通用测试用例:1)五阶有限滤波;2)16-point有限滤波器。为了验证算法性能,5种算法在这两个测试用例上进行了比较。实验结果表明,LB-ACO算法在保证较低运行时间复杂度的前提下,能够稳定地获得近似最优的调度结果。与此同时,本文也选取了LB-ACO算法的时间约束和资源约束的调度结果,使用行为综合自动化设计理论产生了数据通道实现方案的逻辑电路图。