




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验三 序列信号发生器与检测器设计一、 实验目的 (1) 掌握关于串行序列的设计。 (2)掌握顶层与底层模块的设计。 (3)掌握状态机的设计。二、 实验内容与要求(1) 设计序列发生器,产生序列:0111010011011010。(2) 设计检测器,若检测到串行序列11010,则输出为1,否则输出为0,并对其进行仿真和硬件测试。三、 设计原理(1) 序列发生器rrrcout00000000110010100111010000101101100011101000110011101001011111001110101110111110每来一个脉冲,rrr加一,四位二进制,这样就可以顺序产生16个所需的zout组成的序列;每16个脉冲循环产生一次;cle为复位信号,当它为0时,复位,否则的话,不影响序列的顺序产生输出。设计上就可用case语句实现。(2) 序列信号检测器每收到一个符合要求的串行码就需要用一个状态进行记忆。串行码长度为5位,需要5个状态;另外,还需要增加一个“未收到一个有效位”状态,共6个状态;画出状态转换图,如图所示,这是一个莫尔状态机。6个状态机根据编码原则可以用3位二进制数来表示。011011100ABCDFE当到达F状态时,zout输出为1,否则为0。(3)计数器可利用上个实验的计数器,将其改为模999的就可以;因为这是关于测zout的数量的,因此必须用zout作为计数器的时钟输入端。(4)顶层的设计顶层可用原理图的方法设计,这连接方便,清晰,不容易出错。将序列发生器的输出端接到序列检测器的输入端,实现检测;序列检测器的输出端连接计数器实现计数功能。四、 实验仪器 PC机,试验箱,quartus软件五、 实验程序(1)序列发生器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; -IEEE库使用说明ENTITY xulie IS PORT( CLK,cle:IN STD_LOGIC; -CLK为时钟信号 cout:OUT STD_LOGIC); -cle为复位信号END xulie;ARCHITECTURE one OF xulie IS SIGNAL rrr:STD_LOGIC_VECTOR(3 DOWNTO 0); -rrr为1个四位矢量信号 SIGNAL c:STD_LOGIC:=0; -c为一个给输出端口赋值的信号BEGIN PROCESS(CLK,cle) BEGIN IF(cle=0)THEN rrr=0000;ELSE -复位 IF(CLKEVENT AND CLK=1)THEN rrrccccccccccccccccc=0; END CASE; END PROCESS; cout=transport c after 30 ns; -将c的值赋给coutEND one;将其封装成可调用的元件为(2) 序列检测器LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY ce ISPORT(DIN,CLK,CLR : IN STD_LOGIC; -串行输入数据位/工作时钟/清零信号 zout: OUT STD_LOGIC); -检测结果输出end ce;ARCHITECTURE behav OF ce IS TYPE STATE_TYPE IS -将状态符号化,共有六个状态 (A,B,C,D,E,F); SIGNAL STATE: STATE_TYPE; -状态变量是STATE,类型为STATE_TYPE SIGNAL S : STD_LOGIC_VECTOR(4 DOWNTO 0); BEGIN S =11010; -用于作为比较的正确序列 PROCESS(CLK,CLR)BEGINIF CLR = 1 THEN STATE IF DIN = S(4) THEN STATE = B ; ELSE STATE IF DIN = S(3) THEN STATE = C ; ELSE STATE IF DIN = S(2) THEN STATE = D ; ELSE STATE IF DIN = S(1) THEN STATE = E ; ELSE STATE IF DIN = S(0) THEN STATE = F ; ELSE STATE STATE=A;END CASE ;END IF ;END PROCESS ; zout0); -异步清零 elsif falling_edge(CLK) then -判端时钟下降沿到来 if en=1 then -判断使能端是否有效 if mmm0); end if; end if; end if; m1(3 downto 0)=mmm(3 downto 0); m2(3 downto 0)=mmm(7 downto 4); m3(3 downto 0)=mmm(11 downto 8); -数码管输出显示 end process; end;封装成的元件为(4) 顶层原理图六、 实验步骤(1)建立工作库文件夹,输入设计项目原理图或VHDL代码并存盘。(2)将设计项目设置成Project,选目标器件并编译。(3)建立仿真波形文件,进行波形仿真。 (4)引脚锁定,包装元件。(5) 分配管脚后在进行编译一次。(6) 配制文件下载:选择ToolProgrammer,在Mode栏选择JTAG,选中打勾下载文件右侧第一个小框。单击Hardware Setup,双击ByteBlasterMVclose。(7) 单击Start,当Progress显示100%以及在底部显示“Configuration Succeeded”时,即可以在试验箱上进行操作了。七、硬件测试 下载到EDA实验箱上测试,按下相应的按键。当选则按下53键即cle置1,按下55键即en置1,不按56键和54键两个清零键时,可通过LED灯的亮暗观察到序列发生器产生“011101001101010”,且计数器在序列为“11010”时计数加一,计数正确。当不按下53复位键时(即为0),cout即LED灯1一直不亮,说明被复位,为0;当再次按下时,LED灯才会出现亮的情况,且产生序列的序列从新产生为“011101001101010”,说明当cle为1时,序列发生器产生序列。当不按下55键时,计数器记录的数不变化,说明不能正常计数,计数停止了。当将54键按下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年工业互联网平台雾计算协同机制下的设备互联与协同报告
- 中学STEM教育科创馆项目招标文件
- 教学副校长在全体教师大会上讲话:把“听课”听出味儿来把“教研”教进心里去
- 八年级班会课件 +驶入学习快车道;科学逆袭分化
- 2025年春节期间全球资产表现分析报告
- 巡察中违反财经纪律课件
- 岩石照片课件
- 输电安全知识培训通知课件
- 小麦机收减损安全培训课件
- 输液故障及处理
- FLUENT 15 0流场分析实战指南
- 弱电维护保养合同
- GB/T 41972-2022铸铁件铸造缺陷分类及命名
- YY/T 0471.3-2004接触性创面敷料试验方法 第3部分:阻水性
- GB/T 3871.9-2006农业拖拉机试验规程第9部分:牵引功率试验
- PEP小学英语五年级上册第四单元全国优质课赛课一等奖《思维导图在小学英语复习课的应用》精品课件
- 新闻传播中的媒介素养课件
- 超疏水材料课件
- 中医刮痧法诊疗操作评分标准
- 腧穴定位法课件
- 社会体育导论PTPPT课件讲义
评论
0/150
提交评论