ImageVerifierCode 换一换
格式:DOCX , 页数:32 ,大小:567.24KB ,
资源ID:6830041      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6830041.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于CPLD的HDB3编码通信模块设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于CPLD的HDB3编码通信模块设计.docx

1、基于CPLD的HDB3编码通信模块设计ANYANG INSTITUTE OF TECHNOLOGY 本 科 毕 业 设 计 基于CPLD的HDB3编码通信模块设计Design the Model of HDB3 Encoding Communication Based on CPLD系(院)名称: 电子信息与电气工程 专 业 班 级: 10级通信工程专升本 学 生 姓 名: 杨启慧 学 号: 201002080017 指导教师姓名: 李立 指导教师职称: 讲师 2012 年 5 月毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导

2、下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得安阳工学院及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解安阳工学院关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前

3、提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 4.3 Max+Plus的简介.164.3.1 Max+Plus的设计输入及流程. 16基于CPLD的HDB3编码通信模块设计摘要:HDB3码是一种应用广泛的线路传输码,是基带传输系统中经常采用的传输码型。HDB3 码具有低频分量小和无直流分量,提取时钟方便和较好的抗干扰能力等优点。本文阐述了HDB3码编码电路的基本原理,在MAX+Plus软件平台上,给出了利用复杂可编程逻辑器件设计的HDB3码编码电路,并进行了编码和波形仿真。在CPLD开发软件中编写硬件描述语言源程序,再通过语法检查、器件选择(选择MAX7000系列的EPM712

4、8)、管脚分配、逻辑综合等编码过程后,生成编程文件(ATMEL系列是以.pof为文件名后缀)。接下来,将得到的ATMEL公司的编程文件用转换软(pof2jed.exe)转换成ATMEL公司的编程文件(.jed文件),然后用ATMEL公司的下载软(Atmelisp.exe)通过下载线和JTAG口将编程文件下载到CPLD芯片中。此处下载线也可以直接使用ATMEL公司的ByteBlaster下载线,当然下载软件中要作相应设定。综合后下载到复杂可编程逻辑器件EPM7128SLC84-6中,测试结果表明,达到了预期的设计要求。关键词:三阶高密度双极性码(HDB3码) 编码器 复杂可编程逻辑器件(CPLD

5、)Design the Model of HDB3 Encoding Communication Based on CPLDAbstract:HDB3 code is a widely used line code and is baseband transmission system used in transmission code translation. HDB3 code having a low frequency component is small and no DC component, the extracted clock convenient and good anti

6、 jamming capability. On the software platform of MAX+Plus, we provide a circuit of HDB3 coder which utilizes the design of complex coded logic-units, then translate and simulate the waveform. At the developing software of CPLD the paper writes the hardware that describe program of language source, t

7、hrough the check of grammar, the selection of device (choose EPM7128 of MAX7000 series), pin assignment, logic synthesis and so on. After this process, it becomes a programming file (the suffix of file name is pof in ATMEL series). Changing the programming file (pof suffix) of ATMEL company into its

8、 jed file through software (pof2jed.exe). Then download the software of ATMEL company into CPLD chip through cable and the JTAG port of course. The download line can also use ByteBlaster load line of ATMEL company, but the software should set corresponding. After downloading into complex programmabl

9、e logic device of EPM7128SLC84-6, we can find the results point out it gets the design requirements that we desired.Keywords: HDB3-code; coder; CPLD引 言在数字通信系统中,数字信源的输出通常是采用单极性不归零码表示的数字基带信号,这种信号不但含有直流分量,而且低频成份也极其丰富。随着数字通信的发展,HDB3码的出现就克服了这一问题。科学技术在不断的进步,计算机从先前的采用半导体技术实现的计算器到现在广泛应用的采用高集成度芯片实现的多功能计算器。计算

10、机电路是计算机的重要组成部分,了解计算机电路的知识是促进计算机的发展的先决条件。而编码器和译码器是计算机电路中的基本器件,对它们的了解可以为以后的进一步深化研究打下一个良好的基础。本设计主要介绍的是一个基于超高速硬件描述语言VHDL对计算机电路中编码器和译码器进行编程实现。在CPLD的开发软件MAX+plus中编写硬件描述语言源程序,用于实现AMI/ HDB3编码,编译后生成编程文件,再通过特定的下载软件由下载线和JTAG口将编程软件下载到CPLD芯片中。本设计的主要目的是用CPLD的开发软件MAX+plus实现HDB3编码的过程。第一章 概述1.1发展历史及应用领域20世纪70年代,最早的可

11、编程逻辑器件-PLD诞生了。其输出结构是可编程的逻辑宏单元,因为它的硬件结构设计可由软件完成(相当于房子盖好后人工设计局部室内结构),因而它的设计比纯硬件的数字电路具有很强的灵活性,但其过于简单的结构也使它们只能实现规模较小的电路。为弥补PLD只能设计小规模电路这一缺陷,20世纪80年代中期,推出了复杂可编程逻辑器件-CPLD。目前应用已深入网络、仪器仪表、汽车电子、数控机床、航天测控设备等方面。 家庭成员:经过几十年的发展,许多公司都开发出了CPLD可编程逻辑器件。比较典型的就是Altera、Lattice、Xilinx世界三大权威公司的产品,这里给出常用芯片: Altera EPM7128

12、S(PLCC84)、Lattice LC4128V(TQFP100) 、Xilinx XC95108 (PLCC84)1.2研究背景及意义在数字基带传输系统中,从信源输出的信号一般是用“0”、“1”两种状态表示的单极性(NRZ)码。在进行数字信号基带传输时,必须考虑到传输信道的特点,将信息比特变换为适合于信道传输的数字信号,即进行线路编码。传输线路对码型的基本要求为:从线路码流中容易提取时钟,线路码型中不宜含有直流分量,低频成分应尽量减少,线路码流中高频成分应尽量减少,设备简单、易于实现码型变换和码型反变换的调试。随着数字通信的迅速发展,人们先后提出了各种适合线路传输的码型,如CMI码、MIL

13、LER码、281Q码、AMI码、HDB3码等。ITuT(原ccITT)G703建议中规定:2M、8M、34M的数字接口码型均采用HDB3码。在现代数字通信系统中,常常用“0”和“1”表示二进制信号数字基带信号是数字信息的电脉冲表示不同形式的基带信号具有不同的频谱结构,合理设计数字基带信号码型,以使数字信息变换为适合于给定信道传输特性的频谱结构,这是基带传输首先要考虑的问题HDB3 (hilgh density bipolar三阶高密度双极性)码,是在AMI(alternative mark inverse传号交替反转)码的基础上改进的一种双极性归零码它除具有AMI码功率谱中无直流分量,可进行差

14、错自检等优点外,还克服了AVII码当信息中出现连“0”码时定时提取困难的缺点,而且HDB3码频谱能量主要集中在基波频率以下,占用频带较窄,是CCITT G703推荐的PCM基群、二次群和三次群的数字传输接口码型;因此,HDB3码的编解码就显得极为重要了目前,HDB3编解码主要由专用集成电路及与之相匹配的外围中小规模集成芯片来实现采用的传输码型为AMI码和HDB3码,NRZ(nonreturlltozero不归零)码由移位寄存器和异或门搭建的m序列发生器产生硬件电路主要基于集成芯片CD22103外加少量外围芯片来实现该方案电路简单,位同步提取容易,已被成功地应用于实验室研究项目中1.3 设计的主

15、要内容在CPLD的开发软件Max+Plus中编写硬件描述语言源程序,用于实现AMI/ HDB3编译码,编译后生成编程文件,再通过特定的下载软件由下载线和JTAG口将编程软件下载到CPLD芯片中。第二章 HDB3码的编码原理2.1 HDB3码编码工作原理HDB3 码 是在AMI码基础上改进的一种半占空比的归零码,抑制了长串连“1”和连“0现象,具有无直流分量、抗干扰能力强、有利于时钟提取等优点,广泛应用于长距离数字通信的PCM系统中。HD B3 码 的编码原理框图参见图3.1.1,NRZ码到HDB3码的变换规则是:当NRZ码序列中连0,,个数小于4时,按AMI码编码规则处理,即用B+和B_交替表

16、示信息“1用0表示信息“0;当NRZ码序列中连“0”个数超过3个时,则以4连“0码为一组,第4个“O用V符号(称为破坏点)代替,相邻V脉冲的极性要交替变化,若相邻V脉冲间的B脉冲的个数为偶数时,需将4连“0”码中的第一个“0用B脉冲代替,其极性与前一个B脉冲相反,同时后面的B脉冲极性交替变化。即出现4连“0码时,其取代码有四种:000V十、OOOV-,B,OOV十、B-OOV-,具体取代码的选取由上述规则决定。要了解HDB3码的编码规则,首先要知道AMI码的构成规则,AMI码就是把单极性脉冲序列中相邻的“1”码(即正脉冲)变为极性交替的正、负脉冲。将“0”码保持不变,把“1”码变为+1、-1交

17、替的脉冲。如: NRZ码:1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 AMI码:-1 0 0 0 0 +1 0 0 0 0 -1 +1 0 0 0 0 -1 +1 HDB3码是AMI码的改进型,称为三阶高密度双极性码,它克服了AMI码的长连0串现象。 HDB3码的编码规则为先检查消息代码(二进制)的连0串,若没有4个或4个以上连0串,则按照AMI码的编码规则对消息代码进行编码;若出现4个或4个以上连0串,则将每4个连0小段的第4个0变换成与前一非0符号(+1或-1)同极性的V符号,同时保证相邻V符号的极性交替(即+1记为+V,-1记为-V);接着检查相邻V符号间非

18、0符号的个数是否为偶数,若为偶,则将当前的V符号的前一非0符号后的第1个0变为+B或-B符号,且B的极性与前一非0符号的极性相反,并使后面的非0 符号从V符号开始再交替变化。例: NRZ码: 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 插V: 1 0 0 0 V 1 0 0 0 V 1 1 0 0 0 v 1 1 插B: +1 0 0 0 +V-1 0 0 0 -V+1 -1 +B 0 0 +V -1 +1HDB3码有以下特点:基带信号无直流成分,且只有很小的低频成分;连0串符号最多只有3个,利于定时信息的提取;不受信源统计特性的影响。2.2 HDB3码编码设计思想

19、由于 CPLD 不能处理负电平,只能面向“1”、“0两种状态,所以要对它的输出进行编码。编码的实现是根据 HDB3 编码原理把二进制码编码成两路单极性的码字输出,之后经过单双变换模块形成 HDB3码,设计中的大部分工作可采用 VHDL语言描述实现,仅单双变换模块由于采用模拟器件 CD4052 实现,所以只能以外接电路实现。本文主要涉及用 VHDL 语言描述 HDB3 码编译码器的逻辑功能。在编码过程中,要经过连 0 检测、破坏节判断、破坏节间 “1”的个数判断、调整“1”的符号输出等步骤。由 HDB3 编码规则,当 NRZ 码中出现 4 连 “0”串时,第 4 个“0”用破坏符号“V”来代替,

20、并且连续两个“V”之间如果有偶数个“1”时,要把最后一小段的第一个“0”变为“B”。为了在单双极性变换时便于分辨出“V”标志和“B”标志,所以用“00”来标识“0”,用“10”标识“-1”,用“11”来标识“+1”。如果直接将要进行编码的数据按上述编码原则先转换成AMI码,然后进行加v码,加B码操作,会发现转化成AMI码时有一个“+1”“一1”码极性形成的过程,而在加B码操作之后,非零码元相应极性还有可能进行反转,因此有两个信号极性产生的过程。分析HDB3的编码结果:V码的极性是正负交替的,余下的1码和B码看成为一体也是正负交替的,同时满足V码的极性与前面的非零码极性一致。由此产生了利用FPG

21、A进行HDB3码编码的思路:先进行加V码,加B码操作,在此过程中,暂不考虑其极性,然后将V码,1码和B码分成两组,分别进行极性变换来一次实现。这样可以提高系统的效率,同时减小系统延时。HDB3编码器的数字电路部分由三个模块组成:V码产生单元(v Gen),B码产生单元(B Gen),单极性一双极性转换单元(single2double)。2.3 HDB3编码的硬件部分介绍本实验使用数字信源模块和设计实验模块,图3.3.1给出了TX-6B型设备设计实验模块电原理图。设计实验模块电路中有一个附加的电源开关K11(带有一个LED发光管显示K11状态),使用该模块时先打开总电源开关,然后将开关K11拨到

22、ON。TX-6B型设备设计实验模块的核心芯片是ATMEL公司的CPLD芯片ATF1508AS,此芯片为84脚PLCC型封装,带有JTAG测试接口电路,可以在系统编程(ISP),该芯片硬件上完全兼容ALTERA公司的EPM7128芯片,不过编程/擦除次数要远多于ALTERA公司CPLD的100次,达到1万次以上。如图3.3.1所示,8 输入3态缓冲器74LS244将来自数字信源模块的晶振信号CLK、位时钟信号BS、帧时钟信号FS、NRZ信号以及来自位同步模块的晶振信号CLK2进行缓冲处理后送给CPLD。同时74LS244还将CPLD输出的三路信号(OUT1、OUT2、OUT3)进行缓冲处理,其中

23、两路信号送到74HC4052芯片转换产生双极性信号BOUT,另一路直接输出到测试点。上述输入和输出信号为串行信号。本模块还提供了并行输入和输出方式:一个四位手动拨码开关产生四位并行输入信号送给CPLD;四个LED发光管用来显示CPLD的四位并行输出信号,发光管亮表示高电平,发光管熄表示低电平。本模块外部信号测试点和输出点以及与CPLD芯片引脚连接说明如下: OUT1 CPLD第10脚的输出信号测试点 OUT2 CPLD第9脚的输出信号测试点,此信号同时接到74HC4052的第10脚 OUT3 CPLD第8脚的输出信号测试点,此信号同时接到74HC4052的第9脚 BOUT 74HC4052输出

24、的双极性信号测试点 FS-D 信源NRZ码的帧时钟信号FS测试点,此信号经过74LS244缓冲后接到CPLD的第5脚作为输入信号 CLK2 8.867238MHz晶振输出信号(来自位同步模块)测试点,此信号经过74LS244缓冲后接到CPLD的第2脚作为输入信号,此信号频率约等于信源模块晶振信号CLK的2倍。图2.3.1 TX-6B型设备设计实验模块电原理图设计实验模块中CPLD芯片ATF1508AS的引脚资源分配定义如下: 第2脚 通用I/O口兼作GCLK2。实验模块中定义为输入口,已接位同步模块的晶振信号CLK2 第5脚 通用I/O口。实验模块中定义为输入口,已接信源NRZ码的帧时钟信号F

25、S 第8脚 通用I/O口,实验模块中定义为输出口,对应本模块外部输出点OUT3 第9脚 通用I/O口,实验模块中定义为输出口,对应本模块外部输出点OUT2 第10脚 通用I/O口,实验模块中定义为输出口,对应本模块外部输出点OUT1 第11脚 通用I/O口,实验模块中定义为输入口,已接信源模块的输出信号NRZ-OUT 第15脚 通用I/O口,实验模块中定义为输出口,已接LED发光管OP1,高电平驱动OP1亮 第16脚 通用I/O口,实验模块中定义为输出口,已接LED发光管OP2,高电平驱动OP2亮 第17脚 通用I/O口,实验模块中定义为输出口,已接LED发光管OP3,高电平驱动OP3亮 第1

26、8脚 通用I/O口,实验模块中定义为输出口,已接LED发光管OP4,高电平驱动OP4亮 第20脚 通用I/O口,实验模块中定义为输入口,已接拨码开关IN4(开关K10的第4位),IN4置ON时该引脚为+5V高电平,IN4置OFF时该引脚为0V低电平 第21脚 通用I/O口,实验模块中定义为输入口,已接拨码开关IN3(开关K10的第3位),IN3置ON时该引脚为+5V高电平,IN3置OFF时该引脚为0V低电平 第22脚 通用I/O口,实验模块中定义为输入口,已接拨码开关IN2(开关K10的第2位),IN2置ON时该引脚为+5V高电平,IN2置OFF时该引脚为0V低电平 第28脚 通用I/O口,实

27、验模块中定义为输入口,已接拨码开关IN1(开关K10的第1位),IN1置ON时(向上拨)该引脚为+5V高电平,IN1置OFF时该引脚为0V低电平 第14脚 JTAG口TDIN,实验模块中已接JTAG2口插座对应引脚 第23脚 JTAG口TMS,实验模块中已接JTAG2口插座对应引脚 第62脚 JTAG口TCK,实验模块中已接JTAG2口插座对应引脚 第71脚 JTAG口TDOUT,实验模块中已接JTAG2口插座对应引脚 第81脚 通用I/O口兼作GCLK3,实验模块中定义为输入口,已接信源模块NRZ码的位时钟信号BS-OUT 第83脚 通用I/O口兼作GCLK1。实验模块中定义为输入口,已接信

28、源模块晶振信号CLK第三章 HDB3编码器的程序设计3.1 HDB3编码各功能模块的设计方案AMI/HDB3编码子单元端口如图4.1.1所示,图中的NRZ、ctrl、pout1和pout2分别与图附1.1中的NRZ-IN、HDB3/AMI、+ HDB3-OUT及- HDB3-OUT相对应。当ctrl端口接高电平时模块进行HDB3编码,当ctrl端口接低电平时进行AMI编码。编码时需输入NRZ码及位时钟信号,它们分别接数字信源模块的NRZ-OUT信号及BS-OUT信号,已在印刷电路板上连好。子单元输出两路并行信号pout1和pout2,分别与AMI码或HDB3码的正极性信号和负极性信号相对应,这

29、两个信号作为AMI/ HDB3编译码模块中的单双极性变换器的输入信号,经极性变换后得到AMI码或HDB3码。图3.1.1 AMI/ HDB3编码子单元端口示意图AMI/ HDB3编码子单元对应的程序为code.vhd,程序中共设置6个变量,它们是:buff1 存储AMI码或HDB3码的正极性信号buff2 存储AMI码或HDB3码的负极性信号bw 记录前一个“1”码或“B”码的符号,1代表“+”,0代表“”bv 记录前一个“V”码的符号,1代表“+”,0代表“”i 指针,指向当前的输出比特k 指针,指向代表“B”码的比特编码算法流程如图4.1.2所示。如果接收到的NRZ码为“1”,则根据符号交

30、替反转的原则确定编码为+1或1,并更新变量bw的值;如果接收到的NRZ码为“0”,则将变量buff1和buff2的相应比特置为0。如果buff1和buff2的数据均为“0000”并且模块进行HDB3编码(ctrl=1),需要用“000V”或“B00V”取代此连0信息码,否则不改变buff1和buff2的值。在对“0000”信息码进行编码的时候,首先判断变量bw和bv的关系:如果bv=bw,说明两个相邻“V”码之间有偶数个信息“1”码(包括0个信息“1”码),将“0000”编码为“B00V”,根据符号交替反转的原则,“B”码和“V”码的符号与变量bw代表的符号相反,然后更新变量bw和bv的值;如

31、果bvbw,说明两个相邻“V”码之间有奇数个信息“1”码,将“0000”编码为“000V”,其中“V”码的符号与变量bv代表的符号相反,然后更新变量bv的值。最后将变量buff1和buff2的数据分别输出至pout1和pout2端口。图3.1.2 AMI/ HDB3编码算法流程图3.2 HDB3编码器的程序代码与波形仿真1. 下面为HDB3编码子单元源程序及注释。/ = / 程序名称:code.vhd / 程序功能:将NRZ码转换为AMI码或HDB3码 /LIBRARY ieee;USE ieee.std_logic_1164.all;ENTITY code is port( BS_R : in bit; / 位同步信号 / NRZ : in bit; / 输入的NRZ信号 / ctrl :

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1