【学习目标】 掌握高层次综合的基本概念和算法。 ·如果你希望成为一个高层次综合软件的开发者,本章内容是必要的基础知识。 ·如果你希望成为一个数字集成电路的设计者,学习本章内容之后,在使用商品EDA工具时,由于理解其内部原理而得心应手。 【学习方法】 ·注意对基本概念的理解。如果对抽象的概念暂时不理解,可以继续读下去,后面的实例会帮助你理解这些概念。 ·通过手工做习题加深理解。 ·用高级程序设计语言(C或Pascal)编写一段程序实现书中算法,就会有更深入的理解。编程的工作量比较大,可从本章习题中选择若干作为练习。通过编程对算法有了深入理解之后,还有可能改进原来的算法。 【学习指南】 ·预备知识: 1. 硬件设计的基础知识; 2. 算法的基础知识。 ·认识到数字系统的描述和处理是分层次的,例如高层次综合、逻辑综合以及版图综合等。高层次综合是在逻辑综合的基础上发展起来的。人们希望有更简洁、抽象的描述方式(行为描述)和功能更强的综合工具。 ·把高层次综合与逻辑综合(第4章)作对比,了解二者的差别和联系,加深理解。 【难重点】 1. 高层次综合工具的输入是目标电路的行为描述,输出是目标电路的结构描述,了解行为描述和结构描述的差别和联系。 2. 高层次综合与逻辑综合之间的差别和联系。 3. 高层次综合的中间表示格式:控制流图、数据流图以及控制数据流图。 4. 调度技术: ·ASAP调度算法 ·ALAP调度算法 ·列表调度算法 ·调度中控制结构的处理 5. 分配技术 ·图着色算法中的冲突图和着色算法 ·基于图着色算法的功能单元分配 ·基于图着色算法的寄存器分配 ·互连线路的分配 6. 调度与分配之间的相互影响 7. 高层次综合中的优化技术 ·操作移入/ 移出条件分枝 ·控制数据流图的结构变换 8. 控制器综合 【课前思考】 【知识点】
|