基于VHDL语言译码器的设计

合集下载

毕业设计:基于VHDL的循环码编译码器的设计

毕业设计:基于VHDL的循环码编译码器的设计

毕业设计报告(论文)报告(论文)题目:基于VHDL的循环码编译码器的设计作者所在系部:电子工程系作者所在专业:通信工程作者所在班级: B08232作者姓名:作者学号:指导教师姓名:完成时间: 2012年 6月15日北华航天工业学院教务处制本科生毕业设计(论文)原创性及知识产权声明本人郑重声明:所呈交的毕业设计(论文)基于VHDL的循环码编译码器的设计是本人在指导教师的指导下,独立进行研究工作取得的成果。

除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写过的作品或成果。

对本设计(论文)的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

因本毕业设计(论文)引起的法律结果完全由本人承担。

本毕业设计(论文)成果归北华航天工业学院所有。

本人遵循北华航天工业学院有关毕业设计(论文)的相关规定,提交毕业设计(论文)的印刷本和电子版本。

本人同意北华航天工业学院有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;可以采用影印、缩印、数字化或其它复制手段保存论文;在不以营利为目的的前提下,可以公布非涉密毕业设计(论文)的部分或全部内容。

特此声明毕业设计(论文)作者:指导教师:年月日年月日摘要在本次设计中,使用Quartus II 7.0为系统开发平台,硬件描述语言VHDL为主要设计手段,以可编程逻辑器件为实现载体,设计方案中,从循环码编译码的原理出发,论证了BCH码编译码系统的设计方案,并利用VHDL语言加以实现。

所设计的系统可以完成BCH码编码以及两位错码的纠错译码。

依据设计方案和设计平台完成了程序编写和程序调试,通过运行程序及时序波形的仿真有效验证了设计的正确性,初步实现了设计目标。

关键词 VHDL BCH码编码器译码器AbstractThis design takes the Quartus II 7.0 as the system development platform, and takes hardware description language VHDL as the main design means. It also uses programmable logic devices for the realization of the carrier。

基于VHDL语言的汉明码编译码的设计

基于VHDL语言的汉明码编译码的设计

【摘要】本文主要介绍利用ALTERA公司的Quartus II软件实现(7, 4)汉明码的编码和译码的设计,设计共分为三个模块:m序列产生与分组模块、编码模块、译码模块,实现m序列的分组输出。

在QuartusII编辑环境下用VHDL文本输入的输入方法编制程序,经编译正确后进行波形仿真,调试,从而验证设计的正确性。

关键字:汉明码,编码,译码,VHDL【Abstract】This article propose a method for Hamming encoder and Hamming decoder which is based on the VHDL language・ It introduces the theory of Hamming encoder and Hamming decoder and the source program based on VHDL, and the way simulated and checked through Quartus11. Throughout the whole design is totally divided into three modules:the m sequence generated and the Packet Module, the encodingmodule, the decoding Module・Keywords: Hamming, coder, encoder, decoder , VHDL目录第1章问题的提出及方案论证 (3)1. 1问题的提出 (3)1. 2方案论证 (3)1.2.1 Quartus II 和VHDL 简介 (3)122软件设计方案介绍........ .. (6)第2章设讣方案的实施 (8)2. 1 m序列模块 (8)2.1.1 m序列简介 (8)2.1.2 m序列模块设计流程 (9)2.2 (7,4)汉明码知识介绍 (10)2. 2. 1基本概念 (10)2. 2. 2监督矩阵 (11)2. 2. 3生成矩阵 (12)2.2.4伴随式(校正子)S (12)2. 3汉明码编码模块 (13)2.3.1汉明码编码原理 (13)2.3.2汉明码编码程序设计•流程 (14)2.4汉明码译码模块 (15)2. 4. 1汉明码译码原理 (15)242汉明码译码程序设计流程 (16)第3章软件调试及遇到的问题 (19)3.1软件调试仿貞•波形图 (19)3.2软件调试过程中遇到的问题 (20)第4章总结体会 (22)附录: (23)参考文献 (30)第1章问题的提出及方案论证1.1问题的提出在上学期的通信原理课程中,我们学习了线性码的基木理论知识。

基于VHDL语言的汉明码编码器和译码器的设计

基于VHDL语言的汉明码编码器和译码器的设计

和译码 原理 的基 础上 , 出了基于 VHD 给 L实现的源程序 , 并通过 Qu r sU软件 进行仿 真验证 。 at u
关键词 : VHD 编 码 ; 码 L ̄ 译 中图 分 类 号 : 9 1 TN 1 文献标识码 : A 文 章 编 号 :629 3 (06 0 —0 50 1 7 —5 6 2 0 )40 0 —3
t es u c r g a h o r ep o r mmeb s d o a e nVHDL,a d t ewa i lt d a d c e k d t r u h Qu ru Ⅱ. n h y smu ae n h c e h o g a t s
Ke r : y wo ds VH DL;e c d r e o r n 对特 定 目标 芯 片 的适 配 编译 , 辑 映射 逻
和编程下 载 等 工作 。以 自顶 向下 的设 计 方 法 , 使
C—E l 一 …c] c一 c 2 o 一 一 g +c g +… +cg l o 卜2 l o 卜l
() 1
硬 件设计 软 件化 , 脱 了传统 手 工 设 计 的众 多缺 摆
Ab t a t Th pa e o s s a ne me ho o a mi nc de n nmi g d c de sr c : e p rpr po e w t d f r H n ng e o ra d Ha n e o r whih i c s
点 。随着 E DA 技 术 的深 入 发 展 于 硬 件 描 述 基 语 言 的方 法将 有 取 代 传统 手 工 设 计 方法 的趋 势 。
其 中 , { , ) i , , , 一1 ∈ 0 1 ,一0 1 … 五 。将 上 式 写 成

基于VHDL的循环码编译码器的设计《毕业设计周志》

基于VHDL的循环码编译码器的设计《毕业设计周志》

附件6毕业设计(论文)工作周志设计(论文)题目:基于VHDL的循环码编译码器的设计学生姓名:李光超系别:电子工程系专业:通信工程指导教师:张增良指导教师职称:副教授北华航天工业学院教务处制说明1.“毕业设计(论文)工作周志”是学生毕业设计工作的完整记录,也是对教师指导毕业设计工作的记载。

是考核学生和教师毕业设计工作的基本依据之一。

2.周志中的“毕业设计任务进展情况记录”由学生本人填写。

学生应对在毕业设计过程中取得的成果、遇到的问题、查阅的资料、工作进展等情况认真填写。

除记载工作过程外,也可对学生撰写论文提供基础资料。

3.“指导教师意见”由指导教师根据学生情况填写,应对学生前一段工作提出意见,并提出进一步工作目标,督促学生按计划完成规定的任务。

4.“毕业设计(论文)工作周志”在毕业设计期间由学生保管,每周在与指导老师见面前填写好并携带到老师处交指导老师审阅并填写意见。

5.在校外进行毕业设计的学生,每周填写好周志后由校外指导老师填写意见并签字,同时将电子稿(电子稿周志在校园网下载)通过电子邮件以附件的形式发给校内指导教师。

校内指导教师写出指导意见后,通过电子邮件将该文件(含学生填写部分)以附件的形式发还给学生,学生要将该附件下载存储成一个文件,每周单独存储。

6.学生在答辩前,按指定时间将“毕业设计(论文)工作周志”和毕业论文等资料交答辩委员会。

校外进行毕业设计的学生除上交周志外,还要将和校内指导教师的通信文件提交一份拷贝。

7.毕业设计工作完成后,各系(教研室)应将“毕业设计(论文)工作周志”作为毕业设计资料之一予以整理归档。

(该页印制在封二上)。

基于VHDL的编码器和译码器的设计

基于VHDL的编码器和译码器的设计

目录1引言 (6)1.1 设计的目的 (6)1.2 设计的基本内容 (6)2 EDA、VHDL简介 (7)2.1 EDA技术 (7)2.1.1 EDA技术的概念 (7)2.1.2 EDA技术的特点 (7)2.2 硬件描述语言——VHDL (7)2.2.1 VHDL的简介 (7)2.2.2 VHDL语言的特点 (7)2.2.3 VHDL的设计流程 (8)3 设计过程 (9)3.1编码器 (9)3.1.1 8线-3线优先编码器的工作原理 (9)3.1.2 8线-3线优先编码器的设计 (10)3.2译码器 (11)3.2.1译码器的工作原理 (11)3.2.2 3线-8线译码器的设计 (13)3.2.3 2线-4线译码器的设计 ...................... 1错误!未定义书签。

4 系统仿真 (15)4.1 8线-3线优先编码器仿真及分析 (15)4.2 3线-8线译码器仿真及分析 (16)4.3 2线-4线译码器仿真及分析 (16)结束语 (18)致谢 (19)参考文献 (20)附录 (21)1引言随着社会的发展,科学技术也在不断的进步。

计算机从先前的采用半导体技术实现的计算器到现在广泛应用的采用高集成度芯片实现的多功能计算器。

计算机电路是计算机的重要组成部分,了解计算机电路的知识是促进计算机的发展的先决条件。

同时,由于人们在实践中遇到的逻辑问题层出不穷,因而解决这些逻辑问题而设计的逻辑电路也不胜枚举。

然而我们发现,其中有些逻辑电路经常、大量地出现在各种数字系统当中。

其中编码器和译码器是计算机电路中的基本器件,对它们的了解可以为以后的进一步深化研究打下一个良好的基础。

在硬件电子电路设计领域中,电子设计自动化(EDA)工具已成为主要的设计手段,而VHDL语言则是EDA的关键技术之一。

VHDL语言具有强大的语言结构,可用明确的代码描述复杂的控制逻辑设计,并且具有多层次的设计描述功能,支持设计库和可重复使用的元件的生成。

译码器的VHDL设计

译码器的VHDL设计

3-8译码器的V H D L设计(共4页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--3-8译码器的VHDL设计1.实体框图2.程序设计正确的程序LIBRARY IEEE;USE DECODER38A ISPORT(A2,A1,A0,S1,S2,S3:IN STD_LOGIC;Y:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END ENTITY DECODER38A;ARCHITECTURE ONE OF DECODER38A ISSIGNAL S: STD_LOGIC_VECTOR(5 DOWNTO 0);BEGINS<=A2&A1&A0&S1&S2&S3;WITH S SELECTY<="" WHEN "000100","" WHEN "001100","" WHEN "010100","" WHEN "011100","" WHEN "100100","" WHEN "101100","" WHEN "110100","01111111" WHEN "111100","" WHEN OTHERS;END ARCHITECTURE ONE;3.仿真波形图4.仿真波形分析当S1 S2 S3=100时,只有当A2 A1 A0=111时,Y[7]才输出低电平,否则为高电平,当A2 A1 A0=110时,Y[6]才输出低电平,否则为高电平,当A2 A1A0=101时,Y[5]才输出低电平,否则为高电平,Y[4]到Y[0]同理。

VHDL的编码器和译码器的设计_(1)

VHDL的编码器和译码器的设计_(1)

长沙理工大学《计算机组成原理》课程设计报告蒋浩钧学 院 城南学院 专 业 计算机科学与技术 班 级 计算机 指导教师 蔡 烁 学生姓名 学 号 课程成绩 完成日期2012年7月1日课程设计任务书城南学院计算机科学与技术专业课程名称计算机组成原理课程设计时间2011~2012学年第一学期19~20周学生姓名指导老师蔡烁题目基于VHDL的编码器和译码器的设计主要内容:本课程设计要求利用硬件描述语言VHDL的设计思想,设计计算机电路中编码器和译码器的各个模块,系统设计要求采用自顶向下的设计方法,系统采用VHDL语言编程实现,并对各模块进行仿真验证和分析。

要求:(1)通过对相应文献的收集、分析以及总结,给出相应课题的背景、意义及现状研究分析。

(2)通过课题设计,掌握计算机组成原理的分析方法和设计方法。

(3)学生按要求编写课程设计报告书,能正确阐述设计和实验结果。

(4)学生应抱着严谨认真的态度积极投入到课程设计过程中,认真查阅相应文献以及实现,给出个人分析、设计以及实现。

应当提交的文件:(1)课程设计报告。

(2)课程设计附件(主要是源程序)。

课程设计成绩评定学院城南学院专业计算机科学与技术班级学号学生姓名指导教师蔡烁课程成绩完成日期2012年7月1日指导教师对学生在课程设计中的评价评分项目优良中及格不及格课程设计中的创造性成果学生掌握课程内容的程度课程设计完成情况课程设计动手能力文字表达学习态度规范要求课程设计论文的质量指导教师对课程设计的评定意见综合成绩指导教师签字年月日基于VHDL的编码器和译码器的设计学生姓名:指导老师:蔡烁摘要:编码器与译码器是计算机电路中基本的器件,本课程设计采用EDA技术设计编码和译码器。

编码器由八-三优先编码器作为实例代表,而译码器则包含三-八译码器和二-四译码器两个实例模块组成。

课程设计采用硬件描述语言VHDL把电路按模块化方式进行设计,然后进行编程、时序仿真和分析等。

课程设计结构简单,使用方便,具有一定的应用价值。

基于VHDL语言的数据比较器和译码器的设计PPT学习教案

基于VHDL语言的数据比较器和译码器的设计PPT学习教案
➢ VHDL语言具有良好的可读性,既可以被计算机接受,也 容易被人们所理解;
➢ VHDL语言可以与工艺无关编程; ➢ VHDL语言已做为一种IEEE的工业标准,便于使用、交流
和推广。
VHDL语言的不足之处
➢ 设计的最终实现取决于针对目标器件的编程器,工具的不同 会导致综合质量不一样。
第4页/共15页
WHEN OTHERS=>NULL;
END CASE;
END IF;
END IF;
DOUT<=TMP;
END PROCESS;
第6页/共15页
END ARCHITECTURE ART;
quartus ‖软件的基本使用方法
➢ 新建工程:FILE→New Project Wizard(实体名要和工程名一致) ➢ 新建文件:在当前工程下File →New 选择VHDL File,然后将程序输入,输入完成之后保存文
件FILE →Save AS 输入与实体名一致的文件名 ➢ 编译:首先要分配器件Assignments →Device 在Device family下选择CycloneⅢ系列的芯片;然
后双击左边小窗口的task栏下的Compile Design或者是点击快捷栏上的红色三角型按钮,等待 编译报告,如果有编译不成功有错误则需要检查并修改程序,然后保存并再次编译直至编译 无误 ➢ 仿真:分为时序和功能仿真;先功能仿真Processing →Simulator Tool →Simulation mode: functional →Generate Functional Simulation Netlist成功之后,File →New →Vector Waveform File 然后在空白处右击Insert →Insert Node or Bus将所用的管脚依次添加进去,再给输入管脚赋值, 然后保存(注意:文件名也要和实体名一致) Processing →Start Simulation,观察仿真报告及仿真结果。

基于VHDL语言的汉明码编译器设计

基于VHDL语言的汉明码编译器设计

基于VHDL 语言的(7,4)汉明码编译码的设计1、设计目的熟悉掌握汉明码的重要公式和基本概念。

进一步掌握(7,4)汉明码的编码和译码的原理和设计步骤。

学会应用流程图来表示设计实体的具体运行步骤。

掌握运用VHDL 语言对(7,4)汉明码的编译码的设计。

2、设计要求通过应用硬件描述语言VHDL ,编写出(7,4)汉明码的编码和译码的程序,并对编译码程序进行编译和仿真分析,计算出信号误码率和汉明码的编码效率。

通过运用相关工具画出(7,4)汉明码的编译码流程图和仿真图,并对相关结果进行分析,得出结论。

3、设计步骤3.1 (7,4)汉明码的编码原理和程序设计汉明码是在原编码的基础上附加一部分代码,使其满足纠错码的条件。

它属于线性分组码,由于汉明码的抗干扰能力较强,至今仍是应用比较广泛的一类码。

在(n ,k)汉明码中,(n-k)个附加的监督码元是由信息码元的线性运算产生的。

码长为n,信息码元长度为k ,2k 个码组构成n 维线性空间中的一个k 维子空间,编码的实质就是要在n 维空间中,找出一组长为n 的k 个线性无关的矢量,使得每个码组a 都可以表示为k 个矢量的线性组合,其中,a i ∈{0,1},i=0,1,… ,k-1。

由此,[an-1 an-2 … a0]是带编码信息的信息组,G 是一个k*n 阶矩阵,G 称为(n,k)汉明码的生成矩阵。

当G 确定以后,编码的问题也就解决了。

根据监督码元是有信息码元的线性运算产生的关系可知,监督码(a0,a1,a2)满足以下关系式:34601356124562a a a a s a a a a s a a a a s ⊕⊕⊕=⊕⊕⊕=⊕⊕⊕= …… (3.1.1) 即可算出三位监督位,再与信息位结合,可得到(7,4)汉明码。

然后根据(7,4)汉明码的编码编码原理,画出程序设计的流程图:图3.1.1 编码流程图然后根据流程图进行编写程序。

首先,输入信息码a6a5a4a3,即使用语句:port(a:in std_logic_vector(6 downto 3)就可以得到监督位与信息码之间的对应关系,使用异或运算,即:a(2)<=a(6) xor a(5) xor a(4); ……(3.1.2)a(1)<=a(6) xor a(5) xor a(3); ……(3.1.3)a(0)<=a(6) xor a(4) xor a(3); ……(3.1.4) 最后,将算好的监督位与原来输入的信息码一起输出,这样,编码程序就完成。

基于VHDL汉明码编译码器的设计与实现毕业论文

基于VHDL汉明码编译码器的设计与实现毕业论文

基于VHDL汉明码编译码器的设计与实现目录摘要 1第一章绪论 31.1研究背景与选题意义 31.2研究目标与主要工作 31.3论文的内容安排 4第二章汉明码及汉明码编译原理 42.1 纠错编码的基本原理 42.1.1 分组码基本原理 42.1.2分组码的码重和码距 52.2 汉明码编译原理 8第三章 VHDL语言与集成环境 103.1 EDA概念 103.2 Max+pluxII简介 113.3 VHDL语言 123.3.1基本介绍 123.3.2 VHDL语言设计的特点 123.3.3 VHDL语言优势 13第四章汉明码编译系统模块设计与实现 14 4.1 汉明码编译原理设计 144.2 系统模块设计 144.2.1 16位比特序列产生与分组模块 144.2.2 编码模块 164.3.3 加错模块 164.3.4 译码与分组模块 17第五章系统仿真、调试和结果分析 185.1 16位序列产生与分组模块仿真 185.1.1仿真图 185.1.2 结果分析 195.2 编码模块仿真 195.2.1仿真图 195.2.2 结果分析 195.3 加错模块 195.3.1仿真图 195.3.2 结果分析 205.4 译码与分组串行模块仿真 205.4.2 结果分析 205.5 系统仿真 205.5.1 顶层图 205.5.3 结果分析 25第六章总结 25参考文献 26附录程序: 28摘要在通信系统中,要提高信息传输的有效性,我们将信源的输出经过信源编码用较少的符号来表达信源消息,这些符号的冗余度很小,效率很高,但对噪声干扰的抵抗能力很弱。

为了提高信息传输的准确性,我们引进了差错控制技术。

而该技术采用可靠的,有效的信道编码方法来实现的。

纠错码是一种差错控制技术,目前已广泛应用于各种通信系统和计算机系统中,纠错编码主要用于数字系统的差错控制,对于保证通信、存储、媒体播放和信息转移等数字传递过程的质量有着重要意义,是通信、信息类科知识结构中不可缺少的一部分。

3-8译码器VHDL设计实验 实验报告

3-8译码器VHDL设计实验 实验报告

3-8译码器VHDL设计实验实验报告本实验以3-8译码器的设计为主要内容,通过编码器和译码器的学习,深入了解数字电路中常用的译码器,并掌握VHDL语言的应用技巧。

主要技术路线为:定义输入和输出端口->生成选择结构->设计三个MUX组合成8:1 MUX->仿真波形验证。

本实验虽然简单,但对数码管、数码显示器等电路的实现有很大的帮助作用。

一、实验目的1.了解译码器的作用及其应用2.掌握VHDL语言的的原理二、实验器材1.电脑2.EDA软件三、实验原理及过程1.定义输入和输出端口在VHDL设计中,首先要定义输入和输出端口。

根据输入和输出端口的设计,并将其定义到ENTITY中。

2.生成选择结构基于译码器的设计特点,输入是一个二进制数,输出是一个信号。

故可以采用CASE结构生成选择结构。

同时,由于译码器需要将一个二进制数译到一个信号,还需要一个PROCESS处理,将选择的结果赋值到输出信号上。

3.设计三个MUX组合成8:1 MUX通常情况下,8:1 MUX可以用一个MUX8191,但本实验旨在学习三个MUX组合成一个8:1 MUX的方法。

设计时要考虑如下事项:1)MUX中DP、EN、INV等控制信号的设置,由于多个控制信号互相独立,因此采用分别激活的方式;2)由于MUX的输出是显式定义的信号,不能使用临时变量。

因此,采用以下方法生成MUX输出处理:SIGNAL MUX_out : STD_LOGIC := '0';4.仿真波形验证经过以上步骤的设计,就可以进行仿真波形的验证。

经实验验证,设计正确。

其输出信号可以由输入端口激励生成。

四、实验内容1.阅读数据手册及规范表,画出流程图。

2.代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY decoder_3X8 ISPORT (--Define Input & Output SIGNALB : IN STD_LOGIC_VECTOR(2 DOWNTO 0);Y : OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END decoder_3X8;ARCHITECTURE structural OF decoder_3X8 ISCOMPONENT mux4x1 ISPORT (D0 : IN STD_LOGIC;D1 : IN STD_LOGIC;D2 : IN STD_LOGIC;D3 : IN STD_LOGIC;S : IN STD_LOGIC_VECTOR(1 DOWNTO 0);Y : OUT STD_LOGIC);END COMPONENT;COMPONENT mux2x1 ISPORT (D0 : IN STD_LOGIC;D1 : IN STD_LOGIC;S : IN STD_LOGIC;Y : OUT STD_LOGIC);END COMPONENT;SIGNAL out1, out2, out3, out4, out5, out6, out7, out8 : STD_LOGIC;BEGINM1: mux2x1 PORT MAP (X => B(0), Y => out1, S => B(1));M2: mux4x1 PORT MAP (X0 => B(2), X1 => out1, X2 => ‘0’, X3 => ‘0’, S => B(1 DOWNTO 0), Y => out2);M3: mux4x1 PORT MAP (X0 => B(2), X1 => ‘0’, X2 => out1, X3 => ‘0’, S => B(1 DOWNTO 0), Y => out3);M4: mux4x1 PORT MAP (X0 => B(2), X1 => ‘0’, X2 => ‘0’, X3 => out1, S => B(1 DOWNTO 0), Y => out4);M5: mux2x1 PORT MAP (X => out2, Y => out5, S => B(2));M6: mux2x1 PORT MAP (X => out3, Y => out6, S => B(2));M7: mux2x1 PORT MAP (X => out4, Y => out7, S => B(2));M8: mux4x1 PORT MAP (X0 => out5, X1 => out6, X2 => out7, X3 => ‘0′, S => B(1 DOWNTO 0), Y => out8);Y <= out8;END structural;ARCHITECTURE rtl OF mux4x1 ISBEGINY <= D0 WHEN S = ‘00’ ELSED1 WHEN S = ‘01’ ELSED2 WHEN S = ‘10’ ELSED3 WHEN S = ‘11’ ELSE’0’;END ARCHITECTURE rtl;3.仿真波形验证:进入仿真 --> Add ----> Signals ----> 选择需要记录的信号 ----> Run ----> 波形记录。

EDA课程设计_基于VHDL的HDB3编译码器的设计(1)

EDA课程设计_基于VHDL的HDB3编译码器的设计(1)

EDA课程设计---基于VHDL的HDB3编译码器的设计课题:基于VHDL的HDB3编译码器的设计指导老师:姓名:学号:目录1 绪论 (1)1.1可编程逻辑器件概述 (1)1.1.1 可编程逻辑器件的发展历程 (1)1.1.2 可编程逻辑器件的特点 (2)1.1.3 可编程逻辑器件的一般设计流程 (4)1.1.4 现代数字系统的设计方法 (6)1.2 VHDL语言概述 (7)1.2.1 VHDL语言介绍 (7)1.2.2语言特性、功能与特点 (7)1.2.3 TOP-DOWN的设计思想简介 (8)2 HDB3码介绍 (10)2.1 数字基带信号 (10)2.2 NRZ,AMI,HDB3码之间的对应关系 (10)2.3 HDB3码的编/译码规则 (11)3 用VHDL语言设计HDB3编码器 (13)3.1 HDB3编码器实现的基本原理 (13)3.2 HDB3编码器的设计过程 (13)3.3 HDB3编码器仿真波形 (22)4 用VHDL语言设计HDB3译码器 (23)4.1 HDB3解码器实现的基本原理 (23)4.2 HDB3解码器仿真波形 (24)5. 单/双极性变换的硬件实现 (25)5.1单/双极性变换的硬件实现 (25)6 总结 (27)6.1 系统设计思路小结 (27)6.2 课程设计存在的问题及不足 (28)参考文献 (28)1 绪论1.1可编程逻辑器件概述1.1.1 可编程逻辑器件的发展历程从20世纪60年代开始,数字集成电路经历了小规模集成电路(SSI-SmallScale Interation,几十到几百门),中规模集成电路(MSI-Medium ScaleIntegration,几百到几千门),大规模集成电路(LSI-Large Scale Integration,几千到几万门),超大规模集成电路(VLSI-Very Large Scale Integration,几百万门以上)等几个发展阶段。

基于VHDL语言38译码器的设计

基于VHDL语言38译码器的设计

《EDA技术》课程实验报告学生姓名:黄红玉所在班级:电信100227指导教师:高金定老师记分及评价:一、实验名称实验4:3-8译码器的设计二、任务及要求【基本部分】4分1、在QuartusII平台上,采用文本输入设计方法,通过编写VHDL语言程序,完成3-8译码器的设计并进行时序仿真。

2、设计完成后生成一个元件,以供更高层次的设计调用。

3、实验箱上选择恰当的模式进行验证,目标芯片为ACEX1K系列EP1K30TC144-3。

【发挥部分】1分修改设计,完成3-6译码器的设计,并进行时序仿真。

三、实验程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity decoder isport(en:in std_logic;a,b,c:in std_logic;y:out bit_vector(7 downto 0));end entity decoder;architecture art4 of decoder issignal sr:std_logic_vector(2 downto 0);beginsr<=c&b&a;process(sr)isbegincase sr iswhen"000"=>y<="00000001";when"001"=>y<="00000010";when"010"=>y<="00000100";when"011"=>y<="00001000";when"100"=>y<="00010000";when"101"=>y<="00100000";when"110"=>y<="01000000";when"111"=>y<="10000000";when others=>y<="00000000";end case;end process;end architecture art4;enABCY[7..0]en138inst四、仿真及结果分析用三位拨码开关代表译码器的输入端a、b、c,将之分别与EP1K30TC144-3芯片的相应管脚相连;用LED灯来表示译码器的输出,将D0...D7对应的管脚分别与8只LED灯相连。

EDA用VHDL语言设计一个2-4译码器

EDA用VHDL语言设计一个2-4译码器

LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY decoder2_to_4_t ISPORT(sel:IN STD_LOGIC_VECTOR(1 DOWNTO 0);sel00,sel01,sel10,sel11:OUT STD_LOGIC);END ENTITY decoder2_to_4_t;ARCHITECTURE dec OF decoder2_to_4_t ISBEGINPROCESS(sel)BEGINCASE sel ISWHEN "00"=>sel00<='1';sel01<='0';sel10<='0';sel11<='0'; WHEN "01"=>sel00<='0';sel01<='1';sel10<='0';sel11<='0'; WHEN "10"=>sel00<='0';sel01<='0';sel10<='1';sel11<='0'; WHEN "11"=>sel00<='0';sel01<='0';sel10<='0';sel11<='1'; WHEN OTHERS=>NULL;END CASE;END PROCESS;END ARCHITECTURE dec;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DECL7S ISPORT (A :IN STD_LOGIC_VECTOR (3 DOWNTO 0);LED7S:OUT STD_LOGIC_VECTOR (7 DOWNTO 0) );END;ARCHITECTURE one OF DECL7S ISBEGINPROCESS (A)BEGINCASE A ISWHEN "0000"=> LED7S<="00111111";WHEN "0001"=> LED7S<="00000110";WHEN "0010"=> LED7S<="01011011";WHEN "0011"=> LED7S<="01001111";WHEN "0100"=> LED7S<="01100110";WHEN "0101"=> LED7S<="01101101";WHEN "0110"=> LED7S<="01111101";WHEN "0111"=> LED7S<="00000111";WHEN "1000"=> LED7S<="01111111";WHEN "1001"=> LED7S<="01101111";WHEN "1010"=> LED7S<="01110111";WHEN "1011"=> LED7S<="01111100";WHEN "1100"=> LED7S<="00111001";WHEN "1101"=> LED7S<="01011110";WHEN "1110"=> LED7S<="01111001"; WHEN "1111"=> LED7S<="01110001"; WHEN OTHERS=> NULL;END CASE;END PROCESS;END;。

基于VHDL的二-十进制的译码器

基于VHDL的二-十进制的译码器

.西华大学实验报告(计算机类)开课学院及实验室: 机械学院实验室 实验时间 : 年 月 日一、实验目的学习译码器的功能与定义,学习VHDL 。

二、内容与实验原理内容 :编写二–十进制译码器的VHDL 代码并编译仿真。

实验原理:译码是编码的逆过程,它的功能是将特定含义的二进制码进行辨别,并转换成控制信号,具有译码功能的逻辑电路成为译码器。

译码器可分为两种类型,一种是将一系列代码转换成与之一一对应得有效信号。

这种译码器可以称为唯一地址译码器,它常用于计算机中对存储器单元地址的译码,即将每一个地址代码换成一个有效信号,从而选中对应的单元。

另一种是将一种代码转换成另一种代码,所以也称为代码变换器。

三、使用环境计算机、Modelsim 应用软件。

四、核心代码及调试过程LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY priority_decoder ISPORT( cs: IN STD_LOGIC;input: IN STD_LOGIC_VECTOR(8 DOWNTO 0);y: OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END priority_decoder;ARCHITECTURE behave OF priority_decoder ISBEGINPROCESS(input)BEGINIF(input(8) = '1' AND cs = '1') THENy <= "1001";ELSIF(input(7) = '1' AND cs = '1') THENy <= "1000";ELSIF(input(6) = '1' AND cs = '1') THENy <= "0111";ELSIF(input(5) = '1' AND cs = '1') THENy <= "0110";ELSIF(input(4) = '1' AND cs = '1') THENy <= "0101";ELSIF(input(3) = '1' AND cs = '1') THENy <= "0100";ELSIF(input(2) = '1' AND cs = '1') THENy <= "0011";ELSIF(input(1) = '1' AND cs = '1') THENy <= "0010";ELSIF(input(0) = '1' AND cs = '1') THENy <= "0001";ELSEY <= "0000";END IF;END PROCESS;END behave;1、按照真值表编写二–十进制译码器VHDL代码。

基于VHDL的HDB3编译码器的设计

基于VHDL的HDB3编译码器的设计

基于VHDL的HDB3编译码器的设计专业:姓名:班级:学号:2011-12目录一、设计课题: (2)二、设计任务及要求: (2)三、使用设备 (2)四、设计时间安排: (2)五、基本原理 (2)六、HDB3码的编、译码器的建模与实现 (3)6.1 HDB3码的编码规则 (3)6.2 基于VHDL的编码器的建模及实现 (3)6.2.1 插‘V’模块的实现 (4)6.2.2插‘B’模块的实现 (5)6.2.3 编码中单/双极性转换的实现 (8)6.2.4 单/双极性转换的硬件实现 (9)6.2.5 HDB3码的编码器仿真波形 (10)6.3 基于VHDL的译码器的建模及实现 (11)6.3.1 V码检测模块 (11)6.3.2 扣V扣B模块 (12)6.3.3 HDB3码的译码器仿真波形 (13)七、参考文献 (13)八、附录 (13)8.1 附录一 HDB3码编码器程序 (13)8.2 附录二 HDB3码译码器程序 (16)一、设计课题:基于VHDL的HDB3编译码器的设计二、设计任务及要求:1.用VHDL进行HDB3编译码器的建模与设计,完成程序设计、波形仿真与下载测试。

2. 正确实现HDB3编译码(双极性电平可用二进制代码表示)。

3. 码元速率可调。

(选做)三、使用设备计算机、EDA软件、EDA实验箱。

四、设计时间安排:分析课题,完成编译码器的VHDL建模(16周周四周五);编码器的VHDL编程与仿真(17周周一至周三)译码器的VHDL编程与仿真(17周周四周五,18周周一)整体下载及测试(18周周二)。

设计总结及报告(18周周三)。

五、基本原理1、HDB3码是数字基带传输中常用的码型,具有无直流分量,低频成分少,在有长连’0’串时也能提取同步信号,缺点是编译码电路较复杂。

2、利用VHDL进行HDB3编译码器的建模与设计,并通过CPLD/FPGA来实现,能较好简化电路设计。

六、HDB3码的编、译码器的建模与实现6.1 HDB3码的编码规则HDB3码是AMI码的改进型,称为三阶高密度双极性码,它克服了AMI码的长连0串现象。

_基于VHDL语言38译码器

_基于VHDL语言38译码器

3-8译码器的设计1 设计目的与要求随着社会的进一步发展,我们的生活各个地方都需要计算机的参与,有了计算机,我们的生活有了很大的便利,很多事情都不需要我们人为的参与了,只需要通过计算机就可以实现自动控制。

由此,计算机对我们的社会对我们每个人都是很重要的。

所以我们要了解计算机得组成,内部各种硬件,只有了解了计算机基本器件已经相应的软件,才能促进社会的发展。

编码器和译码器的设计是计算机的一些很基础的知识,通过本次对于编码器和译码器的设计,可以让我知道究竟这种设计是如何实现的,这种设计对我们的生活有什么帮助,这种设计可以用到我们生活的哪些方面,对我们的各种生活有什么重大的意义。

1.1 设计的目的本次设计的目的是通过简单的译码器的设计掌握基本的计算机的一些有关的知识,通过查资料已经自己的动手设计去掌握EDA技术的基本原理已经设计方法,并掌握VHDL硬件描述语言的设计方法和思想。

以计算机组成原理为指导,通过将理论知识,各种原理方法与实际结合起来,切实的亲手设计,才能掌握这些非常有用的知识。

通过对编码器和译码器的设计,巩固和综合运用所学知识,提高IC设计能力,提高分析、解决计算机技术实际问题的独立工作能力。

也能通过这种自主设计,增强自己的动手能力,将理论知识切实应用的能力,这对我们将来的发展是很有帮助的。

1.2 设计要求根据计算机组成原理中组合逻辑电路设计的原理,利用VHDL设计计算机电路中译码器的各个模块,并使用EDA 工具对各模块进行仿真验证和分析。

译码器由三-八译码器为实例代表。

关键词:输入、输出、译码2 VHDL的简单介绍2.1 VHDL的简介VHDL语言是一种用于电路设计的高级语言。

它在80年代的后期出现。

最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言。

VHDL翻译成中文就是超高速集成电路硬件描述语言,主要是应用在数字电路的设计中。

目前,它在我过的应用多数是用在FPGA/CPLD/EPLD的设计中。

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

基于V H D L语言译码
器的设计
公司内部档案编码:[OPPTR-OPPT28-OPPTL98-OPPNN08]
《EDA技术》课程实验报告
学生姓名:黄红玉
所在班级:电信100227
指导教师:高金定老师
记分及评价:
一、实验名称
实验4:3-8译码器的设计
二、任务及要求
【基本部分】4分
1、在QuartusII平台上,采用文本输入设计方法,通过编写VHDL语
言程序,完成3-8译码器的设计并进行时序仿真。

2、设计完成后生成一个元件,以供更高层次的设计调用。

3、实验箱上选择恰当的模式进行验证,目标芯片为ACEX1K系列
EP1K30TC144-3。

【发挥部分】1分
修改设计,完成3-6译码器的设计,并进行时序仿真。

三、实验程序
library ieee;
use use entity decoder is
port(en:in std_logic;
a,b,c:in std_logic;
y:out bit_vector(7 downto 0));
end entity decoder;
architecture art4 of decoder is
signal sr:std_logic_vector(2 downto 0); begin
sr<=c&b&a;
process(sr)is
begin
case sr is
when"000"=>y<="00000001";
when"001"=>y<="00000010";
when"010"=>y<="00000100";
when"011"=>y<="00001000";
when"100"=>y<="00010000";
when"101"=>y<="00100000";
when"110"=>y<="01000000";
when"111"=>y<="";
when others=>y<="00000000";
end case;
end process;
end architecture art4;
en
A
B
C
Y[7..0]
en138
inst
四、仿真及结果分析
用三位拨码开关代表译码器的输入端a、b、c,将之分别与
EP1K30TC144-3芯片的相应管脚相连;用LED灯来表示译码器的输出,将D0...D7对应的管脚分别与8只LED灯相连。

从图中可见,首先判断使能端口en状态,当满足高电平时,判断三个输入端口A、B、C的状态;来决定八个输出的状态。

输入en和A、B、C需要独立可变的输入激励,所以最好选择开关,独立可变,易于控制;译码器输出为8位数据,使用独立显示各个数据位的设备较好,故选用8个LED知识灯来表示。

具体引脚分配见下表。

五、硬件验证
1、选择模式:模式6
2、引脚锁定情况表:
六、小结
通过这次实验,让我更深刻的了解了QuartusII这个软件的使用,也学会了怎么用VHDL语言来实现设计。

实验期间也遇到了很多问题,在同学和老师的帮助下解决了困难,总之,通过这次实验,让我受益匪浅。

相关文档
最新文档