图书前言

前    言

    本书的写作目的是希望可以作为计算机科学、计算机工程及电子工程专业的学生进行相关知识学习的入门书籍。第Ⅰ部分适合作为逻辑设计方面一个学期课程的教材1。本书完全可以作为初学者的教材,当然,若学习过工程导论类课程或初级编程课程会对本书的学习有所帮助。第Ⅱ部分主要介绍了计算机的设计,用到了第Ⅰ部分介绍的知识。本书可分为两个学期进行学习,也可节选其中的部分内容在一个学期内进行学习。

  本书着重于基本原理的介绍,通过大量的示例进行讲解。作者认为学习设计的唯一方法就是多练习。因此,本书除在正文中有大量示例外,每章中都有一套例题,提出问题并给出了解题步骤。此外还设有章节测试(答案见附录C)以及大量的习题(附录B中给出了部分习题的答案)。

  尽管目前大型系统设计已大量使用计算机辅助工具,但必须首先掌握基础知识。本书内容完全满足初等教程的要求。第4、第7章中关于硬件设计语言(HDL)部分的内容可作为学习基于某种计算机辅助工具类中级教程的基础知识。对于计算机设计方面的内容,我们介绍了一种简化的HDL语言,掌握该部分内容后我们不需花费额外的时间来学习诸如Verilog或VHDL等商用工具即可实现对硬件的描述。

  第1章除对本书进行了一个大致介绍外,还介绍了本书将用到的数制系统的相关内容(若读者在之前的课程中已学习过相关知识,可将本章跳过)。

  第2章介绍了组合系统的设计步骤以及真值表的推导。随后介绍了开关代数以及使用通用门——与、或、非、与非、或非、同或、异或等执行开关函数。此处仅讲述了门的逻辑执行,并非电路执行。

  第3章介绍了使用卡诺图来简化组合系统的方法,给出了解决单路及多路输出问题的方法(5种不同方式)。

  第4章涉及的是大型组合系统的设计。介绍了大量商用的可用大型器件,包括加法器、比较器、译码器、编码器以及优先编码器、多路器等。对用于中型组合系统中的ROM、PLA及PAL逻辑阵列的使用进行了讨论。随后介绍了硬件设计语言。最后是两个较大系统的设计。

  第5章介绍了时序系统。首先从锁存器及触发器功能开始介绍,然后讨论了对时序系统动作的分析技巧。

  第6章介绍了时序系统的设计过程,然后介绍了计数器的特殊情况。最后,给出了用文字说明的问题的解决方法,以及根据问题的文字描述如何写出其特性表及状态图。

  第7章介绍了大型时序系统。首先是移位寄存器及计数器的应用。然后,介绍了PLD(带存储器的逻辑阵列)。接着介绍了三种在更复杂系统设计中常用的技巧,分别是ASM图、一位热码编码及HDL。最后给出了两个大型系统的设计示例。

  第8章讲述的是计算机结构,其中讨论了计算机的基本结构及不同的寻址模式和指令类型。

  第9章着眼于大型计算机中移动数据时的逻辑需求及控制器的结构。我们介绍了数字设计语言(DDL),一种描述一个数字系统功能的简单符号语言。在这里我们没有选择使用商用系统,因为若使用这些商用系统的话,对系统本身细节的介绍将会转移本书介绍设计基本概念的初衷。

  第10章详细介绍了一个示例计算机MODEL的设计。我们设计了其控制顺序并检查了其所需的时钟数。

  第11章介绍了计算机系统中其他器件与CPU间的交互,主存储器、二级存储器及输入/输出控制器。

  本书的一个特点是例题。每章(除第11章,该章主要是描述性的)中有大量的例题,用来对书中介绍的主要技术进行演示,并对每道例题给出了详细的解答。读者可以对每道例题进行推导(不看答案),然后将自己的答案与书中给出的答案进行比较。

  每章中还有大量的习题。附录B中给出了部分习题的答案。可通过因特网得到习题的答案。

  每章最后是一个章节测试,测试题答案在附录C中给出。

  第Ⅰ部分的内容可以作为一个四学分的学期课程。五变量卡诺图可以不必学习,这不会影响本书的连贯性(该部分内容只在第4章中的几个示例中用到)。可以缩减第4.8节及第7.7节中的示例。事实上,第7章中的大部分内容均可省略。

  尽管其中有些内容和前面课程中学习的计算机结构有重叠,但第Ⅱ部分的内容可以作为第二学期的课程。第8章中的内容和第Ⅰ部分介绍的知识不相关,但其余各章均与第Ⅰ部分相关。

补充

  此外,McGraw-Hill出版的ARIS(检查评估及简介系统)中的内容可作为本书的补充。ARIS可作为家庭作业,这样既有利于教师的管理,也有利于学生对知识的掌握。

  教师可以按照业内最积极通用的作业管理系统来对书中的作业进行分配和评分。

  学生可以访问多媒体学习工具并通过算法问题从无限的实践机会中学习。

  进入aris.mhhe.com学习更多知识。记得注册啊!

  若您在使用本书的过程中有任何意见或建议,或发现了任何问题,可致信至wkservice@vip.163.com,我们会认真处理您的来信,如果您的意见是正确的,我们将在后续版本中采用,并感谢您的参与!

  

1  若想更全面地介绍逻辑设计的内容,应包括相关的实验,教材可选用Marcovitz, Alan B所写的Introduction to Logic Design, Second Edition,McGraw-Hill, 2005。