ONFI闪存数据通道接口标准
早期的闪存产品每个厂家的设计标准各有不同,会碰到各种各样的问题,特别是到了06年之后,闪存产业市场需求开始发力,造成了迫切需要一个统一的标准来改变这个问题。
2007年1月,以英特尔,镁光,海力士,意法半导体,力晶为首的NAND闪存厂商和控制芯片开发商台湾群联电子以及产品厂商索尼等宣布统一制定连接NAND闪存和控制芯片的接口标准“ONFI 1.0”。
ONFI 1.0制定的是包括:闪存指令,寄存器集,引脚排列,电气参数以及封装等有关标准。主要是从包括东芝和三星在内各NAND闪存厂商的自主标准中,将通用的部分抽出进行了标准化。这样便使控制芯片和中间件不依赖于NAND芯片厂商而可实现通用,由此可减轻产品厂商的开发负担。
由于传统的Legacy接口每通道传输带宽为40MT/s,已经不能满足现今高速发展的SSD产品需求。ONFI 1.0标准把传统Legacy接口每通道传输带宽提升到了50MT/s,可以说ONFI 1.0的目的主要是想着统一接口的设计。
2008年2月,ONFI 2.0宣布了,ONFI 2.0的标准使NAND闪存的通道传输带宽从50MT/s提高到了133MT/s,并保持了老版本接口的兼容性。ONFI 2.0主要是通过下面2项技术来缩短数据在缓存区中的交换传输时间。第一,在DRAM里常用的双倍数据流信号技术。第二,ONFI使用了源同步时钟来精确控制锁存信号,使闪存设备达到了更高的工作频率。
2009年2月,ONFI 2.1宣布了,相比ONFI 2.0更加简化了闪存控制器设计,并将传输性能提升到166MT/s ~ 200MT/s附近。ONFI 2.1特别针对上网本等低消费产品应用做了调整,加入了新的Small Data Move指令,解放低端消费产品在纠错功能上的限制,增强ECC纠错能力,新增交错读取支持,允许主机向NAND闪存写入数据时停止时钟来节省用电,新增Change Row Address指令来解决某些情况下NAND闪存操作负担,并同时向下兼容老的ONFI标准并和老NAND界面兼容。
2009年10月,ONFI 2.2宣布了,在ONFI 2.1的基础上,ONFI 2.2加入了独立LUN重置,增强页编程寄存器的清除,新的ICC测量和规范。前两个功能主要增强了多NAND环境下处理的效率,而规范的电流ICC测试和定义将简化供应商的测试和改进数据的一致性。
2011年3月,ONFI 3.0宣布了,提升接口带宽到400MT/s,降低CE针脚需求来提升PCB的布局能力,支持EZ-NAND(闪存内集成ECC)接口。
ONFI闪存数据通道接口标准的更多相关文章
- [转帖]国产闪存颗粒终于熬出头 紫光存储S100固态硬盘评测
国产闪存颗粒终于熬出头 紫光存储S100固态硬盘评测 https://www.cnbeta.com/articles/tech/830875.htm 全国产的 SSD 群联貌似是对岸的 不过不管怎么说 ...
- laravel 控制器方法里存get值 和 blade 模板获得闪存值的方法
//get 方式把id传到路由 <a href="/admin/reply/add/{{$comment -> id}}" class="btn btn-bl ...
- [Perl]抓取个人的所有闪存+格式化保存为文本
以下代码保存为utf8文本格式 环境:ActivePerl v5.16 built for MSWin32-x86 两个要调整的地方: for my $i (17..45) { 这里改成自己对应的页 ...
- 用 VeraCrypt 加密闪存盘
导读 很多安全专家偏好像 VeraCrypt 这类能够用来加密闪存盘的开源软件,是因为可以获取到它的源代码.要是你需要在 Windows 系统,苹果的 OS X 系统或者 Linux 系统上加密以及访 ...
- python3使用requests发闪存
闪存ing.cnblogs.com是博客园类似推特.饭否的服务, 我写了以下程序可以完成发闪存的操作,目的是顺便练习使用requests库. requests是一个python 轻量的http客户端库 ...
- 博客标题栏增加一个"闪存“按钮
最近来博客园喜欢去闪存上看看,也就是一个类似微博的东西,但是貌似没看到哪里有这个按钮. 所以只要自己动手搞一个. 暴力猴js: // ==UserScript== // @name fwindpeak ...
- 被忽视的eMMC——A1 SD Bench闪存测试
一直以来,大家对手机的配置方面都比较关注CPU和GPU的架构.频率.核心数等,却经常忽略了手机闪存的速度.实际上手机的闪存素质对手机日常操作的响应.载入速度同样起到举足轻重的影响,今天给大家介绍的则是 ...
- 原创:应用串行NOR闪存提升内存处理能力
在嵌入式系统中,NOR闪存一直以来仍然是较受青睐的非易失性内存,NOR器件的低延时特性可以接受代码执行和数据存储在一个单一的产品.虽然NAND记忆体已成为许多高密度应用的首选解决方案,但NOR仍然是低 ...
- iphone6闪存检测
iPhone6自从发布以后一直又不少的诟病和非议,比如一机难求,容易掰弯,程序崩溃等, 甚至传出了苹果将要召回这些问题设备,最近有人终于查出了iPhone6安装大量程序后崩溃的原因,原因就是大容量的i ...
随机推荐
- css3——webkit-animation动画
-webkit-animation:仍旧是一个复合属性, -webkit-animation: name duration timing-function delay iteration_coun ...
- sql CAST用法
(1).CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型.以下例子用于将文本字符串'12'转换为整型: ' AS int) (2).返回值是整型值12.如果试图将一个代表 ...
- 对手机SD卡的一些操作
首先要导入外包 log4j-1.2.16.jar 代码如下: package com.car273.util; import java.io.BufferedReader; import java.i ...
- Unix/Linux环境C编程入门教程(3) Oracle Linux 环境搭建
Unix/Linux版本众多,我们推荐Unix/Linux初学者选用几款典型的Unix/Linux操作系统进行学习. 2010年9月,Oracle Enterprise Linux发布新版内核--Un ...
- STL中用erase()方法遍历删除元素
STL中的容器按存储方式分为两类,一类是按以数组形式存储的容器(如:vector .deque):另一类是以不连续的节点形式存储的容器(如:list.set.map).在使用erase方法来删除元素时 ...
- 清风注解-Swift程序设计语言:Point6~10
目录索引 清风注解-Swift程序设计语言 Point 6. 输出常量和变量 代码事例: // 输出的内容会在最后换行 println("hello, world") // 输出的 ...
- Day4_代码重用与函数
知识点速记: 重用代码的方法:脚本包含require().include(); 全局配置文件php.ini(auto_prepend_file/auto_append_file); 目录配置文件.ht ...
- C++面试题一大波
//打印1到最大的n位数. //题目:输入数字n.按顺序打印出从1到最大的n位十进制数.比方: //输入3.则打印出1.2.3一直到最大的3位数999. //[陷阱]:这个题目非常easy想到的办法就 ...
- IOS开发环境更换后重新制作Provisioning Profile证书详解
新换了台Macbook,又折腾了一遍Provisioning Profile证书,苹果的证书繁锁复杂,每次制作都相当麻烦,而且Provisioning Profile证书是与设备绑定的,所以更换开发环 ...
- C#DataTable DataSet DataRow区别详解
DataSet 是C#中用来存储数据库数据的.其实,它的作用是在内存中模拟数据库.我们现实生活中的数据库从大到小的基本结构类似于:数据库实例,表,列,行.在C#语言中,我们在内存中也模拟出了一个这样的 ...