使用D触发器设计一个11001序列检测器介绍

合集下载

数字逻辑实验 8_序列检测器

数字逻辑实验 8_序列检测器

实验八序列检测器的设计与仿真一、实验要求1.用VHDL语言设计一个Mealy机以检测“1101001”序列;2.用VHDL语言设计一个Moore机以检测“1101001”序列;3.在文本编辑区使用VHDL硬件描述语言设计逻辑电路,再利用波形编辑区进行逻辑功能仿真,以此验证电路的逻辑功能是否正确。

二、实验内容用VHDL语言设计各一个mealy和moore状态机测试“1101001”位串的序列检测器,并通过仿真波形验证设计的功能是否正确。

三、实验过程由于在报告1中已经详尽描述了如何使用Quartus 2建立逻辑原理图和使用VHDL语言实现元件功能,所以本次的实验报告中便不再赘述上述内容,报告将主要就VHDL 语言描述实现元件的功能的过程进行阐述。

1.Mealy机选择File→New,弹出新建文本对话框,在该对话框中选择VHDL File并单击OK按钮,进入文本编辑窗口,输入VHDL代码。

library ieee;use ieee.std_logic_1164.all;entity melay isport(clk,rst,d: in std_logic;z: out std_logic);end melay;architecture arc of melay istype state_type is(s0,s1,s2,s3,s4,s5,s6);signal state: state_type;beginprocess(clk,rst)beginif rst= '1' thenstate<=s0;elsif (clk'event and clk ='1') thencase state is --1101001when s0 =>if d='1' thenstate<=s1;elsestate<=s0;end if;when s1=>if d='1' thenstate<=s2;elsestate<=s0;end if;when s2=>if d='0' thenstate<=s3;elsestate<=s2;end if;when s3=>if d='1' thenstate<=s4;elsestate<=s0;end if;when s4=>if d='0' thenstate<=s5;elsestate<=s1;end if;when s5=> --1101001if d='0' thenstate<=s6;elsestate<=s1;end if;when s6=>if d='1' thenstate<=s0;elsestate<=s0;end if;end case;end if;end process;process(state,d)begincase state iswhen s6=>if d='1' thenz<='1';elsez<='0';end if;when others=>z<='0';end case;end process;end arc;保存文件并编译,选择菜单File→New,选择Vector Waveform File新建波形图,添加节点,参数设置为:End Time=2us, Grip size=50ns。

《数字电路与数字逻辑》练习题

《数字电路与数字逻辑》练习题

《数字电路与数字逻辑》练习题《数字电路与数字逻辑》练习题一一、填空1.将下列二进制数转为十进制数(1001011)B =()D (11.011)B =()D2.将下列有符号的十进制数转换成相应的二进制数真值、原码、反码和补码(+122)=()真值=()原码=()反码=()补码3.把下列4个不同数制的数(376.125)D 、(110000)B 、(17A)H 、(67)O (按从大到小的次序排列()>()>()>()。

将下列各式变换成最简与或式的形式=+B AB ()=+AB A ()=++BC C A AB ()4.将下列二进制数转为十进制数(101000)B =()D (11.0101)B =()D5.将下列十进制数转为二进制数,八进制数和十六进制数(0.8125)=()B =()O =()H(254.25)=()B =()O =()H6.将下列有符号的十进制数转换成相应的二进制数真值、原码、反码和补码(+125)=()真值=()原码=()反码=()补码(—42)=()真值=()原码=()反码=()补码7.逻辑函数 C A CD AB F ++=的对偶函数 F '是__________________________;其反函数F 是_________________________。

8.当j i ≠时,同一逻辑函数的最小项=?j i m m _________;两个最大项=+j i M M ___________。

9.(43.5)10=(_________)2=(_________)16。

10.n个输入端的二进制译码器,共有_________个输出端,对于每一组输入代码,将有_________个输出端具有有效电平。

11.将下列二进制数转为十进制数(1010001)B=()D(11.101)B=()D12.将下列有符号的十进制数转换成相应的二进制数真值、原码、反码和补码(+254.25)=()真值=()原码=()反码=()补码13.把下列4个不同数制的数(76.125)D、(27A)H、(10110)B、(67)O按从大到小的次序排列()>()>()>()。

1011序列检测器

1011序列检测器

综合设计性实验报告题目:学生姓名:学号:班级:指导教师:学期:2010——2011第2学期目录一基本知识点 (1)二实验器件 (1)三设计思路 (1)四设计过程 (2)(一)三位二进制减法计数器(无效状态000,001)(二)5五引脚功能 (9)六逻辑电路图: (11)七实验结果波形图 (12)八设计心得体会 (12)一基本知识点1、掌握时序电路的设计方法和步骤2、掌握触发器的设计与应用3、掌握移位寄存器的原理与应用4 熟悉集成电路的引脚排列;5 掌握芯片的逻辑功能及使用方法;6 了解序列产生及检测器的组成及工作原理7 会在EWB软件上进行仿真;二实验器件1、移位寄存器74LS194 1片2、负边沿JK触发器74LS112 1片3四输入与非门74LS20 1片4、六输入非门74LS05 1片5 电源一个6 地线一个7 与门,或门,非门若干个8 时钟脉冲一个三设计思路1作原始状态表。

根据给定的电路设计条件构成原始状态表和状态转化图2状态表的简化。

原始状态表通常不是最小化状态表,它往往包括多余的状态,因此必须首先对它进行简化。

3状态分配。

即对简化后的状态给以编码。

这就要根据状态数确定触发器的数量并对每个状态指定一个二进制数构成的编码。

4根据给定的电路设计条件选择触发器根据5 作激励函数和输出函数。

根据选用的触发器激励表和电路的状态表,综合出电路中各触发器的激励函数和电路的输出函数。

⑸6画逻辑图,并检查自启动功能四设计过程(一)101101001信号发生器的设计设计一个信号序列发生器,在产生的信号序列中,含有“1011”信号码,要求用一片移位寄存器,生成信号序列“10110100”,其中含有1011码,其设计按以下步骤进行:、、1本实验所用仪器为移位寄存器74LS194,确定移存器的位数n。

因M=9,故n≥4,用74LS194 的四位。

2确定移存器的九个独立状态。

将序列码101101001按照每四位一组,划分为九个状态,其迁移关系如下所示:3作出状态转换表及状态转换图如下:4 画出状态转化图5 根据以上转化图,画出卡诺图6 利用以上卡诺图将化简,得到D0 =/Q3/Q0+/Q3Q2/Q17根据74LS194功能,将D0作为输入,在Q0端即得到所要的101101001 序列.(二)101101001序列信号检测器的设计用负边沿J-K触发器74LS112,设计一个“1011”序列检测器。

vhdl eda 序列信号发生器与检测器设计

vhdl eda 序列信号发生器与检测器设计

实验三序列信号发生器与检测器设计一、实验目的1.学习一般有限状态机的设计;2.利用状态机实现串行序列的输出与序列的检测。

3.继续学习优化设计。

二、内容与要求利用状态机设计实现实现串行序列的输出与序列的检测,具体要求:1.先设计序列发生器产生序列0111010011011010;2.再设计一个序列信号检测器,若系统检测到串行序列11010则输出为“1”,否则输出为“0”,并将检测到的11010数目显示出来;3.对所设计的电路进行波形仿真和硬件测试;4.整个工程采用顶层文件+底层模块的原理图或文本的设计思路。

三、设计思路/原理图根据实验要求,先设计序列发生器产生序列:0111010011011010;再设计检测器,检测串行信号:11010,若检测到11010信号,则输出“1”,没有检测到则输出“0”,并且将检测到的信号的显示出来。

为简化设计,整个工程采用顶层文件+底层模块的设计方法。

1.序列信号发生器序列信号是指在同步脉冲作用下循环地产生一串周期性的二进制信号。

利用状态机设计,首先定义一个数据类型FSM_ST它的取值为st0到st15的16个状态。

REG s0 s1 s2 s3 s4 s5 s6 s7 Q 0 1 1 1 0 1 0 0 REG s8 s9 s10 s11 s12 s13 s14 s15 Q 1 1 0 1 1 0 1 0 2、序列检测器序列检测器设计的关键在于正确码的收到必须是连续的,这就要求检测器必须记住前一次的正确码及序列,直到在连续的检测中收到的每一位码都与预置码相同。

在此,必须利用状态转移图。

定义预置信号D=“11010”,电路需要分别不间断记忆:初始状态、1、11、110、1101、11010共六种状态,状态转移图:3、计数模块利用序列检测器产生的信号(1和0)作为计数器模块的时钟信号,产生的信号0、1变化,形成类似的CLK信号,实现计数模块计数。

计数模块设计可采用前面的实验二设计。

数字逻辑复习题

数字逻辑复习题

数字逻辑复习题《数字逻辑》复习资料⼀.选择题:1.下列数码均代表⼗进制数6,其中按余3码编码的是()。

A)0110 B)1100 C)1001 D)01012.已知逻辑函数Y=AB+A?B+?A?B,则Y的最简与或表达式为()。

A)A B)A+?A?B C)A+?B D)A+B3.对于J-K触发器,若J=K,则可完成()触发器的逻辑功能。

A)R-S B)D C)T;D)J-K4.下列四个数中,最⼤的数是()。

A)(AF)16 B)(001010000010)8421BCDC)(10100000)2 D)(198)105.逻辑变量的取值1和0可以表⽰()。

A)开关的闭合、断开B)电位的⾼、低C)真与假D)电流的有、⽆6.在何种输⼊情况下,“或⾮”运算的结果是逻辑0。

()A)全部输⼊是0 B)全部输⼊是1C)任⼀输⼊为0,其他输⼊为1 D)任⼀输⼊为17.对于T触发器,若原态Q n=0,欲使新态Q n+1=1,应使输⼊T=()。

A)0 B)1 C)Q D)不确定8.下列触发器中,克服了空翻现象的有()。

A)边沿D触发器B)]主从RS触发器;C)同步RS触发器D)主从JK触发器;9.卡诺图上变量的取值顺序是采⽤()的形式,以便能够⽤⼏何上的相邻关系表⽰逻辑上的相邻。

A)⼆进制码B)循环码C)ASCII码D)⼗进制码10.表⽰任意两位⽆符号⼗进制数需要()⼆进制数。

A)6 B)7 C)8 D)911.余3码10001000对应的2421码为()。

A)01010101 B)10000101 C)10111011 D)1110101112.补码1.1000的真值是()。

A)+1.0111 B)-1.0111 C)-0.1001 D)-0. 100013.标准或-与式是由()构成的逻辑表达式。

A)与项相或B)最⼩项相或C)最⼤项相与D)或项相与14.下列四种类型的逻辑门中,可以⽤()实现三种基本运算。

A)与门B)或门C)⾮门D)与⾮门15.实现两个四位⼆进制数相乘的组合电路,应有()个输出函数。

1011序列发生器与检测器

1011序列发生器与检测器

1011序列发生器与检测器---------时序逻辑课程设计学院:自动化工程学院摘要:该设计实现的是串行序列信号1011的发生与检测。

设计通过移位寄存器74194的环形移位功能实现1011序列的循环发生,74194的串并转换功能实现1011序列的检测。

达到了课题要求。

关键词:74194芯片、环形移位、串并转换、一:设计思路及分析1011序列检测与发生器的实现可分为两部分:第一部分为1011序列发生器;第二部分为1011序列检测器。

1.1011序列发生器:通过之前对组合逻辑电路的学习,我发现要实现1011序列的产生有多种方法。

方法1:使用多路复用器的数据选择功能,将1011序列作为并行数据输入多路复用器的数据输入端,再使用一个计数器由计数器控制多路复用器依次选择1,0,1,1这四个输入数据作为输出,将1011序列串行输出,并使计数器重复计数以使1011序列重复产生。

具体的电路如下:从设计可以看出,这种1011序列发生器使用了两块芯片和一个三输入与非门,并且这种设计使74*163芯片和74*151芯片的扇入不能得到充分利用,并不是很好的设计。

方法2:运用第八章移位寄存器的知识,我们可以通过分析状态图来利用移位寄存器完成1011序列发生器。

通过模仿书本例子设计的1000序列发生器。

我做了如下设计:使用移位寄存器芯片74*194,将初始值设为1011,而后开始移位,当QB,QC,QD都为1时,下一输入为0。

并将QB,QC,QD的与非作为下一输入。

以此实现1011序列的产生,并用QA作为序列发出端。

如图,初始时,RESET为1,使ABCD载入,而后RESET为0,开始移位进行环形计数,并由QD输出1011序列。

2.、1011序列检测器1011序列检测器的实现依然可以用移位寄存器完成。

通过74194进行串并转换,将串行数据转换为并行数据以对数据的四位进行检测。

移位寄存器在左移时输入端为SLSI端,当控制端S1=1,S0=0时,74194为左移位模式,QD*=SLSI,QC*=QD,QB*=QC,QA*=QB。

《数字电路与数字逻辑》练习题

《数字电路与数字逻辑》练习题

《数字电路与数字逻辑》练习题一一、填空1.将下列二进制数转为十进制数(1001011)B =()D (11.011)B =()D2.将下列有符号的十进制数转换成相应的二进制数真值、原码、反码和补码(+122)=()真值=()原码=()反码=()补码3.把下列4个不同数制的数(376.125)D 、(110000)B 、(17A)H 、(67)O (按从大到小的次序排列()>()>()>()。

将下列各式变换成最简与或式的形式=+B AB ()=+AB A ()=++BC C A AB ()4.将下列二进制数转为十进制数(101000)B =()D (11.0101)B =()D5.将下列十进制数转为二进制数,八进制数和十六进制数(0.8125)=()B =()O =()H(254.25)=()B =()O =()H6.将下列有符号的十进制数转换成相应的二进制数真值、原码、反码和补码 (+125)=()真值=()原码=()反码=()补码(—42)=()真值=()原码=()反码=()补码7.逻辑函数C A CD AB F ++=的对偶函数F '是__________________________;其反函数F 是_________________________。

8.当j i ≠时,同一逻辑函数的最小项=⋅j i m m _________;两个最大项=+j i M M ___________。

9.(43.5)10=(_________)2=(_________)16。

10.n个输入端的二进制译码器,共有_________个输出端,对于每一组输入代码,将有_________个输出端具有有效电平。

11.将下列二进制数转为十进制数(1010001)B=()D(11.101)B=()D12.将下列有符号的十进制数转换成相应的二进制数真值、原码、反码和补码(+254.25)=()真值=()原码=()反码=()补码13.把下列4个不同数制的数(76.125)D、(27A)H、(10110)B、(67)O按从大到小的次序排列()>()>()>()。

序列检测器

序列检测器

1001序列检测器的设计一、设计要求设计一个二进制序列检测器,输出为1个二进制随机序列,要求检测序列为1001。

当输入为1001时,检测器输出脉冲信号为“1”,否则输出为“0”。

要求:1.用有限状态机设计;2.画出检测器框图(输入、时钟、复位、随机序列、输出、检测信号);3.分析过程并画出状态转移图。

二、设计过程1.有限状态机的设计有限状态机一般由四个部分组成(1)说明部分状态名定义:用type语句定义数据类型,元素为枚举型;状态变量:定义为信号,便于信息传递(2)主控时序进程:负责状态机运转,时钟驱动下负责状态转换(3)主控组合进程根据外部控制信号和(或)当前状态值,确定下一状态,确定对内、外输出控制信号的内容(4)辅助进程:配合状态机工作的组合进程或时序进程系统输入信号有三个变量,分别为复位信号Restart,时钟信号clk,输入信号din。

系统输出序列为result。

输入输出关系图如下:clkd_in2.状态转移图检测串行输入的d_in中的序列“1001”,当输入为1001时,检测器输出脉冲信号为“1”,否则输出为“0”。

因此,根据题意可以分为以下5个状态:idle:输入为0;S0:输入为1;S1:输入为10;S2:输入为100;S3:输入为1001;相关状态转移图如下:3.源程序本程序在 max+plus II软件平台编写和仿真。

源程序代码如下:Library ieee;Use ieee.std_logic_1164.ALL;ENTITY s5_machine ISPORT(clk, d_in : IN STD_LOGIC ;restart : IN BOOLEAN ;result: OUT STD_LOGIC) ;END ENTITY s5_machine;ARCHITECTURE activ OF s5_machine ISTYPE state IS (idle,s0, s1, s2, s3); -- 利用程序包定义数据类型SIGNAL present_state, next_state: state ;BEGINRestart_And_Switch: PROCESS(clk, restart) -- 第一个进程BEGINIF (restart) THEN -- 监测复位信号present_state<= idle;ELSIF (clk'EVENT AND clk ='1') THEN -- 监测时钟上沿present_state<= next_state;END IF;END processRestart_And_Switch;State_Decision: PROCESS(d_in,present_state) -- 第二个进程BEGINnext_state<= s0;IF (d_in = '0') THENCASE present_state ISWHEN idle=>next_state<=idle;WHEN s0 =>next_state<= s1;WHEN s1 =>next_state<= s2;WHEN s2 =>next_state<= idle;WHEN s3 =>next_state<=idle ;END CASE;ELSIF (d_in = '1')THENCASE present_state ISWHEN idle=>next_state<= s0;WHEN s0 =>next_state<= s0;WHEN s1 =>next_state<= s0;WHEN s2 =>next_state<= s3;WHEN s3 =>next_state<=s0;end case;END IF;END processState_Decision;Output_Decision:PROCESS(present_state)--第三个进程BEGINIF (present_state=s3) thenresult<='1';ELSEresult<='0';END IF;END processOutput_Decision;end ARCHITECTURE activ;三、仿真结果在本次仿真中,输入信号d_in为时钟信号的二分频后的信号11001100,从图示结果中可以看到,当输入序列为1001且复位信号restart为0时,输出信号result高电平,结果正确。

1010序列检测器

1010序列检测器

沈阳航空航天大学北方科技学院课程设计说明书课设名称数字电子技术学生姓名刘红博专业计算机科学与技术班级 B241101 学号 B24110117 指导教师富刚成绩2014年3月沈阳航空航天大学北方科技学院课程设计任务书课程设计题目 1010序列检测器教学部系信息工程系专业计算机科学与技术班级B241101 学号17 姓名刘红博课程设计时间: 2014 年2月24 日至2014 年 3 月日课程设计的内容及要求:(一)主要内容:1、设计一个1010序列检测器的电路。

2、连接电路,实现电路要求的功能。

3、完成课设论文。

(二)基本要求:1、根据数字电路相关知识设计1010序列检测器电路。

2、完成电路所要求的功能,与分析各元件的作用。

3、撰写相关论文。

指导教师富刚2014 年 3 月日1010序列检测器刘红博目录一课题分析 (1)二理论设计 (1)1 状态表 (1)2 状态化简 (2)3 状态编码 (2)4 确定激励函数和输出函数 (3)三电路原理图 (4)四元器件的选择 (5)五实际连线图 (6)六组装调试 (6)七结论 (7)八结束语 (7)九参考文献 (7)题目:1010序列检测器一课题分析试设计一个1010序列检测器,已知典型输入输出序列为输入:001010011101010110 输出:00000100000001000本课题用到了同步时序逻辑电路的设计。

序列检测器可以检测串行输入信号中的特定输入序列。

当串行输入信号中的特定输入序列出现时,则输出为1,否则输出为0.因此,在本课题中,在手动输入脉冲的前提下,当输入1010时,输出为1,小灯亮,否则输出为0,小灯灭。

在本课题所设计的电路中应具有一个输入X和一个输出Z,而且X 是串行输入。

由此可列真值表,写出逻辑表达式、化简,并画出逻辑图,最后连接实物图,完成实验操作。

二理论设计1 状态表2 状态化简找出最大等效类:(S0)、(S1、S4)、(S2)、(S3)以a代表(S0),b代表(S2),c代表(S3),d代表(S1、S4)则最小状态表为:3 状态编码根据状态分配必须遵循的基本原则:(1) a、b相邻,c、d相邻;(2)a、d相邻,a、c相邻,b、d相邻;(3)a、b相邻,a、d相邻,b、d相邻;(4)a应分配为逻辑0.所以,编码方案为:表3编码方案表4 二进制状态表4 确定激励函数和输出函数表5 D2激励表表6 D1激励表表7 Z激励表所以:D2= xy2+ xy1 D1= xy2+ xy1+y1 y2 Z= xy1y2 三电路原理图输入端图1 1010序列检测器原理图四元器件的选择1数字逻辑实验箱DSB-3 1台2元器件:74LS04一块、74LS20一块、74LS194一块图1 74LS04芯片引脚图图2 74LS20芯片引脚图图3 74LS194芯片引脚图3导线若干五实际连线图六组装调试首先,为确保实验的顺利进行。

时序电路设计-101序列检测器

时序电路设计-101序列检测器

数字逻辑设计及应用课程设计报告姓名:雷蕾学号:2010012030036选课号:设计题号: 5一.设计题目:设计101序列检测器二.设计要求要求使用状态机设计一个序列检测器,检测输入数据,当输入中出现101时,输出1,否则输出为0。

不进行重复判断,即当出现10101…时,输出为00100…判断的具体流程如下:1.电路复位,进入状态S0,等待输入2.S0状态下:如果输入为0,则停留在S0,如果输入为1,则跳转到S13.S1状态下:如果输入为0,则跳转到S2,如果输入为1,则停留在S14.S2状态下:如果输入为1,则输出1,并跳转到S0,如果输入为0,则输出0,并跳转到S0检测器电路实现:时钟信号,1 bit输入待判断信号,1bit输出判断结果。

三.设计过程1.设计方案:通过使用ISE编写verilog语言,实现以下过程:1s3只有当s3接收到的输入信号为1的时候,输出才会为1,其余时候输出都为0.2.设计程序:模块文件:`timescale 10ns/1ns//////////////////////////////////////////////////////////////////////////////////// Company:// Engineer://// Create Date: 21:02:40 06/06/2012// Design Name:// Module Name: abcd// Project Name:// Target Devices:// Tool versions:// Description://// Dependencies://// Revision:// Revision 0.01 - File Created// Additional Comments://////////////////////////////////////////////////////////////////////////////////// module abcd(input reset,input clk,input ipt,output reg result);parameter [1:0] s0 = 2'b00, s1 = 2'b01, s2 = 2'b10;reg[1:0] state;always @ (posedge clk)beginif(reset)beginstate<=s0;result<=0;endelsebegincase(state)s0:beginif(ipt==0)beginstate<=s0;result<=0;endelse.beginstate<=s1;result<=0;endends1:beginif(ipt==0)beginstate<=s2;result<=0;endelsebeginstate<=s1;result<=0;endends2:beginif(ipt==0)beginstate<=s0;result<=0;endelsebeginstate<=s0;result<=1;endenddefault:beginstate<=s0;result<=0;endendcaseendendendmodule测试文件:`timescale 10ns / 1ps////////////////////////////////////////////////////////////////////////////// //// Company:// Engineer://// Create Date: 23:05:50 06/06/2012// Design Name: test_detector// Module Name: D:/TDDOWNLOAD/fortwo2/haha.v// Project Name: fortwo2// Target Device:// Tool versions:// Description://// Verilog Test Fixture created by ISE for module: test_detector//// Dependencies://// Revision:// Revision 0.01 - File Created// Additional Comments://////////////////////////////////////////////////////////////////////////////// //module haha;module test_detector();reg clk;reg reset;reg ipt;wire result;reg[20:0] indata=20'b101001110011011110110;integer i;initial clk=1;always #1 clk=~clk;initialbeginreset=1;ipt=0;#4reset=0;for(i=0;i<21;i=i+1)beginipt=indata[i];#2;end#10$stop;endabcd detector_instance(.clk(clk),.reset(reset),.ipt(ipt),.result(result));endmodule3.仿真结果四.设计结论(包括:设计结果分析、设计中遇到的问题、设计心得和体会等) 1.设计结果分析:以时钟信号的一个周期为基准,有仿真结果可看出,当输入(ipt)为连续的一个周期高一个周期的低一个周期的高(即101)时,输出(result)为高。

数字逻辑试卷

数字逻辑试卷

数字逻辑试卷数字逻辑试题1 (闭卷)⼀、填空:(每空1分,共20分) 1、(20.57)8 =()16 2、(63.25) 10= ( )2 3、(FF )16= ( )104、[X]原=1.1101,真值X= __________,[X]补 = ___________。

5、[X]反=0.1111,[X]补= _____________。

6、-9/16的补码为_________________,反码为_______________。

7、已知葛莱码为1000,⼆进制码为___________________,已知⼗进制数为92,其余三码为___________________。

8、时序逻辑电路的输出不仅取决于当时的________,还取决于电路的 ________ 。

9、逻辑代数的基本运算有三种,它们是________ 、________ 、_________ 。

10、1⊕⊕=B A F ,其最⼩项之和形式为______________________。

11、RS 触发器的状态⽅程为________________,约束条件为______________。

12、已知AB B A F +=1、B A B A F +=2,则两式之间的逻辑关系为________________。

13、触发器的CP 时钟端不连接在⼀起的时序逻辑电路称之为_______步时序逻辑电路。

⼆、简答题(20分)1、列出设计同步时序逻辑电路的步骤。

(5分)2、化简)(B A B A ABC B A F +++= (5分)3、分析以下电路,其中RCO 为进位输出。

(5分)4、下图为PLD 电路,在正确的位置添 * ,设计出B A F ⊕=函数。

(5分)三、分析题(30分)1、分析以下电路,说明电路功能。

(10分)2、分析以下电路,其中X为控制端,说明电路功能。

(10分)3、分析以下电路,说明电路功能。

(10分)四、设计题(30分)1、设计⼀个带控制端的组合逻辑电路,控制端X=0时,实现BAF⊕=,控制端X=1时,实现ABF=,⽤与⾮门及反相器实现。

1100110011检测

1100110011检测

《电子设计基础》课程报告设计题目:用的D触发器设计序列检测器学生班级:电气0903学生学号:20095690学生姓名:刘星指导教师:刘泾时间:2011、6、17西南科技大学信息工程学院一.设计题目及要求1.用D触发器设计一个1100110011的序列检测器。

二.题目分析与方案选择二进制序列信号检测器是一种能够检测输入的一串二进制编码,当该二进制码与事先设定的码一致时,检测电路输出高电平,否则输出低电平。

用D触发器一般有两种设计方法,一种方法就是同步时序电路的设计方法,一般来说,同步时序逻辑电路的设计包含一下几个步骤:a、根据逻辑功能要求,建立原始状态转换表或状态图b、状态化简c、状态分布d、选定触发器的类型并确定状态方程、驱动方程和输出方程e、画出逻辑图f、检测设计的电路能否自启动另一种方法就是将触发器接成移位寄存器进行设计。

对于像1100110011这样的长的序列,选择移位寄存器进行设计较简单。

设计原理框图如图1所示。

图1 设计框图1、计数电路:此电路用74ls161设计成的10为同步置数电路。

输入端A、B、C、D接地表示0000,输出端QA、QB、QC、QD输出为1001时,其中QA、QB 通过一个与非门反馈回置数端LD,RD=LD=EP=ET=1时,74161处于计数状态,于是此计数器就将循环得十位计数。

其具体电路图如图2所示。

图2 计数电路图2、数据选择电路此电路是由两片74ls151组成的十位数据选择器,第一片的输入端D0、D1、D4、D5接高电平D2、D3、D6、D7接地,第二片D0、D1接高电平。

当第一片的地址端为000时,D0输出;地址端为001时,D1输出;地址端为010时,D2端输出;地址端为011时,D3端输出;以此类推当地址端为111时,D7端输出。

当第二片的地址端为000时,第二片的D0输出;当第二片地址端为001时,第二片的D1输出。

其电路图如图3所示。

74LS151D图3 数据选择电路3、序列产生两片选择器的输出端经过一个或门输出,计数器的输出端输出循环的0000——1001。

使用D触发器设计一个11001序列检测器介绍

使用D触发器设计一个11001序列检测器介绍

讨论使用D触发器设计一个11001序列检测器,讨论序列可交迭(Overlap)检测和不可交迭检测在设计上的区别,讨论分别采用Mealy机设计和采用Moore机设计的区别,讨论未用状态的处理问题。

【要求】给出电路原理图或HDL代码,要求进行仿真,并给出仿真结果。

1.原件介绍D触发器(74LS74)、“与”门(74LS08)、“或”门(74LS32)、“非”门(74LS04),集成电路引脚2.设计思路根据要求,设计的序列检测器有一个外部输入x和一个外部输出Z。

输入和输出的逻辑关系为:当外部输入x第一个为"1",外部输出Z为"0";当外部输入x第二个为"1",外部输出Z为"0";当外部输入第三个x为"0",外部输出Z为"0",当外部输入第四个x为“0”,外部输出Z为0,当外部输入第五个x为“1”,输入X 0 1 1 1 0 0 1 0 1输出Y 0 0 0 0 0 0 1 0 0要判别序列检测器是否连续接收了"11001",电路必须用不同的状态记载外部输入x的值。

假设电路的初始状态为A,x 输入第一个"1",检测器状态由A装换到B,用状态B记载检测器接受了"11001"序列的第一个"1",这时外部输出Z=0;x输入第二个"1",检测器状态由B装换到C,用状态C记载检测器接了“11001”序列的第二个"1",外部输出Z=0;x输入第三个"0",检测器状态由C装换到D,外部输出Z=0;x输入第四个为“0”,检测器状态由D装换到E,外部输出Z=0;x输入第五个为“1”,检测器状态由E装换到F,外部输出Z=1。

然后再根据外部输入及其他情况时的状态转移,写出相应的输出。

111序列检测器

111序列检测器

“111”序列检测器1设计内容题目:“1 1 1”序列检测器。

原始条件:使用D触发器( 74 LS 74 )、“与”门 ( 74 LS 08 )、“或”门( 74 LS 32 )、非门( 74 LS 04 ),设计“1 1 1”序列检测器。

集成电路引脚图:图12设计要求1.能够运用数字逻辑的理论和方法,把时序逻辑电路设计和组合逻辑电路设计相结合,设计一个有实际应用的数字逻辑电路。

2.使用同步时序逻辑电路的设计方法,设计“1 1 1”序列检测器。

写出设计中的5个过程。

画出课程设计图。

3.根据74 LS 74、74 LS 08、74 LS 32、74 LS 04集成电路引脚号,在设计好的“1 1 1”序列检测器电路图中标上引脚号。

4.在试验设备上,使用74 LS 74、74 LS 08、74 LS 32、74 LS 04集成电路连接、调试和测试“1 1 1”序列检测器电路。

3设计原理及过程3.1建立原始状态图和状态表设计的序列检测器的功能是检测外部输入二进制代码中的“111”序列。

该同步时序逻辑电路有一个外部输入x和一个外部输出Z。

在作原始状态图时,一旦外部输入序列输入一个“1”,就要把它记载下来,因为这个“1”可能是“111”序列的第一个“1”。

紧接着下一个输入是否为“1”,因为“11”是外部输入“111”序列的前二位。

其后如果再输入一个“1”,外部输出就为“1”。

所以电路必须记住外部输入二进制代码中的“1”、“11”、“111”这3种输入情况。

每一种输入情况应该用一个状态记录下来。

根据要求,假设外部输入x的序列和相应的外部输出Z如下:外部输入x:0 1 1 0 1 1 1 0 0 0 1 1 1 1 0 1外部输出Z:0 0 0 0 0 0 1 0 0 0 0 0 1 1 0 0在建立原始状态图和状态表之前,并不知道实现上述逻辑功能的同步时序逻辑电路有多少个状态,可以指定某个状态为初始状态,在这里用A、B表示电路的不同状态。

数字逻辑课程设计_“111”序列检测器

数字逻辑课程设计_“111”序列检测器

课程设计课程名称数字逻辑设计题目“111”序列检测器专业计算机科学与技术学院班级姓名指导教师2011 年 3 月10 日课程设计任务书学生姓名学生专业班级计算机0908班指导教师学院名称计算机科学与技术学院一、题目:“1 1 1”序列检测器。

原始条件:使用D触发器( 74 LS 74 )、“与”门( 74 LS 08 )、“或”门( 74 LS 32 )、非门( 74 LS 04 ),设计“1 1 1”序列检测器。

二、要求完成设计的主要任务如下:1.能够运用数字逻辑的理论和方法,把时序逻辑电路设计和组合逻辑电路设计相结合,设计一个有实际应用的数字逻辑电路。

2.使用同步时序逻辑电路的设计方法,设计“1 1 1”序列检测器。

写出设计中的5个过程。

画出课程设计图。

3.根据74 LS 74、74 LS 08、74 LS 32、74 LS 04集成电路引脚号,在设计好的“1 1 1”序列检测器电路图中标上引脚号。

4.在试验设备上,使用74 LS 74、74 LS 08、74 LS 32、74 LS 04集成电路连接、调试和测试“1 1 1”序列检测器电路。

三、课程设计进度安排:指导教师签名:2011 年3 月10 日系主任(责任教师)签名:2011 年3月10 日一、实验目的:1、深入了解与掌握同步时序逻辑电路的设计过程;2、了解74LS74、74LS08、74LS32、及74LS04芯片的功能;3、能够根据电路图连接好实物图,并实现其功能。

学会设计过程中的检验与完善。

二、实验内容描述:题目:“111”序列检测器。

原始条件:使用D触发器(74LS74)、“与”门(74LS08)、“或”门(74LS32)、“非”门(74LS04),设计“111”序列检测器。

集成电路引脚图:三、实验设计过程:第一步,画出原始状态图和状态表。

根据任务书要求,设计的序列检测器有一个外部输入x和一个外部输出z。

输入和输出的逻辑关系为:当外部输入x第一个为“1”,外部输出z为“0”;当外部输入x第二个为“1”,外部输出为“0”;当外部输入x第三个为“1”,外部输出才为“1”。

课程设计——001序列检测器

课程设计——001序列检测器

学 号:课 程 设 计题 目 数字逻辑 设计题目 001序列检测器 学 院 计算机科学与技术 专 业 计算机科学与技术班 级 姓 名 指导教师2011 年 03 月 06 日目录1、课程设计任务书··························P32、正文····································P42.1、使用的芯片及其引脚图···············P42.2、逻辑实验电路的具体分析与设计·······P42.3、具体实验操作及调试·················P102.4、小结及体会·························P122.5、参考文献···························P123、评分表··································P13课程设计任务书学生姓名学生专业班级指导教师学院名称计算机科学与技术学院一、题目:“001”序列检测器。

数字逻辑课程设计——111序列检测器

数字逻辑课程设计——111序列检测器

课程设计课程名称数字逻辑设计题目“1 1 1”序列检测器专业计算机科学与技术专业班级0706姓名孙禹指导教师巩晶2009 年06 月28 日课程设计任务书学生姓名孙禹学生专业班级计算机 0706指导教师巩晶学院名称计算机科学与技术学院一、题目:“1 1 1”序列检测器。

原始条件:使用D触发器( 74 LS 74 )、“与”门( 74 LS 08 )、“或”门( 74 LS 32 )、非门( 74 LS 04 ),设计“1 1 1”序列检测器。

二、要求完成设计的主要任务如下:1.能够运用数字逻辑的理论和方法,把时序逻辑电路设计和组合逻辑电路设计相结合,设计一个有实际应用的数字逻辑电路。

2.使用同步时序逻辑电路的设计方法,设计“1 1 1”序列检测器。

写出设计中的5个过程。

画出课程设计图。

3.根据74 LS 74、74 LS 08、74 LS 32、74 LS 04集成电路引脚号,在设计好的“1 1 1”序列检测器电路图中标上引脚号。

4.在试验设备上,使用74 LS 74、74 LS 08、74 LS 32、74 LS 04集成电路连接、调试和测试“1 1 1”序列检测器电路。

指导教师签名:2009 年6 月29 日系主任(责任教师)签名:2009 年月日一、实验目的:1、深入了解与掌握同步时序逻辑电路的设计过程;2、了解74LS74、74LS08、74LS32及74LS04芯片的功能;3、能够根据电路图连接好实物图,并实现其功能。

学会设计过程中的检验与完善。

二、实验内容描述:题目:“1 1 1”序列检测器。

原始条件:使用D触发器( 74 LS 74 )、“与”门( 74 LS 08 )、“或”门( 74 LS 32 )、非门( 74 LS 04 ),设计“1 1 1”序列检测器。

集成电路引脚图:D触发器( 74 LS 74 ) “与”门( 74 LS 08 )“或”门( 74 LS 32 ) 非门( 74 LS 04 )三、实验设计过程:第1步,画出原始状态图和状态表。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

讨论使用D触发器设计一个11001序列检测器,讨论序列可交迭(Overlap)检测和不可交迭检测在设计上的区别,讨论分别采用Mealy机设计和采用Moore机设计的区别,讨论未用状态的处理问题。

【要求】给出电路原理图或HDL代码,要求进行仿真,并给出仿真结果。

1.原件介绍D触发器(74LS74)、“与”门(74LS08)、“或”门(74LS32)、“非”门(74LS04),集成电路引脚2.设计思路根据要求,设计的序列检测器有一个外部输入x和一个外部输出Z。

输入和输出的逻辑关系为:当外部输入x第一个为"1",外部输出Z为"0";当外部输入x第二个为"1",外部输出Z为"0";当外部输入第三个x为"0",外部输出Z为"0",当外部输入第四个x为“0”,外部输出Z为0,当外部输入第五个x为“1”,输入X 0 1 1 1 0 0 1 0 1输出Y 0 0 0 0 0 0 1 0 0要判别序列检测器是否连续接收了"11001",电路必须用不同的状态记载外部输入x的值。

假设电路的初始状态为A,x 输入第一个"1",检测器状态由A装换到B,用状态B记载检测器接受了"11001"序列的第一个"1",这时外部输出Z=0;x输入第二个"1",检测器状态由B装换到C,用状态C记载检测器接了“11001”序列的第二个"1",外部输出Z=0;x输入第三个"0",检测器状态由C装换到D,外部输出Z=0;x输入第四个为“0”,检测器状态由D装换到E,外部输出Z=0;x输入第五个为“1”,检测器状态由E装换到F,外部输出Z=1。

然后再根据外部输入及其他情况时的状态转移,写出相应的输出。

以上分析了序列检测器工作,由此可画出原始状态图。

根据原始状态图可列出原始状态表。

状态转换表ABDCEF1\01\00\00\01\10\00\01\01\00\00\0ZZ=A 0'1'2Q Q Q Q2*='01'2'Q Q Q AQ1*=01'202Q Q Q Q AQ +'Q0*='0'1'01'2'210'Q AQ Q Q AQ Q Q Q A ++D2=Q2* D1=Q1* D0=Q0*3.未用状态关于未用状态涉及到了D 触发器自启动的检验:前一状态为 111时,Q3*=A ’; Q2*=0; Q1*=A,下一状态为有效状态。

前一状态为110时,Q3*=A; Q2*=1; Q1*=1,对A 值分类讨论: A=0,下一状态为有效状态;A=1,下一状态为111,再下一个状态为有效状态。

4.实际代码设计与仿真MOORE 机有交迭的程序设计library ieee;use ieee.std_logic_1164.all; entity schk isport(din,clk,rst:in std_logic; sout:out std_logic); end schk;architecture behave of schk istype states is(s0,s1,s2,s3,s4,s5); signal st,nst:states :=s0; begincom: process(st,din) begin case st iswhen s0=> if din='1' then nst <=s1;else nst <= s0; end if;when s1=> if din='1' then nst <=s2;else nst <= s0; end if;when s2=> if din='0' then nst <=s3;else nst <= s0; end if;when s3=> if din='0' then nst <=s4;else nst <= s0; end if;when s4=> if din='1' then nst <=s5;else nst <= s0; end if;when s5=> if din='1' then nst <=s2;else nst <= s0;end if;when others => nst <=s0; end case; end process;reg:process (clk,rst) begin--shixujinchengif rst='1' then st <=s0;elsif clk'event and clk='1' then st <= nst; end if;end process reg;sout <= '1' when st=s5 else '0';end behave;仿真结果小的体现了交迭mealy有交迭的程序设计library ieee;use ieee.std_logic_1164.all;entity schk2 isport(din,clk,rst:in std_logic;sout:out std_logic);end schk2;architecture behave of schk2 istype states is(s0,s1,s2,s3,s4,s5);signal st:states :=s0;beginprocess(clk,rst,st,din) beginif rst='1' then st <=s0; elsif clk'event and clk='1' then case st iswhen s0=> if din='1' then st <=s1; else st <= s0;end if; when s1=> if din='1' then st <=s2; else st <= s0;end if; when s2=> if din='0' then st <=s3; else st <= s0;end if; when s3=> if din='0' then st <=s4; else st <= s0;end if; when s4=> if din='1' then st <=s5; else st <= s0;end if; when s5=> if din='1' then st <=s2; else st <= s0;end if; when others => st <=s0;end case;if(st=s5) then sout<='1'; else sout <= '0';end if ; end if;end process;end behave;实现检测11001的图体现交迭的图Mealy机无交叠的library ieee;use ieee.std_logic_1164.all;entity schk2 isport(din,clk,rst:in std_logic;sout:out std_logic);end schk2;architecture behave of schk2 istype states is(s0,s1,s2,s3,s4,s5);signal st:states :=s0;beginprocess(clk,rst,st,din) beginif rst='1' then st <=s0; elsif clk'event and clk='1' then case st iswhen s0=> if din='1' then st <=s1; else st <= s0; end if;when s1=> if din='1' then st <=s2; else st <= s0; end if;when s2=> if din='0' then st <=s3; else st <= s0; end if;when s3=> if din='0' then st <=s4; else st <= s0; end if;when s4=> if din='1' then st <=s5; else st <= s0; end if;when s5=> if din='1' then st <=s0; else st <= s0; end if;when others => st <=s0;end case;if(st=s5) then sout<='1'; else sout <= '0';end if ; en d if;end process;end behave;体现没有交迭的Moore没有交迭的图library ieee;use ieee.std_logic_1164.all;entity schk isport(din,clk,rst:in std_logic;sout:out std_logic);end schk;architecture behave of schk istype states is(s0,s1,s2,s3,s4,s5);signal st,nst:states :=s0;begincom: process(st,din) begincase st iswhen s0=> if din='1' then nst <=s1;else nst <= s0; end if;when s1=> if din='1' then nst <=s2;else nst <= s0; end if;when s2=> if din='0' then nst <=s3;else nst <= s0; end if;when s3=> if din='0' then nst <=s4;else nst <= s0; end if;when s4=> if din='1' then nst <=s5;else nst <= s0; end if;when s5=> if din='1' then nst <=s0;else nst <= s0; end if;when others => nst <=s0;end case;end process;reg:process (clk,rst) begin--shixujinchengif rst='1' then st <=s0;elsif clk'event and clk='1' then st <= nst; end if;end process reg;sout <= '1' when st=s5 else '0';end behave;5.关于二者设计上的不同Mealy状态机与Moore有限状态机不同,Mealy有限状态机的输出不但与当前状态有关,而且与输入信号的当前值有关,所以在st的赋值上二者会有不同,Moore赋给nst(下一状态的),mealy给st。

相关文档
最新文档