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

STM32H7的TCM,SRAM等五块内存基础知识

[复制链接]
flyingstar 发布时间:2025-3-26 10:13
本文为大家介绍STM32H7带的ITCM,DTCM,AXI SRAM,SRAM1,SRAM2,SRAM3,SRAM4和备份SRAM的基础知识。- C/ S, p/ k! V( b1 G' P
, O9 q, B: [2 K) s+ e" @, [
![TCM_02.png](http://uphotos.eepw.com.cn/jobs/pics/1741253722489722.png "1741253722489722.png")
& Q, S& y* H, ?' c
) x4 I+ O  F7 T上图可以方便识别总线所外挂的外设,共分为三个域:D1 Domain,D2 Domain和D3 Domain。* [1 p1 U( ]8 g/ d0 @( L, Z+ z0 ?
$ T+ ~) H* U4 ~! u
1、  ITCM和DTCM
0 u0 s6 S2 Y1 A# k, z1 l) R
- x5 l" \  U/ G! H7 n1 l" Z这两个是直连CPU的。, J7 p# N/ I9 v

9 }$ k: h; l( j# e3 b+ ~, [2、  D1 Domain
1 q- Z* q) O) T2 n; m0 C% K0 c1 l+ X/ v9 f
D1域中的各个外设是挂在64位A**线组成6*7的矩阵上。
: T9 }, m' m, j; q5 L. O' p4 n+ P2 W" H3 O; Z, N/ m6 B/ T6 q
6个从接口端ASIB1到ASIB6,外接的主控是LTDC,DMA2D,MDMA,SDMMC1,AXIM和D2-to-D1 AHB 总线。5 V8 r! {8 r' D7 ^  W$ }% n

0 ]4 D& Y2 `0 x! E- ~7个主接口端AMIB1到AMIB7,外接的从设备是AHB3总线,Flash A,Flash B,FMC总线,QSPI和AXI SRAM。另外AHB3也是由A**线分支出来的,然后再由AHB3分支出APB3总线。
( Z# B8 n7 @- @, J
, `0 J9 M" V- F5 b$ j3、  D2 Domain
; [. V& ^0 w  O5 W
& }2 _7 |4 \1 v  eD2域的各个外设是挂在32位AHB总线组成10*9的矩阵上。' d4 ]4 P; a% A( D- d. n
, M: w! R, t% d) j* R+ N' y$ E
10个从接口,外接的主控是D1-to-D2 AHB 总线,AHBP总线,DMA1,DMA2,Ethernet MAC,SDMMC2,USB HS1和USB HS2。
5 G% u* \% D: F* z
  T: D" r% j! B9个主接口,外接的从设备是SRAM1,SRMA2,SRAM3,AHB1,AHB2,APB1,APB2,D2-to-D1 AHB总线和D2-to-D3 AHB总线。5 e8 d7 g4 O8 _4 b% b1 s" }$ ]
( U$ p( _9 `1 t7 k/ {
4、  D3 Domain- A" {. W1 S( T. o7 X
, ]- t" z$ g: Y0 `1 _; y' h- n
D3域的各个外设是挂在32位AHB总线组成3*2的矩阵上。
5 h7 P. [# U5 |4 e' V1 v0 n0 o5 {! t8 _! O( Q! t
3个从接口,外接的主控D1-to-D3 AHB总线,D2-to-D3 AHB总线和BDMA。- N  L. }# w2 L
3 i0 g1 L% ]7 V4 L
2个主接口,外接的从设备是AHB4,SRAM4和Bckp SRAM。另外AHB4也是这个总线矩阵分支出来的,然后再由AHB4分支出APB4总线+ G* J1 S5 b* c& }! S3 ~6 Z: J) \

! P6 W1 Q+ @3 L2 u**各块RAM特性**$ D' S# K" h3 W! F* A

# t9 O2 ^. W) k1 e3 {* S/ @各块RAM的特性对比如下,特别注意他们支持的最大速度和容量大小。
: H$ D# `+ x$ |" F; K; O- b  i) d7 n
- O" i/ H# ~  o' }# h**TCM区**3 p; Z. q' V/ f6 K& o) }
, C. u8 F3 Y) |  g$ f, V
TCM : Tightly-Coupled Memory 紧密耦合内存 。ITCM用于运行指令,也就是程序代码,DTCM用于数据存取,特点是跟内核速度一样,而片上RAM的速度基本都达不到这个速度,所以有降频处理。
/ z6 i0 y7 X' Z% J" \4 S- R2 s% `/ R3 E# \% y
速度:400MHz。DTCM地址:0x2000 0000,大小128KB。ITCM地址:0x0000 0000,大小64KB。3 A5 T9 J1 A; I

- v8 E! @3 c- w- p; C- m- j**AXI SRAM区**
& f$ n; ]" K# E+ a3 Y# S
+ E7 R7 {- V2 {1 V3 }( T% T位于D1域,数据带宽是64bit,挂在A**线上。除了D3域中的BDMB主控不能访问,其它都可以访问此RAM区。
5 R1 _6 w- @3 E+ ^
  q% ?2 c; B7 t* x+ b速度:200MHz。地址:0x2400 0000,大小512KB。用途:用途不限,可以用于用户应用数据存储或者LCD显存。- |, M+ A. u. m/ _8 ~! v# Y

! m, k% B" I6 _* s8 c) M**SRAM1,SRAM2和SRAM3区**3 N% L2 f# j+ L" N" u7 H) q

: R; @: w* d  p2 G* G5 s" y4 }9 J9 s位于D2域,数据带宽是32bit,挂在AHB总线上。除了D3域中的BDMB主控不能访问这三块SRAM,其它都可以访问这几个RAM区。. p  _/ y* b+ @, f
$ e  K4 e' ^& p1 m
速度:200MHz。& K; B! f6 x1 ]) P8 e( J

$ U" [3 U8 r+ u1 p' u, x, b- ~SRAM1:地址0x3000 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以当D1域断电后用于运行程序代码。
- c3 D" z; t* t0 Y, H) Z7 K# q# P8 m& s8 [7 ]' R
SRAM2:地址0x3002 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以用于用户数据存取。
6 A8 Y! m/ K# ^" c7 ~( u4 k$ ^: n- u& ?  M: _  A" g. @+ n4 R
SRAM3:地址0x3004 0000,大小32KB,用途不限,主要用于以太网和USB的缓冲。
. x& B* e8 _: O( q* `9 E
1 U$ s& e8 o& t  K; x**SRAM4区**2 v- X* u3 c' L3 G! w/ |
8 }: s1 v  W# {9 V! G" o; f
位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访这块SRAM区。
# D7 _$ A* F: b" n/ |7 Q; x/ i+ s  u
速度:200MHz。
" k% m6 ^5 ^& z
8 ?5 a6 n. i, b地址:0x3800 0000,大小64KB。
" @( t: ?( i- z' \" h% P$ D0 g
! d" V# ?& h8 L) K+ i  L用途:用途不限,可以用于D3域中的DMA缓冲,也可以当D1和D2域进入DStandby待机方式后,继续保存用户数据。
; {; I* k4 s/ T) H1 V1 n$ V" H/ w! ^- K  |; q4 \% ^( |
**Backup SRAM区**
# f  |3 j8 k/ U, t8 H
0 c& ]# ]$ V: E% j( J备份RAM区,位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访问这块SRAM区。$ V! S4 l; q( ?( h" P( T* @

/ v" V5 r1 q- _6 b( R+ {速度:200MHz。
& q( k2 f& Q; D) H( I6 d3 I4 O8 Y7 ]  p' v! h, O
地址:0x3880 0000,大小4KB。" s( r+ |1 _' b! b, B
6 k) V  `1 l6 b# h: c# k& M* ]
用途:用途不限,主要用于系统进入低功耗模式后,继续保存数据(Vbat引脚外接电池)。- |; |4 c, k0 L! P* s6 ~( M7 Z
) v1 Q) T! a* k* @* l
RAM的时钟问题! p7 ]8 R# K, [* l

5 {) E1 ?  L1 q* Y1 e正常情况下,系统上电后,CPU要访问的外设是需要使能对应的时钟位,但是下面这几个,CPU上电即可访问,而且芯片没有对应的寄存器使能位。
8 h" B0 X1 ?9 H& W( a6 G$ D* l- M' k
![TCM_03.png](http://uphotos.eepw.com.cn/jobs/pics/1741255389164756.png "1741255389164756.png")7 V# t# L( G! h6 v3 _$ V0 ^6 t3 w
' D% ]7 x3 F# v, |) ^& c- Y- U
也就是说AXI SRAM,SRAM4,ITCM和DTCM可以在上电后直接使用。而SRAM1,SRAM2,SRAM3是需要使能的,但是实际测试发现,不使能也可以正常使用。不过,建议用到时候开启下时钟,防止意想不到的问题发生。
! Z4 j% O- b; i$ l
- l$ s& c6 I+ e/ x8 v( l**RAM的DMA问题**
$ l& w8 A+ m7 F* w+ ]$ D: ?2 Q' A& n* n) r) B. s6 k9 N. s
先看下面的Bus Master总线主控端和Bus Slave设备端的控制互联:
8 ]$ I. n/ {9 k& [  v, T9 g5 s% E$ o' f( U# }. \5 {2 n: t
![TCM_04.png](http://uphotos.eepw.com.cn/jobs/pics/1741255635967624.png "1741255635967624.png")
! W1 t* x1 d' u# o! ?. ]8 g3 ?4 l7 u& E
加粗字体是64位总线(ITCM,DTCM,Flash A,Flash,AXI SRAM,FMC等),普通字体是32位总线。
. w" b9 }2 i0 T: l访问通路(每个小方块里面的字符)8 U) V/ c" |0 z, b0 [) h
任何有数字的表示有访问通路。# s6 |, Q3 G2 V6 t. G1 a* C& _
短横杠“-”表示不可访问。! B. O1 c) B2 w" _
有灰色阴影的表示有实用价值的访问通路。
* f( `9 |, o9 p9 X' w表格中具体数值所代表的含义$ p; S& |# u! K- V/ ^2 H4 s
D=direct,% t. v/ C% }  C! z; o
1=via AXI bus matrix,/ d- t9 Y' a$ O6 }7 |$ J
2=via AHB bus matrix in D2,
3 Z0 W4 ?! C) \+ n1 N/ U3=via AHB bus matrix in D3,2 {) @! M! `) O( q7 i) o' i
4=via AHB/APB bridge in D1,% b8 R( F6 b* U. ?
5=via AHB/APB bridge in D2,' {, F0 e. @2 c) [
6=via AHB/APB bridge in D3,
. ~2 Y% e: V- k9 f7=via AHBS bus of Cortex-M7,
+ J% J( k$ R4 S) M) @: s+ Q* G) i5 C9 R1 A9 Y6 J6 U. l
多个数值组合 = 互连路径以数字的顺序经过多个矩阵或/和桥。
; J6 c- O! n' S5 }! g: r
& I: r9 l0 ^) `. V5 t6 m总线访问类型
' T5 g( E7 M1 }1 Q7 u0 b9 Q/ w0 S. ~
普通字体表示32位总线。% }/ X, _; d  C

& m" G  f  c! G2 p- y* [1 I! K斜体表示32位总线主机端/ 64位总线从机端。
% K7 Y- O6 K0 R2 J' B, @3 S4 a% s5 q; R
粗体表示64位总线。
' y( E5 O/ s3 c9 d: |7 A1 a- B3 `0 p. o, k) V
通过这个总线互联图,要了解到下面三个重要知识点:3 G5 p; s4 l9 y* v( C+ j

+ C9 |! W1 h# F* M  H8 z5 c. u! lDTCM和ITCM不支持DMA1,DMA2和BDMA,仅支持MDMA。
; C$ y/ d" q0 Q& c! k) D. O) z, p* e2 [+ w
AXI SRAM,SRAM1,SRAM2,SRAM3不支持BDMA,支持MDMA,DMA1和DMA2。
) j* ]* ^0 s2 C- d7 a5 k! A" V( n& J
SRAM4支持所有DMA,即MDMA,DMA1,DMA2和BDMA。
. W* J/ W# I& ~4 w0 d* i
1741255635967624.png
1741255389164756.png
1741253722489722.png
赞 收藏 评论0 发布时间:2025-3-26 10:13

举报

0个回答

所属标签

相似技术帖

官网相关资源

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