在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
楼主: weijiaming

[原创] 大家好,我是《Verilog编程艺术》的作者,欢迎大家的反馈和提问

[复制链接]
发表于 2014-4-7 19:19:06 | 显示全部楼层
建议送本书给我,我可以反馈你我的看法。。。
发表于 2014-4-8 11:56:16 | 显示全部楼层
语法以外的话题是我感兴趣的,高级设计。我没看到过其他书讨论书写文档,从名称上来我对此有兴趣。是讨论把如何把程序逻辑用WORD等软件用日常语言和流程图呈现出来吗?
发表于 2014-4-8 22:18:20 | 显示全部楼层
稍微介绍一下啊,看看有没有大家感兴趣的点
不然谁花那么多钱去买一本可能用不上的书
发表于 2014-4-9 12:17:03 | 显示全部楼层
给个电子版吧,印刷板的不方便。
发表于 2014-4-9 13:09:24 | 显示全部楼层
看了下介绍,感觉作者写的verilog说很另类,明天买一本来看看
发表于 2014-4-9 13:29:01 | 显示全部楼层
书名很霸气呀.
发表于 2014-4-9 22:45:46 | 显示全部楼层
很不错,谢谢
发表于 2014-4-9 23:58:49 | 显示全部楼层
看了一下不错
 楼主| 发表于 2014-4-10 21:17:34 | 显示全部楼层
本帖最后由 weijiaming 于 2014-4-10 22:14 编辑

序          言

Verilog 是一种硬件描述语言(Hardware Description Language,HDL),是一种以文本形式描述数字系统硬件结构和行为的语言,可以在多个抽象层次上(从开关级到算法级)为数字设计建模。Verilog提供了一套功能强大的原语,其中包括逻辑门(Gate)和用户定义原语(UDP),还提供范围宽广的语言结构,不但可以为硬件的并发行为建模,也可以为硬件的时序特性和电路结构建模。Verilog具有下述这些描述硬件的能力:行为特性、数据流特性、结构组成、监控响应和验证能力。

Verilog HDL的发展历史如下:
1. 1983年,GDA(Gateway Design Automation)公司的Philip Moorby首创Verilog语言。Moorby后来成为Verilog HDL-XL的主要设计者和Cadence公司的第一合伙人。
2. 1984年,Moorby设计出第一个用于Verilog仿真的EDA工具。
3. 1986年,Moorby提出用于快速门级仿真的XL算法。随着Verilog-XL的成功,Verilog得到迅速发展。
4. 1987年,Synonsys公司开始把Verilog作为综合工具的输入。
5. 1989年,Cadence公司收购GDA公司,Verilog成为Cadence公司的私有财产。
6. 1990年,Cadence公司公开发布Verilog。随后成立的OVI(Open Verilog HDL International)负责Verilog的发展,制定标准。
7. 1993年,几乎所有的ASIC厂商都开始支持Verilog,并且认为Verilog-XL是最好的仿真器。同时,OVI推出Verilog-2.0规范,并把它提交给IEEE。
8. 1995年,IEEE发布Verilog的标准IEEE1364-1995。
9. 2001年,IEEE发布Verilog的标准IEEE1364-2001,增加了一些新特性,但是验证能力和建模能力依然较弱。
10. 2005年,IEEE发布Verilog的标准IEEE1364-2005,只是对Verilog-2001做一些小的修订。
11. 2005年,IEEE发布SystemVerilog的标准IEEE1800-2005,极大地提高了验证能力和建模能力。
12. 2009年,IEEE发布SystemVerilog的标准IEEE1800-2009,它把SystemVerilog和Verilog合并到一个标准中。
13. 2012年,IEEE发布SystemVerilog的标准IEEE1800-2012。

有的工程师可能觉得既然Verilog已经进化到SystemVerilog,那么就干脆直接去学习SystemVerilog吧。其实Verilog和SystemVerilog之间的关系就如同C和C++之间的关系,虽然C++很好,但是C现在还是被广泛地使用,包含各种操作系统和各种应用软件,同样Verilog还是被广泛地在设计中使用,大量的系统和IP还是用Verilog写成。另外,当我们清楚地理解Verilog的语言特性之后,我们可以更好地学习SystemVerilog,例如,为什么要在SystemVerilog中增加unique case和 priority case?为什么要增加always_comb、always_ff和always_latch?由于篇幅所限,本书的重点在于Verilog编程,对SystemVerilog将只简单地介绍一下它的特点。

Verilog语言发展很快,相应的EDA工具发展也很快,但是在Verilog编程上还存在很多的问题:
1. Verilog的编码风格多样,工程师之间的风格不统一,而且某些工程师的风格很不好,导致在代码的整洁度、可读性、可重用性上有很大欠缺。
2. Verilog的语法比较自由,在某些方面存在易混淆和易出错的地方,导致竞争条件,导致前后仿真不一致。
3. 很多工程师还局限在Verilog-1995上,没有考虑使用Verilog-2001的新特性,导致啰嗦冗余的代码。
4. 很多工程师对Verilog的某些语言元素没有充分地理解,可能存在错误使用的情况,导致设计失败。
5. 很多工程师对可配置和可重用的设计不够重视,导致设计难以维护、难以移植,导致设计成为“一锤子的买卖”。
6. 对于常用设计中的时钟生成和复位设计,缺少讨论,事实上这是我们需要高度关注的地方。
7. 对于验证,有些工程师或者对其不够重视,或者存在概念上的偏差,或者存在设计上的误解。
 楼主| 发表于 2014-4-10 21:38:38 | 显示全部楼层
本帖最后由 weijiaming 于 2014-4-10 22:13 编辑

前          言

本书来源于实际工程的设计,是从工程设计方面对Verilog编程的反馈。本书既包含作者对Verilog编程规范的总结,也包含作者对多年工程设计的经验总结。

本书更加注重Verilog编程的方法论和实用性,深入地探讨编码风格、语言特性、简洁高效和时钟复位等实际问题,深入探讨如何避免使用易混淆和易错误的语句,如何避免前后仿真不一致,如何充分发挥Verilog-2001的特性。本书主要分为以下几大部分:
1.  开发原则:探讨高效开发的原则、开发的组织管理、开发工具的使用和切实可行的编码风格等。作者对开发的原则、管理、工具和风格做了详细的介绍,强调只有把它们有机地结合在一起,我们才能做出好的设计。作者对各种编码风格(书本上的和网上的,好的和差的)做了较为详尽的总结,强调只有在好的编码风格约束下,我们才能写出美的Verilog程序。
2.  语言特性:探讨Verilog语言的特性,重点在Verilog-2001标准、always语句、case语句、task和function、循环语句、调度和赋值等。作者对Verilog-1995和Verilog-2001做了对比,探讨如何发挥Verilog-2001的新特性,如何用其编写出简洁的代码。作者对某些语言元素做了详细的说明,例如signed应用、loop语句、disable语句、task和function等。作者对Verilog中各种容易混淆和错误的地方(例如,敏感列表、case语句、静态函数等)做了详细的说明,探讨如何避免混淆和出错,探讨如何避免前后仿真不一致。作者对赋值和调度做了详细的探讨,因为它们是理解仿真执行和避免竞争条件的关键。
3.  书写文档:探讨如何写出优秀的应用文档和设计文档,并以GPIO文档为实例。作者强调Verilog编程只是设计的一部分,写出优秀的文档也是非常重要的。
4.  高级设计:探讨IP使用、代码优化、状态机设计、可配置设计和可测性设计,并给出大量的示例代码。作者在此介绍IP分类、选择和使用,介绍几种优化代码的方法,介绍状态机的分类和如何编写出强壮的状态机,介绍可测性设计的方法。作者着重地探讨可配置设计的实现方法,并用不同例子说明这些实现方法。
5.  时钟复位:探讨异步设计、亚稳态、时钟生成和复位设计。作者在此探讨异步设计中的亚稳态和对应的解决方法,探讨时钟生成的方法和实际例子,探讨同步复位、异步复位、复位同步器、复位分布树等问题。
6.  验证之路:探讨整洁验证、验证方法和验证环境。作者对验证方法做了一些介绍,探讨验证中可能遇到的问题(例如,网表验证、灵活验证等),并以实际例子说明如何搭建验证环境。
7.  其他介绍:介绍SystemVerilog的特点,介绍相对于Verilog的增强,还对VMM、OVM和UVM做了对比。作者强调为了加强我们的设计和验证,我们必须要从Verilog过渡到SystemVerilog。

本书参考并引用了著名的Verilog专家Cliff Cummings写的一些论文,这些论文探讨了我们在设计中可能遇到的各种问题和相应的解决办法,探讨了如何写出简洁严谨一致的Verilog代码,作者在此向他表示致敬。如果读者对原文感兴趣,可以到http://www.sunburst-design.com下载这些论文,非常值得一读。

另外,作者在编写本书的时候,充分地考虑了阅读的友好性,直接用1、2、3、......列出来各种特性和要点,而且特地在一些地方增加了空行以便于阅读,总之要让人看得舒服,看得明白。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-19 14:56 , Processed in 0.027910 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表