【问题标题】:What is difference between soft core on NIOS and hard core?NIOS上的软核和硬核有什么区别?
【发布时间】:2016-12-21 05:27:32
【问题描述】:

我最近在学习 FPGA。我曾尝试使用 sdram,有人建议我通过 nios ii 使用它。但是我看到一些在 nios ii(c/c++) 上使用 ip core 的文章可能比你通过 verilog 写的要慢?为什么?因为硬件(快速,并行)和软件?

【问题讨论】:

  • 软核意味着CPU不是FPGA的一部分,它实际上是在编译时合成并映射到FPGA中的。硬核是物理上位于 FPGA 内部的项目(IP 等)。
  • 这个问题更适合EE StackExchange

标签: verilog fpga nios


【解决方案1】:

什么是软 CPU? FPGA 由可重构逻辑块 (LUT)、存储器和乘法器/DSP 等组成。软 CPU 是由 FPGA 可配置逻辑组成的 CPU。 Nios II 是 Altera/Intel 的软 CPU。这与许多Altera/IntelXilinx SoC FPGA 中包含的ARM 内核等硬化CPU 不同。在这些情况下,ARM 内核由固定晶体管而不是 FPGA 结构制成,并且不能为其他目的重新配置。

为什么要强化 CPU?它们通常比软 CPU 更快,占用的空间更少,并且不消耗任何宝贵的 FPGA 布线。由于许多设计使用某种 CPU,强化一个(就像许多流行的 I/O 接口一样)它会产生整体净增益。 (如果您不需要 CPU,您可以简单地购买非 SoC FPGA。

至于使用 CPU 与纯逻辑/硬件,也需要权衡取舍。编写软件通常比 Verilog 更容易,并且您的 CPU 将被设置为管理诸如响应时间和其他内存怪癖之类的事情。但是,您会受到 CPU 速度(Nios 通常为 100-200MHz,具体取决于您的 FPGA)、需要与 CPU 接口的额外延迟以及 CPU 指令执行速度的限制。

与 FPGA 越来越受欢迎的原因类似,纯硬件电路具有专业性,可以让它们比更多用途的 CPU(软或硬)运行得更快。速度提升所带来的权衡是编写时序准确的 Verilog 所涉及的额外工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-31
    • 2010-09-15
    • 2017-09-04
    • 2012-07-05
    • 2019-02-25
    • 1970-01-01
    相关资源
    最近更新 更多