EDA课程设计——移位寄存器的设计与实现_第1页
EDA课程设计——移位寄存器的设计与实现_第2页
EDA课程设计——移位寄存器的设计与实现_第3页
EDA课程设计——移位寄存器的设计与实现_第4页
EDA课程设计——移位寄存器的设计与实现_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、河南科技大学课 程 设 计 说 明 书课程名称 EDA技术与应用 题 目 移位寄存器的设计与实现 学 院 班 级 学生姓名 指导教师 日 期 EDA技术课程设计任务书班级: 姓名: 学号: 设计题目: 移位寄存器的设计与实现 一、设计目的进一步巩固理论知识,培养所学理论知识在实际中的应用能力;掌握EDA设计的一般方法;熟悉一种EDA软件,掌握一般EDA系统的调试方法;利用EDA软件设计一个电子技术综合问题,培养VHDL编程、书写技术报告的能力。为以后进行工程实际问题的研究打下设计基础。二、设计任务根据计算机组成原理中移位寄存器的相关知识,利用VHDL语言设计了三种不同的寄存器:双向移位寄存器、

2、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。三、设计要求(1)通过对相应文献的收集、分析以及总结,给出相应课题的背景、意义及现状研究分析。(2)通过课题设计,掌握计算机组成原理的分析方法和设计方法。(3)学习按要求编写课程设计报告书,能正确阐述设计和实验结果。(4)学生应抱着严谨认真的态度积极投入到课程设计过程中,认真查阅相应文献以及实现,给出个人分析、设计以及实现。四、设计时间安排查找相关资料(1天)、设计并绘制系统原理图(2天)、编写VHDL程序(2天)、调试(2天)、编写设计报告(2天)和答辩(1天)。五、主要参考文献1 江国强编著. EDA技术与实用(第三版). 北

3、京:电子工业出版社,2011.2 曹昕燕,周凤臣.EDA技术实验与课程设计.北京:清华大学出版社,2006.53 阎石主编.数字电子技术基础.北京:高等教育出版社,2003.4 Mark Zwolinski. Digital System Design with VHDL.北京:电子工业出版社,20085 Alan B. Marcovitz Introduction to logic Design.北京:电子工业出版社,2003指导教师签字: 年 月 日农业工程学院课程设计说明书移位寄存器的设计与实现摘 要系统使用EDA技术设计了具有移位功能的寄存器,采用硬件描述语言VHDL进行设计,然后进行

4、编程,时序仿真等。软件基于VHDL语言实现了本设计的控制功能。本设计根据移位寄存器的功能设计了三种不同的寄存器:双向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。设计过程中,运用了软件Quartus进行编程,仿真,整个设计过程简单,使用方便。功能齐全,精度高,具有一定的开发价值。通过设计,对EDA有了更深层的了解,相对于课堂上所学的知识来说,增加了一定的实践经验,在编译时,常会出现错误不能通过编译,经过一点点的改正错误,最终终于通过编译,并得到正确的仿真结果,同时对EDA的实现软件Quartus的使用方法也能够更加熟练的掌握。关键词: EDA,VHDL,移位寄存器

5、目 录第一章 绪论1一、课程设计的目的1二、课程设计的内容1三、EDA简介2四、VHDL21、VHDL的简介22、VHDL语言的特点33、VHDL的设计流程3第二章 总体设计5一、设计规划5二、各模块工作原理及设计51、移位寄存器的工作原理52、双向移位寄存器的设计53、串入串出(SISO)移位寄存器的设计84、串入并出(SIPO)移位寄存器的设计10第三章 设计结论13参考文献14I第一章 绪论随着社会的发展,科学技术也在不断的进步。特别是计算机产业,可以说是日新月异,移位寄存器作为计算机的一个重要部件,从先前的只能做简单的左移或右移功能的寄存器到现在广泛应用的具有寄存代码、实现数据的串行-

6、并行转换、数据运算和数据处理功能的移位寄存器。移位寄存器正在向着功能强,体积小,重量轻等方向不断发展,本设计主要介绍的是一个基于超高速硬件描述语言VHDL对移位寄存器进行编程实现。近年来,集成电路和计算机应用得到了高速发展,现代电子设计技术已迈入一个崭新的阶段,具体表现在:(1)电子器件及其技术的发展将更多地趋向于为EDA服务;(2)硬件电路与软件设计过程已高度渗透;(3)电子设计技术将归结为更加标准、规范的EDA工具和硬件描述语言HDL的运用;(4)数字系统的芯片化实现手段已成主流。因此利用计算机和大规模复杂可编程逻辑器件进行现代电子系统设计已成为电子工程类技术人员必不可少的基本技能之一。一

7、、课程设计的目的在计算机中常要求寄存器有移位功能。如在进行乘法时,要求将部分积右移;在将并行传送的数转换成串行数时也需要移位。因此,移位寄存器的设计是必要的。本次设计的目的就是利用计算机组成原理中移位寄存器的相关知识,通过课程设计更加深入的了解移位寄存器的功能。了解EDA技术,并掌握VHDL硬件描述语言的设计方法和思想,通过学习的VHDL语言结合计算机组成原理中的相关知识理论联系实际,掌握所学的课程知识。通过对移位寄存器的设计,巩固和综合运用所学知识,提高对计算机组成原理的理解。二、课程设计的内容本课程设计是关于移位寄存器的设计,它不仅具有存储代码的功能,而且还有左移、右移、并行输入及保持等功

8、能。本设计根据功能的不同,设计了三种移位寄存器。( 1 ) 双向移位寄存器。 ( 2 ) 串入串出(SISO)移位寄存器。( 3 ) 串入并出(SIPO)移位寄存器。三、EDA简介EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适

9、配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可*性,减轻了设计者的劳动强度。四、VHDL1、VHDL的简介VHDL(Very-High-Speed Integrated Circuit Hardware Description Language),翻译成中文就是超高速集成电路硬件描述语言。因此它的应用主要是应用在数字电路的设计中。诞生于1982年。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代

10、了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。2、VHDL语言的特点(1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器

11、件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。(3)VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立

12、的设计。3、VHDL的设计流程(1)设计规范的定义明确设计的目的,进行设计的总体规划。分析设计要求,以及自己要达到的设计目的和目标。(2)采用VHDL进行设计描述这部分包括设计规划和程序的编写。设计规划主要包括设计方式的选择及是否进行模块划分。设计方式一般包括直接设计,自顶向下和自底向下设计。(3)VHDL程序仿真对于某些人而言,仿真这一步似乎是可有可无的。但是对于一个可靠的设计而言,任何设计最好都进行仿真,以保证设计的可靠性。另外,对于作为一个独立的设计项目而言,仿真文件的提供足可以证明你设计的完整性。(4)综合、优化和布局布线综合指的是将设计描述转化成底层电路的表示形式,其结果是一个网表或

13、者是一组逻辑方程;优化,这个主要是为了提高程序的执行效率及减少资源的利用;布局布线,指的是将逻辑关系转化成电路连接的方式。(5)仿真这一步主要是为了确定你的设计在经过布局布线之后,是不是还满足你的设计要求。13第2章 总体设计一、设计规划本设计是基于VHDL语言设计的移位寄存器,由于移位寄存器是计算机中非常重要的部件,所以本设计采用了不同的方法来实现寄存器的移位功能,具体设计的移位寄存器有:双向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。由于涉及内容比较基础,所以设计比较简单。二、各模块工作原理及设计1、移位寄存器的工作原理用VHDL语言描述任意分频数的分频器,

14、并实现占空比任意设置.每当系统时钟上升沿到来时,计数器就加计数一位(可任意设置为N位),当计数值到达预定值时就对分频时钟翻转。这样就会得到一个连续的时钟脉冲。当移位信号到来时,移位寄存器就对存储的二进制进行移位操。移位寄存方式可自行设置(可左移、右移、一位移、多位移位寄存)。所谓双向移位寄存器,即输入的数据既可以左移又可以右移。所谓的串入/串出移位寄存器,即输入的数据是一个接着一个依序地进入,输出时一个接着一个依序地送出。所谓的串入/并出移位寄存器,即输入的数据是一个接着一个依序地进入,输出时一起送出。2、双向移位寄存器的设计(1)双向移位寄存器工作原理: 图一 双向移位寄存器原理图双向移位寄

15、存器由VHDL程序实现,下面是其VHDL代码:程序名:tdirreg.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY tdirreg IS PORT (clk: IN STD_LOGIC; din: IN STD_LOGIC; dir : IN STD_LOGIC; op_l: OUT STD_LOGIC; op_r: OUT STD_LOGIC);END tdirreg;ARCHITECTURE a OF tdirre

16、g IS SIGNAL q: STD_LOGIC_VECTOR(7 DOWNTO 0);BEGIN PROCESS(clk) BEGIN IF clk'EVENT AND CLK= '1'THEN IF dir = '0' THEN q(0) <= din; FOR i IN 1 TO 7 LOOP q(i) <= q(i-1); END LOOP ; ELSE q(7) <= din; FOR i IN 7 DOWNTO 1 LOOP q(i-1) <=q(i); END LOOP ; END IF; END IF; END P

17、ROCESS ; op_l <= q(7); op_r <= q(0);END a;(2)双向移位寄存器仿真图分析:图二 双向移位寄存器仿真图对其仿真图进行仿真分析:dir为一个控制信号,clk为时钟控制信号,din为输入信号,表示要存入的数据,op_r表示右移(从高位到低位)后得到的结果,op_l表示左移(从低位到高位)后得到的结果。如图所示:当dir为0时,op_r输出的是右移的结果,遇到一个clk的下降沿时,输入数据右移一位。op_l输出的是左移的结果,遇到一个clk的下降沿时,输入数据左移一位。当dir为1时,op_r与op_l与上述相反。3、串入串出(SISO)移位寄存器

18、的设计(1) 串入串出移位寄存器工作原理图三 串入串出移位寄存器原理图串入串出(SISO)移位寄存器由VHDL程序实现。下面是其VHDL代码:程序名:siso.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY siso IS PORT(data_in : IN STD_LOGIC; clk : IN STD_LOGIC; data_out : OUT STD_LOGIC);END siso;ARCHITECTURE a OF siso IS SIGNAL q : STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN PROCE

19、SS(clk) BEGIN IF clk 'EVENT AND CLK = '1' THEN q(0)<=data_in; FOR i IN 1 TO 3 LOOP q(i)<=q(i-1); END LOOP; END IF; END PROCESS; data_out<=q(3);END a;(2) 串入串出移位寄存器仿真图分析图四 串入串出移位寄存器仿真图对其仿真图进行仿真分析:clk为时钟控制信号,data_in为输入信号,表示要存入的数据。data_out为输出信号,表示输出的数据。如图所示:当data_in串行输入数据时,遇到一个时钟信号c

20、lk,输入数据向右移位,并串行输出数据。4、串入并出(SIPO)移位寄存器的设计(1)串入串出移位寄存器工作原理图五 串入串出移位寄存器原理图串入并出(SIPO)移位寄存器由VHDL程序实现。下面是其VHDL代码:程序名:sipo.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY sipo IS PORT(d_in : IN STD_LOGIC; clk : IN STD_LOGIC; d_out : OUT STD_LO

21、GIC_VECTOR(3 DOWNTO 0);END sipo;ARCHITECTURE a OF sipo IS SIGNAL q : STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN PROCESS(clk) BEGIN IF clk 'EVENT AND CLK = '1' THEN q(0)<=d_in; FOR i IN 1 TO 3 LOOP q(i)<=q(i-1); END LOOP; END IF; END PROCESS; d_out<=q;END a;(2)串入并出移位寄存器仿真图分析图六 串入并出移位寄存器仿

22、真图对其仿真图进行仿真分析:clk为时钟控制信号,d_in为串行输入信号,d_out为四位并行输出信号,串行输入信号四位为一组,该信号一位一位的按顺序存入寄存器。如图所示:当串行输入四位数据时,输出一次性并行输出。第三章 设计结论经过了两周的学习和工作,我终于完成了移位寄存器的设计和实现及相关论文。在这段时间里,我学到了很多知识也有很多感受,从课程设计,EDA,VHDL等相关知识很不了解的状态,我开始了独立的学习和试验,查看相关的资料和书籍,让自己头脑中模糊的概念逐渐清晰,使自己非常稚嫩作品一步步完善起来,每一次改进都是我学习的收获,每一次试验的成功都会让我兴奋好一段时间。虽然我的论文作品不是很成熟,还有很多不足之处,但我可以自豪的说,这里面的每一段代码,都有我的劳动。当看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。我相

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论