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

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

[复制链接]
STMCU小助手 发布时间:2022-1-4 11:00
1 系统和存储9 A4 x) y% x' p( }4 f+ ^
1.1 系统总览

1 j% E7 t1 ^: j& _$ C+ }! A# uSTM32使用双核架构,一个cortex-m4核负责app程序开发,一个cortex-m0核负责射频协议栈,还有一个radio子系统负责RF部分。
+ h: `" W! \$ L/ y- @+ C
1 ]  k1 p  \; p( k8 C5 G5 f, n
20200930104503435.png

5 h$ R; E& k% V  w* C# ~" q) X5 s) s1 Q! u1 R- n" y
1.2 STM32WB总线架构
2 \, f) X% g7 f- `5 d如下图所示,基本的外设都被CPU1域,也就是cortex-m4内核访问,CPU1和CPU2通过SRAM2通讯。/ V1 T7 i5 W# u5 P

0 W# j# ^9 h) U8 [% W7 V7 g
20200930104700362.png
5 o  c& O3 c  _3 j9 C6 r. e

* ~% M4 [8 R/ Y' a; g6 I5 |) q( S1.3 总线矩阵
6 O' R0 F  O3 a/ C
/ F0 N1 {7 O' `4 `7 T
20200930105113141.png

# X) U0 R& L( }0 M) k
) q5 W+ W6 [# a5 ~- f1 m% n1.4 存储分布
9 a' g1 `, G) W7 C- \4 N: S% H! U" C' \* M! L6 j5 O! c1 T: \' O
20200930105157465.png
( ^, J* ?0 F; Z8 n
: n' l: h1 {& G, U2 F/ G1 B
1.5 STM32WB闪存特点
) a# G! }% N9 T: a; @共享
, [, v1 l/ v' H" i% ]闪存的一部分是为RF射频子系统CPU2保护的,为了安全区域,主机CPU1无法访问。
% i* X8 ~3 f0 P0 }* V! Q. h使用ART加速- F+ B1 ~% g! u! _9 H
同时执行代码CM4和CM0+对MIPS的影响约为0%,在单独的AHB总线上,它有自己的时钟分频器。
8 f4 B, ~% l4 `( M5 a, `& a& [6 T; n8 _% P) y! e
3级保护
! t' P4 E* o7 z* j) x级别0(无保护)至级别2(最大保护)7 }# e$ Y0 J. w1 @; r
) c$ {7 _" l0 j% J& V" |  m, e; F
限制! t9 E% ^$ ]# T
在射频活跃期间,flash擦除或存储不应该被启动。因为射频活跃期间cpu1会频繁读写flash。* h4 a; M5 m- m% U" x9 g4 _$ a
3 `# w2 c6 a% Z% {" f3 T6 D5 a  P
2 RF射频简介( V0 g* \( i. F$ b: l; V9 @
2.1 RF参数简介
0 H4 o2 F7 Z+ ^' h" [
模拟前端
  H& k. o- h5 M7 Z最大输出功率, Q, a; j; J, B# T
集成巴伦,6dbm发射功率,具有1dbm步进调节
' ^' F5 z8 x+ v9 H3 [专用引脚驱动外部PA,可以获得最大20dbm的输出功率
! P3 S) d- m* M! j  i: L8 {- ?) m6 z  C, p% G
接收灵敏度, I# C: p: c, |+ M
BLE:1Mbps @-96dbm, 2Mbps @-94dbm(250kbps和125kbps不支持)
1 _# D5 f! b0 N) P0 w802.15.4:250kbps @ -100dbm
, v4 Z" Z0 O* n% d& k7 p, u" X" H3 @! ^( C0 L6 ]1 R
功耗@3.3V
* Y0 g( V. ?7 j# bTX:@0dbm:5.2mA
- e, ]% C/ m% Q3 m1 gRX:4.5mA
4 w; ]( T  l) a( V4 R% Z. Rstop2 with radio in standy (accurate clock LS12):1.8uA
5 e, ^$ L0 l" r: L" C
! A5 D: q2 ?: P, V! f调制解调器
4 D9 N: s& h" k/ s, p/ j通过硬件格式化BLE包(对软件完全开放射频)支持1和2Mbps速率
3 `' ~" ~) }5 b. S! O, v6 r  S# o3 PIEEE 802.15.4 :硬件模式支持250Kbps通信速率/ }0 ~4 J. _% H' ^' N

+ P3 I+ d' y! j' ^- M  }. G7 X2.2 STM32WB典型外围电路
3 T( o. p1 R- r- v' P  R) B; S+ p8 N( H4 A! E. r1 q6 h/ U% I  |: ?3 M
20200930110652529.png
# ?% g" D2 b1 B
2 f. _- R4 L# d% S  |. n) s4 x
2.3 STM32WB RF输入/输出匹配网络
- Z; j- a% e- Z& Y* ~/ }3 E+ p- h  `) I7 W( D0 t# f3 k& e
20200930110754104.png

( L$ }' L$ d5 D- r  u# j3 M
' L3 E; U# s: ~一个Π型滤波网络加50Ω阻抗匹配。
; c8 a8 @6 m+ G) A& H0 V8 z6 l6 Y# P: z5 F5 T. y$ w6 E% x! f6 c7 p, C6 o
3 电源管理, M2 _3 O, b" I- b5 [
3.1 供电方案框图
' W( @' @6 n7 @) H0 M! K- u  k
如下图所示,各个电源阈单独供电,在供电选择上有很大的灵活性。
; C8 k6 L# z* u8 w! X% `; r! Z# E( B# q" Q7 Y& p5 Q
20200930111004948.png
9 J7 j  N" [5 Y) T/ N' F
- T& H1 r& G+ d  ~% _0 y8 s
3.2 内部SMPS
' v8 p/ `6 G( q$ Z; A
SMPS用于降低VDD电源
2 `) b' d! B- W' J  ^% gSMPS为数字核心和射频LDO供电, l$ y; F4 S! s* v  x* @" C) r# f( _. l
当VDD电源高于BOR[1…4]阈值时,使用SMPS模式
3 o% {/ z4 p0 J* r0 ]  @' f   低于此阈值使用旁路模式,支持及时切换
3 p! |" z& f" z' D   通过HW机制执行关闭,通过SW重新开启
$ b% \; @, a  v8 q; ySMPS降遵循社保操作模式
( u( e/ f% X8 I4 y4 k. ^2 t  在Run和stop0模式下为On; E/ T  A- }$ P" ], d, @
  在stop1 2 待机standby和关机shutdown模式下,SMPS自动处于开放模式,唤醒时自动恢复进入前使用模式5 k5 w4 c4 B& ^6 q8 K3 k: Z1 R, r; M
3.3 电源配置: S' X; m' o: ^7 Y, G; e
高性能使用SMPS
& Y" a9 q6 M8 L6 T$ C0 x   通过添加外部电容和线圈,SMPS用于降低功耗' {% R, M; u2 g0 R& x, V7 b+ V% R

; |, t8 k2 {$ m9 X, ^; O8 _. G
20200930112611960.png
# `% X! z! g2 M& |) {$ P  F% R

: x1 k! G% R$ {/ U# ^* Q低成本今适用于LDO$ `7 d5 ^/ A& i  W/ P$ k
   通过短接SMPS输入。LDO直接由VDD提供节省电容和电感成本,但是功耗会增加。) k- K! [5 V+ D1 L1 e

- Y6 g2 p# B- M9 E% y1 m
20200930112744994.png

  K- @- p9 c9 v" v& q# B4 \$ j& m7 H. Q6 S4 `2 s  k8 i# n$ M8 k* y1 \
3.4 SMPS原理图
9 H, G+ K1 n  i# e  |! b( Y& d# v$ u3 i2 C! N; ~
20200930112824925.png
$ r" e, Z9 J8 [4 n

" L1 g' U" {) W1 w' J$ v5 v5 R7 o4 核间通信和安全管理: C. q  C( G# X, [8 r- m6 D
4.1 HSEM

' F+ S3 u. m( D1 x4 V0 s/ aSTM32WB集成硬件信号量模块,该模块用于同步进程和管理共享资源访问权限。具体如下。
! L9 d9 ]8 W& K  _5 F  l
( d1 \! \+ d. P& z管理和访问权限和同步
/ ^; \2 h/ F' H) r' I   运行于同一个cpu上的不同进程" ]; H% d4 q0 b7 b6 J
   不同的cpu
! O5 o: z! d' J% F. N2 V4 q; E9 w32个硬件信号量' _7 ]: \; M  }/ e& O
两种锁定机制' ^/ `6 b& v% W
   2-step write, read back lock! ~: t. B3 `, J. d- P- p
   1-step read lock
4 R9 @: H  c8 [8 w  b/ M信号量释放产生中断
" `* j2 x) ~+ `% y$ s应用优势
3 w0 g& H6 L6 }, M8 x   防止共享资源访问冲突' t! ^1 b4 y; a, X- ~$ B$ R- W
   确保进程之间的同步
8 t0 ?7 _7 d) Z1 Y$ e   无阻塞信号量处理& M: k6 u1 [2 _3 v$ a  z
4.1.1 HSEM框图& _3 ]( u! o9 G. w- d" A4 {3 ^& N
HSEM模块位于AHB总线上,由AHB接口和中断管理构成,每个CPU都有一个专用中断,并且都有自己的使能、状态、掩码和清除寄存器。每个信号量由两个寄存器组成,一个读写寄存器,用于在两步锁过程中对信号量进行写操作并读取信号量状态,它也可以释放信号量;另一个是读寄存器,它用于一步锁过程中的读取锁。
2 ^" V/ a0 D4 f% M2 Y( t
0 [+ ]& A' Z9 O
20200930141938212.png
5 B  O7 C7 i+ i

) D; x+ f" J6 A3 r/ R* E/ z; B
HSEM框图
4 w3 [! ]1 k8 L2 S2 p1 K% y0 C
5 Q) G6 C# s* b9 f7 ]+ \; T
20200930142349269.png
8 ^, j0 V4 |/ Q0 E
- @+ c8 R! R7 ^, a$ g# @6 a
2步 写-回读锁机制
( F; I# ?; C+ K( z! v% i  }0 E
' k5 O" H# }0 }+ N8 E: u8 v6 r
20200930142506381.png
' _) B) U' E8 n# {5 b  p) b
1步 锁机制

$ Q3 H5 M1 z8 L/ }3 e. J4.1.2 信号量使用 - 共享资源# _- g9 R" P) P! J9 H
两个CPU可以同时访问的所有外设都受硬件信号量保护,在访问此类外设之前,应首先获取相关的信号量并在使用完之后释放。
4 E7 r$ |, i; c  Q' G) q
1 _) t/ Z* A' h% D
VS1V)~6GWZ}_BSD0G([J`DF.png

1 N7 Z+ K8 `4 E$ Y# s
2 O% I# o1 v- J( G0 }4.1.3 信号量 - 闪存写入和擦除

2 E. G! n4 X9 o5 m6 y要在闪存种写入,应用程序应该
5 K( W8 m1 Q( D7 C' x   获取Sem2
& A$ T+ |7 u1 _* s1 j3 o   写入闪存
9 _& b7 _* H1 {7 M3 b     释放sem2
/ X- v4 [* W# H; z" g* ^) c擦除扇区,应用程序应该
  C. ~% E  D' F7 ~$ ]) C2 h   获取Sem2# F  V2 e9 v, E# Z* O6 {2 S
   发送SHCI_C2_FLASH_Erase_Actiity(erase_activity_ON)命令给CPU2, ]/ h; Z) r- {" Q9 E3 i* R
   擦除一个或多个扇区" g  R8 `# I- ^1 E2 b. ]
    释放Sem24 {7 Z) R3 E/ {; w
   发送SHCI_C2_FLASH_Erase_Activity( erase_activity_OFF ) 命令给 CPU2& w  v/ ]- |: a9 ~  Y! G
4.2 IPCC. N2 a3 n& _: V7 F) X& ~7 B2 z
IPCC是核间通讯控制模块,它可以提供中断信令,允许微控制器以非阻塞的方式交换信息。# a! }0 Q, e- q  s/ m
6 O0 ~- N- S; q+ B0 S' u
为通信信道管理提供非阻塞信令
6 d3 c1 @( _- n% }   消息可用性中断6 `4 w% i' t3 |, v7 J3 Y
   流量开启中断通知- L( L& q" ^& v7 G
! f4 K% \7 |5 B1 i6 `2 X
通讯方式
# d' I' w3 g! @   单工:每个方向的专用通道
7 S/ Y7 a- m1 C* Y1 C   半双工:单个共享双向通道/ i. {1 V# S  Y5 @3 O

  o8 T8 [( ]4 N最多6个双向通道4 ^# [+ @" \5 h. N( m% N
   通道数据存储在共享ram中4 Q% v' ?! C& g) N: g2 h
8 y& r$ N2 }' v! [! V

1 a1 E$ e6 L  u; `5 P4 j  v+ a( q应用优势
. W. v3 N+ s' g   非阻塞信息交换( A, I5 q2 m" f* e5 @+ G
   通道流量控制
/ ^) n$ f) {/ D( p2 w   支持CPU sleep和stop模式9 r& w# ?! H  p$ Y/ I& g) D
2 s- Q" q4 j; O9 L: a: H: z$ l5 l& p
20200930145138448.png

0 a  n& g: M" I1 I5 v; S9 \' Y  |
4.3 安全管理

" P% u4 b! v9 {; _5 P( t' w8 DBLE外设可以安全使用以下外设& v) a( I. ~% o  \
   AES1(仅限IP加密密钥)用于应用程序的加密引擎2 M& |) c1 j9 E. p
   AES2(Full IP)用于IEEE802.15.4的加密引擎: f3 f1 G: C/ t
   PKA(Full IP)用于加密密钥的生成- r7 D# v5 ~9 T
   True RNG(Full IP)用于加密密钥的生成
9 I, `: G( D% C& p
5 }. n5 X" K, ^1 o- o对安全IP的访问由HSEM管理8 ^- ?" a  u; B2 G, y+ `7 v0 H
   HSEM x,y,z用于管理共享安全外围设备访问
1 q, G7 g# z7 B6 V* C, L( X1 M" m! E' p. G! [+ m0 ~/ w& g
BLE堆栈提供以下加密密钥功能
  l0 C0 q. ]; v9 `& \" r    密钥存储
% C. S9 |, h* m/ b    密钥更新- a. x7 ]7 A, S9 B/ @) L# c
    密钥删除
; S- K$ T) k% t5 d5 h* ~7 P. o    密钥加载(在AES1中)! e$ w& s& q) L
4.4 Cortex-M0+安全性
0 d3 J1 Z4 [8 \0 ?, \9 j* L2 r% A闪存的上半部分只能由cortex-m0+访问7 _0 w% o7 R/ t' k! R8 A; V
   由安全选项字SFD和SFSA定义
4 @6 O* F  B3 D  Q; Y全局安全使能2 A+ b, k8 V: u' w
   允许通过安全选项字SBRD和SBRSA来添加SRAM2a上的部分安全性
( [' ]4 z& T4 }: _, o4 a   允许通过安全选项字SNBRD和SNBRSA来添加SRAM2b闪的部分安全性4 z6 K3 _' [0 e
   运行通过SYSCFG使能外设的安全性  d* ]. q5 e6 u+ ^. J1 }: ~0 E
, ^& e" z. \2 m4 Q5 ^
20200930150204374.png
7 a# S3 B# v& a; W
9 i5 n/ i* \" }8 U
赞 收藏 评论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 手机版