数字IC基础:HDL数字仿真器的历史

发布时间:2026/6/26 22:37:55

数字IC基础:HDL数字仿真器的历史 相关阅读数字IC基础https://blog.csdn.net/weixin_45791458/category_12365795.htmlCadence数字仿真器的历史很大程度上就是HDL硬件描述语言的历史。1985年Gateway Design Automation推出了Verilog语言及其仿真器Verilog-XL。这是第一个被广泛使用的商业HDL仿真器之一也是最具有代表性的事件驱动型Verilog仿真器。在1989年收购Gateway Design Automation后1988年成立的Cadence在90年代推出NC-Verilog它可以被看作是面向更大规模工业设计环境的一代高性能仿真器。与Verilog-XL相比NC-Verilog更强调性能、容量以及与完整设计流程的适配能力也更符合SoC时代对RTL仿真的要求。进入2000年代后芯片验证复杂度急剧上升仿真器的角色也开始发生变化。Cadence推出的Incisive Unified Simulator以及后续的Incisive Enterprise Simulator已经不只是传统意义上的HDL仿真器而是更大验证平台的一部分。它们所对应的时代正是覆盖率驱动验证、断言、SystemVerilog、验证方法学和平台化流程逐步成熟的阶段。仿真器开始与覆盖率分析、验证管理、形式验证、硬件加速等能力协同工作。到了2017年Cadence又以Xcelium取代Incisive代表其新一代数字仿真平台。Xcelium面向现代SystemVerilog/UVM验证环境强调多核并行、高性能编译与仿真以及与更大规模验证基础设施的整合。从Verilog-XL到XceliumCadence数字仿真器的发展历程实际上折射出整个数字验证产业近四十年的演进从语言驱动走向平台驱动从单一RTL仿真走向复杂SoC的验证闭环。Synopsys与Cadence不同Synopsys并不是从HDL仿真器起家的。Synopsys成立于1986年官方资料明确将其描述为一家“以综合起家”的公司。这意味着Synopsys在数字仿真领域的崛起并不是语言起源式的发展路径而更像是在既有EDA优势基础上通过高性能技术路线与并购逐步建立起来的。Synopsys数字仿真器历史的核心产品是VCS但VCS的源头并不在Synopsys内部而是来自Chronologic Simulation。行业历史资料普遍将Chronologic视为VCS的开发者并强调其主要创新是compiled-code simulation通过将Verilog编译为C再进行编译执行以获得明显高于解释式仿真的性能。正因为如此VCS很早就以“高速Verilog仿真器”的形象进入市场并与当时依靠解释执行的的Verilog-XL形成鲜明对照。从公司沿革来看VCS是经过并购链进入Synopsys体系的。Chronologic于1994年被Viewlogic收购而Synopsys又在1997年收购了Viewlogic。也就是说VCS成为Synopsys产品版图一部分的关键节点是1997年Synopsys对Viewlogic的收购。如果说VCS奠定了Synopsys在仿真性能方面的地位那么Synopsys对数字验证领域更深远的影响还体现在验证语言和方法学上。2001年Synopsys推动OpenVera走向开放2002年又将OpenVera assertions捐赠给Accellera。同一时期SystemVerilog的形成与Superlog技术路线密切相关而Synopsys也在2002年收购了Co-Design Automation以加速下一代HDL的发展。到了2005年Synopsys推出的VMM方法学进一步强化了它在验证平台和方法学上的话语权。进入现代SoC验证阶段后VCS逐渐从单纯的HDL仿真器演变为完整功能验证解决方案中的核心执行引擎。Synopsys当前官方页面强调VCS在多核并行、覆盖率分析、约束求解、以及与Verdi和VC Formal等工具的原生集成能力2016年发布的Cheetah并行仿真技术则进一步体现了其持续围绕性能和容量进行演进的路线。总体而言Synopsys的数字仿真器历史不只是VCS一个产品的演化史更是一条从compiled-code simulation延伸到验证语言、方法学和平台整合的技术路线Siemens EDA如果要梳理Siemens EDA的数字仿真器历史真正的起点并不在Siemens而在其前身Mentor Graphics。Mentor Graphics成立于1981年长期是EDA行业的核心厂商之一。Siemens于2017年完成对Mentor Graphics的收购此后Mentor先以“Mentor, a Siemens Business”继续运营直到2021年进一步统一为Siemens EDA。因此今天Siemens EDA的数字仿真器产品线本质上继承自Mentor Graphics的历史积累。在Mentor这条产品谱系中最重要的早期数字仿真器是 ModelSim。从公开可见的Mentor文档来看ModelSim的版权起始年可以追溯到1991年这也是业界通常采用的首发时间。与同时代其他厂商的产品相比ModelSim的特点并不只是“能跑 HDL”而是长期在VHDL/Verilog混合仿真、GUI调试和工程易用性上形成了鲜明风格并在FPGA、教学和通用RTL仿真环境中获得了很高普及度。进入2000年代后随着SoC验证复杂度快速上升Mentor的仿真器路线也开始从传统simulator向更完整的验证平台升级。2005年Mentor推出了新的Questa验证产品线这通常被视为QuestaSim的起点。与更偏“经典仿真器”定位的ModelSim相比Questa/QuestaSim更强调SystemVerilog、assertion、coverage-driven verification以及复杂验证环境下的调试分析能力。这标志着Mentor的数字仿真器已经不再只是HDL执行引擎而是成为功能验证平台的一部分。在Siemens收购Mentor之后这条产品线并没有中断而是继续沿着Questa品牌演进。今天Siemens EDA官方仍将Questa作为数字仿真与验证的核心品牌并进一步扩展为Questa One这样的更大平台化形态。换句话说Siemens EDA在数字仿真领域的历史并不是一条从零开始的新路线而是Mentor Graphics的ModelSim/Questa血统在Siemens体系中的延续与升级。Aldec与Cadence、Synopsys、Mentor这些围绕大型ASIC/SoC流程形成主线的EDA厂商相比Aldec的数字仿真器历史更带有一条鲜明的“PC/Windows设计环境-HDL仿真-高端验证平台”的演进路径。Aldec由Stanley Hyduke于1984年创立早期公司名称即来自Automated Logic Design Company。从创立之初开始Aldec就不仅关注单纯的仿真内核也重视设计输入、调试与验证环境的一体化。在1990年代随着HDL设计逐步取代纯原理图/门级输入Aldec的产品线也发生了转向。公司先后经历了SUSIE、Active-CAD等早期阶段最终在1997年正式推出Active-HDL。Aldec官方时间线将其定义为“Graphical Design Entry and Mixed Language Simulator”这也准确概括了Active-HDL的历史角色它不仅是一个HDL仿真器更是一个强调图形化工作流、混合语言支持以及较强易用性的开发环境。正因如此Active-HDL长期在FPGA开发、教学和工程入门场景中拥有稳定影响力。进入2000年代后Aldec又推出了面向更复杂设计与验证需求的Riviera-PRO。Aldec官方资料显示Riviera-PRO于2002年发布其最初定位就是“Common Kernel, Multi-platform Mixed HDL Software Simulator”。这标志着Aldec不再只强调Windows下的图形化仿真环境而开始将产品扩展到更高性能、更复杂验证流程和更多平台支持的方向。与Active-HDL相比Riviera-PRO更像Aldec面向大型FPGA与SoC验证任务的高端产品。随着SystemVerilog、UVM和更复杂验证方法学的普及Riviera-PRO又逐渐从“混合HDL仿真器”演进为更完整的验证平台。Aldec近年的官方资料仍把它作为复杂FPGA/SoC设计的主力验证产品而Active-HDL则继续保持其在图形化设计、FPGA流程和较通用HDL仿真环境中的特色。总体来看Aldec的数字仿真器历史并不是一条单纯追求“最大ASIC市场份额”的路线而更像是在FPGA、混合语言仿真、工程易用性和逐步升级的验证能力之间形成了自己的产品风格Verilator如果说商业数字仿真器的发展主线长期由Cadence、Synopsys和Mentor/SiemensEDA主导那么Verilator则代表了另一条非常重要的分支开源、编译式、偏向可综合RTL的高速仿真路线Verilator官方将自己定义为开源的Verilog/SystemVerilog simulator与lint工具并强调它会把设计编译成经过优化、可选多线程划分的C或SystemC模型来执行而不是走传统解释式仿真路径。从历史上看Verilator的源头可以追溯到1995年当时它已在Digital Equipment Corporation内部用于多媒体和网络处理器开发到1998年Digital同意将源码公开发布这也是通常把Verilator的公开起点写成1998年的主要依据。Verilator官方“Contributors and Origins”页面明确记录了这段历史因此在“数字仿真器发展史”里Verilator完全可以被视为1990年代后期开源HDL仿真器的重要代表。Verilator最核心的技术特征是它与传统事件驱动商用仿真器在实现思路上的明显差异。按照官方说明Verilator并不是简单把Verilog文本逐句解释执行而是将输入代码转换为一个优化后的C/SystemC模型再由宿主编译器生成最终可执行程序官方README甚至直接强调这种方式在单线程下也能比解释型Verilog仿真器快很多并且还能通过多线程继续加速。也正因为如此Verilator更像是“RTL到高性能软件模型的编译器”而不只是传统意义上的通用HDL simulator。这条技术路线也决定了Verilator的典型适用场景。它尤其适合可综合RTL的快速执行、批量回归、CI集成以及与C/SystemC软件环境联动。官方连接文档显示在C输出模式下用户通常需要自己编写一个C wrapper和主循环来驱动仿真实例化生成的模型类并调用eval()等接口完成执行。这种使用方式和传统GUI驱动的商业仿真器非常不同却也让Verilator天然更适合自动化脚本、软件协同验证和开源硬件工作流。当然Verilator的意义不只是“免费替代品”。更准确地说它代表了数字仿真器历史中一种不同于经典事件驱动仿真器的工程哲学尽量围绕性能、可集成性和软件化接口来组织仿真流程。官方README既把它定义为simulator也把lint system作为同等重要的组成部分这说明Verilator从一开始就不是单纯追求“尽可能完整地模仿传统商用仿真器”而是在高速执行和工程实用性之间做了非常鲜明的取舍。因此如果把Verilator放入数字仿真器的大历史中来看它最合适的定位不是“商用仿真器的廉价开源副本”而是开源硬件时代最有影响力的编译式RTL仿真平台之一。它延续了1990年代以来“通过编译提高仿真性能”的思想但又把这种思路带入了开源社区和现代软件工程体系之中使数字仿真器的发展不再只由传统商业EDA公司定义。Icarus Verilog如果说Verilator代表了开源世界里偏高性能、偏编译式RTL执行的一条路线那么Icarus Verilog则代表了另一条更“经典”的开源数字仿真器道路它面向IEEE 1364 Verilog长期作为自由软件社区中最普及的Verilog编译与仿真工具之一存在。Icarus Verilog官方仓库将其定义为一个Verilog编译器目标是编译IEEE 1364标准所描述的Verilog同时也逐步支持部分SystemVerilog项目还明确强调它“并不以传统意义上的simulator为目标”而是一个为后端工具生成代码的编译器。从历史上看Icarus Verilog的起点通常可以追溯到1998年。虽然当前官方文档更强调安装与使用而不是专门写一篇“项目简史”但公开资料普遍把1998年视作其最早可追溯的公开起点与此同时今天的官方文档与源代码仓库也表明这个项目并不是历史遗迹而是仍在持续维护、发布和演进。安装文档直接说明源码当前托管在GitHub上并区分开发分支与稳定分支显示它仍是一个活跃项目。Icarus Verilog最值得强调的地方在于它的定位并不是GUI式、重平台化的商业验证环境而是一个轻量、可脚本化、以编译流程为核心的开源工具链。官方仓库说明中写得很清楚Icarus Verilog会把源代码编译为供后端工具使用的代码在常见批处理仿真流程里它会先生成中间形式再由后端执行器运行。这种架构使它天然适合命令行工作流、自动化回归、教学实验和开源项目集成。也正因为这种定位Icarus Verilog在开源硬件和教学场景中长期很有生命力。它并不试图复制VCS、Xcelium或Questa那样的完整商用验证平台而是以“免费、可获取、足够实用”的方式成为很多人接触Verilog仿真的第一站。围绕它形成的典型使用方式往往是Icarus VerilogGTKWave前者负责编译和运行后者负责波形查看。GTKWave官方手册甚至专门提到Icarus Verilog原生支持若干GTKWave相关波形格式这也从侧面说明二者在开源流程中的长期配合关系。从技术气质上看Icarus Verilog和Verilator也形成了一个很有意思的对照。Verilator更强调把可综合RTL转换为高性能C/SystemC模型以追求速度而Icarus Verilog则更像一个面向标准Verilog语言本体的开源编译/仿真实现重点在于可用性、可移植性和自由软件生态中的通用价值。官方项目介绍把“compile ALL of the Verilog HDL”作为目标这种表述本身就说明它的历史意义并不在“最快”而在于成为一个长期存在、不断逼近标准实现的开放工具。因此如果把Icarus Verilog放入数字仿真器的大历史中来看它最合适的定位不是“简化版商用仿真器”而是开源Verilog编译与仿真基础设施的代表性项目。它让Verilog仿真不再完全依赖商业EDA许可也为教学、研究、个人项目和开源硬件社区提供了一条稳定可行的路径。和Verilator一样Icarus Verilog证明了数字仿真器的发展并不只属于商业巨头也可以在开源社区中沿着另一种节奏持续演进。

相关新闻