第十章数字系统设计方法(2011)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 2. 3. 4.
完全空间意义上的迭代 完全时间意义上的迭代 水平方向为空间迭代,垂直方向为时间迭代 水平方向为时间迭代,垂直方向为空间迭代
例:乘法器设计
1、性能级设计 4位数字乘法器。 2、结构级设计
例:乘法器设计
0 0 0 0
方案1:空间迭代
分析:方案1通过完全空间意义 上的迭代,实现4位二进制数相 乘的迭代网络。 特点:速度快、硬件复杂
自顶向下设计方法
性能级
自顶向下的设计方法采用系统层次结 构,将系统的设计分成几个层次进行描述。
系统设计
由系统的性能级描述导出实现系统功
能的算法,即系统设计。 由功能级描述设计出系统结构框图,
功能级
逻辑设计
结构级
然后进行逻辑设计,详细给出实现系统的
物理设计
硬件和软件描述。
物理级
模块技术(系统设计)
A
子 网 络
R1



y1,j+1
E
y1j
ymj
边 界 输 出
ym,j+1

C
时钟
时间迭代网络基本模型


Rn
例:4位二进制加法器迭 代网络设计
分析:根据二进制数相加的运算规则可知,任意一位的和Si等于被加数 Ai、Bi及来自低位的进位Ci-1,而其进位Ci则为相加后的溢出值。 实现1:根据这个结构特性,选用全加器FA作为子网络的单元电路,以低 位向高位的进位值作为子网络的二次输入/输出,通过空间迭代法构 成的四位并行加法器如下图。通常最低位的进位输入Cin置为0,而 最高位的Cout作为溢出标志。 A4 B4 A3 B3 A2 B2 A1 B1
READ S1 + S2 CR Q T0 CLR S3 D Q T1 STCP STC
串行数据接收器控制器逻辑图
串行数据接收器
物理级设计:
系统布局、布线、PCB、组装、调试等(略) 至此,我们完成了串行数据接收器的整个设计工作。由于 其本身功能就不复杂,所以其设计工作不太复杂。用VHDL 可以轻松的简化设计过程(当然,设计思路仍然是自顶而 下的设计方法和模块划分),使设计过程尽可能脱离硬件。 具体程序见教材P127给出的VHDL实现。
迭代技术
从逻辑设计转换成电路实现的物理设计过程当中,迭代是一类很有用 的技术。 迭代的思想是利用问题本身包含的结构特性,用简单的逻辑子网络 代替复杂的组合逻辑网络,实现要求的处理功能。从而最大限度降低了 逻辑网络的设计难度,简化了设计过程。提高系统的性能/价格比。 迭代可以是时间意义上的迭代,即由简单的逻辑子网络,在时钟控 制下对被处理的信息重复执行基本的运算,最终以串行处理的方式完成 复杂网络所要完成的功能。
例:串行数据接收器
系统结构级设计
设定输入输出变量
外部输入数据为X ,输出分别为Z(8位数 据), C(输出标志),P(奇偶误差指示)。 其中: C=1 输出数据有效;C=0 输出数据无效 P=1 有奇偶误差; P=0 无奇偶误差 移位寄存器(R), 计数器(CNT), 触发器(C), 触发器(P)和相关组合逻辑等 清零信号,移位信号,计数控制信号,触 发器P和触发器C置1置0信号等
前级的二次输入。同样输出也有两类,即直接输出到外部的一次输出和输出到串
接链路次级的二次输出。二次输入和二次输出是建立子网络之间联系的纽带。
一次输入 网络输入





来自j-1 级的二次 输入
第j个子网络
Z1j Z2j
ym j
Baidu Nhomakorabea……
一次输出

ym ,j+1
网络输出
Znj
空间网络迭代基本模型

… …
… …
A7 A6 A5 A4 A3 A2 A1 A0
加命令
Q7 Q6 Q5 Q4
右移命令
可控全加器
控制器
M7 M6 M5 M4 M3 M2 M1 M0
被乘数寄存器M
左移命令
例:乘法器设计
方案2:时间迭代-部分积左移累加算法
优点:直观 缺点:寄存器利用率低
例:乘法器设计
方案2:时间迭代-部分和右移与部分积累加算法
设计举例:串行数据接收器
详述串行数据接收器的设计过程
设计举例:迭代技术
从逻辑设计转换成电路实现的物理设计过程当中,迭代是一类很有用 的技术。
数字系统层次化结构
数字系统设计过程可以分为四个层次:
性能级
1. 性能级 2. 功能级 3. 结构级 4. 物理级
系统设计:将性能级的说明映射为功能 级的设计过程 逻辑设计:将功能级的描述转换为结构 (逻辑)的过程 物理设计:将逻辑结构转换为物理级 (电路)的实现
… …
单位1
单位2

y1j y2j
y1,j+1 y2,j+1
边 界 输出到 输 j+1级 入 的二次 输出
单位n



X1j X2j
……
Xnj
边 界 输 出
迭代技术
时间迭代网络基本模型 子网络在时钟控制下,接收来自信息寄存器A,...E通过移位的串行输入,
在子网络内作串行处理后,串行输出到结果寄存器R1 ,…Rn 。 暂存单元C用于寄存子网络的二次输出,以便在时钟的下一个节拍作为子 网络的二次输入参加运算和操作。暂存单元C对应空间迭代方式中的边界输入。
S
T
控制器
控制器应该输出的信号: 清零信号、移位信号、计 数器控制信号、触发器P和 触发器C置1置0信号。
例:串行数据接收器
逻辑级设计:(A) 处理器
设计和选择各功能部件: 右移移位寄存器 74194 计数器 74163 触发器 741109 奇偶校验电路 743280

定义处理器状态信号, 列出状态变量表 设处理器的输出状态信息为S1(起始位),S2(已收到8位),S3(有奇偶误差), 如表:
性能级 系统设计
功能级
逻辑设计
结构级
物理设计
物理级
总结
模块技术
模块化技术就是将系统总的功能分解成若干个 子功能,通过仔细定义和描述的子系统来实现 相应子功能。
迭代技术
时间意义上的迭代 空间意义上的迭代 二维迭代网络
可编程专用芯片设计
专用芯片的设计要求:
为了将产品推出市场,必须保证产品符合一定的设 计要求。 满足客户 基本需要
第十章
数字系统设计方法
主讲人:徐向民教授
内容纲要
数字系统的层次化结构
数字系统设计过程的四个级别:性能级、功能级、结构级、物理级。
自顶向下(top-down)设计方法
自顶向下的设计方法是一种由抽象的定义到具体的实现、由高层次到 低层次的转换逐步求精的设计方法。
模块设计(系统设计)
模块化技术就是将系统总的功能分解成若干个子功能,通过仔细定义 和描述的子系统来实现相应子功能。
系统设计
功能级
逻辑设计
结构级
物理设计 物理级
数字系统层次化结构
性能级: 功能级: 要求开发 系统“做什么” 把系统划分为若干子系 这个问题 统
数字系统设 计 的四个层次 结构级: 将模块的功能描述转化 为实现模块功能的具体 硬件和软件的描述 物理级: 物理级也称为电路级。它 把上一步描述功能的算法 转为物理实现
构思数据处理器功能 部件 列出控制器应输出的 控制信号 列出数据处理器应输 出的状态信号
起始信号,收到8位,奇偶误差
例:串行数据接收器
根据上面的分析,可以得到系统的结构框图如下:
虚线框内对应的是 数据处理器
CNT
R
C
P
X
组合电路
Z
数据处理器反馈给控制器的信号: 起始信号、已收到8为数据、有奇 偶误差
COUT = C4
FA
C3
FA
C2
FA
C1
FA
Cin
S4
S3 S2 四位并行加法器
S1
例:4位二进制加法器迭 代网络设计
实现2:下图是通过时间迭代法实现的4位串行加法器。 分 析:该网络在时钟的控制下,从两个移位寄存器A和B的低位端串行输 出一位加数和被加数,在全加器FA中生成相应的和及进位,和作 为结果存入S寄存器,进位则由D触发器寄存作为高一位的二次输 入 。D触发器的初置值为0,其终值表示了溢出标志。
基本目标:确 定基本功能
目标设计分析
阶段目标:确 定划分阶段
可能目标:分析 未来可能增加的 功能
ASIC计划:确定 是否转ASIC,什 么时候转ASIC
M
Ar-1
……
A0
Qr-1
……
Q0
CNT
组合逻辑网络
Z S T
控制单元
总结
数字系统设计过程可以分为4个层次:
性能级:明确要“做什么” 功能级:将功能划分为模块 结构级:把系统划分为若干子系统 物理级:将结构级中描述功能的算法转物 理实现
自顶向下的设计方法是一种由抽 象的定义到具体的实现、由高层次到低层 次的转换逐步求精的设计方法,并在设计 过程中不断修正错误。 这种设计方法更加接近人的一般 思维方式,利于更高效的设计开发。
T3280
8
FE
S3
串行数据接收器数据处理器逻辑图
例:串行数据接收器
逻辑级设计:(B) 控制器 1.根据系统功能画控制器的 ASM图(右图):
T0 0 0 S1
2.求控制器逻辑表达式 和控制信号表达式如下:
CLR T1 1
S2
0 READ
1
S3
1 STCP
0
STC
例:串行数据接收器
3.画出控制器的逻辑图:
可用的产品
设计规范
稳定可靠
可维护和可继承, 便于改进和升级
可移植性,便于 技术经验共享, 加快设计进度
可编程专用芯片设计
设计目标分析 功能模块划分
可编程ASIC设计最 基本的流程是:
确定关键电路时 序和模块间接口 时序 具体电路设计 设计验证
可编程专用芯片设计
设计目标分析:
主要目的是确定芯片的功能需求,一般应按照产品 的发展计划,将目标分若干步骤来实现。
例:串行数据接收器
画出数据处理器逻辑图:
S1
Z(MS B) 4 x
Q0 ~ Q3 Dsr
MA T1194 MB
Z(LSB)
4
Q 0 ~ Q3 Q3 Dsr
MA T1194 MB
Q3
READ
S2 S2 S1 QD
T1163
Q
Cr
T1190
Q K
Q J
T1190
Q K
J
+
STCP STC CL R
x z
迭代也可以是空间意义上的迭代,即由简单的逻辑子网络重复组合,
以并行处理方式完成复杂网络的功能 当然,也可以是时间迭代和空间迭代的组合。
迭代技术
空间迭代网络基本模型 由于迭代网络是结构高度重复的组合逻辑网络,所以有可能利用结构相同的子 网络作为单元电路,通过适当的串接来形成所要求的结构,以达到空间意义上的 迭代。下图(左), 示出了单元电路的一般形式。 单元电路通常有两种不同类型的输入,即来自外部的一次输入和来自串接链路
a8
a8
a4
a2
a1 b1
B
a4 a2
B
a1
B
B
0
b2
B B B B
0
a8
a4
a2
a1
b3
B a8 a4 a2
B a1
B
B
0
b4 B B B B
0
P128
P64
P32
P16
P8
P4
P2
P1
例:乘法器设计
方案2:时间迭代-部分积左移累加算法
例:乘法器设计
方案2:时间迭代-部分积左移累加算法
累加寄存器A 乘数寄存器Q
模块结构框图:以框图 的形式表示系统由哪些 模块组成以及模块之间 的相互关系。
模块功能说明:采用 自然语言或专用语言, 以算法形式描述模块 的输入/输出信号和模 块的功能、作用和限 制。
例:串行数据接收器
性能级设计
数据多少位? 传输格式? 传输速率? 信号电平? 其他?
设串行数据8位,奇校验,按RS232C格式传输(如 下图所示),TTL电平,传输速率≤100KBPS。要求并行 输出接收数据且指出所收数据是否有奇偶误差。
Ar-1 ……
累加寄存器A
A2 A1 A0
Qr-1 ……
加命令
Q2 Q1 Q0
乘数寄存器Q 控制器 右移命令
可控全加器
Mr-1 ……
M2 M1 M0
被乘数寄存器M
例:乘法器设计
方案2:时间迭代-部分和右移 与部分积累加算法
优点:寄存器利用率高。
例:乘法器设计
经比较,决定采用下面的系统结构图:
A Q
模块技术是系统设计中的主要技术 模块化技术就是将系统总的功能分解成若干个 子功能,通过仔细定义和描述的子系统来实现相应 子功能。 一个系统的实现可以有多种方案,划分功能 模块也有多种模块结构。结构决定系统的品质, 一个结构合理的系统可望通过参数的调整获得最 佳的性能。在划分系统的模块结构时,应考虑以 下几个方面:
限制条件: 技术的先进性和可行性、经费、开发 时间、可获得的资料等
如何 将系统 划 分为 一组相 对 独立 又相互 联 系的模块
模块之间有哪 些数据流和控 制流信息
如何有规则地 控制各模块交 互作用
如何评价模块 结构的质量
期望的目标: 功能、易理解性、可靠性、易 维护性等
模块技术(系统设计)
系统模块结构的方法
A4 B4 A3 B3 A2 B2 A1 B1
COUT = C4
FA
C3
FA
C2
FA
C1
FA
Cin
S4
S3 S2 四位并行加法器
S1
迭代技术
二维迭代网络
前面介绍的都是利用子网络作为基本单元,在时间或空间意义上重 复构成的一维迭代网络。 也可以利用基本单元构成二维或多维网络。二维迭代网络可以用多 种方法构成:
相关文档
最新文档