概述
摘
要
本文通过对EDA和VHDL的简单说明,阐述了基于
VHDL硬件描述语言的移位寄存器设计方法,程序简单,在电子
设计中有一定的推广价值。
关键词
移位寄存器 设计 EDA VHDL
随着科学技术的不断进步,尤其是计算机产业的日新月
异,作为计算机一个非常重要的部件——移位寄存器,从最早
只能简单的左右移动功能的寄存器到现在广泛应用的具有寄存
代码、实现数据的串行并行转换、数据运算和数据处理功能的
移位寄存器,它正朝着体小量轻能强的方向不断发展,本文介
绍了利用生成语句设计的16位串入串出移位寄存器的方法。
1 EDA基本介绍
EDA是电子设计自动化(Electronic Design Automation)
的缩写。EDA技术是指以计算机为工作平台,融合了应用电子技
术、计算机技术、信息处理及智能化技术的最新成果,进行电
子产品的自动设计。设计者在EDA软件平台上,用硬件描述语
言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化
简、分割、综合、优化、布局、布线和仿真,直至对于特定目
标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出
现,极大地提高了电路设计的效率和可操作性,减轻了设计者
的劳动强度。而在EDA设计中,经常会用到移位寄存的功能,如
并行传送的数据转换成串行传送的数据时的移位以及乘法器的
部分积右移等。因此,移位寄存起的设计在基于数字系统的设
计中显得十分必要。
2 VHDL简介
VHDL是工业标准的硬件描述语言,称之为VHSIC(Very
High
Speed
Integrated
Circuit
Hardware
Description
Language),简称VHDL。VHDL语言主要用于描述数字系统的结
构,行为,功能和接口。除了含有许多具有硬件特征的语句
外,VHDL的语言形式、描述风格以及语法是十分类似于一般的
计算机高级语言。VHDL的程序结构特点是将一项工程设计,或
称设计实体(可以是一个元件,一个电路模块或一个系统)分
成外部(或称可视部分及端口)和内部(或称不可视部分),即
涉及实体的内部功能和算法完成部分。在对一个设计实体定义
了外部界面后,一旦其内部开发完成后,其他的设计就可以直
接调用这个实体。这种将设计实体分成内外部分的概念是VHDL
系统设计的基本点。
3 移位寄存器
寄存器按照功能的不同分为基本寄存器和移位寄存器两大
类。基本寄存器只能并行送入数据,需要时也只能并行输出。
移位寄存器中的数据可以在移位脉冲作用下依次逐位右移或左
移,数据既可以并行输入、并行输出,也可以串行输入、串行
输出,还可以并行输入、串行输出,串行输入、并行输出,十
分灵活,用途也很广。
4 移位寄存器的设计过程
4.1 工作原理
如图所示:串入串出移位寄存器有数据输入端和同步时
钟输入端,一个数据输出端。在同步时钟的作用下,前级的数
据向后级移动。语句GENERATE用来产生多个相同的结构。利用
基于VHDL的移位寄存器设计
景兴红 刘 陈 王泽芳
(重庆正大软件职业技术学院 400056)
GENERATE和D触发器元件dff,可以很方便地设计出16位串入串
出移位寄存器。
4.2 利用VHDL编写程序
(1)D触发器的程序
library ieee;
use ieee.std_logic_1164.all;
entity dff_logic is
port ( d, clk: in std_logic;
q: out std_logic);
end dff_logic;
architecture dff1 of dff_logic is
begin
p1: process (clk)
begin
if (clk ' event and clk = 1 ) then
q <= d;
end if;
end process p;
end dff;
(2)顶层文件-16位移位寄存器的VHDL程序
library ieee ;
use ieee.std_logic_1164.all;
entity shift_16 is
port (a,clk:in std_logic;
b:out std_logic);
end shift_16;
architecture sample of shift_16 is
component dff
port (d,clk:in std_logic;
q:out std_logic);
end component;
signal z:std_logic_vector (0 to 16);
begin
z(0) <= a;
g1:for i in 0 to 15 generate
dffx:dff port map (z(i),clk,z(i+1));
end generate;
b <= z(16);
end sample;
参考文献
[1]潘松.VHDL实用教程【M】.成都:电子科技大学出版社
.2000;[2]Jayaram.Bhaker.VHDL教程.北京:机械工业出版社
.2006.
最后
以上就是害怕灰狼为你收集整理的左移寄存器vhdl_基于VHDL的移位寄存器设计的全部内容,希望文章能够帮你解决左移寄存器vhdl_基于VHDL的移位寄存器设计所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复