EDA实验报告序列检测器的VHDL设计.doc

EDA实验报告序列检测器的VHDL设计.doc

ID:56907264

大小:319.50 KB

页数:8页

时间:2020-07-23

EDA实验报告序列检测器的VHDL设计.doc_第1页
EDA实验报告序列检测器的VHDL设计.doc_第2页
EDA实验报告序列检测器的VHDL设计.doc_第3页
EDA实验报告序列检测器的VHDL设计.doc_第4页
EDA实验报告序列检测器的VHDL设计.doc_第5页
资源描述:

《EDA实验报告序列检测器的VHDL设计.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验七序列检测器的VHDL设计一、实验目的用状态机实现序列检测器的设计,了解一般状态机的设计与应用。二、实验设计原理序列检测器可用于检测一组或多组由二进制码组成的脉冲序列信号,当序列检测器连续收到一组串行二进制码后,如果这组码与检测器中预先设置的码相同,则输出1,否则输出0。由于这种检测的关键在于正确码的收到必须是连续的,这就要求检测器必须记住前一次的正确码及正确序列,直到在连续的检测中所收到的每一位码都与预置数的对应码相同。在检测过程中,任何一位不相等都将回到初始状态重新开始检测。书上P168例5-11描述的电路完成对序列数“”的检测,当这

2、一串序列数高位在前(左移)串行进入检测器后,若此数与预置的密码数相同,则输出“A”,否则仍然输出“B”。三、实验内容用VHDL状态机设计一个8位序列信号检测器。要求:利用QuartusII进行文本编辑输入、仿真测试并给出仿真波形,了解控制信号的时序,最后进行引脚锁定并完成硬件测试实验。程序设计及程序分析如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYSCHKISPORT(DIN,CLK,CLR:INSTD_LOGIC;AB:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDSC

3、HK;ARCHITECTUREbehavOFSCHKISSIGNALQ:INTEGERRANGE0TO8;SIGNALD:STD_LOGIC_VECTOR(7DOWNTO0);BEGIND<=“”;PROCESS(CLK,CLR)BEGINIFCLR=‘1'THENQ<=0;ELSIFCLK'EVENTANDCLK='1'THENCASEQISWHEN0=>IFDIN=D(7)THENQ<=1;ELSEQ<=0;ENDIF;WHEN1=>IFDIN=D(6)THENQ<=2;ELSEQ<=0;ENDIF;WHEN2=>IFDIN=D(5)TH

4、ENQ<=3;ELSEQ<=0;ENDIF;WHEN3=>IFDIN=D(4)THENQ<=4;ELSEQ<=0;ENDIF;WHEN4=>IFDIN=D(3)THENQ<=5;ELSEQ<=0;ENDIF;WHEN5=>IFDIN=D(2)THENQ<=6;ELSEQ<=0;ENDIF;WHEN6=>IFDIN=D(1)THENQ<=7;ELSEQ<=0;ENDIF;WHEN7=>IFDIN=D(0)THENQ<=8;ELSEQ<=0;ENDIF;WHENOTHERS=>Q<=0;ENDCASE;ENDIF;ENDPROCESS;PROCE

5、SS(Q)BEGINIFQ=8THENAB<=“1010”;ELSEAB<=“1011”;ENDIF;ENDPROCESS;ENDbehav;四、仿真分析编译仿真后的波形如下所示:由仿真结果可以看到,由于预置的密码数是“”,当输入的序列数与上述的数字相同,输出才由B变成A。五、硬件测试过程①.按实验板“系统复位”键;②.用键2和键1输入2位十六进制待测序列数“”;③.按键7复位(平时数码6指示显“B”);④.按键6(CLK)8次,这时若串行输入的8位二进制序列码(分别显示于数码管2和数码管1以及发光管D8~D0)与预置码“”相同,则数码6应从

6、原来的B变成A,表示序列检测正确,否则仍为B。六、实验内容②将8位待测预置数作为外部输入信号,即可以随时改变序列检测器中的比较数据。写出此程序的符号化单进程有限状态机。程序设计如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYSCHK2ISPORT(DIN,CLK,CLR:INSTD_LOGIC;SHR:INSTD_LOGIC_VECTOR(7DOWNTO0);AB:OUTSTD_LOGIC_VECTOR(3DOWNTO0));ENDE

7、NTITYSCHK2;ARCHITECTUREbehavOFSCHK2ISSIGNALQ:INTEGERRANGE0TO8;SIGNALD:STD_LOGIC_VECTOR(7DOWNTO0);BEGIND<=SHR;PROCESS(CLK,CLR)BEGINIFCLR='1'THENQ<=0;ELSIFCLK'EVENTANDCLK='1'THENCASEQISWHEN0=>IFDIN=D(7)THENQ<=1;ELSEQ<=0;ENDIF;WHEN1=>IFDIN=D(6)THENQ<=2;ELSEQ<=0;ENDIF;WHEN2=>IF

8、DIN=D(5)THENQ<=3;ELSEQ<=0;ENDIF;WHEN3=>IFDIN=D(4)THENQ<=4;ELSEQ<=0;ENDIF;WHEN4=>IF

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。