Quartus 是由英特尔(原阿尔特拉公司)开发的一套用于编程FPGA、CPLD和SoC的EDA工具,Vivado 则是赛灵思公司针对他们的FPGA推出的设计软件。虽然两者都是用于电子设计自动化,但设计的代码不是总能直接通用。如果代码是用硬件描述语言(HDL)如VHDL或Verilog编写的,并且没有使用特定于某个平台的原语(primitives)或IP核心,它可能在两者间具有相对较好的移植性。但如果代码包含了赛灵思特有的库或者专有的IP核心,那么在没有修改的情况下它不能在Quartus中运行。为确保代码在Quartus中可用,需要对代码进行适当的修改或重写,以适应英特尔FPGA的特定要求。
在尝试将Vivado的代码迁移到Quartus前,首先必须确定代码中没有使用任何特定于赛灵思平台的特性。例如:IP核、原语、约束,以及赛灵思专有的库函数。
检查HDL代码,确认其符合标准的VHDL或Verilog规范。在理想情况下,如果代码完全遵循IEEE标准,并且没有用到任何赛灵思专有的元素,那么理论上它可以在Quartus上编译和运行。
每个FPGA供应商可能会提供一些专为其FPGA优化的功能和工具。在Vivado设计的时候可能会使用一些Xilinx特有的优化工具或IP库,这些在迁移到Quartus上需要找到对应的英特尔类似工具或库,或者进行相应的修改。
寻找相应的英特尔FPGA的同等函式或IP。当代码下载到新的FPGA时,这一步是不可避免的,因为某些组件是专用的,不能在另一个厂商的设备上使用。
如果确定代码有移植的潜力,可以按照以下步骤进行代码迁移:
在开始之前,需要为英特尔FPGA的设计环境Quartus做准备。下载并安装Quartus软件,创建新的工程,并了解基本的项目设置和使用方法。
逐文件检查并转移代码。 将VHDL或Verilog源代码从Vivado项目中导出,并导入到Quartus项目中,
原语在不同的FPGA中可能有不同的实现和性能参数。如果Vivado代码中使用了Xilinx特有的原语或属性,那么这些必须替换成Intel的等效项。
确定并替换所有Xilinx特定原语。通过查阅Intel的文档,找到等效的原语,进行替换。
约束文件负责在FPGA的物理布局上放置逻辑设计。由于不同的FPGA布局不同,Vivado的约束文件可能不适用于Quartus的芯片。
重新编写约束文件,确保设计可以在Intel芯片上正确布局,并进行时间分析。
在Quartus中运行仿真,验证移植后的代码行为与在Vivado中的行为一致。使用ModelSim或其它可兼容Quartus的仿真软件执行仿真。
确保移植后的代码通过了所有的测试,性能指标符合预期。
即使仿真成功了,实际硬件中可能还会存在问题。在Quartus中编译项目,并将其下载到FPGA中,必要时进行硬件调试。
执行实际硬件测试,以该设备的实际运行条件为准,对FPGA进行测试。利用Quartus的Signal Tap逻辑分析器来捕获并分析信号。
针对Intel FPGA进行性能优化。每个FPGA品牌的设备在架构和最佳设计实践方面可能有很大的差异,所以可能需要对设计执行额外的优化。
调整时序和功耗,使设计在新的FPGA上获得最佳性能。
将Vivado的代码迁移到Quartus是一个复杂的过程,需要对HDL代码、特定供应商的特性、以及FPGA设计的底层工作原理有深入的理解。只有在进行了全面的验证和适当的调整后,才能确保FPGA项目在新的硬件平台上顺利运行。
1. 什么是Vivado和Quartus?两者有什么区别?
Vivado和Quartus都是常用的FPGA设计工具。Vivado是由Xilinx公司开发的,而Quartus是由Intel(原Altera)公司开发的。两者有相似的功能和用途,但有一些区别。Vivado主要支持Xilinx系列的FPGA芯片,而Quartus主要支持Intel系列的FPGA芯片。此外,两者在界面设计、仿真工具和优化算法等方面也有一些差异。
2. Vivado中可以使用Quartus生成的仿真代码吗?
Vivado和Quartus使用的是不同的设计语言和仿真工具,因此不能直接使用Quartus生成的仿真代码在Vivado中运行。如果您想在Vivado中仿真Quartus生成的代码,您需要先将Quartus代码转换为Vivado可识别的格式,然后再进行仿真。您可以使用一些工具或脚本来完成这个转换过程。
3. 是否建议在不同的工具之间切换?
通常情况下,建议在一个项目中始终使用同一个工具进行设计和仿真。这样可以保持一致性,并减少因切换工具而引起的问题。当然,如果您有特殊的需求或原因,需要在不同的工具之间切换,那么可以根据具体情况做出决定。但请注意,在切换工具时,需要注意代码转换和兼容性的问题,以确保代码的正确性和稳定性。
最后建议,企业在引入信息化系统初期,切记要合理有效地运用好工具,这样一来不仅可以让公司业务高效地运行,还能最大程度保证团队目标的达成。同时还能大幅缩短系统开发和部署的时间成本。特别是有特定需求功能需要定制化的企业,可以采用我们公司自研的企业级低代码平台:织信Informat。 织信平台基于数据模型优先的设计理念,提供大量标准化的组件,内置AI助手、组件设计器、自动化(图形化编程)、脚本、工作流引擎(BPMN2.0)、自定义API、表单设计器、权限、仪表盘等功能,能帮助企业构建高度复杂核心的数字化系统。如ERP、MES、CRM、PLM、SCM、WMS、项目管理、流程管理等多个应用场景,全面助力企业落地国产化/信息化/数字化转型战略目标。 版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们微信:Informat_5 处理,核实后本网站将在24小时内删除。版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系邮箱:hopper@cornerstone365.cn 处理,核实后本网站将在24小时内删除。