《毕业设计--基于FPGA的HDB3码编译码器设计.pdf》由会员分享,可在线阅读,更多相关《毕业设计--基于FPGA的HDB3码编译码器设计.pdf(55页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、海Q科版毕业论文题 目:基于FPGA的HDB3码编译码器的设计系:_电气与信息工程系_专业:电子信息工程 诚信声明本人声明:1、本人所呈交的毕业设计(论文)是在老师指导下进行的研究 工作及取得的研究成果;2、据查证,除了文中特别加以标注和致谢的地方外,毕业设计(论文)中不包含其他人已经公开发表过的研究成果,也不包含为获 得其他教育机构的学位而使用过的材料;3、我承诺,本人提交的毕业设计(论文)中的所有内容均真实、可信。作者签名:日期:年 月 日目 录摘要.IAbstr a c t.II第1章绪论.1L1HDB3码简述.11.2 FPGA和其设计方法.21.2.1 FPGA/CPLD 简介.21
2、.2.2 FPGA设计方法.31.3 VHDL设计技术.41.3.1 VHDL 简介.41.3.2 利用VHDL语言设计硬件电路的方法.51.4 本文所做的工作内容安排.6第2章 HDB3码编译原理.82.1 HDB3码的编码原理.82.2 HDB3码的译码原理.8第3章 HDB3数字信源.103.1 数字信源单元.103.2 HDB3编码单元.123.2.1 用 CD22103A 芯片实现.143.2.2 用VHDL建模实现.16第4章 HDB3译码器实现方法分析.25第5章 HDB3译码器的FPGA实现.265.1 HDB3译码器的FPGA设计流程.265.2 HDB3译码器设计的总体框图
3、.265.3 双单极性变换模块.275.4 译码功能模块的设计.285.4.1 译码模块的VHDL设计.285.4.2 译码模块的原理图设计.315.5 误码检测模块设计.325.6 位同步提取模块设计.335.6.1 鉴相器模块的设计.345.6.2 滤波器的设计.355.6.3 数控振荡器的设计.365.7 简易显示模块.38第6章 Ma x-pl u s II与HDB3译码器的仿真.396.1 Max-plus II 简述.396.1.1 功能简介.396.1.2 设计流程.396.1.3 设计步骤.406.2 系统仿真与调试.416.2.1 编码部分仿真结果.416.2.2 译码模块仿
4、真结果.416.2.3 误码检测模块仿真结果.416.2.4 位同步提取模块仿真结果.42结束语.44参考文献.45致谢.46附录A译码器总图.47附录B锁相环总图.48附录C滤波器电路图.49基于HDB3码编译码器的设计基于FPGA的HDB3码编译码器的设计摘要:HDB3码是基带传输系统中常用的码型。本设计是基于EMP7128设计的一个完 整的HDB3码的译码器。给出了硬件设计电路图、软件设计流程和HDB3译码器的仿真 波形。该译码器中除了包含有译码的电路外,还包含有单双极性转换,误码检测和位同 步提取等功能。双单极性变换的作用是使得双极性的HDB3码能够进入CPLD,同时 易于做数字逻辑分
5、析。其中的位同步提取功能是利用超前滞后型数字锁相环从编码序列 中提取出位同步信号,并把该信号作为译码部分的时钟。位同步模块中最为关键的一步 是在CPLD实现若干个上升沿触发数字单稳。总体来说,该译码器具有外围电路简单,工作稳定,抗干扰能力强等特点。此实现方法具有硬件设计简单、运行速度快、成本低 等优点。同时由于CPLD可重复编程的特点,可以对它进行在线修改,便于设备的调试 和运行。此编译码器已经过实际测试,运行稳定可靠,可用于实际电路中。关键词:HDB3码;FPGA;译码器;位同步。基于HDB3码编译码器的设计HDB3 Encoder Decoder Based on FPGAAbstract
6、:HDB3 c o d e is the c o mmo n l y u sed c o d e in the tr a n smissio n system.It is a n in ta c t HDB3 d ec o d er d esign ed o n the ba sis o f EMP7128 to o r igin a l l y d esign.This pa per pr esen ts the c ir c u it d ia gr a m o f ha r d wa r e d esign,the fl o w o f so ftwa r e d esign a n d
7、 the simu l a ted wa vefo r m o f HDB3 en c o d er a n d d ec o d er.Al so in c l u d e sin gl e po l a r ity to bipo l a r c o n ver sio n besid es in c l u d in g the c ir c u it o f the d ec o d e in this d esign,c o d e mea su r ed by mista ke,a n d l o c a tio n syn c hr o n ized sign a l s pic
8、 ked o u t.The fu n c tio n tha t va r y bipo l a r to o n e po l a r ity ma kes a mbipo l a r HDB3 c o d e c a n in tr o d u c e to CPLD a n d ma ke d igita l l o gic a n a l ysis ea sy.Lo c a tio n a mo n g them d r a w fu n c tio n to u til ize d igita l pha se l o c kin g r in g pr o d u c e the
9、 syn c hr o n o u s sign a l in the l o c a tio n to d r a w fr o m c o d e a r r a y in step,a n d r ega r d this sign a l a s the c l o c k o f the pa r t o f the d ec o d er.To l o c a tio n syn c hr o n o u s mo d u l e the mo st c r u c ia l o n e is to r ea l ize sever a l r ise a l o n g to u
10、 c h o ff d igita l fo r m stea d y in CPLD.On the who l e,this d ec o d er ha s simpl e o u tsid e c ir c u it,wo r ks stea d il y a n d better a n ti-in ter fer en c e a bil ity.The metho d ha s the a d va n ta ges o f simpl e ha r d wa r e d esign,high speed a n d l o w c o st.In a d d itio n,sin
11、 c e CPLD c a n be r epr o gr a mmed,it c a n be r epa ir ed o n l in e,thu s ma kin g it c o n ven ien t to d ebu g a n d r u n the equ ipmen t.Testin g sho ws tha t this en c o d er a n d d ec o d er ha s sta bl e per fo r ma n c e a n d ther efo r e c a n be a ppl ied to c ir c u itr y.Keywords:H
12、DB3 c o d e;FPGA;Dec o d er;Lo c a tio n syc hr o n ized.ii基于HDB3码编译码器的设计第1章绪论1.1 HDB3石马简述现代通信借助于电和光来传输信息,数字终端产生的数字信息是以“1”和“0”两 种代码(状态)位代表的随机序列,他可以用不同形式的电信号表示,从而构造不同形 式的数字信号。在一般的数字通信系统中首先将消息变为数字基带信号,称为信源编码,经过调制后进行传输,在接收端先进行解调恢复为基带信号,再进行解码转换为消息。在实际的基带传输系统中,并不是所有电波均能在信道中传输,因此有基带信号的选择 问题,因此对码型的设计和选择需要符
13、合一定的原则。当数字信号进行长距离传输时,高频分量的衰减随距离的增大而增大,电缆中线对之间的电磁辐射也随着频率的增高而 加剧,从而限制信号的传输距离和传输质量,同时信道中往往还存在隔直流电容和耦合 变压器,他们不能传输直流分量及对低频分量有较大的衰减,因此对于一般信道高频和 低频部分均是受限的。对于这样的信道,应使线路传输码型的频谱不含直流分量,并且 只有很少的低频分量和高频分量。其次,传输码型中应含有定时时钟信息,以利于收端 定时时钟的提取,在基带传输系统中,定时信息是在接收端再生原始信息所必需的。一 般传输系统中,为了节省频带是不传输定时信息的,必须在接受端从相应的基带信号中 加以提取。再
14、次,实际传输系统常希望在不中断通信的前提下,能监视误码,如果传输 码型有一定的规律性,那么就可以根据这一规律性来检测传输质量,以便做到自动监测,因此,传输码型应具有一定的误码检测能力。当然,对传输码型的选择还需要编码和解 码设备尽量简单等要求,但以上的几点是最主要的考虑因素。HDB3码又叫三阶高密度双极性码,是基带电信设备之间进行基带传输的主要码型 之一。该码具有以下特点:(1)无直流分量,且低频分量也很少:其功率谱密度也与AMI码类似,其方波中丰 富的高频分量同样被消除了。(2)由于引入取代节,因而解决了 AMI码在连0,过长时提取位定信号的困难。(3)具有内在检错能力。由此可见,HDB3码
15、是一种优良码,目前广泛应用于基带传输的接口码。基于HDB3码编译码器的设计1.2 FPGA和其设计方法1.2.1 FPGA/CPLD 简介当今社会是数字化的社会,是数字集成电路广泛应用的社会。数字集成电路本身在 不断的更新换代。它由早期的电子管、晶体管、小中规模集成电路,发展到超大规模集 成电路以及许多具有特定功能的专用集成电路。但是,随着微电子技术的发展,设计与 制造集成电路的任务已不完全由半导体厂商来独自承担。系统设计师们更愿意自己专用 集成电路(ASIC)芯片,而且希望ASIC的设计周期尽可能短,最好在实验室里就能设计出 合适的ASIC芯片,并且立即投如实际应用中,因而出现了现场了编程逻
16、辑器件,其中 应用最广泛的当属现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD).早期的可编程逻辑器件只有可编程只读存储器(PROM)、紫外线可擦除只读存储器(EPROM)和电可擦除只读存储器(EEPROM)三种。由于结构的限制,它们只能完成简单 的数字逻辑功能。其后,出现了一类结构上稍复杂的可编程芯片,即可编程逻辑器件(PLD),它能够完成各种数字逻辑功能,这一阶段的产品主要有PAL(可编程阵列逻辑)和GAL(通用阵列逻辑)。这些早期的PLD器件的一个共同特点是可以实现速度特性较好 的逻辑功能,但其过于筒小的结构也使它们只能实现规模较小的电路。为了弥补这一缺陷,20世纪80年代中期
17、。Al ter a和Xil in x分别推出了类似于PAL结构 的扩展型CPLD(Co mpl ex Pr o gr a mma bl e Lo gic Dvic e)和与标准门阵列类似的FPGA(Fiel d Pr o gr a mma bl e Ga te Ar r a y),它们都具有体系机构和逻辑单元灵活、集成度高以及适用范围 广等特点。这两种器件兼容了PLD和通用门阵列的优点,可实现较大规模的电路,编程 也很灵活。与门阵列等其他ASIC相比,它们又具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检测等优点,因此被广泛 应用于产品的原型设计和产
18、品生产(一般在10,000件以下)之中。几乎所有应用门阵列、PLD和中小规模通用数字集成电路的场合均可应用FPGA和CPLD器件。对用户而言,CPLD和FPGA的内部结构稍有.不同,但用法一样,所以多数情况下,不加以区分。CPLD和FPGA概括起来是由三大部分组成的:一个二维的逻辑块阵列,构成了PLD器件的逻辑组成核心。(2)输入/输出块:连接逻辑块的互连资源。(3)连接资 源:由各种长度的连线线段组成,其中也有一些可编程的连接开关,它们用于连接块之 间、逻辑块与输入/输出块之间的连接。FPGA/CPLD芯片都是特殊的ASIC芯片,它们除了具有ASIC的特点以外,还具有以 下儿个特点:随着VL
19、SI(超大规模集成电路)工艺的不断提高,单一芯片内部可以容纳上百万个晶 2基于HDB3码编译码器的设计体管,FPGA/CPLD芯片的规模也越来越大,其单片逻辑门数已达到上百万门,它所能 实现的功能也越来越强,同时也可以实现系统组成。FPGA/CPLD芯片在出厂之前都做过百分之百的测试,不需要设计人员承担投入风 险和费用,设计人员只需在自己的实验室里就可以通过相关的软硬件环境来完成芯片的 最终功能设计。所以,FPGA/CPLD的资金投入小,节省了许多潜在的花费。用户可以反复的编程、擦除、使用或者在外围电路不变的情况下用不同软件就可以 实现不同的功能。所以,用FPGA/CPLD试制样片,能以最快的
20、速度占领市场。FPGA/CPLD软件包中有各种输入工具和仿真工具,及版图设计工具和编程器等全线产 品,电路设计人员可以在很短的时间内就能完成电路的输入、编译、优化、仿真,直至 最后芯片的制作。当电路有少量改动时,更能显示出FPGA/CPLD的优势。电路设计人 员使用FPGA/CPLD进行电路设计时,不需具备专门的IC(集成电路)深层次的知识,FPGA/CPLD软件易学易用,可以使设计人员更能集中精力进行电路设计,快速将产品 推向市场。1.2.2 FPGA设计方5去可编程逻辑器件的设计是指利用开发软件和编程工具对器件进行开发的过程。高密 度可编程逻辑器件的设计流程图如下所示,它包括五个过程:图可
21、编程逻辑器件设计流程图设计准备:在对可编程逻辑器件的芯片进行设计之前,首先要进行方案讨论,系统设计和器件 选择等设计准备工作。设计者首先要根据任务要求,如系统所完成的功能和复杂程度,对工作速度和器件本身的资源和成本连线的可布性等方面进行权衡,选择合适的方案和 合适的器件类型。3基于HDB3码编译码器的设计设计输入:设计者将所设计的系统或电路以开发软件要求的某种形式表示出来并送入计算机 的过程称为设计输入。常用的有三种方式,即原理图、硬件描述语言(HDL)、波形输入。本论文的HDB3译码器的设计是采用VHDL文本的方式和系统的框图形式来作为输入 的。设计处理:这是器件设计中的核心环节,在设计处理
22、过程中,编译软件将对设计输入的文件进 行逻辑化简、综合优化,并且适当地用一片或多片器件自动地进行适配,最后产生编程 用的编程文件。设计处理应当包括以下五个过程:语法检查和设计规则检查、逻辑优化 和综合、适配和分割、布局布线、生成编程数据文件。(4)设计校验;设计校验包括功能仿真和时序仿真,这两项工作是在设计处理过程中同时进行的。功能仿真是在设计输入完成之后,选择具体的器件进行编译之前进行的逻辑功能校验,因此又称为前仿真,此时仿真无时延信息,对于系统初步的功能检测非常方便。仿真前 首先要利用波形编辑器或硬件描述语言建立测试向量(一般的EDA工具都可以方便的产 生测试向量),仿真结果以报告的形式或
23、波形的形式输出,从中可以看出各个节点的错 误,如果有错误,则返回设计输入中修改逻辑设计,系统前仿真的结果直接决定着后仿 真的正确性,所以在前仿真是要格外小心。时序仿真是在选择了具体期间并完成布局布 线之后进行的时序关系仿真,因此也称为后仿真。由于不同的器件内部的延时不一样,不同的布局、布线方案也给延时造成不同的影响,因此在设计处理以后,对系统和各模 块进行时序仿真、分析其时序关系,估计设计的性能以及检查和消除竞争冒险是非常有 必要的。实际上这也是与实际器件工作情况基本相同的仿真。(5)器件编译:编程是将编程数据放到可编程器件中去。器件编程要满足一定的条件,如编程电压、编程时序和算法等。器件编程
24、完毕以后,可以用编译时产生的文件进行检验、加密等工 作。对于具有边界扫描测试能力的器件来说,测试起来接更加方便。1.3 VHDL设计技术1.3.1 VHDL 简介在硬件设计中架用计算机辅助设计(CAD)一般来说到了 80年代才普及和应用,随着 大规模专用集成电路(ASIC)的开发和研制,为了提高开发效率,增加已有的开发成果的 4基于HDB3码编译码器的设计可继承性以及缩短开发时间,各ASIC厂商相继开发了用于各自目的的硬件描述语言,其中最有代表性的是美国国防部开发的VHDL(VHSIC Desc r iptio n La n gu a ge)语言,在 1987年,由IEEE将VHDL语言定为标
25、准。用VHDL进行设计与传统的原理图设计技术相比有很多的优点。VHDL支持数字电路的开发环境,同时也支持各种设计方法咱顶向下(to p-d o wn),自底向上(bo tto m-u p)或两者混合的方法。当今许多电子产品的生命周期大约为10年,同时又必须多次重新设计,以利用新的技术。现在,最简单的方法是采用与工艺无关的 VHDL设计方法,使用EDA(电子设计自动化)工具来改变工艺。VHDL的设计支持可修 改性,因为语言易读、层次化且结构化。VHDL语言支持层次化(框图)、元件的再用、出错处理和验证。层次化可以利用结 构VHDL、过程和函数描述。结构VHDL类似于框图。许多系统还支持图形输入,
26、并 可以自动转换成结构VHDLo VHDL语言还支持并行的和顺序的语言结构。VHDL的元件(Co mpo n en t)设计可以与工艺无关,或者或多或少与某一类工艺无关。元件可以保存在设计库中,在多个不同的设计中再利用。这样就可以在市场上买到商用 集成电路标准元件的VHDL模型,当验证整个电路板时,这是一个很重要的优点。在 HDB3译码器的设计过程中,儿乎所有的功能模块都是由一个个自己写的元件构成。VHDL的代码可以用模拟器验证其功能。模拟器施加输入信号进行模拟,并以元件 为基础产生信号图和出错信息。输入信号的描述或者用VHDL语言,或者用模拟器的语 言。当对VHDL代码进行模拟时就实现了功能
27、验证。其后还可以对设计进行时序验证。在传统的原理图设计中,设计者必须用手工检查与工艺有关的因素如时序、面积、驱动强度、元件的选择和扇出。用VHDL进行设计的一个很大的优点是设计者可以专心 致力于其功能,即需求规范的实现,而不需要对不影响功能的与工艺无关的因素花费过 多的时间和精力。1.3.2 利用VHDL语言设计硬件电路的方法VHDL语言可以描述电路的逻辑功能,信号间的连接关系及定时关系。它能比电原 理图更有效地表示硬件电路的特性。利用硬件描述语言编程来表示逻辑器件及系统硬件 的功能和行为,这是该设计方法的一个重要特征。利用VHDL语言设计系统硬件的方法一般采用自顶向下(To p Do wn)
28、的设计方法,所 谓的自顶向下的设计方法,就是从系统要求出发,自上至下地逐步将内容细化,最后完 成系统硬件的整体设计,在HDB3译码器的设计中也采用了此方法。在自顶向下的VHDL 设计中,设计者将自上向下划分为三个层次对系统硬件进行设计。第一层是行为描述。所谓行为描述,实质上就是对整个系统的数学模型的描述,一 5基于HDB3码编译码器的设计般来说,对系统进行行为描述的目的是试图在系统设计的初级阶段,通过对系统行为描 述的仿真来发现设计中存在的问题。在行为级描述阶段,并不真正考虑实际的操作和算 法用什么方法来实现。考虑更多的是系统的结构及其工作过程中是否能达到系统规格设 计书的要求。第二层是RTL
29、(寄存器级)方式的描述,这一层称为寄存器传输描述(又称数据流描 述)。如前面所述,用行为方式描述的系统结构程序,其抽象程度更高,是很难直接映 射到具体逻辑元件结构的硬件实现的。要想得到硬件的具体实现,必须将行为方式描述 的VHDL语言程序改写为RTL方式描述的VHDL语言程序。也就是说,系统只有采用 RTL方式描述,才能导出系统的逻辑表达式,才能进行逻辑综合。当然这里所说的可以 进行逻辑综合是有条件的,它是针对某一特定的逻辑综合工具而言的。第三层是逻辑综合,逻辑综合这一阶段是利用逻辑综合工具,将RTL方式描述的 程序转换成用基本逻辑元件表示的文件(如门级网表)。此时,如果需要,可以将逻辑综 合
30、结果以逻辑原理图的方式输出(一般的综合工具都可以做到这一点)。也就是说,逻辑 综合的结果相当于在人工设计硬件电路时,根据系统要求画出了系统的逻辑原理图。此 后对逻辑综合结果在门电路级上再进行仿真,并检查定时关系。如果一切正常,那么系 统的硬件设计就基本结束。如果在三个层次的某个层次上发现有问题,都应返回上一层,寻找和修改相应的错误,然后再向下继续未完的工作。由逻辑综合工具产生门级网表以后,在最终完成硬件设计时,还有两种选择。第一 种是由自动布线程序将网络表转换成相应的ASIC芯片的制造工艺(需要专门人员做版 图设计),做出ASIC芯片。另一种是将网表转换成FPGA(现场可编程门阵列)的编程码
31、点,利用FPGA完成硬件电路的设计。本文所用的设计就是采用第二种方法。1.4 本文所做的工作内容安排本文所讨论的HDB3译码器的设计主要是用Al ter a公司的EMP7128设计完成,本 系统用CD22103A芯片设计完成码速率为2048KHz、24BIT的HDB3数字信源单元。本 文的内容安排如下:第1章主要介绍了 FPGA和其设计方和VHDL技术。第2章介绍HDB3码编译原理。第3章介绍了用CD22103A芯片设计的HDB3数字信源单元。第4章介绍了 HDB3译码器实现方法分析。第5章介绍了 HDB3译码器的FPGA设计,在本章对HDB3译码器的总体框图,以 及系统中各个模块的具体功能和
32、实现方法都做了详细介绍。6基于HDB3码编译码器的设计第6章是HDB3译码器的设计验证和对设计中一些问题的处理。结束语总结全文,指出设计中的不足和需要改进的地方。7基于HDB3码编译码器的设计第2章HDB3码编译原理2.1 HDB3码的编码原理HDB3码的编码原理可简述为:在消息的二进制代码序列中,当连0码的 个数不大于3时,HDB3编码规律与AMI码相同,既1码变为+1、-1交替脉 冲;当代码序列中出现4个连0码或超过4个连0码时,把连0段按4个 0分节,即“0000”,并使第四个0码变成1码,用V脉冲表示。这样可以消 除长连0现象。为了便于识别V脉冲,使V脉冲极性与前一个脉冲极性相同。这样
33、就破坏了 AMI码极性交替的规律,所以V脉冲为破坏脉冲,把V脉冲和前3个连 0称为破坏节“000V”;为了使脉冲序列仍不含有直流分量,则必须使相邻的破坏 点V脉冲极性交替;为了保证、两条件成立,必须使相邻的破坏点之间有奇数个 1码。如果原序列中破坏点之间的1码为偶数个,则必须补为奇数,即将破坏节 中的第一个0码变为,用B脉冲表示。这时破坏节变为“B00V”形式。B脉冲 极性与前一个1脉冲极性相反,而B脉冲极性和V脉冲极性相同。例如:对于重复 发送的码元序列NRZ的编码结果为:NRZ:0 0 0 0 0 1 1000010000HDB3:B 0 0 V 0-1 1-B 0 0-V 1 0 0 0
34、-V2.2 HDB3码的译码原理对于译码部分从上面的编码原理可以看出,只要将HDB3码中的B,和 7 变成 0,变成1,0保持不变,并把归零码变成非归零码,这样就实现了译码。译码部分的关键就是要找出信号中的V的位子。由于CPLD不能接收-5V的电平,所以,首先利用双单极性变换电路将HDB3码变换成两路信号,分别对应着pHDB3和 n HDB3两路信号,其中pHDB3路信号对应着正极性通道,即只有+1、+B和+V信号从 该通道中通过,而负极性的信号在此通道中为0;n HDB3路信号对应着负极性通道,其 原理与上相同。把两路信号送入CPLD中后,就可以用逻辑电路来实现对V的判决,找 出V后,并把V
35、和V前面的第三个码元变为0(因为V一定是出现在四个连零串中 的最后以为,所以V前面的第三个码元一定对应着0,这样就实现对B的转换),即 可实现译码。对于本设计来说要做好三个部分:单双极性变换、位同步提取、判断破坏 性码。译码的流程图如下:8基于HDB3码编译码器的设计图2.1译码流程图9基于HDB3码编译码器的设计第3章HDB3数字信源3.1数字信源单元本单元电路是本次通信系统设计的发终端叫本单元产生NRZ信号,信号码速率约 为 2048KHzo帧结构如图3.1所示。帧长为24位,其中首位无定义,第2位到第8位是帧同步码(7位巴克码1110010),另外16位为2路数据信号,每路8位。此NRZ
36、信号为集中插 入帧同步码时分复用信号,数据码用红色发光二极管指示,帧同步码及无定义位用绿色 发光二极管指示。发光二极管亮状态表示1码,熄状态表示。码。其原理方框图如图3.2所示,电路原理图如图3.1所示。502S7S ouo 3 a图3.4数字信号源原理图3.2 HDB3编码单元在实际的传输系统中,并不是所有代码的电波形都能在信道中传输。含有直流分 量和较丰富低频分量的单极性基带波形就不适宜在低频传输特性差的信道中传输,因为 它有可能造成信号严重畸变。又如,当消息代码中包含长串的连续T或“0”符号时,非 归零波形呈现出连续的固定电平,因而无法获取定时信息。因此,对传输用的基带信号 必须编成适合
37、于传输用的码型。常用传输码型及其特点(1)单极性码,单极性码是最简单、最基本的码型,分为非归零单极性码(NRZ)和归 1 2基于HDB3码编译码器的设计零码,码间干扰大。(2)双极性传号交替反转码(AMI码),AMI码就是1码正负交替出现,AMI码克 服了单极性码型的部分缺点,它无直流成分且高低频成分较少,码型还提供一定的检错 能力,但它没有时钟频率成分,当码流中连0的个数过多后,给提取时钟造成了困难。(3)高密度双极性码(HDB3码),HDB3码是连。抑制码,当码流中连。个数不超过 3个时,按AMI码处理,当连0个数大于等于4个时,将0000用000V或B,OOV(B,代 指非零码产 代替。
38、具体编码规则如下:凡出现4个和4个以上的连0码时,从第一个 0码起,每四个连0码为一组;将4连0组的第4个0码用码值为1或-1的取代码V或 B代替,即呈000V或B500V型;保证相邻两个0码之间有奇数个传号。当两个相 邻的V码之间有奇数个传号时,4连。组用000V代;当相邻的两个V码之间有偶数个 传号时,4连。组用B00V代替,人为的加入传号B,可保证两个相邻的V码间的总 传号个数为奇数个;V码的极性和相邻的前一个传号(包括B码)极性相同,相邻两个V 码的极性正负交替,相邻两个B(包括B,)码的极性正负交替。前面的两条规则可保证连 0个数不会超过3个,便于提取时钟。后两条规则可保证正负脉冲个
39、数相等,从而保证 没有直流分量。传输码(或称线路码)的结构将取决于实际信道特性和系统工作的条件。通常,传输 码的结构应具有下列主要特性:相应的基带信号无直流分量,且低频分量少;(2)便于从信号中提取定时信息;信号中高频分量尽量少,以节省传输频带并减少码间串扰;(4)不受信息源统计特性的影响,即能适应于信息源的变化;(5)具有内在检错能力,传输码型应具有一定规律性,以便利用这一规律性进行宏观监测;编译码设备要尽可能简单,等等。满足以上特性的传输码型种类繁多,这里使用HDB3码。HDB3码的全称是3阶高密度双极性码,它是AMI码的一种改进型,其目的是为 了保持AMI码的优点而克服其缺点,使连“0”
40、个数不超过3个。其编码规则如下:当信码的连“0”个数不超过3时,仍按AMI码的规则编,即传号极性交替;当连“0”个数超过3时,则将第4个“0”改为非“0”脉冲,记为+V或-V,称之为破坏脉 冲。相邻V码的极性必须交替出现,以确保编好的码中无直流;为了便于识别,V码的极性应与其前一个非“0”脉冲的极性相同,否则,将四连“0”的 第一个“0”更改为与该破坏脉冲相同极性的脉冲,并记为+B或-B;(4)破坏脉冲之后的传号码极性也要交替。例如:13基于HDB3码编译码器的设计代码:100001000011000011AMI 码:-10000+10000-1+100()0-1+1HDB3 码:-1000-
41、V+1000+V-1+1-B00-V+1-1其中的V脉冲和土B脉冲与1脉冲波形相同,用V或B符号的目的是为了示意 是将原信码的“0”变换成“1”码。HDB3码保持了 AMI码的优点外,还将连“0”码限制在3个以内,故有利于定时 信号的提取。HDB3编码原理框图如图3.5所示。NRZ-INHDB3 编码器+H-OUT.单一双 变换BS-IN;-H-OUTHDB3”图3.5 HDB3编码原理框图编码的实现是根据HDB3编码原理把二进制码编码成两路单极性的码字输出,之后 经过单双变换模块形成HDB3码。3.2.1 用CD22103A芯片实现本单元用CD22103AW集成电路进行HDB3编码。编码时,
42、需输入NRZ码及位同 步信号,它们来自数字信源单元。CD22103A编码输出两路并行信号+H-OUT和-H-OUT,它们都是半占空比的正脉冲信号,分别与HDB3码的正极性信号及负极性信号相对应。这两路信号经单/双极性变换后得到HDB3o该码型变换电路采用专用集成芯片CD22103对HDB3进行编译码,其第3脚接十 5V时为HDB3编译码器,接地时为AMI编译码器。输入的NRZ信号通过编译码器输 出两路并行信号+HDB3 OUT和一HDB3 OUT,他们都是半占空比的正脉冲信号,分别与HDB3码的正极性信号及负极性信号相对应,这两路信号经单/双极性变换后可 得到HDB3码。本电路中给出的两种单/
43、双极性变换方法,一种是采用模拟开关CD4052,将两路单极性信号作为控制信号轮流选通+5V和一5V,输出信号即为HDB3码,这种 方法得到的HDB3码码型规律,现象明显,便于观察,在教学实验系统中通常被采用;另一种是采用变压器耦合得到HDB3码,这种方法提高了信号传输能力,在实际工程中 被广泛采用。在CD22103中,全波整流的过程已经集成在芯片内部,芯片的第10管脚输出便是14基于HDB3码编译码器的设计HDB3-D 信号。图3.6所示为HDB3编码单元的原理图。图3.6 HDB3编码单元本电路中采用的编译码芯片CD22103的引脚及内部框图如图3.7所示,引脚及功能 说明如下。(“叫HNR
44、Z-1N1 16VtMCTX HDBJ-OLTT-HDin-ocrrCD2210J4IDBJ4NCRXLIEKAISHDBj-oirrAISCKRI QERR图3.7 CD2 2 1 03的引脚PIN1:NRZ-IN编码器NRZ信号输入端;PIN2:CTX编码时钟(位同步信号)输入端;PIN3:AMI/HDB3码型选择端:接TTL高电平时选择HDB3码;接TTL低电平时 选择AMI码;PIN4:NRZ-OUT HDB3译码后信码输出端;PIN5:CRX译码时钟(位同步信号)输入端;15基于HDB3码编译码器的设计PIN6:RAIS告警指示信号(AIS)检测电路复位端,负脉冲有效;PIN7:AI
45、SAIS信号输出端:有AIS信号时为高电平,无AIS信号为低电平;PIN8:VSS接地端;PIN9:ERR不符合HDB3/AMI码编码规则的误码脉冲输出端;PIN10:CKR HDB3码的汇总输出端;PIN11:HDB3 INHDB3译码器负码输入端;PIN12:LTFHDB3译码内部环回控制端,接高电平时为环回,接低电平时为正常;PIN13:+HDB3-IN HDB3译码器正码输入端;PIN14:-HDB3 OUTHDB3编码器负码输出端;PIN15:+HDB3 0UTHDB3编码器正码输出端;PIN16:VDD 接电源端(+5V)oCD22103主要由发送编码和接收译码两部分组成,工作速率
46、为50kb/s-l()Mb/so在 发送部分,当AMI/HDB3端接高电平时,编码电路在编码时钟CTX下降沿的作用下,将NRZ码编成HDB3码(+HDB3 OUT,HDB3 OUT两路输出);接低电平时,编成AMI码。3.2.2 用VHDL建模实现编码单元可以用VHDL语言来实现。编码的实现是根据HDB3编码原理把二进制 码编码成两路单极性的码字输出,之后经过单双变换模块形成HDB3码。从编码规则来 分析,这个设计的难点是如何判决是否应该插“B”。按照实时信号处理的理论,这是没 办法实现的。但在实际的电路中,可以考虑用寄存器的方法,首先把信码寄存在寄存器 里,同时设置一个计数器计数两个“V”之
47、间的“1”的个数,经过4个码元时间后,由 一个判偶电路来给寄存器发送是否插“B”的判决信号,从而实现插“B”功能。不过,信号处理的顺序不能像编码规则那样:首先把代码串变换成为AMI码,完 成插“V”、插“B”工作之后,其后的“+1”和“-1”的极性还要依据编码规则的规定 变换。这样做需要大量的寄存器,同时电路结构也变得复杂。若把信号处理的顺序变换 一下:首先完成插“V”工作,接着执行插“B”功能,最后实现单极性变双极性的信 号输出。这样做的好处是:输出进来的信号和插“V”、插“B”功能电路中处理的信号 都是单极性信号,且需要的寄存器的数目可以少很多。另外,如何准确识别电路中的“1”、“V”和“
48、B”符号是人为标识的符号,但在电 路中最终的表现形式还是逻辑电平“1”。解决的方法是利用了双相码,将其用二进制代 码分别表示。双相码的编码规则:它是对每个二进制代码分别利用两个具有两个不同相 位的二进制码去取代。例如,16基于HDB3码编译码器的设计代码:110 0 10双相码:10 10 01 01 10 01这样就可以识别电路中的“1”、“V”、“B”。也可以人为地假如一个标识符(其最终 目的也是选择输出“1”的极性),控制一个选择开关,使输出“1”的极性能按照编码规 则进行变化。HDB3编码的VHDL建模及程序设计。本设计的思想并不像前面HDB3编码原理 介绍的那样首先把消息代码变换成为
49、AMI码,然后进行V符号和B符号的变换,而是 在消息代码的基础上,依据HDB3编码规则分别进行插入“V”符号和插入“B”符号的 操作,最后完成单极性信号变成双极性信号的转换。HDB3码的编码器模型框图如图3.8 所示。代码输入,插V插BX.单/双极性 变换HDB3码、AA图3.8 HDB3编码器模型整个HDB3编码器包含3个功能部分:插“V”、插“B”和单极性码转换成双极性 码。各个部分之间采用同步时钟作用,并且带有一个异步的复位(清零)端口。下面将详 细介绍各个部分的设计流程和编写的源程序。模块的端口描述如下:l ibr a r y ieee;u se ieee.std _l o gic _
50、1164.a l l;en tity hd b3 is-HDB3编码器实体名po r t(c o d ein:in std jo gic;el k:in std jo gic;c l r:in std jo gic;c o d eo u t:o u t std _l o gic _vec to r(1 d o wn to 0);en d hd b3;a r c hitec tu r e r tl o f hd b3 issign a l c o d eo u tv:std _l o gic _vec to r(1 d o wn to 0);sign a l c o u n tOin teger