什么是芯片系统级测试?它有什么特别之处?
2024-09-05 13:31:16

        在半导体晶体管尺寸越来越小、芯片功能日益复杂的趋势下,系统级测试(简称SLT)变得至关重要。那什么是SLT?

       系统级测试(SLT)是指在仿真的终端使用场景中对待测芯片(DUT)进行测试,纯粹通过运行和使用来完成测试,无需像传统自动测试设备(ATE)那样创建测试向量,但是仍需要编写测试,只是编写方式不同。测试流程如下:

       • 执行特定操作。该操作可能是系统使用过程中固有的,如启动操作系统;也可能是运行某些功能模块编写的特定程序, 如性能评估程序。

       • 判断该操作是否成功,是依据测量的结果或该操作的成功/失败来进行衡量。例如,在验证某个内部进程是否成功执行时, 判断的依据可以是操作系统是否成功启动;或检查某个测量值(性能测试结果与阀值的比较)

       大多数情况下,SLT中的系统会配备一些板载处理器来执行测试流程。由于片上系统(SoC)和系统级封装(SIP)芯片是SLT的主要测试对象,因此测试用处理器通常就是待测芯片的一部分。如果不是此种情况,待测芯片的外围测试系统通常会配备一个合适的处理器。

       SLT的测试时间比传统ATE的测试时间长很多,因为SLT是模拟真实终端使用场景的功能测试,而不是ATE中的结构测试。SLT的测试时间一般都超过一分钟,甚至可能长达数十分钟,典型的测试时间为10分钟左右。由于测试时间较长,与传统ATE测试相比,SLT测试设备必须具有更高的工位密度和更低的工位成本。

       创建SLT测试有多种不同的方法,所选的SLT测试设备应该能够灵活适应不同方法。测试程序是多个单独测试组成的集合或序列,通常在作为测试设备一部分的测试用PC上运行。各个单独的测试通常实现为代码,在以下位置运行:

       • 测试用PC

       • 测试用处理器,可能是测试设备或测试板的一部分

       • 处理器,待测芯片的一部分

       在所有三种情况下,测试都可通过测试设备API或测试板上实现的接口来操作测试板和待测芯片。在最后一种情况下,测试可在待测芯片中运行。

       1)在测试用PC或测试用处理器上执行测试 执行测试用PC或测试用处理器上的测试的流程如下。在此示例中,测试旨在验证嵌入式处理器是否启动。假设待测芯片有 一个连接到测试设备UART控制台的UART端口,则此测试最简单的形式是:

       2)在具有测试用处理器的待测芯片中执行从测试用PC部署的测试 另一种类型的测试是从测试用PC部署到待测芯片本身的测试用处理器。在这种情况下,假设待测芯片有某种高速接口,可以通过该接口下载和执行测试程序。这种测试的通用形式一般是:

        3)执行直接存储在测试板上的测试 另一种测试方式是将测试序列存储在测试板上的非易失性存储器中,从而节省下载时间。采用将测试下载至测试板的方式时, 更容易更改测试。

       当然,在真实环境中,测试会更加复杂,需要验证许多事件。借助SLT测试设备的灵活性和测试板上待测芯片周围的真实硬件,能够更轻松地创建非常复杂的场景,这点对于传统ATE来说很难或者根本无法实现。使用SLT时,测试工程师可以像在真实环境中一样使用待测芯片,从而发现以前无法发现的故障。

 

本文章转载自网络,如有侵权请联系删除,​谢谢!