Io 启动FPGA编程

Io 启动FPGA编程,io,fpga,Io,Fpga,我想开始FPGA编程。我根本不知道FPGA是如何工作的。我想得到一个开发板,不是太贵,但它应该有至少40个I/O引脚。300美元以内的都可以 我决定用Verilog编程。我不确定以下几点: 我编译的“程序”将如何存储在芯片上?我猜芯片上有某种EEPROM来保存我的程序,但从我读到的来看,它显然存储在RAM中。我希望我的程序每次通电时都留在芯片上(或者以某种方式加载) 我可以购买单独的FPGA芯片(而不是整个开发板)进行生产吗?如果是的话,我如何将我的程序上传到单独的芯片上?它是否以某种方式连接到

我想开始FPGA编程。我根本不知道FPGA是如何工作的。我想得到一个开发板,不是太贵,但它应该有至少40个I/O引脚。300美元以内的都可以

我决定用Verilog编程。我不确定以下几点:

  • 我编译的“程序”将如何存储在芯片上?我猜芯片上有某种EEPROM来保存我的程序,但从我读到的来看,它显然存储在RAM中。我希望我的程序每次通电时都留在芯片上(或者以某种方式加载)

  • 我可以购买单独的FPGA芯片(而不是整个开发板)进行生产吗?如果是的话,我如何将我的程序上传到单独的芯片上?它是否以某种方式连接到开发板

  • 在Xilinx FPGA术语中,“程序”称为比特流。有些FPGA具有嵌入式闪存来存储比特流(例如Spartan 3AN)。大多数FPGA需要一些外部比特流存储。下面是一个关于如何配置FPGA的示例

  • 是的,你可以。进行配置有多种方法。大多数都需要一些外部电路


  • 使用FPGA的全部意义在于,您的“程序”实际上是一个电路,而不是RAM。将位流写入FPGA时,会配置一些物理逻辑组件。这就是为什么它们可以在专用应用程序中运行得更快的原因——您基本上是在定制硬件

    Xilinx是主要的FPGA制造商之一。试试他们的。查看“电路板和套件”部分

    在你超越自己之前,试着阅读更多关于这项技术的知识。在对FPGA进行有效编程之前,您需要充分了解FPGA的工作原理。Wikipedia是一个很好的起点。

    我建议将其作为介绍。它只有16个外部I/O,但它已经有RAM、USB、开关、按钮、LED、7段显示器、VGA连接器和PS/2连接器-不太可能找到少于40个I/O引脚的FPGA。如果您想为另一个项目进行I/O,请使用比我想列出的更多的外围设备,如果您的项目特别需要大约40个连接,还可以使用高速Hirose 43针连接器

    也要考虑如何与PC接口。你的目标是制作嵌入式系统,还是通过PCI/Ethernet/USB连接与计算机接口?p>


    是的,您可以购买单独的FPGA板进行生产-尽管有一系列令人眩晕的选项-Digikey目前已经有了。您确实需要某种方式来编程FPGA,而在启动时编程FPGA的板载NVM芯片是一种流行的选择。然而,在设计开发板或担心如何将程序保存到芯片之前,您应该先从一个支持良好的开发板开始,并且已经有了一个程序员、工具链和模拟器。知道这些是件好事,但它们不是你现在想担心的。祝你好运

    看看Actels新的智能融合FPGA。当然,它有一个FPGA结构,带有一个具有良好模拟端(DAC、ADC等)的硬ARM MCU

    评估委员会只有100人$


    以及所有您需要安装并运行的软件(如果有)

    可能找不到页面的副本,兄弟,所以很酷。@CarlNorum显然只对10K+成员可见。当您断电时,FPGA肯定会丢失配置,必须从闪存重新加载。在一些芯片中,闪存内置在FPGA结构中,因此加载速度更快,通常称为CPLD。此外,FPGA没有松散的触发器和逻辑门,而是具有一种或另一种类型的“逻辑元件”,包括查找表(基本上是一个小型RAM块),它类似于一个小型的门网络,但具有恒定的传播延迟、时钟和复位输入,以及通过寄存器前后LUT的输出(D触发器)谢谢Ben,我从我的答案中删除了不好的信息。大多数FPGA都有一个专用的逻辑电路,知道如何使用特定于供应商的协议从闪存芯片读取配置,然后供应商销售配置存储器。不过,不要担心特定于供应商的协议,这些存储器的价格实际上很有竞争力。然后你可以在将配置内存安装到板上之前加载配置内存,或者使用JTAG调试接口填充(供应商提供的)写入配置内存的闪存加载程序,复位时闪存加载程序消失,您的设计加载。