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平台 ...
随机推荐
- 遗传算法详解及c++实现
1.什么是遗传算法? 遗传算法是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法.遗传算法是从代表问题可能潜在的解集的一个种群开始的,而一 ...
- 集合,ArrayList练习
import java.util.ArrayList; import java.util.Iterator; public class ArrayListTest { public static vo ...
- 5. CSS是什么
CSS概念 CSS,层叠样式表,也叫做风格样式表.通过CSS我们可以为页面添加一个美丽的外观,获得更加良好的用户体验.不过值得我们注意的是和HTML一样,CSS也不是编程语言,它只是提供一种配置文件, ...
- 在IOS端点击数字后会调起系统拨号界面
在IOS端点击数字后会调起系统拨号界面,解决方案: <meta name="format-detection" content="telephone=no" ...
- Hadoop MapReduce自定义数据类型
一 自定义数据类型的实现 1.继承接口Writable,实现其方法write()和readFields(), 以便该数据能被序列化后完成网络传输或文件输入/输出: 2.如果该数据需要作为主键key使用 ...
- for循环练习题(1 ,判断任意一个数是91的多少倍 2,编写程序实现给定一个整数判断它从0到这个整数中间出现多少次9的次数)
1 //判断任意一个数是9的多少倍 #include <stdio.h> #include <stdlib.h> int main() { printf("请输入任意 ...
- #include stdio.h(B)
#include <stdio.h> int main() { //***********一.循环语句*************** //什么叫做循环: //重复的做某件事情,重复的执行一 ...
- war2 洛谷模拟赛day2 t3 状压
(new ) war2 题解:总体数据而言,我们很容易想到着就是DP啊,我们DP数组,用状态压缩,代表有那些点已经被占领过了,代表上一次我占的是那个.对于每一次状态转移,若当前我们要占领的Port ...
- express with bower in websotrm
0. To install bower , run the following command in webstorm terminal(alt+f12) npm install bower bowe ...
- 构建工具——maven的补充
1.安装jar到本地仓库 有时候有部分jar由于在maven的中央仓库,只能引用本地的,可以将jar安装到本地仓库进行操作(请先确保mvn命令可以正常运行) mvn install:install-f ...