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

【经验分享】STM32H7时钟树RCC分析---原理讲解(一)

[复制链接]
STMCU小助手 发布时间:2022-3-23 14:00
F1 代表了基础型,基于Cortex-M3 内核,主频为 72MHZ,F4 代表了高性能,基于 Cortex-M4 内核,主频 180M,F7 代表了高性能,基于 Cortex-M7 内核,主频 216M。H7 代表了超高性能,基于 Cortex-M7 内核,主频400M
- E: Q% Q; ]( F/ \. w9 T' K
2 `0 `( {2 N3 A" K4 x% r6 [# K, p c7d0df1ddff1486885cef4699de65b12.png
1 v. W7 U' \2 p. x
2 l- E5 b; A* ]9 }1 R) g9 v我们今天说的就STM32H7超高性能系列的这个MCU' Y9 F* ?9 }, a: I0 {
1 f" y# k' F& x; J! n+ x
如果您是初学者的话,建议先看下这篇,会对时钟树有一个基本的认识7 p. `- ^# }6 J/ l+ P

- e/ t9 N( Z) _+ ]4 W* H首先我们来看下H7的时钟树,乍一看很大,比F1多了太多东西,那我们仔细看,发现也还是很多,别担心,那么接下来我将带你了解下整体的时钟树原理以及各个模块的分析。
6 P" x# N& |, x2 e/ N* I
$ l9 G* e) V: u' D3 b0 Z" t a92d9f25d96d4fc383eb017701f1a77f.jpg ) _/ p: c. k2 @/ ]' X
  i1 A8 W8 j3 f4 [+ t) {9 m
因为整体框图太大,所以我们把他分成几部分来分析,首先看下外部输入的时钟源:
! j6 |, _  ?2 Q# O/ B& l* ^4 x7 t" k9 A7 J1 t" @% T5 E' x
外部时钟源
! D1 ~$ M7 R4 j  K$ `- }STM32H7共有6个外部时钟源,分别是:* j3 l7 ~* C+ }! l/ Z, T

/ X+ _/ y8 |2 Z; z0 k5 ~HSI(高速内部振荡器)时钟:~ 8 MHz、16 MHz、32 MHz 或 64 MHz
) N2 u( F2 r3 cHSE(高速外部振荡器)时钟:4 MHz 到 48 MHz) s4 C% V: Y% {$ A, Z$ L. X
LSE(低速外部振荡器)时钟:32 kHz
+ b, Q: ]' u/ T* g. ILSI(低速内部振荡器)时钟:~ 32 kHz/ p1 d1 a& d. W
CSI(低功耗内部振荡器)时钟:~ 4 MHz
4 B/ {0 G; X+ D4 A- L; E! @HSI48 (高速 48 MHz 内部振荡器)时钟:~48 MHz
' S2 B% w' ?$ J$ ~LSI& z: B! `2 Z) q! b1 V- |
LSI 属于 STM32H7 内部低速时钟源,频率约为 32Khz。) S: n) U7 w* j& Q: `% G, W; Y
LSI 可作为低功耗时钟源保持运行,供独立看门狗 (IWDG) 和 RTC时钟/自动唤醒单元 (AWU) 使用
% Y; Q- D, P" X% \" P) w% I
0 k& _; q# \2 K( j/ o) ]2 wLSE
, a, a# C8 S( W* K6 P; ?LSE 则是外部低速时钟源,常用为 32.768Khz(使用 32.768Khz 晶振或陶瓷谐振器生成)
) L4 q2 T* M5 U; z! @- C可作为实时时钟 (RTC) 的时钟源来提供时 钟/日历或其他定时功能,具有功耗低且精度高的优点7 v2 X/ @' ]8 F! x
% z: s% B# Z! I- {4 e
HSE
$ R" `; k. ]2 b5 {( }3 P7 uHSE 是外部高速时钟,正常我们都用HSE来作为系统时钟输入,常用25Mhz的外部晶振。
+ k% i) [# y" s系统进入停止或待机模式时,HSE 会自动由硬件禁止
2 _: p2 `" T; N% F3 vHSE 时钟可被驱动到 MCO1 和 MCO2 输出,以及用作其他应用组件的时钟源) o) m7 l0 E. z4 x+ ?

, r' M7 \$ `; t0 y, u" \8 M
9 G  S! }2 p; p9 K8 b) cHSI
* O" U( ]# B" n  N) _) a, h9 @HSI 是内部高速时钟,频率为 64Mhz;
$ |6 T8 o+ L, y, t6 d可直接用作系统时钟、外设时钟或 PLL 输入& l: o# _! B- @0 p
可使用 HSIDIV预 分频器来选择 8 MHz、16 MHz、32 MHz 或 64 MHz 的 HSI 输出频率4 R& h) o  i% I5 j
# n+ t0 k; W; g7 J! |4 A( G
- ^/ {3 o8 [5 p
CSI
2 O4 y  T6 F8 ?0 S1 z' n' kCSI 是低功耗内部时钟,频率为 4Mhz;
" Q2 k! T! H* S3 n- Q( p可直接用作系统时钟、外设时钟或 PLL 输入
6 d' n0 Z9 C* w. t, ~CSI的频率极低,即使经过频率校准后,CSI 频率也不如外部晶振或陶瓷谐振器的频率精度高,其优点就是功耗低。
0 M/ f5 V# g& L6 M5 }
2 B( {9 Q) y2 [! \8 gCSS (Clock security system)
- `4 X/ B& H$ J0 X时钟安全系统,也就是监控系统,H7的HSE和LSE两个外部时钟源带有安全监控,一旦使能后,如果 HSE 或LSE启动失败,系统时钟将切换到 HSI。如果使能了中断的话,将进入不可屏蔽中断 NMI。- r. \9 u- K# x2 l& D/ p) ]
/ m: T$ J4 M! U' D
HSI48
4 P, M8 v3 E) v5 IHSI48 是内部高精度时钟源,频率为 48Mhz;
7 }) T; `" X  L其提供的 48 MHz 时钟可直接用作某些外设的内核时钟( `- Y/ f0 x2 |$ B0 z* q; q
主要用于通过特殊时钟恢复系统 (CRS) 电路为 USB 外设的时钟源使用
7 y. W4 |& ?3 s0 w% c4 ^# v
! ^& X. T7 R1 S) A; H好的,通过上述的介绍,你应该明白了H7的几大时钟源,那么这些时钟源后续要被用在哪里,我们再来分析
' m# u& I$ x$ y. [/ k+ s4 X
8 O" E; z$ c/ J1 w" ~IWDG, RTC,AWU6 E8 x( r9 |5 e' v- ~7 g
上半部紫罗兰色框的部分,就是独立看门狗 (IWDG) 和 RTC时钟/自动唤醒单元 (AWU)
" i: t% p" N- y9 D* g$ E4 O独立看门狗 (IWDG)只能由LSI 提供, r/ u0 p1 G4 h) ?
RTC和AWU可以由LSE LSE 和 HSE的1M分频来作为时钟源
: f( c* ~3 t' M4 s( F8 W
$ Z# V, L2 P' i. k0 x锁相环PLL
. y' a. w' J6 xPLL(Phase Locked Loop): 为锁相回路或锁相环。总体上起到晶振频率倍频的作用,为系统高速率运行提高必要条件。' w$ _$ j" B% |9 M' p

# i/ W2 `0 w/ _/ e9 u, O" H0 RVCO(voltage-controlled oscillator):压控振荡器,是PLL 里的一个构成部件1 R  r2 G  E) a
8 y/ ^2 b( T! w& a- {4 z: J
b1d645b0b7314267b3156c0ad28f17e5.png
9 t# B  a( {" v/ c7 z: q" {0 [; R' t
STM32H7一共有三个PLL锁相环:' [8 @. ]0 i5 ^+ n6 s
一个主 PLL (PLL1),通常用于为 CPU 和某些外设提供时钟。
( k: d6 J: {+ J% k两个专用 PLL(PLL2 和 PLL3),用于为外设生成内核时钟。' C9 w6 K4 g4 ~# E' X

7 A4 u1 r1 ]* v5 F  mPLL的输入时钟源为refx_ck,并且为 PLL 提供的参考时钟的频率 (refx_ck) 必须介于 1 MHz 到 16 MHz 范围内* i+ x. m: W6 Q: C: l
8 f  b+ p! i8 V8 [
其中HSI CSI HSE三个时钟源可以作为输入,然后经过PLL时钟源选择器PLLSRC,该选择器主要选择使用哪一个振荡器作为时钟源,再经过DIVMx分频得到1 MHz 到 16 MHz 的时钟频率,我们一般选择 PLL 时钟源来自 hse_ck,一般为 25Mhz
$ W4 P' {' Y8 M3 [& @
- Q2 V- m! P4 g3 j# A: X# cDIVMxLLx时钟源预分频器,用于对PLLSRC选择的时钟源进行分频,取值范围是:2~638 h- z) f5 w. r7 v

" K0 E! f$ n" l  ~PLL19 i; ~7 F5 ?2 \1 E9 \1 k% J
PLL1 锁相环,该 PLL 主要用到两路输出:pll1_p_ck 和 pll1_q_ck,其中:pll1_p_ck一般用于 sys_ck 系统时钟的时钟源,最终作为 CPU、SysTick、AXI、AHB1~4 和 APB1~4 等的时钟源;而 pll1_q_ck 则可以通过 PKSU 选择作为部分外设的内核时钟(perx_ker_ck),如 FMC、QSPI、SDMMC1/2 等,至于图中的 pll1_r_ck,并没有用到。
) y. i1 U' c' s3 c9 ^2 j) w- ]+ N: {; n9 {" e9 j* i
DIVN1 是主 PLL1 vco 的倍频系数,其取值范围是:4~512;) ~0 f0 N0 ^0 m& i
DIVP1 是 PLL1 的 P 分 频,用于得到 pll1_p_ck 的频率,其取值范围是:2、4、6…128(必须是偶数);4 S' f: m, c" L6 i8 A
DIVQ1 是 PLL1的 Q 分频,其取值范围是:1~128;
2 R' A. q  t$ e/ r5 C1 ?6 rDIVR1 则没有用到;  f+ W) G, X8 v% V6 [9 n  V
FRACN1 是分数倍频系数,它和 DIVN1一起组成 PLL1 的倍频系数,但是我们一般并不需要用到分数倍频- p1 D& V$ A5 g7 w, [" c* [) j! J
6 @  c- Q$ v' d

. [/ F7 y& y& p1 `6 m* c. C' A0 v  w这里以 pll1_p_ck为例,简单介绍下 PLL 输出频率的计算公式(时钟 PLL 输入频率为 hse_ck):2 a/ B9 a" k' z

3 c7 h/ I- L& I: h$ K" H LGN42T%T]VE`XLKBFZCO($B.png ( z4 r; ^1 A5 c7 q- f( P* ~
, S7 ?7 L8 ]0 z- V8 Z: T8 a
假设外部晶振为 25Mhz,我们需要得到 400Mhz 的 pll1_p_ck 频率来作为系统时钟,则可以设置:DIVM1=5,DIVN1=160,DIVP1=2 即可- x! W' [. D( w0 N0 X

9 Q" p! ^5 e+ u5 m% LPLL2和PLL3跟PLL1类似,这里我们不再赘述。1 g) X, ?1 h/ a- q
/ T( J% t4 ?2 |1 i; o
系统时钟

  N+ t* ?% K; G8 @" P! d系统复位后,会自动将 HSI 选作系统时钟,并且所有 PLL 均将关闭。 ,也就是每次系统复位,都会用HSI作为系统时钟,当系统稳定后,可以配置好 PLL1 ,将系统时钟可以切换为 plll1_q_ck(400Mhz),以得到最高性能5 [# U1 i' ]" F" k

( v3 q7 F; z5 ^5 V* G0 q当时钟源用于系统时钟时,软件无法关闭所选时钟源,也就是系统时钟软件无法禁止- f* a! b) U8 \& R+ X+ e) E
) K8 s6 @+ c! W$ |4 _
0f5ab7e90ed548f5a029c66ecf973afa.png $ ]0 ~: u: L. g3 o

: J1 m. B5 Y. dSCGU(System Clock Generation Unit,系统时钟生成单元),用于将 sys_ck 分成各种
/ X: t4 K& Z6 _0 Q$ s2 t时钟频率,比如:CPU 频率、SysTick、AXI、AHB1~4 和 APB1~4 等。
4 t# Z& H4 c$ r4 aSCEU(System Clock Eable Unit,系统时钟使能单元),用于使能各个外设、总线等的时钟,是一个时钟开关。0 v8 _+ f7 \# f. U$ P: @0 r
下面我们来对系统时钟的生成做一个详细的介绍:9 L* ^% I# Y+ i5 o) j3 B+ @9 b$ Q
1 e+ F: @$ F( O- O( w
f8187749cf1a4769878e20231dd956f7.png
" N; p( P! M3 x. x
$ G' p) |+ L9 `$ b/ u( M# J  R上图主要列出了 STM32H743 系统时钟的生成原理,包括 CPU 时钟、SysTick 时钟、AXI时钟、AHB1~4 和 APB1~4 等,这些时钟对整个系统运行来说非常重要,图中,D1、D2 和 D3 域是 ST 为了支持动态能效管理,所设计的 3 个独立的电源域,每个域都能独立开启/关闭。系统时钟由 SCGU 产生,然后经过 SCEU 做开关,最终输出到各个时钟域(D1、D2 和 D3),从而能够控制和访问各类外设,保证系统的正常运行。, w/ B/ h1 r5 R! d+ Q1 f

/ V! m+ j) M/ @1 c# F1 G. pSCGU 输入时钟(sys_ck),该时钟我们一般选择来自 pll1_p_ck,频率为 400Mhz
9 E- I' T0 {* K1 y6 ]3 @$ W' ]DICPRE:sys_d1cpre_ck 时钟的分频系数,取值范围为 1~512,通过 RCC_ D1CFGR 寄存器的D1CPRE[3:0]位设置,我们一般设置为 1 分频,以得到最高的 sys_d1cpre_ck 频率,400Mhz
! ?% q  W- i/ k5 W) x/ E经过HPRE分频后给AXI时钟等外设使用,注意这里最高频率为200Mhz,也就是大部分外设的最高频率为200Mhz,所以sys_ck为400Mhz时,HPRE最少为2分频。. H8 {1 N  b+ I" g9 u- G  b
给HRTIM做时钟使用,频率可达400Mhz0 i' ?! m; O( z+ Z  g
CPU 时钟(rcc_c_ck、rcc_fclk_c),CPU 时钟是直接来自 sys_d1cpre_ck,没有分频器,频率为 400Mhz
0 i4 d6 m3 A8 Y) U( i) h( _* zSysTick 时钟分频器(固定 8 分频),这个在图中是有错误的,实际上这个分频器是没有的(硬件 bug),因此 SysTick 的时钟频率,直接来自 sys_d1cpre_ck,频率为 400Mhz系统时钟
! X3 f- Q4 n6 D+ l使能单元(SCEU),它能够对 D1、D2 和 D3 域内的所有外设时钟进行开/关控制,所以在使用外设的时候,必须设置 SCEU,使能其时钟,否则外设无法使用,也就是配置各个外设时钟的使能ENR
! ?+ O- x( s! `. @( L, ^D1 域,是高性能域,主要为CPU时钟和AXI外设,AHB3外设; @5 q- h  q. i$ j5 ]1 ^; I3 s1 i
D2 域,通信接口域,主要进行数据通信工作,减轻 CPU 的负担。此域包括:AHB1、AHB2、APB1 和 APB2 等时钟部分。
) a% x/ W1 m+ z. P+ GD3 域,数据批处理域,此域包括 AHB4 和 APB4 等时钟部分$ _7 ]1 U, q* R3 L

& F* S9 }+ B% N0 z, J+ P- f* y" {$ T  J: a
MOC1/MOC2
" Y' s0 Q1 L( u& o0 s; G6 x% g8 O两个时钟输出 (MCO) 引脚可供使用,分别为 MCO1 和 MCO2。可以为每个输出选择一个时钟源。/ ^( u' a/ r4 }
GPIO 端口必须在复用功能模式下使用MCO。: n) o% k6 s: O, _( V7 P
MCO 输出提供的时钟频率不能超出最大引脚速度
# E* c5 |. ?$ W* TMCO1 可以在 PA8 引脚输出- R7 Z1 ?  h. E# k
MCO2 可以在 PC9 引脚输出$ B) m2 C7 j( Q( V3 F7 C

9 m2 Z: S6 ?  A0 j4 W2 bPKSU/PKEU, I' L! T8 }2 D  U" G3 G
SCEU :用于控制外设的访问时钟(访问寄存器)
: k3 q% W0 Y6 I/ }PKEU: 用于控制外设的内核时钟(生成控制时序,如波特率等). s7 m+ k' @# x- F/ O+ z" r( |/ w
" p3 v" Y+ K6 a  N6 O
并不是所有的外设都需要用到 PKEU,因为有些外设并不需要生成时序,没有所谓的外设内核时钟,比如 DMA、OPAMP 等,这些外设只需要在SCEU 进行使能即可, V$ w, W# o8 F- y$ W8 I$ D0 v( T

) @8 \' w- {9 \. T下图是详细的外设时钟使能框图
- M6 Q  G# S# u$ [, g
8 }9 n* H( G9 R: O( e 4911c60431a34b999f4fafe604414df6.png
' f; f% S" Q' [  d6 w( b% m
. t( a, I( m2 K# v/ e2 M上半部分的SCGU跟SCEU已经讲过,这里我们只说下下半部分:/ J$ |8 v' K8 l3 k/ r4 ^
外设内核时钟选择单元(PKSU,即:Peripheral Kernel clock Selection Unit),用于选择某个外设的内核时钟来源,具体的选择关系。; A+ @; |5 n6 m3 ^% c
外设内核时钟使能单元(PKEU,即:Peripheral Kernel clock Enable Unit),此部分将PKSU处选择的外设内核时钟进行使能/禁止操作,最终控制是否输出内核时钟(rcc_perx_ker_ck)给外设。$ w) B9 L, f% c" P8 o1 C2 n
内核控制逻辑(Kernel Control Logic),用于控制 PKEU 是否输出内核时钟给外设,它有很多控制信号,其中我们常用的是 PERxEN,通过这个位的设置就可以控制具体外设内核时钟的开/关。) V+ M7 X6 ]) z$ W: [: ]( L6 _
外设内核时钟(rcc_perx_ker_ck),该时钟用于驱动外设产生时序,如波特率、时钟脉冲等。大部分外设都需要用到 rcc_perx_ker_ck,比如串口、SPI、IIC、FMC、SAI、LTDC 和CAN 等。
& ]. J! Y5 s) Y2 z2 T, R8 w2 r/ @) G) D9 G) A. k
  S8 a/ L; g( G( U2 N9 w# F
这里推荐一张STM32H7 的数据手册里面非常棒的框图(在数据手册里面检索 Figure 1 就可以找到),可以对H7的整体架构有一个直观的了解,可以看到每个外设所挂的总线,和各个总线的最大时钟频率。
5 Z! F1 O- \  e" v6 @6 o- h# t% Z9 a: \% x
AHB (Advanced High-performance Bus) 高级高性能总线, r. o" F- t& K& s+ ]
APB (Advanced Peripheral Bus) 高级外围总线
; `/ N; F4 Q, W: i8 y. c/ ?' H6 E6 aAXI (Advanced eXtensible Interface) 高级可拓展接口/ C, |# |  N9 l; H8 i9 V

" |/ f1 ^; [& B# K- {) _, sAHB主要是针对高效率、高频宽及快速系统模块所设计的总线,它可以连接如微处理器、芯片上或芯片外的内存模块和DMA等高效率模块。
8 s% s2 l4 y0 Q  U2 @) _; o$ `6 A0 q5 D8 m
APB主要用在低速且低功率的外围,可针对外围设备作功率消耗及复杂接口的最佳化。APB在AHB和低带宽的外围设备之间提供了通信的桥梁,所以APB是AHB或ASB的二级拓展总线。
1 B  O  m8 V9 l4 @7 Q  Y
. C; j$ d/ a3 `2 ~* s# e1 b" ?6 `9 ?AXI:高速度、高带宽,管道化互联,单向通道,只需要首地址,读写并行,支持乱序,支持非对齐操作,有效支持初始延迟较高的外设,连线非常多。
4 z; W9 i% V- ~& y! W# f  U- F- }8 X. L6 o/ j7 [$ U
这些内容加起来就定义出一套为了高性能SoC而设计的片上通信的标准。. ^* \  g1 e/ F$ n! i

! T" w* a: a1 q5 e 1111.png
5 u4 z( c% b: j9 B* s% u: j1 s# E/ P; ^1 ]2 U
比如你可以看到SYSCLK(Hz) = 400MHz (CPU Clock) 也就知道上述CPU框图初的错误/ p* N* q8 b4 N4 L$ d! s0 g. u
: C: @+ @/ n& R7 a
可以看到CPU外挂了一个 64bit的 AXI BUS 还有一个32bit的 AHB BUS# w3 a2 A. K% O& I( O8 y3 W

5 C8 H, _% i8 n9 C7 ^7 o$ AFLASH FMC QSPI 这些都是在AXI总线上的
- q; c2 n- d- S" r% g/ A4 w常用的 TIM UART SPI IIC挂在AHB总线上9 ^% S# @5 P+ a5 n) ]0 H! H
' Q6 b, @* n" U- e1 O. V
64位的AXI总线又分出了一个32位的 AHB4 等等: K) Q$ }% B0 w+ y
# r( r5 |5 o0 |% p* w( H. l( q4 o
右下角的是时钟的框图,可以看到RTC时钟 看门狗时钟3 _# x$ n9 e: @% @8 F
& M4 ?. _3 i: N' {4 G
可以看到HSE的时钟是4-48Mhz 然后给APB4总线外挂 经过三个PLL锁相环 再做外部输出
+ F! D% M( |  H3 v, F) J
6 v4 `: H, y4 |0 e ]V})_607HGDVD(Q@C1T1%]2.png % ]2 Y9 a7 m+ m( K

9 V- e! K& g3 V7 F& \$ F" J; e再比如200Mhz的AHB4经过分频生成了APB4最高位100Mhz
9 W  S+ g0 T2 K/ k  Z' X; k
; M3 k* G! T& m* E 9_~6DV(3U[]N0315QW9[S[T.png
: o# v7 R2 n. h$ @$ o1 {( L. b$ e5 L) l
APB1 定时器有 TIM2, TIM3 ,TIM4, TIM5, TIM6, TIM7, TIM12, TIM13, TIM14,LPTIM1, \9 x- `7 L' H0 \: E
APB2 定时器有 TIM1, TIM8 , TIM15, TIM16,TIM17
, f4 m5 n" A. t4 D! mAPB3 上有 LCD-TFT FIFO
# Y" L. V# I; n2 ?9 f& T9 tAPB4 定时器有 LPTIM2,LPTIM3,LPTIM4,LPTIM5
8 g4 C- `+ n6 }' L1 N: p% J
+ e* m5 {6 w( ~9 @还有下面的总线系统框架+ G( Q) s$ T; p) F# B

% W# \+ N. k" N' s SWA]V0DDFM@IPTU@3BUX.png
2 o- V9 r% a  n9 c2 T
3 e" k: N3 e2 _* H可以很清楚的看到外设共分为三个域:D1 Domain,D2 Domain 和 D3 Domain。
+ e0 \' \: @' i; U6 G& ]◆ D1 Domain
- z8 r) H8 M9 K0 {- OD1 域中的各个外设是挂在 64 位 AXI 总线组成 6*7 的矩阵上。! u' g) s3 i, ]) X

; A7 e; q* E  U6 个从接口端 ASIB1 到 ASIB6: j1 K& O3 Z8 s8 c0 E0 Y- `
外接的主控是 LTDC,DMA2D,MDMA,SDMMC1,AXIM 和 D2-to-D1 AHB 总线。' o1 j! K$ y: p
. b; _1 B, |0 Y8 E
( `) t; t( T5 ~& J3 M
7 个主接口端 AMIB1 到 AMIB7" C( v. Y" w; s/ T+ V# N) u& ]
外接的从设备是 AHB3 总线,Flash A,Flash B,FMC 总线,QSPI 和 AXI SRAM。  l8 Q: H! v: o. v% C% @: |0 H6 c
AHB3也是由 AXI 总线分支出来的,然后再由 AHB3 分支出 APB3 总线。
' z) R( y4 o' K/ t9 y( S" U. v; h0 v8 R( N2 C) ^% P
4 O$ m3 z2 G: U
◆ D2 Domain
0 }( t( X- k9 c. ?D2 域的各个外设是挂在 32 位 AHB 总线组成 10*9 的矩阵上。
# s0 A' Q" C/ n10 个从接口外接的主控是 D1-to-D2 AHB 总线,AHBP 总线,DMA1,DMA2,Ethernet MAC,SDMMC2,USB HS1 和 USB HS2。
1 {$ n' e( W3 t2 N/ B/ G9 }9 个主接口外接的从设备是 SRAM1,SRMA2,SRAM3,AHB1,AHB2,APB1,APB2,D2-to-D1 AHB总线和 D2-to-D3 AHB 总线。( X1 k5 T$ w. ]6 q: a
( H, X* O) e: y
◆ D3 Domain5 s& D0 n% N9 M* y8 U
D3 域的各个外设是挂在 32 位 AHB 总线组成 3*2 的矩阵上。
# Z2 x, C$ b5 v9 i: @( z; k3 个从接口外接的主控 D1-to-D3 AHB 总线,D2-to-D3 AHB 总线和 BDMA。6 H# k3 T& P# {8 L/ A
2 个主接口外接的从设备是 AHB4,SRAM4 和 Bckp SRAM。另外 AHB4 也是这个总线矩阵分支出来的,然后再由 AHB4 分支出 APB4 总线。
7 [( `0 P( w2 L9 V* m
( R' }- ]3 h* o3 V- e4 I( D3 S  n) a  ?) f4 A3 n
赞 收藏 评论0 发布时间:2022-3-23 14:00

举报

0个回答

所属标签

相似技术帖

官网相关资源

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