浅谈闪存控制器架构

发布者:huanhui最新更新时间:2024-08-13 来源: eepw关键字:闪存控制器  架构 手机看文章 扫描二维码
随时随地手机看文章

分析闪存控制器的架构,首先得了解SSD。一般来说SSD的存储介质分为两种,一种是采用闪存(Flash芯片)作为存储介质,另外一种是采用DRAM作为存储介质。我们通常所说的SSD就是基于闪存的固态硬盘,其采用FLASH芯片作为存储介质。SSD的基本组成结构包括Flash颗粒和Flash控制器,Flash控制器中有芯片,负责Flash的读写、磨损均衡、寿命监控等等。


Flash控制器的主要的工作任务包括三大方面:一是后端访问Flash,管理后端Flash颗粒,包括各种参数控制和数据IO; 二是前端提供访问接口和协议:实现对应的SAS/SATA target协议端或者NVMe协议端, 获取Host发出的IO指令并解码和生成内部私有数据结果等待执行;三是FTL层核心处理。下面我们具体来介绍一下Flash 控制器是怎样做这几件事的。


第一,后端访问Flash的操作内容

后端访问Flash首先必须提到的是闪存通道控制器。这个控制器里面有多个通道,每个通道挂多片Flash。它与后端Flash颗粒之间存在托管协议。数据写入Flash的时候,除了主机发送的数据或者原始数据,其他数据都必须进行ECC校验。ECC是通用的称谓,里面有多种算法,其中包括纠错率较低的BCH算法,LAPC低密度校验码等。数据读出的时候,通过扰码,加扰,解扰,看ECC是否出现错误,若有错则在纠错后将芯片发到内部,供后续的程序处理。因此,后端访问Flash的主要任务即是管理后端Flash颗粒,包括各种参数控制和数据IO。



第二,前端提供访问接口和协议

前端提供访问接口和协议,跟主机驱动通信,利用标准格式输配到系统里面,接收主机端发过来的指令,即完成、实现对应的SAS/SATA target协议端或者NVMe协议端,获取Host发出的IO指令并解码和生成内部私有数据结构等待执行。如果遵从NVMe标准,包括提交命令的方法、完成命令的处理方法等都定好了,包括各种队列、队列深度,Queue Pair的总体数量最大可以达到64K个,队列深度也可达64K个,所以,系统里同时可能存在64K×64K IO排着,但是目前的系统是用不到这么多Queue的,因为底下的介质速度还不足以支撑。



第三,FTL层——核心层处理

核心层FTL层,是一款Flash控制器的关键竞争力所在。它既可以是纯软件算法,包括元数据管理,数据布局影射、磨损均衡、垃圾回收、缓存策略、片间RAID和掉电元数据一致性保障等内容。同时,它也可以在进行重复性工作时辅以硬加速引擎。这是非纯软件的,辅有硬加速的成分在里面。硬加速涉及到所使用的芯片。有的芯片支持硬加速,比如说链表的维护。这是因为做垃圾回收时需要要用到链表,拿传统的软件算法,插入一个或者追加一些项目,所耗费的CPU周期较大,此时用硬加速并行,再加上一些硬逻辑的加速,则可节省开销。

Flash控制器的两种策略和方式:

现有的Flash控制器可采用两种方式:一种是少量的强核心加少量硬件加速。所谓强核心就是一个核心的性能高、频率高,分支预判、并行度、单元数量、执行管道,各种参数都高于一般水平。核心强了以后,硬加速就不需要这么多了,可以用少量的硬加速。

另一种方式则是大量弱核心+大量硬加速。比如说16个核心,每个核心比较弱,但是能够增加执行的并行度,有16个并发核心执行,跑16套处理程序,这是两种架构。这是一种多核心协作架构模式,其协作方式可以是同构协作也可以是异构协作

1. 同构协作就是每个核心做的事都是完全一样的,处理的步骤完全一样。如果你的控制器阵列里面有16个IO,有16个核心,每个核心都能处理一个IO,这是同构协作。

2. 异构协作则是多个核心做不同的事情。处理同一个IO,第一个IO第一步,第一个核心处理,这个核心处理完以后,把这个IO扔到下一个核心,再处理下一步,等这个核心空出来以后,处理下一个IO的第一步,这就是所谓的流水线了,所谓的异构就是如此。



产品实例:PMC的FlashtecTM NVMe 控制器

这是PMC的控制器,首先它有一个片上网络,网络承载16个CPU核心,每个核心里面有一个类似网卡的控制器,网卡连到网络上,多个CPU之间连起来。简单说就是4口路由器或者交换机连起来的网络,多个CPU之间连起来,此外还有硬加速模块。另外还包括以下几部分:

RAM控制器,因为芯片上需要有一定量的RAM放临时数据,写放大,读出来写进去,都要走RAM;

PCIe控制器,这个是跟前端PCIe对等的控制器,IO指令从这儿接收过来;

后端Flash控制器,通过一定数量的通道连Flash颗粒,

加速器(包括缓冲加速器),每做一个操作,都需要有相应的内存,把数据拷到内存里面,内存的维护很费时费力。比如在X86上运行的Linux,其管理内存时需要耗费很多的计算量。对于闪存,精打细算,必须把性能做到极致,因此需用到硬加速。

链表加速器,用链表来记录一些信息,哪块空着,哪块被应用,这块用软件维护很费力,所以需要在这里作加速;

XOR加速器,XOR要用硬加速

最后,来看一下软件的并行度。16个核心,PMC提供的参考的固件,当然SSD厂商会开发自己的固件,把自己优化的东西放进去,优化的算法放进去。基本上包含了这么一些程序,每个IO读的地址可能有重叠,重叠就需要有一个锁定协调,有管命令解析的,有管启动的,有管日志的,有管磨损均衡的,有管查表的,有管写数据的,管前端的PCIe Manager,还有负责boot loader的核心,初始化的配置,需要由它处理,data manager,这是主程序,分析IO指令需要干什么,生成一堆的后续步骤下发下去。其实每一块都可以跑在一个核心上,同一个角色可以复制多份,充分并行。16个核心,达到16份程序并行的运行,16个流水线的Stage,这样就可以屏蔽处理过程中的时延。


关键字:闪存控制器  架构 引用地址:浅谈闪存控制器架构

上一篇:电动轮椅控制系统的设计与实现
下一篇:电梯变频门机的运动控制分析

推荐阅读最新更新时间:2026-03-20 05:15

溢价48%,美企MaxLinear作价38亿美元收购闪存控制器大厂慧荣科技
5月5日,美企MaxLinear(迈凌科技)与中国台湾NAND闪存控制器大厂Silicon Motion(慧荣科技)宣布,迈凌将以现金加股票的方式收购慧荣,作价38亿美元。 双方在声明中表示,迈凌科技以每股美国存托股票114.34美元的价格收购慧荣。这次出价比慧荣在4月22日的收盘价溢价48%。合并后公司企业价值将达80亿美元。在这项并购案中,慧荣科技的每股美国存托股票(相当于慧荣科技的4股普通股) 将获得93.54美元现金和0.388股迈凌科技普通股。 宽带通信芯片制造商迈凌2003年在美国加州成立,目前的产品包括网络接入、无线Wi-Fi、电源管理、4G/5G基建等。 根据官网显示,慧荣科技生产用于固态存储设备的 NAND
[手机便携]
国产万卡训练!推理性能突破!摩尔线程新架构“花港”与路线图重磅亮相
摩尔线程发布“花港”新架构及芯片路线图:展示从架构到集群的全栈技术 2025年12月20日,北京—— 摩尔线程首届MUSA开发者大会(简称:MDC 2025)在北京中关村国际创新中心正式开幕 。作为国内首个聚焦全功能GPU的开发者技术盛会,大会系统展示了摩尔线程以自主MUSA统一架构为核心的全栈技术成果,全面展现公司在高端全功能GPU领域的关键突破与前瞻布局。 本次发布的核心成果包括: 1、新架构“花港”亮相:全功能GPU架构“花港”,支持FP4到FP64的全精度计算,算力密度提升50%,效能提升10倍。未来并将基于该架构推出高性能AI训推一体“华山”芯片与专攻高性能图形渲染的“庐山”芯片。 2、“夸娥万卡”高效训
[网络通信]
奕行智能:以RISC-V+类TPU架构,破局AI算力效率与生态困局
日前,国内AI芯片创业公司奕行智能披露其核心技术路线与业务进展。 作为国内深耕RISC-V AI算力领域的芯片企业,奕行智能跳出传统算力竞争框架,以“类TPU架构+开源生态+软硬协同”的差异化路径,精准契合AI算力从“规模堆叠”向“效率优先”的演进需求,为行业突破算力瓶颈提供了全新可能。 从行业需求角度,详细剖析AI产业现状及未来 AI算力的三个需求 奕行智能介绍,随着大模型参数量迭代至万亿级、应用场景需要考虑规模化部署,此时,AI行业对底层算力的需求已从单一性能比拼,升级为规模、效率、生态的全方位较量。 具体而言,针对规模诉求,AI模型参数量与训练计算量的激增速度,已远超硬件算力的提升幅度,算力供需矛盾日益
[嵌入式]
俄罗斯联邦储蓄银行发布Green-VLA——机器人控制架构开放式构建指南
在俄罗斯科学日到来前夕,俄罗斯联邦储蓄银行发布了一份题为 《Green-VLA》的技术报告 ,聚焦物理人工智能(Physical AI)的一项关键技术——视觉-语言-动作(VLA)模型的发展。此类模型旨在使机器人能够理解周围世界、解析指令,并将其转化为有意义的物理动作。该报告在Hugging Face平台上荣登当日热门文章榜首,超越了Moonshot AI以及中美多所大学的联合研究成果。 Green-VLA架构 基于其自研神经网络GigaChat构建,阐述了一个从基础训练到机器人现实环境行为调优的实用训练方法。其核心并非单一的功能演示,而是一套完整的、可供研究人员与工程师用于构建可靠机器人系统的整体方法论。 物理人工智能是
[机器人]
构建韧性系统:从后量子加密到新型信任架构
近几个月来,围绕量子计算的讨论已迅速从“如果发生会怎样?”转变为“何时会发生?”。随着量子计算能力的发展,现有的加密标准,如里维斯特-沙米尔-阿德尔曼算法(RSA)和椭圆曲线加密(ECC),终将被淘汰。有鉴于此, 为后量子加密(PQC)做准备不再是可选项,而是紧迫且必要的。 然而,意识与行动之间仍存在差距。IBM报告称,尽管73%的组织认识到需要制定应对量子时代的战略,但只有19%的组织为这些举措设定了近期成熟目标。延迟部署后量子防护措施只会增加合规失败、运营中断以及遭受量子攻击的风险。现在是时候采取行动抵御这些不断扩大的威胁了。 后量子时代的成功几乎完全取决于系统的韧性。通过探索后量子韧性的概念、其在服务器基础设施中的根
[嵌入式]
QNX与Haleytek扩大合作,助力沃尔沃EX60落地软件定义音频架构
支持沃尔沃在全新SPA3平台中实现高端软件定义音频体验 中国上海 – 2026年2月4日 – BlackBerry有限公司旗下业务部门QNX宣布与Haleytek扩大合作,共同为沃尔沃汽车纯电SUV EX60实现一套完全中心化的软件定义音频(Software-Defined Audio,SDA)架构 。作为软件定义汽车音频创新进程上的重要里程碑,该成果为软件定义车辆树立了全新标杆,并助力沃尔沃汽车推进其Superset技术栈战略——将硬件与软件统一为一个可扩展、面向未来的平台。 EX60搭载沃尔沃汽车全新的SPA3平台,信息娱乐系统方面提供集合多家高端音响品牌的音频系统方案。不同于在功放侧部署专用数字信号处理器(Digit
[汽车电子]
【技术文章】确保下一代汽车控制架构中的控制器和动力系统稳健可靠
电子控制单元 (ECU) 管理着汽车的每项功能,随着功能的增加,其数量也在不断增加。目前,高端汽车可包含多达150个ECU,它们对主控制系统的信息交流和响应至关重要。 汽车控制架构 汽车控制架构正从单层设计向多层设计发展,以应对将众多ECU集成到一个反应灵敏、可靠的系统中的复杂性。 分布式结构:指每个ECU直接与主控制器通信的早期系统; 域架构:随着车辆变得越来越复杂而出现,引入域控制器来管理特定功能并卸载主控制器的任务; 分区架构:在这一最新发展中,按物理区域对ECU进行分组,并使用先进的分区控制器 (ZCU) 管理这些区域内的所有功能,从而提高了效率、降低了布线复杂性
[嵌入式]
下一代汽车中现代计算架构的性能组件和保护
随着现代汽车的不断发展,其电气和电子(EE)架构必须进行调整,以有效管理日益增长的电力需求。传统分布式和基于域的控制系统在复杂性、大量布线和通信瓶颈等问题上举步维艰。分区控制架构通过将电子控制单元(ECU)整合到局部区域、优化功率分配、减少布线和提高系统可靠性来应对这些挑战。 本文探讨了向分区控制的过渡、分区控制对电源管理的影响,以及确保下一代汽车系统安全、可靠和高效运行的关键保护策略。 1 更智能、更安全、更互联 现代电动汽车集成了先进的安全、便利和互联功能,因此对电子控制单元(ECU)的依赖越来越大。高端汽车使用的ECU超过150个,因此必须采用更高效、可扩展的控制架构
[汽车电子]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved