打印
[其他ST产品]

单bank和多bank的区别是什么呀

[复制链接]
1087|52
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
海滨消消|  楼主 | 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就不行。

使用特权

评论回复
5
帛灿灿| | 2025-1-1 07:40 | 只看该作者
简单来说,多bank适合需要OTA或者在线升级的场景,单bank就比较适合一次性烧录的情况。

使用特权

评论回复
6
童雨竹| | 2025-1-1 07:40 | 只看该作者
我记得多bank还能减少升级风险,不会因为突然断电导致整个程序挂掉。

使用特权

评论回复
7
公羊子丹| | 2025-1-1 07:41 | 只看该作者
如果只是做简单的应用程序,单bank也够用了,多bank通常是为了功能更复杂的项目。

使用特权

评论回复
8
万图| | 2025-1-1 07:41 | 只看该作者
多bank看起来很香,但实现起来有点复杂,楼主是不是遇到啥坑了?

使用特权

评论回复
9
Wordsworth| | 2025-1-1 07:41 | 只看该作者
如果Flash够大,用多bank可以优化存储效率,比如一边读一边写,挺实用的。

使用特权

评论回复
10
Bblythe| | 2025-1-1 07:41 | 只看该作者
单bank有时候也挺省事的,毕竟不需要考虑切换的问题,简单粗暴好上手。

使用特权

评论回复
11
Pulitzer| | 2025-1-1 07:42 | 只看该作者
多bank可以支持Bootloader+App的架构,感觉玩高级功能离不开它。

使用特权

评论回复
12
Uriah| | 2025-1-1 07:42 | 只看该作者
你用的是哪个型号的芯片呀,不同系列对多bank的支持可能还有点区别呢。

使用特权

评论回复
13
sesefadou| | 2025-1-3 11:06 | 只看该作者
对于STM32的一些型号,在单bank模式下,最小擦除单位可能是4K或更大。

使用特权

评论回复
14
fengm| | 2025-1-3 11:38 | 只看该作者
在单bank模式下,进行在线升级(OTA)时,通常需要将整个Flash区域擦除并重新写入新的固件。
这可能导致在升级过程中系统无法正常运行,或者需要额外的外部存储设备来保存临时固件。

使用特权

评论回复
15
wangdezhi| | 2025-1-3 12:14 | 只看该作者
单bank:适用于不需要频繁更新固件或数据的应用场景。由于只有一个bank,管理起来相对简单。
双bank:适用于需要高可靠性和频繁更新固件或数据的应用场景。例如,在线程序更新、双bank启动等功能,可以在一个bank中运行程序,同时对另一个bank进行更新,确保系统的连续性和可靠性。

使用特权

评论回复
16
biechedan| | 2025-1-3 12:51 | 只看该作者
由于只有一个存储区域,当同时有多个读写请求时(比如 CPU 要读取程序指令,同时又有数据要写入存储单元),可能会产生访问冲突。这种情况下,可能需要等待前面的操作完成,从而导致一定的等待时间,影响系统的整体性能。

使用特权

评论回复
17
wengh2016| | 2025-1-3 13:18 | 只看该作者
由于有两个独立的存储区域,可以在一个bank中保留旧的程序或数据,同时在另一个bank中更新新的程序或数据。即使更新过程中出现问题,也可以回滚到旧的程序或数据,提高了系统的安全性。

使用特权

评论回复
18
robertesth| | 2025-1-3 13:38 | 只看该作者
多 Bank 存储结构则将整个存储区域划分为多个独立的 Bank,就好比仓库被分成了多个不同的分区。每个 Bank 有自己的地址范围,可以独立地进行读写操作。以 STM32 的一些高级型号为例,它们的闪存被分为多个 Bank,不同的 Bank 可以用于存储不同类型的程序或数据,比如一个 Bank 用于存储主程序,另一个 Bank 用于存储备份程序或用户数据。

使用特权

评论回复
19
jtracy3| | 2025-1-3 14:00 | 只看该作者
在单 Bank 存储结构中,内存是一个连续的存储区域,就像一个大的仓库只有一个存储区。数据和程序存储在这个单一的存储区域内,通过地址来访问不同的存储单元。例如,STM32 的某些早期型号采用单 Bank 闪存(Flash),所有的程序代码、常量数据以及需要存储的数据都存放在这一个 Bank 中。

使用特权

评论回复
20
hilahope| | 2025-1-3 14:34 | 只看该作者
在复杂的多任务系统中,多 Bank 存储结构具有明显的优势。例如,在一个同时运行多个不同功能模块(如网络通信、图形显示、数据处理等)的嵌入式系统中,不同的 Bank 可以用于存储不同模块的程序和数据,方便进行任务的管理和调度,提高系统的并行处理能力。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

239

主题

1619

帖子

2

粉丝