你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】STM32WB-硬件介绍

[复制链接]
STMCU小助手 发布时间:2022-1-4 11:00
1 系统和存储+ Y) q, S" b5 k* B& R
1.1 系统总览

/ i* ]5 k- B( P; q( \5 z$ z1 iSTM32使用双核架构,一个cortex-m4核负责app程序开发,一个cortex-m0核负责射频协议栈,还有一个radio子系统负责RF部分。( d7 u$ g8 t3 s$ A4 C( t: t  K* x2 J

  d* M4 ~, l* K7 s; H; T% `, ^9 J
20200930104503435.png

6 l6 z6 F+ n* Z/ T/ W8 h! \2 t* i# b9 V1 ^  B
1.2 STM32WB总线架构- |: H# v, J* Y, s
如下图所示,基本的外设都被CPU1域,也就是cortex-m4内核访问,CPU1和CPU2通过SRAM2通讯。
5 |( d' z/ g/ K- c/ [/ @$ _" G7 ?- V) o) K  B
20200930104700362.png
7 K; T0 |' C9 V# j& ~" r6 Z

$ q/ F: L' z% e" ^1.3 总线矩阵
, y+ i2 o6 T2 N, W3 O5 U6 l( @" W$ f  j5 A5 z) t7 I
20200930105113141.png

- H7 D: F6 o1 E1 e' c+ N" b& c! V  @- r2 w& p- u
1.4 存储分布, L8 b6 w, t; W6 b

* c. H, t( v# F8 Z1 Q, j( ]# Y% ?
20200930105157465.png

0 ]. L  M& f4 @
# B- R7 z+ T6 \: l$ k3 x1.5 STM32WB闪存特点
7 c! `- C- {0 R! T# {9 d共享
0 f9 j( c) Q+ r- ]1 \4 q闪存的一部分是为RF射频子系统CPU2保护的,为了安全区域,主机CPU1无法访问。
# e; q# }% `* n2 E+ Y' M使用ART加速8 B+ _: Q- m8 u3 L# |6 L) \, P
同时执行代码CM4和CM0+对MIPS的影响约为0%,在单独的AHB总线上,它有自己的时钟分频器。# k% ~& l+ s: d& _. N
7 U& ^+ T% G: w0 Q3 H! J4 t- U
3级保护' [  Q; z8 X8 X4 J! X
级别0(无保护)至级别2(最大保护)
' ~2 [0 Z) S& Q0 f# k( }" Q8 A' n: p
) P0 W+ [3 U" p限制$ x: r0 H) H/ w9 h! j& T" W
在射频活跃期间,flash擦除或存储不应该被启动。因为射频活跃期间cpu1会频繁读写flash。
1 n5 |& `0 Z* X4 ^7 W  S4 o( f; S+ N0 E$ b4 X/ Z
2 RF射频简介
% Y, _) K! b& y# w# Y0 w" @2.1 RF参数简介
) W* r3 {' Y7 f9 @$ I
模拟前端
, q: c( c5 Y+ ^' Y最大输出功率
" f" q1 t8 m1 p7 M& B' O: A- V% ~. U集成巴伦,6dbm发射功率,具有1dbm步进调节
4 T" V6 t1 r6 T3 H* I2 W. N5 l专用引脚驱动外部PA,可以获得最大20dbm的输出功率
4 ]& m# E+ J6 F7 r' e, c& s, [* b: _7 M) M
接收灵敏度7 y, W+ j$ w1 m! o8 V
BLE:1Mbps @-96dbm, 2Mbps @-94dbm(250kbps和125kbps不支持)) D6 a5 P- V/ J  W& v$ l
802.15.4:250kbps @ -100dbm" U; V, u  s" m9 a

8 B: |# G6 i! w+ O5 g) i5 R功耗@3.3V
+ A1 b  U" V- X% a: j  ?TX:@0dbm:5.2mA
/ v1 ^6 P. N8 O" j) z3 o- |' N1 b) iRX:4.5mA
' T( K1 \- E& y0 O1 xstop2 with radio in standy (accurate clock LS12):1.8uA/ S( \+ x1 R3 _7 v1 c9 A/ W9 _

6 ?- k$ e/ F  _5 X. `  f调制解调器& }4 n5 O! X! L* L
通过硬件格式化BLE包(对软件完全开放射频)支持1和2Mbps速率" N8 I8 Q' \6 Z2 X: G- h
IEEE 802.15.4 :硬件模式支持250Kbps通信速率
3 M: W0 V& y4 ~  S+ g" X6 l: x1 L) x% P
2.2 STM32WB典型外围电路+ X: T# n) G! U" \

% r/ m6 j) h* U
20200930110652529.png

3 H- B( u0 T9 f( E
) w: D7 C8 c. u( N2.3 STM32WB RF输入/输出匹配网络+ n/ t7 b9 W& z) J* J/ t6 d. B7 @

- w8 U8 B* E  f! Y- _% a
20200930110754104.png
! K+ n: T0 r( V! K3 [0 F
( x2 Y" s1 U; r
一个Π型滤波网络加50Ω阻抗匹配。
& ^2 Q' @# u; @9 K9 x  g5 ]' B
' `$ [* L/ {+ C4 O$ o, r# p3 电源管理) h2 d/ Y5 Z- M* @% Q& ?
3.1 供电方案框图

$ H9 ^9 p* n& P% C如下图所示,各个电源阈单独供电,在供电选择上有很大的灵活性。6 A$ c, W* ^" l# ?9 A' ^" Y* V

1 p3 V& K9 e& O9 V
20200930111004948.png
: M5 i$ K* c, l" U2 J4 V- j. [
8 C5 ^' {( |+ I+ r/ s
3.2 内部SMPS
( K( W% c$ d; [% ~/ x
SMPS用于降低VDD电源: H7 r9 u) Y( L( t
SMPS为数字核心和射频LDO供电* K& h2 x2 }' P: c% t
当VDD电源高于BOR[1…4]阈值时,使用SMPS模式  [$ s9 t( }  k/ x. J
   低于此阈值使用旁路模式,支持及时切换
0 G( P* j+ F0 H( ?   通过HW机制执行关闭,通过SW重新开启' v% `* ~) \0 C3 O; J5 |
SMPS降遵循社保操作模式
: K& v( x* k2 F3 \$ x# o5 D  在Run和stop0模式下为On
2 {2 j% o0 p* O( M1 B& a3 I  o  在stop1 2 待机standby和关机shutdown模式下,SMPS自动处于开放模式,唤醒时自动恢复进入前使用模式
$ |* X* @2 Z- d  X( `( V3.3 电源配置
+ u  c+ F* b5 V$ j5 {高性能使用SMPS' @9 t) w+ E- W  h& p7 B6 t7 q4 C
   通过添加外部电容和线圈,SMPS用于降低功耗
. R0 F& i. ?% G4 j
9 q* _+ v0 J8 u5 k  |% h
20200930112611960.png

8 c1 Y5 [: U7 s4 d
* O, L6 t- y2 r6 t低成本今适用于LDO- K8 u* m& @; q" X' \
   通过短接SMPS输入。LDO直接由VDD提供节省电容和电感成本,但是功耗会增加。
8 _6 l# h% |! T; d! {9 }3 ~; |$ F6 }2 J: r$ D
20200930112744994.png

" J5 s. @6 e+ G6 L# I# O4 p# |# G& Q
3.4 SMPS原理图
& z! e' X; [6 G) c( E9 a5 Y' n! y% W: J6 \
20200930112824925.png
3 [. W2 W9 H9 P7 V

' g% b/ R8 b! Z4 核间通信和安全管理
4 V# r/ @  }& T- v4.1 HSEM

1 Z% g' \- W( N! ^STM32WB集成硬件信号量模块,该模块用于同步进程和管理共享资源访问权限。具体如下。, m7 w$ Q! p2 e1 S5 E8 M

# k+ W; Z) N1 b' T& @- {管理和访问权限和同步
' y( c4 m% O  u8 h1 e   运行于同一个cpu上的不同进程* L- o0 _: L, ?* j
   不同的cpu: T0 e/ Y3 P% T0 `
32个硬件信号量
2 o) E; d+ N2 X& `7 @4 ?两种锁定机制
; X- \9 i! K- F' K# P8 p# x1 d, i   2-step write, read back lock' o. S: o9 i, \7 {) ~4 I
   1-step read lock
& K& H% A( O9 g! P9 [; q信号量释放产生中断
; n/ m0 ]- o  e6 _) l" b; ~" ^7 s, Z应用优势" v2 B' i& p3 Z* _3 {
   防止共享资源访问冲突* ?; S) A- I2 U4 I* D% Z
   确保进程之间的同步
7 U7 Q9 M6 l/ {. U0 N! P. }& k   无阻塞信号量处理
* }6 O" k5 s5 X8 ?4.1.1 HSEM框图
! [6 C2 M! G# J1 g/ S* DHSEM模块位于AHB总线上,由AHB接口和中断管理构成,每个CPU都有一个专用中断,并且都有自己的使能、状态、掩码和清除寄存器。每个信号量由两个寄存器组成,一个读写寄存器,用于在两步锁过程中对信号量进行写操作并读取信号量状态,它也可以释放信号量;另一个是读寄存器,它用于一步锁过程中的读取锁。
+ p0 r. z3 N: x% H" V& a9 [* \" q6 A# A
20200930141938212.png
9 v! I: }+ E) O( [( j

7 G1 M5 Y$ @5 o( K; k3 v0 d
HSEM框图
! z; k, R6 Y1 w7 G
: N% ?4 H  b% Y- l5 A1 `7 Q; Y
20200930142349269.png

8 k( i( v) z5 T
0 l' M% o7 ?8 H  m& X
2步 写-回读锁机制
8 ^; V! T: Q/ C/ v4 M. X% z# a

: m3 p% P' i7 ~, d
20200930142506381.png

+ q& f% [; n3 @% U7 ?' {% H+ A! [
1步 锁机制

' H/ \# H( X: z" o, a% J( `4.1.2 信号量使用 - 共享资源
- E. {- O# w6 Q两个CPU可以同时访问的所有外设都受硬件信号量保护,在访问此类外设之前,应首先获取相关的信号量并在使用完之后释放。& {$ L; s4 j6 f& ]( P7 k! B
: ?" f% E3 \8 p5 j1 L% ~
VS1V)~6GWZ}_BSD0G([J`DF.png
+ M) u1 c2 n' J0 O

+ e2 G% |( T, G) F4.1.3 信号量 - 闪存写入和擦除

+ S# g' s2 T/ [& B( ?- z要在闪存种写入,应用程序应该
3 A2 D  x' T& y5 W$ c1 N   获取Sem2* Z& K( G& l3 L- G8 E
   写入闪存
  F. S) [  K& @3 Q2 L     释放sem2" C4 k& K7 U& b: z
擦除扇区,应用程序应该
9 [: ^5 g' T, B6 h' p5 P   获取Sem2
8 ^- I0 c0 H9 h  W   发送SHCI_C2_FLASH_Erase_Actiity(erase_activity_ON)命令给CPU2
( y* F" S% y5 s! Y7 K   擦除一个或多个扇区$ P4 ]/ t) K  c, n. j
    释放Sem2
7 O( ^* H  s% i   发送SHCI_C2_FLASH_Erase_Activity( erase_activity_OFF ) 命令给 CPU2
+ i& s( }8 g3 e5 I% }7 s  p4.2 IPCC3 w+ \/ `! q+ L1 [
IPCC是核间通讯控制模块,它可以提供中断信令,允许微控制器以非阻塞的方式交换信息。
1 H; `! _5 S+ n3 J) c- E* S
, O8 z7 T7 O4 L- ]% @  h$ G/ L5 [为通信信道管理提供非阻塞信令
" w8 x7 j) o/ V* [8 Q) E" j   消息可用性中断* q5 d6 V- U3 D7 i) j  H. t: s' J! Z
   流量开启中断通知
- I. v% L4 P/ J. k" ?& s; n) j7 y5 v; o1 W! n. r5 O& |
通讯方式
2 G* s. v. _2 M   单工:每个方向的专用通道
2 j/ q& K" i% p   半双工:单个共享双向通道7 O) ?3 p' E0 h4 Y! H! @

7 _2 h; f  Y/ p1 R' J2 J' N0 a最多6个双向通道; c1 E6 y8 p+ X: X' i, G3 p
   通道数据存储在共享ram中
+ Q1 M0 [! w, q* B0 f6 v/ s# J- M
% I, I1 R. d% G4 m  C% G1 @3 }; L* D
应用优势 + M, P' F( V" S
   非阻塞信息交换0 Z; u  B2 F, n1 p) B: Z
   通道流量控制
$ q3 f. i, H5 @; M1 O; D& Q   支持CPU sleep和stop模式7 H& |4 i2 {0 B7 Z8 w( T
" F0 u4 a. z9 B" S7 U
20200930145138448.png
. E8 S& g9 E, `- [

' x) O0 M" i7 p$ \4.3 安全管理
- ]/ I" j; p6 u3 U  m" g
BLE外设可以安全使用以下外设' c' }4 n: V+ _
   AES1(仅限IP加密密钥)用于应用程序的加密引擎( n3 [# ~& k7 C
   AES2(Full IP)用于IEEE802.15.4的加密引擎2 W5 q$ ?0 H0 Z, h
   PKA(Full IP)用于加密密钥的生成1 h2 s5 M: G9 V) f+ Z' c1 |
   True RNG(Full IP)用于加密密钥的生成
3 y4 T. l2 P& l7 m1 P0 S5 T$ |9 U( K' G  B! ?
对安全IP的访问由HSEM管理3 f0 f2 d; q+ x2 R4 Z5 b4 A
   HSEM x,y,z用于管理共享安全外围设备访问
# Z7 t9 x' [7 ?/ u
. E- i; {6 S/ r' _. RBLE堆栈提供以下加密密钥功能* ]. l" Y. Z4 Y$ w7 _
    密钥存储
/ J" a- Y1 Z0 c# c' O+ V    密钥更新
8 T7 V, W  J6 W+ ]; z; C+ h    密钥删除
! r% T5 @3 R' c! w% u    密钥加载(在AES1中)
  S" T( R' q1 y$ B' i3 |4.4 Cortex-M0+安全性6 S, q- b+ A$ ?; D9 q" e3 O! t$ W6 T
闪存的上半部分只能由cortex-m0+访问' L. ^+ t* u+ [( ?9 y: Z+ T' k1 \
   由安全选项字SFD和SFSA定义
; \  [# k$ d1 E5 I( `全局安全使能
  N3 s5 A. s6 r: L  \! F& j2 a   允许通过安全选项字SBRD和SBRSA来添加SRAM2a上的部分安全性! G0 _1 t3 Y9 I; ^- s7 f
   允许通过安全选项字SNBRD和SNBRSA来添加SRAM2b闪的部分安全性' v8 P# }9 Y8 D; L
   运行通过SYSCFG使能外设的安全性
& {: P9 {# q, R6 q
3 b9 L) i/ F9 Q" P& }$ k
20200930150204374.png

5 q9 O2 A3 V. {5 [6 \# M' z* R9 f
赞 收藏 评论1 发布时间:2022-1-4 11:00

举报

1个回答
jcmaxx33 回答时间:2022-1-25 11:04:17

你好 请问文中的RF射频简介是引用官方哪个文档?

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版