设计自动化专区 首页 / 论坛 / 自由讨论 / 设计自动化专区
采用各种EDA软件可以缩短设计周期,减少设计成本;然而在这些工具的使用过程中也会存在着一定的困难和问题。欢迎您提出自己的看法和观点,与大家共同讨论。
发表新主题  收藏 打印 关注  推荐  推荐到我的小组 
楼主 问题: 选择VHDL还是verilog HDL?(ZT) 发布时间: 2006-3-17 上午9:59

作者: 又摘桃枝

等级: 黄金少侠

积分: 1871 分

发帖数: 99 次

网站总积分: 1871 分

发送消息

加为好友

查看用户的所有发言

硬件描述语言HDL(Hardware Describe Language)


HDL概述

随着EDA技术的发展,使用硬件语言设计PLD/FPGA成为一种趋势。目前最主要的硬件描述语言是VHDL和Verilog HDL。 VHDL发展的较早,语法严格,而Verilog HDL是在C语言的基础上发展起来的一种硬件描述语言,语法较自由。 VHDL和Verilog HDL两者相比,VHDL的书写规则比Verilog烦琐一些,但verilog自由的语法也容易让少数初学者出错。国外电子专业很多会在本科阶段教授VHDL,在研究生阶段教授verilog。从国内来看,VHDL的参考书很多,便于查找资料,而Verilog HDL的参考书相对较少,这给学习Verilog HDL带来一些困难。从EDA技术的发展上看,已出现用于CPLD/FPGA设计的硬件C语言编译软件,虽然还不成熟,应用极少,但它有可能会成为继VHDL和Verilog 之后,设计大规模CPLD/FPGA的又一种手段。



选择VHDL还是verilog HDL?

这是一个初学者最常见的问题。其实两种语言的差别并不大,他们的描述能力也是类似的。掌握其中一种语言以后,可以通过短期的学习,较快的学会另一种语言。选择何种语言主要还是看周围人群的使用习惯,这样可以方便日后的学习交流。当然,如果您是集成电路(ASIC)设计人员,则必须首先掌握verilog,因为在IC设计领域,90%以上的公司都是采用verilog进行IC设计。对于PLD/FPGA设计者而言,两种语言可以自由选择。



学习HDL的几点重要提示

1.了解HDL的可综合性问题:

HDL有两种用途:系统仿真和硬件实现。 如果程序只用于仿真,那么几乎所有的语法和编程方法都可以使用。但如果我们的程序是用于硬件实现(例如:用于FPGA设计),那么我们就必须保证程序“可综合”(程序的功能可以用硬件电路实现)。不可综合的HDL语句在软件综合时将被忽略或者报错。我们应当牢记一点:“所有的HDL描述都可以用于仿真,但不是所有的HDL描述都能用硬件实现。”

2. 用硬件电路设计思想来编写HDL:

学好HDL的关键是充分理解HDL语句和硬件电路的关系。 编写HDL,就是在描述一个电路,我们写完一段程序以后,应当对生成的电路有一些大体上的了解, 而不能用纯软件的设计思路来编写硬件描述语言。 要做到这一点,需要我们多实践,多思考,多总结。

3.语法掌握贵在精,不在多

30%的基本HDL语句就可以完成95%以上的电路设计,很多生僻的语句并不能被所有的综合软件所支持,在程序移植或者更换软件平台时,容易产生兼容性问题,也不利于其他人阅读和修改。建议多用心钻研常用语句,理解这些语句的硬件含义,这比多掌握几个新语法要有用的多。



HDL与原理图输入法的关系

HDL和传统的原理图输入方法的关系就好比是高级语言和汇编语言的关系。HDL的可移植性好,使用方便,但效率不如原理图;原理图输入的可控性好,效率高,比较直观,但设计大规模CPLD/FPGA时显得很烦琐,移植性差。在真正的PLD/FPGA设计中,通常建议采用原理图和HDL结合的方法来设计,适合用原理图的地方就用原理图,适合用HDL的地方就用HDL,并没有强制的规定。在最短的时间内,用自己最熟悉的工具设计出高效,稳定,符合设计要求的电路才是我们的最终目的。



HDL开发流程

用VHDL/VerilogHD语言开发PLD/FPGA的完整流程为:

1.文本编辑:用任何文本编辑器都可以进行,也可
引用 回复 鲜花 ( 0) 臭鸡蛋 ( 0)
第 1 楼 re 发布时间: 2006-3-18 下午8:00

作者: 柳吹风

等级: 学有小成

积分: 433 分

发帖数: 144 次

网站总积分: 433 分

发送消息

加为好友

查看用户的所有发言

随便学一种,最好学vhdl,因为关于哪个的书比verlig的多
引用 回复
鲜花 ( 0) 臭鸡蛋 ( 0)
第 2 楼 fpga 发布时间: 2006-3-20 上午10:06

作者: 赵鹏

等级: 初入江湖

积分: 142 分

发帖数: 21 次

网站总积分: 142 分

发送消息

加为好友

查看用户的所有发言

现在用C语言编译软件太常见了,fpga,51mcu,都可用C
引用 回复
鲜花 ( 0) 臭鸡蛋 ( 0)



快速回复
用户名:
游客null (您目前以游客身份发表,请登陆 | 注册)
标题: *
评论: *
验证码:  * 
维护专业、整洁的论坛环境需要您的参与,请及时举报违规帖子,如果举报属实,我们将给予相应的积分奖励。
谢谢您的热心参与!
返回设计自动化专区 | 返回自由讨论
本论坛仅陈述专家或个人观点,并不代表电子工程专辑网站立场。