今天我们重点谈一谈FPGA用什么编程语言。
经常看到不少人在论坛里发问,FPGA是不是用C语言开发的?国外有些公司专注于开发解决编译器这方面问题,目的让其能够达到用C语言替代VHDL语言的目的,也开发出了一些支持用c语言对FPGA进行编程的开发工具。但在使用多的FPGA编程语言还是verilog和VHDL语言,一般不使用C语言进行编程。
FPGA可以用VHDL语言和VERILOG语言进行编程开发,目前欧洲前者用的多,而,美国,日本则更多的使用后者,而且后者和C语言比较的接近,如果你对C比较熟悉的话,可以选择使用VerilogHDL语言,基本语法和C非常相似,而且也非常灵活,VHDL语言则相对来说比较严谨。
其实两种语言的差别并不大,他们的描述能力也是类似的。掌握其中一种语言以后,可以通过短期的学习,较快的学会另一种语言。选择何种语言主要还是看周围人群的使用习惯,这样可以方便日后的学习交流。当然,如果您是专用集成电路(ASIC)设计人员,则必须首先掌握verilog,因为在IC设计领域,90%以上的公司都是采用verilog进行IC设计。对于PLD/FPGA设计者而言,两种语言可以自由选择。
设计人员通过计算机对HDL语言进行逻辑仿真和逻辑综合,方便高效地设计数字电路及其产品。
相对而言,欧洲方面多用VHDL,特点是逻辑严谨、慎密。而verilog则是美国用的较多,特点是语法上更灵活一些。两者在语法构成方面都差别不大,一般都是通用的。VHDL编写的程序可能看上去会臃肿一些但是对于后续的调试和修改会更方便一些。
FPGA用什么编程语言呢?verilog和VHDL,这里给初学者的建议是:从VHDL入手,进阶兼顾Verlilog,相互对比着学习,更有利于程序的理解和编写。
fpga的作用:
FPGA具有可编程的延迟数字单元,在通信系统和各类电子设备中有着比较广泛的应用,比如同步通信系统,时间数值化系统等,主要的设计方法包括数控延迟线法,存储器法,计数器法等,其中存储器法主要是利用FPGA的RAM或者FIFO实现的。
利用FPGA对SD卡相关数据进行读写可以依据具体算法的需求低FPGA芯片开展编程,更加实际情况的变化实现读写操作的不断更新。这种模式之下只需要利用原有的芯片便可以实现对SD卡的有效控制,明显降低了系统的成本。
通常情况下,通信行业综合考虑成本以及运营等各方面的因素,在终端设备数量比较多的位置,FPGA的用量比较大,基站最适合使用FPGA,基站几乎每一块板子都需要使用FPGA芯片,而且型号比较高端,可以处理复杂的物理协议,实现逻辑控制。