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

【经验分享】STM32H7整体把控

[复制链接]
STMCU小助手 发布时间:2021-10-19 10:31
第3章   STM32H7整体把控
初学STM32H7一定要优先整体把控芯片的框架,不要急于了解单个外设的功能。
1 {4 c6 v$ s6 i4 M" {7 ~1 b
, v0 s4 u, ^1 `( O3.1   初学者重要提示
: N8 `, j; z4 Q' L7 }0 U9 J- s- c学习一款新的芯片,优先掌握系统框架是比较重要的,建议逐渐养成这种学习习惯,然后各个击破即可。
9 \, |, A2 X) G" \6 P7 \: K本章节提供了多张STM32H7的框图,这些框图都非常具有代表性。很多时候记忆知识点比较费脑子,记录这些框图是一种非常好的方式。
0 X: e1 N( V6 _5 R- Q# ?/ H: ~对于本章节提供的部分知识点,无法理解透彻,暂时没有关系。随着后面的深入学习,基本都可以掌握。7 W9 T2 u9 q2 U) `3 \' A; a* K; u
重要的MPU和Cache知识分别放在了第23章和第24章。
, R" D- G; B& F; G9 ^+ R3.2   STM32H7硬件框图) G, \- ]9 N" K( d- j" u
学习一款新的芯片,需要优先了解一下它的整体功能设计。需要的资料主要是来自官网和数据手册,比如我们V7开发板使用的STM32H743XIH6,直接在官方地址:链接(这是超链接)就可以看到对此芯片所做的介绍,页面中有一个如下的框图,对于了解STM32H7整体设计非常方便。4 ^! ]7 n2 J5 d7 N+ z" R
13.png
再稍微详细点,就需要大家读页面上的”Key Features”,就是下图所示的内容:
5 A& D4 Z' ]# J* e2 B$ L7 P
14.png
或者直接看数据手册开头的章节即可,也进行了介绍,内容基本都是差不多的,如下图所示(部分截图):
+ i, R: {4 ?0 ]. m3 ~
15.png
通过框图和Key Features,大家可以方便地了解STM32H7的FLASH、RAM大小以及各种自带外设的信息。5 H: ]1 x6 p  H/ N
6 o' [4 s" h! a6 x9 `; m9 G  Y

" G3 x) j* s/ F3.3   STM32H7各个型号的区别
9 k0 e  F7 }, i3 [) U涉及到芯片选型的时候,需要大家了解各个型号的区别。对此ST有一个专门的文件STM32H7x3 MCUs High-performance line,在链接(这是一个超链接)里面可以找到。此文件里面有简单的对比,只是内容比较简单,仅两页,不过也言简意赅。最主要的是下面的这个截图:5 F" _) }. J# F* W) c
16.png
通过这个截图可以方便地了解不同型号的引脚数、封装、FLASH大小、RAM大小以及是否带HW CRYPTO硬件加密的区别。' H9 M5 h3 M2 v; k
; ?1 d# H/ R6 y2 y+ g
5 `& ~& }$ ~$ i0 q; _) X
需要了解更详细的对比信息,可以看数据手册。任意下载一个型号的数据手册,在数据手册的的Table 2里面有详细的对比,如下图所示(部分截图):7 S/ E- z# T* r$ ~+ h! A. D2 d
17.png
使用ST提供的软件STMCUFinder或者STM32CubeMX也可以做对比,只是没有上面的表格这么方便,可以一目了然。) M) N& T1 P' T
8 [, q1 ^$ I/ O+ ?/ F$ d

$ B& x0 [6 |" H: u3.4   STM32H7总线框图和时钟; T2 K* D' q( X% \. g
STM32H7的数据手册里面提供了一张非常棒的框图,大家可以方便地查看每个总线的时钟速度和这个总线所挂的外设。这个在大家配置外设时钟分频的时候还是非常有用的,因为外设的时钟分频就是建立在所挂的总线速度(大家直接在数据手册里面检索Figure 1就可以找到)。8 `6 p% e* p- u$ O# \1 A6 l
18.png
比如我们想得到不同定时器的主频,通过上面的框图,可以方便地获得如下信息:
2 Y! ?1 R, N& J) }7 l
& {" t" l  K# k

7 V/ s9 l7 f9 m9 w: G8 L$ i% T0 {SYSCLK(Hz)                     = 400000000 (CPU Clock). x* @& _: z/ v/ T! S: j
HCLK(Hz)                       = 200000000 (AXI and AHBs Clock)) C8 @% K% A, F, ?/ t4 t. I1 K  }
AHB Prescaler                  = 2
9 k  p: h' U( _/ G2 @D1 APB3 Prescaler              = 2 (APB3 Clock  100MHz)+ A7 A! O; u! V  |' M/ l3 i0 d
D2 APB1 Prescaler              = 2 (APB1 Clock  100MHz)0 x4 |3 `$ t4 h+ Q* i
D2 APB2 Prescaler              = 2 (APB2 Clock  100MHz)6 t& V( n; y6 I6 r7 Y3 c
D3 APB4 Prescaler              = 2 (APB4 Clock  100MHz)
) @0 L6 |5 N' `( {$ A/ ]7 R2 ^9 ]4 l# D, P( f+ c
因为APB1 prescaler != 1, 所以 APB1上的TIMxCLK = APB1 x 2 = 200MHz;
6 b) [+ `3 O3 H: P4 A
9 E" v# @' O! `% t

) }- R) `0 M% p, y' ~4 `0 q) v3 u因为APB2 prescaler != 1, 所以 APB2上的TIMxCLK = APB2 x 2 = 200MHz;- @& E7 J4 g$ B" w6 O& @
- H+ S& W" m" t5 q) t$ I
8 E, ?1 Q1 c& V+ Z
APB4上面的TIMxCLK没有分频,所以就是100MHz;( x* B& D- N9 f1 g& @! i
APB1 定时器有 TIM2, TIM3 ,TIM4, TIM5, TIM6, TIM7, TIM12, TIM13, TIM14,LPTIM1
& ]. A! G! L8 w" o* vAPB2 定时器有 TIM1, TIM8 , TIM15, TIM16,TIM17; X" V4 ]+ Q8 {4 }# P  p; D' `& l
APB4 定时器有 LPTIM2,LPTIM3,LPTIM4,LPTIM5
5 ~# a; h9 I, x: W- R
1 v8 S7 T: Q/ n
) g8 g+ Z& ~% D; Y$ I7 x
3.5   STM32H7的A**线
! k+ b% h% j9 L& W/ T2 qA**线在STM32H7中有着举足轻重的作用。高并发性全靠这个总线了,先来看下A**线的框架:4 R# z. d" G" U4 J
, @5 a7 E+ c- d' N" ~1 _/ E2 h+ T, J

: \! ?3 c0 I8 R3 o0 {* _" H3.5.1      总线系统框架
9 l( l# m( {0 l& g下面这个截图比较有代表性,可以帮助大家理解STM32H7总线系统。5 l1 B6 y' ]. ^% s& S$ x
19.png
这个图可以方便识别总线所外挂的外设,共分为三个域:D1 Domain,D2 Domain和D3 Domain。8 \1 y/ u5 Y: x5 p, H5 h
1 {( u1 ?# O3 V, p$ ?" E# a

' T# t& t' r& V+ E3 c$ J9 B0 dD1 Domain+ G( u) y+ C! W; \  R" i5 E

" y3 H& z: L- f- B

- |' D( @3 ]% O  XD1域中的各个外设是挂在64位A**线组成6*7的矩阵上。+ V# [7 I( m% m' }
# s& O3 E2 Z4 Z/ g- r5 X' Y7 x6 X  T

$ i# b1 K6 P* K2 {4 E5 F) a6个从接口端ASIB1到ASIB6
6 u+ t& @9 v* V/ O- n5 z外接的主控是LTDC,DMA2D,MDMA,SDMMC1,AXIM和D2-to-D1 AHB 总线。
& C# N, [- R9 s6 m: b0 m( c6 D" {3 b. c
1 p8 B( c5 n: K* o
7个主接口端AMIB1到AMIB75 c  B; ]7 _6 E  b4 B$ L( c
外接的从设备是AHB3总线,Flash A,Flash B,FMC总线,QSPI和AXI SRAM。另外AHB3也是由A**线分支出来的,然后再由AHB3分支出APB3总线。
. I  _. r+ R2 x& O. b1 ]3 @! Q5 Z: C  a8 t- B) x$ ~4 J0 d  L  o
% I9 u2 d4 x$ g" m0 f* {2 B
D2 Domain5 M; G0 ]( Y) `+ n: J

% h8 q% I( l$ M  h5 N

' a. i7 x9 n$ b. ^9 PD2域的各个外设是挂在32位AHB总线组成10*9的矩阵上。
7 `9 N" Q* k& G
+ M2 K. ~5 d1 o9 ^

$ W3 @# |$ Q+ D6 h! W10个从接口/ {5 q; N9 q- P* h
外接的主控是D1-to-D2 AHB 总线,AHBP总线,DMA1,DMA2,Ethernet MAC,SDMMC2,USB HS1和USB HS2。$ b8 x) C+ ]) o0 r4 x2 q- F

& ~/ T8 M6 }+ T" _) k
, o% e- _0 q+ [0 G3 V
9个主接口0 w7 J4 ?! q; L1 b
外接的从设备是SRAM1,SRMA2,SRAM3,AHB1,AHB2,APB2,APB3,D2-to-D1 AHB总线和D2-to-D3 AHB总线。
3 _1 A: E$ h! g, O" A
9 l, h2 F& J# B/ p* M' C
1 k* r7 g- w$ k; I7 _$ \
D3 Domain7 m6 W; E% }; B8 l+ ^$ Z" i
( x9 z; @9 {& Z5 y
* \3 ^* K0 v. H
D3域的各个外设是挂在32位AHB总线组成3*2的矩阵上。
2 `1 a% J- ~1 s$ v" y: v8 {7 d/ W3 D- O; o) u
1 }+ u2 I' n# S3 f5 Q
3个从接口: V+ @' h" Z% d+ ~: o( O8 g: [
外接的主控D1-to-D3 AHB总线,D2-to-D3 AHB总线和BDMA。) S7 ^; [' ~) G/ u4 F2 Q

7 P1 D' z2 R  u' h6 G0 P2 `

) K7 t9 B- O; A* w) c7 v2个主接口
5 ], s! J( t7 |4 f  c) `: \  G, B) z外接的从设备是AHB4,SRAM4和Bckp SRAM。另外AHB4也是这个总线矩阵分支出来的,然后再由AHB4分支出APB4总线。4 Q* v; z$ U8 Z! g$ ]& {! o* \
+ A4 O" E$ m$ U( R, f
这三个域之间也是有互联的,可以是:
6 e- l5 |7 S+ |0 n/ g( \6 Z/ x7 o) w
( e+ r6 k# C1 k5 g
D1域到D2域的D1-to-D2 AHB bus0 k# f- {- z: f
允许D1域中的主接口外设访问D2域里面的从接口外设。比如D1域里面的DMA2D访问D2域里面的SRAM1。! A/ B4 S4 \! a
: {& s7 N! i) O1 M& r! Z# @
; k  b8 s0 q7 [5 C0 U
D2域到D1域的D2-to-D1 AHB bus
+ ^/ i2 n, t- _  ]' c允许D2域中的主接口外设访问D1域里面的从接口外设。比如D2域里面的DMA2访问D1域里面的AXI SRAM。- M% c' g$ d( u

# P& J7 `9 e$ h
2 }+ i" x4 |' |9 [  [. h2 Y% b
D1域到D3域的D1-to-D3 AHB bus
# |# N4 b& R$ q2 C1 W允许D1域中的主接口外设访问D3域里面的从接口外设。比如D1域里面的DMA2D访问D3域里面的SRAM4。
* ]; v! S; c: Z1 h5 u* K0 U
& q+ Y& @5 @) g' V, N

% w# G: [2 G& W& E& K3 [# V4 tD2域到D3域的D2-to-D3 AHB bus。
! Y* I5 K; b4 s9 p允许D1域中的主接口外设访问D2域里面的从接口外设。比如D2域里面的DMA2访问D3域里面的SRAM4。! m' Q  N- I) @1 i
$ w) S: _9 o2 j. `+ x
有了这些知识后,下面我们重点了解A**线矩阵。
3 [2 X$ l1 x* A" ~9 @) E2 Y# A; x, h- z7 e, s( C

" `, I" t; H$ p7 K* [5 T3 v3.5.2      A**线特色
3 H3 V0 n4 m  w  h) qAXI支持高频率、高性能的系统设计:
' y: S/ U# z! |/ u4 C
( q& V& s4 C6 n' ~% a0 F( x* i
& }9 |7 H/ K# F* o
支持高带宽,低延迟设计。
% _" W5 D& Y7 ?, O1 L$ d6 ?提供高频操作,无需复杂的总线桥。
( ~$ w/ l8 N- Y, k满足各种组件的接口需求。
( G. U' i( I; J# h& m适用于具有高初始访问延迟的内存控制器。7 V3 L: Y. Y4 a
为互连架构的实现提供了灵活性。
8 \" r" n4 x2 Z与现有的AHB和APB接口向后兼容。. T- j' \( S  l# B  g

# r) j' h' `2 {! \A**线的关键特性:
4 w7 e' u' ]5 Z7 @: H9 |" _9 c
) H; @% t. ~& n) S

2 b5 A- l8 E9 a2 B7 F' y1 O. V5 M独立的地址、控制和数据线。. L+ A. v! d( E- o% k
支持非字节对齐方式传输。
( E# o% \& j1 u9 d2 j; P基于起始地址的突发传输。" y+ p& C; b/ n  c6 D  I
分开的读和写数据通道,且提供DMA传输。- c6 _  Z- x( }; a0 z
支持发起多个地址。
4 m) u3 b; e6 |5 t/ h1 h支持无序传输。2 g; Z# a2 d6 I  l! J% G
允许添加寄存器,以提供时序收敛。. e+ Q  E5 p$ w- y$ j& q0 {
- V" a% S1 x  ]! s+ g( c

0 ^5 _! v* O2 P2 o6 |A**线  J: I, j: M& h
关于A**线,ARM有一篇古文观止级文档《AXI4_specification》,已经将其放在了论坛:http://www.armbbs.cn/forum.php?mod=viewthread&tid=87340  。
% H# x  f8 m7 |3 U: w, u% k3 M. R/ i3 p0 ^, S6 e
: ]; h# q+ z2 M: B: K" y1 @2 a/ U! l9 w
3.5.3      A**线简介* f; G9 O  P. J' W% Q
通过下面的框图,我们再进一步的认识一下A**线。- y& T/ l6 ?, l: O2 D9 J' D
20.png
通过上面的截图,我们可以看到,A**线有6个从接口ASIBs(AMBA slave interface blocks)和7个主控接口AMIBs(AMBA master interface blocks)。  z: ]/ c6 h7 ^( m. @4 r$ [6 L
5 V4 S' ~7 J- S2 {! z6 w; y

+ U( L1 P- n( E# o2 o针对从接口ASIBs,描述如下:
# K* w& r( z9 P! Q
21.png
重点注意最后一列,STM32H7参考手册里面原始的描述是R/W issuing,这里将其翻译为读/写发起能力。比如输入通道IN5连接的主控DMA2D,支持的读发起能力是2,写发起能力是1。读发起能力是2该如何理解呢?这里的含义是存在两路读信号同时进行(因为AXI接口有一个FIFO的功能,可供同时进行,更深入的认识有待研究),反映到DMA2D的实际应用中,就是DMA2D同时读取前景色和背景色的缓存区做Alpha融合之类的操作。写操作同理,DMA2D的写发起能力仅支持一路。
* n9 }  L2 n5 n3 {
0 r, G1 g! R" s+ |4 ^
7 F. z# Y/ f3 s5 [4 v! Z
针对主控接口AMIBs,描述如下:
& e2 A( ^3 y8 u7 h  ^
22.png
跟上面表格的含义是一样的,同样重点注意最后一列,这里多了一个总接收能力(Total acceptance),也就是读发起能力和写发起能力同时执行的情况。7 G4 c7 Z7 Q7 w# g' U5 t* J+ _4 o
% V% s4 O* L/ }* E; S7 l
3.5.4      A**线优先级编程  B  T2 W$ F4 M/ C
由于存在多个ASIB从接口访问AMIB主控的问题,这就涉及到谁先谁后等问题。所以A**线矩阵就做了一个基于优先级的仲裁方案。每个ASIB接口支持读通道和写通道分别设置,优先级从0到15。数值越大,优先级越高,默认情况都是优先级0。如果有两个传输同时到达AMIB主控接口,那么优先级高的ASIB接口传输优先处理;如果优先级相同的话,根据LUR方案选择(least recently-used最近最少使用情况)。2 Z6 j* p! [* z, `6 K# o" A! n) w

, W9 l2 u( O3 x4 i

/ \0 k1 H5 i8 m9 w大家在实际应用中,可以根据实际情况进行设置,一般情况下使用默认值即可。  i/ |. ?: P2 R& [/ e& k) }

) K8 L$ f2 `! R- v" n: n+ S) j" Z
2 ]: P. |3 v, y# w
3.6   STM32H7的总线互联
* B2 f  a& {4 U' N2 H+ gSTM32H7的总线矩阵四通八达,但不是任意Bus Master总线主控端和Bus Slave设备端都可以相互通信的:; g, C3 l0 o. \
23.png
黑色加粗字体是64位总线(ITCM,DTCM,Flash A,Flash,AXI SRAM,FMC等),普通字体是32位总线。
% G+ R  m7 x, g. B1 |* g# k  K$ q3 J' n. S9 M: y

. y! o; i9 e4 x4 p4 g访问通路(每个小方块里面的字符)
+ n3 [" W: a/ M3 _
& N$ a: B( Y4 K; Z
& ~" r5 |; o. \& `4 X, ?, ~
    任何有数字的表示有访问通路。
7 E) J/ R: I8 O  }! ]4 N/ |4 Q: j% U/ }. z# l; r
) u$ O# I# b" E5 d1 \
    短横杠“-”表示不可访问。  f! M2 \- t, q% J3 L  ~

8 S; G* \( m. L) U6 b
3 X. E3 E8 @& \
    有灰色阴影的表示有实用价值的访问通路。3 `" S- E+ }! i4 `5 E) D

6 z/ m5 d# R& r* P

6 f$ I! l3 H9 n表格中具体数值所代表的含义
* v: Z* b( \7 ^! d; O- c4 R$ i$ w: e/ G0 z* Z
  J8 ^0 b4 {7 h$ r$ o
    D=direct  s. b$ |. Y. f# y$ t  H/ t6 i
! J8 r" Q8 V# l7 W- r0 ]* ~2 b; I
" E, c) u$ f: j- c6 o
    1=via AXI bus matrix
& T% q8 H. }/ ?4 t$ z/ U1 S3 g: [$ h0 [" A' V7 H
. c7 h7 J. t* y. T9 ~$ ?8 O0 M0 P
    2=via AHB bus matrix in D21 b$ O. \) `; e; }3 L& S2 d9 r

, j) D% P( H- p0 s
+ D& [, i0 [: y9 ~# W! N# D
    3=via AHB bus matrix in D3
& f/ M7 M1 V8 s( e+ j* S* G9 C0 I4 n& q$ E

0 o* n/ T4 h$ `6 L3 i    4=via AHB/APB bridge in D1
0 O& ], I6 y9 J' B9 D; D8 l
. l' S+ L9 g* F
0 y% U3 i7 f8 Y
    5=via AHB/APB bridge in D24 @- \* `5 g, J7 @
7 R! a: f! _* c9 b

+ B8 d. b* @& L4 ~* s) B    6=via AHB/APB bridge in D3, u+ W& b; `7 P0 T1 h
2 S, O3 Y2 O( V- z

& B; D$ a2 l2 d" Q7 ]; u    7=via AHBS bus of Cortex-M70 r, F9 c; ?- t! J, K1 y

' o1 H" M  H# S+ D  i% o& Y8 n2 a" R

- O* C- s/ i0 b* {" U" ]4 \    多个数值组合 = 互连路径以数字的顺序经过多个矩阵或/和桥。1 t# T- h( T/ t7 r
! Q8 f: c1 u! B4 k& Q" \
& q8 `% d* {+ x6 d3 H2 B# C: a
总线访问类型. Z4 P  j8 Y8 h3 D# K& j* f& [

7 q' `2 Q5 |' U9 ?# W# w2 T5 K! f! ~
2 h  O% y8 p+ h% g
普通字体表示32位总线。
- Q- `4 p: h9 }! S% p9 _" C/ b0 C, D# E8 Y8 g0 p5 j8 E: k
: A  B3 e; Q( @( T, a
斜体表示32位总线主机端/ 64位总线从机端。
3 t: Y" j/ q/ E, i0 _/ j  H
- @8 V, Q: ^" ~

6 v. D% h5 }$ N$ ?粗体表示64位总线。  [, u0 v- Q; V7 ?

9 \1 I" l* v, d; w, G

0 E- W4 B4 x# y' y当前要对这个图有个了解,后面章节讲解各个外设的时候要用到,比如DTCM和ITCM不支持DMA1,DMA2和BDMA,仅支持MDMA。
, k) Q3 y$ N& F3 n% _/ N6 |% Y& z# p$ T# B: ~, q6 x3 g) a

4 M8 ~* |' @$ ]( F! E# P3.7   STM32H7的FLASH
" d9 N7 m9 M& l8 ]7 `3 v首次学习STM32H7,要掌握以下几点认识即可:) u6 F4 l' I7 Z

9 k# a: t' W1 @( |

2 ~" d4 _$ B" |- n3 y1、双BANK,每个BANK的带宽都是64bits,如下图所示:
- K6 _; R, ~5 I5 ?
24.png
2、H7中Flash的延迟和主频关系。
. M6 ^7 h5 N( A  s5 l
5 {5 b( u3 W2 J3 b+ [
+ g$ e2 D* c% Z
H7中已经没有F1和F4系列中的ART Chrome加速,通过H7中的Cache加速即可。具体延迟数值和主频关系如下:! b8 }5 l6 b' z# d6 [' _+ n% Q
25.png
对于上面的表格,大家可以看到,当延迟等待设置为0的时候,即无等待,单周期访问,速度可以做到70MHz。增加1个Flash周期后,访问速度可以做到140MHz。当增加到3个或4个Flash周期后,最高速度可以做到225MHz。
. r7 z. Z; F& Z2 |: D% s8 A" E+ i$ X* _  F

# V7 x1 `* o. t4 V" g/ F! f7 J& T3、Flash编程操作(写)最好以256bits为单位进行,应用中也可以小于256bits,但是容易造成ECC校验出问题,所以不推荐。Flash读操作支持64bits,32bits,16bits和8bits。) g  v& D- D  R
8 A5 Q3 V+ {6 \3 r4 H

& R3 L8 |' A/ G% J4、Flash支持ECC校验,每256bits配10bit的ECC位,可以检测到1个bit并纠正或者检测2个bit。随着芯片的制造工艺水平越高,带电粒子能产生的位翻转就越多,此时的ECC是必须要有的,一般可以纠正1-2个bit。安全等级高的Flash类存储器和RAM类都是必须要带ECC的。! g. f! c' H  I4 C
, r/ A& K, K3 \1 w. Y
ECC相关知识$ g1 K% _( m- D" J9 }

; O3 ]! r" C$ R5 e
7 ?4 }" ]$ L: P+ N: h
3.8   STM32H7的RAM6 t6 I. i; |3 V' X: {- z) D
(注,学习本小节,优先回顾本章节3.5.1小节的框图,另外H7的RAM区也是支持硬件ECC的)
4 R7 |1 O, _( B+ E" r0 C. a: ^1 X6 P( D2 i

# H9 t3 j8 F/ L4 YSTM32H7的RAM区分为好几个部分,下面分别进行说明:9 T8 ^; h$ m! h7 C6 T
$ T# I$ y7 D# }. Y! [! X
3 h, X: @: e( x5 s) |9 B. k7 g
TCM区
8 X9 f6 e# j$ m* S7 U+ r9 w# Z7 b4 h7 X% X$ G/ F& E' K& w

, V5 [! t4 R: X+ LTCM : Tightly-Coupled Memory 紧密耦合内存 。ITCM用于运行指令,也就是程序代码,DTCM用于数据存取,特点是跟内核速度一样,而片上RAM的速度基本都达不到这个速度,所以有降频处理。
4 S8 a2 K: ~& N+ h) F, n6 ~
, Y" a$ I: ~4 N" A* R& G

( N7 Q1 D/ [2 S/ N速度:400MHz。
$ N+ O  K$ S& k+ W' b
+ i. I( [! i! |6 Z- ?

5 i7 s4 h$ V5 L6 QDTCM地址:0x2000 0000,大小128KB。
- K) a. A) X, w" o4 b/ C
7 h) g2 m; D* ]3 m+ {% [& s

& m# e( T7 g$ Q: x- n6 G& sITCM地址:0x0000 0000,大小64KB。
1 U: p6 ?& V: _6 W+ r3 w& P# t1 w* w4 S% u+ C

( D- M- o/ N, d- [1 H) g1 o. B8 z AXI SRAM区' n6 p# q2 q! A3 c/ b* [9 R3 I
3 _4 a1 v! X8 i% u+ _1 v# D

+ J' f8 a5 Z: M6 o位于D1域,数据带宽是64bit,挂在A**线上。除了D3域中的BDMB主控不能访问,其它都可以访问此RAM区。
+ `4 N0 h- h4 ?; m" T/ l0 G1 Z' i" k, M/ ?) q

2 ?, X  d! W5 }  i) M速度:200MHz。
4 |3 D- W- N0 C" s. Y: L" J# i4 x8 f$ L
: Y0 d# P" U" `/ S; S
地址:0x2400 0000,大小512KB。
' e% c( T8 Z' l! ^2 U7 X% G9 s8 c( U2 g3 [' y+ c5 Y, q, m
3 w$ z  c& d# X3 k9 D0 P+ q3 c  G4 J
用途:用途不限,可以用于用户应用数据存储或者LCD显存。
& d8 H: S; x* v: d/ c
# O( \% `# u0 H1 ^$ {
9 o0 y4 Z8 {4 Z6 Y- @: t+ H
SRAM1,SRAM2和SRAM3区
( N+ w1 C4 A0 |0 M1 t; Q7 @) ?0 e, Y  f( \+ V
9 Y) k4 E) L, f- U# a7 u: b0 C9 z
位于D2域,数据带宽是32bit,挂在AHB总线上。除了D3域中的BDMB主控不能访问这三块SRAM,其它都可以访问这几个RAM区。+ H0 Z( j' q- @  u( M1 a* ^6 H
" z- @- _1 T7 o/ z( W* H  ~- ~

# [5 a. `( t8 N# [速度:200MHz。
: J, |( t: D3 D  p# Q, L4 A9 F
" r% A" I' s( k% B! Z
! T! Z' L, v' @' n# p- Z
SRAM1:地址0x3000 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以当D1域断电后用于运行程序代码。, G8 @7 u% p* Z5 \# `2 A

5 P8 t4 W9 L2 n+ m& d3 S
8 z' U  M9 ~' P% b
SRAM2:地址0x3002 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以用于用户数据存取。
4 T& z. |: }9 {+ m& {" N+ x$ l; [% t$ J" o/ }' J4 e% B' ]

) K8 X! }$ `& B2 oSRAM3:地址0x3004 0000,大小32KB,用途不限,主要用于以太网和USB的缓冲。- R6 e- _1 }) o4 X3 X9 ]
) J  V9 X* y) D" b" k

& L5 K8 M8 c0 b" e, r SRAM4区& A+ [0 Y6 B3 Q% s+ A7 H: f
) P8 T; r4 r/ Z$ i3 I

; s0 B, b. z$ I位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访这块SRAM区。( x) C; r+ d, j

+ X: E/ R* J3 a* c

9 X2 e6 x$ I) ^1 `# V/ M2 m速度:200MHz。+ }! U' Z/ s) h6 }& L& J/ H& v
  |0 J/ q, B( y

4 R# g3 l% M) r1 O* T& [) p2 B& l地址:0x3800 0000,大小64KB。4 F5 b) {* `% G2 e, F
+ d" y( o7 |' l$ g; z
/ N" g; i5 j( ~1 Z- i
用途:用途不限,可以用于D3域中的DMA缓冲,也可以当D1和D2域进入DStandby待机方式后,继续保存用户数据。% h" P  Y/ t- g8 Q

8 C- x3 h/ \6 X" }" _

' g# [/ N1 r" o* D6 e6 C* \2 K6 } Backup SRAM区
) ]) N: A; R, D7 J0 e
' q2 K' q# T4 U6 R, y' X: O2 p
9 R, `; a, ]6 ~) f$ [# ]
备份RAM区,位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访问这块SRAM区。4 B' @5 {: f2 U3 q) `& t- N/ G; P

6 [# }( E; ?: J; a6 n/ g3 D- f3 a6 _
6 O' p/ W! J- A2 D; V
速度:200MHz。* l+ `: k1 Y- O9 I: S
: D* ~% D; A$ z- R

5 v% n+ ^1 x$ [- V% O& d7 ?: T地址:0x3880 0000,大小4KB。
, J+ }" @! y9 `4 Q: k8 S" u
/ A; c& r! Q6 X3 B

+ r9 I; s. ]! {8 H! Y. W用途:用途不限,主要用于系统进入低功耗模式后,继续保存数据(Vbat引脚外接电池)。# e. }' d9 Q, s9 a
( b- p! X$ M' C8 `

$ A# v  ?! S# @" r" q/ U3.9   总结
0 C) i: f! U0 `6 }本章节就为大家讲解这么多,让大家对STM32H7有个整体的认识,后面章节将逐个进行学习。
3 z/ Q, K# N! ^5 ?6 b
5 n# F6 {6 \: R. D! L
4 p3 \2 L7 H& u/ L+ w/ Y0 n+ b8 i4 N9 r
收藏 评论0 发布时间:2021-10-19 10:31

举报

0个回答
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版