0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

嵌入式OS设计策略解读|忆联企业级SSD高可靠、高性能的实现方法

UnionMemory忆联 来源:未知 2023-08-03 08:05 次阅读

企业级SSD需要在大量企业数据读写下保持超高稳定性,以及24 小时全天候运行,SSD的读写速度、使用寿命、稳定性及可靠性是企业级用户关注的重点。为满足用户对企业级SSD高性能、低延时、轻量级、高可靠等需求,忆联设计并开发了适合SSD的嵌入式操作系统(Operating System,缩写:OS),并在其上构建了可复制性强的SSD 控制器软件系统。

嵌入式软件分为三个层次,即驱动层、OS层、业务层。业务层集结了庞大复杂的产品功能,负责处理业务逻辑的部分,通常包括接口协议、业务功能实现、系统数据保存等;驱动层把设备的硬件访问抽象成软件接口,为OS层和业务层服务;OS层为业务层提供软件平台服务,让业务层可以聚焦在实现庞大复杂的软件功能上。

4342482a-3191-11ee-9e74-dac502259ad0.jpg

图1

通用的OS功能很多,包括处理器管理、内存管理、设备管理、文件管理、作业管理等,而对于嵌入式OS来说,主要聚焦在处理器管理、内存管理等核心功能上,本文则重点阐述处理器管理、互斥、通信

SSD系统的处理器架构和OS部署

在PCIe 4.0时,SSD的读写带宽达到8GB/s, PCIe 5.0时SSD的读写带宽可能达到16GB/s。为了实现SSD的高性能,通常SSD控制器会使用多CPU、甚至多Cluster的处理器架构,分别用于SSD业务计算和Nand flash操作。

434fd760-3191-11ee-9e74-dac502259ad0.jpg

图2

在多处理器、多Cluster架构下,业务部署时可以选择SMP模式、AMP模式、或者SMP和AMP混合模式。在SSD系统里,基本上都是SMP模式和AMP模式混合,OS要负责程序调度、互斥、通信功能。在嵌入式系统中的AMP模式的通信,可以类比为通用系统里多进程之间的通信,因为没有全局数据可用,要借助外部存储空间进行通信。

忆联OS的调度策略

常规的OS调度对象都是线程,且每个线程有自己的堆栈和优先级,具有抢占机制。忆联在设计SSD嵌入式系统时,通过分析发现,线程调度开销大、线程之间存在较为复杂的互斥问题、容易出现优先级逆转死锁问题,加之线程运行的随机性和无序性,让系统时刻处于“不确定”状态。因此,忆联SSD选择了自创的“功能代码(入口函数及其调用的全部函数)”调度策略。为了描述方便,本文把这些可以被OS调度的“功能代码(入口函数及其调用的全部函数)”,称为SSD系统里的“事务”。

在SSD系统里的程序,不再以线程方式组织,而是以一个个不会阻塞的独立“事务处理流程”方式组织。这些“事务处理流程”可以以各种方式被OS调度。

  • 事务的主要特征:

(1)不会阻塞。一个事务完成一个特定的计算,它在计算过程中,不需要等待外设动作,会一直运行到结束。如果一个流程会被阻塞,则需要在阻塞点切分为多个独立的事务。一旦一个事务被CPU执行,则一定会执行到事务结束。在系统里,除了每个CPU正在执行的事务是运行状态,其他事务都处在结束状态。比起线程的阻塞状态态,事务状态变得极其简单。

(2) 事务共享堆栈。事务执行完成时,不再有局部变量需要保存在堆栈里。事务共享堆栈,堆栈需求小,调度时也没有了堆栈切换的开销。

(3)同一个CPU,事务串行执行。一个CPU里的事务,一定是执行完毕一个事务后,才能开始执行下一个事务。同一个事务,在一个CPU上不会重入。

(4)SMP模式下事务间互斥变得简单。见图3。

4379cf8e-3191-11ee-9e74-dac502259ad0.jpg

图3

备注:

(1)事务完成时,不会持有全局变量的访问锁。

(2)AMP之间不存在全局共享数据,不存在互斥。

  • 事务的调度方式

438fc258-3191-11ee-9e74-dac502259ad0.png

图4

  • 事务优先级和实时性

一次性事务具有事务优先级功能。OS接受一次性事务调度请求,通过高优先级来处理系统里一些紧急事务,以此达成特定事件的实时处理。

43ad6efc-3191-11ee-9e74-dac502259ad0.png

图5

  • 中断与事务

前面已经讲述在忆联OS里,同一个CPU里事务之间不会出现抢占,只有当一个事务运行完成后,才会运行另外一个事务,但是中断依然具有抢占功能。

中断处理程序遵循常规的中断处理流程,中断到来时,还是会抢占当前事务。当中断到来时,OS会把当前运行的事务程序压栈,跳转到中断处理程序运行,中断处理程序完成后,被中断的事务程序被恢复运行。

中断处理程序运行时也是使用事务程序运行时的堆栈。

中断处理程序具备的抢占功能,可以满足系统里对于实时性要求高的场景,但同时也带来了中断和事务之间的互斥问题。中断和事务的互斥方式如图六。

43be664e-3191-11ee-9e74-dac502259ad0.png

图6

中断处理程序实现时,可分为中断上半部和下半部。上半部读取外设数据,下半部发送事务消息到OS调度处理。中断下半部的互斥就变成了事务之间的简单互斥方式了。中断发给OS的事务调度消息,可以根据需要选择使用“紧急、高、常规”优先级。

  • 中断处理举例:IPC中断

一般来说,IPC中断用于AMP与 CPU之间的通信。

发送方把数据写入共享的DDR后,发送IPC中断给接受方。

接收方的IPC中断程序读取DDR里的通信数据,然后发送事务消息到自己的OS,OS按照事务进行调度处理该事务消息。

中断处理程序读取DDR里的通信数据,就是中断上半部。读取通信数据并做具体处理,则是事务完成,是中断的下半部。

总结

通过事务调度思路,忆联实现了旗下企业级SSD产品的高性能和高可靠性,业务功能的设计、实现、扩展都变得更加简单和灵活,业务功能的代码复用也变得更简单,这让忆联在开发新代次SSD时,可以很好地继承已有代次SSD产品的功能和品质,保障忆联可以持续为客户提供高品质SSD产品与存储解决方案。

43e3666a-3191-11ee-9e74-dac502259ad0.jpg

长按识别关注更多忆联资讯


原文标题:嵌入式OS设计策略解读|忆联企业级SSD高可靠、高性能的实现方法

文章出处:【微信公众号:UnionMemory忆联】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储
    +关注

    关注

    12

    文章

    3859

    浏览量

    84670
  • SSD
    SSD
    +关注

    关注

    20

    文章

    2690

    浏览量

    115500

原文标题:嵌入式OS设计策略解读|忆联企业级SSD高可靠、高性能的实现方法

文章出处:【微信号:UnionMemory忆联,微信公众号:UnionMemory忆联】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    嵌入式热门发展方向有哪些?

    ,要求医疗电子设备必须具备体积小、功耗低、价格低和易于使用的特点。由于嵌入式系统具有的特点,上述医疗仪器设计策略都可以采用嵌入式系统实现。 此外,在设计过程中,根据需要对
    发表于 04-11 14:17

    简谈Xilinx Zynq-7000嵌入式系统设计与实现

    的并行执行,着力于解决大数据处理、人工智能等复杂高性能算法处理。新的设计工具的推出,vivado HLS,更加注重嵌入式系统的系统建模,通过HLS工具,用户只需要编写C语言代码,就可以让工具自动转换
    发表于 04-10 16:00

    江波龙企业级SSD再度通过OpenCloudOS兼容性认证,产品力获认可

    性能及兼容性方面表现良好。   自研高能固件 锻造硬核产品力 FORESEE UNCIA 3836系列SATA SSD由江波龙自主研发,产品经过专业可靠性设备验证,打造高可靠、高稳定
    发表于 04-03 09:59 90次阅读
    江波龙<b class='flag-5'>企业级</b><b class='flag-5'>SSD</b>再度通过OpenCloudOS兼容性认证,产品力获认可

    开放实时高性能PLC控制器解决方案-基于米尔电子STM32MP135

    通用GPIO实现本地高速IO子系统,开发板图片如下: ​结论借助于STM32优秀的MPU产品与丰富的RTOS软件生态以及板硬件伙伴米尔电子的工业模组,翌控科技实现开放
    发表于 03-07 20:06

    企业级SSD-高性能系列固态硬盘推荐

    除了传统的机械盘HDD,固态硬盘SSD也开始慢慢地在企业级硬盘领域发挥重要的作用。由于企业级固态硬盘的价格远远高于机械硬盘,因此固态硬盘在企业级领域应用还不是很广泛,但是就发展趋势而言
    的头像 发表于 01-23 16:48 487次阅读
    <b class='flag-5'>企业级</b><b class='flag-5'>SSD</b>-<b class='flag-5'>高性能</b>系列固态硬盘推荐

    细说企业级SSD的那些高价值特性

    企业级SSD(SolidStateDrive)是基于闪存技术的高性能、高可靠性的固态硬盘,专为满足企业级应用场景的需求而设计。为了满足各种高
    的头像 发表于 12-16 08:35 371次阅读
    细说<b class='flag-5'>企业级</b><b class='flag-5'>SSD</b>的那些高价值特性

    实现可靠高性能数字电源

    电子发烧友网站提供《实现可靠高性能数字电源.pdf》资料免费下载
    发表于 11-16 15:02 0次下载
    <b class='flag-5'>实现</b><b class='flag-5'>可靠</b><b class='flag-5'>高性能</b>数字电源

    嵌入式操作系统IJLC/OS一Ⅱ在通信电源监控中应用

    的单片机开发相比.使用实时嵌入式操作系统。利用其多任务管理,任务间同步与通信等特点,可以在一定程度上提高系统的可靠性和实时性。嵌入式实时操作系统有几十种,如:VxWorks,pSOS,“C/O
    发表于 09-20 06:46

    可靠高性能车规MCU, 满足车身控制多元应用

    本帖最后由 noctor 于 2023-9-15 14:25 编辑 笙泉可靠高性能车规MCU满足车身控制多元应用 更严苛的车规MCU 一般消费MCU注重功耗和成本,工
    发表于 09-15 12:04

    如何设计一款好的企业级SSD电源管理方案?Qorvo专家有话讲

    AI大模型、数据中心、云存储等数字化领域的建设浪潮带动了企业级SSD(eSSD)市场的新增需求。 根据Yole Group最新报告,2022年全球SSD出货量约3.52亿块,其中企业级
    的头像 发表于 09-14 12:15 422次阅读
    如何设计一款好的<b class='flag-5'>企业级</b><b class='flag-5'>SSD</b>电源管理方案?Qorvo专家有话讲

    国产企业级SSD厂商忆恒创源开启上市辅导

    北京忆恒创源科技股份有限公司(Memblaze)是国内企业级nvme ssd产品及技术解决方案提供商,成立于2011年,是世界上最早进行企业级pcie ssd技术开发的团队。membl
    的头像 发表于 08-28 11:01 1239次阅读

    企业级SSD性能和功耗模型

    谈到数据中心对企业级SSD的需求,一般会讲到高性能、稳定、可靠、数据安全及其他等需求,但SSD能耗比(
    的头像 发表于 08-28 10:20 760次阅读
    <b class='flag-5'>企业级</b><b class='flag-5'>SSD</b><b class='flag-5'>性能</b>和功耗模型

    PBlaze7 7940系列PCIe 5.0企业级NVMe SSD

    今天,国内知名企业级SSD产品和解决方案供应商——北京忆恒创源科技股份有限公司(Memblaze,以下简称“忆恒创源”)全新一代PCIe 5.0企业级NVMe SSD PBlaze7
    的头像 发表于 08-09 11:06 733次阅读
    PBlaze7 7940系列PCIe 5.0<b class='flag-5'>企业级</b>NVMe <b class='flag-5'>SSD</b>

    高性能嵌入式Workshop V.4.02用户手册

    高性能嵌入式Workshop V.4.02 用户手册
    发表于 05-05 18:43 0次下载
    <b class='flag-5'>高性能</b><b class='flag-5'>嵌入式</b>Workshop V.4.02用户手册

    高性能嵌入式Workshop V.4.03 用户手册

    高性能嵌入式Workshop V.4.03 用户手册
    发表于 05-04 19:08 0次下载
    <b class='flag-5'>高性能</b><b class='flag-5'>嵌入式</b>Workshop V.4.03 用户手册