学习一样东西该怎么入手呢??一定是要从其背景开始。因为只有了解其背景,知道他的历史,知道他所属的范畴,才能够知道产生他的原因,以及他的生存空间。在他的大背景变化的时候,他一定也会变化发展,进化成另一种形态。这样做既能让我们掌握关于他的知识,又能跟上技术发展的步伐。这可能就是所谓的“前馈”吧。
作为一名本科生,我的知识结构必定不太完善,请各位看官理解理解!!也望各位网友批评指正!
好,现在进入正题。Verilog是用来描述数字电路的编程语言。一切使用数字电路搭建的电路理论上都可以使用Verilog建模。Verilog他出现于1984年,是个英国佬发明的,为的就是实现电路设计的自动化。
先扯远点,人类总是朝着越来越高效的道路前进,生产力在其间大增。这样做的意义让人类越来越懒,特别是现在的执行机构越来越智能,我们恨不得将所有的事情交由这些机器来搞定。这样做固然很好,但是为了命令计算机等智能机器,工程师们要花许多的时间制定各种标准。编码使得信息数字化和标准化。但是光是编出的码不适合人直接阅读和修改,于是人们开始抽象高级语言,通过编译器将人类方便识别的高级语言转化为机器可识别的代码化语言,最终使用执行机构将指令在现实空间中予以表现。Verilog和C语言都是基于这样的应用,现在的很多高科技含量的技术也就是想找到最简单的人际接口,如现在流行的人脸识别、语音识别等,都是在不需要接触计算机(说详细点应该是电子科学)的前提下就可以以生活上常见的方式控制高科技工具。一方面,这让行业精英可以在前人的基础上建立更加抽象和实用的便民技术,可以让人们在不知道任何细节的情况下轻松的操控它们;另一方面,对于学习这个领域的人,只有不断从表面现象钻研下去,一步步地将整个技术的实现方式搞懂,才能最终掌握核心科技。这让我想起了屈原的“吾将上下而求索”。对于自然界的探究跟这个过程是如此的相似!!读者可以自行分析。
计算机是人工智能的最基本体现,理论上我们可以使用计算机代替人类做任何事情(这个争议可能有点大)。使用Verilog的背景就是在当今集成电路越来越复杂的前提下产生的。原来没有电子设计自动化的时代,工程师们设计电路往往靠手绘框图,要对某个电路进行验证只能将这个电路的实物先造出来,然后再搭好测试电路,逐条地对电路进行验证。这个流程如果顺利那么可能十天半个月就可以走通,得到的样品就可以量产。但是,如果设计的结果有问题,不说打回重做了,就是找到问题都是很费时又没劲的一件事。浪费的是最有生产力的工程师的宝贵时间啊!对人类来说都是一场灾难!于是乎,大家就想这种劳动有没有方法让计算机帮忙呢?答案是肯定的。于是硬件描述语言(HDL)就在这种情况下诞生了。HDL说白了就是用计算机和人类都可以接受的语言来描述硬件。在概念提出的初期,大致是有很多的语言种类啦,大家抛出来给众工程师使用。最后,在这场战争中就剩下了两家:Verilog和VHDL。
不清楚为什么VHDL和Verilog会得到最后的胜利,但是在这里做下推断:首先,我感觉是他们凝聚力较强。Verilog的代码重用性可以做得很好,现在IP核遍地开花是可以证明的(虽然IP核也有VHDL的),用过C的人都知道,Verilog简直就像C的侄子。在很多Verilog系统调用中可以看出与C有着亲密的血缘关系,连他们注释的风格都是一样的,这怎么不受一般具有C语言编程经验的工程师们的亲睐呢?VHDL的代码重用性应该比Verilog做得更好,他使用了类似C++中命名空间的做法,将一大堆标准的模块封装在一起,使用起来很方便,不过这语言生疼生疼的,我也没有研究多少,而且一般是以Verilog的视角看待它,也就是将他作为竞争对手啦。第二个重要的原因我想可能是他们在IEEE中也有自己的标准,这样成了全世界统一的语言。也就是说使用两种语言会得到全世界人民的支持,那我们也只好用他了啊。
Verilog现在的强敌VHDL有着比Verilog更强大的对系统建模的能力(这句话是从网络中听闻的,我们老师也这样说),面对大型的工程建模Verilog力量略显不足。于是现在Verilog进行了升级,先是标准从原来的1995升到2001,再有了新的进化形态—SystemVerilog,那都是后话了,不过对于我们日常应用Verilog还是可以胜任的。
|