8位序列检测器的设计

上传人:枫** 文档编号:432614564 上传时间:2023-10-25 格式:DOC 页数:16 大小:95KB
返回 下载 相关 举报
8位序列检测器的设计_第1页
第1页 / 共16页
8位序列检测器的设计_第2页
第2页 / 共16页
8位序列检测器的设计_第3页
第3页 / 共16页
8位序列检测器的设计_第4页
第4页 / 共16页
8位序列检测器的设计_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《8位序列检测器的设计》由会员分享,可在线阅读,更多相关《8位序列检测器的设计(16页珍藏版)》请在金锄头文库上搜索。

1、-八位序列检测器设计 摘 要:序列检测器多用于通信系统中对禁用码的检测,或者是对所需信号的提取,即一旦检测到所需信号就输出高电平,这在数字通信领域有广泛的应运。本文介绍了一种采用单片PGA 芯片进展脉冲序列检测器的设计方法,主要阐述如何使用新兴的 EDA 器件取代传统的电子设计方法,利用 FPGA 的可编程性,简洁而又多变的设计方法,缩短了研发周期,同时使设计的电路体积更小功能更强大。 本次课程设计设计出能够检测序列 “11010011的序列检测器,并以此来描述序列检测器的设计过程和基于 FPGA 的软件仿真。最后通过QuartusII 的波形输出对设计方案进展检测,在硬件调试经检测输出正确设

2、计符合要求。 关键词: VHDL 序列检测 Quartus FPGAAbstract:Sequence detector system used for munication on the detection code disabled, or is the e*traction of the desired signal, that is, once detected, the required high output signal, which in the broad field of digital munications to be transported. This paper p

3、resents a single FPGA chip with the detector pulse sequence design method, mainly on how to us e new device to replace the traditional EDA electronic design, the use of FPGAs programmability, concise and changing the design method shortens the development cycle, while allowing smaller circuit design

4、 and more powerful. The curriculum is designed to detect sequence 11010011 sequence detectors, and detector in order to describe the sequence of the design process and FPGA- based software simulation. Finally, the output of the waveform QuartusII design testing, debugging the hardware design has bee

5、n tested and meet the requirements of the correct output.Keywords: VHDL Sequence detection Quartus FPGA 目 录1前言11.1 课题设计背景12. 总体方案设计22.1 方案比拟22.2 两种方案的论证与比拟33. 单元模块设计43.1 序列信号发生器43.2序列检测器63.3计数器73.4 顶层文件设计84 系统调试与验证94.1待测序列的输入94.2 时序仿真114.3结果分析125 总结与体会136 辞147 参考文献151前言1.1 课题设计背景 随着数字通信的广泛应用,可编程逻辑器件

6、容量、功能的不断扩大,集成电路的设计已经进入片上系统(SOC)和专用集成电路(ASIC)的时代。由于硬件描述语言VHDL可读性、可移植性、支持对大规模设计的分解和对已有设计的再利用等强大功能,迅速出现在各种电子设计自动化(EDA)系统中,先进的开发工具使整个系统设计调试周期大缩短。利用硬件描述语言(如VHDL)来完成对系统硬件功能的描述,在EDA工具的帮助下通过波形仿真得到时序波形,这样就使得对硬件的设计和修改正程软件化,提高了大规模系统设计的自动化程度。传统的脉冲序列检测器,它的实现方法是把一个算法转化为一个实际数字逻辑电路的过程。在这个过程中,我们所得到的结果大概一致,但是在具体设计方法和

7、性价比上存在着一定的差异,存在电路设计复杂,体积大,抗干扰能力差以及设计困难、设计周期长等缺点。而利用FPGA作为硬件电路,采用VHDL等硬件描述语言对硬件的功能进展编程,加快了系统的研发进程,采用数字化的控制方式,大幅度提高了逻辑控制的准确度,实时控制效果好,实践证明,FPGA芯片可以代替传统的复杂的电路,而且可以大比例地缩小了电路的硬件规模,提高了集成度,降低开发本钱,提高系统的可靠性,为脉冲序列检测器电路的设计开辟了新的天地。脉冲序列检测器在现代数字通信系统中发挥着重要的作用,通过中小规模的数字集成电路构成的传统脉冲序列检测器电路往往存在电路设计复杂体积大、抗干扰能力差以及设计困难、设计

8、周期长等缺点。因此脉冲序列检测器电路的模块化、集成化已成为开展趋势,它不仅可以使系统体积减小、重量减轻且功耗降低、同时可使系统的可靠性大大提高。随着电子技术的开展,特别是专用集成电路(ASIC)设计技术的日趋完善,数字化的电子自动化设计(EDA)工具给电子设计带来了巨大变革,尤其是硬件描述语言的出现,解决了传统电路原理图设计系统工程的诸多不便。随着ASIC技术、EDA技术的不断完善和开展以及VHDL、HDL等通用性好、移植性强的硬件描述语言的普及,FPGA等可编程逻辑器件必将在现代数字应用系统中得到广泛的应用,发挥越来越重要的作用。2. 总体方案设计通过查阅大量相关技术资料,并结合自己的实际知

9、识,我们主要提出了两种技术方案来实现系统功能。下面我将首先对这两种方案的组成框图和实现原理分别进展说明,并分析比拟它们的优劣。2.1 方案比拟2.1.1方案一工作原理:基于FPGA的多路脉冲序列检测器的设计方案,使用VHDL“1,否则输出“0,并且将检测到的信号的显示出来。系统框图如下图:图2.12.1.2方案二 工作原理:使用proteus软件进展仿真,先画出原始状态图和状态表,在根据状态图使用D触发器,与门,或门以及非门等元件画出时序逻辑图,再根据结果译码,最后使用LED灯显示结果。系统框图如下图:图2.22.2 两种方案的论证与比拟 第一种方案使用quartus软件进展仿真和验证,直接输

10、入源代码比拟简单方便,并且还可以检测其他的序列,只需要修改一局部代码就可以实现。 方案二使用proetus软件进展仿真和验证,需要先进展复杂的状态图分析,如果需要检测的序列过长就会造成原理图连接过于复杂,不易实现。而且一旦原理图连接好久只能检测一种序列,如果要检测其他序列就要重新连图。 通过比拟发现第一种方案明显优于第二种方案,因此选择第一种方案。3. 单元模块设计主要介绍系统各单元模块的具体功能、电路构造、工作原理、以及各个单元模块之间的联接关系;同时本节也会对相关电路中的参数计算、元器件选择、以及核心器件进展必要说明。3.1 序列信号发生器序列信号是指在同步脉冲作用下循环地产生一串周期性的

11、二进制信号。利用状态机设计,首先定义一个数据类型FSM_ST它的取值为st0到st15的16个状态。REGs0s1s2s3s4s5s6s7Q10110100REGs8s9s10s11s12s13s14s15Q01101010表3.1序列信号发生器的代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY SHK IS PORT (CLK,RST :IN STD_LOGIC; CO :OUT STD_LOGIC );END SHK;ARCHITECTURE behav OF SHK ISTYPE FSM_ST IS (s0,s1,s2,s3,s4,

12、s5,s6,s7,s8,s9,s10,s11,s12,s13,s14,s15);SIGNAL REG:FSM_ST;SIGNAL Q:STD_LOGIC;BEGINPROCESS(CLK,RST)BEGINIF RST =1 THEN REG=s0;Q Q=1;REG Q=0;REG Q=1;REG Q=1;REG Q=0;REG Q=1;REG Q=0;REG Q=0;REG Q=0;REG Q=1;REG Q=1;REG Q=0;REG Q=1;REG Q=0;REG Q=1;REG Q=0;REGREG=s0;Q=0; END CASE; END IF; END PROCESS; CO=

13、Q; END behav;转化成可调用的元件:图3.1波形仿真如下:图3.23.2序列检测器脉冲序列检测起可用于检测一组或多组二进制码组成的脉冲序列信号,当序列检测器连续接收到一组穿行二进制码后,如果这组码与检测器中预先设置的码一样,则输出1,否则输出0。由于这种检测的关键在于正确码的收到必须是连续的,这就要求检测器必须记住前一次的正确码及正确的序列,直到连续的检测中所收到的每一位码都与预置数的对应码一样。在检测过程中,任何一位不相等将回到初始状态重新开场检测。序列检测器的代码如下:library ieee;use ieee.std_logic_1164.all;entity SCHK1 is

14、port(datain,clk:in std_logic;t: in std_logic_vector (4 downto 0);q:out std_logic;cq: out std_logic_vector (4 downto 0);end SCHK1;architecture rt1 of SCHK1 issignal reg:std_logic_vector(4 downto 0);beginprocess(clk)variable t1:std_logic_vector (4 downto 0);beginif clkevent and clk=1 thenreg(0)=datain;reg(4 downto 1)=reg(3 downto 0) ;end if;t

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号