学习verilog,fpga中的一些疑问

来源:百度知道 编辑:UC知道 时间:2024/05/24 18:05:43
本人学习verilog的时间不是很久,但是有一个体会,HDL十分的枯燥,也十分的茫然,语法就是那么一点,没有c语言好用。但是有时候想用verilog打到c的效果真的不知从何下手,而且代码很容易一写就几百行。写着写着,自己都看晕了。比如说想写一个1602的驱动,这个在单片机上面用c语言十分的容易实现,但是在fpga上面就要感觉不知从何下手。

请高手指出我的见解的不当之处,指出学习这个东西的方法和具体步骤思路等。

以上只是本人由于学习不深才有的一写想法,请各位高手不要嘲笑,多多指点!

谢谢!

Verilog的定义是硬件描述语言,它跟C语言有本质的区别,C语言是一种在硬件上运行的语言,而Verilog是描述硬件的语言。当然,前者的硬件是微处理器和一些处理单元。
举个例子,比如说你写的一个1602的液晶驱动,你的最终目的是将它烧到FPGA芯片上使其能驱动这个设备,但是要注意,你烧到FPGA芯片上的不是你写的这个代码,而是经过编译器综合和布局布线以后的一个数字电路。
而你的在单片机上用C语言实现的另一个驱动,它的本质是软件,是经过编译链接以后可以在单片机上运行的程序,它不是电路,因为单片机是一个已经设计好的芯片,设计者已经将电路集成在了里面。
你所说的C语言比VERILOG好写,那是肯定的,因为VERILOG虽然语法少,但它要遵守许多的规定,以保证你综合出来的电路有更好的适用性和稳定性,而C语言语法复杂一点,但是它不用担心VERILOG这么多的问题。
我以上说的是本人理解的一些看法,有些地方有点绝对化,是为了通俗的给你讲一下,有不懂的给我发信息吧,还有多看一些这方面的书,学多了自然就知道了。

我觉得你是用verilog的时间不是很长,其实verilog有自己的不足之处,但它就是这样了,已经固定了,你如果要编fpga的话就一定要用到它,所以,我觉得就只好是习惯就好了,几百行的程序,呵呵,也就是要这样写的,不过也可以多去参考一下别人的程序,也许有时候在别人的程序里面找到了灵感了,也许也就不用写那么多行了,不过,我觉得,verilog已经很好了,学到vhdl的话,就更加郁闷了