什么是 FPGA,我在哪里可以买到?他们要花多少钱?
你需要什么样的系统来试验它们?如何对它们进行编程?
如果这是正确的术语,您可以“加载”使用普通 Mac 的 FPGA 吗?
它们非常昂贵还是我今天可以买一个?
读完这个问题后,我对 FPGA 产生了兴趣。
如果您想开始使用 FPGA 并尝试使用便宜的电路板,您可以花大约 50.00 美元尝试以下任何一种:
我的职业生涯始于 Xilinx 产品,并且可以为他们的工具做担保。我拥有上面的格子板,它是一个很好的试验板。但是,Lattice 仅适用于 Windows。
使用这些板卡,您可以了解 FPGA 的基础知识:HDL 设计、I/O 技术、设计架构等。您还可以实现图像处理算法,但您会受到 I/O 吞吐量和这些低端 DSP 切片的限制。终端设备。当您对 HDL 设计感到满意并且对工具有更好的掌握时,您可能会考虑让您的雇主/教育机构为您购买更高级的套件。一些带有高端设备和 I/O 的套件可能要花费数千美元,具体取决于您的应用。
虽然有一些开源和免费工具可用于使用 FPGA,但您需要学习使用的大多数工具仅适用于 Windows 和 Linux。通常来自 FPGA 供应商的免费版本仅适用于 Windows(编辑:看起来 Linux 也开始受到支持)。您可以尝试将 Verilog HDL 与 Icarus 和 GNUWave 一起使用,但在将设计编程到设备时,您将需要供应商特定的工具。
如果你只需要学习 HDL,那么下载 ModelSim 就足够了。我怀疑你会用一个简单的工具包学到更多。您不仅将学习 HDL 设计,还将学习实际方面的知识,例如编程、设备优化、硬件调试设计等。
虽然它远非最便宜的,但如果您想学习很多东西,购买Xilinx XUPv5是一个好主意 - 不仅 110T 芯片足够大,可以构建非常雄心勃勃的项目(例如,功能齐全的任天堂游戏机复制品),而且它也是许多顶级大学在数字设计课程中使用的板。例如,伯克利发布了他们的完整笔记、实验室等,以用于 XUPv5 板。我教了这门课多年,并愿意相信它是一种极好的、高质量的资源。
希望这可以帮助,
至于您关于 FPGA 是什么的问题,我认为如果您已经熟悉微控制器(以及它们具有顺序处理顺序的正常编程方案),那么思考它的最佳方法是将微控制器视为被告知要做什么“做”和 FPGA 被告知要“做什么”。我认为这是查看它的最简单方法:P FPGA 的编程方式不同。您需要全面了解要设计的电路、输入、输出,并且需要花费大量时间考虑时钟,因为在处理更复杂的电路时很容易出现时钟偏差和其他问题在 FPGA 中!我首先使用 Spartan3E 了解了 FPGA。玩得开心!:)
开源替代品:
Papilio
Mojo v3
他们也很便宜 :)
我对其他品牌的经验很少,但我对 Altera DE2 “* D *velopment and * E *ducation Board”非常满意。如果您以前没有玩过 FPGA,这是一个理想的起点。
它包括六种不同类型的存储器(SDRAM、SRAM、闪存、SD 卡)、7 段显示器、大量按钮和开关以及更多的 I/O,您无法动摇。想玩 IR 吗?以太网?显卡?USB?声音的?所有这些都是学生和新手喜欢的东西。:-)
这同样适用于DE2-70等大哥卡的这一块。
这取决于您要运行的实验类型。如果您正在做小逻辑,我推荐 Virtex 2 板。如果您正在为 Virtex 5 做一些复杂的目标,特别是如果您需要一个船上处理器来进行串行计算。我认为它与 PowerPC 一起提供。如果您可以为您的实验提供更多细节,我可以帮助您选择更好的 FPGA。
ALU 是算术逻辑单元,如果您执行所有“数学”操作:加法、移位、乘法等。
您可以使用 HDL 软件(VHDL 或 Verilog)对它们进行编程。后者更像C。我更喜欢第一个。我已经使用它很长时间了。您可以下载 Modelsim 学生版并进行实验。
学习 FPGA 并不容易,所以需要一些时间来学习如何首先编写 HDL。
人们已经提到了Altera和Xilinx。那是 FPGA 市场的两大玩家。但根据您想要做什么,我也可以建议您查看 Actel(尤其是他们的 Igloo)。它们的优点是不需要额外的 rom/flash/任何保存比特流的东西,以防你想制作一个以后应该尽可能小的应用程序(它们的省电模式也非常好)。所以对于一些爱好者(或非常低功耗)的应用程序来说可能更好(他们也有一个 ARM 软核许可证 - 其他人也有软核,但也许你已经习惯了 ARM 编码)。
顺便提一句。HDL(VHDL 或 Verilog HDL)中的硬件编码与普通编程有很大不同。因此,也许它的开始足以让您检查 HDL 编译器和模拟器(通常您总是在将代码带到硬件之前对其进行模拟,因此它与真正的硬件开发过程没有什么不同)。
一个有趣的开源硬件是Armadeus。
它将 Xilinx FPGA (Spartan 6A)与 ARM SoC (Freescale i.MX51)结合在一起,并且可以使用在 Spartan 上实现的自定义外围设备运行 Linux!
(顺便说一句,iMX51 SoC 有一个 FPU,时钟频率为 800 MHz。)
我发现这是一个有趣的问题,而且仍然如此。FPGA 的世界也在不断发展,因此新板不断涌现。如果这仍然是一个悬而未决的问题,我建议使用 Digilent 的 ZYBO 或 Terrasic 的 DE1-SOC。选择哪一个在很大程度上取决于 Xilinx 与 Altera 的比较(完全不同的讨论)。两者的好处是他们同时拥有 FPGA 和 ARM 处理器,用于学习 FPGA 设计和嵌入式操作系统开发。