版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数字电路与逻辑设计二、常用时序逻辑电路设计(1)触发器设计(D、JK)(2)计数器设计(分频器)(3)移位寄存器设计(4)状态机设计:序列检测器
Process的物理意义Process进程
由敏感信号触发,并以Process结束为时间分界点,实现信号的初态到次态的转换。分界点以前引用信号的当前值(初态值),并通过赋值语句指定信号的次态值;分界点以后,次态值生效。时序电路VHDL描述方法状态方程法
确定敏感信号,用信号初态值和其他输入表示出次态值,然后代入赋值语句。状态表法确定敏感信号,按一定规则列出状态转换表,逐行描述或多行概括描述。(1)触发器设计DQCLKCLKDQn+1无变化XQn0->1000->111D触发器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYdffISPORT(clk,d:INSTD_LOGIC;q:OUTSTD_LOGIC);ENDdff;ARCHITECTUREaOFdffISBEGINprocess(clk)beginif(clk'eventandclk='1')thenq<=d;endif;endprocess;ENDa;状态方程:
J-K触发器特性表JKQn+1功能说明00011011Qn01Qn不变置0置1翻转JK触发器cpCLKI.依据状态方程实现JK触发器Libraryieee;USEieee.std_logic_unsigned.ALL;USEieee.std_logic_arith.ALL;entityjkjkisport(j,k,clk:instd_logic;Q,nQ:bufferstd_logic);endjkjk;buffer端口模式:端口既作为实体的输出,又回到实体内部做驱动信号。architecturebhofjkjkisbegin
process(clk)
begin
if(clk'eventandclk='0')thenQ<=(jand(notQ))OR((notk)andQ);nQ<=not((jand(notq))OR((notk)andq));
endif;
end
process;endbh;II.依据状态转换表实现JK触发器Libraryieee;USEieee.std_logic_unsigned.ALL;USEieee.std_logic_arith.ALL;entityjkjkisport(j,k,clk:instd_logic;Q,nQ:bufferstd_logic);endjkjk;architecturebh2ofjkjk1isbegin
process(clk)
begin
if(clk'eventandclk='0')then
ifj='0'andk='1'thenq<='0';nq<='1';
elsifj='1'andk='0'thenq<='1';nq<='0';
elsifj='0'andk='0'thenq<=q;nq<=nq;
elsifj='1'andk='1'thenq<=notq;nq<=notnq;
endif;
endif;
endprocess;endbh2;(2)-A简单计数器设计计数器CLKQ3Q2Q1Q0四位加计数器LIBRARYieee;USEieee.std_logic_1164.ALL;USEieee.std_logic_unsigned.ALL;USEieee.std_logic_arith.ALL;ENTITYcounterISPORT(clk:inSTD_LOGIC;q:buffer
STD_LOGIC_vector(3downto0));ENDcounter;ARCHITECTUREaOFcounterISBEGIN
process(clk)
begin
if(clk'eventandclk='1')thenq<=q+1;
endif;
endprocess;ENDa;四位加计数器计数器CLKCLR(2)-B带同步清零、同步置数功能的计数器LDQ3Q2Q1Q0D3D2D1D0控制信号CLR、LD:具有更高优先级LIBRARYieee;USEieee.std_logic_1164.ALL;USEieee.std_logic_unsigned.ALL;USEieee.std_logic_arith.ALL;ENTITYcounterISPORT(clk,clr,ld:inSTD_LOGIC;d:inSTD_LOGIC_vector(3downto0);q:bufferSTD_LOGIC_vector(3downto0));ENDcounter;ARCHITECTUREaOFcounterISBEGIN
process(clk)
begin
if(clk'eventandclk='1')thenif(clr='1')then
q<="0000";elsif(ld='1')thenq<=d;
elseq<=q+1;
endif;endif;endprocess;ENDa;计数器CLKCLR(2)-C带异步清零、同步置数功能的计数器LDQ3Q2Q1Q0D3D2D1D0LIBRARYieee;USEieee.std_logic_1164.ALL;USEieee.std_logic_unsigned.ALL;USEieee.std_logic_arith.ALL;ENTITYcounterISPORT(clk,clr,ld:inSTD_LOGIC;d:inSTD_LOGIC_vector(3downto0);q:bufferSTD_LOGIC_vector(3downto0));ENDcounter;ARCHITECTUREaOFcounterISBEGIN
process(clk,clr)begin
if(clr=‘1’)thenq<=“0000”;
elsif(clk'eventandclk='1'andld=‘1’)
then
q<=d;elsif(clk'eventandclk='1'andld=‘0’)
then
q<=q+1;endif;
endprocess;ENDa;process(clk,clr)begin
if(clr=‘1’)thenq<=“0000”;
else--即clr=‘0’
if(clk'eventandclk='1')
thenif(ld='1')then
q<=d;
elseq<=q+1;
endif;
endif;endif;
endprocess;ENDa;(2)-D带进位计数器设计计数器CLKQ3Q2Q1Q0四位加计数器COUTLIBRARYieee;USEieee.std_logic_1164.ALL;USEieee.std_logic_unsigned.ALL;USEieee.std_logic_arith.ALL;ENTITYcounterISPORT(clk:inSTD_LOGIC;q:buffer
STD_LOGIC_vector(3downto0);cout:outstd_logic);ENDcounter;ARCHITECTUREaOFcounterISBEGINARCHITECTUREbOFcounterISBEGINprocess(clk)begin
if(clk'eventandclk='1')thenq<=q+1;
endif;endprocess;cout<=‘1’whenq=15else‘0’;ENDb;进程设计状态转换并列语句实现输出计数器CLKQ3Q2Q1Q0带进位的十进制加计数器COUTARCHITECTUREbOFcounterISBEGINprocess(clk)begin
if(clk'eventandclk='1')then
if(q<9)thenq<=q+1;
elsif
q>=9q<=“0000”;
endif;
endif;endprocess;cout<=‘1’whenq=9else‘0’;ENDb;进程设计状态转换并列语句实现输出(2)-E分频器Tclk=1usTcout=10us计数器就是对时钟脉冲计数,同时计数器还是一个分频器。fclk=1x106Hzfcout=1x105Hz(3)移位寄存器设计4位右移移位寄存器Reset:异步清零右移移位寄存器dinresetclkQAQBQCQDlibraryieee;useieee.std_logic_1164.all;ENTITYshifterISPORT(
din:instd_logic;reset,clk:instd_logic;QA,QB,QC,QD:bufferstd_logic);
ENDshifter;ARCHITECTUREbehaveOFshifterISBEGINProcess(reset,clk)Begin
if(reset='1')
then
QA<='0';QB<='0';QC<='0';QD<='0';
else
if
(clk'Eventandclk='1')then
QA<=din;QB<=QA;QC<=QB;QD<=QC;
endif;
endif;endprocess;Endbehave;(4)“状态机”概念及设计
我们可以用输入信号X和电路状态Q来描述时序电路的逻辑功能,这时时序电路称为
状态机(StateMachine)。根据输出信号和输入信号以及电路状态的关系,状态机可以分为两种:穆尔(Moore)型和米利(Mealy)型。Y=F[X,Q]
Y=F[Q]
米利(Mealy)型:穆尔(Moore)型:典型状态机示例—序列信号检测器目标序列信号:“110”序列检测器CLKZdin序列信号检测器工作波形图S0S20/01/0S11/00/10/01/0Mealy型序列信号检测器—状态图序列信号:110Sdin/Z‘1’‘11’S0/0S2/001S1/0101Moore型序列信号检测器—状态图序列信号:110S/Zdin‘1’‘11’S3/1‘110’001LIBRARYieee;USEieee.std_logic_1164.ALL;ENTITYsqsISPORT(din,clk:inStd_logic;z:outStd_logic);ENDsqs;Mealy型-VHDL代码转换ARCHITECTUREaOF
sqsISTYPESTATE_TYPEIS(s0,s1,s2);SIGNALstate:STATE_TYPE;BEGIN
Mealy型-VHDL代码转换PROCESS(clk) BEGIN
If
(clk’EVENTANDclk=‘1’)thenCASEstateIS
WHENs0=>IFdin=‘1’
THENstate<=s1;
elsestate<=s0; ENDIF;
WHENs1=>IFdin=‘1'THENstate<=s2;
elsestate<=s0; ENDIF;
WHENs2=>IFdin='0'THENstate<=s0;
elsestate<=s2; ENDIF;
WHENothers=> state<=s0; ENDCASE;Endif;
ENDPROCESS;z<='1'when(state=s2anddin=’0’)else'0';
--输出不仅与状态有关,而且和输入有关。ENDa;
Mealy型-VHDL代码转换序列信号:110序列检测器CLKZdinRst状态机自启动:RST复位控制LIBRARYieee;USEieee.std_logic_1164.ALL;ENTITYsqsISPORT(Rst,din,clk:inStd_logic;z:outStd_logic);ENDsqs;ARCHITECTUREaOFsqsISTYPESTATE_TYPEIS(s0,s1,s2);SIGNALstate:STATE_TYPE;BEGIN
PROCESS(rst,clk) BEGINIf(Rst=‘1’)thenstate<=s0;elsif
(clk‘EVENTANDclk=’1‘)thenCASEstateIS
WHENs0=>IFdin=‘1’
THENstate<=s1;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 北师大版 四年级下册心理健康 第二十七课 我坚持我成功 教案
- 第5单元 单元分析2024-2025学年五年级语文上册同步教学设计(统编版)
- 北师大版(2019)选择性必修第一册Unit 3 Conservation Lesson 1 The Sixth Extinction 单元整体教学设计
- 黑龙江省孙吴县第一中学2024-2025学年教研联合体高考模拟(三)化学试题含解析
- (大单元整体教学)1.3认识线段教学设计
- 人教版九年级上册24.4弧长和扇形面积教学设计
- 关于海南自由贸易港药品、医疗器械“零关税”政策
- 十天搞定考研单词默写本
- 2025届高考语文复习:赏析析诗歌表达技巧和表现手法+课件
- 职测资料分析:比重变化趋势的逆向考查
- 2024-2025年高中化学 第1章 第2节 第1课时 基态原子的核外电子排布教案 鲁科版选修3
- 机关会议制度管理制度
- 二级建造师继续教育模拟考试题库500题(含答案)
- 2024考研英语二试题及答案解析
- 2024-2030年中国干洗行业市场发展分析及发展趋势与投资前景研究报告
- 七年级上册《道德与法治》说教材
- 2024年中国灵芝产业消费数据分析报告:健康中国
- 2024年新疆维吾尔自治区中考语文试题
- 家庭式托老所创业方案(2篇)
- 2024年低压电工考试题库(经典题库)
- 2024年上海绿洲投资控股集团有限公司招聘笔试冲刺题(带答案解析)
评论
0/150
提交评论