【问题标题】:Getting started with FPGA development开始 FPGA 开发
【发布时间】:2011-10-23 22:48:47
【问题描述】:

我想要一个 FPGA 开发板,目标是模拟 CD-ROM 驱动器。 我的问题是:

  • 是否有任何 fpga 允许使用 C/C++ 而不是 VHDL 编写代码?
  • 如果非要推荐一块板子,你会推荐哪块板子?
  • 您会推荐购买哪本书?
  • 在继续之前我还有什么需要了解的吗?

【问题讨论】:

标签: c++ c fpga


【解决方案1】:

A) 直接编写 C++ 代码没有意义,但是您可以模拟处理器并向其编写 C/C++。我已经做到了。我会推荐 ALTERA 的入门套件,不要为初学者购买非常昂贵的东西。

B) http://www.altera.com/products/devkits/altera/kit-cyc2-2C20N.html 例如,这非常好。我已经使用 C 实现了一个 dsp。

Altera 具有您可以实现的 NIOS CPU。这不是最简单的事情。您至少需要基本的 VHDL 知识才能做到这一点。

C) http://www.amazon.com/Designing-FPGAs-CPLDs-Bob-Zeidman/dp/1578201128 涵盖了基础知识。

D) 您应该了解数字架构。 C/C++ 与 VHDL 完全不同,在您了解核心组件的工作原理之前,您将无法获得 FPGA 的真正力量。加法器、ALU、MUX、DEMUX、乘法器等是任何数字电路的组成部分。您需要知道如何组合它们以并行化您的解决方案并利用硬件。

【讨论】:

    【解决方案2】:

    A) 作为一种替代方法,有一些类似 C 的语言可以编译成 VHDL 或 Verilog。有关详细信息,请参阅维基百科上的 C to HDL

    这种语言的编译器通常会为您的特定“程序”生成定制的电路设计。例如,如果你想计算 a*b+c*d+e*f,你最终可能会得到一个包含三个乘法器和两个加法器的电路,并且可以针对不同的 (a,b,c,d ,e,f) 元组每个循环,有点像pipeline

    我想这取决于你想做什么。对于低级应用,CPU 比定制电路慢,但它绝对更容易编程。

    D) 我同意 FailedDev。您应该从基础开始,使用 VHDL 或 Verilog 并点亮一些 LED(例如,实现一个二进制计数器)。

    【讨论】:

    • 虽然确实有 C 到 HDL 编译器,但我会远离它们,尤其是在开始时。您几乎无法控制编译器实际为您生成的内容,而使用 HDL 您可以直接控制。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-01
    • 2011-02-14
    相关资源
    最近更新 更多