Memory及其controller芯片整体测试方案(上篇)
如果你最近想买手机,没准儿你一看价格会被吓到
手机什么时候偷偷涨价啦!
其实对于手机涨价,手机制造商也是有苦难言,其中一个显著的原因是存储器芯片价格的上涨↗↗↗
>>> 存储器memory的江湖地位
存储器memory,是电子设备的基础核心部件之一,全球memory市场规模约700亿美元,在全球3352亿美元的集成电路产业中,占据23%的份额。
随着今年存储器价格的飙涨,各大memory厂商赚得盆满钵满,甚至把memory称为印钞机也丝毫不为过。与此同时,存储器在真金白银的交换中,也充分证明了自己在电子信息产业江湖中的地位。
>>> 存储器的分类
存储介质的形式有很多种,从穿孔纸卡、磁鼓、磁芯、磁带、磁盘,到半导体DRAM内存,以及SD卡,固态硬盘、SSD、闪存等各种存储介质。
存储器大致可以分为掉电易失性(Volatile Memory)和非掉电易失性(Non-volatile memory)。
目前全球存储器市场最大的集中在
DRAM、NAND Flash、NORFlash三大类
这三类存储器,主要用在哪里呢?
以手机举例——
DRAM
4GB就是内存部分,DRAM,用来存放当前正在执行的数据和程序, 例如屏幕前的你正在刷的微信;
NAND FLASH
64GB就是闪存部分,NAND FLASH,用来存放长期信息,例如各位宝宝的美颜美照,你的聊天记录,还有其他……
当然了,也正是因为我们存的东西越来越多,二维空间已经无法存放这么多的信息,生生逼着NAND走向了三维空间,也就是3D NAND。
▲ 3D NAND的构造就像一个摩天大楼
此外,一些新型的存储器也在研究的过程中,例如磁阻式RAM (MRAM--ST-MRAM、STT-MRAM)、电阻式RAM(ReRAM),PRAM、FeRAM等。
了解了Memory的庞大家族,和主要成员之后,我们回到老本行,来研究一下memory的测试方法。
按照Memory的设计制造working flow及其辅助电路,测试环节大致分为以下几个部分:
Cell level --design andmodeling 单元设计、评估及建模
Wafer level –acceptance test代工厂晶圆级自动化测试
Chip level --Protocolvalidation 芯片级协议分析
Controller IC – Interfacemeasurement控制芯片接口测试
Module level 以SSD为例
接下来我们分上、下两篇分别讲解
这5个部分的详细测试方法和测试方案
{ 第一部分 }
Typical Cell evaluation of NVM – flash memory
三大问题,一个对策,你值得拥有
当前主流的NVM由于读写速度快,测试序列复杂,因此在测试时需要
High pulse quality 高质量的脉冲
Complex waveform generation复杂的信号生成
Higher throughput 高吞吐率
典型的memory cell测试主要分为3部分:
1、Write / Erase pulse width dependency
2、Endurance test
3、Disturb test
1
Write / Erase pulse width dependency
流程如下
问题 1-a) 脉冲波形失真
根据以上测试流程,首先我们的工程师编写程序写进一个理想脉冲。
然而由于传输线的多重反射及电感效应,实际测试脉冲已经引入了失真:
问题 1-b) 复杂的时序图生成
时钟的同步、延时、脉宽、上升下降沿,都是要考虑的因素
2
Endurance Test的流程如下
问题2-a) 超长疲劳测试时间
Issue 2-b) 还是波形产生的问题,在疲劳测试中需要为memory cell注入多电压信号脉冲,以测试memory的性能
3
Disturb test
Issue 3-a) 测试设备的灵活性,例如:在两个cell上同时加压,一个为工作单元, 一个为干扰单元
Issue 3-b) 要求比较高的电压加速degradation (e.g. > 40Vfor NAND)
总结以上部分,可得在存储器单元主要三种功能测试中,主要的测试挑战如下
面对如此错综复杂的考量,正确的方法,是使用Keysight HV-SPGU module in B1500A(HighVoltage Semiconductor Pulse Generator Unit),这是基于Keysight半导体参数分析仪(也就是Tracer)B1500A的高压脉冲产生单元,它可以产生± 40V的电压脉冲,用于memory cell 的disturb test。
从正面面板,可以看到这一个可配置于B1500A的模块,每个模块有两个channel,也就是说对于5插槽的B1500A,最高可以配置10个channel。
除了高压、通道数之外,我们接下来来了解一下它在复杂波形生成、超高脉冲精度、以及测试软件等方面的能力,看它是如何在方方面面满足memory cell测试的全部要求。
>>> 看精度
如此好的精度,带来的直接好处,就是脉冲建立时,overshoot和振铃都非常小,来看几种电压和建立时间的组合:
▲ Ttransient=20ns;Vamp=10V
▲ Ttransient=20ns;Vamp=20V
▲ Ttransient=30ns;Vamp=40V
>>>看测试场景
33种测试场景,贴心内置
>>>看速度:
Estimated test time
for one millioncycle endurance test
20倍加速,再也不用等待那么长的时间。
{ 第二部分 }
On-wafer massiveparametric test for memory
第一部分居然罗里吧嗦讲了这么长,弄得小编开始怀疑自己的年龄。为了证明小编还年轻,决定一言不发,甩2张图直截了当简单粗暴快刀斩乱麻结束这一部分![]()
Memory及其controller芯片整体测试方案(上篇)的更多相关文章
- Memory及其controller芯片整体测试方案(下篇)
{ 第三部分 } DDR总线的设计.调试和验证 在计算机架构中,DDR作为程序运算的动态存储器,面对如高性能计算.图形计算.移动计算.工业应用等领域的要求,发展出DDR4,以及用于图形计算的G ...
- 从Google开源RE2库学习到的C++测试方案
最近因为科研需求,一直在研究Google的开源RE2库(正则表达式识别库),库源码体积庞大,用C++写的,对于我这个以前专供Java的人来说真的是一件很痛苦的事,每天只能啃一点点.今天研究了下里面用到 ...
- Android MediaCodec硬编兼容性测试方案
作者:阿宝 更新:2016-08-15 来源:彩色世界(https://blog.hz601.org/2016/08/15/android-mediacodec-hardcode-compatibil ...
- 从轻测到上线,WeTest与《一起来捉妖》测试方案大公开
从2016年Pokémon GO引发的AR游戏热潮开始,国内就一直在期待新的一款具备代表性的AR游戏的头部作品. 4月11日的腾讯首款AR探索手游<一起来捉妖>不仅为国内市场注入了新的活力 ...
- 软件测试相关术语(测试策略 && 测试方案 ....)
软件测试有几种不同的定义方法: a.软件测试是为了发现程序中的错误而执行程序的过程. b.软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计的一批测试用例,并运用这些测试用例运行程序,以 ...
- Web应用程序整体测试基础——单元测试
近年来,随着基于B/S结构的大型应用越来越多,Web应用程序测试问题也在逐步完善中.但Web应用程序测试既可以在系统开发中实施,也可以独立于系统单独完成,这取决于Web应用程序的复杂性和多样性.同时程 ...
- HttpDNS的坑以及一个针对安卓不太完善的测试方案
背景:单位因为域名劫持(具体表象是某个地区的用户ping不通域名或者因为DNS解析的ip跨网段导致访问速度很慢)需要运维经常去定位,于是提出了httpDNS方案. 想法是美好的,现实是残酷的.没引入这 ...
- 手机APP测试技术-整体测试流程框架
一 手机APP测试基本思路: 测试计划--测试方案--测试用例--执行: 很多小公司都没有具体的需求,项目时间也比较紧,而且流程也不是很严谨,在这样的情况之下,作为测试的我们,该怎样去对项目进行用例 ...
- 移动弱网测试方案Network Emulator for Windows Toolkit
移动app在测试时,有时需要考虑弱网的情形下,app的表现,那么怎么营造这样子的环境呢? 一.首先需要控制网络,有两种方式其一使用网络损伤仪进行,其二采用软件方式.硬件采购费用太贵,因此使用win平台 ...
随机推荐
- 前端ajax的各种与后端交互的姿势
前端中常常用的与后端交换数据的话,通常是要用到ajax这种方法的 但是交互的方式有很多种,很多取决于你后端的属性,我这儿主要列举我目前项目比较常用的两种方式 --一个是我们通用的web api和控制器 ...
- Git单人本地仓库操作
本地仓库是个.git隐藏文件 以下为演示Git单人本地仓库操作 1.安装git sudo apt-get install git 密码:skylark 2.查看git安装结果 git 3.创建项目 在 ...
- Linux中将端口(80)重定向
在Linux中直接指定命令: iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080 其中80为要访问的端 ...
- 开发自己的网上支付案例代码(易宝支付php)
1.简单的图解(如上所示) 易宝支付与支付宝是不一样的,但也有类似之处,支付宝是专门为淘宝软件开发的一套机制,资金会在中间支付公司(支付宝)停留,等待顾客确认,当顾客确认后,才会真正扣钱.而易宝支付时 ...
- Mint-UI 的 DatetimePicker 日期时间插件的安装与使用
简介:Mint-UI是饿了么出品的基于vue的移动端组件库(element-ui是桌面端) 官网:http://mint-ui.github.io/docs/#/zh-cn2 项目环境:vue-cli ...
- day2-exercise
# Author: 刘佳赐-Isabelle October 22,2018 """ 1.有变量name = "aleX leNb" 完成如下操作: ...
- Redis 常用数据结构命令
1. 字符串(string) 增加元素 set key value [EX seconds] [PX milliseconds] [NX|XX] EX seconds:为键设置秒级过期时间 PX mi ...
- F. Make It Connected
题目链接:http://codeforces.com/contest/1095/problem/F 题意:给你n个点,每个点有个权值,如果在两点之间添一条边,代价为两点权值之和.现在给出m个边可以选择 ...
- 数据库 MySQL part4
存储引擎 什么是存储引擎? mysql中建的库是文件夹,建的表是文件.文件有不同的类型,数据库中的表也有不同的类型,表的类型不同,会对应mysql不同的存取机制,表类型又称为存储引擎. 存储引擎说白了 ...
- Git使用列表(四)
最近,由于自己的一个项目,导致自己的关于自己的要使用Git的很多的命令,突然发现自己的git的还有许多不知道的东西 不过,在这个工作的过程中,也发现自己的一些很大的缺陷,就是自己题目理解力有限,明明就 ...