EDA课程设计——移位寄存器的设计与实现
移位寄存器的设计方法

移位寄存器的设计方法下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!本店铺为大家提供各种类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you! In addition, this shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!移位寄存器是一种重要的数字电路组件,用于实现数据的移位操作。
8位移位寄存器的电路设计与版图实现要点

8位移位寄存器的电路设计与版图实现要点8位移位寄存器的电路设计与版图实现摘要电⼦设计⾃动化,缩写为EDA,主要是以计算机为主要⼯具,⽽Tanner EDA则是⼀种在计算机windows平台上完成集成电路设计的⼀种软件,基本包括S-Edit,T-Spice,W-Edit,L-Edit与LVS等⼦软件,其S-Edit以及L-Edit为常⽤软件,前者主要实现电路设计,后者主要针对的是已知电路的版图绘制,⽽T-Spice主要可实现电路图及版图的仿真,可以⽤Tanner EDA实现电路的设计布局以及版图实现等⼀系列完整过程。
本⽂⽤Tanner EDA⼯具主要设计的是8位移位寄存器,移位寄存器主要是⽤来实现数据的并⾏和串⾏之间的转换以及对数据进⾏运算或专业处理的⼯具,主要结构构成是触发器,触发器是具有储存功能的,可以⽤来储存多进制代码,⼀般N 位寄存器就是由N个触发器构成,移位寄存器⼯作原理主要是数据在其脉冲的作⽤下实现左移或者右移的效果,输⼊输出的⽅式表现为串⾏及并⾏⾃由组合,本设计就是在Tanner EDA的软件平台上进⾏对8位移位寄存器的电路设计仿真,再根据电路图在专门的L-Edit 平台上完成此电路的版图实现,直⾄完成的结果和预期结果保持⼀致。
关键词:Tanner EDA;L-Edit;移位寄存器,S-Edit8 bits shift register circuit design and layoutAbstractElectronic design automation,referred to as EDA,it is based on computers as the main tool,and Tanner EDA is a kind of software that complete the integrated circuit design on Windows platforms.Its Sub-Softwares include S-Edit,T-Spice,W-Edit,L-Edit and LVS and so on.S-Edit and L-Edit are commonly used software,S-Edit is primarily designed to achieve circuit,the latter is aimed primarily known circuit layout drawing,T-Spice can achieve schematic and layout simulation.We can achieve layout of the circuit design and a series of complete process layout used Tanner EDA tools.In this paper, Tanner EDA tools are mainly designed an 8-bit shift register.The shift register is mainly used for data conversion between parallel and serial, and the data processing tool operation or professional,its main structure is the trigger composition,flip-flop is a storage function,it can be used to store more hexadecimal code,In general N-bits register is composed of N trigger.Working principle of the shift register data under the action of the pulse, mainly the effect of the shift to the left or right,input and output of the way of serial and parallel free combination.This design is in Tanner on the EDA software platform to 8 bits shift register circuit design and simulation,then according to the circuit diagram on special L - Edit platform to complete the circuit layout implementation,until the finish is consistent with the results and expected results.Keywords:Tanner EDA;L-Edit;Shift register,S-Edit⽬录1 前⾔ (1)1.1 课题的背景和⽬的 (1)1.2课题的设计内容 (1)2 设计软件简介 (2)2.1EDA技术的介绍 (2)2.2T ANNER EDA T OOLS的简述 (2)2.3T ANNER软件的组成及发展 (3)2.3.1 Tanner的设计流程 (4)2.3.2 Tanner软件的发展 (5)2.3.3 L-Edit软件的介绍 (6)2.48位移位寄存器的⼯作原理和设计要求 (9)2.4.1 ⼯作原理 (9)2.4.2 电路结构与设计 (11)3 8位移位寄存器的电路设计与版图实现过程 (13)3.1各个模块的设计与仿真 (13)3.1.1 带复位端D触发器的设计与版图实现 (13)3.1.2 与或⾮门的设计与版图实现 (16)3.28位移位寄存器的电路设计与版图实现 (18)3.2.1 8位移位寄存器的电路结构 (18)3.2.2 8位移位寄存器的版图实现 (19)3.2.3 LVS对⽐ (21)4 结束语 (21)参考⽂献 (22)巢湖学院2013届本科毕业论⽂(设计)1 前⾔1.1 课题的背景和⽬的随着科技的进步,近⼏个世纪寄存器技术不断成熟,在数字电路中,寄存器已经是⼀个经常被提出的概念,它主要指的是⽤来存放⼆进制数据或者代码的电路。
EDA课程设计报告---串入并出移位寄存器

EDA课程设计报告设计课题:1、串入并出移位寄存器2、译码器3、数字钟专业班级:电子信息工程08-1班串入并出移位寄存器一、设计任务与要求1.设计一个4位的串入并出移位寄存器;2.要求能分别输入两组4位数据,同时输出显示。
二、方案设计与论证移位寄存器除了具有存储代码的功能以外,还具有移位功能。
所谓移位功能,是指寄存器里存储的代码能在移位脉冲的作用下依次左移或右移。
因此,移位寄存器不但可以用来寄存代码,还可用来实现数据的串并转换、数字的运算以及数据处理等。
所谓的串入/并出移位寄存器,即输入的数据是一个接着一个有序地进入,输出时则一起送出。
两组数据伴随着时钟信号依次输入,输出时消除延时。
三、单元电路设计与参数计算程序代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity sipo isport(d_in:in std_logic;clk:in std_logic;d_out:out std_logic_vector(3 downto 0));end sipo;architecture a of sipo issignal q:std_logic_vector(3 downto 0);beginp1:process(clk)beginif clk'event and clk='1'thenq(0)<=d_in;for i in 1 to 3 loopq(i)<=q(i-1);end loop;end if;end process p1;d_out<=q;end a;四、总原理图及元器件清单1.总原理图1.元件清单(或程序清单)五、安装与调试输入的数据为“1010”、“0111”两组4 位数据。
因输入的数据是每次一位依序进入,故输入、输出信号之间有 4 个CLK 时间的延迟。
EDA实验报告触发器及应用及移位寄存器

EDA实验报告触发器及应用及移位寄存器EDA实验报告实验目的:1.触发器的工作原理。
2.基本时序电路的VHDL代码编写。
3.按键消抖电路应用。
4.定制LPM原件。
5.VHDL语言中元件例化的使用。
6.移位寄存器的工作原理及应用。
实验要求:1.运用LPM原件定制DFF触发器,并调用LPM 定制的DFF触发器,用VHDL语言的元件例化实现消抖电路并了解其工作原理。
2. 移位寄存器是用来寄存二进制数字信息且能进行信息移位的时序逻辑电路。
根据移位寄存器存取信息的方式不同可分为串入串出、串入并出、并入串出、并入并出4种形式,并通过数码管显示出来。
实验原理:1.消抖电路由于一般的脉冲按键与电平按键采用机械开关结构,其核心部件为弹性金属簧片。
按键信号在开关拨片与触点接触后经多次弹跳才会稳定。
本实验采用消抖电路消除抖动以获得一个稳定的电平信号。
2.移位寄存器移位寄存器具有左移、右移、并行输入数据、保持及异步清零5种功能。
其中A、B、C、DQQQQCABD为并行输入端,、、、为并行输出端;SRSI为右移串行输入端,SLSI 为左移串行输入端;S1、S0为模式控制端;CLRN为异步清零端;CLK为时钟脉冲输入端。
实验具体步骤:1.消抖电路(1).用lpm定制DFF<1>.设置lpm_ff选择Installed Plug-Ins?Storage?lpm_ff项;<2>.设置输入data为1位,clock为时钟信号,类型为D型;<3>.添加异步清零和异步置1;其VHDL语言为:LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY lpm;USE lpm.all;ENTITY mydff ISPORT(clock : IN STD_LOGIC ;data : IN STD_LOGIC ;q : OUT STD_LOGIC);END mydff;ARCHITECTURE SYN OF mydff ISSIGNAL sub_wire0 : STD_LOGIC_VECTOR (0 DOWNTO 0);SIGNAL sub_wire1 : STD_LOGIC ;SIGNAL sub_wire2 : STD_LOGIC ;SIGNAL sub_wire3 : STD_LOGIC_VECTOR (0 DOWNTO 0); COMPONENT lpm_ffGENERIC (lpm_fftype : STRING;lpm_type : STRING;lpm_width : NATURAL);PORT (clock : IN STD_LOGIC ;q : OUT STD_LOGIC_VECTOR (0 DOWNTO 0);data : IN STD_LOGIC_VECTOR (0 DOWNTO 0));END COMPONENT;BEGINsub_wire1 <= sub_wire0(0);q <= sub_wire1;sub_wire2 <= data;sub_wire3(0) <= sub_wire2;lpm_ff_component : lpm_ffGENERIC MAP (lpm_fftype => "DFF",lpm_type => "LPM_FF",lpm_width => 1)PORT MAP (clock => clock,data => sub_wire3,q => sub_wire0);END SYN;(2).VHDL结构式描述顶层--Top level entity xiaodou library ieee; use ieee.std_logic_1164.all;entity xiaodou isport( d_in,clk:in std_logic;clk_out:out std_logic); end xiaodou; architecture xiaodou_arch of xiaodou is component mydff is --元件例化PORT(clock : IN STD_LOGIC ;data : IN STD_LOGIC ;q : OUT STD_LOGIC);END component;signal x,y:std_logic;begindff1:mydff port map(clock=>clk,data=>d_in,q=>x);dff2:mydff port map(clk,x,y); clk_out<=x and (not y); endxiaodou_arch;(3).功能仿真波形:2.移位寄存器(1).74194功能验证电路(2).74194功能仿真结果仿真分析:clrn=1,clk上升时,s为11,移位寄存器并行置数,此时abcd=1010,q_abcd=1010; clrn=0,移位寄存器进行清零,此时有q_abcd=0000;clrn=1,clk上升时,s为01,sl_sr为01,移位寄存器串行右移补1,输出q_abcd=1000; clrn=1,clk上升时,s为01,sl_sr为10,移位寄存器串行右移补0,输出q_abcd=0100; clrn=1,clk上升时,s为10,sl_sr为10,移位寄存器串行左移补1,输出q_abcd=1001; clrn=1,clk上升时,s为10,sl_sr为01,移位寄存器串行左移补0,输出q_abcd=0010。
移位寄存器的设计及实现

移位寄存器的设计及实现移位寄存器(Shift Register)是一种常用的数字逻辑电路器件,它能够将数据按照输入和输出的时序进行移位操作。
通过移位寄存器,我们可以实现数据的串行传输、并行-串行或者串行-并行转换、数据延迟等功能。
本文将对移位寄存器的设计与实现进行介绍。
一、移位寄存器的设计1.串行输入、串行输出的移位寄存器这种移位寄存器称为串行移位寄存器,它包括n个触发器,每个触发器提供一个数据位的存储空间。
数据通过一个输入端串行输入,然后通过触发器依次移位,最后从输出端串行输出。
2.并行输入、并行输出的移位寄存器这种移位寄存器称为并行移位寄存器,它包括n个触发器,每个触发器提供一个数据位的存储空间。
数据通过n个输入端并行输入到各个触发器,然后通过控制信号进行同步移位。
最后从n个输出端并行输出。
3.并行输入、串行输出的移位寄存器这种移位寄存器称为并行-串行移位寄存器,它先从n个输入端并行输入数据,然后通过控制信号进行同步移位,并将移位结果通过一个输出端串行输出。
4.串行输入、并行输出的移位寄存器这种移位寄存器称为串行-并行移位寄存器,它先从一个输入端串行输入数据,然后通过触发器进行移位,最后将移位结果从n个输出端并行输出。
1.触发器选择由于是8位移位寄存器,需要选择8个触发器。
常用的触发器有D触发器、JK触发器等,可以根据实际需求选择合适的触发器。
2.输入输出端口设计设计一个输入端口用于串行输入数据。
由于是串行输入,需要一个时钟信号和一个使能信号进行同步移位操作。
同时,设计一个输出端口用于串行输出数据。
3.控制信号电路设计根据串行输入、串行输出的要求,需要设计一个时钟信号和一个使能信号的电路。
使能信号在移位过程中保持逻辑高电平,只有当8位数据全部移位完成时才将使能信号置为逻辑低电平。
二、移位寄存器的实现1.设计一个8位移位寄存器电路,并连接8个D触发器。
2.将串行输入信号与D触发器的数据端相连,时钟信号与D触发器的时钟端相连,使能信号与D触发器的使能端相连。
VHDL移位寄存器的设计与实现.EDA课程设计

EDA 课程设计报告书课题名称基于VHDL 移位寄存器的设计与实现 姓 名伍 赞 学 号 0812201-42 院 系物理与电信工程系 专 业电子信息工程 指导教师周来秀 讲师2011年 6月10日※※※※※※※※※※※ ※※ ※※ ※※※※※※※※※2008级学生EDA 课程设计基于VHDL移位寄存器的设计与实现伍赞(湖南城市学院物理与电信工程系电子信息工程专业,益阳,413002)1设计目的在计算机中常要求寄存器有移位功能。
如在进行乘法时,要求将部分积右移在将并行传送的数转换成串行数时也需要移位。
因此,移位寄存器的设计是必要的。
本次设计的目的就是利用计算机组成原理中移位寄存器的相关知识,通过课程设计更加深入的了解移位寄存器的功能。
了解EDA技术,并掌握VHDL硬件描述语言的设计方法和思想,通过学习的VHDL语言结合计算机组成原理中的相关知识理论联系实际,掌握所学的课程知识。
通过对移位寄存器的设计,巩固和综合运用所学知识,提高对计算机组成原理的理解。
2设计的主要内容和要求本课程设计是关于移位寄存器的设计,它不仅具有存储代码的功能,而且还有左移、右移、并行输入及保持等功能。
本设计根据功能的不同,设计了三种移位寄存器。
( 1 ) 双向移位寄存器。
( 2 ) 串入串出(SISO)移位寄存器。
( 3 ) 串入并出(SIPO)移位寄存器。
3 移位寄存器设计过程3.2.1移位寄存器的工作原理用VHDL语言描述任意分频数的分频器,并实现占空比任意设置.每当系统时钟上升沿到来时,计数器就加计数一位(可任意设置为N位),当计数值到达预定值时就对分频时钟翻转.这样就会得到一个连续的时钟脉冲.当移位信号到来时,移位寄存器就对存储的二进制进行移位操作.移位寄存方式可自行设置(可左移,右移,一位移,多位移位寄存)。
3.2.2双向移位寄存器的设计电路符号:双向移位寄存器工作原理框图。
CLK表示计数器被清除为“0”;一般当为高电平时为触发。
EDA课程设计——移位寄存器的设计与实现

请画出下段程序的真值表,并说明该电路的功能。
河南科技大学课程设计说明书课程名称EDA技术与应用题目移位寄存器的设计与实现学院班级学生姓名指导教师日期EDA技术课程设计任务书班级:姓名:学号:设计题目:移位寄存器的设计与实现一、设计目的进一步巩固理论知识,培养所学理论知识在实际中的应用能力;掌握EDA 设计的一般方法;熟悉一种EDA软件,掌握一般EDA系统的调试方法;利用EDA软件设计一个电子技术综合问题,培养VHDL编程、书写技术报告的能力。
为以后进行工程实际问题的研究打下设计基础。
二、设计任务根据计算机组成原理中移位寄存器的相关知识,利用VHDL语言设计了三种不同的寄存器:双向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。
三、设计要求(1)通过对相应文献的收集、分析以及总结,给出相应课题的背景、意义及现状研究分析。
(2)通过课题设计,掌握计算机组成原理的分析方法和设计方法。
(3)学习按要求编写课程设计报告书,能正确阐述设计和实验结果。
(4)学生应抱着严谨认真的态度积极投入到课程设计过程中,认真查阅相应文献以及实现,给出个人分析、设计以及实现。
四、设计时间安排查找相关资料(1天)、设计并绘制系统原理图(2天)、编写VHDL程序(2天)、调试(2天)、编写设计报告(2天)和答辩(1天)。
五、主要参考文献[1]江国强编著.EDA技术与实用(第三版).北京:电子工业出版社,2011.[2]曹昕燕,周凤臣.EDA技术实验与课程设计.北京:清华大学出版社,2006.5[3]阎石主编.数字电子技术基础.北京:高等教育出版社,2003.[4]MarkZwolinski.DigitalSystemDesignwithVHDL.北京:电子工业出版社,2008[5]AlanB.MarcovitzIntroductiontologicDesign.北京:电子工业出版社,2003指导教师签字:年月日移位寄存器的设计与实现摘要系统使用EDA技术设计了具有移位功能的寄存器,采用硬件描述语言VHDL进行设计,然后进行编程,时序仿真等。
EDA不同类型的移位寄存器设计报告

E D A实训实验报告课程名称:不同类型的移位寄存器设计专业:13自动化指导教师:学号:姓名:提交日期:2016-7-8实验一含同步预置功能的移位寄存器设计一、实验目的设计带有同步并预置功能的8位右移移位寄存器。
二、实验内容:CLK 是移位时钟信号,DIN是8位并行预置数据端口,LOAD是并行数据预置使能信号,QB是串行输出端口三、实验原理:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY SHFRT IS -- 8位右移寄存器PORT ( CLK,LOAD : IN STD_LOGIC;DIN : IN STD_LOGIC_VECTOR(7 DOWNTO 0);QB : OUT STD_LOGIC );END SHFRT;ARCHITECTURE behav OF SHFRT ISBEGINPROCESS (CLK, LOAD)VARIABLE REG8 : STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINIF CLK'EVENT AND CLK = '1' THEN --检测时钟上升沿IF LOAD = '1' THEN REG8 := DIN;--由(LOAD='1')装载新数据ELSE REG8(6 DOWNTO 0) := REG8(7 DOWNTO 1);END IF;END IF;QB <= REG8(0); -- 输出最低位END PROCESS;END behav;引脚分配:四、实验过程:引脚设定五、实验结果:输出波形图实验二 8位串入并出移位寄存器电路的设计一、实验内容用VHDL语言实现8位串入并出移位寄存器电路的设计。
二、实验原理LIBRARY IEEE;USE IEEE.Std_logic_1164.all;ENTITY text ISPORT(a, b, clr, clock: IN BIT;q : BUFFER BIT_VECTOR(0 TO 7));END text;ARCHITECTURE one OF text ISBEGINPROCESS(a,b,clr,clock)BEGINIF clr= '0' THENq <= "00000000";ELSEIF clock'EVENT AND clock = '1'THENFOR i IN q'RANGE LOOPIF i = 0 THEN q(i) <= (a AND b);ELSEQ(i) <= q(i-1);END IF;END LOOP;END IF;END IF;END PROCESS;END one;保存本文本。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
河南科技大学课程设计说明书课程名称EDA技术与应用题目移位寄存器的设计与实现学院班级学生姓名指导教师日期EDA技术课程设计任务书班级:姓名:学号:设计题目:移位寄存器的设计与实现一、设计目的进一步巩固理论知识,培养所学理论知识在实际中的应用能力;掌握EDA设计的一般方法;熟悉一种EDA软件,掌握一般EDA系统的调试方法;利用EDA软件设计一个电子技术综合问题,培养VHDL编程、书写技术报告的能力。
为以后进行工程实际问题的研究打下设计基础。
二、设计任务根据计算机组成原理中移位寄存器的相关知识,利用VHDL语言设计了三种不同的寄存器:双向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。
三、设计要求(1)通过对相应文献的收集、分析以及总结,给出相应课题的背景、意义及现状研究分析。
(2)通过课题设计,掌握计算机组成原理的分析方法和设计方法。
(3)学习按要求编写课程设计报告书,能正确阐述设计和实验结果。
(4)学生应抱着严谨认真的态度积极投入到课程设计过程中,认真查阅相应文献以及实现,给出个人分析、设计以及实现。
四、设计时间安排查找相关资料(1天)、设计并绘制系统原理图(2天)、编写VHDL程序(2天)、调试(2天)、编写设计报告(2天)和答辩(1天)。
五、主要参考文献[1] 江国强编著. EDA技术与实用(第三版). 北京:电子工业出版社,2011.[2] 曹昕燕,周凤臣.EDA技术实验与课程设计.北京:清华大学出版社,2006.5[3] 阎石主编.数字电子技术基础.北京:高等教育出版社,2003.[4] Mark Zwolinski. Digital System Design with VHDL.北京:电子工业出版社,2008[5] Alan B. Marcovitz Introduction to logic Design.北京:电子工业出版社,2003指导教师签字:年月日移位寄存器的设计与实现摘要系统使用EDA技术设计了具有移位功能的寄存器,采用硬件描述语言VHDL进行设计,然后进行编程,时序仿真等。
软件基于VHDL语言实现了本设计的控制功能。
本设计根据移位寄存器的功能设计了三种不同的寄存器:双向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。
设计过程中,运用了软件QuartusⅡ进行编程,仿真,整个设计过程简单,使用方便。
功能齐全,精度高,具有一定的开发价值。
通过设计,对EDA有了更深层的了解,相对于课堂上所学的知识来说,增加了一定的实践经验,在编译时,常会出现错误不能通过编译,经过一点点的改正错误,最终终于通过编译,并得到正确的仿真结果,同时对EDA的实现软件QuartusⅡ的使用方法也能够更加熟练的掌握。
关键词: EDA,VHDL,移位寄存器目录第一章绪论 (1)一、课程设计的目的 (1)二、课程设计的内容 (1)三、EDA简介 (2)四、VHDL (2)1、VHDL的简介 (2)2、VHDL语言的特点 (3)3、VHDL的设计流程 (3)第二章总体设计 (5)一、设计规划 (5)二、各模块工作原理及设计 (5)1、移位寄存器的工作原理 (5)2、双向移位寄存器的设计 (5)3、串入串出(SISO)移位寄存器的设计 (8)4、串入并出(SIPO)移位寄存器的设计 (10)第三章设计结论 (13)参考文献 (14)第一章绪论随着社会的发展,科学技术也在不断的进步。
特别是计算机产业,可以说是日新月异,移位寄存器作为计算机的一个重要部件,从先前的只能做简单的左移或右移功能的寄存器到现在广泛应用的具有寄存代码、实现数据的串行-并行转换、数据运算和数据处理功能的移位寄存器。
移位寄存器正在向着功能强,体积小,重量轻等方向不断发展,本设计主要介绍的是一个基于超高速硬件描述语言VHDL对移位寄存器进行编程实现。
近年来,集成电路和计算机应用得到了高速发展,现代电子设计技术已迈入一个崭新的阶段,具体表现在:(1)电子器件及其技术的发展将更多地趋向于为EDA服务;(2)硬件电路与软件设计过程已高度渗透;(3)电子设计技术将归结为更加标准、规范的EDA工具和硬件描述语言HDL的运用;(4)数字系统的芯片化实现手段已成主流。
因此利用计算机和大规模复杂可编程逻辑器件进行现代电子系统设计已成为电子工程类技术人员必不可少的基本技能之一。
一、课程设计的目的在计算机中常要求寄存器有移位功能。
如在进行乘法时,要求将部分积右移;在将并行传送的数转换成串行数时也需要移位。
因此,移位寄存器的设计是必要的。
本次设计的目的就是利用计算机组成原理中移位寄存器的相关知识,通过课程设计更加深入的了解移位寄存器的功能。
了解EDA技术,并掌握VHDL硬件描述语言的设计方法和思想,通过学习的VHDL语言结合计算机组成原理中的相关知识理论联系实际,掌握所学的课程知识。
通过对移位寄存器的设计,巩固和综合运用所学知识,提高对计算机组成原理的理解。
二、课程设计的内容本课程设计是关于移位寄存器的设计,它不仅具有存储代码的功能,而且还有左移、右移、并行输入及保持等功能。
本设计根据功能的不同,设计了三种移位寄存器。
( 1 ) 双向移位寄存器。
( 2 ) 串入串出(SISO)移位寄存器。
( 3 ) 串入并出(SIPO)移位寄存器。
三、EDA简介EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。
EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL 完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。
EDA技术的出现,极大地提高了电路设计的效率和可*性,减轻了设计者的劳动强度。
四、VHDL1、VHDL的简介VHDL(Very-High-Speed Integrated Circuit Hardware Description Language),翻译成中文就是超高速集成电路硬件描述语言。
因此它的应用主要是应用在数字电路的设计中。
诞生于1982年。
自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL 设计环境,或宣布自己的设计工具可以和VHDL接口。
此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。
1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。
现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。
有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。
2、VHDL语言的特点(1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。
强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。
(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。
(3)VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。
符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。
(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。
(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。
3、VHDL的设计流程(1)设计规范的定义明确设计的目的,进行设计的总体规划。
分析设计要求,以及自己要达到的设计目的和目标。
(2)采用VHDL进行设计描述这部分包括设计规划和程序的编写。
设计规划主要包括设计方式的选择及是否进行模块划分。
设计方式一般包括直接设计,自顶向下和自底向下设计。
(3)VHDL程序仿真对于某些人而言,仿真这一步似乎是可有可无的。
但是对于一个可靠的设计而言,任何设计最好都进行仿真,以保证设计的可靠性。
另外,对于作为一个独立的设计项目而言,仿真文件的提供足可以证明你设计的完整性。
(4)综合、优化和布局布线综合指的是将设计描述转化成底层电路的表示形式,其结果是一个网表或者是一组逻辑方程;优化,这个主要是为了提高程序的执行效率及减少资源的利用;布局布线,指的是将逻辑关系转化成电路连接的方式。
(5)仿真这一步主要是为了确定你的设计在经过布局布线之后,是不是还满足你的设计要求。
第二章总体设计一、设计规划本设计是基于VHDL语言设计的移位寄存器,由于移位寄存器是计算机中非常重要的部件,所以本设计采用了不同的方法来实现寄存器的移位功能,具体设计的移位寄存器有:双向移位寄存器、串入串出(SISO)移位寄存器、串入并出(SIPO)移位寄存器。
由于涉及内容比较基础,所以设计比较简单。
二、各模块工作原理及设计1、移位寄存器的工作原理用VHDL语言描述任意分频数的分频器,并实现占空比任意设置.每当系统时钟上升沿到来时,计数器就加计数一位(可任意设置为N位),当计数值到达预定值时就对分频时钟翻转。
这样就会得到一个连续的时钟脉冲。
当移位信号到来时,移位寄存器就对存储的二进制进行移位操。
移位寄存方式可自行设置(可左移、右移、一位移、多位移位寄存)。
所谓双向移位寄存器,即输入的数据既可以左移又可以右移。
所谓的串入/串出移位寄存器,即输入的数据是一个接着一个依序地进入,输出时一个接着一个依序地送出。
所谓的串入/并出移位寄存器,即输入的数据是一个接着一个依序地进入,输出时一起送出。
2、双向移位寄存器的设计(1)双向移位寄存器工作原理:图一双向移位寄存器原理图双向移位寄存器由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 ISPORT (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 tdirreg ISSIGNAL q: STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINPROCESS(clk)BEGINIF clk'EVENT AND CLK= '1'THENIF dir = '0' THENq(0) <= din;FOR i IN 1 TO 7 LOOPq(i) <= q(i-1);END LOOP ;ELSEq(7) <= din;FOR i IN 7 DOWNTO 1 LOOPq(i-1) <=q(i);END LOOP ;END IF;END IF;END PROCESS ;op_l <= q(7);op_r <= q(0);END a;(2)双向移位寄存器仿真图分析:图二双向移位寄存器仿真图对其仿真图进行仿真分析:dir为一个控制信号,clk为时钟控制信号,din为输入信号,表示要存入的数据,op_r表示右移(从高位到低位)后得到的结果,op_l表示左移(从低位到高位)后得到的结果。