摘要:MBIST是Memory Build-In-Self Test的简称,意为存储器内建自测试。“内建”的含义是指针对存储器的测试向量不是由外部测试机台生成,而是由内建的存储器测试逻辑自动产生,并进行结果的对比。MBIST测试中,只需要从机台通过JTAG标准接口下
1Mbist
MBIST是Memory Build-In-Self Test的简称,意为存储器内建自测试。“内建”的含义是指针对存储器的测试向量不是由外部测试机台生成,而是由内建的存储器测试逻辑自动产生,并进行结果的对比。MBIST测试中,只需要从机台通过JTAG标准接口下达测试的指令,就可以从TDO接口获取测试结果。
1.1MBIST测试的框架
MBIST测试的框架由测试控制、硬件向量生成、比较器组成。
当测试控制模块接收到开始测试的指令后,首先会切换存储器的输入输出到测试模式,同时启动硬件向量生成模块开始产生和给出测试激励,同时计算存储器的输出期待值。存储器接收到测试向量之后,会间隔执行写/读/使能的操作,遍历测试所有地址下每个bit单元的写/读功能。最后,通过Q端输出的读取值,会与测试控制模块计算的期待值进行比较,是否正确的结果反馈到测试控制模块。
1.2TESSENT MBIST测试的框架
Tessent MBIST(Memory Built-In Self-Test)是一种用于存储器测试的内建自测试技术,广泛应用于集成电路设计中。它通过在芯片内部集成测试逻辑,实现对存储器的自动测试和故障诊断,提高产品质量和可靠性。Tessent MBIST包含TAP(Test Access Port)、BAP(BIST Access Port)、SIB(Segment Insertion Bit)、TMB(Tessent Memory BIST Controller)、MBIST Controller、Memory Interface等组件。
TAP 是基于 IEEE 1149.1 标准的测试访问端口,用于从外部测试设备(如 ATE)接收测试指令,并将其转换为 IJTAG 扫描链信号,然后传递给后续模块。TAP 是 MBIST 测试的入口点,负责启动和控制整个测试流程。
SIB 可以开启或关闭其对应的 IJTAG 扫描链,控制存储器是否进入测试状态。SIB 提供了一种机制,允许在测试过程中选择性地启用或禁用特定的存储器模块。
BAP 作为 SIB和 MBIST Controller 之间的接口,负责将 SIB 的指令传递给 MBIST Controller。BAP 确保测试指令能够正确地从 TAP 传递到 MBIST Controller。
MBIST Controller 包含状态机逻辑和测试向量生成逻辑,负责控制存储器的测试流程。状态机逻辑:管理测试的不同阶段,如初始化、测试执行和结果报告。测试向量生成:生成用于测试存储器的测试向量,并计算预期的输出值。结果汇总:将测试结果汇总并通过 IJTAG 扫描链移出到 TDO 端口。
比较器(Comparator)用于比较器将存储器的实际输出与预期值进行比较,检测是否存在故障。如果实际输出与预期值不一致,比较器会报告故障。比较结果会反馈到 MBIST Controller,用于汇总测试结果。测试向量生成器(Test Pattern Generator)生成用于测试存储器的测试向量。计数器(Counter)用于生成存储器的地址和控制测试流程的时序,为存储器提供地址信号,确保所有存储器位置都被测试。解码器(Decoder)解码器将输入的控制信号转换为存储器测试所需的特定信号,确保测试向量和控制信号符合存储器的规格要求。
Tessent MBIST 的测试流程。初始化:TAP 接收外部测试指令并启动 MBIST 测试。测试向量生成:MBIST Controller 生成测试向量并将其应用到存储器。存储器操作:存储器执行写入和读取操作,遍历所有地址和数据位。结果比较:比较器将存储器的实际输出与预期值进行比较,检测故障。结果汇总:MBIST Controller 汇总测试结果并通过 IJTAG 扫描链移出。
MBIST测试中的关键指示信号有RUN、GO、DONE信号,由MBIST Controller结合状态机和比较器的比较结果来给出。RUN信号指示当前Controller以及下属的Memory进入测试状态(MBIST Mode);GO=1信号指示开始向下属的Memory输出测试向量,测试开始,=0指示测试有比较器报出Fail;DONE=1信号指示MBIST测试已结束。GO和DONE信号结合起来,可判定出当前Controller下属Memory的测试情况。GO一直未拉高或DONE一直未拉高:Controller执行有误;GO拉高后,DONE尚未拉高:Memory测试执行中,尚未出错;GO拉高后在DONE拉高前回落:有Memory测试失败;GO拉高后,DONE拉高:Memory测试正确通过。
2Memory Interface
Memory Interface也是TESSENT MBIST的重要组件。在RTL中一般存在Func Memory Interface逻辑。
Memory Interface(存储器接口)是连接处理器或其他数字电路与存储器(如 SRAM、DRAM、Flash 等)的桥梁,其主要功能是提供数据传输和控制信号,确保存储器的读写操作能够正确执行。
存储器接口通常由以下几个关键部分组成。地址总线(Address Bus):用于传输存储器的地址信息,指定要访问的存储器单元位置。数据总线(Data Bus):用于在处理器和存储器之间传输数据。读使能控制信号(Read Enable, OE):用于控制存储器的读操作。写使能控制信号(Write Enable, WE):用于控制存储器的写操作。片选控制信号(Chip Select, CS):用于选择特定的存储器芯片。接口电路(Interface Circuit):负责存储器与外部设备之间的通信连接,包括物理接口和通信协议。电源管理电路(Power Management Circuit):负责管理存储器的电源供应,确保稳定可靠地供电。
3TESSENT Memory ShareBus
在现代集成电路设计中,CPU、NPU、GPU 等关键模块对性能要求极高,对功耗、时序、面积都非常敏感,是整个芯片设计的瓶颈。传统的 MBIST 设计插入的额外电路会对功能时序收敛带来负面影响,而且会造成布线拥堵,给芯片性能和物理设计带来挑战。
ShareBus 是一种在 MBIST 架构中用于复用测试数据通道的机制,允许多个存储器共享同一组测试数据总线,从而减少 MBIST 控制器与存储器之间的专用连接线数量这种设计使得一个 MBIST 控制器加上一组共享总线就能驱动多个存储器,极大地提高了资源利用率。
下图是一种sharebus设计示意图,memory cluster是关键模块,内部时序紧张,而interface的外侧路径则为非关键路径,时序较为放松,margin比较大。在interface之外非关键路径插入mbist controller和tap控制器,复用cluster内部功能总线对memory进行读写测试,这种设计对整个系统性能影响较小,降低布线难度。
为共享总线生成的嵌入式测试硬件包括 MBIST 控制器、存储器接口以及虚拟存储器和粘合逻辑等额外模块。存储器 BIST 共享总线硬件如下图所示。每个共享总线memory cluster分配有一个专用的 MBIST 控制器。虚拟存储器对应于共享总线存储器集群模块内的逻辑或物理存储器。Tessent MemoryBIST 自动生成一个仅由走线和飞线组成的虚拟存储器,以模拟存储器行为。粘合逻辑控制共享总线接口端口、MBIST 控制器和虚拟存储器之间的访问。虚拟访问使 MBIST 控制器能够运行存储器算法并对所有逻辑或物理存储器执行标准操作。所有存储器 BIST 共享总线硬件都被分组在一个wrapper module内。这种wrapper 使得在逻辑综合期间可以进行跨边界的面积优化,并减少了综合后设计中的未分组逻辑。这种方法改进了逻辑优化并减少了面积。
Tessent MemoryBIST 提供了一种支持存储器库文件映射和验证、存储器修复、复杂存储器配置以及多种面积优化方法的自动化解决方案。该工具的一个独特功能是能够自动化映射每个逻辑存储器的物理存储器组成,并验证cluster和logical memory library files。下图是Tessent MemoryBIST的实现。
核心环节是Physical-to-Logical mapping automation(P2L自动化映射)和Library validation(库验证)。
P2L 映射通过首先从memory cluster RTL 中推导出逻辑存储器内物理存储器的映射来创建wrapper。接下来,它将提取的信息填充到逻辑存储器库文件中,也称为 TCD(Tessent 核描述);最后,它写入更新后的文件。
P2L 映射的自动化流程通常包括以下步骤。加载设计和存储器库:加载包含单个存储器集群核心和物理存储器的设计,并加载指向存储器集群、逻辑存储器以及物理存储器的 TCD(Tessent Core Description)文件的引用。设计展开与初始化设置:对整个设计进行展开(elaboration),并配置工具以支持存储器测试,包括对存储器集群的分析。启用 P2L 映射:使用 set_memory_cluster_library_generation_options 命令启用 P2L 映射,该命令会创建一个存储器集群初始化文件,工具将在下一次电路分析阶段读取该文件,以将存储器集群配置为 MemoryBIST 模式。生成 P2L 映射:在从系统模式设置(setup)切换到系统模式分析(analysis)的过程中,进行电路分析以及物理到逻辑映射的提取。工具为每个逻辑存储器应用选通码,并通过遍历平面化模型,尝试定位物理存储器实例,并确定逻辑存储器内部的堆叠配置。 P2L 映射的结果:成功提取后,P2L 映射将被填入 Tessent Shell 中的逻辑存储器 TCD(Test Configuration Data)中。默认情况下,完整的逻辑存储器 TCD 会被写入当前工作目录下的 memory_tcd_outdir 文件夹中。输出文件的名称与原始的逻辑存储器 TCD 文件相同。
在 MBIST ShareBus 架构中,库验证是一个关键步骤,用于确保存储器集群(Memory Cluster)、逻辑存储器(Logical Memory)和物理存储器(Physical Memory)的描述文件(Tessent Core Description, TCD)与实际设计一致。为了实现 MBIST ShareBus,需要以下三种库文件。Memory Cluster Tessent Core Description:描述存储器集群模块的特性,包括 Shared Bus 接口的引脚定义和逻辑存储器的列表。Logical Memory Tessent Core Description:描述逻辑存储器的特性,包括物理存储器的引用和逻辑存储器的地址空间。Physical Memory Tessent Core Description:描述物理存储器的特性,通常由存储器编译器自动生成,无需手动修改。
内嵌virtuoso模拟IC设计流程的数据管理平台直播报名邀请
dsfsdfsdf
来源:小贺科技讲堂