[其他ST产品] 单bank和多bank的区别是什么呀

[复制链接]
3514|64
 楼主| 海滨消消 发表于 2024-11-11 20:00 | 显示全部楼层 |阅读模式
单bank和多bank的区别是什么呀
斧王FUWANG 发表于 2024-12-31 23:54 | 显示全部楼层
单Bank是一个存储区,数据访问顺序;多Bank支持并行访问,提高访问速度。
Clyde011 发表于 2025-1-1 07:40 | 显示全部楼层
单bank就是一块完整的大存储区,多bank就是分成了多块小存储区,主要看应用场景需求啦。
周半梅 发表于 2025-1-1 07:40 | 显示全部楼层
多bank可以实现更灵活的代码存储和升级,比如边跑程序边升级,单bank就不行。
帛灿灿 发表于 2025-1-1 07:40 | 显示全部楼层
简单来说,多bank适合需要OTA或者在线升级的场景,单bank就比较适合一次性烧录的情况。
童雨竹 发表于 2025-1-1 07:40 | 显示全部楼层
我记得多bank还能减少升级风险,不会因为突然断电导致整个程序挂掉。
公羊子丹 发表于 2025-1-1 07:41 | 显示全部楼层
如果只是做简单的应用程序,单bank也够用了,多bank通常是为了功能更复杂的项目。
万图 发表于 2025-1-1 07:41 | 显示全部楼层
多bank看起来很香,但实现起来有点复杂,楼主是不是遇到啥坑了?
Wordsworth 发表于 2025-1-1 07:41 | 显示全部楼层
如果Flash够大,用多bank可以优化存储效率,比如一边读一边写,挺实用的。
Bblythe 发表于 2025-1-1 07:41 | 显示全部楼层
单bank有时候也挺省事的,毕竟不需要考虑切换的问题,简单粗暴好上手。
Pulitzer 发表于 2025-1-1 07:42 | 显示全部楼层
多bank可以支持Bootloader+App的架构,感觉玩高级功能离不开它。
Uriah 发表于 2025-1-1 07:42 | 显示全部楼层
你用的是哪个型号的芯片呀,不同系列对多bank的支持可能还有点区别呢。
sesefadou 发表于 2025-1-3 11:06 | 显示全部楼层
对于STM32的一些型号,在单bank模式下,最小擦除单位可能是4K或更大。
fengm 发表于 2025-1-3 11:38 | 显示全部楼层
在单bank模式下,进行在线升级(OTA)时,通常需要将整个Flash区域擦除并重新写入新的固件。
这可能导致在升级过程中系统无法正常运行,或者需要额外的外部存储设备来保存临时固件。
wangdezhi 发表于 2025-1-3 12:14 | 显示全部楼层
单bank:适用于不需要频繁更新固件或数据的应用场景。由于只有一个bank,管理起来相对简单。
双bank:适用于需要高可靠性和频繁更新固件或数据的应用场景。例如,在线程序更新、双bank启动等功能,可以在一个bank中运行程序,同时对另一个bank进行更新,确保系统的连续性和可靠性。
biechedan 发表于 2025-1-3 12:51 | 显示全部楼层
由于只有一个存储区域,当同时有多个读写请求时(比如 CPU 要读取程序指令,同时又有数据要写入存储单元),可能会产生访问冲突。这种情况下,可能需要等待前面的操作完成,从而导致一定的等待时间,影响系统的整体性能。
wengh2016 发表于 2025-1-3 13:18 | 显示全部楼层
由于有两个独立的存储区域,可以在一个bank中保留旧的程序或数据,同时在另一个bank中更新新的程序或数据。即使更新过程中出现问题,也可以回滚到旧的程序或数据,提高了系统的安全性。
robertesth 发表于 2025-1-3 13:38 | 显示全部楼层
多 Bank 存储结构则将整个存储区域划分为多个独立的 Bank,就好比仓库被分成了多个不同的分区。每个 Bank 有自己的地址范围,可以独立地进行读写操作。以 STM32 的一些高级型号为例,它们的闪存被分为多个 Bank,不同的 Bank 可以用于存储不同类型的程序或数据,比如一个 Bank 用于存储主程序,另一个 Bank 用于存储备份程序或用户数据。
jtracy3 发表于 2025-1-3 14:00 | 显示全部楼层
在单 Bank 存储结构中,内存是一个连续的存储区域,就像一个大的仓库只有一个存储区。数据和程序存储在这个单一的存储区域内,通过地址来访问不同的存储单元。例如,STM32 的某些早期型号采用单 Bank 闪存(Flash),所有的程序代码、常量数据以及需要存储的数据都存放在这一个 Bank 中。
hilahope 发表于 2025-1-3 14:34 | 显示全部楼层
在复杂的多任务系统中,多 Bank 存储结构具有明显的优势。例如,在一个同时运行多个不同功能模块(如网络通信、图形显示、数据处理等)的嵌入式系统中,不同的 Bank 可以用于存储不同模块的程序和数据,方便进行任务的管理和调度,提高系统的并行处理能力。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

275

主题

1964

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部