积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> CPLD/FPGA >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
FPGA/CPLD设计软件Active-HDL的特点与应用实例
 
作者:张宪起   来源:电子设计信息网    点击数:481   更新时间:2008-6-10
您可以添加到网摘 让更多人关注此文章:

    

摘要:本文介绍了Active-HDL 软件的设计流程和设计过程中的有关仿真,以RAM实例说明该软件的特点及内存的描述和仿真方法,以交通灯控制器为例介绍状态机的描述方法,以数码管动态扫描显示为例介绍测试文件(test bench) 的编写方法,以计数器为例介绍模拟波形显示功能。

关键词:Active - HDL;FPGA ;CPLD;Verilog-HDL; 仿真;模拟显示;状态机

1  引 言

Aldec公司推出的Active - HDL软件,是一个功能强大的FPGA/CPLD 设计和仿真软件, 它可以嵌入很多公司的第三方综合工具和布局布线工具,当嵌入相应的综合工具和布局布线工具,就可以完成时序仿真和程序下载。

Active - HDL是专用的FPGA/ CPLD 设计软件,具有很强的设计和仿真功能,但关于该软件使用方法的资料很少,一般只能根据软件提供的帮助文件来学习和使用该软件,鉴于此,本文通过举例来说明Active - HDL 软件的使用方法和该软件具有的特点。

2  Active - HDL 软件的设计流程和设计过程中的有关仿真

Active - HDL 软件的设计流程如图1所示。当启动Active - HDL 软件,开始进行设计的第一个界面就是设计流程管理(Design Flow Manager) ,从该界面的第一行可以了解到,该软件共有三种主要的输入方法———硬件描述语言输入( HDE) , 状态机输入( FSM) 和原理图输入(BDE) 。从整个界面可以看出,Active - HDL 软件可以进行三种仿真- - 功能仿真、综合后仿真和时序仿真。

图1  Active - HDL 软件的设计流程(Design Flow Manager 界面)

功能仿真是将采用硬件描述语言设计的程序直接送入仿真器所进行的仿真,该仿真只是根据VHDL 或Verilog 语法进行的,与具体电路没有关系,可以充分发挥仿真控制语句和预定义函数及库文件的作用。综合后仿真是将综合后的网表文件再送到仿真器中所进行的仿真,对描述的逻辑功能进行测试模拟,但不涉及具体器件的硬件特性,如延时特性,描述的电路与生成的EDIF/ XNF 等网表文件一致。

时序仿真,就是将布线器/ 适配器所产生的网表文件送到仿真器中所进行的仿真,该仿真已经将器件的特性考虑进去了,因此可以得到精确的时序仿真结果。

功能仿真与综合后仿真的区别是:功能仿真几乎可以编译所有的VHDL 或Verilog 语句,只是不同的软件支持的语句多少不同而已,而综合后仿真不能编译电路无法实现的行为描述语句,即综合器不能综合这类语句,比如我们在程序中设定第一个门到第二个门的延迟为5ns就不能综合,因为门延迟由器件的工艺参数决定的,在实际中不能由人为定义,但在功能仿真中却可以做到这一点,所以说功能仿真是理想化的仿真。

综合后仿真与时序仿真的区别是,综合后仿真仍然属于对设计中逻辑功能的模拟测试,仿真的结果不包括器件的硬件特性,如延时特性,而时序仿真是对硬件特性的仿真,不仅包括逻辑功能的模拟测试,还包括门的延迟信息,与实际硬件运行的结果非常接近,可以得到精确的时序仿真结果。

在Active-HDL软件中这三种仿真均可以进行,Active-HDL软件本身提供的是功能仿真,当Active-HDL调用指定的逻辑综合工具,把设计进行综合后,就可以进行综合后仿真,当Active-HDL 调用指定的布局布线工具,把设计进行布局布线后,就可以进行时序仿真。

3  以RAM 为例说明Active - HDL软件的特点及内存的描述和仿真方法

RAM的设计我们采用Active - HDL 软件的第一种输入方法- - 硬件描述语言输入(HDE) 来实现,图2 为RAM的Verilog HDL 源程序。此RAM 的Verilog HDL 源程序描述的硬件电路的端口定义为: data为8 位三态数据总线, addr为8 位地址总线输入, read为RAM读信号输入,write为RAM 写信号输入。

图2  RAM 的Verilog HDL 源程序

此RAM 的读写控制时序为: 当read (读信号) 为低电平时,在write (写信号) 的上升沿到来时,数据总线( data) 上的数据按地址线(addr) 给出的地址写入相应的RAM 单元,当read (读信号) 为高电平,且write (写信号) 保持不变(低电平或高电平均可) 时,在地址总线上送入不同的地址,就可以把RAM 中相应地址的数据读到数据总线上,这样就完成了RAM 的读写操作。当硬件描述程序编写完成且编译通过后,就要进行仿真,以验证程序的正确性,测试程序的初始化定义和调用可由软件自动生成(Active -HDL 软件仿真提供的特有功能,在后面有详细介绍) ,我们只需要填写激励向量就可以,图3 为RAM 的测试程序( test bench) 中的激励向量部分,我们将在后面的例子中详细介绍整个测试程序的编写法。

图3  RAM 的测试程序(test bench)

此测试程序的激励向量是用initial (初始化语句) 语句来编写的,第一个repeat 循环向RAM 中写入32 组数据,第二个repeat 循环从RAM 的相应地址读32 组数据到数据总线上。图4 为RAM 的仿真波形,可以看到当read(读信号) 为低电平时,在write (写信号) 的上升沿把数据总线的数据按addr 给出的相应地址写入RAM ;当read (读信号) 为高电平,write (写信号) 保持不变(低电平或高电平均可,这里设定为低电平) ,在地址线送入不同的地址,把RAM 中相应
地址的数据读到数据总线上。

图4  RAM 的仿真波形

Active - HDL 软件还可以很方便的查看模拟内存(RAM) 的读写情况,在仿真时,计算机分配实际的内存来模拟RAM ,分配内存的大小与所定义RAM 的大小相同。图5为查看模拟内存中写入数据的情况,并且地址和数据可以选择以十进制、十六进制、十进制、二进制显示,这给调试程序带来很大方便。本设计的仿真中,只写入了32 组数据,并且写入的数据值和存入的地址值相同,即在00~1F地址中,相应写入了00~1F数据。

图5  查看模拟内存中写入的数据


[1] [2]  下一页



相关文章
· DGPS原理以及GPS系统的特点知识介绍[134]
· CMOS集成电路的性能及特点[158]
· 详解嵌入式系统[316]
· CPLD在合成孔径雷达目标模拟视频板设计中的应用[78]
· ADμC702x系列MicroConverter的特点与应用[157]
热门评论排行
·VHDL设计中电路简化问题的
·ARM嵌入式系统基础教程(N
·江苏嵌入式Linux教育培训
·ARM处理器应用开发4步骤
·锐极LINUX驱动培训班定于

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
七零一所发布恶劣环境角度传感器
德州仪器推出四款最新配电开关
Altium设定全新三维PCB设计性
飞思卡尔进军上网本市场 推
08年11月实际芯片销售额创新低
节能环保备受关注 半导体照
半导体产业最终将存活并将再次蓬勃发展
电子元件业御寒过冬 静待行
台湾当局拨款60亿美元援助DRAM厂
Vishay Silico
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
[推荐]ARM开发板,非常适合...
[推荐]DSP2812开发板+...
[推荐]DSP2812开发板+...
超低价专业PCB/电路板打样 ...
超低价专业PCB/电路板打样 ...
PCB/电路板打样...
[原创]北京金鼎旺提供 23...
[原创]北京金鼎旺提供:RS4...
[原创]北京金鼎旺提供:Mod...
北京金鼎旺:在某电线电缆厂交联...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网