文档介绍:绪论
0. 1 数字系统设计的基本概念
目前,数字技术已渗透到科研、生产和人们日常生活的各个领域。从计算机到家用电
器,从手机到数字电话,以及绝大部分新研制的医用设备、军用设备等,无不尽可能地采
用了数字技术。
数字系统是对数字信息进行存储、传输、处理的电子系统。
通常把门电路、触发器等称为逻辑器件,将由逻辑器件构成,能执行某单一功能的
电路,如计数器、译码器、加法器等,称为逻辑功能部件,把由逻辑功能部件组成的能实
现复杂功能的数字电路称数字系统。复杂的数字系统可以分割成若干个子系统,例如计算
机就是一个内部结构相当复杂的数字系统。
不论数字系统的复杂程度如何,规模大小怎样,就其实质而言皆为逻辑问题,从组
成上说是由许多能够进行各种逻辑操作的功能部件组成的,这类功能部件,可以是 SSI 逻
辑部件,也可以是各种 MSI、LSI 逻辑部件,甚至可以是 CPU 芯片。由于各功能部件之
间的有机配合,协调工作,使数字电路成为统一的数字信息存储、传输、处理的电子电路。
与数字系统相对应的是模拟系统,和模拟系统相比,数字系统具有工作稳定可靠,
抗干扰能力强,便于大规模集成,易于实现小型化、模块化等优点。
数字系统一般由控制电路、多个受控电路、输入/输出电路、时基电路等几部分构成,
如图 0-1 所示。
图 0-1 数字系统框图
图中,输入电路将外部信号(开关信号、时钟信号等)引入数字系统,经控制电路
逻辑处理后,或控制受控电路,或经输出电路产生外部执行机构(发光二极管、数码管、
扬声器等)所需的信号。数字系统通常是一个时序电路,时基电路产生各种时钟信号,保
证整个系统在时钟作用下协调工作。
数字系统和功能部件之间的区别之一在于功能是否单一,一个存储器,尽管规模很
大,可以达到数兆甚至 G 字节,但因其功能单一,只能算是逻辑部件,而由几片 MSI 构
成的交通灯控制器却应称为系统。
数字系统和功能部件之间的区别之二是是否包含控制电路,一个数字电路,无论其
规模大小,只有在具有控制电路的情况下才能称之为系统。控制电路根据外部输入信号、
各受控电路的反馈信号、控制电路的当前状态,决定系统的下一步动作。控制电路的逻辑
关系最为复杂,是数字系统设计中的关键。
数字系统设计方法简介
数字系统的设计的一般流程为
,确定系统的输入/输出
90
在具体设计之前,详细分析设计要求、确定系统输入/输出信号是必要的。例如,要设
计一个交通灯控制器,必须明确系统的输入信号有哪些(由传感器得到的车辆到来信号,
时钟信号),输出要求是什么(红、黄、绿交通灯正确显示和时间显示),只有在明确设计
要求的基础上,才能使系统设计有序地进行。
对于一个具体的设计可能有多种不同的方案,确定方案时,应对不同方案的性能、成
本、可靠性等方面进行综合考虑,最终确定设计方案。
(top-down)的模块化设计方法
数字系统的设计通常有两种设计方法,一种是自底向上的设计方法,一种是自顶向下
的设计方法。
自底向上(Bottom-up)的设计过程从最底层设计开始。设计系统硬件时,首先选择
具体的元器件,用这些元器件通过逻辑电路设计,完成系统中各独立功能模块的设计,再
把这些功能模块连接起来,总装成完整的硬件系统。
这种设计过程在进行传统的手工电路设计时经常用到,优点是符合硬件设计工程师传
统的设计习惯;缺点是在进行底层设计时,缺乏对整个电子系统总体性能的把握,在整个
系统设计完成后,如果发现性能尚待改进,修改起来比较困难,因而设计周期长。
随着集成电路设计规模的不断扩大,复杂度的不断提高,传统的电路原理图输入法已
经无法满足设计的要求。EDA 工具和 HDL 语言的产生使自顶向下(Top-Down)的设计方
法得以实现。
自顶向下(Top-down)的设计方法是在顶层设计中,把整个系统看成是包含输入输出
端
口的单个模块,对系统级进行仿真、纠错,然后对顶层进行功能方框图和结构的划分,即
从整个系统的功能出发,按一定原则将系统分成若干子系统,再将每个子系统分成若干个
功能模块,再将每个模块分成若干小的模块……直至分成许多基本模块实现。这样将系统
模块划分为各个子功能模块,并对其进行行为描述,在行为级进行验证。
例如,交通灯控制器的设计,可以把整个系统分为主控电路、定时电路,译码驱动
显示等,而定时电路可以由计数器功能模块构成,译码驱动显示可由 SSI 构成组合逻辑电
路构成,这两部分都是设计者所熟悉的各种功能电路,设