2007年第 12期 仪
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
技 术 ·9·
VHDL在数字电路设计中的应用
孙 浩
(上海理工大学 计算机与电气工程学院,上海 200093)
摘要 :介绍应 用高速 集成电路硬件 描述语言 (VHDL)在 Altera公 司的 MAX+plus II环境下 ,设计 专用分配器和计数器 。
关键词 :VHDL;分配 器;计 数器
中图分类号 :TM930 文献标识码 :B 文章编号 :1006—2394(2007)12—0009—02
Application of VHDL in Digital Circuit Design
SUN Hao
(The College of Computer and Electrical Engineering,University of Shanghai for Science and Technology,Shanghai 200093,China)
Abstract:Applying VHDL to design specific divider and counter in the environment of MAX+plusⅡ produced by
Ahera Company was introduced in this paper.
Key words:VHDL;frequency divider;counter
VHDL(Vcry High Speed Integrated Circuit Hard—
ware Prescription Language)是一种快速的数字电路设
计工具,其功能包含了电路描述,合成,仿真,
下载
课程表模板下载资产负债表下载英语单词下载学习机资料下载励志文章下载
等。
VHDL是由美国国防部于20世纪 80年代开始研发的
数字电路的设计语言,并且通 过不断 的发展和完善成
为 IEFE的一种标准语言。通过这种语言使原图形的
设计变成了语言的设计。即设计 电路可 以通过符 号,
文字描述的方式完成设计工作,电子电路可以当作文
件存储和保存。
1 VHDL特点
(1)VHDL主要用于描述离散电子系统的结构和
行为,其具有功能强大的语言结构,可用明确的代码描
述复杂的控制逻辑设计,并且具有多层次的描述功能
和重复使用元件的生成功能,是一种设计,仿真,综合
的硬件描述语言。
(2)可读性强,易发现错误和修改,该语言提供
很强 的类型校验功能。
(3)该语言是一种标准语言,它的设计描述可以
被不 同的 EDA工具所支持,即有很强的可移植性 。
(4)语言描述快捷 ,节省人力 ,易于保密 。
VHDL主要有实体 (Entity)结构体 (Architecture)
等部分组成。实体部分主要说明设计单元的输入、输
出接口信号或引脚,而结构体定义了设计单元的具体
构造和操作行为 ,见图 1(VHDL硬件模型)。
图 1
2 应用 VHDL设计专用集成电路
本文通 过 Ahera公 司 MAX+PlusⅡ平 台,应 用
VHDL
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
设计了2个专用集成电路,(3相 6拍分
配器及 24进制 计数器 )。设计 流程 归纳如下 (见 图
2):
VHDL语言输入E 选择目标器件 启动编译
堡皇 塞垫 坌堑 >I!! 堂窒 堡 >I 壁 鍪型堡竺
图 2
(1)3相 6拍分配器
应用 VHDL程序的描述 。通过 MAX+PlusⅡ平 台
的编译、仿真 ,得 到仿真波形图 3,在仿 真无误 的情况
下,编程下载到器件芯片(图 4)。
收稿 日期 :2007—09
作者简介:孙浩(1957一),男 ,高级实验师,长期从事电工电子实验的教学与科研工作。
维普资讯 http://www.cqvip.com
仪 表 技 术 2007年第 12期
I I
rd 1 。I
|.cp 1 r_]广 ]几 厂]厂]『_]厂]广]
jy0 l I I
I I. 』 ●yl l
●y2 0 I l
CP
RD
图 3
F3 6
图 4
Y[2..0】
3相 6拍分配器 VHDL程序描述 :
1.b ry i ; 、
use ieee.std— logic
一 1164.au; l 库声明
use ieee.std
—
logic
— unsigned.all; J
entityf 3-6 is .
印 '
Y outs td logic
— vector(2to0)).}实体定义 : 一 一 ( ));f ⋯ ⋯
d f3_6; J
architecture rtl of f3 6 iS
signal q:std
—
logic
— vector(2to0)
begin
process(cp,rd)
variable C:integer range 0 to 6;
begin
if(rd= 0 )then
q<= ”000”:
elsif(cp eventandcp= 1 、then
if(C=6)then
q<= ”001”:
C:=0;
C: C+1;
elsif(C=0)then
q<=”001”:
C: C+1:
elsif(C=1)then
q<=”O11”:
C: C+ 1;
elsif(C=2)then
q<=”010”:
C: C+ 1:
elsif(C=3)then
q<=”110”:
C:=C+1;
elsif(C=4)then
q <=”100”:
C: c+1;
elsif(C=5)then
q<=”101”:
C: C+1;
end if;
end if;
end process;
Y< q:
end rtl;
(2)24进制计数器
— — 进程语 句
— — 变量 C范围
— — 清零
— — 通过变量 C
不断变化把信号赋值 q
— — 把信号赋值输出 Y
应用 VHDL程序的描述。通过MAX+Plus II平台
的编译、仿真,得到仿真波形图5,编程下载到器件(图
6)。
l22.6ns
Name:Value:
.
100.0ns 0 I
l -
rd l
cp l 唧 眦 Ⅷ唧唧1 唧 Ⅷ唧唧l
f $c2 H0 0 1 2 0
l
c1 H0 船 贼 贼 贼
CP
RD
图 5
C 24
图 6
Q012..0】
Q1[2..0】
24进制计数器 VHDL程序描述:
.b ry i ; 1
use ieee.std
—
logic
一 1164.all; l 库声明
use ieee.std
—
logic
— unsigned.all; J
“ i y 一24is
p0n‘c p’ d:i
,
nstd
:
_ logic
一
;
qo ql outstd logic
— vector(3 to 0)); }实体定义 , : 一 一 ( )); f
endc
.
24; J
architecture rtl of c 24 is
begin
process(cp) ——进程语句
variable cl,c2:std
— logic— vector(3 to 0);
begin
if( p eventandcp=~1)then
if(rd= 1 )then
(c1=”o0 ¨ c2 ”00 ”)出 1清零
cl:=”O0O0”; J
c2:=”O0O0”:
elsif cl<”1001” then
cl:=cl+1: ——计数
else
cl:= ”O0O0”;
c2:=c2 +1;
end if;
end if;
end if;
q
q
0
1
<
<
=
=
c
2l )把信号赋值输出c1,c2
end process;
end rtl;
3 结 论
通过上述实例可以看到,运用 VHDL编程技术设
计专用集成电路时,设计者并不需要非常熟悉常用的
(下转第 16页)
结 构 体 定 义
结 构 体 定 义
维普资讯 http://www.cqvip.com
· 16· 仪 表 技 术 2007年第 12期
读 第 二 片 MAX125四
个通道的数据。
计数 模 块 计 NOE
脉冲上升沿 的次数,它
是一个 4位 的计数器,
以 ADDR6作为它 的计
数使能信号,在读数的
过程 中 ADDR6=1,计
数使能;ADDR5作为
蓊嘲黜 黼馘 瓣
addr5 B 0
addr6 B
gcs2 B I )
nOe B 0 广] 厂_]n n 广]厂_]广] 厂]厂_]广] 广]广-]厂] 厂] r_1广] 广]厂_]广] 广]广_1 n n 广_1广]
nwe B
Co⋯ B
CS a B
一 一 一 一
U U U U U U U U 【.几 l1『l厂
cs b B U U U U U U U U U U 1 l l_J LJ-
、vr B
rd B l n 广_]广] n n 厂_]厂] 广]广_]广1 广]广] 广] 广]广1厂] 几 广.]广1 厂]厂_]广] 广]厂.]广
图 5 CPLD A/D转换控 制模 块读数 过程逻辑控制的仿真 结果图
计数器的复位信号,在模数转换时,ADDR5=1,计数
器复位 ,为后面读数时计数做准备。
解码模块将计数结果进行解码 ,在 0≤计数结果
<4时,Y0=0;在 4≤计数结果 ≤8时 ,Y0=1。Y0作
为 A/D转换器控制模块的输入信号,Y0=0时,读第
一 片 MAX125的数据 ,Y0=1时 ,读第二片 MAX125的
数据。参见图 4和图 2。
第一片MAX125片选
信号CSa
第二片MAX125片选
信号CS NOE
6 结论
采用 CPLD器件来完成高速 A/D芯片的控制,可
以减轻处理器的负担,也简化了整个系统的硬件设计,
且具有如下特点 :
(1)可靠性高。电力数据采集处理由单片系统
构成时,如果采用传统的方法,除了 CPU外还有大量
的中小规模集成电路,在高速、强电磁干扰等恶劣条件
计数次数 : { ! ! : !
Y0 0 0 0 0 1 1
图 4 读数过程 计数 和解码示意 图
这样在读数时 ,$3C2410只需 连续发 出 8个读 脉
冲,而不必考虑两个 MAX125的片选 问题,这个工作 由
CPLD来完成。
5 CPLD A/D转换控制模块读数过程逻辑控 制的仿
真结果 (图 5)
仿真结果显示,CPLD能够很好的实现图2所示
的时序控制。
t t t
6 7 8
1 1 1
下 ,芯片的数量越 多受到干扰 的可能性
就越大,采用 CPLD器件由于集成度的提
高可减少系统受干扰的几率,显著提高
系统的可靠性。
(2)系统具有可升 级性。CPLD的
最大特点就是可以通过软件编程对其器
件的结构和工作方式进行重构。本系统
中使用 CPLD实现各种组合逻辑与时序逻辑,因而能
随时进行调整以满足产品升级的需要。
参考文献 :
[1]曹晖,刘晓华,袁世英.电能质量测量系统中数据采集要求
的定量分析[J].电测与仪表 ,2004(7):26—28.
[2]MAXIM NEW RELEASES DATA BOOK[Z]、1999,
[3]Ultra7000 CPLD Family data sheet[EB/OL].http://www、
cypress.corn,2004—07. (许雪军编发 )
(上接第 10页)
集 成 电路 芯 片功 能 ,只要 根 据 电路 设 计 要 求 编 写
VHDL程序,通过定义器件的内部逻辑和管脚,就能完
成专用集成电路的设计工作。VHDL编程非常灵活、
快捷,只要程序稍作更改就能设计出各种数字逻辑电
路(如上述 24进制计数器,只要程序稍作更改,就能
设计出任意进制计数器),提高了工作效率,因此,在
设计数字逻辑系统时被广泛应用 。
参考文献:
[1]候伯亨,顾新.硬件描述语言与数字逻辑设计[M]
西安 电子科技 大学 出版社 ,1999.
(上接第 13页)
采用屏蔽电缆 ;雷 达液位 信号分 配器与 FCU之 间的
UART通信波特率不宜太高,一般选择 1200bps比较
合适。C8051F002的 SMBUS接口通信速率虽然可以
达到系统时钟频率的 1/8,但在具体应用中也选择接
近 1200bps的通信速率比较适宜。在上述参数配置的
情况下 ,SMBUS的可靠传输距离达到近百米 。
参考文献 :
[1]潘琢金,施国君.C8051 FXXX高速 SOC单片机原理及应用
一 [M].北京航空航天大学出版社,2002.
四文 : [2]李刚
, 林 凌.与 8051兼 容 的高性 能、高 速单 片机——
[2]卢毅,莱杰.VHDL与数字电路设计 [M].北京:科学出版
社,2001. (郁红编发)
C8051 FXXX[M].北京航空航天大学出版社 ,2002.
[3]徐爱均,彭锈华.单片机高级编程语言C51程序设计[M]
北京电子工业出版社,1998. (丁云编发)
维普资讯 http://www.cqvip.com