当前位置: 首页 > news >正文

前端学习 7:EDA 工具

目录

EDA 工具

Design Ware

Synopsys CoreTools 套件

VCS

verdi

Design Compiler


EDA 工具

常用的EDA工具主要来自三家公司:Synopsys、Cadence和Mentor(已被Siemens收购)。EDA,全称电子设计自动化(Electronics Design Automation),在数字、模拟和混合集成电路的各个开发阶段都发挥着重要作用。

🌟 RTL功能仿真:VCS+Verdi套装或ModelSim是常用的功能仿真工具。VCS用于仿真,Verdi用于波形debug,在Linux下非常好用;ModelSim则兼具仿真和波形debug功能,在Windows下常用。功能仿真阶段不区分FPGA或ASIC,工具通用;这些工具也可以进行后仿,即动态时序仿真。

🌟 逻辑综合:Synopsys的Design Compiler(DC)是常用的逻辑综合工具。通常使用TCL脚本(工具命令语言),网上有丰富的相关资料。综合阶段还可以在工具内进行timing等分析,但结果不如PT准确。(RTL 转成网表)

布局布线:Synopsys的ICC/ICC2是常用的布局布线工具,功能强大,可以根据用户的floorplan自动完成布局优化和布线优化。工具还支持timing、DRC、LVS检查等功能,但不是sign-off工具。

 形式验证:Synopsys的Formality是常用的sign-off工具,主要用于静态时序分析、功耗分析、设计规则检查和版图一致性验证,确保芯片在流片前满足项目规格。

可测性设计:Tessent,

静态时序分析 :Primetime,

形式验证: Conformal ,​​逻辑等效性检查(Logic Equivalence Checking, LEC)工具​​,属于形式验证的核心工具

额外需要会的:

1、Tcl,Perl脚本开发

2、SOC顶层模块 (时钟/复位/电源管理/低功耗/管脚复用)的设计

3、一些隐藏的前端流程:

Lint(代码规范性检查,工具 Synopsys Spyglass, RTL编码完成后立即运行)、

CDC (跨时钟域检查,​​工具 Synopsys Spyglass CDC。功能与目的​​

  • ​​同步性验证​​:确保跨时钟域信号传输通过同步器(如两级触发器)处理,避免亚稳态。
  • ​​收敛性检查​​:检测多信号跨时钟域汇合时的时序冲突(如glitch)。
  • ​​复位同步​​:验证复位信号在不同时钟域的同步逻辑。)、

功耗分析  常用工具​​:Synopsys PrimeTime PX(逻辑综合后)Cadence Voltus(布局布线后)。​​输入文件​​:门级网表、工艺库(.db)、寄生参数文件、开关行为文件(SAIF/VCD))

SDC 是 ​​时序约束的行业标准格式​,用于定义设计的时序、面积和功耗目标,指导综合(如Design Compiler)、布局布线(如IC Compiler)等工具优化电路。核心功能​​:约束时钟(频率、不确定性、延迟)。定义输入/输出时序(setup/hold)。指定设计规则(最大电容、转换时间)。支持多电压域和低功耗设计

Design Ware

Synopsys公司提供的集成电路设计IP核库和验证工具集合,广泛应用于SoC/ASIC开发中,涵盖逻辑、算术、存储等模块,可优化综合结果并缩短设计周期‌。

‌DesignWare的核心功能与特点‌

  1. ‌IP核库多样性‌:包含超过140个独立于工艺的已验证模块,如逻辑单元、算术运算器、存储器及专用元件(如8051微控制器、PCI-X、USB2.0等)。‌‌1
  2. ‌与Design Compiler集成‌:通过Synopsys综合工具优化设计,显著提升性能并减少开发时间。‌‌1
  3. ‌仿真模型支持‌:提供17万种器件功能级仿真模型,覆盖FPGA、CPU(ARM/MIPS/PowerPC)及各类总线协议(PCI-X/AMBA/Ethernet等)。‌‌

Synopsys CoreTools 套件

是一组专注于 ​​IP核封装、集成与验证​​ 的工具集,旨在提升基于IP的SoC设计效率与可靠性。以下是其核心组件及功能详解:

coreConsultant™​  √

指导单个IP核的配置、验证与实现,生成IP-XACT XML文件,支持图形/命令行操作。

​​典型场景​​:配置AMBA AHB/AXI总线IP参数,生成定制化RTL和测试环境。

coreBuilder™​​:用于IP核的标准化封装,支持多抽象层次(RTL、事务级模型等)的IP描述,并生成符合 ​​IP-XACT​​ 标准的元数据文件。

特点​​:提供图形化或命令行配置界面,支持设计意图捕获与质量流控制。生成 coreKit 数据库,便于后续工具调用。

​coreAssembler™​​:用不上。自动化IP子系统集成,生成互连逻辑、配置RTL及验证环境(如测试平台)。

​​优势​​:支持混合语言设计(Verilog/VHDL),通过TCL接口实现流程定制。与Galaxy平台集成,自动生成物理实现脚本,减少时序收敛时间。

VCS

vcs 的两步流程将仿真分为 ​​编译(Compilation)​​ 和 ​​仿真(Simulation)​​ 两个独立阶段,适用于纯Verilog/SystemVerilog设计:

​编译阶段​​: vcs [compile options] Verilog_files

VCS构建实例层次结构并生成二进制可执行文件  simv.  该二进制可执行文件随后将用于模拟。(使用simv 跑 这个仿真)

举例:vcs -v lib_file.v -y ./lib_dir +libext+.v +incdir+./include design.v

-v filename 指定库文件;

-y directory 库目录;

+incdir+目录+:头文件搜索路径

+libext:包含+libext编译时选项,以指定VCS在这些目录中查找 文件的扩展名。

​​其他选项​​:

-full64; 使能64位模式下的编译和仿真;

-file filename; 指定一个包含文件列表和编译时选项的文件

-verdi; 开启Verdi

-R;  编译后立即仿真;在VCS链接后立即运行可执行文件。

-parameters filename ;  将文件中指定的参数值更改为文件中指定的值

-q ; 静音模式;会抑制一些消息,例如关于C编译器VCS正在使用的、VCS正在解析的源文件、顶级模块或指定的时间尺度相关的消息。
-V ; 详细模式;编译器驱动程序在运行C编译器、汇编器和链接器时打印它执行的命令。

-l compile.log:编译的日志记录

+define+USETHIS ;  宏在源文件中使用'ifdef 指令。如果未使用+define/则代码中的else部分优先。

​​仿真阶段​​运行 simv 

执行功能验证或时序分析,支持Interactive Mode (调试)或Batch Mode(回归)模式。

交互模式 Interactive Mode 
交互方式在设计周期的初始阶段应用,主要是使用GUI或通过命令行调试。要使用GUI调试,可以使用Verdi,而要通过命令行界面调试,则可以使用统一命令行界面(UCLI)。使用交互模式,在编译时要使用 -debug_access(+<option>) 

回归模式 batch mode

设计后阶段,仅需进行最低限度的调试,使用 此模式可以实现更好的性能。

命令  simv (对的!就这一个 simv 就够了 )

模式​​启动方式​​用途​
​交互模式​simv -ucli 或 simv -verdi动态调试(UCLI命令行/Verdi图形界面)
回归模式​simv自动化回归测试,性能最优
verdi

交互模式下使用Verdi  

 simv -gui

后 处理模式下使用verdi 

verdi -ssf xxxx.fsdb 

Design Compiler

一种由Synopsys公司开发的电子设计自动化(EDA)工具,主要用于将硬件描述语言(如Verilog或VHDL)编写的高层次电路设计转换为优化的门级网表。

主要功能: 该工具能够进行逻辑综合、设计约束设置、时序分析等操作,以满足设计的性能和面积要求。

Design Compiler (二)——DC综合与Tcl语法结构概述_Design Compiler-CSDN专栏

dc_shell: DC以命令行的格式启动:$dc_shel,需要知道一些tcl的简单语法。

.tcl 是个脚本

综合后需要查看timing、area 符不符合需要;

综合后的多个文件需要写到一个ddc 文件里,或者一个netlist

http://www.lryc.cn/news/613279.html

相关文章:

  • 板块三章节3——NFS 服务器
  • SupChains技术团队:需求预测中减少使用分层次预测(五)
  • 写Rust GPU内核驱动:GPU驱动工作原理简述
  • SymPy 中 atan2(y, x)函数的深度解析
  • CentOS 7 安装 Anaconda
  • 14天搞定Excel公式:告别加班,效率翻倍!
  • Windows Oracle 11 g dmp数据库恢复笔记
  • mysql 索引失效分析
  • 全面解析 URL 重定向原理:从协议、实现到安全实践
  • X4000 私有 5G 实验室入门套件
  • 亚马逊采购风控突围:构建深度隐匿的环境安全体系
  • 安全守护,温情陪伴 — 智慧养老产品上新
  • C语言memmove函数详解:安全高效的内存复制利器
  • 翻译模型(TM):基于短语的统计翻译模型(PBSMT)的构建
  • MySQL的变量、控制流程和游标:
  • leetcode 415.字符串相加
  • RAGAS:检索增强生成系统的无参考评估框架与技术解析
  • caffetne本地缓存--Java实现
  • 【音视频】WebRTC C++ native 编译
  • 【动态规划 | 完全背包】动态规划经典应用:完全背包问题详解
  • 01数据结构-哈夫曼树
  • 初识 MQ:从同步到异步,聊聊消息队列那些事
  • ladybird
  • Minio 分布式集群安装配置
  • 【unitrix数间混合计算】2.1 数间混合计算模块(src/number/mod.rs)
  • ADC常用库函数(STC8系列)
  • 【面试向】大模型应用岗 —— Transformer 篇
  • 输电线路电气参数与阻抗计算全解析
  • 从库存一盘货到全域智能铺货:巨益科技全渠道平台助力品牌业财一体化升级
  • 从零开始掌握Hardhat开发