自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(327)
  • 资源 (3)
  • 收藏
  • 关注

原创 15.【UPF】UPF Power Aware Simulation(UPF功耗感知仿真)

功耗感知仿真扩展传统RTL仿真,通过建模UPF定义的功耗管理行为来验证低功耗设计。它能检测传统仿真无法发现的X传播、隔离单元错误、保持单元失效等关键问题,避免昂贵的流片后修复。主流仿真器(VCS/Questa/Xcelium)通过特定UPF选项支持功耗感知仿真,验证重点包括:隔离单元必须放在常开域并正确钳位信号,保持单元需满足时序要求,以及电源状态转换需符合定义。通过提前模拟断电场景,功耗感知仿真能显著提高芯片首次流片成功率。

2026-04-22 09:34:37 310

原创 14.【UPF】Hierarchical UPF(分层UPF)

层次化UPF设计方法解析 本文系统介绍了层次化UPF(统一电源格式)的设计方法,重点解决复杂SoC设计中的功耗管理难题。主要内容包括: 必要性分析:现代SoC包含数百个IP模块,单一UPF文件难以维护且阻碍IP复用,层次化方法支持模块化设计。 两种实现方式: 自顶向下:全局可见但扩展性差 自底向上:模块化强,支持并行开发 推荐混合方法,兼顾灵活性与全局管理 关键技术: load_upf命令实现模块集成 供电映射解决命名冲突 set_scope管理层级关系 相对路径确保IP可移植性 文件组织策略:按IP模块、

2026-04-22 09:33:54 198

原创 13.【UPF】UPF Always On Networks(UPF常驻网络)

摘要:UPF常开网络设计要点 常开网络是芯片电源管理的核心基础设施,为必须持续工作的关键模块供电。本文总结了常开网络的设计要点: 必要性:电源管理控制器、隔离单元、保持电路等必须常开,否则系统断电后无法恢复。 关键组件:包括电源管理逻辑、隔离控制、电平转换器、保持电源(VDD_RET)、唤醒逻辑和调试接口。 设计规范: 使用单一ON状态,无OFF状态 直接连接芯片电源引脚 所有控制信号必须来自常开域 保持电源采用低电压(如0.6V)以降低漏电 实现方法: 创建独立常开电源域(PD_AON) 定义常开供电网络

2026-04-21 10:32:49 603

原创 12.【UPF】UPF Repeater Strategies(UPF中继器策略)

UPF中继器策略:提升跨电源域信号完整性的关键方法 摘要(148字) UPF中继器策略通过插入缓冲器解决跨电源域长导线的信号完整性问题。核心机制是将长导线分段,将平方延迟转为线性延迟。关键命令set_repeater需配置策略名、目标域、信号方向等参数,特别注意-location应设为常开域避免断电风险。中继器间距通常设为500µm-2mm,可与隔离/电平转换器组合使用。验证时需检查时序报告中的异常延迟,确保中继器正确放置于非关断域,并为不同负载配置多驱动强度缓冲器库单元,实现最优时序和功耗平衡。

2026-04-21 10:31:41 350

原创 11.【UPF】UPF Advanced Level Shifters(UPF高级电平转换器)

文章摘要(148字) 本文深入解析UPF高级电平转换器设计策略,聚焦多电压域SoC的关键问题解决方案。核心要点包括:1)自动与显式插入的取舍,关键路径需手动控制时序;2)电平转换器应放置于时序裕量充足的电压域(self/parent/fanout策略);3)通过多驱动强度映射优化不同负载场景;4)双向信号需拆解或使用专用单元处理。教程提供实用方法论:自动处理非关键路径,显式优化关键路径,配合阈值规则与库单元选择,确保跨电压信号完整性与时序收敛。附有代码示例和验证工程师的实战检查清单。

2026-04-20 09:27:21 455

原创 10.【UPF】UPF Isolation Strategies(UPF隔离策略)

摘要:UPF电源隔离策略解析 本文系统讲解了UPF电源隔离策略的关键要点: 问题背景:电源关断时输出浮空(X值)会传播到常开逻辑,导致功能错误、功耗增加和仿真失配,必须通过隔离策略解决。 隔离方案: 使用常开电源供电的隔离单元(AND型钳位0/OR型钳位1) 通过set_isolation命令配置隔离策略,需指定域、供电集、钳位值、控制信号和位置 隔离单元应置于常开域(parent位置) 设计要点: 钳位值选择取决于信号极性(高有效信号钳0,低有效信号钳1) 时序控制:断电前先断言隔离,上电稳定后再解除 需

2026-04-20 09:26:33 450

原创 9.【UPF】UPF Retention Strategies(UPF留存策略)

UPF保持策略:芯片的"记忆UPS"系统 摘要(146字): UPF保持策略通过双电源触发器实现快速唤醒,主电源关闭时由常开保持电源(0.6-0.8V)维持关键状态。核心命令set_retention需指定保持供电集、控制信号和作用范围。选择性保持仅对关键寄存器(如配置寄存器、状态机)启用,避免面积过度增长(30-50%)。典型应用场景包括频繁电源循环(唤醒时间从毫秒级降至微秒级)和关键状态保留。验证时需重点检查:保持电源常开性、控制信号时序匹配,以及非关键路径是否误用保持触发器。保持策

2026-04-17 14:53:42 368

原创 8.【UPF】UPF Multi Voltage Design(UPF多电压设计)

UPF多电压设计与电平转换技术摘要 本文系统介绍了多电压设计在芯片中的实现方法及其关键技术要点。主要内容包括: 多电压设计原理:通过为不同模块分配优化电压(高性能模块用高电压,非关键模块用低电压),利用功耗与电压平方关系(P∝V²)显著降低功耗,典型节省30-50%。 电平转换的必要性:不同电压域间信号传输必须使用电平转换器,防止逻辑误判(低→高)或器件损坏(高→低)。转换器类型包括LH、HL和双向三种。 UPF实现方法: 使用set_level_shifter命令定义转换策略 必须为输入和输出双向配置转换

2026-04-17 14:51:36 494

原创 7.【UPF】UPF Power Shutoff(UPF电源关断)

摘要:电源门控(Power Shutoff)是低功耗SoC设计中的关键技术,通过完全切断空闲模块电源来消除漏电功耗。本文系统讲解了电源门控原理、UPF实现方法及工程考量:1)电源开关作为可控晶体管连接常开电源与门控域;2)使用create_power_switch命令定义输入/输出端口、控制信号及导通条件;3)比较Header(PMOS)与Footer(NMOS)开关的优劣;4)分析粗/细粒度门控的折衷选择;5)强调必须配合隔离策略防止信号传播。文章通过GPU开关实例和家居电路比喻,帮助理解这一复杂低功耗技

2026-04-16 11:21:23 326

原创 6.【UPF】UPF Power States(UPF电源状态)

UPF电源状态学习摘要 电源状态是UPF标准中定义供电网络工作模式的关键概念,用于描述芯片不同工作场景下的电源配置。每个电源状态包含电压值(如1.2V)、开/关状态(on/off)和状态名称(如ACTIVE)。通过add_power_state命令可定义四种典型状态:常开供电(单状态)、可开关供电(开/关状态)、多电压供电(DVFS)和保持供电(低电压状态)。正确区分off(完全断电)和0.0(零电压供电)至关重要。电源状态管理需要考虑层次依赖和功能依赖,避免非法状态组合。保持供电以0.6-0.8V低电压保

2026-04-16 11:20:26 369

原创 5.【UPF】UPF Supply Sets(UPF供电装置套件)

《UPF供电集(Supply Sets)设计与应用指南》摘要: 供电集(Supply Sets)是UPF中管理电源网络的逻辑分组方法,将电源、地、阱偏置等网络按功能角色打包。本文系统讲解了供电集的核心概念与应用:1)供电集通过create_supply_set命令创建,需指定电源(power)、地(ground)等标准角色;2)支持多状态管理,如活跃状态(ACTIVE)和保持状态(RETENTION)可配置不同供电集;3)通过associate_supply_set与电源域绑定;4)特殊场景支持阱偏置(nw

2026-04-16 11:00:07 476

原创 4.【UPF】UPF Power Domains(UPF 功率域)

本文介绍了UPF(统一功耗格式)中的电源域(Power Domain)概念及其应用。电源域是一组共享相同电源管理特性的设计元素,可以独立控制电压、开关状态等。文章详细讲解了电源域的创建方法、层次化结构、边界定义和元素归属规则,并通过实际SoC示例说明如何划分多级电源域以实现精细功耗管理。重点包括:必须创建主电源域作为基准,使用create_power_domain命令定义域范围,以及层次化域结构对模块化设计和IP复用的支持。文中还指出了初学者常见错误,并强调验证时需特别关注域边界的隔离和电平转换处理。掌握电

2026-04-16 10:59:10 699

原创 3.【UPF】UPF Supply Networks(UPF供应网络)

UPF供电网络摘要 供电网络(Supply Networks)是芯片电源配送的基础设施,包含supply net(域内电源/地线)和supply port(层次连接点)。通过UPF命令create_supply_net定义各电源域的供电网络,create_supply_port创建层次接口,connect_supply_net建立连接。多电压设计中需为不同域创建独立电源网络(如VDD_CPU、VDD_IO),而VSS通常共享。供电网络采用描述性命名(VDD_1V0、VDD_AON等)提高可维护性,并支持电源

2026-04-15 13:37:51 648

原创 2.【UPF】UPF Design Flow(UPF设计流程)

UPF设计流程概述 UPF(Unified Power Format)是芯片低功耗设计的核心规范,贯穿RTL到GDS全流程。在架构阶段定义电源域、电压等级和状态转换,并与RTL并行开发。仿真阶段利用UPF进行功耗感知验证,检查隔离、保持和X传播;综合阶段自动插入隔离单元、电平转换器等特殊结构;物理设计阶段实现电源开关布局和域特定电源网格。同一UPF文件驱动所有EDA工具,确保功耗意图一致性。主流工具如Synopsys、Cadence等均支持UPF标准,最佳实践包括早期创建、单一来源维护和逐阶段验证。UPF显

2026-04-15 13:35:18 532

原创 1.【UPF】Fundamentals of Low Power Design(低功耗设计基础)

低功耗设计核心总结 动态功耗遵循P=αCV²f公式,其中电压平方效应是优化关键——1.0V降至0.8V可节省近50%功耗。静态功耗在先进工艺中占比剧增(7nm待机时漏电超90%),需通过电源门控管理。验证重点包括: UPF标准化电源域描述 电压缩放后的时序验证 电源关断时的信号隔离 漏电敏感场景的功耗预算分析 典型优化手段:时钟门控降翻转率、多电压域设计、保留寄存器实现快速唤醒。纳米工艺下需平衡性能与漏电,电压阈值每降70mV漏电翻倍。

2026-04-14 14:24:02 511

原创 36.【RTL_Synthesis】Troubleshooting & Debugging Guide(故障排查与调试指南)

开源 EDA 工具调试指南摘要 本文总结了四大开源 EDA 工具(Icarus Verilog、Verilator、Yosys、OpenSTA)的常见错误及解决方法: Icarus Verilog:信号未声明错误需显式声明;SystemVerilog语法需指定标准;时间尺度不一致需统一声明。 Verilator:不支持仿真专用语法,需重写为可综合代码;组合逻辑环路需用寄存器打破。 Yosys:存储器推断问题需使用标准模式;锁存器警告需补全分支或设默认值;注意综合属性兼容性。 OpenSTA:时钟需正确定义;

2026-04-14 10:17:42 380

原创 35.【RTL_Synthesis】Skywater PDK Resources(Skywater PDK 资源)

Skywater 130nm PDK 资源指南摘要 Skywater 130nm PDK 是首个商业晶圆厂开源的设计工具包,让开发者无需NDA或高昂授权费即可设计可制造芯片。该资源包含工艺规则、标准单元库、器件模型等完整工具链,并支持通过Google Open MPW项目免费流片。 核心资源包括: GitHub主仓库提供标准单元库、文档和脚本 官方文档站详细说明安装配置和设计规则 Liberty时序文件、LEF物理设计文件和Verilog/SPICE模型 配套工具链如Magic版图工具、OpenLane自动

2026-04-13 09:27:09 373

原创 34.【RTL_Synthesis】Quick Reference Cheat Sheet(快速参考速查表)

主时钟# 生成时钟(分频)# 生成时钟(倍频)# 虚拟时钟(用于 I/O 约束)# 异步时钟组(不分析跨域路径)# 时钟不确定性(抖动+偏斜)# 时钟延迟set_clock_latency -source 1.0 [get_clocks clk] # 源延迟set_clock_latency 0.5 [get_clocks clk] # 网络延迟# 时钟转换时间。

2026-04-13 09:26:13 483

原创 33.【RTL_Synthesis】Transitioning to Commercial Tools(转向商用工具)

开源工具是绝佳的学习平台:让你看清每一步,理解核心原理。商业工具是工业生产的利器:提供容量、优化质量、高级功能和专业支持。概念映射关键差异:物理感知、OCV、SSTA、多角多模、更丰富的约束支持。过渡方法:掌握核心概念 → 申请试用 → 对比实验 → 学习流程生态。无论你将来使用哪种工具,时序分析和综合优化的基本思想永远不会变。你已经在正确的道路上。现在,勇敢地跨出一步,去尝试商业工具吧——你会发现,那只是熟悉的风景换了一辆更快的车。

2026-04-10 09:41:16 465

原创 32.【RTL_Synthesis】Scalability & Automation(可扩展性与自动化)

文章摘要:硬件设计自动化与可扩展性实践 本文深入探讨了硬件设计流程中的自动化技术,重点介绍了如何通过脚本和工具链提升效率。主要内容包括: 自动化必要性:解决手工操作带来的不可复现性、错误率高和效率低下问题 工具链选择: Makefile用于依赖管理和增量构建 Shell脚本处理快速命令和文件操作 Python处理复杂逻辑和报告生成 TCL用于EDA工具控制 Makefile实践:展示基础语法、并行执行、条件逻辑和递归Make等高级用法 Python应用:演示日志解析、测试向量生成和HTML报告生成等实用场景

2026-04-10 09:39:38 415

原创 31.【RTL_Synthesis】Low Power Techniques(低功耗技术)

本文深入解析了现代芯片设计中的四种关键低功耗技术。首先分析了功耗的两大来源:动态功耗(与电压平方成正比)和静态功耗(由漏电流产生)。随后详细介绍了时钟门控技术(通过ICG单元消除无效时钟翻转,可节省10-25%功耗)、电源门控技术(彻底切断闲置模块供电,需配合隔离单元和状态保持方案)、多阈值电压优化(在关键路径使用LVT单元,非关键路径使用HVT单元以降低漏电)。最后指出Liberty文件中包含的功耗参数是精确分析的基础。这些技术可协同应用,在保证性能的同时显著降低芯片功耗。

2026-04-09 09:19:29 467

原创 30.【RTL_Synthesis】Clock Domain Crossing(时钟域交叉)

**时钟域交叉(CDC)是芯片设计中极易出错的关键问题,当不同时钟域的信号交互时,可能因亚稳态导致数据错误。亚稳态发生在触发器采样时数据变化违反建立/保持时间要求,导致输出不确定。解决方法包括:1)两级触发器同步器,通过两级采样降低亚稳态概率;2)多比特传输技术,如格雷码(适合计数器)和握手协议(适合任意数据);3)异步FIFO(高吞吐量场景)。设计时必须遵循同步器使用法则,如保护同步器不被优化、确保单比特信号同步等。正确理解CDC问题并采用适当技术,可显著提高芯片可靠性。

2026-04-09 09:18:20 595

原创 29.【RTL_Synthesis】Design For Testability(可测试性设计)

摘要: 可测试性设计(DFT)是芯片制造前必须考虑的环节,通过添加测试电路实现芯片缺陷检测。核心是提升内部节点的可控性与可观测性,主要采用扫描链技术:将触发器改为带扫描功能的单元,形成移位寄存器链,通过串行移入/移出测试向量控制并观察内部状态。ATPG工具基于故障模型(如固定故障)自动生成测试向量,目标达到95%以上覆盖率。DFT友好的RTL编码需避免组合环路、门控时钟,确保触发器复位,并支持测试模式旁路。尽管DFT会增加面积和功耗,但对芯片良率至关重要。设计者需始终将可测试性纳入编码考量。(149字)

2026-04-08 09:33:18 477

原创 28.【RTL_Synthesis】Timing Closure Techniques(时序收敛技术)

时序收敛技术:从违例到优化的系统方法 时序收敛是确保芯片设计满足目标频率的关键过程。文章系统介绍了专业工程师常用的时序优化技术: 关键路径识别:通过工具分析最差路径,找出架构瓶颈和重复问题模式 缓冲器优化:通过插入缓冲器解决高扇出、长线延迟和保持时间问题 门尺寸调整:在关键路径上增大驱动单元尺寸以提升速度 寄存器重定时:平衡流水线各级延迟而不改变总周期数 流水线插入:通过增加寄存器级数大幅提升吞吐量 约束精炼:合理设置时钟不确定性、伪路径和多周期路径约束 系统流程:采用分析-修复-验证的迭代方法,优先解决架

2026-04-08 09:31:58 599

原创 27.【RTL_Synthesis】Multi-Corner Analysis(多角分析)

摘要:多角时序分析是确保芯片在极端条件下稳定工作的关键。本文介绍了PVT(工艺、电压、温度)变化对芯片性能的影响,以及如何通过SS(慢速)、TT(典型)、FF(快速)三个关键角进行全面验证。重点包括:SS角用于建立时间检查(最坏延迟情况),FF角用于保持时间检查(最小延迟情况),以及TT角作为典型性能参考。文章详细讲解了在OpenSTA中设置多角分析的方法和命令脚本,并提供了结果解读和常见时序违规的修复策略。通过完整的验证流程,确保设计在所有工作条件下都能满足时序要求。

2026-04-07 10:38:11 508

原创 26.【RTL_Synthesis】Running Timing Analysis(运行时序分析)

本文介绍了静态时序分析(STA)的关键步骤,重点讲解如何运行和解读setup/hold分析。主要内容包括: Setup分析:检查数据是否在时钟沿前足够稳定,使用慢角(SS)工艺模型,重点关注最大延迟路径。通过OpenSTA的report_checks -path_delay max命令可查看最差路径。 Hold分析:验证数据在时钟沿后保持足够稳定,使用快角(FF)工艺模型,关注最小延迟路径。使用report_checks -path_delay min命令检查。 时序报告解读:详细解析了时序报告的结构,包括

2026-04-07 10:37:00 943

原创 25.【RTL_Synthesis】Synthesis Design Constraints (SDC)(综合设计约束(SDC))

SDC约束文件是芯片设计中的关键文档,它用Tcl语言定义了时序要求,相当于给EDA工具提供"时间表"。摘要如下: SDC文件包含时钟定义、输入输出延迟、伪路径和多周期路径等约束,指导时序分析工具准确验证设计。 基本结构包括: 时钟定义(周期、波形、生成时钟) 输入/输出延迟(与外部设备的接口时序) 设计规则(转换时间、电容等) 采用变量化和模块化编写更易维护 时钟约束是核心,需明确定义: 主时钟和派生时钟(分频/倍频) 异步时钟域关系 时钟特性(不确定性、延迟、转换时间) 输入输出延迟约

2026-04-03 09:47:39 395

原创 24.【RTL_Synthesis】OpenSTA Basics(OpenSTA 基础)

OpenSTA 是芯片设计流程中不可或缺的一环。它让你在流片前,就能精确地知道设计是否能在目标频率下运行,是否存在保持时间风险,以及 I/O 接口是否满足外部要求。核心要点OpenSTA 是开源、工业级的 STA 工具,支持 Liberty、SDC、Verilog 标准。它通过 TCL 命令接口工作,可以交互式使用,也可以脚本化。基本流程:读库 → 读网表 → 链接 → 读约束 → 报告。建立时间(max delay)用慢角分析,保持时间(min delay)用快角分析。

2026-04-03 09:45:34 440

原创 23.【RTL_Synthesis】Static Timing Analysis Fundamentals(静态时序分析基础)

静态时序分析(STA)基础摘要 STA用于验证芯片设计是否满足目标时钟频率下的时序要求,无需仿真即可分析所有路径的建立/保持时间。关键概念包括: 建立/保持时间:定义触发器采样的安全窗口,建立时间检查最大延迟路径,保持时间检查最小延迟路径,分别对应慢/快工艺角分析。 时钟定义:通过周期、波形、延迟等参数配置时钟树,包括生成时钟和虚拟时钟(用于I/O约束)。 输入输出延迟:约束芯片与外部设备的接口时序,确保数据在指定窗口内稳定。 伪路径:排除功能上无效的路径(如异步时钟域),避免虚假违规报告。 多周期路径:放

2026-04-03 09:44:10 473

原创 22.【RTL_Synthesis】Common Synthesis Issues(常见综合问题)

综合问题诊断与修复指南 本文详细介绍了数字电路综合过程中常见的五大问题及其解决方案: 锁存器推断问题:分析不完整if/case语句导致意外锁存器的原因,提供补全分支或赋默认值的修复方法 未映射单元问题:解释技术映射失败的原因,给出检查库完整性、避免不可综合结构等解决方案 组合环路问题:说明组合环路的危险性,提出插入寄存器或重构逻辑的修复策略 未连接端口问题:分析悬空端口的风险,建议明确连接或删除无用端口 Tie单元问题:介绍专用常量单元的作用,指出合理使用数量的标准 文章提供了实用的诊断命令和代码示例,帮助

2026-04-02 09:55:54 498

原创 21.【RTL_Synthesis】Analyzing Synthesis Results(综合结果分析)

数字综合结果分析摘要 本文详细讲解了如何解读RTL综合后的门级网表数据,将原始数字转化为设计洞察。主要内容包括: 统计报告分析:通过stat命令获取单元数量、面积等信息,重点关注反相器比例、时序逻辑占比等关键指标,识别潜在优化点。 关键路径识别:利用ABC工具评估时序性能,分析算术运算、多路选择器等可能成为瓶颈的结构,量化速度与面积的权衡。 网表可视化:使用show命令生成电路图,直观发现扇出过大、组合环路等问题,辅助调试设计缺陷。 网表结构解析:理解自动命名的内部信号,通过常见模式识别计数器、状态机等典型

2026-04-02 09:55:08 455

原创 20.【RTL_Synthesis】Synthesis Scripts(综合脚本)

合成脚本:从临时命令到专业流程 本文介绍了如何将零散的Yosys命令转化为可重复使用的专业合成脚本。主要内容包括: 脚本必要性:通过脚本实现自动化流程,确保结果可重复、可记录和可版本控制 基础脚本示例:展示包含读入设计、层次展开、优化和输出网表的最小脚本 变量化配置:使用变量管理顶层模块、RTL路径、工艺角等参数,提高复用性 时序约束:讲解如何设置时钟周期、输入输出延迟等时序要求 多角合成:实现针对不同工艺角(SS/TT/FF)的自动化合成流程 最佳实践:推荐模块化脚本结构和标准目录布局 文章强调脚本作为&

2026-04-01 10:26:27 823

原创 19.【RTL_Synthesis】Technology Mapping(技术映射)

本文介绍了数字电路设计中的技术映射流程,即将通用逻辑网表转换为特定工艺库标准单元的实现过程。主要内容包括: 技术映射的作用是将与工艺无关的通用逻辑(如$add、$dff)转换为实际可用的标准单元(如FA_X1、DFF_X2)。 ABC工具是Yosys进行技术映射的核心引擎,它通过复杂的算法解决单元选择、驱动强度确定和最优覆盖等问题。 技术映射前必须加载Liberty文件,该文件包含了标准单元的功能、面积、时序等关键信息。 文章详细介绍了ABC命令的使用方法,包括不同优化策略(面积优先、时序优先、平衡优化)的

2026-04-01 10:25:26 458

原创 18. 【RTL_Synthesis】Yosys Synthesis Flow(yosys综合流程)

🔧 Yosys 综合流程:从 RTL 到门电路的实践指南 摘要: 本文详细介绍如何使用开源工具 Yosys 将 RTL 设计综合为门电路。Yosys 提供了透明化的综合流程,适合学习数字电路设计原理。文章首先介绍 Yosys 的三种使用模式(交互式、脚本和内联),然后逐步讲解综合流程:读取 RTL 文件、层次化展开、处理 always 块、优化状态机和存储器等关键步骤。重点展示了如何通过命令将行为级代码转换为结构化逻辑门和触发器,并提供了具体示例和可视化方法。相比商业工具的黑箱操作,Yosys 让设计者能

2026-03-31 09:24:57 673 1

原创 17. 【RTL_Synthesis】Synthesis Fundamentals(逻辑综合)

逻辑综合是把高层次硬件描述(RTL)自动转换成由标准单元组成的门级网表的过程。逻辑综合是把 RTL 翻译成由标准单元组成的门级网表的过程。综合分五步:解析、通用优化、技术映射、工艺优化、网表生成。技术映射是关键,它从库中选择具体单元来实现布尔函数,并决定用多大驱动强度。综合必须在面积、功耗、时序三者间权衡,优化一个通常会损害其他。约束驱动综合让你告诉工具目标,让它自动找最优解。综合结果用面积、时序、功耗指标评估,QoR 决定能否进入后端。Yosys是学习综合的优秀开源工具。

2026-03-31 09:24:08 721

原创 16. 【RTL_Synthesis】Power Information in Liberty Files(Liberty文件中的功耗信息)

这篇文章深入解析了芯片功耗的构成及其在Liberty文件中的建模方式。主要内容包括: 功耗组成:分为静态功耗(漏电)和动态功耗(工作时的耗电)。静态功耗是芯片待机时的消耗,动态功耗则包括内部功耗(短路电流)和开关功耗(负载充放电)。 静态功耗特性: 与晶体管状态相关,Liberty文件用条件语句定义不同输入状态下的漏电值 对温度极其敏感(每升温10°C漏电约翻倍) 工艺角影响显著(FF角漏电最大) 动态功耗模型: 内部功耗:Liberty用二维表描述,与输入转换时间和负载相关 开关功耗:遵循½CV²公式,与

2026-03-30 10:26:52 514

原创 15. 【RTL_Synthesis】Delay Tables and Modeling(延迟表与建模)

摘要 本文深入探讨了数字电路设计中延迟表(NLDM模型)的工作原理与应用。文章解释了为何采用二维表格而非简单公式来建模门延迟,关键点包括: 建模必要性:CMOS门本质是模拟电路,但数字设计需要快速计算数百万门的时序,因此预先通过SPICE仿真生成查值表格。 表格结构:延迟取决于输入转换时间和输出负载两个非线性变量,形成5×5或7×7的二维表。表格索引采用非均匀分布以优化精度和存储效率。 实际应用:介绍了插值计算方法、外推风险,以及如何通过时序报告验证延迟数据的可靠性。 设计约束:强调必须遵守max_tran

2026-03-30 10:24:25 525

原创 14. 【RTL_Synthesis】Cell Characterization Data(cell特性数据)

文章摘要:标准单元特征化数据解析 本文深入解析了标准单元特征化数据在芯片设计中的关键作用。时序弧作为时序分析的最小单位,描述了输入到输出的信号传播关系,包含方向性(positive_unate/negative_unate)和条件依赖性。Liberty文件通过查表模型精确表征延迟特性,其中二维表格考虑了输入转换时间和输出负载两个关键变量,反映了晶体管工作的非线性特性。 时序单元(如触发器)的特征更为复杂,涉及建立时间、保持时间和时钟到输出延迟三个核心参数。特别值得注意的是,建立/保持时间并非固定值,而是随信

2026-03-30 10:22:41 441

原创 13. 【RTL_Synthesis】Process Corners Explained(工艺角解析)

工艺角(Process Corners)是芯片设计中的关键概念,用于模拟制造过程中不可避免的晶体管性能差异。文章将工艺角比喻为"天气预报",形象地解释了五种典型场景:SS(慢速)、TT(典型)、FF(快速)以及SF/FS(不平衡)。每个工艺角对应不同的晶体管特性(阈值电压、栅氧化层厚度等)和电性能(延迟、驱动能力等)。设计时必须同时考虑工艺角与电压、温度的组合(PVT),特别是SS角用于建立时间检查,FF角用于保持时间验证。文章强调仅检查TT角会导致量产风险,并指出了常见误区,如忽略交叉

2026-03-29 07:15:00 414

原创 12. 【RTL_Synthesis】Introduction to Liberty Format(自由格式简介)

Liberty文件是数字芯片设计中的关键文件,相当于标准单元库的"菜单"和"说明书"。它包含三大核心信息: 单元特性数据:提供时序、功耗等参数 功能描述:用布尔表达式定义逻辑功能 工作条件:标明电压、温度等环境参数 Liberty文件采用非线性延迟模型(NLDM),通过二维表格表示不同条件下的延时特性。设计时需要使用多个Liberty文件(如TT/FF/SS工艺角)来确保芯片在各种工作环境下都能正常工作。文件采用层次化结构,包含库定义、单元特性和时序弧等关键部分,为综

2026-03-29 07:00:00 379

C语言教程全书(第三版)

讲述了c语言从入门到精通。很多c语言的细节。涵盖核心概念、算法、数据类型、函数与文件操作。

2025-02-13

数字IC测试机架构与测试理论指导书

内容概要:本文介绍了从1958年至现代数字集成电路(IC)测试机的发展历程,包括各个时期代表性机型的特点、硬件和软件系统的变化,深入探讨了多种专业术语的概念,如Wafer Test、Package Test等。还详细解释了测试设备的基本组成,特别是FUNCTIONAL测原理和技术参数测定的方法论。这是一份面向专业技术人员的技术指南,涵盖了许多具体测试案例与实测技术解析,有助于理解和掌握IC制造工艺中质量保障流程的关键要素。 适合人群:半导体产业相关研究人员、电子制造业从业人员以及对数字电路测试有兴趣的专业读者。 使用场景及目标:用于培训新员工了解IC测试的基础知识和服务供应商沟通时确保双方理解一致,也可为科研机构和高校院系提供教学参考资料。此外,还可以帮助企业改进现有产品的生产管理与质量检验标准。 阅读建议:由于文中涉及大量特定领域的专有名词和复杂技术细节,建议读者预先熟悉基础电气工程概念并在阅读过程中随时查阅资料补充背景信息,以增强理解深度并获得最大价值。对于初次接触本主题的人来说,

2025-02-13

Linux命令详解与实战

内容概要:本文详细介绍了Linux系统的各项基本知识和技术要点,主要包括了命令分类以及具体命令功能。文档涵盖了进程管理(如bg、fg)、系统管理(如ps、pstree)、关机与重启(shutdown等)等方面的常用命令;还涉及了文件系统操作与管理(如find、chmod、chown等)、文件查找命令(like which),并深入讲解了查看文件和内容处理的各类命令(如cat,head);除此之外还包括用户管理、磁盘操作及网络操作命令。每个命令都配以明确简洁的功能解释。此外,文档也包括了一些内置命令(例如clear)和其他实用的查询、辅助工具(man,help)。这些知识点为Linux初学者乃至有经验的操作员提供了宝贵的指南。 适用人群:对于需要掌握Linux基础命令的技术人员、运维工程师以及对Linux操作系统有兴趣的自学人员均非常适合。无论是作为教学资料还是日常工作指导手册,都有很大帮助价值。 使用场景及目标:这份详细的命令汇总可用于培训课程教材,个人技能提升学习材料或是日常工作中的备查手册。其主要目的是使读者快速了解并熟练运用多种常见的Linux Shell命令完成实际工作的需要。

2025-02-13

无刷直流电机概念和简述

是大佬分享给我看的,一直再学习,里面对于直流无刷电机的电调说的还是很好的,对于出入门者或者验证者学习了解背景还是很有帮助的。

2023-06-08

I2C-slave-设计及验证代码包

可以用来测试,希望对大家有用,iIC slave 里面的ip 核是使用Verilog 编写

2020-03-03

【数字电路设计】数字电路整理与优化培训手册:从基础操作到高级功能详解. 文档概述

内容概要:本文档《数字电路整理培训手册.pdf》详细介绍了数字电路整理的全流程,涵盖从项目基本情况确认到最终的项目优化。首先,明确了项目的基本情况,包括查看 Datasheet、电路规模、管脚和单元。接着,描述了备份工作和命名规则,强调了整理前后的操作规范。文档重点讲解了软件处理部分,涉及时钟网络、复位网络、触发器、加法器链、奇偶校验等功能的具体操作步骤。此外,还涵盖了人工处理部分,如处理软件自动化数据和零散数据的方法。最后,针对项目优化提出了添加注释、画数据流向框图、修改管脚名称、总线处理、打包模块、修改符号图和层次化检查等具体措施。 适合人群:具备一定电子电路基础知识,从事数字电路设计、整理和验证工作的工程师和技术人员。 使用场景及目标:①帮助工程师掌握数字电路整理的完整流程,提高工作效率;②指导用户进行电路整理和优化;③确保电路整理过程中的规范性和准确性,减少错误和返工。 阅读建议:此手册内容详尽,涵盖大量实际操作步骤,建议读者在阅读时结合实际项目进行练习,并根据具体需求灵活应用文中提供的各种技巧和方法。同时,建议读者在实践中不断总结经验,逐步掌握数字电路整理的核心技能。

2025-06-06

硬件验证中的高效Bug发现与定位:关键技能、最佳实践及人员协作策略

内容概要:这篇文章详述了硬件验证领域的核心技术与最佳实践经验,旨在提高验证人员发现和准确定位Bug的能力。首先明确验证的核心目的是为了确保所有Bug被发现或证明其不存在。文章探讨了如何利用最简单的手法直接有效达成20%的重要Bug发现目标,而非被华丽的验证工具和技术迷惑。其次强调了扩大验证人员视角的意义,并指出通过深层次分析设计与实现的关系来更好地定位潜在缺陷。接着,文章提倡以检视为早期发现Bug的关键手段,介绍了如何通过细致的代码审查、关键波形追踪和其他辅助手段提高检视的效果。还强调在项目执行过程中要重视团队内部人员的适配性与合作方式,并提出了一些有效的团队管理和分工建议,比如根据每个人的特点来定制工作任务,增强验证设计环节的衔接度。最后文章警示对仿真测试结果持审慎态度,提出了应对波形分析的有效方法及注意事项,如优先查看波形中的X、Z值及关键时钟信号。 适合人群:从事集成电路设计验证领域的工程师或即将步入该领域的新人,对已有一定的逻辑电路设计、验证流程的基础了解。 使用场景及目标:①优化Bug发现及定位策略;②改进团队工作方式以加快项目进度;③加强验证环节的质量控制。

2025-02-13

Cadence数字仿真工具Xcelium(xrun)操作指南与高级功能应用

内容概要:本文档详细介绍了 Cadence 数字仿真工具 Xcelium (xrun) 的基本使用方法以及多种高级特性,从基础操作到调试技巧进行全面覆盖。它讲解了 xrun 在 Linux环境下的配置检查、简单的单步仿真、多阶段分离仿真、基础仿真选项的应用,并深入探讨如 xcelium.d 目录的作用、各类波形文件的创建方法、覆盖率的收集策略,还有Gate Level Simulation(GLS)时遇到的具体参数调整,尤其针对复杂工程中常见的错误和解决途径给出了指导。 适合人群:面向硬件验证工程师、芯片设计师及任何对半导体设计自动化感兴趣的从业人员或学者,无论是初学者还是已有经验的技术人员皆能从中获益。 使用场景及目标:文档旨在为用户提供详尽的操作指引和支持资料查询的方式,使用户可以在项目规划、日常任务实施或是故障排查等过程中提高效率和准确性。 其他说明:由于涉及到大量专业术语和技术细节,在实际运用前请充分熟悉所使用的Cadence软件及其相关概念并参考官方提供的完整文档获取更多信息。此外,为了更好地理解和掌握文档内容,建议实践中配合实验来加深理解。

2025-02-13

Vim编辑器用户手册:深入理解和高效应用技巧(文本编辑、程序开发、文件管理)

内容概要:本文档是Vim编辑器的官方用户手册,旨在指导用户深入了解和掌握Vim的各种高级功能及其应用场景。文章主要分为以下几个部分:首先是入门指南,强调Vim作为一种技能而非单纯的知识型工具,在学习过程中需多加实践操作;接着详细介绍Vim的多项实用功能和技术要点,包括基本命令、模式切换、光标移动、文本编辑、文件管理与备份策略、跨文件操作、复制粘贴、寄存器的使用方法、GUI特性、宏录制播放、自动命令的应用以及面向开发者的增强特性等;然后探讨如何通过编写插件及自动化脚本拓展Vim的功能;并对常见问题提供解决方案。除此之外,本文还分享了许多提高生产力的具体实例和建议,强调了良好的习惯养成对于长期高效工作的意义。 适合人群:适合具有一定编程基础,尤其是从事文本处理、代码编写等工作的开发人员。 使用场景及目标:帮助用户更深入理解Vim的强大功能,并将其应用于日常工作中以提高工作效率;具体来说,在编写或维护C/C++、Python、Shell等多种编程语言时均可发挥巨大价值;同时也可用于撰写纯文本、Markdown文档等领域。

2025-02-13

eda工具手册:icc学习笔记

eda工具手册:icc学习笔记

2025-02-13

IC数字电路设计基础教程PDF:初学者指南,涵盖Verilog HDL与Linux基础命令

内容概要:《Ic数字电路设计初学者手册.pdf》涵盖从IC设计简介到具体数字电路设计技术和流程的相关知识点。内容主要分为数字IC设计的总体流程,Linux系统操作,数字电路基础知识,Verilog HDL语言详解等方面。手册中对数字电路系统设计方法的发展进行了回顾,并强调HDL语言对数字系统设计带来的巨大推动作用,尤其是在从系统级到底层逻辑描述等多个抽象层次进行硬件设计的能力方面表现显著。另外,该手册还详尽介绍了Verilog的三大描述方式——数据流描述、行为描述和结构化描述;阐述了Verilog语言的基本语法和各类变量的使用规范,并涉及了如何编写Testbench用于逻辑验证的具体步骤,旨在为初学者提供全面的理论和实践引导。 适合人群:具备一定电路基础知识的学生群体、工程师及其他对数字电路设计有兴趣的专业人士。 使用场景及目标:适用于正在准备涉足数字IC领域的新人,希望掌握数字电路设计的基础理论和技术方法;可用于个人自学。本手册意在帮助读者构建扎实的知识体系,培养实际动手能力和解决问题的技巧。

2025-02-12

verilog教程.pdf

关于Verilog的基础语法和一些基础案例,Verilog的快速入门,里面后面几章附带了一些比较有用的案例项目可以练习,我个人就是用这本书入门Verilog。

2020-06-09

Memory bist测试方法.docx

以固定形式扫描存储器阵列 其中包括全写0或者全写1情况,最后一步为读取所有存储单元。测试次数与存储单元容量N成正比,关系为测试次数T=4N。这种算法可以测试SAF故障,还可为施加其他测试序列做好准备。

2020-09-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除