
序列检测器实验报告.docx
6页实验七序列检测器实验一、 实验目的1、 掌握序列检测器的工作原理;2、 掌握时序电路的经典设计方法;3、 学习AHDL语言的状态机的设计方法;二、 原理代码序列检测器是一种同步时序电路,它用于搜索,检测输入的二进制代码 串中是否出现指定的代码序列,001序列检测器的原理图如下:CP __ __ __ __ __ — __ ―X 0 1 0 0 1 0 1 0 110 1Y 0 0 O 0 1 0 0 0 0 0 0 0三、实验内容设计一个1110010序列检测器,即检测器连续收到一组串行码“ 1110010”后,输出检测标志1,否则输出0要求用图形输入法完成:① 作状态图和状态表;② 状态化简,建立最简状态表;③ 写出状态编码;画出状态编码表;④ 建立激励函数,输出函数真值表;⑤ 写出激励函数和输出函数表达式;⑥ 画出逻辑电路测试图;⑦ 逻辑功能仿真,记录仿真波形并加以说明;⑧ 下载验证(两种以上的方式)根据实验要求,得到实验所需要的是八个状态,包括初始状态根据实验要求检 测的序列,做出序列状态表现态S次态/输出S/QD=0D=1初始状态S0S0/0S1/0接收到1S1S0/0S2/0接收到11S2S0/0S3/0接收到111S3S4/0S3/0接收到1110S4S5/0S0/0接收到11100S5S0/0S6/0接收到111001S6S7/1S2/0接收到1110010S7S0/0S1/0确定各种不同状态的的表示并且做出状态表现态Q0Q1Q2次态/输出 Q0*Q1*Q2*/QD=0D=1000 s0000/0001/0001 s1000/0010/0010 s2000/0011/0011 S3100 /0011/0100 S4101 /0000/0101 S5000 /0110/0110 S6111 /1010/0111 S7000 /0001/0根据所得到的状态表写出真值表达式Q0Q1Q2DQ0*Q1*Q2*Q00000000001000000100000001101000100010101010000011001111111000000001001000110100010101100111011010010000101111001101010011110010根据真值表画出卡诺图,并写出函数表达式。
00011110000111111011D0*=D0D2’ X’ +D0D1’ D2+D0’ D1D2X’00101111111101D1*=D0D1D2+D1D2’ X+XD0’ D1+D0’ D2X+D1’ D2X0001111000101111111101D2*= D0D2’ X’ +D0’ D2’ X+XD0’ D1+D1D2X 根据得到的函数方程,画出电路图如下bculie@72 垃CLACLKkuik@ig:> YO构腥@1鸵> Y1xulie@19woTPor> YO5K. vuli«@g :得到序列波形图输出一个时钟信号以方便下载的时候能够比较方便的对输入的序列进行调试手动调整输入 的序列已达到要求,方便检测同时在始终是下跳沿的是后调整输入,这样的话不会出现不能及时的出现z为1时的值Sel为q[2..0]的输出,通过它的值来选择7个输入的值的有效性,并确定result的值,使清 零端有(无)效,以此来得到最后的输出为一还是为0 实验心得:这次的实验收获颇多,一直没有自己用D触发器设计过元件,但是这次自己设计了一个, 虽然在刚刚开始的时候听了同学的讲解,但是最终自己是弄懂了,并会连接和设计,在实验 过程中,由于连线很复杂,容易将线结在一起,所以在连线时要尽量的化简,务必使线少一 点,整个图清晰明了,然后检验时也会少去许多不必要的麻烦在对整个设计的进行状态分析时,要选择好做需要的状态过程,并且分析,不然在最后得方 程画图时,会出现不了期望的结果。
同时在画真值表时也是一样的,一定要分析好各种不同状态下,该挑选何种1为这一方程的 卡诺图中的1,在设计师就不会返工在最后下载实验时,发现不能很好的控制输入的序列,从而得到想要的值,所以将时钟信号 输出,方便实验时对序列的验证。












