可携式刺激源标准(PSS)是最新的业界标准,其用来规范测试意图与行为,让测试刺激源可重复套用到不同的目标平台。PSS不仅改变了系统单芯片(SoC)传统的确认和验证方法也带来了许多优势和挑战。本文从SystemC通过通用型,通过效率分析探索互联总线架构的生命周期PSS确认和验证流量生成器。
随着设计要求的日益复杂,验证技巧和方法不断演变。可携式刺激源标准(PSS)它是进化的最新产物,其目的是测试可移植性的挑战。新型PSS允许用户在不同的目标平台上重复应用测试意图。除可移植性外,PSS验证技能还提供视觉测试代表性、限制设置、数据流随机性和更高的测试质量等多种价值。
后续的过程演变包括SoC确认和验证验证流程PSS技能对理解其影响非常重要。本文探讨了这些演变,提出了互联总线架构的案例研究SystemC效率分析、解释、确认和验证过程。
设计特点
包括SystemC模型分析、架构探索和高级合成(HLS)在传统的设计和整合过程中,流程演变越来越普遍。这些过程演变衍生出许多要求,包括检查是否符合系统设计的要求。参与这些过程的团队将使用不同类型的平台和语言来推动这些演变。虽然存在这些差异,但后续流程的基本规格是相同的,导致许多重复工作。
架构研发团队的使用SystemC探索架构TLM模型分析法建立虚拟平台,藉以执行架构探索与软件开发。组件设计团队则会在模块层级设计Verilog通过人工或自动化程序工或自动化程序建立系统。
IP通常采用等级验证UVM验证在IP在系统层次上,使用C语言UVM方法。UVM环境允许检查组件IP从级别到系统级别可以很容易地重复使用,但测试刺激源通常会在顶层重写UVM在芯片级处理器上运行环境操作,或使用C语言写作。建立测试组件验证startup由于测试平台需要新的测试程序或必须在评估板上运行,类别/组态和模块的基本模式将在实际芯片测试过程中重复执行。因此,软件团队必须为客户界面编写驱动程序。
南皇电子专注于整合中国优质电子AD代理国内领先的现货资源,提供合理的行业价格、战略备货、快速交付控制AD芯片供应商,轻松满足您的需求AD芯片采购需求.(http://www.icbuyshop.com/)
当每个团队使用不同的语言和技能进行重复性工作时,往往会导致假性bug通知并大大减缓了上市时间表。因此,行业需要更好的解决方案,使整个项目中所有编写测试代码的人员都能使用一套共同的语言,并使大多数功能验证测试能够在水平和垂直方面无缝重复使用。这种不同的方法是PSS验证技能带来的优势。
PSS定义新的测试写作语言,使行业能够自动生成测试程序,并将单个测试源应用于不同的平台。除了水平可重复使用(模拟、模拟、板级、测试仪等)外,新语言还允许测试程序的垂直可重复使用。IP层层开发的测试程序SoC层级上可更轻易整合与重复使用。
可携式刺激源在更高的抽象层上运行,与目标平台的类型完全独立。这里的目标平台可以是UVM公式验证环境,C/C 与SoC型环境、C语言与PythonR芯片后评估平台等。
PSS应用程序为在各个层面上进行测试和测试意图提供了建立通用应用程序的优秀机会。多处理器SoC在使用互联总线时,也会有类似的机会。我们需要在不同层次上检查和评估功能和效率。
因为必须依据SoC系统模型分析可用于具体需求的明智选择,因此需要进行初始效率分析(通常是C/SystemC语言撰写)。在这方面,必须建立模型的测试程序。选择组态和生成RTL之后,需要执行IP层次检查。这方面需要实施UVM验证以及UBM程序。因此,产生的RTL除了在SoC系统级别的集成还需要执行SoC层次验证。这通常是写作C/C 执行程序的验证与确认
所有这些互连验证应用都可以使用PS建立可重复使用的测试程序。要完成这项工作,将建立一个通用流量生成器PSS该模型将针对不同的主控器(master)建立不同的读写模式。流量生成器为模拟每个主控器产生不同分布的流量(emulated)主控器高速慢速。
此外,我们还可以控制哪个主控器在什么频率下产生流量,并建立连续性(back-to-back)交易延迟。图1显示运用PSS流量生成器的流程。紫色模块代表通用从属端和主控器的互连总线,绿色模块代表RTL,或驱动总线交易的行为模式。PSS该模块用于驱动和收集交易。除了满足不同类型流量的需求外,流量生产器还针对SystemC应用、UVM、以及C语言测试等各种目标建立测试。每个程序在整合和测试方面都有不同的处理方法,我们稍后会详细介绍。
图1 : 在效率分析和验证中,互联总线PSS流程
互连总线的SystemC效能分析
互联总线的效率分析是SoC在开发过程中,尽量测量系统的效率和功率。互连总线的效能必须针对各种类型应用、平台、以及互连组态(拓扑、功能、组态)进行评估。在收集要求、建立规格、总结这些规格的过程中,最终转化为符合效率/功率/面积要求的内聚设计。在设计过程中,迭代程序继续进行。每次迭代都必须收集规格,并与设计和研发团队沟通。
这方面是采用的SystemC代表TLM通过反映模型SoC该规格可用于准确预测系统行为。图2显示了从设置工具开始的过程SystemC模型。这些模型是工具套件的一部分,我们设置套件来满足设计的需要。它可以用来生成精确的周期,也可以用来生成精确的周期AMBA主控制器与从属端、频率生成器和刺激源建立粗略模型。生成模型后,必须编写这一级别的流量模型,可以选择手动编写或使用自动程序文件将规格转换为实际模拟和结果。然后使用特定的模拟器模拟模型,并提供定量分析效率的解决方案。
图2 : 使用SystemC建模分析效率
虽然有模型和分析工具,但使用这些工具来处理许多候选设计需要相当多的时间。使用描述性的(scripts)虽然流量生成可以提供某些类型的流量模式,但复杂的情况生成程序仍然是一个问题。此外,由于模拟非常耗时,模拟后的分析必然会增加测试的数量,以实现预期的数据。
另外,再加上设计以及效能建模程序中花在规格管理的时间,可看出我们需要更趋自动化的流程,这种流程应以单一来源做为起点。PSS技能是应对这些挑战的有效方法。PSS工具的随机化机制从抽象描述开始DUT高级状态的合法交易,然后自动列出覆盖整个状态空间的最小测试组合。
PSS工具的覆盖机制可以衡量在特定状态空间中覆盖的状态。该能力允许系统在产生任何刺激源之前测量能量覆盖,从而节省执行该程序的时间。PSS覆盖数据允许用户检查横向(transverse)覆盖最大长度图像的路径和生成测试程序。因此,覆盖率可以远低于一般有限的随机验证程序消耗周期。
PSS该工具还提供了测试意图的视觉代表,以提供更好的情境图像特征。指向测试涵盖了特定的测试条件,可以通过该功能轻松转移。此外,它还限制了某些条件组合,因此可以建立有限的随机情。PSS技巧基本上能维持的流程,但路线产生程序会有明显的改变。
流量生产器的核心是通用PSS模型和模型容纳的算法负责生成不同类型的流量模式。这是刺激源和测试情况的单一表征。该模型可以通过多种方法设置,生成的测试程序可以包含许多可能的流量组合之一。它包括三个部分:
1.执行模块(Exec blocks)
执行模块是从外部程序代码中部程序代码中提取的陈述。PSS包装函式(wrapper)。对于SystemC程序、客制化程序代码将执行不同类型的读写作业,将数据写入底层环境。在UVM SV在某些部分,它还具有衍生到工具提供宏(收发器生成)的逻辑,并通过PLI系统呼叫来和SV互动世界。还有一部分(C语言生成)可以通过C语言进行转译和互动,并在不同的平台之间无缝重复使用。
2.PSS模型 :
根据整个组规格建立的实际使用案例模型。它包含功能组合,涵盖执行一系列动作的高级程序。流量生成器包含不同的算法组合,代表各种简单和复合动作。这些功能最终呼叫执行模块的函式SV终端执行指令。
3.PSS组态:
模型通常需要特定的信息来产生特定的测试。这些信息与验证有关,如AMBA主控制器、从属端、主控制器类型、来源和目的地地址、访问类型、平均带宽、紧急尺寸、数据量、频率和带宽需求等。该信息必须取自标准,以产生测试意图的正确表示。
图3 代表PSS流量模式产生的过程始于分析规范。Python语言写作的描述用于分析电子表格格式的规格,并通过特定格式提取数据PSS读取模型和组态。然后使用PSS工具剖析PSS模型和组态产生测试意图的视觉表征。
图3 : 运用PSS流程产生流量模式
图4显示了测试意图视觉表征的一部分。图中有条件、单一或读取作业的条件Burst Mode,以及不同总线的大小,可以控制生成不同类型的流量模式。紫色部分代表转移(transverse)蓝色是不被考虑的部分。这种安排可以帮助用户图像化,限制部分流量。
图4 : 测试意图与PSS覆盖范围的视觉代表图
若用户未加入限制条件,PSS随机选择某些组态,然后建立有限的随机测试。现阶段还可以收集工具覆盖范围,提前分析完整性(completeness)。工具执行的覆盖分析方法可以在工具生成测试中衡量测试意图的覆盖情况。图4代表PSS工具产生的PSS覆盖范围。粉色模块代表未覆盖的条件,绿色代表已覆盖的条件。用户可以观察条件,用户可以观察盖的条件进行测试。
在生成测试程序后,执行后处理描述来建立流量模式,这与效率分析模拟工具的定制格式相兼容。下一步是执行模拟和生成流量,生成大量未处理的数据。处理后,对不同标准的数据和视觉图像进行汇总,有效分析结果。
表1显示了几个生成报告中包含多个主控器和从属端的参数的例子SoC分析其除错器的效率,然后计算获得的数据。该分析可以是一对一(从属端)和多对一模拟(称为实验),并根据平台规格产生结水果。该系统根据平台规格定义的频率和频率的静态分析和数据宽度进行实验,使系统在理论最高带宽中运行。
一般而言,PSS流量允许更好地配置随机情况,锁定特定的总线模式。此外,测试意图的视觉表征有助于产生更好的限制。视觉覆盖促进了更好的流量模式,因此在特定的主控器-从属系统中,最高可行带宽只需要少次迭代。
表1. 应用系统解决方案PSS模拟数据收集
实验 ID
主控器
从属端
方向
平均模拟带宽
平均静态带宽
平均仿真AD芯片代理延迟
5000
Core
SMMR
Read
1199.72
6000
24
5001
Core
SMMR
Write
999.79
6000
24
5002
Core
L2 mem
Write
99.92
100
24
5003
Core
L2 mem
Read
99.92
100
21.34
我们看到了实质性的改进,包括应用PSS该技能可以在迭代次数后达到最高平均模拟带宽,从而节省模拟周期和分析时间。通过减少在统一规范下建立互联架构效率模型所需的工作量和单一真值来源(single source of truth),任何重新设定的时间都可以大大缩短。这个过程允许我们探索许多设计候选方案,然后选择其中一个执行时间收敛和RTL流程。
(本文作者Gaurav Bhatnagar、Courtney Fricano为AD主任工程师)
- 电源管理IC - 以太网供电(PoE)控制器
- 电源管理IC - 稳压器 - 特殊用途
- 接口 - 滤波器 - 有源
- 衰减器
- 评估板 - DC-DC 与 AC-DC(离线)SMPS
- 电源管理IC - 稳压器 - DC DC 开关稳压器
- 电源管理IC - 稳压器 - DC DC 开关式控制器
- 数据采集 - 数模转换器(DAC)
- 数据采集 - 模数转换器(ADC)
- 接口 - 模拟开关,多路复用器,多路分解器
- 电源管理IC - 监控器
- 电源管理IC - 稳压器 - 线性