当前位置:首页 > 工业控制 > 电子设计自动化
[导读]多年来一系列的改进使得 HDL 软件仿真器变得愈加完美。现在,它是一款不可限量的工具,是设计验证和假设分析中必不可少的工具,但其还是有自身的局限性,即设计规模不能超过 1 亿个 ASIC 等效门。这种限制较为随意,事实上,仍然可以对更大型的设计进行软件仿真,只是执行速度奇慢无比。

大约在 40 年前,Comprehensive Computing Systems and Services公司在市场上推出了首个名为 TEGAS 的商业数字软件仿真器,该设备主要用于测试生成和软件仿真系统。这一对门级电路进行仿真的系统由一个小型专家团队开发,而在此之前只有针对晶体管级电路进行仿真的模拟仿真软件。TEGAS 是其专用的描述语言。这种语言仅用于生成数字电路测试向量。最终,仍须通过原型板进行设计验证。

随着 20 世纪 80 年代早期计算机辅助工程 (CAE) 行业的兴起,数字软件仿真器或逻辑软件仿真也在电子工程界流行起来,成为设计验证的主要手段。到 20 世纪 90 年代末,数字软件仿真器逐渐发展演变为寄存器传输级 (RTL) 软件仿真器,这种软件仿真器支持两种流行的硬件描述语言 (HDLs)—— Verilog 和 VHDL。现有的 EDA(电子设计自动化,CAE 和 CAD 的产物)供应商用了十多年的时间在同一个工具中支持这两种语言。如今,Synopsys、Cadence 和 Mentor Graphics这三家大型 EDA 供应商,都提供各自的 HDL 软件仿真器,在市场上呈现三足鼎立的状态。

多年来一系列的改进使得 HDL 软件仿真器变得愈加完美。现在,它是一款不可限量的工具,是设计验证和假设分析中必不可少的工具,但其还是有自身的局限性,即设计规模不能超过 1 亿个 ASIC 等效门。这种限制较为随意,事实上,仍然可以对更大型的设计进行软件仿真,只是执行速度奇慢无比。

一个示例

若要使用在 10 Hz 下运行的现代软件仿真器来仿真在 100 MHz 下运行的 1 亿 ASIC 门设计上的一秒钟的真实数据,这绝非易事。在这种设计复杂度下,可能需要花费 1 千万秒的时间。即 2,778 小时,或者 115 天。一秒钟的 100 MHz 真实数据等于 1 亿个时钟周期,这个数字相当大,可能会超出处理典型测试平台的要求。在处理典型测试平台时,一毫秒或者更短时间就足够了,在大内存配置的最新 PC 上运行时,则会将执行时间缩短至一天或更短。这是个合理的目标。

HDL 软件仿真器可以在 PC 场中并行运行,每个 PC 会处理功能完善的测试平台。半导体公司有成千上万台 PC 构成的计算场全天运行。

但 1 亿周期仍不足以处理嵌入式软件设计。由于处理软件在本质上为串行流程,所以对于这项任务来说,有必要按顺序执行数十亿周期。然而,带有 HDL 软件仿真许可的 PC 场却鞭长莫及。软件程序无法在子集中进行拆分,再并行运行。

那么,要如何验证 SoC 设计的嵌入式软件呢?

进入硬件仿真时代

硬件仿真其实由来已久,它给设计人员在流片前提供了一种更为准确的电路行为描述,因为硬件仿真是通过真实的电路和逻辑来实现设计。硬件仿真始于 20 世纪 80 年代末,在 20 世纪 90 年代末盛行,当时主要是通过商业 FPGA 进行实现,用于验证需要较长测试周期的处理器和图形设计。它们也遇到诸如电路建模难度高以及可靠性低等各种问题。其成本也较为高昂,并且作为单用户资源,其投资回报较低。然而,硬件仿真器的出色执行速度仍使其成为长处理周期的必要工具。

还是之前的示例,在 1 MHz 下运行的硬件仿真器需要花费 100 秒来执行 1 秒钟的真实数据以及处理 1 亿次周期。硬件仿真器可以在一小时左右的时间内启动操作系统。而且,硬件仿真器的投入比重新流片便宜得多。

图 1:不同设计规模下软件仿真与硬件仿真性能对比。

HDL 软件仿真器由于缓存缺失和内存交换,其执行速度会随着设计规模增加而急剧下降。不过与之不同的是,在此情况下,硬件仿真器的性能只会受到轻微影响(见图 1)。

由于商用 FPGA 硬件仿真器有一定的限制性,定制芯片硬件仿真器由此应运而生。这种硬件仿真器主要有两种不同类型:由 Mentor Graphics 提供的定制 FPGA 硬件仿真器,又称片上硬件仿真器;以及由 Cadence Design Systems 提供的基于处理器的硬件仿真器。同时,Synopsys 也支持使用比标准 FPGA 硬件仿真器更为先进且功能有所增强的最新商用 FPGA 硬件仿真器。

直到十年前,硬件仿真器才在电路硬件仿真 (ICE) 模式中被单独部署为物理测试环境。由于当流片提供激励和处理响应时,被测设计 (DUT) 将最终驻留在此环境中。因为难以进行设置,ICE 模式现在并不常见,而对更加灵活的测试环境的需求却在不断增长。应用硬件桥没有可控性/可再现性,并且由于安装时间和维护成本的增加,其还会增加测试环境的复杂度。由于可合成的测试平台能在硬件仿真器内部进行映射,并且无需依赖外部环境便可以硬件仿真器的最高速度执行,因此该测试平台区域还有其他可行的替代方案。不过遗憾的是,它们不易开发。

基于事务的验证或加速(TBV 或 TBX)是业内最看好的方法,具有两方面的优势。首先,能采用少一个数量级的代码行,在更高抽象层次写入测试平台,简便而又不易出错。其次,由于在硬件仿真器内部映射晶体管的总线功能模型 (BFM) 实现了急剧加速,这些测试平台比传统 RTL 平台执行更快。另一个益处是,当用户切换设计或新用户登录时,TBV 或 TBX 不需要人为监督来处理速度适配器。这种方式也适合于远程访问。

何时使用软件仿真,何时使用硬件仿真

HDL 软件仿真器适用于设计周期早期阶段的硬件调试,早期阶段的设计主要专注于模块级别。凭借易用、快速设置、极速设计编译等特点,它们可以极其灵活地调试硬件设计。它们还支持每天进行多次设计迭代…只要设计规模合理。但在数千万门级别时会出现问题,这在现在看来只是典型的系统级设计验证。如上所述,它们并不适合嵌入式软件验证。

相反,硬件仿真能找到几乎所有设计缺陷,无论是在硬件中还是在 SoC 嵌入式软件中。硬件仿真可处理任何设计规模,但需要较长时间进行环境搭建,至少一天,也可能更长时间。而且,相比软件仿真器,其编译速度相对较慢,大约需要一小时以上才能完成编译(见图 2)。

图 2:基于性能、设计能力和设置/编译时间的软件仿真与硬件仿真对比。

现代硬件仿真器支持多个并发用户,包括通过远程访问,因此可增加投资回报。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭