什么是fpga编程?

上次,我详细介绍了FPGA是什么和优势 FPGA.. 超过 asics. 和微控制器。 FPGA没有,但可以通过硬件描述语言编程可重新配置的逻辑块和互连 verilog./ VHDL. 执行特定功能。

今天,我会展示实际的东西 FPGA. 编程是,如何开始使用FPGA编程和FPGA编程设计流程。 FPGA编程的差异和 软件编程 还将讨论。

什么是fpga编程?

1.什么是FPGA编程?


如上所述 FPGA.帖子,FPGA没有,但可重新配置的逻辑块(逻辑门,内存元素,DSP组件等)和互连。 FPGA.编程实际上(RE)配置FPGA 硬件描述语言 (Verilog / VHDL)连接这些逻辑 以它可以执行特定功能(加法器,乘法器,处理器,滤波器,分隔器等)的方式块和互连。 


2.什么是FPGA编程语言?


FPGA.编程语言通常称为硬件描述语言,因为它实际上用于描述或设计硬件。 这两种主要硬件描述语言是Verilog HDL和VHDL。 


verilog. =“验证” +“逻辑”最初由P. Moorby,P. Goel,C.-1创建。 Huang和D. 1984年的Harmke在逻辑模拟器中进行模型栅栏并进行仿真。 Verilog于1990年由Cadence获得,并于1995年成为IEEE标准1364。现在,Verilog通常用于设计和验证数字电路和模拟或混合信号电路。 

VHDL. 是VHSIC(非常高的集成电路)硬件描述语言最初由我们开发 国防部在20世纪80年代研究和开发非常高速集成电路。 VHDL于1987年成为IEEE标准1076.现在,VHDL主要用于模拟数字和模拟混合信号电路,如FPGA和ASIC。 

verilog. HDL类似于C编程语言,例如区分大小写,关键字,运营商等。 VHDL.类似于ADA 编程语言是因为它最初基于ADA构建。呈现Verilog和VHDL之间的区别 这里. 虽然HDLS(Verilog,VHDL)与HDL之间的语法有相似之处 软件编程 语言(C,ADA),FPGA编程与软件编程完全不同。 

3. FPGA编程和软件编程之间的关键差异是什么?


什么是fpga编程?

FPGA.编程和软件编程之间的显式差异是执行其指令的方式。 在术语中,执行指令的执行,在FPGA编程中的Verilog / VHDL指令大多并行地执行(VHDL中的verilog和可变分配之外,顺序执行软件编程(C,ADA等)中的指令(C,ADA等)。 。更重要的是, FPGA编程或FPGA设计是关于设计数字逻辑电路,以定义FPGA的行为,而软件编程关于执行一系列顺序指令以在软件中执行特定行为。 


当您开始FPGA编程时,您应该忘记软件编程中的编码行为。许多学生将它们在软件编程中的程序(用于循环,循环等)的方式复制到FPGA编程,以便在FPGA上设计和实现合成的数字电路。这是一个非常糟糕的FPGA编码行为。 

综合工具可能需要很长时间才能合成这种类型的代码甚至更糟糕,综合软件一直在综合,直到溢出的RAM的计算机,并且必须关闭软件并重新运行。 因此,始终思考逻辑电路来实现您想要的功能,同时编程FPGA。这就是为什么在FPGA编程中,人们通常在开始编码之前根据项目规格设计基本架构或逻辑电路.

4.如何开始使用FPGA编程以及FPGA编程设计流程是什么?


一种。数字逻辑设计背景


要开始使用FPGA编程,您需要在数字逻辑设计中具有良好的背景,以熟悉逻辑值,逻辑门,组合和顺序逻辑电路。 是它的良好资源。 

湾Verilog / VHDL语言


然后,你可以开始学习 verilog. / VHDL. 用于编程FPGA。 Verilog / VHDL是硬件描述语言,所以随着我提到的,您需要忘记软件编码行为并开始思考逻辑门和电路以实现要在FPGA上运行的功能。要学习编程语言,我推荐的方式是在您有时间时继续练习设计和编码。 

C。模拟


为了练习FPGA编程,仿真是合成和实施之前的关键步骤。模拟是验证您编写的Verilog / VHDL代码的功能正确性。有许多 模拟器 在那里,但ModelSim是我用于功能模拟的最常见的模拟器。还有一件事,你需要编写一个测试台,它给出了输入值的所有可能组合以验证设计。测试台编码样式可能不会过于禁止,如合成型编码样式,因此您可以使用软件行为样式(用于循环,循环等)以生成功能模拟的输入模式。 

天。综合和实施


在功能模拟成功验证设计后,您可以考虑下一个合成和实施的步骤。 FPGA的两个最流行的合成和实施工具是Xilinx Ise / Vivado设计套件 Xilinx. FPGA.和Quartus II for 英特尔Altera. FPGA。还有人指出,您可以使用这些工具模拟您的设计;模拟器(Xilinx Isim,Modelsim-Altera)集成到Xilinx ISE / Quartus II中。该工具使合成代码并为FPGA编程生成比特流文件。

e。 FPGA开发板


什么是fpga编程?

从Xilinx ISE / Vivado / Quartus II获取比特流文件后,我们将将比特流下载到FPGA板进行演示。我已经推荐了非常便宜的FPGA板,如下所示:

推荐和负担得起的Altera FPGA董事会为学生
您需要购买FPGA板以练习FPGA编程,并查看您所写的代码的实际电路究竟发生了什么。 
基本上,这就是您所需的FPGA编程以及FPGA编程如何在FPGA板上完成。我将尽快发布FPGA教程,如何启动Xilinx / Intel Altera FPGA板上的第一个FPGA项目。 
FPGA. / Verilog / VHDL项目的实践: FPGA.项目verilog.项目VHDL.项目
推荐的 FPGA.项目 for students:
FPGA. Verilog VHDL课程

2评论:

  1. 好解释!这确实是学习FPGA的硬点。并且掌握此差异的主要方式如果再次编程FPGA& again

    回复删除
  2. 对于FPGA学习者来说真的很棒的踢球

    回复删除

趋势FPGA项目