博文目录


写在前面

  • 个人微信公众号: FPGA LAB
  • ​​个人博客首页​​


  • 正文

    对于FPGA或者ASIC的初学者来说,选择哪种语言貌似应该根据自身的需求而定,例如实验室项目需要使用哪种语言,或者实验室师兄师姐使用了哪种语言,或者导师推荐你学习哪种原因,这都是硬性需求了,因为你需要完成项目的接手,所以必须根据要求而来!

    常识讨论

    但如果你没有这些顾虑呢?该如何做出选择?

    这时,您应该注意几点。

  • VHDL是强类型的。这使初学者更难犯错误,因为编译器不允许您编写有效的代码。Verilog是弱类型的。它允许您编写错误的代码,但更为简洁。
  • Verilog看起来更像C之类的软件语言。这使熟悉C的人更容易阅读和理解Verilog的工作。
  • VHDL需要大量输入。Verilog通常只需要较少的代码即可完成相同的操作。
  • VHDL是非常确定的,因为在某些情况下Verilog是不确定的。

  • 当然,这里并不是评论Verilog或者VHDL的优劣的,对于语言的选择是根据需求而定的!

    有人喜欢用Verilog,自然喜欢它的优点,也能包它的缺点,VHDL也是如此!

    例如1995年OVI主题演讲时,时任Cadence首席执行官的Joe Costello,认为:


    VHDL is one of the biggest mistakes the Electronics Design Automation industry has ever made. A $400 million mistake. Wouldn’t this money have been better spent on handling sub-micron design, testability issues, or even a new type of HDL that had significantly more capabilities than what Verilog and VHDL offer today?


    翻译过来就是:

    VHDL是电子设计自动化行业有史以来最大的错误之一。4亿美元的错误。这笔钱不会花在处理亚微米设计,可测试性问题,甚至是比Verilog和VHDL提供的功能明显更多的新型HDL上吗?

    这明显是对VHDL的负面评论!

    这也很好理解:在那些年里,Verilog和VHDL是主要的HDL竞争者,而Cadence主导了Verilog仿真市场。

    也有一些反对Verilog的声音,大概是认为:

    一方面,如果仅存Verilog,那么是形成垄断,垄断并不符合行业及其客户的普遍利益。有了垄断,就没有竞争。当竞争消失时,创新也会消失。

    另一方面,诟病Verilog的编程陷阱?例如非阻塞赋值等等!

    对于事情的好坏,声音总是很多,都是利益相关,这与我们的主题无关,到此为止!

    数据分析

    下面我们来从更多的数据方面看看Verilog还有VHDL的对比情况:

    谷歌网页搜索热度​:

    • 全球

    FPGA/ASIC初学者应该学习Verilog还是VHDL?_微信公众号

    红色代表Verilog,蓝色代表VHDL,可以明显看出Verilog从追赶到反超的这样一个事实(还有一点有趣的是,很多年龄较大的领导或者导师更熟悉VHDL,和他们所处的年代有关!),我们把时间线拉近感受一下:

    FPGA/ASIC初学者应该学习Verilog还是VHDL?_参考资料_02

    从2018年初至今,Verilog的搜索热度还是高于VHDL,这是一个趋势!

    • 中国

    上面是全球的情况,那么对于中国来说呢?

    FPGA/ASIC初学者应该学习Verilog还是VHDL?_微信公众号_03

    可见,大概2008年以前还平分秋色,但是之后,Verilog热度越来越大于VHDL!

    我们缩短时间轴感受一下:

    FPGA/ASIC初学者应该学习Verilog还是VHDL?_参考资料_04

    从平均值也能看出Verilog热度高于VHDL!

    如果从全球区域使用情况来看:

    可见,在中国、美国、俄罗斯以及加拿大使用Verilog的更多,而欧洲国家以及巴西、澳大利亚使用VHDL更多!

    中国的情况更加突出,Verilog对于VHDL的热度更明显:

    美国情况类似:

    而俄罗斯以及加拿大比例更小一些:

    写在最后

    即使开头所说,根据实验室的情况而定,但是有的实验室就有这种情况,例如导师更熟悉VHDL,但是实验室的师兄师姐都是使用Verilog,学校开课也是Verilog居多,就像我一样,处于这种情况,我是如何做出选择的呢?

    考虑到语言的难易程度,Verilog更容易掌握!

    考虑到国内大势,Verilog更受欢迎!

    等等等,我还是选择Verilog,但是VHDL不求会写,但是基本的还是要能看懂!有了Verilog的基础,在基本了解下VHDL语言,能看基本不是问题了!


    参考资料


    ​参考资料1​​​​​

    ​参考资料2​

    ​​​参考资料3​​​​​

    ​参考资料4​


    交个朋友