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

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

[复制链接]
flyingstar 发布时间:2025-3-26 10:13
本文为大家介绍STM32H7带的ITCM,DTCM,AXI SRAM,SRAM1,SRAM2,SRAM3,SRAM4和备份SRAM的基础知识。) M+ i  l! l0 z5 _# x: ^

/ R/ O5 N1 A! A1 F" l# e![TCM_02.png](http://uphotos.eepw.com.cn/jobs/pics/1741253722489722.png "1741253722489722.png")
, _3 D+ f5 R7 Z. H, t
3 V' `; V2 _& v上图可以方便识别总线所外挂的外设,共分为三个域:D1 Domain,D2 Domain和D3 Domain。$ H& T- C2 N0 j8 \  \" ~
3 Q# t3 c4 k+ g) l$ @2 v. `
1、  ITCM和DTCM6 p9 l8 @& v- ]: e3 h+ b

8 ?. m3 l& \/ t# M这两个是直连CPU的。& Y1 f* Y2 ^: ?4 Q/ m, s' w
: m3 U8 y6 S2 S: c+ o
2、  D1 Domain
- j& Q& D+ F' ~2 S' s$ b* m- X+ W2 }
' I4 J4 b" x% |0 pD1域中的各个外设是挂在64位A**线组成6*7的矩阵上。
) u6 ?; k1 x) t9 r2 O7 B$ Z$ k5 J3 o: p! C
6个从接口端ASIB1到ASIB6,外接的主控是LTDC,DMA2D,MDMA,SDMMC1,AXIM和D2-to-D1 AHB 总线。) L, S+ I) R! [  ?+ m) U+ J% d3 s
1 ^: P' U; S; `! l( z+ l, W! e
7个主接口端AMIB1到AMIB7,外接的从设备是AHB3总线,Flash A,Flash B,FMC总线,QSPI和AXI SRAM。另外AHB3也是由A**线分支出来的,然后再由AHB3分支出APB3总线。
; O$ ?: K2 U) C4 Z' t+ i  ?2 P! S2 @+ P9 e
3、  D2 Domain
# |* d2 {8 G- n- ~
( l6 ?' r: A5 C" a  N8 }" [5 _D2域的各个外设是挂在32位AHB总线组成10*9的矩阵上。- j5 g1 C/ Z3 T' C5 ]9 p
7 Z: R* f  s( Y
10个从接口,外接的主控是D1-to-D2 AHB 总线,AHBP总线,DMA1,DMA2,Ethernet MAC,SDMMC2,USB HS1和USB HS2。: ^0 \: d. w4 m$ V/ s

/ o, C0 H2 @3 ~) y2 T4 P9个主接口,外接的从设备是SRAM1,SRMA2,SRAM3,AHB1,AHB2,APB1,APB2,D2-to-D1 AHB总线和D2-to-D3 AHB总线。6 {9 t. G& J( w
" ^- O  i4 r& F5 g6 r
4、  D3 Domain
" p2 P7 D* e! z9 H( v, r5 B, L5 ?. ?# n$ i4 d- ~9 q
D3域的各个外设是挂在32位AHB总线组成3*2的矩阵上。
. X$ H9 H2 W1 |1 Z- g% H9 g  z- r7 n3 m4 q. L
3个从接口,外接的主控D1-to-D3 AHB总线,D2-to-D3 AHB总线和BDMA。# Q, k1 P6 R% Z, e9 R
% X( `! q( G) r  K* ?: s
2个主接口,外接的从设备是AHB4,SRAM4和Bckp SRAM。另外AHB4也是这个总线矩阵分支出来的,然后再由AHB4分支出APB4总线
! Q& ]  S6 J2 u2 g  i& U9 y2 }# c9 y( W; ~- r, v
**各块RAM特性**( q* Z# R0 Y% w: X
8 o+ p& s5 N! J  A! r7 X
各块RAM的特性对比如下,特别注意他们支持的最大速度和容量大小。" n4 z% H  n# r0 y/ D5 q# `, y

" e8 M" X/ O4 J& b3 s**TCM区**
: @7 j8 o' l6 A2 u( e2 B' O' P4 M! O7 T* ^
TCM : Tightly-Coupled Memory 紧密耦合内存 。ITCM用于运行指令,也就是程序代码,DTCM用于数据存取,特点是跟内核速度一样,而片上RAM的速度基本都达不到这个速度,所以有降频处理。9 X0 T, `6 @# U5 U+ I( B/ p

, Q% v) h0 w. N速度:400MHz。DTCM地址:0x2000 0000,大小128KB。ITCM地址:0x0000 0000,大小64KB。7 C9 R  n- G" H

5 A& U: v: x/ ^**AXI SRAM区**
9 C$ y/ s, `/ e2 Q$ X
4 i: c7 M, b. M& W% m; Q0 @位于D1域,数据带宽是64bit,挂在A**线上。除了D3域中的BDMB主控不能访问,其它都可以访问此RAM区。2 \6 L' X9 }1 ?" _2 C! {

" y& q; L* E( p* X: z速度:200MHz。地址:0x2400 0000,大小512KB。用途:用途不限,可以用于用户应用数据存储或者LCD显存。7 a5 V. F% y$ L7 _9 a7 m

/ u& S6 O" O, W' ~2 c**SRAM1,SRAM2和SRAM3区**# B9 H/ G3 v+ M2 I- R; _$ G1 h
  q/ B. ]8 l0 f  J
位于D2域,数据带宽是32bit,挂在AHB总线上。除了D3域中的BDMB主控不能访问这三块SRAM,其它都可以访问这几个RAM区。
9 o9 K' i7 S: w# v9 M, @6 ]* D# @! `; r' m. y) X
速度:200MHz。1 m# `/ x2 _, O; @* e5 u6 b' b
9 Q2 F" Q1 U5 T8 h# h5 C* U: t/ V
SRAM1:地址0x3000 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以当D1域断电后用于运行程序代码。
. i  Q- T1 w8 [
$ p4 m2 d1 m+ Z- h' a# M  MSRAM2:地址0x3002 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以用于用户数据存取。
' ~& u7 e% q5 A) i; L( Q% S$ x8 ^, t: u
SRAM3:地址0x3004 0000,大小32KB,用途不限,主要用于以太网和USB的缓冲。
) x3 |3 f4 Q$ i1 ^( P' i: z. m' y6 |) g/ Y$ s3 ?# ]
**SRAM4区**
# l% b2 _: b: C3 _3 \# m( P4 c3 q  S' Y1 l5 }3 A% g
位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访这块SRAM区。9 b6 G( ]4 D% G/ M$ F$ [6 l

: y' |" h( p% D; {. [  V6 M2 y速度:200MHz。( I0 m; @8 }2 b8 C( Q3 G; X" p
6 Q  e, W$ N/ \4 {2 o9 [- [
地址:0x3800 0000,大小64KB。
, W; K/ w( P- e6 v
7 \+ d8 ~* c' u; ]1 J( |) m1 H2 z: ?用途:用途不限,可以用于D3域中的DMA缓冲,也可以当D1和D2域进入DStandby待机方式后,继续保存用户数据。
( ^: x& D6 P( e5 Z* y% l8 e0 w7 d" Q3 V3 L
**Backup SRAM区**, B+ P3 r/ @+ a
. W& C! i) \3 g- |
备份RAM区,位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访问这块SRAM区。4 b. @' [+ r6 ~1 d/ q# F: U& P

' T- m1 f& H- G& w: ?* k* R- n9 k速度:200MHz。
1 T9 I( u6 ~/ u3 w
1 h5 L0 e3 d0 K1 J# N3 {) C# b$ E/ e地址:0x3880 0000,大小4KB。7 N# f) q5 a0 ?7 F  N4 B1 u
5 \2 `, f5 g7 Y6 c
用途:用途不限,主要用于系统进入低功耗模式后,继续保存数据(Vbat引脚外接电池)。
) c# O8 ^1 E' D. d, H) q/ P; c
6 x4 w" v) v( [, jRAM的时钟问题" _. {) {3 ^/ ]: w( E6 [
: x$ _; y  Y3 d
正常情况下,系统上电后,CPU要访问的外设是需要使能对应的时钟位,但是下面这几个,CPU上电即可访问,而且芯片没有对应的寄存器使能位。
! z% {6 d5 z. }8 p4 D- a3 n( S9 U4 {0 b5 Z8 }
![TCM_03.png](http://uphotos.eepw.com.cn/jobs/pics/1741255389164756.png "1741255389164756.png")
' T0 E4 N$ x# k8 T! P7 u: {4 G
1 Z! Y. r4 Z$ j, t  h9 r. P也就是说AXI SRAM,SRAM4,ITCM和DTCM可以在上电后直接使用。而SRAM1,SRAM2,SRAM3是需要使能的,但是实际测试发现,不使能也可以正常使用。不过,建议用到时候开启下时钟,防止意想不到的问题发生。
; k- _5 }, \: l0 H
# M: G# L/ a1 {0 p**RAM的DMA问题**  z* q) h2 h2 s" k( j8 m

; j5 ~- Q- ~& j9 F$ b5 _0 c' ?先看下面的Bus Master总线主控端和Bus Slave设备端的控制互联:
2 }! v* T* \( z2 r9 ~+ c, x# T. C, d3 a' u
![TCM_04.png](http://uphotos.eepw.com.cn/jobs/pics/1741255635967624.png "1741255635967624.png")/ P0 X: Y" Y0 [% {/ p8 y

. b1 D$ k( {1 ^$ e% q* n$ s' l' {加粗字体是64位总线(ITCM,DTCM,Flash A,Flash,AXI SRAM,FMC等),普通字体是32位总线。% w7 i6 s2 f& T' u+ Y0 t9 n
访问通路(每个小方块里面的字符)9 L, k% R' q0 s6 X6 E3 |
任何有数字的表示有访问通路。
1 Y) ?' C: U+ E+ {2 E& ~6 o" ?短横杠“-”表示不可访问。! q6 p( d) f% ]) P
有灰色阴影的表示有实用价值的访问通路。& W6 H6 R, J* c6 [! l. w" m
表格中具体数值所代表的含义* A3 L) Q# h7 l& [% J, K9 b2 f9 x
D=direct,0 h- N- ?7 H( k2 W- W5 Z
1=via AXI bus matrix,
" A3 N8 _+ ~. p! ?7 Y2=via AHB bus matrix in D2,
, j1 B7 f1 ^) v1 r3=via AHB bus matrix in D3,% A: o$ e; C+ ?: q2 \
4=via AHB/APB bridge in D1,
8 z" L2 I" K5 ?) x7 w9 z5=via AHB/APB bridge in D2,/ h! x0 u- I) U( n0 |( j
6=via AHB/APB bridge in D3,
& Q; l3 }0 n$ Y6 n7=via AHBS bus of Cortex-M7,- j/ Q. Q) c4 \9 v9 U$ R, B9 W
1 x: o3 u, K3 X" l) ^
多个数值组合 = 互连路径以数字的顺序经过多个矩阵或/和桥。
. a- H" ]& D7 h/ C5 v6 G) t
4 F2 y1 }  o" ]* F3 R5 o总线访问类型
- Z0 O9 a5 f% r! _7 v
) }$ W! m0 `4 G7 ~普通字体表示32位总线。
; D9 `+ h, o: A$ v$ y
9 Z/ |' o6 y$ }7 _! y0 h斜体表示32位总线主机端/ 64位总线从机端。, A, i+ s! L# z8 a- U1 o6 j
3 V. V& {1 `+ |8 B( Y1 u, i& y
粗体表示64位总线。$ k1 }3 k* i$ M- l) `4 R0 b- x
* r8 K' k' _# J3 n; H0 d" G( W" J; G
通过这个总线互联图,要了解到下面三个重要知识点:
0 n, G4 Z4 p  U$ o
$ s# ?, z8 z5 YDTCM和ITCM不支持DMA1,DMA2和BDMA,仅支持MDMA。
# l. o2 E  q& Q5 X/ w3 B4 ], K7 C& H. J1 k9 {1 i
AXI SRAM,SRAM1,SRAM2,SRAM3不支持BDMA,支持MDMA,DMA1和DMA2。
$ H- w: e8 ~9 B, s1 l
& G- ]% u, K+ A  Q1 x- @0 pSRAM4支持所有DMA,即MDMA,DMA1,DMA2和BDMA。- \8 j- a* l# N" q: J
1741255635967624.png
1741255389164756.png
1741253722489722.png
赞 收藏 评论0 发布时间:2025-3-26 10:13

举报

0个回答

所属标签

相似技术帖

官网相关资源

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