veriloghdl与vhdl_verilog基本语法

veriloghdl与vhdl_verilog基本语法 硬件描述语言HDL(HardwareDescribeLanguage)     HDL概述     随着EDA技术的发展,使用硬件语言设计PLD/FPGA成为一种趋势。目前最主要的硬件描述语言是VHDL和VerilogHDL。VHDL发展的显纾锓ㄑ细瘢鳹erilogHDL是在C语言的基础上发展起来的一种硬件描述语言,语法较自由。VHDL和VerilogHDL两者相比

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

 

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

     
HDL概述
      随着EDA技术的发展,使用硬件语言设计PLD/FPGA成为一种趋势。目前最主要的硬件描述语言是
VHDL和Verilog HDL。
VHDL发展的显纾 锓ㄑ细瘢 鳹erilog 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.文本编辑:用任何文本编辑器都可以进行,也可以用专用的HDL编辑环境。通常
VHDL文件保存为.vhd文件,Verilog文件保存为.v文件

      2.功能仿真:将文件调入HDL仿真软件进行功能仿真,检查逻辑功能是否正确(也叫前仿真,对简单的设计可以跳过这一步,只在布线完成以后,进行时序仿真)

      3.逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式和信号的连接关系。逻辑综合软件会生成.edf(edif)的EDA工业标准文件。

      4.布局布线:将.edf文件调入PLD厂家提供的软件中进行布线,即把设计好的逻辑安放到PLD/FPGA内

      5.时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序。(也叫后仿真)

      6.编程下载:确认仿真无误后,将文件下载到芯片中

      通常以上过程可以都在PLD/FPGA厂家提供的开发工具(如MAXPLUSII,Foundation,ISE)中完成,但许多集成的PLD开发软件只支持
VHDL/Verilog的子集,可能造成少数语法不能编译,如果采用专用HDL工具分开执行,效果会更好,否则这么多出售专用HDL开发工具的公司就没有存在的理由了。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/191066.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • ssh登录linux

    ssh登录linux2018-9-6上一篇提到用ssh登录centos好处很多,许多linux系统管理员都在用ssh。在windows下ssh客户端主要有puTTY、Xshell、secureCRT、sshsecureshell。linux下有openssh,这是个命令行工具。这篇主要将puTTY和Xshell的使用。puTTYpuTTY是开源免费软件。放恶意软件,建意到官网下载,或者百度、360、搜…

    2022年10月28日
  • php 覆盖率_java代码覆盖率工具

    php 覆盖率_java代码覆盖率工具简介:最近研究了PHP代码覆盖率的测试,后面发现了github一个开源项目(https://github.com/sebastianbergmann/php-code-coverage),对PHP代码覆盖率测试已经做得很好了,所以拿来直接用,这里总结怎么用这个开源项目。环境搭建一、安装php环境1、php要选高版本,亲测7.27可行,5.5就不行二、安装xdebug这个直接网上搜怎么安…

  • 构建平衡二叉树「建议收藏」

    构建平衡二叉树「建议收藏」构建平衡二叉树

  • 空间回归与地理加权_时空地理加权回归对样本量要求

    空间回归与地理加权_时空地理加权回归对样本量要求实际上,除了辅助表以外,GWR还会生成一份全要素的表。对回归的每一个样本都给出相应的信息,今天就来看看这些信息代表了什么内容。生成的新的要素类字段信息如下:实际上,Coeffcient(系数)和StandardErrorConffcient(标准差系数)会对每一个解释变量都给出一个值,所以可以看成是两类值,下面把各个值的情况和意义做个简单描述:其中ArcGIS

  • STM32独立看门狗实验

    STM32独立看门狗实验一为什么需要看门狗?在MCU微型计算机系统中,MCU运行程序很容易受到外界电磁场的干扰,从而造成程序运行错误甚至发生跑飞现象,从而陷入死循环,程序的正常运行被打乱,从而造成不可预料的严重后果,于是人们就设计了一款用于实时监测计算机运行状态的芯片,我们就将其称为“看门狗(WatchDog)”。二看门狗的作用看门狗在我们程序正常工作的时候是不工作的,也就是说他根本没有任何作用,只有在单片…

  • 智能化让商业地产迎来新一轮黄金期

    智能化让商业地产迎来新一轮黄金期

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号