




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ABEL语言逻辑方程、状态图设计法
一、ABEL语言逻辑方程设计法
逻辑方程是ABEL源文件描述逻辑设计的一种方法。它既可进行组合逻辑设计,也可进行时序逻辑设计,但有时不如真值表和状态图逻辑设计简单、易懂。但任何一种逻辑描述方式,经EDA软件编译后,都会变成逻辑方程的形式。1、逻辑方程设计类型1已知逻辑方程表达式进行逻辑设计例:已知八进制同步计数器的状态转移方程如下,用ABEL语言设计之。MODULEcounter8fcCP PIN;Q3,Q2,Q1PIN
ISTYPE'REG';Z PIN
ISTYPE'COM';EQUATIONSQ3.CLK=CP;Q2.CLK=CP;Q1.CLK=CP;Q1:=!Q1;Q2:=(!Q1&!Q2)#(Q1&Q2);Q3:=(!Q1&!Q2&!Q3)#(!(!Q1&!Q2)&Q3);Z=Q1&Q2&Q3;END
2、逻辑方程设计类型2已知逻辑电路进行逻辑设计例:已知带异步清零的八进制异步计数器的电路图如下,用ABEL语言设计之。012MODULECOUNTER8DLCP PIN;RESET PIN;Q2,Q1,Q0PINISTYPE'BUFFERREG';EQUATIONSQ2.CLK=Q1.Q;Q1.CLK=Q0.Q;Q0.CLK=CP;Q2.ACLR=!RESET;Q1.ACLR=!RESET;Q0.ACLR=!RESET;Q2.D=!Q2.D;Q1.D=!Q1.Q;Q0.D=!Q0.Q;END3、逻辑方程设计类型3已知逻辑功能文字描述进行逻辑设计例:已知4位二进制比较器的输入、输出关系如下,用ABEL语言设计之。条件输出A_NE_BA_EQ_BA_GT_BA_LT_BA3A2A1A0=B3B2B1B0A3A2A1A0≠B3B2B1B0A3A2A1A0>B3B2B1B0A3A2A1A0<B3B2B1B0011110000X100X01MODULECOMP4FCA3..A0 PIN;B3..B0PIN;A_NE_B,A_EQ_BPINistype’com’;A_GT_B,A_LT_BPINistype’com’;A=[A3..A0];B=[B3..B0];EQUATIONSA_EQ_B=A==B;A_NE_B=!(A==B);A_GT_B=A>B;A_LT_B=A<B;END4、逻辑方程设计类型4已知逻辑真值表或功能表进行逻辑设计例:用ABEL语言设计一个2线-4线译码器,已知其真值表如下:I1I0Y3Y2Y1Y0000110111110110110110111MODULEDECODER24FCI1,I0 PIN;Y3,Y2,Y1,Y0PINISTYPE'COM';I=[I1,I0];Y=[Y3,Y2,Y1,Y0];EQUATIONSWHEN(I==^B00)THENY=^B1110;WHEN(I==^B01)THENY=^B1101;WHEN(I==^B10)THENY=^B1011;WHEN(I==^B11)THENY=^B0111;END5、逻辑方程设计类型5与其它设计法混合使用例:用ABEL语言设计一个六进制计数器,要求时钟下降沿触发MODULEcounter6dCP PIN;Q2,Q1,Q0PINISTYPE'REG';Q=[Q2,Q1,Q0];EQUATIONSQ.CLK=!CP;TRUTH_TABLE(Q:>Q)0:>1;1:>2;2:>3;3:>4;4:>5;5:>0;END二、ABEL语言状态图设计法
状态图是ABEL源文件描述逻辑设计的一种方法,类似于数字电路状态状态转移图的描述方式,它只适用于描述时序逻辑设计,不能描述纯组合逻辑电路。状态图的设计关键字是:STATE_DIAGRAM
设计步骤状态机定义状态定义寄存器时钟方程状态描述1、状态图逻辑设计类型1利用IF……THEN……ELSE语句进行设计
格式:MODULE模块名
(输入引脚定义) (输出引脚定义)//状态机定义 (……)
(状态定义语句)
EQUATIONS
(寄存器时钟语句)
(……)
STATE_DIAGRAM[状态寄存器] STATES0:IF
逻辑表达式THEN
状态表达式1
ELSE
状态表达式2
(……)
END
例:用ABEL语言设计一个同步六进制可逆计数器。MODULEcounter6knCP,UP_DOWNPIN;Q2..Q0PINISTYPE'REG';Q=[Q2..Q0];S0=^B000;S1=^B001;S2=^B010;S3=^B011;S4=^B100;S5=^B101;S6=^B110;S7=^B111;EQUATIONSQ.CLK=CP;STATE_DIAGRAMQSTATES0:IFUP_DOWN==0THENS1ELSES5;STATES1:IFUP_DOWN==0THENS2ELSES0;STATES2:IFUP_DOWN==0THENS3ELSES1;STATES3:IFUP_DOWN==0THENS4ELSES2;STATES4:IFUP_DOWN==0THENS5ELSES3;STATES5:IFUP_DOWN==0THENS0ELSES4;STATES6:GOTOS0;STATES7:GOTOS0;END2、状态图逻辑设计类型2利用链接式IF……THEN……ELSEIF……语句设计格式:MODULE模块名 (输入引脚定义) (输出引脚定义)//状态机定义 (状态定义语句)
EQUATIONS (寄存器时钟语句)
(……)
STATE_DIAGRAM[状态寄存器]
STATES0:IF
逻辑表达式THEN
状态表达式
ELSEIF逻辑表达式THEN
状态表达式
(……)
ELSE
状态表达式 (……)
END
MODULEcounter8kk CP PIN;C1,C0PIN;Q2..Q0PINISTYPE'REG';Q=[Q2..Q0];CONTROL=[C1,C0];EQUATIONSQ.CLK=CP;STATE_DIAGRAMQSTATE0:IFCONTROL==0THEN0ELSEIFCONTROL==1THEN0ELSEIFCONTROL==2THEN1ELSE7;STATE1:IFCONTROL==0THEN0ELSEIFCONTROL==1THEN1ELSEIFCONTROL==2THEN2ELSE0;例:用ABEL语言设计一个可控八进制计数器。要求: (1)CONTROL=0时,计数器清零 (2)CONTROL=0时,计数器保持 (3)CONTROL=0时,计数器加1
(4)CONTROL=0时,计数器减1STATE2:IFCONTROL==0THEN0ELSEIFCONTROL==1THEN2ELSEIFCONTROL==2THEN3ELSE1;STATE3:IFCONTROL==0THEN0ELSEIFCONTROL==1THEN3ELSEIFCONTROL==2THEN4ELSE2;STATE4:IFCONTROL==0THEN0ELSEIFCONTROL==1THEN4ELSEIFCONTROL==2THEN5ELSE3;STATE5:IFCONTROL==0THEN0ELSEIFCONTROL==1THEN5ELSEIFCONTROL==2THEN6ELSE4;STATE6:IFCONTROL==0THEN0ELSEIFCONTROL==1THEN6ELSEIFCONTROL==2THEN7ELSE5;STATE7:IFCONTROL==0THEN0ELSEIFCONTROL==1THEN7ELSEIFCONTROL==2THEN0ELSE6;END3、状态图逻辑设计类型3利用CASE……ENDCASE语句设计格式:MODULE模块名 (输入引脚定义) (输出引脚定义)//状态机定义 (……) (状态定义语句)
EQUATIONS (寄存器时钟语句)
(……) STATE_DIAGRAM[状态寄存器] STATES0:CASE
逻辑表达式:状态表达式
(……)
ENDCASE; (……)
END
例:用ABEL语言设计一个可控八进制计数器。要求: (1)CONTROL=0时,计数器清零 (2)CONTROL=0时,计数器保持 (3)CONTROL=0时,计数器加1
(4)CONTROL=0时,计数器减1MODULEcounter8kk CP PIN;C1,C0PIN;Q2..Q0PINISTYPE'REG';Q=[Q2..Q0];CONTROL=[C1,C0];EQUATIONSQ.CLK=CP;STATE_DIAGRAMQSTATE0:CASECONTROL==0:0CONTROL==1:0CONTROL==2:1CONTROL==3:7;ENDCASE;STATE1:……CASE和ENDCASE之间的表达式必须满足互斥条件,任何时候,只有一个表达式为真CASE语句中表达式应包含所有可能的条件4、状态图逻辑设计类型4利用GOTO语句设计格式:MODULE模块名 (输入引脚定义) (输出引脚定义)//状态机定义 (……) (状态定义语句)
EQUATIONS (寄存器时钟语句)
(……) STATE_DIAGRAM[状态寄存器] STATES0:GOTO
状态表达式
(……)
END
MODULECOUNTER6GOTOCP PIN;Q2..Q0PINISTYPE'REG';Q=[Q2..Q0];EQUATIONSQ.CLK=CP;STATE_DIAGRAMQSTATE0:GOTO1;STATE1:GOTO2;STATE2:GOTO3;STATE3:GOTO4;STATE4:GOTO5;STATE5:GOTO0;STATE6:GOTO0;STATE7:GOTO0;END例:用ABEL语言设计一个同步六进制计数器。5、状态图逻辑设计类型5利用WITH……ENDWITH语句设计格式:MODULE模块名 (输入引脚定义) (输出引脚定义)//状态机定义 (状态定义语句)
EQUATIONS (寄存器时钟语句) STATE_DIAGRAM[状态寄存器] STATES0:IF逻辑表达式THEN状态表达式
WITH
输出方程
(……)
ENDWITH;
ELSE状态表达 (……)
END
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 大数据驱动的营销战略规划
- 用户与服务的互动模式研究试题及答案
- 企业领导力培养及团队建设策略探讨
- Unit 1 My classroom Part A Let's learn(教学设计)-2024-2025学年人教PEP版英语四年级上册
- 2025年UV无影胶水合作协议书
- 2023二年级数学上册 6 表内乘法配套教学实录 新人教版
- 全面解析宠物殡葬师技巧试题及答案
- 2025年新戊二醇项目合作计划书
- 兽医生理学考点重点阅读
- 《闪烁的小星》参考教案
- 新人教小学三年级数学下册两位数乘两位数第1课时《口算乘法(一)》示范教学设计
- 高速船驾驶员题库
- 民俗文化彝族火把节文化介绍
- 天然植物药课件讲解
- 国际爱牙日课件
- (附答案)2024公需课《百县千镇万村高质量发展工程与城乡区域协调发展》试题广东公需科
- MOOC 网络技术与应用-南京邮电大学 中国大学慕课答案
- PCB高纯化学品行业相关项目实施计划
- 极兔速递分拣流程优化设计方案
- 农业科技科普活动方案策划
- 《草船借箭》课本剧剧本-4篇
评论
0/150
提交评论