版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录引言11 绪论11.1可编程逻辑器件概述11.1.1 可编程逻辑器件的发展历程11.1.2 可编程逻辑器件的特点21.1.3 可编程逻辑器件的一般设计流程41.1.4 现代数字系统的设计方法61.2 VHDL语言概述71.2.1 VHDL语言介绍71.2.2语言特性、功能与特点71.2.3 TOP-DOWN的设计思想简介81.3 Quartus® II的介绍91.3.1 Quartus® II的产生与发展91.3.2 Quartus® II功能概论101.3.3 Quartus® II的应用102 HDB3码介绍212.1 数字基带信号212.2 N
2、RZ,AMI,HDB3码之间的对应关系212.3 HDB3码的编/译码规则223 用VHDL语言设计HDB3编码器243.1 HDB3编码器实现的基本原理243.2 HDB3编码器的设计过程243.3 HDB3编码器仿真波形304 用VHDL语言设计HDB3译码器314.1 HDB3解码器实现的基本原理314.2 HDB3解码器的设计过程324.3 HDB3解码器仿真波形335总结355.1 系统设计思路小结355.2 毕设存在的问题及不足365.3 毕设后的感想36致谢37参考文献38附录:基于VHDL语言的HDB3码编/解码器设计程序39摘要现代通信在技术一般的数字通信系统中首先将消息变为
3、数字基带信号,称为信源编码,经过调制后进行传输,在接收端先进行解调恢复为基带信号,再进行解码转换为消息。在实际的基带传输系统中,并不是所有电波均能在信道中传输,因此有基带信号的选择问题,因此对码型的设计和选择需要符合一定的原则。HDB3(High Density Binary3)码是AMI码的一种改进型。HDB3码保持了AMI码的优点,克服了AMI码在遇到连“0”长时难以提取定时信息的困难,因而获得广泛应用。CCITT已建议把HDB3码作为PCM终端设备一次群到三次群的接口码型。我本次毕业设计的主要内容就是基于VHDL语言的HDB3编/解码器的设计,它所要达到的要求就是能从软件方面来实现HDB
4、3编/解码器的基本功能,并能协调整个设计,使之达到预想的要求。设计的核心部分是:在Quartus的软件平台上,用VHDL语言来完成HDB3编/解码器的各个模块的设计并将它们合为一个整体的系统。设计中所用到的知识主要是:对VHDL码型基本原理和特性的认识、对Quartus 软件的熟练操作、对VHDL(超高速集成电路硬件描述语言)的掌握和应用,这些知识都是进行电子设计的基本知识和能力,只有基础知识和能力扎实了,才能更好的进行更高层次的电子设计,所以这个设计也是对电子设计基本能力的很好的锻练。关键字:现代通信 HDB3码 模块 VHDL Quartus 软件 基于VHDL语言的HDB3码编/解码器设
5、计1.2 VHDL语言概述1.2.1 VHDL语言介绍VHDL的全名是very-high-speed integrated circuit hardware description language,诞生与1982年。1987年底VHDL被IEEE和美国国防部确认为标准硬件描述语言。自IEEE发布了HDL标准版本后,各EDA公司相继推出了自己的VHDL实际环境,或宣布自己的程序可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修正,从更高的抽象层次和系统描述能力扩展VHDL的内容。现在,VHDL和VERI
6、LOG作为IEEE的工业硬件描述语言,又得到了众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。 VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设
7、计的基本点。1.2.2语言特性、功能与特点联性的语法和形式虽类似与一般程序语言,但是涵盖许多与硬件关联的语法构造。其特有的层次性由上而下的结构VHDL语言可描述一个数字电路的输入,输出以及相互之间的行为和功能。而其硬件关式语法结构适合大型设计项目的团队合作。在主要的系统结构,组件及相互间的连接方式决定以后,就能将工作分包下去,各自独立进行,例如使用主程序外的组件,函数以及程序内的块程序。1.3 Quartus® II的介绍1.3.1 Quartus® II的产生与发展Quartus 是Altera公司提供的可编程逻辑器件的集成开发软件,是该公司前一代可编程逻辑器件的集成开发
8、软件MAX+plus 的更新换代产品。Quartus 集成开发软件支持可编程逻辑器件开发的整个过程,它提供一种与器件结构无关的设计环境,使设计者能方便地进行设计输入、设计处理和器件编程。Quartus 集成开发软件的核心是模块化的编译器。编译器包括的功能模块有分析/综合器、适配器、装配器、时序分析器、设计辅助模块.以及EDA网表文件生成器等。可编程逻辑器件开发的所有过程为:设计输入、综合、布局和布线、验证和仿真以及可编程逻辑器件的编程或配置。1.3.2 Quartus® II功能概论作为一种电子设计自动化(EDA)的工具,Quartus 可编程逻辑器件的集成开发软件支持可编程逻辑器件
9、开发的全过程。这个过程包括以下步骤:创建工程,工程用来组织整个可编程逻辑器件开发的过程;设计输入,本章介绍利用硬件描述语言通过文本编辑的方法完成电路设计;设计编译,把设计输入转换为支持可编程逻辑器件编程的文件格式;设计仿真,该步骤用来检查设计是否满足逻辑要求;器件编程,使得可编程逻辑具有所要求的逻辑功能。2 HDB3码介绍2.1 数字基带信号数字基带信号的传输是数字通信系统的重要组成部分之一。在数字通信中,有些场合可不经过载波调制和解调过程,而对基带信号进行直接传输。为使基带信号能适合在基带信道中传输,通常要经过基带信号变化,这种变化过程事实上就是编码过程。于是,出现了各种各样常用码型。不同码
10、型有不同的特点和不同的用途。作为传输用的基带信号归纳起来有如下要求:1 希望将原始信息符号编制成适合与传输用的码型;2 对所选码型的电波形,希望它适宜在信道中传输。可进行基带传输的码型较多。1、 AMI码AMI码称为传号交替反转码。其编码规则为代码中的0仍为传输码0,而把代码中1交替地变化为传输码的+1-1+1-1,、。 举例如下。消息代码:0 1 1 1 0 0 1 0 、AMI 码:0 +1 -1 +1 0 0 -1 0 、或 0 -1 +1 -1 0 0 +1 0 、AMI码的特点:(1) 无直流成分且低频成分很小,因而在信道传输中不易造成信号失真。(2) 编码电路简单,便于观察误码状况
11、。(3) 由于它可能出现长的连0串,因而不利于接受端的定时信号的提取。2、 HDB3码 这种码型在数字通信中用得很多,HDB3码是AMI码的改进型,称为三阶高密度双极性码。它克服了AMI码的长连0传现象。2.2 NRZ,AMI,HDB3码之间的对应关系假设信息码为0000 0110 0001 0000,对应的NRZ码、AMI码,HDB3码如图2-1所示。 信息代码 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0AMI波形AMI代码 0 0 0 0 0 1 -1 0 0 0 0 1 0 0 0 0NRZ波形HDB3代码 B 0 0 V 0 -1 1 -B 0 0 -V 1 0 0
12、 0 VHDB3波形 图2-1 NRZ ,AMI,HDB3码型图分析表现,AMI码及HDB3码的功率谱不含有离散谱fS成份(fS1/TS,等于位同步信号频率)。在通信的终端需将他们译码为NRZ码才能送给数字终端机或数/模转换电路。在做译码时必须提供位同步信号。工程上,一般将AMI或HDB3码数字信号进行整流处理,得到占空比为0.5的单极性归零码(RZ|0.5TS)。由于整流后的AMI,HDB3码中含有离散谱fS,故可用一选频网络得到频率为fS的正弦波,经整形、限幅、放大处理后即可得到位同步信号。 2.3 HDB3码的编/译码规则 HDB3码的编码规则:(1) 将消息代码变换成AMI码;(2)
13、检查AMI码中的连0情况,当无4个以上的连0传时,则保持AMI的形式不变;若出现4个或4个以上连0时,则将1后的第4个0变为与前一非0符号(+1或-1)同极性的符号,用V表示(+1记为+V,-1记为-V(3) 检查相邻V符号间的非0符号的个数是否为偶数,若为偶数,则再将当前的V符号的前一非0符号后的第1个0变为+B或-B符号,且B的极性与前一非0符号的极性相反,并使后面的非0符号从V符号开始再交替变化。举例如下:代码 1 0 1 0 1 1 0 0 0 0 0 1 1 0 0 0 0 1 HDB3码 +1 0 -1 0 +1 -1 0 0 0 -1 0 +1 -1 +1 0 0 +1 -1V、
14、B -V +B +VHDB3码的特点如下:(1) 基带信号无直流成分,且只有很小的低频成分;(2) 连0串符号最多只有3个,利于定时信息的提取;(3) 不受信源统计特性的影响。 HDB3码的特点如下:(1) 基带信号无直流成分,且只有很小的低频成分;(2) 连0串符号最多只有3个,利于定时信息的提取;(3) 不受信源统计特性的影响。HDB3码的译码规则: HDB3码的译码是编码的逆过程,其译码相对于编码较简单。从其编码原理可知,每一个破坏符号V总是与前一非0符号同极性,因此,从收到的HDB3码序列中,容易识别V符号,同时也肯定V符号及其前面的3个符号必是连0符号,于是可恢复成4个连0码,然后再
15、将所有的-1变成+1后变得到原消息代码。 举例如下:HDB3码 +1 0 -1 0 +1 -1 0 0 0 -1 0 +1 -1 +1 0 0 +1 -1V符号 -V +V 译码 1 0 1 0 1 1 0 0 0 0 0 1 1 0 0 0 0 1 3 用VHDL语言设计HDB3编码器设计任务与要求将一串行输入码流编为HDB3码输出(编码部分);将一串行输入的HDB3码解码后串行输出(解码部分)。3.1 HDB3编码器实现的基本原理从编码规则来分析,这个设计的难点之一是如何判决是否应该插“B”,因为这涉及到由现在事件的状态决定过去事件状态的问题。按照实时信号处理的理论,这是没办法实现的。但在
16、实际的电路中,可以考虑用寄存器的方法,首先把信码寄存在寄存器里,同时设置一个计数器计数两个“V”之间“1”的个数,经过4个码元时间后,由一个判偶电路来给寄存器发送是否插“B”的判决信号,从而实现插“B”功能。不过,信号处理的顺序不能像编码规则那样:首先把代码串变换成为AMI码,完成插“V”、插“B”工作之后,其后的“+1”和“-1”的极性还要依据编码规则的规定变换。这样做需要大量的寄存器,同时电路结构也变的复杂。若把信号处理的顺序变换一下:首先完成插“V”工作,接着执行插“B”功能。最后实现单极性变双极性的信号输出。这样做的好处是:输入进来的信号和插“V”、插“B”功能电路中处理的信号都是单极
17、性信号,且需要的寄存器的数目可以少很多。另外,如何准确识别电路中的“1”、“V”和“B”。因为“V”和“B”符号是人为标识的符号,但在电路中最终的表现形式还是逻辑电平“1”。解决的方法是利用了双相码,将其用二进制码去取代。例如,代码: 1 1 0 0 1 0双相码 10 10 01 01 10 01 这样就可以识别电路中的“1”、“V”、“B”。也可以人为地加入一个标识符(其最终目的也是选择输出“1”的极性)。控制一个选择开关,使输出“1”的极性能按照编码规则进行变化。3.2 HDB3编码器的设计过程本设计的思想并不像前面HDB3编码原理介绍的那样首先把消息代码变换成为AMI码,然后进行V符号
18、和B符号的变换,而是在消息代码的基础上,依据HDB3编码规则进行插入“V”符号和插入“B”符号的操作,最后完成单极性信号变成双极性信号的变换。单/双极性变换插“B”插“V” 图3-1 HDB3码的编码器模型框图整个HDB3编码器包含3个功能部分:插“V”、插“B”和单极性码转变成双极性码。各部分之间采用同步时钟作用,并且带有一个异步的复位(清零)端口。下面将详细介绍各个部分的设计流程、编写的源程序模拟仿真的波形图。(1)插“V”模块的实现1)、插“V”模块的建模插“V”模块的功能实际上就是对消息代码里的四连0串的检测即当出现四个连0串的时候,把第四个“0”变换成为符号“V”(“V”可以是逻辑“
19、1”高电平),而在其他情况下,则保持消息代码的原样输出。同时为了减少后面工作的麻烦,在进行插“V”时,用“11”标识它,“1”用“01”标识,“0”用“00”标识。插“V”符号的设计思想很简单:首先判断输入的代码是什么(用一个条件语句判断),如果输入的是“0”码,则接着判断这是第几个“0”码,则把这一位码元变换成为“V”码。在其他条件下,让原代码照常输出。 Count0=3 (3)单极性变双极性的实现1)建模 根据HDB3的编码规则,我们可以知道,“V”的极性是正负交替的,余下的“1”和“B”看成一体且是正负交替的,同时满足“V”的极性与前面的非零码极性一致。由此我们可以将其分别进行极性变换来
20、实现。从前面的程序知道,“V”、“B”、“1”已经分别用双相码“11”、“10”、“01”标识,“0”用“00”标识,所以通过以下的程序可以很容易实现。如下图为实现极性变换功能的流程图。 根据编码规则,“B”符号的极性与前一非零符号相反,“V”极性符号与前一非零符号一致。因此将“V”单独拿出来进行极性变换(由前面已知“V”已经由“11”标识,所以很好与其他的代码区别),余下的“1”和“B”看成一体进行正负交替,这样就完成了HDB3的编码。这个部分遇到的难点在于:在QUARTUS 软件仿真过程中,它无法识别“-1”,在它的波形仿真中只有“1”和“0”。因此在这里采用了双相码来分别表示“-1”、“
21、+1”、“0”。要得到所需的结果,仅仅在最后加一个硬件(如四选一数字开关CC4052)就可以将程序中所定义的“00”、“01”、“11”分别转换成0、+1、-1,从而达到设计所需结果。2)实现单/双极性变换的硬件部分简介由上述的程序下载到FPGA或CPLD中,其输出结果并不是“+1”、“-1”、“0”的多电平变化波形,而是单极性双电平信号,事实上,程序输出的是给单/双变换器的硬件电路地址信号。利用一个四选一的数据选择器CC4052,二维数组作为CC4052的选择地址,在输出端OUT可以得到符合规则的“+1”、“-1”、“0”变化波形。“01”:标识为+1;“11”:标识为-1; flag1b:
22、记“+V”或“-V”之间的奇偶数 图3-4单/双极性变换控制流程图3.3 HDB3编码器仿真波形图3-5 HDB3编码器仿真波形波形分析4 用VHDL语言设计HDB3译码器4.1 HDB3解码器实现的基本原理HDB3译码器的整体模型1.整体模型译码原理:根据编码规则,破坏点V脉冲与前一个脉冲同极性。因此可从所接受的信码中找到V码,然后根据加取代节的原则,V码与前面的三位码必然是取代码,需要全部复原为四连0。只要找到V码,不管V码前是两个“0”码,一律把取代节清零,完成了扣V扣B功能,进而得到原二元信码序列。可实现HDB3译码的模型框图如图4-1所示,HDB3译码器包括双/单极性变换、V码检测、
23、时钟提扣V扣B四部分组成。正整流负整流+V码检测-V码检测相加器相加器 扣V扣B时钟提取图4-1 HDB3译码的模型框图上图中双/单极性变换电路有两个正负整流电路组成。正整流电路提取正电平码部分;负整流电路提取负电平部分。V码检测电路包括+V码检测和-V码检测两部分。根据编码规则,V脉冲必然是同极性脉冲。当无V脉冲时,传号脉冲“+1”和“-1”交替出现。当连续出现两个“+1”或“-1”时,若无误码,则后一个一定是V脉冲。时钟提取电路用于提取同步时钟。扣V扣B电路在V脉冲和同步时钟的控制下,完成扣V扣B的功能。由于双/单极性变换电路涉及到双极性信号,无法在FPGA中实现,需加外围硬件电路。4.2
24、 HDB3解码器的设计过程(1)V码检测模块的建模1)+V码检测为了方便起见,设从正整流电路输出的信号为+B,从负整流电路输出的信号为-B。+V码检测模块-B的控制下,对输入的+B进行检测。其原理是:当+B的上升沿到来时,对输入的+B脉冲进行计数,当计数值等于2时,输出一个脉冲作为+V脉冲,同时计数器清零,而且计数期间,一旦有-B信号为“1”电平时,立即对计数器清零,计数器重新从零开始计数。这是因为在两个+B脉冲之间,存在-B脉冲,说明第二个+B脉冲不是+V码,而只有在连续两个+B脉冲之间无-B脉冲,才能说明这两个+B脉冲在HDB3码中,是真正同极性的于是就可以判定第二个+B脉冲实际上是+V码
25、,达到检测+V码的目的。+V码检测模型框如图4-2所示。 图4-2 +V码检测模型框图2)-V码的检测-V码检测原理与+V码检测的类似。所不同的是,-V码检测电路在+B控制下,对来自-B信号进行计数和检测、判定,若检测到-V码,则输出到-V码信号。-V码检测模型框如图4-3所示。 来自负整流信号 图4-3 -V码检测模型框图 (2)扣V扣B模块建模扣V扣B模块有三个输入信号,即时钟信号、V码信号和来自正、负整流输出的和路信号。由于该和路信号可能包含有B脉冲和V脉冲,因此需要在扣V扣B模块中,去除V和B脉冲。本模块的建模方法是,用V码检测模块所检测出的V码信号,去控制一个移位寄存器,若未碰到V脉冲,则整流输出合成信号在时钟的节拍下,顺利通过移位寄存器,当碰到有V脉冲时,该V脉冲将使移位寄存器清零。考虑到四连0,即V脉冲及其前面的三个码元应为0码,所以,可设置四位的移位寄存器,当V码清零时,同时将移存器中的四位码全变为0。不管是否有B脉冲,在此模块中,一并清零,因而无需另设扣B电路。另外移位四位寄存器起到延时四位时钟周期的作用,以使所检测出的V脉冲与信号流中的V脉冲位置对齐,保证清零的准确性。扣V扣B模块框图如图4-4。 图4-4 扣V扣B模块框图4.3 HDB3解码器仿真波形 图4-5 HDB3解码器仿真波形波形分析译
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度跨界合作与联合营销合同2篇
- 2024年度企业间货物买卖合同(含质保期)3篇
- 2024年度租赁合同协议范本3篇
- 二零二四年度工程装潢与居间合同2篇
- 2024年二手房交易双方互不支付佣金合同2篇
- 2024年度工厂租赁合同协议2篇
- 高级项目管理顾问2024年度服务协议3篇
- 化工热力学:第6章 热力学第一定律及其工程应用
- 2024年度临时安保劳务合同2篇
- 谈话课件教学课件
- 乒乓球女单世界第一首位零零后孙颖莎介绍课件
- 创新实践(理论)学习通超星期末考试答案章节答案2024年
- 2024实施就业优先战略促进高质量充分就业的意见(就业是最基本的民生)
- 英语我的家乡甘肃酒泉课件
- 部编版2024-2025学年六年级上册语文第19课《只有一个地球》同步练习(附答案解析)
- 青岛版科学三年级上册全册课件教材
- 语文园地四 教学设计2024~2025学年一年级语文上册统编版
- 2024汽车行业社媒营销趋势-微播易CAA中国广告协会-2024.08-98正式版
- 出境劳务派遣合同模板
- 湖北省2024年中考英语模拟试卷(含答案)
- Project项目管理(从菜鸟到实战高手)
评论
0/150
提交评论