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

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

[复制链接]
STMCU小助手 发布时间:2022-1-4 11:00
1 系统和存储
/ M" E5 t% ]; e6 B1 N6 c1.1 系统总览

% v" ^6 {/ O- G1 E; USTM32使用双核架构,一个cortex-m4核负责app程序开发,一个cortex-m0核负责射频协议栈,还有一个radio子系统负责RF部分。- \% h. O7 I( j

( n1 z7 W6 a# \1 |7 }% n0 D
20200930104503435.png
- e. I/ p, Q! E/ T# p

7 Y0 t( ^. C. n( n8 S1 k4 l1.2 STM32WB总线架构
! {$ k8 c3 G6 C+ z+ t: i% V5 ~如下图所示,基本的外设都被CPU1域,也就是cortex-m4内核访问,CPU1和CPU2通过SRAM2通讯。9 X( t6 i) _6 x) y$ d6 T  C
- R( I, |6 k7 B" Z& z$ t2 i- E* F+ g
20200930104700362.png

! O+ S! x/ X+ x! D/ j' d% e8 ]/ a! w- o$ X
1.3 总线矩阵
) {' H2 g2 `- l
7 p# U7 `4 W- W8 k  n0 ~. w
20200930105113141.png

& i4 b: D( t6 H
" |8 P* c$ a3 L; f1.4 存储分布; @" ^2 y/ J2 p
  [1 }9 F' {7 b  l! s6 W6 ^
20200930105157465.png

2 W/ a5 @# G6 r* V4 f+ @4 J( i5 a4 U) R) K
1.5 STM32WB闪存特点
  C0 m% H/ Q5 b% s. g共享
: j9 @- Y+ n# t. ~- h7 \闪存的一部分是为RF射频子系统CPU2保护的,为了安全区域,主机CPU1无法访问。- ^9 H6 b8 L0 z$ G
使用ART加速/ ]; T% s% i+ ^2 U/ _7 r. x& F% b- E
同时执行代码CM4和CM0+对MIPS的影响约为0%,在单独的AHB总线上,它有自己的时钟分频器。6 C' W7 j8 i3 x/ \

( y# ~' D" K$ V8 j7 r- c% A3级保护
; k% [0 x) a6 V$ s& ?6 q! `级别0(无保护)至级别2(最大保护)
! u& ^9 c7 y9 W2 i/ @- t  L
. G+ n% \$ _( C2 t5 N* f  Q限制
5 b, K, [: b. m) K: B在射频活跃期间,flash擦除或存储不应该被启动。因为射频活跃期间cpu1会频繁读写flash。
& b  D6 ]' ?) [
6 W2 o: g) A( [- M2 RF射频简介5 V+ M8 [1 m1 S) z0 G
2.1 RF参数简介
4 d- `( M: ^6 J
模拟前端2 ?% S$ Z0 j9 ~6 `8 a7 x
最大输出功率
, u9 u- x, D$ {集成巴伦,6dbm发射功率,具有1dbm步进调节) D$ z- s( s, p0 G
专用引脚驱动外部PA,可以获得最大20dbm的输出功率
+ h: a3 M: }/ w6 |8 d5 Q; P0 V- C. |: ^8 H, @3 V$ X
接收灵敏度
9 e, K: V* _! h0 ^: V: WBLE:1Mbps @-96dbm, 2Mbps @-94dbm(250kbps和125kbps不支持)
8 B# E2 I# A: s802.15.4:250kbps @ -100dbm& X. E6 P" W2 W) V

' t1 b1 U* ]7 A; M% y5 z3 B( [: N功耗@3.3V
5 X: a' `0 _: i6 `  H0 DTX:@0dbm:5.2mA
) a  @% k3 R. `( N1 FRX:4.5mA0 B7 N+ [% i8 Z' K& C
stop2 with radio in standy (accurate clock LS12):1.8uA6 c7 Q. a; A* f4 D/ A' q

+ p4 c: w6 d( g( o' S8 L, C$ H4 S4 M% n调制解调器% N) p; `* j4 N. J8 B' ^+ q" e  M: H7 v
通过硬件格式化BLE包(对软件完全开放射频)支持1和2Mbps速率
, i- i1 I6 m2 `* aIEEE 802.15.4 :硬件模式支持250Kbps通信速率
/ ~3 {0 M5 Z" U
; A5 _2 x: ]0 h. L$ z2.2 STM32WB典型外围电路
/ H$ s& B9 S& |) k0 C  t" ?" \, l; s
- ?& J, f9 r+ T+ Y# q% i6 r' e
20200930110652529.png

: y" V) s3 |( W& v" p! S2 v. x9 I9 I( E+ k. G5 y  o& y
2.3 STM32WB RF输入/输出匹配网络0 ~: y* }9 z( Y

4 {( }2 |" W, P8 @; {% ]
20200930110754104.png
! r; N" {; s- N# O4 M

0 l4 O0 f2 u- ]" g一个Π型滤波网络加50Ω阻抗匹配。6 n* ?' h3 N0 L# D2 e. A

& m/ R- z! @! _3 电源管理
, O" M) v# V* e  f6 J2 }3.1 供电方案框图

( a  d! S6 R; F/ D; L& i如下图所示,各个电源阈单独供电,在供电选择上有很大的灵活性。0 B% u! @1 w# ]' G% X& J5 D

( c/ h, ?% X7 r) U. N& E/ d0 G
20200930111004948.png
& n. c# V: V% u+ ~, P* O4 o2 G

7 C) W: a7 y; Z3.2 内部SMPS
' X! l" w6 `- `& U
SMPS用于降低VDD电源( y9 }3 s( L3 s- D- q
SMPS为数字核心和射频LDO供电# D- q$ t. s  B5 {  K
当VDD电源高于BOR[1…4]阈值时,使用SMPS模式
- e6 E# d4 Z/ A( M; F   低于此阈值使用旁路模式,支持及时切换
/ a* m* N9 f- V, z8 b0 ]& p: N   通过HW机制执行关闭,通过SW重新开启7 B5 ^- p9 A: d5 W( h) A. Y$ k4 `! b
SMPS降遵循社保操作模式
# o  @/ \. g  ^7 M6 [' T; g  在Run和stop0模式下为On' K- p' p' {8 h! p
  在stop1 2 待机standby和关机shutdown模式下,SMPS自动处于开放模式,唤醒时自动恢复进入前使用模式+ y. D! r3 Q7 f2 q
3.3 电源配置& y' X  c) ]4 n* x/ A
高性能使用SMPS+ J% w" y; b- y$ F
   通过添加外部电容和线圈,SMPS用于降低功耗8 ~& p% R9 @/ Y( n
2 Z! ~2 p- t' @  Q/ {2 T
20200930112611960.png
8 o  Q( n& d6 W  }
& T$ |1 F0 ]2 P/ l: w6 z6 ^  S
低成本今适用于LDO
( q1 j6 |+ y3 ?- }% W% F7 l2 x# E   通过短接SMPS输入。LDO直接由VDD提供节省电容和电感成本,但是功耗会增加。; u0 R/ a" P5 l+ o0 R

! R. W; H& b- t$ E" ?2 J4 x$ U- f2 f
20200930112744994.png
: a5 n2 f9 Z- H0 N

& g" C+ L" N7 v3.4 SMPS原理图
# }: g+ f9 p" \: z/ o/ e) _  U# f0 d: l6 M5 j; M# M+ H5 ^' x6 @
20200930112824925.png

$ n: p" y; E% D# t- i
1 a5 q  x& ]4 N+ q& V4 核间通信和安全管理
$ F( a# z4 t7 }4.1 HSEM

" `/ l7 e! N2 d* XSTM32WB集成硬件信号量模块,该模块用于同步进程和管理共享资源访问权限。具体如下。# A) K$ S" W- ~* u4 k! P! ~
, \% y0 J7 {& ?
管理和访问权限和同步- |5 n+ @5 A+ O7 l2 k5 Y
   运行于同一个cpu上的不同进程# B$ Z2 [0 B, a1 y1 l  K$ o
   不同的cpu3 g9 F! I; v# z! B- |3 z- W4 F8 J
32个硬件信号量
8 p7 k2 Z, w' _, ?6 v两种锁定机制2 _  E, ]. X3 x# N
   2-step write, read back lock3 z7 X" R4 v. N- p# N" n- ]3 T
   1-step read lock9 X$ }% @6 l7 @4 N% N
信号量释放产生中断
! ]0 K1 W  K" Z% F4 A应用优势
* H: k3 [0 v4 ^! x3 T" j1 c   防止共享资源访问冲突
4 Z3 C$ Y- T5 E0 e; p( U9 `   确保进程之间的同步
8 _0 }5 L7 Z4 M) K$ b# K   无阻塞信号量处理
, r( [/ z/ _" s& \- C4.1.1 HSEM框图! G8 e: k3 {3 g2 q/ N1 s) v) [# i
HSEM模块位于AHB总线上,由AHB接口和中断管理构成,每个CPU都有一个专用中断,并且都有自己的使能、状态、掩码和清除寄存器。每个信号量由两个寄存器组成,一个读写寄存器,用于在两步锁过程中对信号量进行写操作并读取信号量状态,它也可以释放信号量;另一个是读寄存器,它用于一步锁过程中的读取锁。" S" G# r$ E) [- H# ^

, V) @2 J6 a- T7 l3 j
20200930141938212.png

+ W& v1 H1 }7 {$ K  s+ q& t7 A
1 S, ?$ x6 ^7 D4 i
HSEM框图

( w$ _8 I' a5 E& \  n% R) D
8 j9 B# T( ^6 V/ ~* [# T
20200930142349269.png

; |- G, l& j* C4 G  z* g  y* N; E5 ?' Y# A) c3 f
2步 写-回读锁机制
# d1 k% `  h% i& ^- E
# p5 h/ |5 m/ l. t- Y! X/ }3 \
20200930142506381.png

) F/ q$ E3 J( g- K
1步 锁机制

% E# K+ I% e' d' X7 N1 d4 g1 N: z4.1.2 信号量使用 - 共享资源
2 @6 g. p' c% r) F$ g两个CPU可以同时访问的所有外设都受硬件信号量保护,在访问此类外设之前,应首先获取相关的信号量并在使用完之后释放。
" b+ \  m) f3 \2 e' y; u0 p' ~3 V" W+ ?* v  ~1 I
VS1V)~6GWZ}_BSD0G([J`DF.png

( R) e# x) ~7 S6 I, z- u- l, z% E+ |
4.1.3 信号量 - 闪存写入和擦除

& Y- ]& s: [& s要在闪存种写入,应用程序应该
3 V/ }4 p8 j  x) o# Z; L   获取Sem2/ @4 _$ ?/ W8 j1 P
   写入闪存" X+ _* Y: T  v# q4 Z* O" G
     释放sem2! t) [  `7 k. n* _  f$ F
擦除扇区,应用程序应该/ G; h! I  Y5 B( C, j5 x
   获取Sem2$ q0 v& G7 \0 ]5 ]" T1 U
   发送SHCI_C2_FLASH_Erase_Actiity(erase_activity_ON)命令给CPU2
; W0 K& j0 V# V   擦除一个或多个扇区7 S+ r9 R3 t/ z3 D3 k
    释放Sem2
- g; h1 S; i, I1 k4 m   发送SHCI_C2_FLASH_Erase_Activity( erase_activity_OFF ) 命令给 CPU2
$ {- ]+ L% E4 x$ n- F4.2 IPCC
7 U) h# W7 l, @$ l. zIPCC是核间通讯控制模块,它可以提供中断信令,允许微控制器以非阻塞的方式交换信息。/ T# T7 c& D# D6 A. _* M

( g( ~7 @7 e+ z' V5 o为通信信道管理提供非阻塞信令: M8 B+ F4 p$ m5 D2 @
   消息可用性中断
$ m* B: s- O" i/ e5 x2 r   流量开启中断通知
3 A3 h/ @5 t0 M1 F
( d2 G/ C4 I% ~通讯方式
& }! E$ i- x& W   单工:每个方向的专用通道
; f0 g. c' ^* H   半双工:单个共享双向通道
2 A9 F% b, O, i5 d7 _1 m' }' R' h9 B$ [7 N
最多6个双向通道
2 `7 E% e# `6 u% D4 J   通道数据存储在共享ram中
2 H1 m2 \) R' H' d/ R9 l' C# K5 l4 }8 ?- z+ ]* b

- c1 b/ O* M( d) U& R应用优势
0 J* g' i, W7 q$ I4 U6 T' B. W  T   非阻塞信息交换
# p/ D3 W. u1 ?; }4 Q/ ~   通道流量控制/ c  P+ D) L# ^% [# ^' S
   支持CPU sleep和stop模式
! j8 ]5 y6 ?9 X8 d( I: x, M9 |- i0 x  v4 `7 l
20200930145138448.png

, q( o4 x+ q7 W# r
# N1 H" o4 C9 ]" q( F* q6 E) |4.3 安全管理

- i3 w: ^0 n  BBLE外设可以安全使用以下外设# e) h6 M. _7 j0 Z" c  ]
   AES1(仅限IP加密密钥)用于应用程序的加密引擎4 K8 O) S: z/ U+ k8 [1 R; E
   AES2(Full IP)用于IEEE802.15.4的加密引擎
3 T3 `0 E8 u' N  h# y. x+ R8 `1 H   PKA(Full IP)用于加密密钥的生成9 C6 J: |5 F1 M0 d( Y& y$ y
   True RNG(Full IP)用于加密密钥的生成6 d2 }5 A5 L/ h% d+ i9 h

+ p& T5 B7 i' L* [对安全IP的访问由HSEM管理
) E" ~6 R2 P# g6 W& M+ \   HSEM x,y,z用于管理共享安全外围设备访问- Z4 D6 b+ s, P+ w0 k; x$ ?" v
# L5 f, n1 c5 s/ y) [3 g. @: m
BLE堆栈提供以下加密密钥功能8 S9 t: n3 _$ ~8 a' r
    密钥存储
- L0 `8 X% O! Q* \+ a$ p    密钥更新
+ V2 ^& S' Y9 z" D    密钥删除& u7 Y3 n% ~) g7 \/ I
    密钥加载(在AES1中)% g+ [4 ~3 C$ ^. K6 L6 Q
4.4 Cortex-M0+安全性% o6 S/ E1 N6 h) `" |
闪存的上半部分只能由cortex-m0+访问
4 F" b; L' Q" }" n8 x3 W   由安全选项字SFD和SFSA定义
% T/ C1 g& C( e3 r  |# d$ j全局安全使能6 M' v* V* b* o0 R5 d/ A
   允许通过安全选项字SBRD和SBRSA来添加SRAM2a上的部分安全性+ G' d. B0 ]* |" n5 d
   允许通过安全选项字SNBRD和SNBRSA来添加SRAM2b闪的部分安全性" ?0 g; |8 w* K: A6 g
   运行通过SYSCFG使能外设的安全性
% c7 t6 J8 }. I% Q, K( _7 @# n' L  `) W' V- {1 B
20200930150204374.png
# W4 O1 j/ }$ m$ J5 }! O2 o$ X" T' Z) f
2 c% e. Y  l2 m( u# W  B
收藏 评论1 发布时间:2022-1-4 11:00

举报

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

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

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版