集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 1019|回复: 2

VHDL和Verilog的对比

[复制链接]
d643189658 发表于 2017-8-11 16:12:30 | 显示全部楼层 |阅读模式
VHDL和Verilog的对比,和共同遵守的原则
2017-08-07 OpenHW开源硬件社区
当前最流行的硬件设计语言有两种,即 VHDL 与 Verilog HDL,两者各有优劣,也各有相当多的拥护者。VHDL 语言由美国军方所推出,最早通过国际电机工程师学会(IEEE)的标准,在北美及欧洲应用非常普遍。而 Verilog HDL 语言则由 Gateway 公司提出,这家公司辗转被Cadence所购并,并得到Synopsys的支持。在得到这两大 EDA 公司的支持后,也随后通过了 IEEE 标准,在美国、日本及中国台湾地区使用非常普遍。

我们把这两种语言具体比较下:

01
1.整体结构


点评:
两者结构基本相似,并行语句的种类也类似;
VHDL语言需要进行大量说明,程序通常比较长;
Verilog HDL通常不进行说明,或只进行非常简短的说明,程序比较简短。

02
2.数据对象及类型

VHDL   
常量  信号   变量   9种预定义类型   各类用户定义类型
可描述各类不同的量   
必须进行类型说明
运算时必须考虑类型的一致性和适用性

Verilog HDL   
常量: 数量,参量
变量:网络型   寄存器型
类型种类少
运算时所受的约束少
03
3.运算符号

运算主要分为3类  : 算术运算  逻辑运算  关系运算  

算术运算   
VHDL中有10种 但很多都不能进行综合,只能用于行为描述
Verilog HDL中只有能够综合的5种

逻辑运算   
VHDL中 有常用的6种,均用字符形式表达
Verilog HDL中有3类共14种,
分为一般逻辑运算,位逻辑运算,缩减逻辑运算

关系运算   
VHDL中有6种
Verilog HDL中有2类共8种,对比增加了全等和不全等(用于对不定态比较)。
除了以上3类运算外,VHDL中还有连接运算,Verilog HDL中还有连接运算、移位运算和条件运算。

点评:
VHDL的运算划分比较抽象,适应面较广     
Verilog HDL的运算划分比较具体,对逻辑代数反映更细致一些。

04
4.语句

两种语言的语句都分为并行语句和顺序语句,并行语句在主程序中使用,顺序语句只能在子结构中使用;
并行语句都分为3种形式:


5.子结构
function                         function   'define
procedure                      task

6.附加结构
library
package                         'include

7.典型程序对比:
8位4选1MUX

8位加法器


8位二进制加法计数器

序列信号发生器:kser

预先设计模块:8选1MUX:MUX8  控制输入a[2..0] 数据输入d[7..0] 数据输出y
3位2进制加法计数器:COUNTER3  时钟输入 clk  状态输出q[2..0]
设计要求:按照时钟节拍,由y端口循环顺序输出“11110101”序列信号



初学者往往头疼于选哪种入门合适。其实,随便选一种即可。最关键的是要养成良好的代码编写风格,在满足功能和性能目标的前提下,增强代码的可读性、可移植性。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| d643189658 发表于 2017-8-11 22:31:42 | 显示全部楼层
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-4-20 12:42 , Processed in 0.070985 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表