第7章数字系统设计备课讲稿

上传人:yuzo****123 文档编号:137779888 上传时间:2020-07-11 格式:PPT 页数:149 大小:2.40MB
返回 下载 相关 举报
第7章数字系统设计备课讲稿_第1页
第1页 / 共149页
第7章数字系统设计备课讲稿_第2页
第2页 / 共149页
第7章数字系统设计备课讲稿_第3页
第3页 / 共149页
第7章数字系统设计备课讲稿_第4页
第4页 / 共149页
第7章数字系统设计备课讲稿_第5页
第5页 / 共149页
点击查看更多>>
资源描述

《第7章数字系统设计备课讲稿》由会员分享,可在线阅读,更多相关《第7章数字系统设计备课讲稿(149页珍藏版)》请在金锄头文库上搜索。

1、第7章 数字系统设计,7.1 数字系统设计概述 7.2 控制子系统的设计工具 7.3 控制子系统的实现方法 7.4 数字系统设计举例,7.1 数字系统设计概述,1. 什么是数字系统 在数字电子技术领域内,由各种逻辑器件构成的能够实现某种单一特定功能的电路称为功能部件级电路,例如前面各章介绍的加法器、 比较器、 译码器、数据选择器、计数器、移位寄存器、 存储器等就是典型的功能部件级电路, 它们只能完成加法运算、 数据比较、译码、数据选择、计数、移位寄存、数据存储等单一功能。 而由若干数字电路和逻辑部件构成的、能够实现数据存储、 传送和处理等复杂功能的数字设备,则称为数字系统(Digital Sy

2、stem)。电子计算机就是一个典型的复杂数字系统。 ,2. 数字系统的一般结构 按照现代数字系统设计理论,任何数字系统都可按计算机结构原理从逻辑上划分为数据子系统(Data Subsystem)和控制子系统(Control Subsystem)两个部分, 如图7-1所示。 ,图 7 - 1 数字系统的一般结构,数据子系统是数字系统的数据存储与处理单元,数据的存储、传送和处理均在数据子系统中进行。它从控制子系统接收控制信息, 并把处理过程中产生的状态信息提供给控制子系统。由于它主要完成数据处理功能且受控制器控制, 因此也常常把它叫做数据处理器或受控单元。 控制子系统习惯上称为控制器或控制单元,它

3、是数字系统的核心。数据子系统只能决定数字系统能完成哪些操作,至于什么时候完成何种操作则完全取决于控制子系统。控制子系统根据外部控制信号决定系统是否启动工作, 根据数据子系统提供的状态信息决定数据子系统下一步将完成何种操作,并发出相应的控制信号控制数据子系统实现这种操作。控制子系统控制数字系统的整个操作进程。,7.1.2 数字系统设计的一般过程,图 7 - 2 数字系统设计过程,1. 系统调研, 确定总体方案 接受一个数字系统的设计任务后,首先应对设计课题进行充分的调研, 深入了解待设计系统的功能、使用环境与使用要求, 选取合适的工作原理与实现方法,确定系统设计的总体方案。 这是整个设计工作中最

4、为困难也最体现设计者创意的一个环节。因为同一功能的系统有多种工作原理和实现方法可供选择,方案的优劣直接关系到所设计的整个数字系统的质量,所以必须对可以采用的实现原理、 方法的优缺点进行全面、 综合的比较、 评判,慎重地加以选择。总的原则是,所选择的方案既要能满足系统的要求,又要结构简单,实现方便,具有较高的性能价格比。,2. 逻辑划分,导出系统框图 系统总体方案确定以后,可以根据数据子系统和控制子系统各自的功能特点,将系统从逻辑上划分为数据子系统和控制子系统两部分,导出包含有必要的数据信息、 控制信息和状态信息的结构框图。逻辑划分的原则是, 怎样更有利于实现系统的工作原理,就怎样进行逻辑划分。

5、 为了不使这一步的工作太过复杂,结构框图中的各个逻辑模块可以比较笼统、比较抽象,不必受具体芯片型号的约束。,3. 功能分解, 构造数据子系统 逻辑功能划分后获得的数据子系统结构框图中的各个模块还比较抽象,功能也可能还比较复杂, 必须进一步对这些模块进行功能分解,直到可用合适的芯片或模块来实现具体的存储和处理功能。 适当连接这些芯片、 模块, 就可构造出数据子系统的详细结构。必须注意,为了简化控制子系统的设计, 数据子系统不仅要结构简单、清晰,而且要便于控制。,4. 算法设计, 实现控制子系统 根据导出的数据子系统结构, 编制出数字系统的控制算法, 得到数字系统的控制状态图,并采用同步时序电路设

6、计的方法完成控制子系统的设计。 数字系统的控制算法反映了数字系统中控制子系统对数据子系统的控制过程,它与系统所采用的数据子系统的结构密切相关。 例如, 某个数字系统中有10次乘法操作,且参与乘法操作的数据可以同时提供。如果数据子系统有10个乘法器, 则控制算法中就可以让这10次乘法操作同时完成;但如果数据子系统中只有一个乘法器, 则控制算法就只能是逐个完成这10次乘法操作。因此, 算法设计要紧密结合数据子系统的结构来进行。,一般来讲, 数据子系统通常为人们熟悉的各种功能电路, 无论是采用现成模块还是自行设计,都有一些固定的方法可循,不用花费太多精力。 相对说来, 控制子系统的设计要复杂得多。

7、因此,人们往往认为数字系统设计的主要任务就是要设计一个好的控制子系统。 ,经过上述四个步骤后,数字系统设计在理论上已经完成。 为了保证系统设计的正确性和可靠性,如果有条件的话,可以先采用EDA软件对所设计的系统进行仿真,然后再用具体器件搭设电路。 搭设电路时,一般按自底向上的顺序进行。 这样做, 不仅有利于单个电路的调试,而且也有利于整个系统的联调。因此,严格地讲, 数字系统设计的完整过程应该是“自顶向下设计,自底向上集成”。,必须指出,数字系统的上述设计过程主要是针对采用标准集成电路的系统而言的。实际上,除了采用标准集成电路外,还可以采用PLD器件或微机系统来实现数字系统,此时的设计过程会略

8、有不同。例如采用PLD器件设计数字系统时, 就没有必要将系统结构分解为一些市场上可以找到的基本模块;在编写出源文件并编译仿真后, 通过“下载”就可获得要设计的系统或子系统。,7.1.3 数字系统的总体方案与逻辑划分 1. 数字系统的总体方案 数字系统的总体方案的优劣直接关系到整个数字系统的质量与性能, 需要根据系统的功能要求、使用要求及性能价格比周密思考后确定。 下面通过两个具体实例进行说明。 【例7-1】某数字系统用于统计串行输入的n位二元序列X中“1”的个数,试确定其系统方案。 解 该数字系统的功能用软件实现最为方便, 但此处仅讨论硬件实现问题。 ,该系统看起来非常简单,但却无法用前面介绍

9、的同步时序电路设计方法进行设计。因为无论从接收序列的可能组合数还是从收到“1”的个数来假设状态, 其状态图或状态表都十分庞大。如果从接收序列的可能组合数来假设状态,则需要2n个状态;如果从当前接收到“1”的个数来假设状态,也需要n+1个状态。 例如, n=255时, 分别需要设2255和256个状态,这样的设计规模是无法想象的。 由此可见, 时序电路的设计方法的确不适用于数字系统设计。,如果换一种思路,从实现“1”的统计功能所需要的操作入手, 问题就可以迎刃而解。因为从实现“1”的统计功能所需要的操作来看, 只需要这样几种操作:一是对X的数位进行累计;二是对接收到的X进行是0还是1的判断; 三

10、是当X=1时使“1”数计数器加1计数;四是判断X的全部数位是否统计完毕, 如果统计完毕, 工作即告结束。 具体统计过程与软件实现完全相同,即每接收1位X,就判断一下该位是0还是1, 如果X为0, “1”数计数器维持原态;如果X为1, 则“1”数计数器加1,且每接收1位, 位数计数器加1。 待n位X的各位全部判断、 计数后, “1”数计数器的值就是X中“1”的个数。,从实现的角度看,这种方案需要1个控制器来控制整个统计过程。 而为了实现统计功能,该方案至少还需要两个模n+1的计数器, 其中一个计数器用于累计X中 “1”的个数,另一个用于累计X的接收位数。,【例7-2】 某数字系统用于7阶多项式求

11、值:,试确定该系统的总体方案。,解 P7(x) = p7x7 + p6x6 + p5x5 + p4x4 + p3x3 + p2x2 + p1x+ p0 实现该多项式求值, 可用的方案较多, 此处给出其中的3种方案。,方案1: 直接按上式计算多项式的值, 则需要6个能计算xi的运算部件、 7个能够计算pixi的乘法器及7个加法器。该方案的优点是速度快, 但硬件成本太高。因为仅实现xi运算的硬件成本就非常高。而且,如果采用该方案求值,没有、也不需要控制器,因此不能称为数字系统。 ,方案2: 将该多项式分解为ax+b形式的多个子计算,依次进行计算: P7(x) = (p7x + p6)x + p5)

12、x + p4)x + p3)x + p2)x + p1)x + p0 即首先计算p7x + p6,然后计算(p7x + p6)x + p5, , 最后计算得到P7(x)。该方案每次仅完成1个ax+b的运算,共需7次计算才能求得P7(x)的值,运行时间较长,但硬件成本很低。如果不计存储器和用于循环次数控制的计数器、比较器,则该方案仅需要1个乘法器和1个加法器。这种分解方法称为何纳(Horner)算法。 ,方案3: 将该多项式分解为ax+b和x2形式的子计算, 一次可同时进行几个计算: P7(x) = x4x2(p7x + p6) + (p5x + p4) + x2(p3x + p2) + (p1

13、x + p0) 设A= x2 = xx,B=(p1x + p0), C=(p3x + p2),D=(p5x + p4),E=(p7x + p6),F= x4 =AA,则第1次首先并行计算A、B、C、D、E 5个子计算,第2次并行计算F、AC+B=G、AE+D=H等子计算, 第3次通过计算FH+G就可得到P7(x)。如果不计存储器,该方案需要5个乘法器和4个加法器,硬件成本稍高, 但运行时间很短。 这种分解方法称为埃士纯(Estrin)算法。 ,2 . 数字系统的逻辑划分 由于数据子系统和控制子系统的功能不同, 因此, 数字系统的逻辑划分并不太困难。凡是有关存储、 处理功能的部分, 一律纳入数据

14、子系统; 凡是有关控制功能的部分,一律纳入控制子系统。逻辑划分后,就可以根据功能需要画出整个系统的结构框图。 ,【例7-3】对例7-1中描述的统计串行输入的n位二元序列X中“1”的个数的数字系统进行逻辑划分,导出其系统结构框图, 并简述其工作过程。 解 例7-1中,已经确定了该系统的总体方案。 根据数据子系统和控制子系统的特点,用于统计X中“1”的个数的模n+1计数器(称为“1”数计数器)和用于记忆X的接收位数的模n+1计数器(称为位数计数器)都属于计数操作功能, 应该纳入到数据子系统中; “1”数计数器和位数计数器所需要的加1控制信号由控制器产生, 位数计数器的输出Q作为反映X接收位数的状态

15、信号提供给控制器。 而X是0还是1的判断可以直接在控制器中完成,不必用比较器实现;统计过程是否结束, 由控制器根据位数计数器提供的状态信号来决定。据此得到该系统的结构框图如图7-3所示。图中, st是为便于操作而设的一个脉冲型启动信号,done是为便于观察统计结果而设的一个状态输出信号,CLR为两个计数器的清0控制信号,CP1为“1”数计数器的计数时钟信号,CP2为位数计数器的计数时钟信号,Q为位数计数器提供给控制器的状态信号。 ,图 7 - 3 “1”数统计系统结构框图,该系统的大致工作过程如下: 系统加电时,系统处于等待状态,即当st=0时,系统不工作;当st=1时,系统启动工作,控制器输

16、出CLR有效,将两个计数器清0,同时置输出状态信号done无效。 工作过程中,输入X与系统时钟CP同步。 每来一个CP脉冲, 控制器接收1位X输入,并根据接收到的X是0还是1,决定是否输出“1”数计数器的计数时钟CP1脉冲;同时输出1个位数计数器计数时钟CP2脉冲,使位数计数器状态加1。 当X输入、统计完成时, 位数计数器输出状态Q使控制器停止统计过程, 并使输出状态信号done有效, 告知使用者此时“1”数计数器时输出有效。如果此时控制器转入等待状态, 则每来一个st脉冲就可以完成一次“1”数统计工作。 ,【例7-4】假设例7-2中描述的7阶多项式求值数字系统采用方案2,试对该数字系统进行逻辑划分,导出其系统结构框图,并简述其工作过程。 解 方案2将7阶多项式P7(x)分解为ax+b形式的多个子计算,依次进行计算。显然,实现ax+b计算,a、b选择和循环控制的电路部分应该属于数据子系统,而完成这些计算和选择功能所需的控制部分应该属于控制子系统。 ,为了便于理解,此处给出带有较详细的数据子系统结构的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号