Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
FPGA软IP核:它们通常依赖于芯片还是独立于芯片_Fpga - Fatal编程技术网

FPGA软IP核:它们通常依赖于芯片还是独立于芯片

FPGA软IP核:它们通常依赖于芯片还是独立于芯片,fpga,Fpga,FPGA有软、硬和硬IP核。硬IP核/块在芯片上,并且硬化可以是软IP时钟和硬IP时钟的组合。(摘自教科书) 但是,如果我们只考虑软IP核:它们一般不依赖于特定的FPGA芯片、模型、制造商? 假设它是以HDL和一些用于各种合成/实现转换工具的配置集的形式提供的。并不是说只修复了Xilinx或Intel。HDL是否足够高,可以在不同制造商的FPGA芯片和架构(或不同的结构)上合成IP?软IP是否足够高 我有点倾向于认为是的,但我对这方面不太了解。我想说的是,它们很可能只在为其设计的平台上工作,而不

FPGA有软、硬和硬IP核。硬IP核/块在芯片上,并且硬化可以是软IP时钟和硬IP时钟的组合。(摘自教科书)

但是,如果我们只考虑软IP核:它们一般不依赖于特定的FPGA芯片、模型、制造商? 假设它是以HDL和一些用于各种合成/实现转换工具的配置集的形式提供的。并不是说只修复了Xilinx或Intel。HDL是否足够高,可以在不同制造商的FPGA芯片和架构(或不同的结构)上合成IP?软IP是否足够高


我有点倾向于认为是的,但我对这方面不太了解。

我想说的是,它们很可能只在为其设计的平台上工作,而不会进行重大修改。您使用的许多内核将来自芯片供应商,这些内核将以某种方式与他们的平台绑定。即使是来自第三方的内核,它们也很有可能使用特定于某些芯片的原语,或者没有针对其他芯片进行优化或测试。有些内核也是加密的,这会将您锁定到某些工具链中,并阻止您自己修改它


话虽如此,编写便携式HDL是可能的,而且有这样的内核。对于更简单的内核来说,这将更为常见,这些内核不需要使用特定于芯片的技术进行大量优化。但总的来说,你不应该指望会是这样。如果有一个核心要在项目中使用,您应该事先验证它是为您的芯片系列设计的,或者准备好亲自进行移植和调试。

谢谢您的回答,这很好。在我看来,归根结底,要获得良好的IP,就必须针对特定的硬件/芯片来实现性能。因此,HDL的高级别或更高级别仍然与可移植源代码的高级别不同。