通信编解码器

  • 格式:doc
  • 大小:748.22 KB
  • 文档页数:18

下载文档原格式

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

学号

EDA技术及应用A

课程设计说明书

通信编解码器

起止日期:2015 年12 月28 日至2015 年12 月31 日

学生姓名

班级

成绩

指导教师(签字)

计算机与信息工程学院电子信息与工程系

2015年12月31日

课程设计任务书

2014 —2015 学年第1 学期

电子与信息工程系电子信息科学与技术专业

课程设计名称:EDA技术及应用A

设计题目:通信编解码器

完成期限:自2015 年12月28 日至2015 年12 月31 日共 1 周

一.课程设计依据

在掌握常用数字电路原理和技术的基础上,利用EDA技术和硬件描述语言,EDA开发软件(Quartus Ⅱ)和硬件开发平台(达盛试验箱CycloneⅡFPGA)进行初步数字系统设计。

二.课程设计内容

采用状态机结构设计简易串行数据编码器,输入为NRZ码,实现把输入码转换为转换为差分码,双相码,曼彻斯特码功能,串行数据速率为9600bit/s,要求通过仿真验证。

扩展设计:数据9600bit/s从串口来,采用1MHz超采样,实现数据9600bit/s NRZ码恢复,然后进行码变换。

三.课程设计要求

1. 要求独立完成设计任务。

2. 课程设计说明书封面格式要求见《天津城建大学课程设计教学工作规范》附表1

3. 课程设计的说明书要求简洁、通顺,计算正确,图纸表达内容完整、清楚、规范。

4. 测试要求:根据题目的特点,采用相应的时序仿真或者在实验系统上观察结果。

5. 课设说明书要求:

1) 说明题目的设计原理和思路、采用方法及设计流程。

2) 对各子模块的功能以及各子模块之间的关系作明确的描述。

3) 对实验和调试过程,仿真结果和时序图进行说明和分析。

4) 包含系统框图、电路原理图、HDL设计程序、仿真测试图。

指导教师(签字):

教研室主任(签字):

批准日期:2015 年12 月24 日

目录

第一章通信编解码器概述 (1)

1.1总体方案设计 (1)

1.2概念介绍 (1)

1.2.1状态机 (1)

1.1.2NRZ码 (2)

1.1.3差分码 (2)

1.1.4曼彻斯特码(又称双相码) (2)

1.3编码器的设计及程序 (3)

1.3.1 采用状态机结构设计 (3)

1.3.2 差分码模块程序 (3)

1.3.3 曼彻斯特码模块程序 (3)

第二章转码器的设计与仿真 (6)

2.1功能描述 (6)

2.2差分码源程序(基于Verilog HDL语言) (6)

2.2.1功能模块仿真 (6)

2.3曼彻斯特码源程序(基于Verilog HDL) (8)

2.3.1功能模块仿真 (11)

第三章转码器的综合设计及验证 (12)

3.1基于原理图的层次化设计 (12)

3.2转码器码的原理图 (13)

3.2.1曼彻斯特码转码器 (13)

3.2.2差分码转码器 (13)

第四章编解码器的设计总结 (14)

4.1设计调试 (14)

4.2 设计心得 (14)

参考文献 (15)

第一章通信编解码器概述

编解码器(codec)指的是一个能够对一个信号或者一个数据流进行变换的设备或者程序。这里指的变换既包括将信号或者数据流进行编码(通常是为了传输、存储或者加密)或者提取得到一个编码流的操作,也包括为了观察或者处理从这个编码流中恢复适合观察或操作的形式的操作。编解码器经常用在视频会议和流媒体等应用中,通常主要还是用在广电行业,作前端应用。

1.1 总体方案设计

本文主要介绍用Verilog HDL语言来描述编写一个将NRZ码转换为曼彻斯特码和差分码的软件模块,并能够在FPGA芯片中调试和仿真。

总体的设计原理框图如图1-1所示。

图1-1 原理框图

1.2 概念介绍

1.2.1 状态机

状态机是一个有向图形,由一组节点和一组相应的转移函数组成。状态机通过响应一系列事件而“运行”。每个事件都在属于“当前”节点的转移函数的控制范围内,其中函数的范围是节点的一个子集。函数返回“下一个”(也许是同一个)节点。这些节点中至少有一个必须是终态。当到达终态,状态机停止。

状态机主要分为2大类:第一类,若输出只和状态有关而与输入无关,则称为Moore 状态机:第二类,输出不仅和状态有关而且和输入有关系,则称为Mealy状态机。要特别注意的是,因为Mealy状态机和输入有关,输出会受到输入的干扰,所以可能会产生毛刺(Gitch)现象,使用时应当注意。事实上现在市面上有很多EDA工具可以很方便的

将采用状态图的描述转换成可以综合的VHDL程序代码。

1.1.2 NRZ码

数字信号可以直接采用基带传输所谓基带就是指基本频带。基带传输就是在线路中直接传送数字信号的电脉冲,这是一种最简单的传输方式,近距离通信的局域网都采用基带传输。

基带传输时,需要解决数字数据的数字信号表示以及收发两端之间的信号同步问题。对于传输数字信号来说,最简单最常用的方法是用不同的电压电平来表示两个二进制数字,也即数字信号由矩形脉冲组成。按数字编码方式,可以划分为单极性码和双极性码。

1.1.3 差分码

通信中的差分编码,差分编码输入序列{an},差分编码输出序列{bn},二者都为{0,1}序列,则差分编码输出结果为bn=an异或bn-1,并不是bn=an异或an-1(即所谓的:对数字数据流,除第一个元素外,将其中各元素都表示为各该元素与其前一元素的差的编码。这么定义是不准确的。)前者多用在2dpsk调制,后者多用在msk调制预编码。同时后者是码反变换器的数学表达式,即用来解差分编码用的。

1.1.4 曼彻斯特码(又称双相码)

曼彻斯特编码(Manchester Encoding),也叫做相位编码(PE),是一个同步时钟编码技术,被物理层使用来编码一个同步位流的时钟和数据。曼彻斯特编码被用在以太网媒介系统中。曼彻斯特编码提供一个简单的方式给编码简单的二进制序列而没有长的周期没有转换级别,因而防止时钟同步的丢失,或来自低频率位移在贫乏补偿的模拟链接位错误。在这个技术下,实际上的二进制数据被传输通过这个电缆,不是作为一个序列的逻辑1或0来发送的(技术上叫做反向不归零制(NRZ))。相反地,这些位被转换为一个稍微不同的格式,它通过使用直接的二进制编码有很多的优点。

曼彻斯特编码,常用于局域网传输。它利用两个具有不同相位的二进制码来代替原来的二进制码来代替原来的二级制信息码,它是由普通二进制数据与其位率时钟信号相异或而得,解决了传输数据没有时钟的问题。在曼彻斯特编码中,每一位的中间有一跳变,位中间的跳变既作时钟信号,又作数据信号;从低到高跳变表示"0",从高到低跳变表示"1"。编码规则如表1-1所示。

表1-1 曼彻斯特码的编码规则