6 计数器与序列检测器仿真实验报告
更新时间:2024-03-27 10:51:02 阅读量: 综合文库 文档下载
- 6v推荐度:
- 相关推荐
实验六 计数器与序列检测器的仿真
一、实验内容
1.用VHDL语言设计一个按余3码顺序计数的计数器,并进行仿真与分析; 2.用VHDL语言设计一个?1101001?位串的序列检测器,并仿真与分析。 二、实验要求
1.进实验室前,请写一份预习报告;进实验室时经指导老师检查后,才可上机操作。
2.预习报告内容有:
用VHDL语言编写余3码计数器程序;
用VHDL语言编写?1101001?序列检测器程序。
3.在文本编辑区使用VHDL硬件描述语言设计逻辑电路,再利用波形编辑区进行逻辑功能仿真,以此验证电路的逻辑功能是否正确,最后在实验箱上进行下载验证。
4.实验结束前,由指导老师检查了仿真波形和实验箱上的实验结果后方可离开。
三、电路功能介绍
1、计数器
计数器: 一般来说,在状态图中包含有一个循环(见下图)的任何时钟时序电路都可称为计数器。
计数器的模是指在循环中的状态个数。
一个有m个状态的计数器称为模m计数器,有时也称为m分频计数器。如果一个计数器的模不是2的幂,就会有多余状态,在正常工作时是不用这些状态的。
最常用的计数器可能就是n位二进制计数器。这样的计数器有n个触发器及2n
1
种状态,这些状态的循环顺序是0, 1, 2, ..., 2n-1, 0, 1, ...。其中,每一种状态都被编码成对应的n位二进制整数。
行波计数器:当某一位由1变到0,这一位就会向高位产生一个进位,由低位到高位,每次传送一位,如T触发器。
同步计数器: 所有的触发器都共用一个CLK信号,在经过仅仅tTQ纳秒的延迟后,所有的触发器的输出都同时变化,它包括两种结构:同步串行计数器和同步并行计数器。
1.同步串行计数器:采用一个主计数使能信号CNTEN来实现控制。每一个T触发器要发生翻转的充要条件是CNTEN信号有效且所有的低阶计数位都为1,同步n位二进制计数器的每一位都可以用一定数量的逻辑元件来实现,它的缺点是组合型的使能信号由最低位到最高位串行传送,如果时钟周期太短的话,计数器LSB(最低位)的变化可能来不及传送到MSB(最高位)。
2.同步并行计数器:每一个EN输入都用一个专门的与门来驱动,这样,CNTEN信号到达各个触发器的EN输入端只需要经过一级逻辑电路,它是最快的二进制计数器的结构形式。
2
2.序列检测器
应用状态机的概念设计一个序列检测器,以?1110010?序列检测器的设计为例。该序列检测器收到一组串行码(1110010)后输出检测标志为‘1’,否则为‘0’。
3
一、计数器
1. VHDL语言实现
library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity count is
port(clk,clr,en:in std_logic;
a:out std_logic_vector(3 downto 0); cout:out std_logic); end count;
architecture bhv of count is
signal b:std_logic_vector(3 downto 0); begin
process(clk,clr,en,b) begin
if(clr='1') then b<=\elsif(clk'event and clk='1') then if(en='1') then
if(b<\ else b<=\ end if; end if; end if;
if(b=\else cout<='0'; end if; a<=b; end process; end bhv; 2. 波形仿真
4
3. 逻辑图
clrb[1..0]PREDQ4' h1 --ENACLRADDERA[3..0]B[3..0]Add0b[3..2]PREA[3..0]Equal04' hC --B[3..0]clken+LessThan0DQ=EQUALcouta[3..0]ENACLRA[3..0]4' hC --B[3..0] use ieee.std_logic_1164.all; entity xulie is port(clk,rst,d:in std_logic; z: out std_logic); end xulie; architecture bhv of xulie is type state_type is(s0,s1,s2,s3,s4,s5,s6); --状态定义 signal state: state_type; --状态寄存器 begin process(clk,rst) --次态设置 begin if rst= '1' then state<=s0; --异步重启 elsif (clk'event and clk ='1') then case state is --根据d判断状态转移 when s0 => if d='1' then state<=s1; else state<=s0; end if; when s1=> if d='1' then state<=s2; else state<=s0; 5 end if; when s2=> if d='0' then state<=s3; else state<=s2; end if; when s3=> if d='1' then state<=s4; else state<=s0; end if; when s4=> if d='0' then state<=s5; else state<=s2; end if; when s5=> if d='0' then state<=s6; else state<=s1; end if; when s6=> if d='1' then state<=s0; else state<=s0; end if; end case; end if; end process; --输出设置 process(state,d) begin case state is when s6=> if d='1' then z<='1'; --1101001检测成功 else z<='0'; end if; when others=>z<='0'; end case; end process; end bhv; 2.仿真 3.逻辑图 6 stateclkdrstclkdresets6001zz~0 4. 序列检测器的Mealy机状态表: 现 态 (present_state) 次态 / 输出(next_state / cout) cin=0 cin=1 S1 / 0 S2 / 0 S3 / 0 S3 / 0 S1 / 0 S6 / 0 S2 / 0 S0 S0 / 0 S1 S0 / 0 S2 S0 / 0 S3 S4 / 0 S4 S5 / 0 S5 S0 / 0 S6 S0 / 1 7
正在阅读:
6 计数器与序列检测器仿真实验报告03-27
(新)高中数学第3章三角恒等变换3二倍角的三角函数学业分层测评北师大版必修405-09
艺术考研02-07
文章好段摘抄及赏析11-20
五大基本句型讲解及习题04-06
iPhone 6 Plus手机配件拆解报告图文详解.08-24
板式家具安装及验收标准03-14
拾起的难忘点滴优秀7篇04-02
我们班的知名人士作文600字06-17
关于我区国有企业转型升级的几点思考10-11
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 检测器
- 序列
- 计数器
- 仿真
- 实验
- 报告
- 231684 北交《员工关系管理》在线作业二 15秋答案
- 农村商业银行内勤及工勤人员绩效考核实施细则
- 物流习题、答案
- 2018-2019年黔东南州从江县翠里乡中心小学小学一年级上册语文复
- (北大)交易性金融资产练习题2013、11
- 组胚习题集
- 苏州工业园区偿还购房贷款总额度调整申请表
- 从“十三五”规划看未来5年中国对外开放和国家安全课后测试
- 教育心理学知识框架结构图(个人整理)
- 最新硕士研究生教学实践总结报告
- 电工技术基础试题
- 房地产金融练习题
- 一般现在时句型转换专项练习
- 2011年1月-2014年3月中国(HS12112091)其他鲜人参出口量及出口额
- 护理专业毕业论文范文三篇-精选模板
- VB课程设计-文本编辑器
- 河南发改委文件--咨询收费标准
- 当代世界经济与政治试题库(含答案)
- 基坑稳定性验算
- 朱炳寅典型问题问与答(根据博客回复整理)