【连载】【FPGA黑金开发板】Verilog HDL那些事儿--不是“编程”是“建模”(四)

声明:本文为原创作品,版权归akuei2及黑金动力社区共同所有,如需转载,请注明出处http://www.cnblogs.com/kingst/

P7302375_thumb

2.3 Verilog HDL 不是“编程”是“建模”

在初次接触Verilog HDL 语言的时候,网上很多朋友都说它和C语言很相似?但是对于这个问题,我真的头疼很久!如果说Verilog HDL 与 C语言不同,但是是什么地方不同,我却有说不出的感觉。

单片机是一种已经完成的硬件,但是单片机没有“灵魂”,c语言给单片机“灌输灵魂”,单片机才能舞动起来。c语言就是扮演这样的一个角色。不同的是,Verilog HDL语言是一种富有“形状”的语言,它可以描述单片机的任何部分。如UART资源,定时器资源等。

“建模”这一词是指,使用“硬件描述语言”去建立某个资源模块。如果说c语言可以使用“编程”一词,那么Verilog HDL语言使用“建模”这一词更适合不过了。

从理解上,C语言,我们可以使用“代码”的形式去理解“编程”,如:函数的概念,参数的概念,局部全局的概念等。但是“代码的形式”却完全不适合“Verilog HDL 语言”。 既然“代码的形式”不适合“Verilog HDL语言”,那么“Verilog HDL语言”又该用“什么”去看待?

前面我已经说过,“Verilog HDL语言”是一种富有“形状”的语言。Verilog HDL语言的“建模”更应该有形象和更有具体感。

如果以笔者的角度去了解“建模”......

笔者每次在设计之前,都喜欢将一个一个模块画在纸上,然后再使用连线的方式去完成一个设计。从这一点,我们可以知道笔者是从“图形”去完成设计的准备。换一句话说,笔者是以“形状”的形式作为设计的理解基础。

以“代码”的形式去理解 Verilog HDL 语言的设计,到底有多大问题?从网上的众多求救贴中,就可以理解这一点。笔者不是完全否定这样的理解形式,毕竟“代码”是语言的基础,而且建模的完整性,都需要“代码级”的微调。

笔者只想告诉一个事实而已。如果着手以“形状”去理解Verilog HDL语言,以“建模”去完成Verilog HDL 语言的设计。在感觉上Verilog HDL + FPGA是“可所触及”,是一种“实实在在”的感觉,不相等于“编程”时的那种“抽象感”。

“低级建模”中的“建模”,正如上面的内容所说。那么“低级”呢?“低级”这一词原本是指,最基本的也是最简单的。“低级建模”不过是笔者的建模习惯而已,或者说是笔者的“建模风格”而已。在笔者的心中 “低级建模”有“万丈高楼从地起”的意思。

接下来的章节都是“低级建模”的故事。一开始的“接触”,可能读者们会出现不适的感觉,情况如同初鸭下水。但是有一点可以肯定的是, 自从笔者了解“低级建模”以后,Verilog HDL的设计变得有趣起来了。

笔者相信读者也是一样的 ......

posted on 2010-08-29 11:50  FPGA黑金开发板  阅读(1817)  评论(0编辑  收藏  举报