• SRAMC主要是对SRAM进行控制
  • 对于SRAM的逻辑,根据地址将数据存储到SRAM中,然后根据地址将SRAM中的数据读取出来

    如何测试Memory,生产工艺原因造成的问题,采用DFT或者Bist测试方法
  • DFT - 在代码中加入测试逻辑,之后通过这部分逻辑对芯片进行测试

What is manufacturing test?

  • 芯片在FAB生产之后,会有错误,通过ATE基台进行测试,打入信号,检查输出信号是否正确

What is a physical defect?

  • 物理缺陷(失效) - 与门、或门、非门、线路出现问题,晶体管常开或者是氧化层开洞
  • short Circuit - 短路
  • open Circuit - 开路
  • DFT - 可观测性和可控性,覆盖率比较高的时候,可以认为所有的寄存器都被观测到

CMOS Inverter Layout

  • 红色的是金属层

Stuck-at fault model

  • SA1 - 短接到1,或非门短接到1,输出都是0
  • SA1 - 与门短接到地,不管输入如何变化,输出都是0
  • 对于Standcesll,通过插入的Scan chain,输出错误表示芯片有问题

Soc中的DFT和BIST

  • 一个Soc中有很多memory,通过IO连在一起进行测试是不可行的,对于布线压力很大。
  • 对Memory进行测试,借助读写逻辑,借助状态机,设置一个模块嵌在memory中,进行测试。

含DFT设计的流程

  • 不插入扫描链的寄存器都是普通的寄存器,插入扫描链之后的寄存器都被替换为插入扫描链的寄存器

  • 插入DFT逻辑在寄存器之前加mux,通过mux进行function mode和test mode进行选择
  • DFT也是一种设计,添加mux会增加面积

嵌入式Memory的测试方法

  • CPU进行测试,需要一个Memory一个Memory进行测试,效率比较低
  • CPU在测试Memory,因为Memory的的深度不同,软件复用性差

MBIST概述



MBIST架构



MBIST实现与EDA工具

  • 通常MBIST逻辑由EDA工具生成

March算法



  • 复杂度主要是时间复杂度

March算法的硬件实现





Memory Bist的更多相关文章

  1. memory bist lib

    model NVIC_REG6T_1024x32(resetb,margin,clk,en,we,addr,d,q) ( bist_definition( clock clk high; chip_e ...

  2. SOC中的DFT和BIST对比与比较-IC学习笔记(二)

    ATE:ATE是Automatic Test Equipment的缩写,根据客户的测试要求.图纸及参考方案,采用MCU.PLC.PC基于VB.VC开发平台,利用TestStand&LabVIE ...

  3. IC验证概念总结

    一份代码,在写完之后,一定要再经过一次或多次整理和打磨,才能算完成的:一份代码,一定要把其有效代码行,精简.锤炼到最少.最短.最有效,才能算完成的.   下面这些问题和回答是忘记是在哪里看到的了,参考 ...

  4. 【NX二次开发】NX内部函数,libugui.dll文件中的内部函数

    本文分为两部分:"带参数的函数"和 "带修饰的函数". 浏览这篇博客前请先阅读: [NX二次开发]NX内部函数,查找内部函数的方法 带参数的函数: bool A ...

  5. Logic BIST

    Logic BIST is crucial for many applications, in particular for life-critical and mission-critical ap ...

  6. Memory及其controller芯片整体测试方案(下篇)

    {  第三部分  }  DDR总线的设计.调试和验证  在计算机架构中,DDR作为程序运算的动态存储器,面对如高性能计算.图形计算.移动计算.工业应用等领域的要求,发展出DDR4,以及用于图形计算的G ...

  7. rom bist scripts

    rom bist 的input 有rom_content file .校验rom还坏,主要通过signature比较.signature跟rom content file 一一对应的. rom bis ...

  8. sram bist scripts

    主要三个script: mbist_run: call mbistarchitect tool run.do:run bist flow  bist setup => bist mode(bis ...

  9. 人工智能AI Boosting HMC Memory Chip

    人工智能AI Boosting HMC Memory Chip Innosilicon的AI Boosting HMC存储芯片适用于高速,高带宽和高性能存储领域,例如AI边缘,数据中心,自动化等. H ...

  10. Java 堆内存与栈内存异同(Java Heap Memory vs Stack Memory Difference)

    --reference Java Heap Memory vs Stack Memory Difference 在数据结构中,堆和栈可以说是两种最基础的数据结构,而Java中的栈内存空间和堆内存空间有 ...

随机推荐

  1. 袋鼠云数栈前端从 Multirepo 到 Monorepo 研发效率提升探索之路

    我们是袋鼠云数栈 UED 团队,致力于打造优秀的一站式数据中台产品.我们始终保持工匠精神,探索前端道路,为社区积累并传播经验价值. 本文作者:星野 困境频生前端代码管理何解? 前端代码管理一直是困扰着 ...

  2. NetCore高级系列文章04---async、await原理揭秘

    async.await本质上是C#提供的语法糖,编译器编译后是状态机的调用. 先看如下的一段代码,要main方法中调用了三个await方法 将此dll进行反编译为4.0的代码如下: 可见到两个Main ...

  3. dtd的三种引入方式

  4. 一键打包,随时运行,Python3项目虚拟环境一键整合包的制作(Venv)

    之前我们介绍了如何使用嵌入式 Python3 环境给项目制作一键整合包,在使用嵌入式 Python 环境时,通常是作为另一个应用程序的一部分,而Python3虚拟环境是为了在开发过程中隔离项目所需的 ...

  5. 微软成为PostgreSQL主要贡献者

    微软成为PostgreSQL主要贡献者 微软对PostgreSQL贡献的很多新功能都来自于客户在使用微软Azure上的PostgreSQL管理实例数据库,所以这些新功能都来自于真实的客户需求 微软对P ...

  6. CentOS基线检测脚本

    本脚本适用于CentOS 7.5-7.9版本,其他版本不详 1.检查系统信息 查看代码 echo " " echo "########################## ...

  7. Rabbitmq从安装到简单入门

    1:Rabbitmq是什么? RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件). 它由以高性能.健壮以及可伸缩性出名的 Erlang 写成. 2:它的优点 ...

  8. Flutter PageView(轮动图)

    Flutter中的轮动图以及抖音上下滑页切换视频功能等等,这些都可以通过 PageView 轻松实现 PageView常见属性: PageView 的使用 class MyPage extends S ...

  9. 数据库开发实战教程:使用Python连接Kerberos的Presto

    [摘要]本文将为大家带来Python连接presto开源的两个实践案例. Python连接presto开源提供了以下两个库可以使用 presto-python-client:https://githu ...

  10. 华为云GaussDB打造最可信的数据库,给世界一个更优选择

    近日,第14届中国数据库技术大会(DTCC2023)在北京国际会议中心顺利举行.大会以"数智赋能 共筑未来"为主题,邀请了上百位行业专家,一起探讨新时代下各类型数据库的最新动态和应 ...