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

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

[复制链接]
flyingstar 发布时间:2025-3-26 10:13
本文为大家介绍STM32H7带的ITCM,DTCM,AXI SRAM,SRAM1,SRAM2,SRAM3,SRAM4和备份SRAM的基础知识。
1 O4 a, o/ A2 ]# l3 T) h
8 ]/ h9 G6 m9 K  A  j![TCM_02.png](http://uphotos.eepw.com.cn/jobs/pics/1741253722489722.png "1741253722489722.png")' E7 N1 M2 @( Z: l/ v+ u

- P: R3 c# g; Z# Q, c/ r- k上图可以方便识别总线所外挂的外设,共分为三个域:D1 Domain,D2 Domain和D3 Domain。$ g3 K, E/ S0 W! K% W; q) O: q0 t

+ X; g! B( w. Y. U* V1、  ITCM和DTCM
  b% x  o' ^0 J( G! l  X/ j! j7 D" J$ B1 Y
这两个是直连CPU的。& N4 k6 q3 N) E) \% w# |8 y9 [
5 o% n4 X$ m) s4 Y6 b6 N9 X
2、  D1 Domain
5 t. e. M1 ?8 O8 h' l! {+ V/ B9 U- e# D$ o+ _$ C( Z* ^
D1域中的各个外设是挂在64位A**线组成6*7的矩阵上。( B# u( L$ T3 M! N0 U* C8 w- e' ]

. C" L( ~' E' {, H- D7 N6个从接口端ASIB1到ASIB6,外接的主控是LTDC,DMA2D,MDMA,SDMMC1,AXIM和D2-to-D1 AHB 总线。
7 O4 W7 X+ p) w. t% t+ _" g0 I8 u/ r% d
7个主接口端AMIB1到AMIB7,外接的从设备是AHB3总线,Flash A,Flash B,FMC总线,QSPI和AXI SRAM。另外AHB3也是由A**线分支出来的,然后再由AHB3分支出APB3总线。
' H& X+ c9 R- x# d. u$ _6 L2 V; x7 v% c7 w3 f0 \1 g* F
3、  D2 Domain
" w6 O% a; b. y' M9 D9 s; F1 r- \! o
D2域的各个外设是挂在32位AHB总线组成10*9的矩阵上。5 m, G, z3 p2 [* z

# G, b, i! w! N4 P10个从接口,外接的主控是D1-to-D2 AHB 总线,AHBP总线,DMA1,DMA2,Ethernet MAC,SDMMC2,USB HS1和USB HS2。+ J. X: D5 A$ v1 p, K. q+ Z( j/ q

2 M# G0 Y2 N  X9个主接口,外接的从设备是SRAM1,SRMA2,SRAM3,AHB1,AHB2,APB1,APB2,D2-to-D1 AHB总线和D2-to-D3 AHB总线。1 F4 }, U  E# W  I7 B$ c
' Z; v  a& y* M% |1 A
4、  D3 Domain5 |" Q5 H/ l2 i5 R0 J" {/ A

, G6 B9 \% K) y( h+ K& vD3域的各个外设是挂在32位AHB总线组成3*2的矩阵上。
: K5 @$ [4 B  f; F' a# \# u! V$ ?: \" j
3个从接口,外接的主控D1-to-D3 AHB总线,D2-to-D3 AHB总线和BDMA。
. i* S, T* p0 Q/ c  h- a( W
6 e: B0 q" u  g6 P2个主接口,外接的从设备是AHB4,SRAM4和Bckp SRAM。另外AHB4也是这个总线矩阵分支出来的,然后再由AHB4分支出APB4总线
  E! _, z3 g: R: g2 N- ^+ @' J% x9 {. {7 a  j
**各块RAM特性**
# k9 \- N6 x! i6 T$ d' W4 `0 E/ H+ E1 N% T3 x  o9 P. I4 H
各块RAM的特性对比如下,特别注意他们支持的最大速度和容量大小。
! {! U0 S8 A1 l# }( u, o7 q5 q; [% {2 c9 s9 [8 P$ [
**TCM区**
( S; f  b  n6 b8 F/ N: M# b9 \
4 U' z6 _/ G6 S' k# f) |. v7 _TCM : Tightly-Coupled Memory 紧密耦合内存 。ITCM用于运行指令,也就是程序代码,DTCM用于数据存取,特点是跟内核速度一样,而片上RAM的速度基本都达不到这个速度,所以有降频处理。
  ?$ z% v2 ~3 K7 n) B) m+ e7 K8 E0 d- J1 H
速度:400MHz。DTCM地址:0x2000 0000,大小128KB。ITCM地址:0x0000 0000,大小64KB。
" ?/ G0 f+ U, P8 j' W6 @  B" W! S" v# V( P; L  f( @+ S* Z
**AXI SRAM区**
7 g8 m9 [7 a, M4 F2 i0 |- D
9 C& `& a1 ~8 _% N9 |" \' N位于D1域,数据带宽是64bit,挂在A**线上。除了D3域中的BDMB主控不能访问,其它都可以访问此RAM区。
, t* S  w! ^0 K
; K% a) K. m8 }) M9 P" K( ]& j+ @速度:200MHz。地址:0x2400 0000,大小512KB。用途:用途不限,可以用于用户应用数据存储或者LCD显存。4 i6 @" |& b, o- }) x; a! a' L
: z; `; w; z4 M) e
**SRAM1,SRAM2和SRAM3区**
! d  V9 v% D: F* O) b* c/ T% a& ^+ y5 A% a4 i* J( T
位于D2域,数据带宽是32bit,挂在AHB总线上。除了D3域中的BDMB主控不能访问这三块SRAM,其它都可以访问这几个RAM区。4 h  H& U7 z& B3 U- |  P8 K, H5 k

& G. m9 i$ m, G6 ^速度:200MHz。
  x1 l" N+ s; {: g
* w$ B* O: [$ [2 SSRAM1:地址0x3000 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以当D1域断电后用于运行程序代码。; h3 ^5 F" f9 C; z3 K6 X2 ]8 ^

2 m* }( m. o  A& H5 ySRAM2:地址0x3002 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以用于用户数据存取。$ h4 }; z( X; {4 @; ~7 d

2 u" ^8 y0 o/ y! ]8 B: L5 s1 _" ZSRAM3:地址0x3004 0000,大小32KB,用途不限,主要用于以太网和USB的缓冲。  V7 n# Q/ R+ r
" q# {1 m0 c6 y. \) y, n; o% h
**SRAM4区**# r3 t" t! ~: R/ _! l  `

) A& ]4 e. R/ z& i/ g; n8 u( o8 ~2 d2 G位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访这块SRAM区。
4 Q0 w4 U+ ]& }  P8 D' R0 l
$ W  m, X/ m5 B' ?) w3 u3 Y" }速度:200MHz。
$ M9 I" C! {2 {5 W7 m3 F* _: c6 p& r, p) G' w; D) m+ X2 {3 i
地址:0x3800 0000,大小64KB。
5 I3 p2 E/ h, V( n+ p
5 U. A- Z* ^& q, n3 n  j  S$ o- U用途:用途不限,可以用于D3域中的DMA缓冲,也可以当D1和D2域进入DStandby待机方式后,继续保存用户数据。
% \, L" D% ?( E$ r) a& Y  C3 ?! d! o* E% e( W
**Backup SRAM区**
% ~- \6 M" M2 U7 k2 y9 U( |
8 c5 B( i/ I" x! I( X备份RAM区,位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访问这块SRAM区。
- g) x9 y7 }- r2 o4 d( d1 L) J
: [4 ~8 F& P+ V% ~速度:200MHz。% q, G: w7 H' y

9 R! _/ N8 h- K( G4 H地址:0x3880 0000,大小4KB。9 s! T: q* m9 U- F

7 H2 ]  @$ x' S# H* d2 o用途:用途不限,主要用于系统进入低功耗模式后,继续保存数据(Vbat引脚外接电池)。
+ }" n" V  j0 @/ z2 n$ @( i' \
+ Q+ y& N, }! d2 y! RRAM的时钟问题6 K; j+ n) [9 s9 x
) s: ?- q; c+ w2 d& X4 S* G; Y
正常情况下,系统上电后,CPU要访问的外设是需要使能对应的时钟位,但是下面这几个,CPU上电即可访问,而且芯片没有对应的寄存器使能位。1 |/ l+ y4 p/ R2 [$ g, I

2 w2 K0 _$ W5 E: O- c![TCM_03.png](http://uphotos.eepw.com.cn/jobs/pics/1741255389164756.png "1741255389164756.png")
" f7 L/ d# T- n1 B/ k! b7 Q# _9 x1 j
也就是说AXI SRAM,SRAM4,ITCM和DTCM可以在上电后直接使用。而SRAM1,SRAM2,SRAM3是需要使能的,但是实际测试发现,不使能也可以正常使用。不过,建议用到时候开启下时钟,防止意想不到的问题发生。
! ^# e2 L6 j5 R) i* U) K( z5 [
! V. u+ R% ^% v  X6 n6 e2 [; k* H2 g**RAM的DMA问题**( ^4 x7 t. e# O" n
3 E2 D- ?$ o5 W3 Y6 j! @- V) a! {& a
先看下面的Bus Master总线主控端和Bus Slave设备端的控制互联:
! U) x$ P1 N8 C& z6 F
# m" E9 g% h. \![TCM_04.png](http://uphotos.eepw.com.cn/jobs/pics/1741255635967624.png "1741255635967624.png")* l5 g6 {9 G& P! g5 H# u- J
; B/ \$ z5 H( B) n8 [) Y
加粗字体是64位总线(ITCM,DTCM,Flash A,Flash,AXI SRAM,FMC等),普通字体是32位总线。
2 x! P2 K; q1 A! O4 d访问通路(每个小方块里面的字符)
- ^* k9 i4 `& k. n9 b. Z任何有数字的表示有访问通路。: D+ D6 T& Q# ~, D3 b% f5 o9 N
短横杠“-”表示不可访问。, a5 \! ]. O! G2 g; g- h
有灰色阴影的表示有实用价值的访问通路。
7 z7 X( L" c: d+ d4 o7 H表格中具体数值所代表的含义
2 _! W" j, \7 ZD=direct,: b& d( d9 h8 m% ?0 _1 ]
1=via AXI bus matrix,
- f+ w4 ?( t5 {0 q+ r7 q! N2=via AHB bus matrix in D2,/ N9 Q6 h8 C+ P# `7 P6 S4 I
3=via AHB bus matrix in D3,' d- H+ U. ?! X; h( u7 z
4=via AHB/APB bridge in D1,
4 Q% ^- @4 Z* H: J7 Z5=via AHB/APB bridge in D2,
, ^6 w2 r, o2 f2 X6=via AHB/APB bridge in D3,! D3 `( _. J4 R. ~
7=via AHBS bus of Cortex-M7,
4 B1 y/ Z$ E" Z* }% q
/ j$ I& P0 P$ W" m+ k! R多个数值组合 = 互连路径以数字的顺序经过多个矩阵或/和桥。9 F7 M; U! Z/ _) g* W' }, J9 S
2 @4 [: l! {6 S+ i- b) }
总线访问类型' L- b* \: N/ R# b' P' t# y# g/ l2 d# a" Y

2 ]3 c6 E( i7 ~2 ^# c普通字体表示32位总线。+ j  X" B+ f: t- N. A# F; Y' V$ e
% _% D9 q# @- w, M
斜体表示32位总线主机端/ 64位总线从机端。
  ~. {7 i% q* ^( m; k
- g- L7 T) V6 t, \粗体表示64位总线。1 p3 j. a8 _! p$ _, t+ {

9 H: T( m5 v. o+ B通过这个总线互联图,要了解到下面三个重要知识点:
3 P  N1 m( ^9 G2 B) f
9 B% i1 R1 s7 w2 k0 R; {7 T5 p6 _! EDTCM和ITCM不支持DMA1,DMA2和BDMA,仅支持MDMA。
1 V% s' u  R( E& z' ]7 @2 h8 p$ ]
+ q, T6 r/ d, E4 U8 N/ m3 YAXI SRAM,SRAM1,SRAM2,SRAM3不支持BDMA,支持MDMA,DMA1和DMA2。
; f  H5 |! f. J$ `9 @2 y$ q- J% t2 w! _6 \; U
SRAM4支持所有DMA,即MDMA,DMA1,DMA2和BDMA。
0 M' ]- ]/ k: 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 手机版