基于VHDL语言的HDB3编译码器的设计毕业论文


    基VHDL语言HDB3编译码器设计毕业文
    目录
    摘 Ⅰ
    Abstract Ⅱ
    引言 1
    1 绪 2
    11 现代数字系统设计发展概述 2
    12 EDA技术简介 2
    121 概述 2
    122 EDA技术基特征 3
    123 EDA技术开发工具 3
    13 编程逻辑器件简介 4
    131 编程逻辑器件分类 4
    132 编程逻辑器件特点 5
    2 开发工具简介 6
    21 VHDL语言 6
    211 VHDL语言简介 6
    212 VHDL语言特点 6
    22 Max+PlusⅡ简介 7
    221 Max+plusⅡ基特点 7
    222 Max+plusⅡ简介 8
    3 HDB3码简介 9
    31 基带传输常码型 9
    311 传输码性选择原 9
    312 AMI码 10
    313 HDB3码 10
    32 HDB3码编译码规 10
    321 HDB3码编码规 10
    322 HDB3码译码规 12
    4 HDB3编译码器VHDL建模 12
    41 HDB3编码器VHDL建模 12
    411 插V模块建模 13
    412 插B模块建模 13
    413 单双极性转换模块建模 14
    42 HDB3译码器VHDL建模 15
    5 仿真实现 16
    51 HDB3编码器仿真实现 16
    511 插V模块流程仿真 16
    512 插B模块流程仿真 18
    513 单双极性转换模块流程仿真 20
    514 HDB3编码器整体仿真 22
    52 HDB3译码器仿真实现 22
    结 25
    致谢 26
    参考文献 27
    附录 28
    程序清单 28













    数字基带信号传输数字通信系统重组成部分数字通信中场合载波调制解调程基带信号进行直接传输基带信号基带信道中传输必须选择合适码型HDB3码具直流成分低频成分少连0数超三功强纠错力具时钟恢复等性优势成CCITT协会推荐基带传输码型文Max+PlusⅡ开发环境中采VHDL语言数传输系统中HDB3编码器译码器进行设计仿真根编码规编码器分三部分中包括:插V模块插B模块单双极性变换模块根译码规译码器含模块模块进行仿真实现相应功进行整体编译码器仿真验证仿真结果正确
    关键字:HDB3码VHDL编译码器Max+PlusⅡ




























    Abstract
    Digital baseband signal transmission is an important digital communication system components In digital communications some occasions may after modulation and demodulation process and on the baseband signals transmitted directly Must choose the right pattern for the baseband signal in the baseband channel transmission HDB3 code and its nonDC components and even less lowfrequency components of 0 up to more than three the number and it is strong to examine the ability by mistake have advantages such as performance of clock recovery etc and the Association has become the CCITT recommended baseband transmissiontype one code In this paper the use of VHDL in the data transmission system HDB3 encoder and decoder has been designed and simulated in Max+Plus II development environment According to the encoding rules there are three parts in encoder insert the V module insert the B module single bipolar transform module According to the decoding rules decoder contains only one part Finally simulate each module until achieve the corresponding functions to simulate the overall encoder and decoder Proven simulation results are correct
    Keywords HDB3VHDLEncoderDecoderMax+PlusⅡ





















    引言
    传输数字信号通信系统称数字通信系统数字通信系统抗干扰力强噪声积累传输差错控便计算处理变换存储易加密易型化集成化等优势成代通信领域流技术基带数字序列信号适码型变换直接送入信道传输称基带数字序列信号传输简称基带传输
    数字基带传输码型选择原:
    Ø 直流低频信号衰减快信号传输定距离严重畸变应含直流低频频率分量
    Ø 高频分量越邻信道产生干扰越严重高频分量进行少
    Ø 方便接收基带信号中提取步信息应包含定时频率分量
    Ø 便增加冗余码码型带规律性
    Ø 码型变换程中信源统计特性关信源消息类型限制具透明性
    根述码型选择原HDB3码具直流分量低频成分少连0数超三定时信号恢复十分利具检错力等优点成广泛基带传输码型文中VHDL语言实现HDB3码编码器译码器功
















    1 绪
    11 现代数字系统设计发展概述
    传统数字系统设计方法利真值表卡诺图状态方程组状态转换表状态转换图等描述工具建立系统模型进行设计整程均工完成种方法花费效率低制作周期长复杂数字系统(含万十万甚百万逻辑门)果种传统数字电路设计方法求解非常困难甚时根法进行
    20世纪末数字系统设计方法飞速发展科技迅猛发展推动现代电子产品已渐渐渗透社会领域推动全球信息化进程时电子产品更新换代频率越越快电子器件历规模集成电路中规模集成电路规模集成电路领域应超规模集成电路发展简单编程器件高密度编程器件设计方法发生巨转变原手工设计早期CAD技术目前应广泛电子动化技术(EDA)提高系统性通性微处理器专集成电路(ASIC)逐渐取代通全硬件(LSI)电路编程逻辑器件(PLD)广泛应ASIC制作中
    编程集成电路开发程中EDA技术出现带电子系统设计革命性变化传统设计方法逐渐已基EDA技术设计取代
    12 EDA技术简介
    121 概述
    EDA(Electronic Design Automation)电子设计领域场革命源计算机辅助设计(CADComputer Aided Design)计算机辅助制造(CAMComputer Aided Made)计算机辅助测试(CATComputer Aided Test)计算机辅助工程(CAEComputer Aided Engineering)利EDA工具电子工程师概念算法协议开始设计电子系统电路设计性分析直IC版图PCB版图生成全程均计算机动完成
    早期CAD软件相(助计算机完成数处理模拟设计验证部分工作许工作旧需工完成)EDA动化程度更高(电子系统整设计程部分设计均计算机完成)功更完善运行速度更快操作界面友良数开软件互换性厂商EDA软件兼容EDA技术快世界公司企业科研单位广泛应成衡量国家电子技术发展水重标志
    EDA技术范畴应包括电子工程师进行产品开发全程电子产品生产全程中期计算机提供种辅助工作角度EDA技术科粗略分系统级电路级物理实现级三层次辅助设计程角度EDA技术应包括电子电路设计领域低频电路高频电路线性电路非线性电路模拟电路数字电路分立电路集成电路全程
    122 EDA技术基特征
    EDA代表电子设计技术新发展方般讲EDA技术特点包括:硬件采工作站者高级计算机软件采EDA工具设计方法采顶设计方法整系统进行方案设计功划分EDA工具软件结构采开放性标准化框架够实现资源享中EDA工具功包括:原理图输入硬件描述语言输入波形输入仿真设计测试设计逻辑综合时序分析等方面谓顶设计高层开始硬件描述语言完成系统行级设计利先进开发工具动完成逻辑编译化简分割综合优化布局布线仿真特定目标适配编译编程载称数字逻辑电路高层次设计
    目前数高档 EDA 软件支持 VHDL Verilog 混合设计工程应中电路模块 VHDL 设计电路模块 Verilog 设计取长已成目前EDA应技术发展重趋势章简介绍VHDL语言
    123 EDA技术开发工具
    目前EDA技术开发工具包括编辑器仿真器检查分析优化综合工具等面做简单介绍
    a 编辑器
    编辑器功设计输入进行图形者文等方面编辑操作般包括图形编辑器波形编辑器文编辑器中文编辑器系统级编辑电子系统然描述语言层次编辑硬件描述语言文文采文编辑器

    b 仿真器
    顾名思义仿真器设计仿真操作种工具功验证设计正确性通常仿真器评价EDA工具项重指标
    c 检查分析工具
    检查分析工具具体设计进行编译检查分析设计中出现错误出现结果进行分析分析产生种相关文件便设计者分析结果
    d 优化综合工具
    检查分析工具完成优化逻辑综合功目提高设计系统性资源优化具体电路够方便实现
    124 EDA技术发展趋势
    进入21世纪全定制定制专集成电路正成新发展热点专集成电路设计应必须专门EDA工具EDA技术功仿真时序分析集成电路动测试高速印刷电路板设计操作台扩展等方面面着新巨挑战EDA技术目前正处高速发展阶段年新EDA工具问世国EDA技术应水长期落发达国家广电子工程员应该早掌握先进技术仅提高设计效率需更国电子工业世界市场生存竞争发展需
    13 编程逻辑器件简介
    131 编程逻辑器件分类
    天数字电子系统设计方法设计手段发生根性变化正分立数字电路编程逻辑器件(PLDProgrammable Logic Device)专集成电路(ASICApplication Specific Integrated Circuit)转变
    广义讲编程逻辑器件指切通软件手段更改配置器件部连接结构逻辑单元完成定设计功数字集成电路目前常编程逻辑器件:
    a 简单逻辑阵列(PALGAL)属早期编程逻辑器件发展形势特点基E²CMOS工艺机构较简单编程逻辑单元阵列编程逻辑单元密度较低仅适某简单数字逻辑电路
    b 复杂编程逻辑器件(CPLD)实现逻辑功PALGAL幅度提升般完成设计中较复杂较高速度逻辑功接口转换总线控制等
    c 现场编程逻辑阵列(FPGA)CPLD基础发展起新型高性编程逻辑器件般采SRAM工艺FPGA集成度高器件密度数万系统门道数千万系统门等完成极复杂时序组合逻辑电路功适高速高密度高端数字逻辑电路设计领域
    132 编程逻辑器件特点
    PLD特点进行系统设计时体现出PLD设计数字系统会带许处结起:
    a 集成度高片PLD代片十片甚百片中规模数字集成电路芯片实现数字系统时芯片数量明显减少占印刷线路板面积整系统硬件规模明显减
    b 性PLD减少实现系统需芯片数目印刷线路板引线焊接点数量减少系统性提高
    c 工作速度快PLD实现系统需电路级数少整系统工作速度会提高
    d 提高系统灵活性PLD器件引脚较灵活擦编程力系统研制阶段设计错误务变更需修改设计时需修改原设计文件PLD芯片重新编程需修改电路布局更换增减器件更需重新加工印刷线路板提高系统灵活性
    e 缩短设计周期PLD时印刷线路板电路布局布线简单性灵活修改设计方便开发工具先进动化程度高显著缩短系统设计周期
    f 增加系统保密性PLD具加密功系统PLD期间效防止产品非法仿制
    g 降低成PLD修改设计方便设计周期缩短进系统研制开发费降低PLD印刷线路板面积需插件减少系统制造费降低PLD系统性提高维修工作量减少进系统维修服务费降低总PLD进行系统设计显著节约成
    2 开发工具简介
    21 VHDL语言
    211 VHDL语言简介
    集成电路设计规模复杂度断增传统原理图方法进行系统级芯片设计已满足设计求硬件描述语言(HDLHardware Description Language)进行规模数字系统设计时具诸优势利硬件描述语言进行系统行级设计已成FPGAASIC设计流目前流行具代表性硬件描述语言美国国防部(DOD)开发VHDL(VeryHighSpeed Integrated Circuit Hardware Description Language)GDA(Gateway Design Automation)公司开发Verilog HDL
    VHDL超高速集成电路硬件描述语言美国国防部1983年创建硬件描述语言改进作IEEE标准成通硬件描述语言
    212 VHDL语言特点
    VHDL作IEEE标准语法严格已众EDA公司支持身必然具硬件描述语言具备优点纳起VHDL 语言具优点:
    a 功强
    VHDL 语言具强语言结构需采简单明确VHDL语言程序描述十分复杂硬件电路具层次电路设计描述功时VHDL 语言够时支持步电路异步电路机电路设计实现硬件描述语言拟
    b 设计方式样
    VHDL 语言设计方法灵活样支持顶设计方式支持底设计方法支持模块化设计方法支持层次化设计方法
    c 硬件描述力强
    VHDL 语言具层次电路设计描述功描述系统级电路门级电路描述方式采行描述寄存器传输描述结构描述者三者混合方式VHDL 语言支持惯性延迟传输延迟样准确建立硬件电路模型VHDL具丰富数类型VHDL 语言支持标准定义数类型支持户定义数类型样便会硬件描述带较度
    d 移植力强
    硬件电路 VHDL 语言描述模拟器移植模拟器综合器移植综合器者工作台移植工作台执行
    e 设计描述器件关
    设计员采 VHDL 语言描述硬件电路时需先考虑选择进行设计器件硬件电路设计描述完成VHDL 语言允许采种器件结构实现
    f 易享复
    VHDL 语言采基库设计方法设计程中先建立种次利模块规模硬件电路设计门级电路开始进行设计采预先设计者前设计中存档模块累加模块存放库中设计中进行复
    VHDL 语言种描述模拟综合优化布线标准硬件描述语言设计成果设计员间方便进行交流享减硬件电路设计工作量缩短开发周期
    VHDL两领域编程逻辑器件专集成电路写VHDL程序载编程逻辑器件中实现电路功提交工厂专集成电路芯片流片
    VHDL描述语言层次较高易控制底层电路 VHDL 综合器综合性求较高设计者积累定验会发现种综合器般定描述风格语言综合成确定电路熟悉基单元电路描述风格综合电路易控制
    22 Max+PlusⅡ简介
    221 Max+plusⅡ基特点
    Max+plusⅡAltera公司提供PLD集成开发环境Altera世界编程逻辑器件供应商Max+plusⅡ界面友便捷誉业界易易学EDA软件Max+plusⅡ完成设计输入元件适配时序仿真功仿真编程载整流程提供种结构关设计环境设计者方便进行设计输入快速处理器件编程
    Max+plusⅡ开发环境具特点:
    a 界面开放Max+plusⅡ支持CadenceExemplarlogicMentor GraphicsSynplictyViewlogic等公司提供第三方EDA工具接口
    b 结构关设计环境Max+plusⅡ系统核心Complier支持Altera公司FLEX 10KFLEX 8000FLEX 6000MAX 9000MAX 7000MAX 5000ACEX 1KClassic编程逻辑器件提供结构关编程逻辑设计环境
    c 集成化完全Max+plusⅡ设计处理校验功全部集成统开发环境样加快动态调试缩短开发周期
    d 设计库丰富Max+plusⅡ提供丰富库单元供设计者调
    e 模块化工具设计者种设计输入处理校验选项中进行选择开发环境户化
    f 支持硬件描述语言(HDL)Max+plusⅡ支持种HDL设计输入选项中包括VHDLVerilog HDL
    g 开放核(OpenCore)特征Max+plusⅡ软件具开放核特征允许设计员添加认价值函数
    222 Max+plusⅡ简介
    a VHDL代码输入
    (1) 启动Max+plusⅡ
    (2) 开文编辑器(Max+plusⅡ\Text Editor)开现文件(File\Open)
    (3) 显示窗口中输入VHDL代码扩展名vhd保存注意文件名实体名保持致
    b 编译
    (1) 针前建立工程:File\Project\Set Project to Current File
    (2) 选择菜单命令Max+plusⅡ\Compiler弹出编译窗口点击Start
    c 仿真
    (1) 开波形编辑器(Max+plusⅡ\Waveform Editor)
    (2) 单击右键选择Enter Nodes form SNF出现话框单击 > 然点OKVHDL代码实体中出现信号会列波形窗口中输入信号默认值 0输出信号默认值 X
    (3) 选择File\End Time设定波形长度
    (4) 单击Max+plusⅡ\Simulator出现话框中Start Time仿真起始时间End Time仿真终止时间点击Start开始仿真
    简单步骤器件参数需修改文单纯文输入涉选择器件选择全局逻辑综合方式选择器件引脚等操作做介绍
    3 HDB3码简介
    31 基带传输常码型
    311 传输码性选择原
    实际基带传输系统中基带波形适合信道中传输例含丰富直流分量低频分量单极性基带波形适宜低频传输特性差信道中传输造成信号严重畸变消息码中包含长连01时非零波形呈现出连续固定电致法提取定时信息单极性零码传送长连0时存样问题传输基带信号两求:
    a 码型求原始消息代码必须编成适合传输码型
    b 选码型电波形求电波形应适合基带系统传输
    选择码型时般应考虑原:
    a 含直流分量低频分量量少
    b 应含丰富定时信息便接受码中提取定时信息
    c 功率谱瓣宽度窄节省传输频带
    d 受信源统计特性影响
    e 具纠错力码型具定规律性便利规律宏观检测
    f 编译码简单降低通信延时时成
    满足者部分满足述6点特性码型面介绍常AMI码HDB3码
    312 AMI码
    AMI(Alternative Mark Inversion)码全称传号交反转码编码规消息码中0保持变1交变化+11举例表31示:
    表31 AMI码编码举例
    消息码
    0
    1
    1
    1
    0
    0
    0
    0
    0
    0
    0
    1
    1
    0
    0
    1
    1
    AMI码
    0
    1
    +1
    1
    0
    0
    0
    0
    0
    0
    0
    1
    +1
    0
    0
    1
    +1
    AMI码优点直流分量高频低频分量少量集中频率12码速处编码电路简单利传号极性交规律观察误码情况果AMIRZ波形接收全波整流变单极性RZ波形够提取定时信号
    AMI码缺点信源码出现长连0时信号电长时间跳变造成提取定时信号困难解决问题效方法HDB3码
    313 HDB3码
    HDB3码(High Density Bipolar of order 3code三阶高密度双极性码)串行数传输种重编码方式数字通信系统中重组成部分常NRZ码(Non Return Zero非零码)相HDB3码具优点例:消NRZ码直流成分具时钟恢复更抗干扰性更适合长距离信道传输AMI码相连0数限制三接受时保证定时信息提取时HDB3码具较强检错力数序列HDB3码传输时传输程中出现单误码极性交变化规律受破坏接收端根HDB3码独特规律特性检出错误纠正错误HDB3码作数传输种码型应广泛
    32 HDB3码编译码规
    321 HDB3码编码规
    消息代码HDB3码编码规:
    a 先消息代码变换成AMI码
    b 检查AMI码中0情况果出现4连0情况保持AMI码形式变
    c 代码序列中出现44连0码时连0段40分节0000节第40码变VV脉极性前1脉极性相称V破坏码000V破坏节
    d 序列中2相邻破坏码V间1脉数偶数需第二破坏节中第0码变B时破坏节变B00V形式B脉极性前非0脉极性相反V脉极性相
    HDB3编码举例波形图表32图33示:
    表32 HDB3编码举例
    消息码
    1
    0
    0
    0
    0
    1
    0
    0
    0
    0
    1
    1
    0
    0
    0
    0
    0
    0
    0
    0
    AMI
    1
    0
    0
    0
    0
    +1
    0
    0
    0
    0
    1
    +1
    0
    0
    0
    0
    0
    0
    0
    0
    HDB3
    1
    0
    0
    0
    V
    +1
    0
    0
    0
    +V
    1
    +1
    B
    0
    0
    V
    +B
    0
    0
    +V

    消息码:1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1
    HDB3:1 0 0 0 V 1 0 0 0 V 1 1 B 0 0 V B 0 0 V 1

    HDB3:+1 0 0 0 V 1 0 0 0 V 1 1 B 0 0 V B 0 0 V 1

    HDB3波形
    HDB3波形
    NRZ波形

    图33 HDB3编码示意图
    HDB3码优点:基带信号直流成分低频成分连0数3利定时信息提取受信源统计特性影响
    322 HDB3码译码规
    HDB3码编码规然较复杂译码较简单述编码规出破坏脉V总前非0脉极性(包括B)说接收消息码中容易找破坏点V断定V符号前面三符号必连0符号恢复4连0码1变成+1便源消息码
    4 HDB3编译码器VHDL建模
    41 HDB3编码器VHDL建模
    实际设计中前面编码规需先代码转换成AMI码进行插VB操作编码规变换1极性样做需量寄存器时电路结构变十分复杂现掌握知识法实现次设计
    实际设计中首先完成插V工作然完成插B功完成单极性变双极性信号输出样做处:输入进信号插V插B功电路中处理信号单极性信号需寄存器数目少
    具体讲考虑寄存器方法首先消息码寄存寄存器中时设置计数器计算两V间1数4码元时间判偶电路寄存器发送否插入B判决信号实现插B功电路中VB终表现形式逻辑电1准确识电路中1VB解决方法利双相码二进制码取代模型框图图41示:
    代码输入
    插入B
    单双极性变换
    插入V
    HDB3码
    NRZ码

    图41 HDB3编码模型
    双码编码规:二进制代码分利两具相位二进制码取代举例表42示:
    表42 NRZ码双码关系
    NRZ码
    1
    1
    1
    0
    1
    0
    0
    1
    双码
    10
    10
    10
    01
    10
    01
    01
    10
    样识电路中1VB加入标识符(终目选择输出1极性)控制选择开关输出1极性编码规进行变化
    411 插V模块建模
    实现插V模块功需消息代码里四连 0串进行检测出现 0000串时候第四0变换成符号V(V逻辑1——高电)非四连0情况保持消息代码原样输出减少面工作麻烦进行插V功设计时11标识V01标识100标识0输入代码插入V符号关系表43示
    表43 插入V符号
    消息码
    1
    0
    0
    0
    0
    1
    0
    0
    0
    0
    1
    1
    HDB3
    1
    0
    0
    0
    V
    +1
    0
    0
    0
    +V
    1
    +1
    插V
    01
    00
    00
    00
    11
    01
    00
    00
    00
    11
    01
    01
    插V模块设计思想:进程中首先通条件语句判断输入代码什(0码1码)果输入0码接着判断第0码果第四0码位0码变成 V码否保持消息代码原样输出
    412 插B模块建模
    插B符号模块功实现难点难点部分容涉现事件状态决定时间状态问题目前种问题实时信号处理理暂时未实现办法前时间状态数进行次处理中做法通信领域较常般讲先需输入数存放寄存器中等处理完成进行输出者边进行处理边进行边输出
    具体实现先引入两四位移位寄存器D信源消息码存放寄存器中时设置计数器(步时钟)计数器作计算两V码元间1奇偶性判断否需进行插入B码元工作(需具判偶功电路寄存器发送判决信号)寄存器接受数程图44示:
    例输入数10001时
    D (3)
    D (2)

    D (1)

    D (0)

    1
    0
    0
    0
    1
    1
    0
    0
    0
    1
    0
    0
    1
    0

    图44 寄存器接受数程
    移位寄存器先存放输入信号前4状态码元时判偶器判断1码元数奇偶性信号输入进行判断输入码元1时计数器加1输入码元0时计数器计数保持变输入码元V时会需计数器判断1数奇偶性偶数输出B输出数寄存器右移动位
    插V模块VHDL程序中V11代101取代显示出双相码优点解决V1差问题根种设计方法输入NRZ码序列进行插V插B步骤代码关系表45示:
    表45 插入VB符号
    消息码
    1
    0
    1
    0
    0
    0
    0
    1
    1
    0
    0
    0
    0
    0
    0
    0
    0
    HDB3
    1
    0
    +1
    0
    0
    0
    +V
    1
    +1
    B
    0
    0
    V
    +B
    0
    0
    +V
    插B
    01
    00
    01
    00
    00
    00
    11
    01
    01
    10
    00
    00
    11
    10
    00
    00
    11
    413 单双极性转换模块建模
    单双极性转换模块难点:VHDL程序Max+PlusⅡ环境中进行仿真时Max+PlusⅡ软件法识1波形仿真时01两种电状态定义双码000111分表示三种电状态表46示:


    表46 双码表示电状态关系
    双码
    00
    01
    11
    电状态
    0
    +1
    1
    HDB3码编码规出:V极性前非0码极性相V极性正负交B极性前非0码极性相反V外1B成体极性正负交V单独进行极性变换1B作整体进行极性变换前面已双码分01VB进行标识区便进行极性交变换操作
    42 HDB3译码器VHDL建模
    HDB3码译码规:
    a V极性前非0码极性相容易找出V码未编译代码中3连0前两非零脉极性相非0码转换0否做改变代码中2连 0前两非0码极性相两非0码转换0否做改变
    b 1变换成+1原消息代码
    实际编写VHDL代码时参述译码规进行编写








    5 仿真实现
    51 HDB3编码器仿真实现
    511 插V模块流程仿真
    根插V模块设计思想输入段NRZ序列输入序列插V符号间关系图51示:
    start
    count 0 0

    codein 0
    count 0Count 0 + 1
    code_out 11
    count 0 0

    end
    count 0 3

    code_out 01
    code_out 00
    Y
    Y
    N
    N
    注:count 0:连0数标志
    00:标识0
    01:标识1
    11:标识V

    图51 插V模块流程图
    根述流程图VHDL语言实现该功程:先判断输入代码否00输出1(01)反通计数器count0计算连0数连0数3时输出0(00)连0数3时第40位置插入V(11)

    VHDL程序实现插V模块程序:
    if reset '0' then count0<0
    code_out<00 0码
    elsif ( clk '1' and clk'event) then 检测升
    if code_in'0' then
    count0< count0+1
    if count03 then 4连0
    code_out<11 V码
    具体程序实现附录插V模块源代码示图52示插V模块仿真波形

    图52 插V模块仿真波形
    仿真波形图中reset计数器清零信号clk时钟信号code_in输入NRZ源码信号code_out进行插V符号输出信号
    根插V模块建模思想插入V00标识001标识111标识V 仿真时设置输入信号分8连05连04连03连0情况结合插V符号规仿真波形出结:
    NRZ码: 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 1 0 0
    理值: 01 00 00 00 11 00 00 00 11 01 01 00 00 00 11 00 01 00 00 00 11 01 00 00
    仿真结果:01 00 00 00 11 00 00 00 11 01 01 00 00 00 11 00 01 00 00 00 11 01 00 00
    结果分析:面结出插V模块仿真结果理值相结果正确通仿真波形明显出输出信号(code_out)相输入信号(code_in)延迟半时钟周期

    512 插B模块流程仿真
    根插B模块设计思想需完成插B符号功实现该功具体流程图图53示:
    start
    D [0] 1
    D [3] 1
    flag_v1
    flag_v0
    even even+1
    even 0
    Y
    N
    Y
    N
    Y
    end
    D [0] 1

    图53 插B符号流程图
    根述流程图VHDL语言实现该功程:设置两组4位移位寄存器D1D0意码元D1D0表示(D1&D0)插入B符号前D1D0三种组合形式D11&D01 D11&D01 D11&D01通组合判断flag_veven值终完成插B符号功中flag_v标识两V间flag_v0时出现两V否flag_v1even标识两V间1符号数奇偶性even0时偶数even1时奇数flag_v检测D(0)even检测D(3)
    VHDL程序实现插B模块程序:
    if reset'0' then
    flag_v<0
    even<0
    elsif(clk'1' and clk'event) then 检测升
    if (D1(3)'1' and D0(3)'1')then
    flag_v<1 检测V码输入
    else flag_v<0
    end if
    if(D1(0)'0' and D0(0)'1')then
    even elsif (D1(0)'1' and D0(0)'1')then
    even<0 V清零
    end if
    具体VHDL程序附录插B模块代码示图54示插B模块仿真波形:

    图54 插B模块仿真波形
    仿真波形图中reset计数器清零信号clk时钟信号code_in输入信号步插V模块输出信号code_out进行插B符号输出信号D1D04位移位寄存器结合插B符号规图仿真波形出结:

    Code_in:01 00 00 00 11 00 00 00 11 01 01 00 00 00 11 00 01 00 00 00 11 01 00 00
    理值: 01 00 00 00 11 10 00 00 11 01 01 10 00 00 11 00 01 00 00 00 11 01 00 00
    仿真结果: 01 00 00 00 11 10 00 00 11 01 01 10 00 00 11 00 01 00 00 00 11 01 00 00
    结果分析:面结出插B模块仿真结果理值相结果正确通仿真波形明显出输出信号(code_out)相输入信号(code_in)延迟5时钟周期
    513 单双极性转换模块流程仿真
    根单双极性转换模块设计思想实现单双极性转换功流程图图55示:
    start
    code_in V
    code_in1 B
    even1
    even1
    code_out01
    code_out11

    code_out 00

    code_out11

    Y

    Y

    Y

    N

    N

    N

    code_out01

    end

    图55 单双极性转换流程图
    根述流程图VHDL语言实现该功程:首先定义信号even输入码元V时(11)even1 输入码元B(10)者1(01)时even1even0反even1输出数HDB3码符号规 000111 0+11应关系进行标识中正数开始标识负数开始标识
    VHDL程序实现单双极性转换模块程序:
    if code_in11 then
    if even'1' then
    code_out<01 正电1
    else code_out<11 负电1
    end if
    elsif(code_in01 or code_in10) then
    if even'1' then even<'0'
    code_out<11
    else even<'1'
    code_out<01
    end if
    具体程序实现附录单双极性转换模块源代码示图56示单双极性转换模块仿真波形

    图56 单双极性转换模块仿真波形
    仿真波形图中reset计数器清零信号clk时钟信号code_in输入信号步插B模块输出信号code_out进行单双极性转换输出信号根单双极性转换规图仿真波形出结:

    Code_in: 01 00 00 00 11 10 00 00 11 01 01 10 00 00 11 00 01 00 00 00 11 01 00 00
    理值: 01 00 00 00 01 11 00 00 11 01 11 01 00 00 01 00 11 00 00 00 11 01 00 00
    仿真结果: 01 00 00 00 01 11 00 00 11 01 11 01 00 00 01 00 11 00 00 00 11 01 00 00
    结果分析:面结出单双极性转换模块仿真结果理值相结果正确通仿真波形明显出输出信号(code_out)相输入信号(code_in)延迟1时钟周期
    514 HDB3编码器整体仿真
    图57编码器整体仿真波形图清楚出序列插V模块插B模块单双极性转换模块波型变换步输入步输出信号终单双极性转换模块波形编码波形

    图57编码器仿真波形








    52 HDB3译码器仿真实现
    根译码器设计思想实现译码器流程图图57示:
    start
    code_in01 11
    Y

    N

    N

    code_out 0

    end
    D1&D00111

    Y

    code_out 1

    code_out 0


    图58 译码器流程图
    根述流程图VHDL语言实现该功程:首先设置两组4位移位寄存器D1D0插B模块样意码元D1D0表示(D1&D0)然定义信号tt接收输入信号t值01者11( +11)时判断存放寄存器中输入信号否11者10出现置0输入信号中01置10原样输出
    VHDL程序实现译码器程序:
    if ((t11 and D1(3 downto 0)0001 and D0(3 downto 0)0001)or
    (t01 and D1(3 downto 0)0000 and D0(3 downto 0)0001))
    判断V输入
    elsif((t11 and D1(3 downto 1)001 and D0(3 downto 1)001)or
    (t01 and D1(3 downto 1)000 and D0(3 downto 1)001))
    判断B输入
    if((D1(0)'1' and D0(0)'1')or(D1(0)'0' and D0(0)'1'))
    判断1输出1
    具体程序实现附录译码器代码示图58示单双极性转换模块仿真波形

    图59译码器仿真波形
    仿真波形图中reset计数器清零信号clk时钟信号code_in输入信号步单双极性转换模块输出信号code_out译码输出信号D1D04位移位寄存器结合HDB3码译码规图仿真波形出结:
    Code_in:01 00 00 00 01 11 00 00 11 01 11 01 00 00 01 00 11 00 00 00 11 01 00 00
    理值: 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 1 0 0
    仿真结果:1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 1 0 0
    结果分析:面结出译码器仿真结果理值相结果正确








    次设计基VHDL语言HDB3编码器设计仿真中编码器设计三模块组成包括插V模块插B模块单双极性变换模块采三模块设计实现次设计变简单果插V符号插B符号时进行编码规完全行实际设计程十分复杂目前力法实现采模块式设计简单易行译码器设计需模块较编码器模块设计讲相简单
    通次毕业设计熟悉掌握知识时体会颇:理联系实际说简单懂理知识定会应实际应需定验通长时间设计程中慢慢学会总结验教训收获良学VHDL语言时基编写规方法十分清楚开始实际编写时手知道应该做里入手段时间实践学发现编写代码时先绘制简单流程图问题解决起十分容易
    段时间设计仿真整HDB3编译码器够实现存足设计基VHDL语言设计没程序载硬件确定否够实现然没太遗憾目标已明确希未力完成








    致谢
    历时三月时间终完成篇文文写作程中导师花费量时间精力选题开题报告写作题纲文初稿中具体问题严格关感谢导师提供全面帮助导师丝苟作风严谨求实态度踏踏实实精神深受启发
    感谢篇文涉位学者文参考量文献资料果没位学者研究成果帮助启发难完成篇文撰写学术界前辈致敬
    感谢学朋友写文程中予提供资料写作程中家起学起进步学四年度时光感谢陪伴
    学术水限写文难免足处恳请位老师学友批评指正











    参考文献
    (1)樊昌信曹丽娜通信原理 北京:国防工业出版社2009
    (2)唐华杨怿菲张亚婷刘智芳弓楠数字电路EDA实践教程 北京:科学出版社2010
    (3)Volnei A Pedroni VHDL数字电路设计教程(乔庐峰王志功等译) 北京:电子工业出版社2005
    (4)赵鑫蒋亮齐兆群李晓凯VHDL数字电路设计 北京:机械工业出版社2005
    (5)詹仙宁田耕VHDL开发精解实例剖析 北京:电子工业出版社2009
    (6)潘松黄继业EDA技术VHDL 北京:清华学出版社2005
    (7)潘松王国栋 VHDL实教程 成:电子科技学出版社1999
    (8)侯伯亨顾新VHDL硬件描述语言数字电路设计 西安:西安电子科技学出版社1999
    (9)段吉海黄智伟基CPLDFPGA数字通信系统建模设计 北京:电子工业出版社2004
    (10)江国强 EDA技术应 北京:电子工业出版社2004








    附录
    程序清单
    插V模块
    library ieee
    use ieeestd_logic_1164all
    use ieeestd_logic_unsignedall
    entity hdb3_v is
    port ( reset clk code_in in std_logic
    code_out out std_logic_vector(1 downto 0))
    end hdb3_v
    architecture add _v of hdb3_v is
    signal count0 integer range 0 to 3 整数
    begin
    process( reset clk code_in) is
    begin
    if reset '0' then count0<0
    code_out<00 0码
    elsif ( clk '1' and clk'event) then 检测升
    if code_in'0' then
    count0< count0+1
    if count03 then 4连0
    code_out<11 V码
    count0<0
    else
    code_out<00 4连0
    end if
    else
    code_out<01 1码
    count0<0
    end if
    end if
    end process
    end add_v
    插B模块
    library ieee
    use ieeestd_logic_1164all
    use ieeestd_logic_unsignedall
    use ieeestd_logic_arithall
    entity hdb3_b is
    port ( reset clk in std_logic
    code_in in std_logic_vector(1 downto 0) 输入
    code_out out std_logic_vector(1 downto 0)) 输出
    end hdb3_b
    architecture add_b of hdb3_b is
    signal D1 D0 std_logic_vector(3 downto 0) 两组4位移位寄存器
    signal flag_v even integer range 0 to 1 两标记flag_veven
    begin
    process (clk code_in)is
    begin
    if( clk'1' and clk'event) then 检测升
    D1 (3) < code_in (1) 数输入
    D0 (3) < code_in (0)
    D1 (2 downto 0) D0 (2 downto 0) end if
    end process
    process (reset clk D1 D0) is
    begin
    if reset'0' then
    flag_v<0
    even<0
    elsif(clk'1' and clk'event) then 检测升
    if (D1(3)'1' and D0(3)'1')then
    flag_v<1 检测V码输入
    else flag_v<0
    end if
    if(D1(0)'0' and D0(0)'1')then
    even elsif (D1(0)'1' and D0(0)'1')then
    even<0 V清零
    end if
    end if
    end process
    process (reset clk) is
    begin
    if reset'0' then code_out<00
    elsif(clk'1' and clk'event) then
    if(flag_v0 and even0 and (D1(3)'1' and D0(3)'1')) then
    code_out<10 输出B码
    else code_out end if
    end if
    end process
    end add_b
    单/双极性转换模块
    library ieee
    use ieeestd_logic_1164all
    use ieeestd_logic_unsignedall
    use ieeestd_logic_arithall
    entity polarity is
    port ( reset clk in std_logic
    code_in in std_logic_vector(1 downto 0)
    code_out out std_logic_vector(1 downto 0))
    end polarity
    architecture hdb3_polarity of polarity is
    signal even std_logic 定义信号even
    begin
    process(reset clk code_in) is
    begin
    if reset'0' then
    even<'0'
    code_out<00
    elsif (clk'1' and clk'event) then
    if code_in11 then
    if even'1' then
    code_out<01 正电1
    else code_out<11 负电1
    end if
    elsif(code_in01 or code_in10) then
    if even'1' then even<'0'
    code_out<11
    else even<'1'
    code_out<01
    end if
    else
    code_out<00
    end if
    end if
    end process
    end hdb3_polarity
    顶层文件
    library ieee
    use ieeestd_logic_1164all
    use ieeestd_logic_unsignedall
    entity hdb3 is
    port(reset clk code_in in std_logic
    code_out out std_logic_vector (1 downto 0))
    end
    architecture hdb3encoder of encoder is
    component hdb3_v is 调插V符号声明语句
    port (resetclk code_in in std_logic
    code_out out std_logic_vector(1 downto 0))
    end component
    component hdb3_b is 调插B符号声明语句
    port(reset clk in std_logic
    code_in in std_logic_vector(1 downto 0)
    code_out out std_logic_vector(1 downto 0))
    end component
    component polarity is 调单双极性转换声明语句
    port(reset clk in std_logic
    code_in in std_logic_vector(1 downto 0)
    code_out out std_logic_vector(1 downto 0))
    end component
    signal d1d2std_logic_vector(1 downto 0)
    begin
    A hdb3_v port map(resetclkcode_ind1) 端口映射
    B hdb3_b port map (reset clk d1 d2)
    C polarity port map (reset clk d2 code_out)
    end

    译码器模块
    library ieee
    use ieeestd_logic_1164all
    use ieeestd_logic_unsignedall
    use ieeestd_logic_arithall
    entity decoder is
    port ( clk in std_logic
    code_in in std_logic_vector(1 downto 0)
    code_out out std_logic)
    end decoder
    architecture hdb3decoder of decoder is
    signal D1 D0 std_logic_vector(3 downto 0) 两4位移位寄存器
    signal t std_logic_vector(1 downto 0)
    begin
    tprocess(clk code_in)is
    begin
    if(clk'1' and clk'event)then
    D1(2 downto 1) D0(2 downto 1)end if
    end process
    process (clk code_in) is
    begin
    if (clk'1' and clk'event)then
    if ((t11 and D1(3 downto 0)0001 and D0(3 downto 0)0001)or
    (t01 and D1(3 downto 0)0000 and D0(3 downto 0)0001))then
    D1(3)<'0'
    D0(3)<'0'
    D1(0)D0(0)elsif((t11 and D1(3 downto 1)001 and D0(3 downto 1)001)or
    (t01 and D1(3 downto 1)000 and D0(3 downto 1)001))then
    D1(3)<'0'
    D0(3)<'0'
    D1(0)<'0'
    D0(0)<'0' 判断B输入输出0
    else
    D1(3)D0(3)D1(0)D0(0)end if
    end if
    end process
    process(clk)is
    begin
    if (clk'1' and clk'event) then
    if((D1(0)'1' and D0(0)'1')or(D1(0)'0' and D0(0)'1')) then
    code_out<'1' 判断1输出1
    else code_out<'0'
    end if
    end if
    end process
    end
    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 10 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    基于VHDL语言的交通灯设计

     基于VHDL语言的 交通灯设计 专业班级: 应电班 作 者: 指导老师: ...

    5年前   
    1249    0

    基于VHDL的电子琴设计(含完整程序)

     课程设计报告 题 目 专业、学号 授课班号 学生姓名 指导教师 ...

    5年前   
    871    0

    eda课程设计vhdl语言的简易出租车计费器设计

    XX 学 院《EDA技术》课 程 设 计 题 目 简易出租车计费器设计 系 (部) 信息工程系 班 级 电本班 ...

    3年前   
    537    0

    基于ASP技术的网站的设计与开发毕业论文

    基于ASP技术的网站的设计与开发毕业论文 目录 第一章 绪论 1 1.1引言 1 1.2网站的简介 1 1.3网站开发的意义 2 1.4网站的特点及实现目标 2 1.4.1网站的特点 2 1...

    5年前   
    1925    0

    毕业论文:基于ASP技术的网站的设计与开发

    当今世界已经跨入了信息时代,计算机科学与技术正在迅猛发展,尤其是以计算机为核心的信息技术正在改变整个社会的生产方式、生活方式和学习方式。网站的设计与开发是当中的的一项重要工作。在设计过程中涉及大...

    5年前   
    1541    0

    毕业论文:基于plc的电子密码锁毕业论文设计

    本毕业设计介绍了可编程序控制器(PLC)和PLC控制系统的基本知识,包括PLC的定义、特点、分类、技术指标、基本结构、工作原理、硬件知识及PLC控制系统等相关知识。采用松下公司系列的PLC,设计...

    5年前   
    1824    0

    毕业论文(设计)基于安卓的多功能时钟app设计与实现

    目 录摘 要 1ABSTRACT 2第1章 绪论 31.1 开发背景 31.2 研究现状 51.3 本文的主要工作 61.4 论文的组织结构 6第2章 安卓相关介绍 72.1 安卓系统...

    4年前   
    1067    0

    毕业论文的语言

    毕业论文的语言  一、语言的含义和作用          语言是人类社会作为思维工具和交际工具来使用的一种意义结合的符合系统,是作者用来表现思想感情的材料和工具。所以,作为毕业论文形式方面的构...

    10年前   
    587    0

    外国语言学及应用语言学毕业论文(设计)任务书

    河南科技学院新科学院 本科生毕业论文(设计)任务书                                                       年    月    日 题...

    12年前   
    12978    0

    38译码器集成电路版图课程设计报告

    集成电路版图课程设计报告姓名:学号:班级:微电子科学与技术班项目名称:3-8组合译码器版图设计合作者: 目录一、概述 2二、设计目的及意义 2三、设计内容及要求 2四、设计思想及说明 2五、设...

    1年前   
    359    0

    基于单片机的温度控制系统设计毕业论文

    职业学院毕业论文 题目:单片机温度控制系统研制 系 院:工程技术学院 学生姓名: 学 号: 专 业:机电一体化 ...

    5年前   
    5854    0

    基于plc的智能交通灯控制系统设计毕业论文

    PLC可编程序控制器是以微处理器为基础,综合了计算机技术、自动控制技术和通讯技术发展而来的一种新型工业控制装置。它具有结构简单、编程方便、可靠性高等优点,已广泛用于工业过程和位置的自动控制中。

    4年前   
    3093    0

    基于网络的蛋糕销售系统的设计与实现毕业论文

     毕 业 论 文(设 计) 20XX 届 计算机科学与技术 专业 班级 题 目基于网络的蛋糕销售系统的设计与实现 姓...

    5年前   
    2335    0

    基于安卓Android智能家居详细设计毕业论文

    基于Android的智能家居目 录第 1 章 项目概述 11.1 项目背景 11.2 术语定义 2第 2 章 技术方案 32.1 系统描述 32.2 功能描述 32.3 项目功能图 4...

    3年前   
    1120    0

    基于Socket通信的远程控制系统设计-毕业论文

    浙江工业大学之江学院毕业设计(论文)                                                       1 绪 论 1.1 远程控制系统概述 ...

    8年前   
    6922    0

    基于LabVIEW的虚拟频谱仪的设计与实现毕业论文

    本科毕业论文(设计)题 目 基于LabVIEW的虚拟频谱仪的设计与实现 指导老师 职称 学生姓名 学号 ...

    4年前   
    764    0

    基于Android Studio的饼图账单的设计与开发Android毕业论文

    毕 业 论 文 基于Android Studio的饼图账单的设计与开发Design and Development of PieChart Billing Based on Android S...

    4年前   
    783    0

    基于Java的俄罗斯方块的设计与实现毕业论文

    本科生毕业论文(设计)基于Java的俄罗斯方块的设计与实现 姓  名学  号专  业指导教师 2013年X月X日摘 要俄罗斯方块作为一款风靡全球的多样化终端游戏,经...

    3年前   
    1099    1

    基于单片机的数字采控器设计毕业论文

     毕业设计说明书 基于单片机的数字采控器 设计 专业 电气工程及其自动化 学生姓名 班级 学号 指导教师 完成日期 20XX年X月X日 基于单片机...

    5年前   
    1185    0

    基于单片机的数字采控器设计毕业论文

    摘 要:数字采集系统简称DAS(Digital Acquisition System),是指将温度、压力、流量、位移等模拟量进行采集、量化转换成数字量后,以便由计算机进行存储、处理、显示或打印...

    5年前   
    1334    0

    文档贡献者

    z***u

    贡献于2019-04-28

    下载需要 10 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档