【学习目标】 掌握研制逻辑综合软件的基础知识。 如果你希望成为一个逻辑综合软件的开发者,本章内容是必要的基础知识。 如果你希望成为一个数字集成电路的设计者,学习本章内容之后,在使用商品EDA工具时,由于理解其内部原理而得心应手。 【学习指南】 预备知识: 1. 数字逻辑及数字集成电路。参考书:《数字逻辑及数字集成电路》,王尔乾、巴林凤著,清华大学出版社,1999。 2. 高级程序设计语言(C或Pascal)。 在《数字逻辑及数字集成电路》一书中介绍如何手工设计数字集成电路,现在研究如何让软件工具代替手工完成同样的任务,因此更注意定义的抽象化和形式化,要适应这一转变。如果对抽象的定义不理解,自己可以设定一些具体例子和手工方法加以对比,加深理解。 通过手工做习题加深理解。 用高级程序设计语言(C或Pascal)编写一段程序实现书中算法,就会有更深入的理解。编程的工作量比较大,可从本章习题中选择若干作为练习。实践出真知,如果没有编程的实践,就很难理解算法的内涵及判断算法的优劣。所以最好的学习方法是编写一段程序实现书中的算法,输入适当的数据,观察输出结果是否和预期结果一致。不过编程的工作量比较大,根据个人情况适当选作一些题目。通过编程对算法有了深入理解之后,还有可能改进原来的算法。 【难重点】 布尔函数的立方体表示: (1)新概念 (2)抽象的定义 立方体运算: (1)新概念 (2)抽象的定义 求最小化覆盖的算法: (1)抽象 (2)高度精练 算法指导编程,高度精练的算法才能编写出好程序,所以抽象和精练是算法描述的特点。编写一段程序实现书中的算法,输入适当的数据,观察输出结果是否和预期结果一致,能加深对算法的理解。 有限状态机的状态最小化 【课前思考】 【知识点】
|