HDB3码编码器及解码器verilog代码编程及实现

合集下载

ami hdb3码编译码实验报告

ami hdb3码编译码实验报告

ami hdb3码编译码实验报告AMI (Alternate Mark Inversion) 和 HDB3 (High Density Bipolar of Order 3) 码是一种常用的线路编码和解码方式,被广泛应用于数字通信系统中。

本实验报告将详细介绍AMI和HDB3码的编码和解码原理,并通过实验验证其正确性和可靠性。

一、实验目的本实验旨在通过编写AMI和HDB3码的编码和解码程序,加深对这两种编码方式的理解,并验证其在数字通信系统中的应用效果。

二、实验原理1. AMI码编码原理AMI码是一种基本的线路编码方式,它通过对二进制数据进行编码,使得连续的1和0之间交替出现正负电平。

具体编码规则如下:- 将二进制数据0编码为0电平;- 将二进制数据1编码为交替出现的正负电平。

2. AMI码解码原理AMI码的解码过程相对简单,只需要检测电平的正负即可。

具体解码规则如下:- 检测到正电平时,解码为二进制数据1;- 检测到负电平时,解码为二进制数据0。

3. HDB3码编码原理HDB3码是一种高密度双极性码,它通过对连续的0进行编码,实现数据的传输和时钟同步。

具体编码规则如下:- 将连续的0编码为连续的正负电平,其中正电平的个数取决于前一位的编码;- 当连续的0个数达到4个时,需要进行特殊处理,即通过插入一个“违例”来保持编码的高密度。

4. HDB3码解码原理HDB3码的解码过程较为复杂,需要根据前一位的编码和违例的位置进行判断。

具体解码规则如下:- 检测到正电平时,根据前一位的编码和违例的位置判断解码为0或1;- 检测到负电平时,根据前一位的编码和违例的位置判断解码为0或1。

三、实验步骤1. 编写AMI码的编码和解码程序,并进行测试。

首先生成一组随机的二进制数据,然后对其进行编码,并将编码结果输出。

接着将编码结果作为输入,进行解码,并将解码结果与原始数据进行比对,验证解码的正确性。

2. 编写HDB3码的编码和解码程序,并进行测试。

实验二 HDB3编译码实验

实验二  HDB3编译码实验

12电信一班何粤鲤3121003118实验二HDB3编译码实验一、实验目的1、掌握AMI、HDB3码的编码规则。

2、掌握从HDB3码信号中提取位同步信号的方法。

二、实验内容1、用示波器观察单极性非归零码(NRZ)、三阶高密度双极性码(HDB3)、整流后的HDB3码。

2、用示波器观察从HDB3码中提取位同步信号的电路中有关波形。

3、用示波器观察HDB3译码输出波形。

三、基本原理HDB3码的编码规律是:4个连0信息码用取代节000V或B00V代替,当两个相邻V码中间有奇数个信息1码时取代节为000V,有偶数个信息1码(包括0个信息1码)时取代节为B00V,其它的信息0码仍为0码;信息码的1码变为带有符号的1码即+1或-1;HDB3码中1、B的符号符合交替反转原则,而V的符号破坏这种符号交替反转原则,但相邻V码的符号又是交替反转的;HDB3码是占空比为0.5的双极性归零码。

设信息码为0000 0110 0001 0000 0,则NRZ码、AMI码,HDB3码如图3-1所示。

分析表明,AMI码及HDB3码的功率谱如图2-2所示,它不含有离散谱f S成份(f S =1/T S,等于位同步信号频率)。

在通信的终端需将它们译码为NRZ码才能送给数字终端机或数模转换电路。

在做译码时必须提供位同步信号。

工程上,一般将AMI或HDB3码数字信号进行整流处理,得到占空比为0.5的单极性归零码(RZ|τ=0.5T S)。

这种信号的功率谱也在图1-9中给出。

由于整流后的AMI、HDB3码中含有离散谱f S ,故可用一个窄带滤波器得到频率为f S的正弦波,整形处理后即可得到位同步信号。

图2-1NRZ、AMI、HDB3关系图图2-2AMI、HDB3、RZ|τ=0.5T频谱S组成模块如下图所示:端口说明:CCLK:编码时钟输入端DIN:编码数据输入端HDB3-OUT:密勒编码结果输出端DCLK:译码时钟输入端HDB3-IN:密勒译码数据输入端DOUT:译码结果输出端HDB-PN:HDB3整流输出信号四、实验步骤1、实验连线:CCLK:从数字信号源模块引入BS-OUT。

通信原理4-实验14HDB3编译码实验

通信原理4-实验14HDB3编译码实验

实验十三HDB3编译码实验实验内容1. 熟悉HDB3码型变换编码实验2. 熟悉HDB3码型变换译码实验一、实验目的1. 熟悉HDB3码编译码原理。

2. 观察HDB3码编码和解码的结果,结合原理进一步理解编解码过程。

二、实验电路工作原理1、HDB3码简介HDB3码的全称是三阶高密度双极性码,它将信息符号“1”变换为“+1”或“-1”的线路码,将联“0”数限制为小于或等于3,当信息符号出现4个连“0”时用特定码组取代。

由于HDB3码将连“0”减少到至多3个,所以它的功率谱与信源统计无关,这对于接收端定时提取十分有利。

2、HDB3编码的原理(1)编码规则:先把二进制序列中的‘0’码变为‘0 ’,而把序列的‘1’交替的变换为+1 ,-1。

再检查序列中是否有4个或4个以上的连‘0’,若有,则将每4个连‘0’小段的第四个‘0’变换成与前一个非‘0’码(指的是+1 和-1 )同极性的码,由于极性不定,不防称之为 V 码(若是+1用+ V,-1 用-V),为了保持无直流分量的特性,则须将V码也交替变换(即和前一个V 的极性相反),但这样还不能保证+ 极性的码和- 极性的码的数目是一样的,因为当两个V码之间有偶数个非‘0’码时,就会+ 极性和- 极性数目不等,所以还要再将该小段的第一个‘0’码变换成+B码或-B码(B符号的极性和前一个非‘0’码的符号极性相反,并让后面的非‘0’码的极性再从V符号开始交替变换。

到此编码完成。

图13-1:编码的波形(2)编码实现方法HDB3编码对输出信号+1,-1,0三种信号的处理,因此在编码中,应该输出两路并行信号。

两个信号(对应原理图中的HDB31和HDB32)的组合来实现对这三种信号的表示:HDB31和HDB32为11,对应5V输出;为10时,对应10V输出;为01时输出为0V;为00时,对应5V输出。

这样可以输出三种电平值。

3、HDB3码解码的原理(1)解码原理:由于V的符号总和前一个非‘0’码的极性相同,故只要找到两个极性相同的非零码,其后一个码就是V码,同时也就知道前面3个就是连‘0’码,从而也找到了B码的位置。

基于FPGA的HDB3编译码器的设计与实现

基于FPGA的HDB3编译码器的设计与实现
2 1 耳第6 02 期
文章编号 :09— 5 2 2 1 0 0 3 0 10 2 5 (02)6— 0 6— 3 中图分类号 :P 1 T 3l 文献标识码 : A
基于 FG P A的 H B D 3编 译 码 器 的设计 与 实现
李精华 ,陈 磊 ,吴 慧峰
( 桂林航天工业高等专科学校电子工程系 ,桂林 5 1 0 ) 4 0 4
前 3个 连 “ ” 为破坏节 “ 0 V” 0称 00 ;
数字 传 输接 口中均采 用 H B D 3码 , 此设 计一 款性 因
价比高的 H B D 3编译码器是非常有价值的。在市场 上使 用 的 C 2 13芯 片虽 然 具 有 HD 3的编 译 译 D 20 B 码 功 能 , 需要 配 置同步 提取 和 电压极 性转换 电路 , 但
HDB3  ̄ de s s i l n h cr ui, ta y n r l b e n h o e a in, ov s t e is e fr h o e i smp e i te ic t se d a d ei l i t e p r t a o s l e h s u s o t e
L igh a IJn — u ,CHE e ,W U Hu — n NLi if g e
( e at n f lc o i E gn eig u i o eeo rsaeT c n lg , in5 10 ,C ia D p rmet et nc nier ,G lnC l g f op c eh o y Gul 4 0 oE r n l Ae o i 4 hn )
Ab t a t sr c :T i a ri t d c sa d s n o h s p e r u e e i f HDB o e sb s d o P n o g 3 c d c a e n F GA, rs n s t e s l t n wi p ee t h i ai t mu o h

基于EDA技术的HDB3编解码器设计与实现.

基于EDA技术的HDB3编解码器设计与实现.

(二 〇 一 六 年 六 月本科毕业设计说明书 题 目:基于E D A 技术的H D B 3编 码器的设计与实现 学生 学 院:信息工程学院 系 别:电子系 专 业:通信工程班 级:通信指导教师: 教授摘要为了弥补AMI码不能克服长连零导致的通信同步的问题,所以产生了HDB3码。

这样编码很大程度上提高了编码传输中检错、纠错的能力,从而提高了数字基带信号的通信质量。

本次设计是基于EDA技术的HDB3编码器的设计,以VHDL为语言工具,QuartusII 软件为设计平台,以及搭建硬件电路完成了对HDB3编码器的设计。

整个设计划分为3个模块,分别单独设计,最后3个模块级联后就实现了HDB3编码器。

本设计说明书首先分别介绍了EDA技术与可编程器件、开发工具的使用概述和特点,对AMI 码、HDB3码进行了重点阐述和分析,这对后续的设计起着重大作用。

其次,通过对三种HDB3编码器的设计方案的对比分析,得出最佳方案。

对HDB3编码器各个模块的实现基本原理和对VHDL语言的编码思想进行了详细的介绍,同时描述了对模块功能的流程图的设计,通过波形仿真的方式来验证各个模块的功能。

最后通过软件仿真、硬件电路测试的方式来验证本次设计的HDB3编码器的正确性、合理性。

从仿真的结果可以看出整个设计基本完成了HDB3编码器的设计,但输出相对于输出有时钟脉冲上了延时。

关键词:HDB3;VHDL;编码器;QuartusII软件AbstractIn order to make up for the AMI code can not overcome the long even zero lead to the problem of communication synchronization, so generated HDB3 code. This code to a large extent improve the coding for data transmission error detection and error correction ability, so as to improve the quality of the digital baseband signal communication.This design is based on the EDA technology of the HDB3 encoder design, with VHDL as the language tool, QuartusII software for the design platform, as well as to build a hardware circuit to complete the design of the HDB3 encoder. The whole design is divided into 3 modules, which are separately designed, and the last 3 modules are cascaded to implement the HDB3 encoder. The design specification are first introduced EDA technology and device programming, development tools using the overview and characteristics, the AMI code and HDB3 code has carried on the key elaboration and analysis of, which the subsequent design plays a major role. Secondly, through the comparative analysis of the design scheme of the three kinds of HDB3 encoder, the optimal scheme is obtained. Each module of the HDB3 encoder to achieve basic principle and of VHDL code method are introduced in detail, and describes the flow chart of the function module design, through the simulation waveform to verify the function of each module. Finally through the software simulation, hardware circuit test method to verify the correctness and rationality of the design of the HDB3 encoder. From the simulation results we can see that the design of the entire design basically completed the HDB3 encoder design, but the output relative to the output of the clock pulse on the delay.Key words: VHDL;HDB3;encoder;Quartus II software目录引言 (1)第一章 EDA技术与可编程逻辑器件 (2)1.1 EDA技术简介 (2)1.1.1 EDA技术概述 (2)1.1.2 EDA技术基本特征 (2)1.1.3 EDA技术的的设计方法 (2)1.1.4 EDA技术的开发流程 (3)1.1.41 设计输入 (3)1.1.42 逻辑综合与优化 (3)1.1.43 目标器件的布局布线 (3)1.1.44 设计仿真 (3)1.1.45 编程下载 (3)1.1.5 EDA技术的发展趋势 (3)1.2 可编程逻辑器件简介 (4)1.2.1 可编程逻辑器件的分类 (4)1.1.2 可编程逻辑器件的原理 (4)第二章开发工具的简介 (5)2.1 VHDL语言 (5)2.1.1 VHDL语言简介 (5)2.1.2 VHDL语言特点 (5)2.2 QuartusII软件的简介 (5)2.2.1 QuartusII软件基本特点 (5)2.2.2 QuartusII软件的使用 (5)第三章AMI码、HDB3码 (7)3.1 AMI码的简介与分析 (7)3.2 HDB3码的简介与分析 (7)3.3 HDB3码的编码规则 (7)3.4 HDB3码的应用 (8)4.1 HDB3编码器的VHDL建模 (9)4.2 插V模块编码的思想的产生及其原理 (10)4.21插“V”模块编码思想的产生 (10)4.22 插“V”模块编码的原理 (10)4.23 插“V”模块的仿真结果 (11)4.24 插“V”模块的仿真分析 (12)4.3 插“B”模块编码的思想及其原理 (12)4.31插“B”模块编码思想的产生 (12)4.32插B码的编码的原理 (12)4.33 插“B模块的仿真结果 (13)4.34 插“B模块的仿真结果分析 (14)4.4 极性变换模块编码的思想及其原理 (14)4.41 极性变换模块编码思想的产生 (14)4.42 极性变换模块的编码原理 (14)4.43极性变换模块的仿真结果 (15)4.44 极性变换模块仿真结果分析: (16)4.5 HDB3编码器整体设计 (17)4.51 HDB3编码器整体设计原理 (17)4.52 HDB3编码器整体仿真 (17)4.53 整体仿真结果分析 (18)4.54 HDB3编码器整体设计时钟设置 (18)第五章 HDB3编码器的的引脚锁定和编程下载 (19)5.1 HDB3编码器的的引脚锁定 (19)5.2 HDB3编码器的配置文件下载 (23)5.3 HDB3编码器的极性变换模块附加电路的设计 (25)5.31芯片的选择及其介绍 (25)5.32 硬件电路设计 (25)结论 (26)参考文献 (27)附录 (28)谢辞 (34)引言EDA技术在当前的数字系统设计中是一种必备的高度自动化的技术,它可以实现硬件系统的设计用软件设计来来完成,在电子信息设计领域非常热门的一种技术,也是有广阔的前景的一门技术。

基于FPGA的HDB3编译码的建模与实现

基于FPGA的HDB3编译码的建模与实现

摘要本文以FPGA为硬件平台,基于EDA工具QUARTUSⅡ为软件平台上对HDB3编/译码进行实现。

由于在EDA的软件平台QUARTUSⅡ上不能处理双极性的信号,因此对HDB3码的编/译码的实现分为:软件部分和硬件部分。

软件部分是基于QUARTUSⅡ的平台上对输入的码元进行编码和译码,通过系统仿真,验证了HDB3码的编译码的正确性;硬件部分采用CD74HC4052双四选一的数模选择器实现单极性到双极性的转换;采用AD790和SE5539实现双极性到单极性的转换。

最后,通过仿真,验证了方案的正确性。

关键词:HDB3;建模;VHDL;编/译码;QUARTUSⅡThe Modeling and Realization of the HDB3 Encoding andDecoding Based on FPGAWu Yingfa(College of Physics Science and Information Engineering,Jishou University,Jishou,Hunan 416000)AbstractThe HDB3 encoding and decoding are realized based on taking FPGA as hardware platform and taking QUARTUSⅡ,a kind of EDA tool,as the software platform. Because QUARTUSⅡcan not deal with the bipolar of signal,the realization of HDB3’s encoding/decoding function is divided into two parts: software and hardware part. In the software part: the encoding/decoding of HDB3 are realized based on QUARTUSⅡ, and the simulation result that the realization is correct. In the hardware part: the CD74HC4052 are used to realize unipolar /bipolar transformation, at the same time, the AD790 and SE5539 are used to realize bipolar/unipolar transformation. At last, the efficiency of theabove method is proved by the simulation results.Key words:HDB3;Modeling;VHDL;Encoding/Decoding;QUARTUSⅡI目录第一章绪论 (1)第二章EDA辅助设计工具的介绍 (3)2.1 FPGA的介绍 (3)2.1.1 PLD的介绍 (3)2.1.2 FPGA的系统介绍 (3)2.2 VHDL语言和QUARTUSⅡ (4)2.2.1 VHDL语言 (4)2.2.2 EDA工具QUARTUSⅡ (5)第三章HDB3码编码器的建模与实现 (6)3.1 HDB3码的编码规则 (6)3.2 基于VHDL的编码器的建模及实现 (6)3.2.1 编码器的VHDL建模及难点分析 (7)3.2.2 基于VHDL编码器的实现 (7)3.3编码中单/双极性转换的实现 (12)3.3.1单/双极性转换的流程图 (12)3.3.2单/双极性变换的VHDL实现 (14)3.3.3单/双极性变换的硬件实现 (15)3.4 HDB3码编码器的波形仿真及分析 (16)3.5 小结 (18)第四章HDB3码译码器的建模与实现 (19)4.1 HDB3码的译码规则及建模 (19)4.2 译码中双/单极性的实现 (19)4.3 基于VHDL译码器的实现 (20)4.3.1基于VHDL译码器的流程图 (20)4.3.2 HDB3码译码器的程序设计 (20)4.4 HDB3码译码器的波形仿真及分析 (23)4.5 小结 (24)第五章结束语 (25)参考文献 (25)致谢 (26)附录一 (28)附录二 (33)基于FPGA的HDB3编译码的建模与实现绪论第一章绪论数字基带信号的传输是数字通信系统的重要组成部分之一。

vc中的hdb3编码与解码

vc中的hdb3编码与解码

课程设计题目: hdb3码的编码解码学号: 1020420311姓名:金立强班级: 10204203专业:通信工程课程名称:通信原理课程老师:涂其远2013.1.8设计内容与设计目的设计内容:要求学生能够熟练地用VC语言编写基本的通信系统的的应用程序,进行hdb3码的编码与解码设计与仿真。

目录一.设计原理与思路 (3)二.程序设计流程 (4)三.程序代码 (5)四.运行结果 (11)五.参考资料 (13)六.设计心得 (14)一、设计原理及设计思路要了解HDB3码的编码规则,首先要知道AMI码的构成规则,AMI码就是把单极性脉冲序列中相邻的“1”码(即正脉冲)变为极性交替的正、负脉冲。

将“0”码保持不变,把“1”码变为+1、-1交替的脉冲。

如:AMI码:-1 0 0 0 0 +1 0 0 0 0 -1 +1 0 0 0 0 -1 +1 HBD3码(3nd Order High Density Bipolar)的全称是三阶高密度双极性码,它是AMI码的一种改进型,改进目的是为了保持AMI码的优点而克服其缺点,使连“0”个数不超过3个。

其编码规则:(1)检查消息码中连“0”的个数。

当连“0”数目小于等于3时,HBD3码与AMI码一样(“1”交替的变换为“+1”和“-1”,“0”保持不变)。

(2)当连“0”数目超过3时,将每4个连“0”化作一小节,定义为“B00V"称为破坏节,其中V称为破坏脉冲,而B称为调节脉冲;(3)V与前一个相邻的非“0”脉冲的极性相同(这破坏了极性交替的规则,所以V称破坏脉冲),并且要求相邻的V码之间极性必须交替。

V的取值为“+1”或“-1”;(4)B的取值可选0、+1或-1,,以使V同时满足(3)中的两个要求;(5)V码后面的传号码极性也要交替。

例如:消息码: 1 000 0 1 000 0 1 1 000 0 000 0 1 1AMI码: -1 000 0 +1 000 0 -1+1 000 0 000 0 -1+1HDB3码:-1 000-V +1 000+V -1+1-B00-V +B00+V -1+1其中的±B脉冲和±V脉冲与±1脉冲波形相同,用V或B表示的目的是为了示意其中的该非“0”码是由原信码的“0”变换而来的。

HDB3编解码器设计实验报告

HDB3编解码器设计实验报告

清华大学电子工程系数字逻辑与处理器基础实验报告实验六HDB3编解码器设计实验报告班级无010学号201001009姓名苏永晖实验日期2012/ 5/24交报告日期2012/6/ 20一、实验目的本实验主要希望大家通过实际编程,了解HDB3编解码的流程,对通信系统的数据传输方式有更加深入的了解。

二、实验原理HDB3是一种伪三进制归零码,如图1给出了一种归零码(RZ)和非归零码(NRZ)的示意图。

HDB3码的三个状态可用B+、B-和0表示。

二进制信号中的空号(0)在HDB3中仍编为0;但是对4个连空号应用特殊规则。

二进制信号中的传号(1)在HDB3信号中应交替为B+和B-(交替翻转)。

因此HDB3编码输出包含正端码和负端码。

在编4个连空号时引入交替翻转的“破坏点”。

4个连0被000V或者B00V取代。

V 表示破坏点,选取原则是:使任意两个V脉冲间的B脉冲数目为奇数。

这样,相邻V脉冲的极性也满足交替规则,因而整个信号保持无直流分量。

图2所示为HDB3编码的对应表和波形示意,其中B码和V码都是归零码,为宽度为半个时钟周期的脉冲。

编码流程是记住上一次B码编码的极性(B+,B-)以及从上一次极性翻转码V出现以来B的个数的奇偶性。

如果当前的NRZ码输入是1,则直接编码为B码,如果当前的NRZ码输入是0,则要分两种情况处理:如果已经连续输入了4个0,则回溯到最前面的那个码对应的HDB3编码结果,将它编为B码,同时将当前NRZ码编为V码。

HDB3解码器不能做到实时解码,在出现V码时需要进行长度为4的回溯,将这四个码重新解码为0。

回溯的实现方案是采用长度为5的移位寄存器实现。

当前的解码结果从最高位存入,当前解码的输出从最低位输出。

高4位是回溯区域。

具体的解码流程是:记住上一次B码的极性(B+,B-),判断当前HDB3码是V码、B 码或者0码,如果是V码,则进行长度为4的回溯,将它们全部重新编码为0000,如果是B码,则从移位寄存器的最高位存入1;如果是0码,则从移位寄存器的最高位存入0。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档