数字系统设计方法
单元电路通常有两种不同类型的输入,即来自外部的一次输入和来自串接链
路前级的二次输入。同样输出也有两类,即直接输出到外部的一次输出和输出到 串接链路次级的二次输出。二次输入和二次输出是建立子网络之间联系的纽带。
一次输入 网络输入
…
…
…
…
…
来自j-1 级的二次 输入
第j个子网络
Z1j Z2j
ymj
……
一次输出
限制条件: 技术的先进性和可行性、经费、开发 时间、可获得的资料等
如何将系统划 分为一组相对 独立又相互联 系的模块
模块之间有哪 些数据流和控 制流信息
如何有规则地 控制各模块交 互作用
如何评价模块 结构的质量
期望的目标: 功能、易理解性、可靠性、易 维护性等
模块技术(系统设计)
系统模块结构的方法
构思数据处理器功能 部件 列出控制器应输出的 控制信号 列出数据处理器应输 出的状态信号
起始信号,收到8位,奇偶误差
例:串行数据接收器
根据上面的分析,可以得到系统的结构框图如下 :
虚线框内对应的是 数据处理器
CNT
R
C
P
X
组合电路
Z
数据处理器反馈给控制器的信号: 起始信号、已收到8位数据、有奇 偶误差
S
T
控制器
控制器应该输出的信号: 清零信号、移位信号、计 数器控制信号、触发器P和 触发器C置1置0信号。
例:串行数据接收器
逻辑级设计:(A) 处理器
设计和选择各功能部件:
右移移位寄存器 74194 计数器 74163 触发器 741109 奇偶校验电路 743280
定义处理器状态信号, 列出状态变量表 设处理器的输出状态信息为S1(起始位),S2(已收到8位),S3(有奇偶误差), 如表:
自顶向下设计方法
性能级
自顶向下的设计方法采用系统层次结 构,将系统的设计分成几个层次进行描述。 由系统的性能级描述导出实现系统功 能的算法,即系统设计。 由功能级描述设计出系统结构框图,
系统设计
功能级
逻辑设计
结构级
然后进行逻辑设计,详细给出实现系统的
物理设计
硬件和软件描述。
物理级
模块技术(系统设计)
模块技术是系统设计中的主要技术
模块化技术就是将系统总的功能分解成若干个 子功能,通过仔细定义和描述的子系统来实现相应 子功能。 一个系统的实现可以有多种方案,划分功能 模块也有多种模块结构。结构决定系统的品质, 一个结构合理的系统可望通过参数的调整获得最 佳的性能。在划分系统的模块结构时,应考虑以 下几个方面:
最高位的Cout作为溢出标志。 A4 B4 A3 B3
A2 B2
A1 B1
COUT = C4
FA
C3
FA
C2
FA
C1
FA
Cin
S4
S3 S2 四位并行加法器
S1
例:4位二进制加法器迭 代网络设计
实现2:下图是通过时间迭代法实现的4位串行加法器。 分 析:该网络在时钟的控制下,从两个移位寄存器A和B的低位端串行输 出一位加数和被加数,在全加器FA中生成相应的和及进位,和作 为结果存入S寄存器,进位则由D触发器寄存作为高一位的二次输 入 。D触发器的初置值为0,其终值表示了溢出标志。
例:串行数据接收器
画出数据处理器逻辑图:
S1
Z(MS B) 4 x
Q0 ~ Q3 Dsr
MA T1194 MB
Z(LSB ) 4
Q0 ~ Q3 Q3 Dsr
MA T1194 MB
Q3
READ
S2 S2 S1 QD
T1163
Q Cr J
T1190
Q K
Q J
T1190
Q K
+
STCP STC CL R
迭代技术
从逻辑设计转换成电路实现的物理设计过程当中,迭代是一类很有 用的技术。
迭代的思想是利用问题本身包含的结构特性,用简单的逻辑子网络
代替复杂的组合逻辑网络,实现要求的处理功能。从而最大限度降低了 逻辑网络的设计难度,简化了设计过程。提高系统的性能/价格比。
迭代可以是时间意义上的迭代,即由简单的逻辑子网络,在时钟控
a8
a4
B a8 a4 a2
B a1
BBBiblioteka 0b4 B B B B
0
P128
P64
P32
P16
P8
P4
P2
P1
例:乘法器设计
方案2:时间迭代-部分积左移累加算法
例:乘法器设计
方案2:时间迭代-部分积左移累加算法
累加寄存器A 乘数寄存器Q
A7 A6 A5 A4 A3 A2 A1 A0
加命令
Q7 Q6 Q5 Q4
…
ym,j+1
网络输出
Znj
空间网络迭代基本模型
…
… …
… …
… …
单位1
单位2
…
y1j y2j
y1,j+1 y2,j+1
边 界 输出到 输 j+1级 入 的二次 输出
单位n
…
…
…
X1j X2j
……
Xnj
边 界 输 出
迭代技术
时间迭代网络基本模型
子网络在时钟控制下,接收来自信息寄存器A,...E通过移位的串行输
右移命令
可控全加器
控制器
M7 M6 M5 M4 M3 M2 M1 M0
被乘数寄存器M
左移命令
例:乘法器设计
方案2:时间迭代-部分积左移累加算法
优点:直观 缺点:寄存器利用率低
例:乘法器设计
方案2:时间迭代-部分和右移与部分积累加算法
Ar-1 „„
累加寄存器A
A2 A1 A0
Qr-1
加命令
„„
Q2 Q1 Q0
系统设计 功能级 逻辑设计 结构级 物理设计 物理级
数字系统层次化结构
性能级: 要求回答开发系统“做 什么”这个问题 功能级: 把系统划分为若干子系 统
数字系统设计 的四个层次
结构级: 将模块的功能描述转化 为实现模块功能的具体 硬件和软件的描述 物理级: 物理级也称为电路级。它 把上一步描述功能的算法 转为物理实现
模块结构框图:以框图 的形式表示系统由哪些 模块组成以及模块之间 的相互关系。
模块功能说明:采用 自然语言或专用语言, 以算法形式描述模块 的输入/输出信号和模 块的功能、作用和限 制。
例:串行数据接收器
性能级设计
数据多少位? 传输格式? 传输速率?
信号电平?
其他?
设串行数据8位,奇校验,按RS232C格式传输(如 上图所示),TTL电平,传输速率≤100KBPS。要求并行 输出接收数据且指出所收数据是否有奇偶误差。
…
…
Rn
例:4位二进制加法器迭 代网络设计
分析:根据二进制数相加的运算规则可知,任意一位的和Si等于被加数 Ai、Bi及来自低位的进位Ci-1,而其进位Ci则为相加后的溢出值。 实现1:根据这个结构特性,选用全加器FA作为子网络的单元电路,以低 位向高位的进位值作为子网络的二次输入/输出,通过空间迭代法构 成的四位并行加法器如下图。通常最低位的进位输入Cin置为0,而
例:乘法器设计
1、性能级设计 4位数字乘法器。 2、结构级设计
例:乘法器设计
0 0 0 0
方案1:空间迭代
分析:方案1通过完全空间意义 上的迭代,实现4位二进制数相 乘的迭代网络。 特点:速度快、硬件复杂
a8
a8
a4
a2
a1 b1
B a4 a2
B a1
B
B
0
b2
B B a2 a1 b3 B B
0
性能级
系统设计
功能级
逻辑设计
结构级
物理设计
物理级
总结
模块技术
模块化技术就是将系统总的功能分解成若干个 子功能,通过仔细定义和描述的子系统来实现 相应子功能。
迭代技术
时间意义上的迭代 空间意义上的迭代 二维迭代网络
可编程专用芯片设计
专用芯片的设计要求:
为了将产品推出市场,必须保证产品符合一定的设 计要求。
例:串行数据接收器
系统结构级设计
设定输入输出变量
外部输入数据为X ,输出分别为Z(8位数据 ), C(输出标志),P(奇偶误差指示)。 其中: C=1 输出数据有效;C=0 输出数据无效 P=1 有奇偶误差; P=0 无奇偶误差 移位寄存器(R), 计数器(CNT), 触发器 (C), 触发器(P)和相关组合逻辑等 清零信号,移位信号,计数控制信号,触 发器P和触发器C置1置0信号等
设计举例:串行数据接收器
详述串行数据接收器的设计过程
设计举例:迭代技术
从逻辑设计转换成电路实现的物理设计过程当中,迭代是一类很有用 的技术。
可编程专用芯片设计的流程
数字系统层次化结构
数字系统设计过程可以分为四个层次:
性能级
1. 性能级 2. 功能级 3. 结构级 4. 物理级 系统设计:将性能级的说明映射为功能 级的设计过程 逻辑设计:将功能级的描述转换为结构 (逻辑)的过程 物理设计:将逻辑结构转换为物理级 (电路)的实现
入,在子网络内作串行处理后,串行输出到结果寄存器R1 ,„Rn 。
暂存单元C用于寄存子网络的二次输出,以便在时钟的下一个节拍作为子网 络的二次输入参加运算和操作。暂存单元C对应空间迭代方式中的边界输入。
A
子 网 络
R1
…
…
…
y1,j+1 ym,j+1
E