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

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

[复制链接]
flyingstar 发布时间:2025-3-26 10:13
本文为大家介绍STM32H7带的ITCM,DTCM,AXI SRAM,SRAM1,SRAM2,SRAM3,SRAM4和备份SRAM的基础知识。( C4 F8 N1 [! H1 H) d" T) Y9 B

- }# r. Q3 `- X![TCM_02.png](http://uphotos.eepw.com.cn/jobs/pics/1741253722489722.png "1741253722489722.png")
0 h+ h5 A) M& b7 ^  p& ^; e- b' S& D. {& Y( P; {
上图可以方便识别总线所外挂的外设,共分为三个域:D1 Domain,D2 Domain和D3 Domain。5 {0 i6 r* J; {7 H
! s6 C7 ?8 Z( D5 ~, m5 I) I  j6 D
1、  ITCM和DTCM1 @" S; H$ ?& w" M$ p
2 ]7 v2 e: ^/ d: {/ k; Q- z
这两个是直连CPU的。
- A% \$ o% j. E$ `7 Z0 b0 C5 U4 G( E$ p4 X. j
2、  D1 Domain3 \2 M+ k+ n9 v# {% G# T
- M2 [1 ^1 k6 j( j
D1域中的各个外设是挂在64位A**线组成6*7的矩阵上。
7 c) \: `8 _( \' q0 V3 O
4 F! V+ Y1 d2 T6个从接口端ASIB1到ASIB6,外接的主控是LTDC,DMA2D,MDMA,SDMMC1,AXIM和D2-to-D1 AHB 总线。
2 j$ x# G6 M3 \4 F
8 Z6 @' M0 l" a# z! ^; N7个主接口端AMIB1到AMIB7,外接的从设备是AHB3总线,Flash A,Flash B,FMC总线,QSPI和AXI SRAM。另外AHB3也是由A**线分支出来的,然后再由AHB3分支出APB3总线。* p, j6 j9 A' U' l- b

1 z. U$ h- J& A4 y* Z% v3 W3、  D2 Domain
8 A; q! o% a9 Q2 Z4 Y6 ^: G6 L5 b4 m/ c" W1 A  G# H# C, p$ R
D2域的各个外设是挂在32位AHB总线组成10*9的矩阵上。8 b5 R/ Z. ~2 U5 M
# d' e  m- }1 v% j& P
10个从接口,外接的主控是D1-to-D2 AHB 总线,AHBP总线,DMA1,DMA2,Ethernet MAC,SDMMC2,USB HS1和USB HS2。5 ]( L: Z: t9 E2 R/ j

# Z" G: p# Q6 v: V5 ?9个主接口,外接的从设备是SRAM1,SRMA2,SRAM3,AHB1,AHB2,APB1,APB2,D2-to-D1 AHB总线和D2-to-D3 AHB总线。
/ R( i; [; m: Q: a
  x( E5 O$ x7 Y! C( I* ?0 S4、  D3 Domain
& L* }5 w$ h$ d/ X1 v) |
3 Q; X) h/ ]6 M- E6 bD3域的各个外设是挂在32位AHB总线组成3*2的矩阵上。5 F& o; p. F/ G0 d; h

* k9 l6 ^- [' z# A3个从接口,外接的主控D1-to-D3 AHB总线,D2-to-D3 AHB总线和BDMA。
/ a- A8 s+ s, w+ {+ w7 G$ @* W/ ^: u. z- H; Y$ h  d! `$ Y
2个主接口,外接的从设备是AHB4,SRAM4和Bckp SRAM。另外AHB4也是这个总线矩阵分支出来的,然后再由AHB4分支出APB4总线9 d# v' \% }# l( L  ]; @
1 k3 }. z6 e8 B- g; ]+ K
**各块RAM特性**- `: v3 B) k6 e7 }

; [( C. E* b. V, Y各块RAM的特性对比如下,特别注意他们支持的最大速度和容量大小。* ~  b6 w  G$ `; E: ~( Z

: X2 ~: ~: H5 B5 P! k- ?# I**TCM区**/ S( D* y' F" [1 A8 R

1 H: p& r) m* `0 PTCM : Tightly-Coupled Memory 紧密耦合内存 。ITCM用于运行指令,也就是程序代码,DTCM用于数据存取,特点是跟内核速度一样,而片上RAM的速度基本都达不到这个速度,所以有降频处理。+ x; Y% K. l0 o: N: [& g

$ Q+ E+ ]. Z3 g7 R速度:400MHz。DTCM地址:0x2000 0000,大小128KB。ITCM地址:0x0000 0000,大小64KB。
/ q7 E7 p2 ?6 t5 O+ u  Y$ d; }, j4 V( Y. @1 ?5 R
**AXI SRAM区**
- P3 ^) j9 A: ]
+ F" Z8 D# e" j) B3 F! b位于D1域,数据带宽是64bit,挂在A**线上。除了D3域中的BDMB主控不能访问,其它都可以访问此RAM区。( H) l6 U3 ~7 ]
+ n6 I" a% f& x' y" x0 y
速度:200MHz。地址:0x2400 0000,大小512KB。用途:用途不限,可以用于用户应用数据存储或者LCD显存。- k2 V. A( w0 t
3 M7 I5 x9 R9 f  ]
**SRAM1,SRAM2和SRAM3区**
- i5 ^' r6 \  J! \
* u2 \0 Y* Y8 B$ i% }( r位于D2域,数据带宽是32bit,挂在AHB总线上。除了D3域中的BDMB主控不能访问这三块SRAM,其它都可以访问这几个RAM区。% J! |# {8 ?8 j, \2 Q( y, _
7 t3 q# w, a, o* S9 t% {* F
速度:200MHz。
/ J. f& I6 l8 p: O8 |! J6 J' f( r2 p8 H8 }" Y9 P( X- i6 s9 q7 T3 l
SRAM1:地址0x3000 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以当D1域断电后用于运行程序代码。( C3 K7 Q: }! J  E# h( D# E, Y

0 A6 M. K2 Y0 M# q3 A* MSRAM2:地址0x3002 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以用于用户数据存取。7 g7 ~* t/ T0 w0 S  m

* T: W% }  n4 KSRAM3:地址0x3004 0000,大小32KB,用途不限,主要用于以太网和USB的缓冲。1 S0 N) c# }' X/ X5 e6 w0 V( d

; I( n- h  Y# g1 b$ n% \**SRAM4区**
8 V+ `, m* [; e9 I3 h
7 y5 ?/ k3 N+ @5 H位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访这块SRAM区。0 x- a- h! B  q7 F" X9 k

5 ~# B: _6 I4 u4 t/ ^速度:200MHz。
. s. i0 r5 t  M1 Z
$ R  R+ T8 o( c  _/ x地址:0x3800 0000,大小64KB。1 p1 }  N% I. M0 B  r; _
8 C7 ^5 O! o6 n" N$ w
用途:用途不限,可以用于D3域中的DMA缓冲,也可以当D1和D2域进入DStandby待机方式后,继续保存用户数据。1 D' K! `; h$ H7 T- f3 O9 A

$ S2 i! L" s7 a; f4 w0 c**Backup SRAM区**
3 M4 x7 P$ D  B: w+ y: Q" x* t
$ p; ], P) H7 D+ `6 D备份RAM区,位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访问这块SRAM区。7 f$ D2 r! w" J$ L4 h8 Y

4 K* L$ W8 E$ n# L* n速度:200MHz。
: o( [5 Z& M* e2 C# z# B- d% W5 O6 C: u0 w
地址:0x3880 0000,大小4KB。8 B( V& e* u1 v' K
! F: y, L/ ?. t+ J9 y( Y& r+ M
用途:用途不限,主要用于系统进入低功耗模式后,继续保存数据(Vbat引脚外接电池)。" h. b" D9 b0 l0 \9 t, |: h& d0 r

$ i: a7 A# {+ fRAM的时钟问题
& y& s5 ~4 b0 ~4 ~$ o- o& F( ^  R) U2 E$ `( v
正常情况下,系统上电后,CPU要访问的外设是需要使能对应的时钟位,但是下面这几个,CPU上电即可访问,而且芯片没有对应的寄存器使能位。
4 G& g% |: }; y5 Z0 q+ j  O& \/ _) K) D
( W+ v0 ^4 b" n3 h& d![TCM_03.png](http://uphotos.eepw.com.cn/jobs/pics/1741255389164756.png "1741255389164756.png")
/ E1 F; t$ ^0 m. S0 e) u1 h! \1 z
; O/ v' D! z$ [% Z) a也就是说AXI SRAM,SRAM4,ITCM和DTCM可以在上电后直接使用。而SRAM1,SRAM2,SRAM3是需要使能的,但是实际测试发现,不使能也可以正常使用。不过,建议用到时候开启下时钟,防止意想不到的问题发生。
# _! Z! w! b" [; Y; g- V. {6 x  Z0 `7 @
% ^4 @1 S+ v( }- [**RAM的DMA问题**
: \9 y: B" C8 V5 |7 Q$ g1 T1 D/ n( @
1 `, l" ], s8 Y4 M1 K先看下面的Bus Master总线主控端和Bus Slave设备端的控制互联:
1 P. o$ |) o; u3 D8 U
8 N' G& U% h" u/ c  q![TCM_04.png](http://uphotos.eepw.com.cn/jobs/pics/1741255635967624.png "1741255635967624.png")
' |" t/ `: v$ Q" s# ~) l, v! D
$ j0 t1 m! x4 p& `/ ]8 Q加粗字体是64位总线(ITCM,DTCM,Flash A,Flash,AXI SRAM,FMC等),普通字体是32位总线。! w' I4 X: v& E! I( [" n$ _
访问通路(每个小方块里面的字符)& W/ d3 l2 v( Z
任何有数字的表示有访问通路。/ u# |& b( a& p( S9 h
短横杠“-”表示不可访问。
- N2 Q  L' M, H; j& [! C有灰色阴影的表示有实用价值的访问通路。- \' l4 `8 ^, D
表格中具体数值所代表的含义& i  \3 p' ^2 |5 b& A
D=direct,8 J- @4 s0 m$ A8 l0 u
1=via AXI bus matrix,
# u+ A( Z" K3 ~% s% V9 p2=via AHB bus matrix in D2,
1 Y+ z* L- m  G5 m* e3=via AHB bus matrix in D3,* r& m' `: D" Q" }. a
4=via AHB/APB bridge in D1,+ \: g8 |" M4 W  a% w
5=via AHB/APB bridge in D2,3 I  z7 B4 ]0 f9 j, S, [; }% C+ S
6=via AHB/APB bridge in D3,
! V0 k! P. w  X/ J) n7 D- w7=via AHBS bus of Cortex-M7,7 [( s2 g& G. `% G3 s. J, |

5 P. g0 ]# P" w多个数值组合 = 互连路径以数字的顺序经过多个矩阵或/和桥。9 M3 D0 @" ~; G! Y0 ?' G2 W" j! b

) ?. T( `7 R6 s3 j( K- _9 @9 I总线访问类型
2 ?2 L0 o  O" u/ B9 ?- K
+ l1 |$ O9 l0 y; ?* v- _3 a普通字体表示32位总线。9 p8 c) U- }: t( i

& Z6 `; I, t; {3 m( l6 t斜体表示32位总线主机端/ 64位总线从机端。
/ V- k# ]9 y- c% n# N' j
8 O' P2 [$ N9 x: B" W粗体表示64位总线。
. k; f+ w, T- ^) L" u" D9 T  ~8 j" |  c) G9 I4 F6 [
通过这个总线互联图,要了解到下面三个重要知识点:8 _, V* I, Q: K! }& u( F

7 S! K8 f5 u- {, P+ k: IDTCM和ITCM不支持DMA1,DMA2和BDMA,仅支持MDMA。
$ P* c$ X+ u& _/ r2 _1 g7 V* S8 b; B# z# H+ a. J7 }& H
AXI SRAM,SRAM1,SRAM2,SRAM3不支持BDMA,支持MDMA,DMA1和DMA2。
  E; S* {1 S. K, y
; S4 T+ M8 C8 {, Z6 w. J0 GSRAM4支持所有DMA,即MDMA,DMA1,DMA2和BDMA。- U; X6 h( z; F. j7 L
1741255635967624.png
1741255389164756.png
1741253722489722.png
收藏 评论0 发布时间:2025-3-26 10:13

举报

0个回答

所属标签

相似分享

官网相关资源

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