sheldon_COD

回归本源--自然科学

导航

重新认识Verilog HDL

Posted on 2013-05-27 18:23  sheldon_COD  阅读(881)  评论(0编辑  收藏  举报

   从大学三年级在老师的带领下,懵懂的我好奇的认识了人生中的第一种硬件语言Verilog HDL。正热衷于DOTA6.3X系列的我们,经常把它念做"Warlock"(曾经的中路三霸),久而久之,好感倍增。加之verilog HDL诸多语法类似于C,所以上手还是比较“快”,配合相对全面的modelsim教程,完成了书本上的入门例子。当时天真的以为硬件设计就是原理图中“搭积木”和版图中“连连看”(做硬件的朋友勿喷,后来工作中发现当时的天真),所以呢,把verilog HDL当作软件语言学习,经常添加display()函数,打印一堆堆输出结果,看到输出结果里有#xxx,内心无比满足;而对直观化的波形图几乎不关注,毕竟人脑不擅于处理并行加连续的数据。到此为止,第一次与verilog HDL的邂逅到此结束 。

   大学时光之快,转眼间就到了毕设的时刻。有幸跟谁一位博士后进行毕设,题目为BIST。当时头大啊,感觉其他同学都选设计,起码可以演示个小产品;而我,苦逼的游走于design compiler,matlab,modelsim,A开头的IC测试软件(好像是cadence的)。再一次与verilog HDL相聚,在两位研究生生的引导下,对verilog HDL的可综合性有了一定的认识。在此感谢两位师兄,当时一面吐槽博士后,一面熟悉着verilog HDL, 渐渐的走出了所谓的软思想的歧途。当然这次相聚最高潮的部分,是毕设结束时,IC模拟界的大牛当时玩笑似的问了我们一句关于verilog HDL和C等的区别时,我们巴拉巴拉一堆,结果他笑着说了三个字:并行性。当时仿若得到点化一般激动,回到宿舍google,baidu,窥探到verilog HDL的其他部位:层积事件列,event,阻塞非阻塞等。
 

  工作之后,当时看到其他部门的同事使用XILINX的CPLD,开发功能完善的工具板。有幸听他做了报告,发现用verilogHDL写出的玩意导入到CPLD里,不仅仅是与非,加法等简单的逻辑处理,还能实现些复杂的功能。当时怀着无比崇拜的心情,向那位同事请教,了解到FSM的概念--所谓的并行模拟串行及VGA接口等概念。介于当时的工作不以此为主,BOSS不给提供板子,而且上班和宿舍都无法上外网,所以自己买了套XX人生的开发板(altera的飓风II),然后跑到网吧下了一堆veirlog FPGA等关键字的书籍,回到宿舍里跑跑例程;通过特殊渠道(公司邮箱)将电子书发到公司的电脑上偷偷看;不过,到现在,下来的书还没有看完。

  由于个人原因,更换了工作地点和单位,来到另一家公司。上来就可以玩FPGA(ACTEL 的smartfusion系列)。不过说出来惭愧,当时其实好多人都有机会,而我是因为自己买了开发板,跑过几个demo,可以和领导忽悠忽悠几句,获得了玩FPGA的机会。当时或者说直到现在,actel在网络上还是冷门,资料不多,而且多是E文。尽管E文六级考过,考鸭,TOEIC都考了,还是有点发憷--好多概念翻译成汉语我也不熟悉...幸运的是,通过google搜到了不知是美国还是澳大利亚的一所大学的教学页面,里面采用的就是我用的开发板,无比的兴奋。此间的收获大致如下:接口协议的书写,跨时钟域的数据传输,片上总线的概念等。当然,玩的最后结果是演示,做了个APB接口的LCD module,娱乐娱乐就OK,毕竟鄙人C语言几乎是小白,什么结构体或者*类的都魔免。再之后,就陆续接触xilinx的开发板,spartan3e的,virtex5的,也都是娱乐娱乐做点小玩意。关于和verilog HDL这次想会,发现自己书写的模块不在那么像他舅舅C了,越来越像他爸了,可综合性越来越强了;但是,但是,把他妈妈忘了,testbench写起来很吃力,除了会initial等,force,event,for等我统统不敢用,task和function看到那么多的争议,我写模块时,就当他们不可综合了,免得麻烦;经常搭积木和连连看的人,不太喜欢敲代码。

 

   唠唠叨叨那么久,现如今,处在工作与上学的空档期,打算再次与老朋友会一会。打算基于《The verilog Hardware Description》《FSM Based digital design useing Verilog HDL》 《verilog HDL synthesis -- a practical primer》与A家,X家的一些NOTES  和verilog HDL 重新开始。 

{尽管system verilog、system C、xilinx 的HLS等已经初具规模,身为80后的老青年还是继续陪伴曾经的老伙伴吧!}