算法流程图及ASM图.docx
《算法流程图及ASM图.docx》由会员分享,可在线阅读,更多相关《算法流程图及ASM图.docx(40页珍藏版)》请在冰点文库上搜索。
算法流程图及ASM图
v1.0可编写可改正
算法流程图及ASM图
引例设计一个逻辑电路,其输入信号X=xn-1xn-2x0,Z为输出信号,表示X中包括的
1的个数。
电路可用以下的流程图描绘:
图5-2-1含1统计电路
算法流程图
算法流程图由工作块、鉴别块、条件块、开始结束块以及指向线构成。
图5-2-2算法流程图的工作块
图5-2-3算法流程图的鉴别块
1
v1.0可编写可改正
图5-2-4算法流程图的条件块
图5-2-5算法流程图的开始块和结束块
如对引例的含1统计电路增添一个序列开始标记信号START和一个统计结束标记信
号DONE,则其框图为以下:
图5-2-6含1统计电路的算法流程图
算法设计
例5-2-1
设计以下左图所示的乘法电路。
图中,输入信号
A=AAAA是被
4
3
2
1
乘数,B=BBBB是乘数,且均为4位二进制数,P=A*B是输出信号,为8位二进制数。
START
4
3
2
1
为启动信号,END为结束标记。
其算法逻辑图见下右图。
2
v1.0可编写可改正
图5-2-7乘法器的算法流程图
例5-2-2设计一个电路,用于计算平面上两点之间的距离。
该电路输入信号为
两个8位二进制数X和Y,分别代表两点横坐标的差值和纵坐标的差值,电路输出为Z,表示
两点之间的距离。
计算偏差要求小于10%。
图5-2-8例5-2-2的算法流程图
电路区分与逻辑框图
例5-2-3依据含1统计电路的算法流程图,画出电路的逻辑框图。
以下。
图5-2-9含1统计电路的逻辑框图
例5-2-4画出4位二进制乘法器的逻辑框图。
以下。
图5-2-10乘法器的逻辑框图
3
v1.0可编写可改正
例5-2-5依据距离运算电路的算法流程图,画出该电路的逻辑框图。
图5-2-11距离运算电路的逻辑框图
数据办理单元的设
计
例5-2-6设计含1统计电路的数据办理单元。
如图。
4
v1.0可编写可改正
图5-2-12含1统计电路的数据办理单元
例5-2-7设计4位乘法器的数据办理单元。
如图。
图5-2-134位乘法器的数据办理单元
图
图的基本符号和构成
图5-2-14ASM图的状态图
5
v1.0可编写可改正
图5-2-15ASM图的鉴别块
图5-2-16ASM图的条件输出块
导出ASM图的方法
ASM图和算法流程图间的互相关系和变换规则十分明确,二者之间工作块(状态块)、
鉴别块、条件输出块基本对应。
例5-2-8将含1统计电路的算法流程图变换成为ASM图。
以下列图。
6
v1.0可编写可改正
图5-2-18含1统计电路控制器ASM图
例5-2-9将4位乘法器的算法流程图变换为ASM图。
以下列图。
图5-2-19乘法器控制单元ASM图
7
v1.0可编写可改正
控制单元的设计
以触发器为核心的控制器设计
例5-2-10导出上图所示的乘法控制单元的逻辑电路。
1.对ASM图进行状态分派:
S0——00,S1——01,S2——11,S3——10
图5-2-20乘法器控制单元设计过程之一
2.填写激励函数卡诺图
图5-2-20乘法器控制单元设计过程之一
3.导出输出方程
END=Q1Q0
CR=Q1Q0
CA=Q1Q0
8
v1.0可编写可改正
CB1=
Q1Q0
CB0=QQ+
QQ
1
0
1
0
CC=
Q1Q0
CM1=
QQB
10i
CM0=
Q1Q0Bi
+Q1Q0
4.画逻辑图:
图5-2-21乘法器控制单元逻辑电路之一
以集成计数器为核心的控制器设计
例5-2-11用集成计数器74163,辅以适合的组合器件,设计乘法器控制单元电
路。
1.状态分派:
S0——00,S1——01,S2——11,S3——10
图5-2-22乘法控制器单元设计过程之二
2.列操作表
9
v1.0可编写可改正
图5-2-22乘法控制器单元设计过程之二
3.填写激励函数卡诺图
图5-2-22乘法控制器单元设计过程之二
4.导出输出方程
END=Q1Q0
CR=Q1Q0
CA=CB1=Q1Q0
CB0=QQ+
QQ=Q
0
1
0
1
0
CC=Q1Q0
10
v1.0可编写可改正
CM1=Q1Q0Bi
CM0=Q1Q0Bi+Q1Q0
5.画逻辑图:
图5-2-23乘法器控制单元逻辑电路之二
以集成移位器为核心的控制器设计
例5-2-12用集成移位器74194,辅以适合的组合器件,设计乘法器控制单元的
电路。
进行状态分派:
S0——00,S1——01,S2——11,S3——10,得操作表及各激励输入端的函数卡诺图,如图5-2-24。
图5-2-24乘法器控制单元逻辑电路之三
各输出信号的函数表达式为:
END=QAQB
11
v1.0可编写可改正
CR=QAQB
CA=CB1=QAQB
CB0=QAQB+QAQB
CC=QAQB
CM1=QAQBBi
CM0=QAQBBi+QAQB
激励函数M1、M0用双4选1MUX实现,各输出信号仍用译码器辅以少许门电路加以实现,其逻辑电路如图5-2-25所示。
图5-2-25乘法器控制单元逻辑电路之三
以集成多D触发器为核心的控制器设计
例5-2-13用四D触发器74175,辅以适合的组合器件,设计乘法器控制单元电
路。
用多D触发器设计时序电路时,状态分派采纳“一对一”的方法。
因此进行状态分派
以下:
S0——0000,S1——1100,S2——1010,S3——1001。
由ASM图列出次态表,如表5-2-3
所示。
12
v1.0可编写可改正
表5-2-3次态表
由ASM图可直接写出各输出方程
END=Q0CR=Q1
CA=CB1=Q1CC=Q2
CB0=Q1+Q3
CM1=Q2Bi
CM0=Q2Bi+Q3
控制单元的逻辑框图如图5-2-26所示。
图5-2-26乘法器控制单元逻辑电路之四
设计举例
图5-2-27给出了FIFO(先进先出,又称为行列)的次序储存器的表示图和待设计FIFO
的框图。
13
v1.0可编写可改正
图5-2-27FIFO储存器表示图
图5-2-28给出了行列在RAM中可能的几种散布地点。
图中暗影代表行列已占有的储存空间,空白表示未被占有的储存空间。
图5-2-28行列在RAM中的几种地点散布
图5-2-29(a)给出了读操作的表示图。
读操作时,WA不变,RA加1。
明显,若RA加1后与WA相等,则表示行列已空。
图5-2-29(b)、(c)给出了写操作的表示图。
写操作时,RA不变,WA加1。
若WA加1后与RA相等,则表示行列已满。
14
v1.0可编写可改正
图5-2-29FIFO的读/写操作
在剖析FIFO逻辑功能及读写操作特色的基础上,现进行电路设计。
1、算法设计与逻辑框图该FIFO的算法流程图如图5-2-30所示。
15
v1.0可编写可改正
图5-2-30FIFO的算法流程图
实现上述算法逻辑框图如图5-2-31所示。
16
v1.0可编写可改正
图5-2-31FIFO的逻辑框图
2、数据办理单元的设计图5-2-32为数据办理单元的逻辑图。
图5-2-32FIFO的数据办理单元
3、导出ASM图依据算法流程图和数据办理单元的逻辑图,可导出控制器的
ASM图,如图5-2-33所示。
17
v1.0可编写可改正
图5-2-33FIFO控制器的ASM图
4、控制器的设计对ASM图进行以下状态分派:
S0——00,S1——01,S2——10,S3——11
如图5-2-34(a)所示。
选择D触发器作为控制器的状态存放器。
由ASM图可直接导出
激励函数卡诺图,如图5-2-34(b)所示。
18
v1.0可编写可改正
图5-2-34状态分派及卡诺图
可画出控制器的逻辑电路,如图5-2-35所示。
图5-2-35FIFO控制器的逻辑图
19