UFS协议—新手快速入门(一)【1-4】

本篇旨在为初学者提供关于通用闪存存储(UFS)的快速入门指南。

目录

一、背景介绍

二、UFS

三、半双工和全双工

(1)半双工(Half-Duplex)

(2)全双工(Full-Duplex)

 四、芯片内部结构


一、背景介绍

UFS(Universal Flash Storage)的发展历史可以概括如下:

  1. 起源:UFS标准的起源可以追溯到2011年,由固态存储协会(JEDEC)制定,最初设计是为了替代eMMC(embedded Multimedia Card)标准1011。

  2. UFS 1.0:UFS 1.0在2011年诞生,但相较于eMMC并没有实质上的优势,因此并没有得到大规模的使用10。

  3. UFS 2.0:2013年9月,JEDEC发布了UFS 2.0,该版本提供了更高的链路带宽以提高性能,并扩展了安全功能10。

  4. UFS 2.1:2016年,JEDEC发布了UFS 2.1的通用闪存标准,UFS 2.1开始向UFS 2.0标准升级,其可选的HS-G3通道也逐渐成为了“必选”10。

  5. UFS 3.0:2018年1月30日,JEDEC发布了UFS 3.0版,该版本是为需要高性能、低功耗的移动应用和计算系统而开发的,使用了MIPI M-PHY v4.1和UniPro v1.8,具有更高的每通道11.6 Gbit/s数据速率10。

  6. UFS 3.1:2020年1月30日,JEDEC发布了UFS 3.1标准,相比于之前的版本,UFS 3.1更新了三个部分,包括Write Booster、DeepSleep和Performance Throttling Notifications10。

  7. UFS 4.0:UFS 4.0是该标准的最新迭代,于2023年正式发布,标志着存储技术的又一次重大飞跃。UFS 4.0在性能、能效和安全性方面均有显著提升,整合了MIPI M-PHY 5.0和UniPro 2.0技术,理论接口速度提升至每通道23.2Gb/s11。

UFS协议,由固态技术协会JEDEC制定,其发展始于2011年UFS 1.0版本的发布,旨在解决eMMC 5.1协议在传输速度提升上的局限性。尽管UFS 1.0在初始阶段并未对eMMC构成明显优势,但其架构的先进性为后续升级提供了广阔空间。随着UFS 2.1的推出,其在传输速率、数据吞吐量以及能效比等方面对eMMC形成了压倒性优势,确立了UFS作为未来存储技术主流的发展方向。

我们知道计算机系统的核心组件包括中央处理器(CPU)、随机存取存储器(RAM)和存储设备。CPU负责执行计算和控制操作,RAM提供临时数据存储,而存储设备则用于持久化数据存储。在移动设备领域,如智能手机,同样存在类似的三大组件:中央处理单元(CPU)、动态随机存取存储器(DRAM)和非易失性存储设备。

由于移动设备的紧凑性,其存储设备必须为电子存储介质,即闪存,以适应其空间限制,而无法采用机械硬盘(HDD)这类机械存储设备。固态硬盘(SSD)作为电子存储设备,使用闪存作为存储介质,与移动设备中的存储设备在技术上是一致的。

目前,智能手机已成为人们不可或缺的个人设备,对手机性能的期望也随之提高,包括处理速度、存储容量和系统流畅性。为了满足这些需求,手机制造商不断提升中央处理单元(CPU)的性能,增加动态随机存取存储器(DRAM)的容量,并采用更快速的非易失性存储解决方案。在CPU、DRAM和存储设备这三大核心组件中,存储设备往往是性能瓶颈。随着CPU和DRAM性能的显著提升,存储设备的性能提升也变得至关重要,以避免成为整体系统性能的限制因素。

随着闪存技术的不断进步,无论是个人电脑还是智能手机,其存储设备的速度都在显著提高。在个人电脑领域,硬盘从机械硬盘(HDD)向固态硬盘(SSD)转变,进一步从SATA接口的SSD发展到使用PCIe接口的NVMe SSD,实现了存储速度的飞跃。在智能手机领域,存储介质也经历了从Secure Digital(SD)卡到嵌入式多媒体卡(eMMC)再到通用闪存存储(UFS)的演进,其中UFS因其高速性能已成为高端旗舰手机的标准配置。

闪存(Flash Memory),作为一种非易失性电子存储介质,以其芯片形态存在,具有体积小、重量轻、功耗低等优点,非常适合用于便携式设备如智能手机和USB闪存驱动器。闪存的读写速度在性能优化后远超传统的永久性存储介质,如磁性硬盘和光刻光盘。基于闪存技术的固态硬盘(SSD)因其快速的读写性能,已成为消费级市场中速度最快的存储解决方案之一。

在智能手机领域,闪存通常被错误地称为ROM(Read-Only Memory,只读存储器),尽管实际上它们是可读写的。这种误称源于历史习惯,类似于个人计算机领域将所有永久性存储器统称为磁盘。智能手机中的闪存是集成了主控制器和存储颗粒的嵌入式芯片,根据其协议和接口的不同,主要分为两类:嵌入式多媒体卡(eMMC)和嵌入式通用闪存(eUFS),后者通常简称为UFS。这些闪存产品通常带有数字后缀,表示其遵循的协议版本号。对于普通消费者而言,只需了解UFS在性能上普遍优于eMMC,且在相同类型的闪存中,数字后缀越大,性能越优。

二、UFS

UFS,这位存储界的超级马拉松选手,自从它在2011年的起跑线上亮相以来,就一直在以闪电般的速度刷新着记录。不仅拥有高速串行接口这样的"超跑"引擎,还搭载了全双工操作的"双涡轮加速器",让读写操作可以同时进行,比起那些还在半双工道路上慢慢悠悠的eMMC来说,UFS简直就是在高速公路上飙车。

而UFS标准,更是集成了高级命令队列多线程技术这样的"智能导航系统",让数据处理速度和存储效率得到了质的飞跃。这就像是给UFS装上了一台超级大脑,让它在数据赛道上能够精准超车,轻松应对各种复杂的路况。

到了UFS 4.0这一代,它就像是穿上了喷气背包,直接在存储技术的宇宙中来了个"星际穿越"。2023年的发布,不仅仅是一个新版本的推出,更像是一场科技界的"大爆炸"。UFS 4.0整合了MIPI M-PHY 5.0和UniPro 2.0技术,速度提升到了每秒46.4Gb/s,这几乎让UFS 3.1看起来像是在跑步机上慢跑。这样的速度,让5G时代的高速数据传输和低延迟应用就像是在玩"过家家"。

UFS 4.0就像是存储界的"超级英雄",不仅速度快得让人眼花缭乱,而且还能效高、安全性强,简直是科技界的"全能战士"。未来的移动设备,如果搭载了UFS 4.0,那就是装备了最先进的"科技武器",无论是在数据赛道上,还是在性能战场上,都将所向披靡。

UFS之所以能够成为存储界的"速度之王",主要得益于以下几个关键因素:

  1. 差分串行传输:UFS采用了差分信号传输方式,这种传输方式就像是高速公路上的"双车道",可以大大提高数据传输的稳定性和抗干扰能力。相比之下,eMMC的并行传输就像是"单车道",一旦遇到干扰,就容易发生"交通堵塞"。

  2. 串行传输:UFS的串行传输方式允许使用更快的时钟频率,这就像是给数据传输装上了"涡轮增压器",让数据传输速度得到了极大的提升。而时钟信息嵌入数据流中的设计,更是让UFS在高速传输时能够保持信号的完整性和准确性。

  3. 多通道数据传输:UFS支持多通道数据传输,最多可以支持两个通道。这种设计就像是给UFS提供了"多任务处理"的能力,可以在成本、功耗和性能之间做出灵活的取舍,满足不同设备的需求。

  4. 全双工操作:UFS的全双工操作模式,意味着读写操作可以同时进行,这就像是给UFS装上了"并行处理器",大大提高了数据的处理速度和效率。而eMMC的半双工模式,就像是单核处理器,读写操作需要排队等待,效率自然不如UFS。

这些数据表明,随着UFS版本的升级,其单通道最大带宽和最大有效带宽都有显著提升,这反映了UFS技术在数据传输速度上的持续进步。

三、半双工和全双工

(1)半双工(Half-Duplex)

  • 定义:半双工是一种通信模式,其中设备可以发送和接收信号,但不能同时进行发送和接收。通信是交替进行的,要么是发送要么是接收。
  • 例子:传统的对讲机就是半双工通信的例子,用户可以按下一个按钮来发送消息,松开按钮则可以接收消息。
  • 特点
    • 成本较低:实现半双工通信的设备通常成本较低。
    • 简单:技术实现相对简单。
    • 效率问题:由于不能同时发送和接收,通信效率可能较低。

(2)全双工(Full-Duplex)

  • 定义:全双工是一种通信模式,其中设备可以同时发送和接收信号,无需等待当前操作完成。
  • 例子:现代电话系统就是全双工通信的例子,通话双方可以同时说话和听对方讲话。
  • 特点
    • 效率:全双工通信可以提高通信效率,因为数据可以连续不断地双向流动。
    • 复杂性:技术实现相对复杂,可能需要更高级的硬件和软件支持。
    • 带宽要求:全双工通信通常需要专用的发送和接收通道,因此对带宽有更高的要求。

在UFS(Universal Flash Storage)和eMMC(embedded MultiMediaCard)的上下文中,UFS支持全双工操作,这意味着它可以同时进行读写操作,从而提高数据传输的效率和速度。相比之下,eMMC通常支持半双工操作,读写操作不能同时进行,这限制了数据传输的效率。

想象一下你和你的朋友在公园里聊天:

半双工就像你们俩聊天时,一次只能有一个人说话。如果你想说点什么,你的朋友就得停下来听你说。同样,如果你朋友想说,你就得安静下来听。你们不能同时说话,因为这样谁也听不清谁。这就像是走一条单行道,每次只能有一个方向的交通流动。

全双工则像你们俩可以同时说话,而且都能听到对方在说什么。这就像是有两条并行的道路,一条用于去程,另一条用于返程,所以交通可以双向同时流动,没有干扰。

在技术领域,半双工和全双工描述的是设备如何发送和接收数据:

  • 半双工:设备一次只能发送数据或者接收数据。就像你们轮流说话,设备必须等待当前操作完成后才能开始另一个操作。
  • 全双工:设备可以同时发送和接收数据。就像你们可以同时说话并听到对方,设备可以同时进行数据的读写操作,大大提高了效率。

 四、芯片内部结构

上图展示了一个简化的系统架构,其中包括了CPU(中央处理器)、SRAM(静态随机存取存储器)、UFS(通用闪存存储)接口以及闪存控制器。

1、CPU(中央处理器):

  • CPU是整个系统的大脑,负责执行程序指令和处理数据。
  • 它通过各种接口与系统中的其他组件进行通信。

2、SRAM(静态随机存取存储器):

  • SRAM是一种高速缓存存储器,通常用作CPU的一级或二级缓存。
  • 它为CPU提供快速的数据访问,以提高系统的整体性能。

3、UFS接口:

  • UFS接口是连接CPU和UFS存储设备的桥梁。
  • 它允许数据在CPU和UFS存储器之间传输,支持全双工通信,即同时进行读写操作。

4、闪存控制器:

  • 闪存控制器是管理UFS闪存存储器的组件,负责处理来自CPU的数据读写请求。
  • 它控制数据流,确保数据正确地存储到闪存中,或者从闪存中读取到CPU。

5、闪存:

  • 闪存是非易失性存储介质,即使在断电的情况下也能保持数据不丢失。
  • 在UFS系统中,闪存是主要的存储设备,用于存储操作系统、应用程序和用户数据。

整个系统的工作原理是:CPU执行程序并处理数据,需要读写数据时,通过UFS接口发送请求到闪存控制器,然后由闪存控制器管理数据在CPU和闪存之间的传输。SRAM在这个过程中起到快速缓存的作用,以减少CPU的等待时间,提高数据处理速度。

下期预告:UFS协议—新手快速入门(二)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/639191.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【大模型】fineturn Q-wen

github上下载qwen1_5源码 修改finetun.sh 然后在路径qwen1_5/examples/sft下修改finetun.sh, 内容如下 #!/bin/bash export CUDA_DEVICE_MAX_CONNECTIONS1 DIRpwd# Guide: # This script supports distributed training on multi-gpu workers (as well as single-worker trai…

【HTML】制作一个跟随鼠标的流畅线条引导页界面(可直接复制源码)

目录 前言 HTML部分 CSS部分 JS部分 效果图 总结 前言 无需多言,本文将详细介绍一段HTML代码,图中线条可跟随鼠标移动,具体内容如下: 开始 首先新建一个HTML的文本,文本名改为[index.html],创建好后右…

弱电工程企业项目一体化管理系统解决方案!企智汇项目管理系统

企智汇工程项目管理系统是一款为弱电工程企业量身打造的专业解决方案,旨在帮助企业实现项目管理的数智化、全流程化和一体化。以下是该系统的详细介绍: 1. 功能丰富:企智汇工程项目管理系统支持全周期的项目管理,包括客户管理、招…

火山引擎边缘云亮相 Force 原动力大会,探索 AI 应用新范式

5月15日,2024 春季火山引擎 FORCE 原动力大会在北京正式举办。大会聚焦 AI 主题,以大模型应用为核心、以 AI 落地为导向,展示了火山引擎在大模型、云计算领域的实践应用,携手汽车、手机终端、金融、消费、互联网等领域的专家和企业…

【全开源】班级管家微信小程序(FastAdmin+ThinkPHP)

班级管家微信小程序 班级管家微信小程序,作为一款专注于家校沟通、作业管理、成绩发布等方面的工具,凭借其丰富的特色功能和显著的优势,已经成为广大教师、家长和学生日常学习生活中不可或缺的一部分。 一、特色功能 家校沟通便捷&#xff…

大模型之Ollama:在本地机器上释放大型语言模型的强大功能

LlaMA 3 系列博客 基于 LlaMA 3 LangGraph 在windows本地部署大模型 (一) 基于 LlaMA 3 LangGraph 在windows本地部署大模型 (二) 基于 LlaMA 3 LangGraph 在windows本地部署大模型 (三) 基于 LlaMA…

从“图形可视化”到“图生代码”,低代码平台的新挑战

前言: 低代码平台最大的一个特点就是可视化,将代码采用可视化的方式展示管理。一时间拥有图形化界面的各类系统都挂上了低代码的标签。但更多的代码从业者在使用中却发现,在众多的低代码平台中都是“别人家的代码”其可视化主要是别人家的代…

vmware 17pro17.5 bug 严重,建议升级17.52

近日vmware发布17.52 更新,修复了一个重大BUG. 也就是莫名其妙的CPU跟GPU占用问题。 我的系统是WIN11 跟VMWARE17.5..近日莫名其妙的发现即使什么都没运行,GPU占用也高达20%。开始以为中毒了被拿去挖矿了,后面看到VMWARE的这个更新&#xf…

Matlab:音频处理

用Matlab绘制一段音频信号在时域上的波形图,然后用低通滤波器滤掉噪音并再次绘制 1、导入音频文件 filename X:\1.mp3; % 替换为你的音频文件路径 [x, Fs] audioread(filename); 2、获取音频信号长度 len length(x); 3、计算时间轴 t (0:len-1) / Fs; 4、…

【Pytorch】16.使用ImageFolder加载自定义MNIST数据集训练手写数字识别网络(包含数据集下载)

数据集下载 MINST_PNG_Training在github的项目目录中的datasets中有MNIST的png格式数据集的压缩包 用于训练的神经网络模型 自定义数据集训练 在前文【Pytorch】13.搭建完整的CIFAR10模型我们已经知道了基本搭建神经网络的框架了,但是其中的数据集使用的torchvision…

机器学习云环境搭建

在 https://support.huaweicloud.com/browsertg-obs/obs_03_1003.html 下载对应版本的 OBS Broswer 软件,如图,红框内的为安装文件,蓝色框内的为对应安装文件的校验文件(无需下载) 以 64 位机为例,下载完…

SpringBoot搭建Eureka注册中心

系列文章目录 文章目录 系列文章目录前言前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 1、Spring-Cloud Euraka介绍 Spring-Cloud Euraka是Spring Cloud集合中一…

头歌openGauss-存储过程第1关:创建存储过程

编程要求 1、创建第1个存储过程,并调用; 1)创建存储过程,查询emp表数据; 2)调用存储过程; --创建存储过程,获得计算机(cs)系学生选课情况并将结果写入临时表t…

C语言简要(四)

有没有好心师傅教教孩子逆向和pwn啊꒰๑ꀾ๑꒱ 数组 <类型> 变量名称[元素数量]; int grades[100]; double weight[20]; 元素数量必须是整数 C99之前&#xff1a;元素数量必须是编译时刻确定的字面量 是一种容器&#xff0c;特点是&#xff1a; 其中所以的元素具有相同的…

深入解析kube-scheduler的算法自定义插件

目录 ​编辑 一、问题引入 二、自定义步骤 三、最佳实践考虑 一、问题引入 当涉及到 Kubernetes 集群的调度和资源分配时&#xff0c;kube-scheduler 是一个关键组件。kube-scheduler 负责根据集群的调度策略&#xff0c;将 Pod 分配到适当的节点上。kube-scheduler 默认使…

Java基础入门day55

day55 过滤器 简介 过滤器filter&#xff0c;是处于客户端与服务器端目标资源之间的一道过滤技术技术 作用 执行地位在servlet之前&#xff0c;客户发送请求时&#xff0c;会先经过Filter&#xff0c;再到达目标Servlet中。 相应时&#xff0c;会根据执行流程再次反向执行Fil…

Kubernetes——资源调度与Pod探针

目录 前言 一、资源调度策略 1.默认调度器&#xff08;Default Scheduler&#xff09; 2.自定义调度器&#xff08;Custom Scheduler&#xff09; 3.亲和性与反亲和性&#xff08;Affinity and Anti-Affinity&#xff09; 4.污点与容忍&#xff08;Taints and Toleration…

MySQL主从复制(五):读写分离

一主多从架构主要应用场景&#xff1a;读写分离。读写分离的主要目标是分摊主库的压力。 读写分离架构 读写分离架构一 架构一结构图&#xff1a; 这种结构模式下&#xff0c;一般会把数据库的连接信息放在客户端的连接层&#xff0c;由客户端主动做负载均衡。也就是说由客户…

DotNetty ByteBuffer

DotNetty是一个高性能的.NET网络通信框架&#xff0c;基于Netty&#xff0c;支持TCP、UDP、HTTP、WebSocket等协议。适用于高并发、低延迟场景&#xff0c;如实时通信、游戏服务器、IoT应用及大型分布式系统&#xff0c;通过异步I/O、零拷贝等技术提升性能&#xff0c;具备易用…

ubuntu使用记录——如何使用wireshark网络抓包工具进行检测速腾激光雷达的ip和端口号

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言wireshark网络抓包工具1.wireshark的安装2.wireshark的使用3.更改雷达ip 总结 前言 Wireshark是一款备受赞誉的开源网络协议分析软件&#xff0c;其功能之强大…