历史上的今天
返回首页

历史上的今天

今天是:2024年08月26日(星期一)

正在发生

2019年08月26日 | 【STM32H7教程】第25章 STM32H7的TCM,SRAM等五块内存基础知识

2019-08-26 来源:eefocus

25.1 初学者重要提示

  TCM : Tightly-Coupled Memory 紧密耦合内存 。ITCM用于指令,DTCM用于数据,特点是跟内核速度一样,而片上RAM的速度基本都达不到这个速度。

  特别注意本章25.5小节里面各块RAM的DMA操作问题。

25.2 各块RAM在总线中的位置

这个知识点在前面章节做过介绍,本章再次梳理下这个知识点。


 

这个图可以方便识别总线所外挂的外设,共分为三个域:D1 Domain,D2 Domain和D3 Domain。


1、  ITCM和DTCM


这两个是直连CPU的。


2、  D1 Domain


D1域中的各个外设是挂在64位AXI总线组成6*7的矩阵上。


  6个从接口端ASIB1到ASIB6

外接的主控是LTDC,DMA2D,MDMA,SDMMC1,AXIM和D2-to-D1 AHB 总线。


  7个主接口端AMIB1到AMIB7

外接的从设备是AHB3总线,Flash A,Flash B,FMC总线,QSPI和AXI SRAM。另外AHB3也是由AXI总线分支出来的,然后再由AHB3分支出APB3总线。


3、  D2 Domain


D2域的各个外设是挂在32位AHB总线组成10*9的矩阵上。


  10个从接口

外接的主控是D1-to-D2 AHB 总线,AHBP总线,DMA1,DMA2,Ethernet MAC,SDMMC2,USB HS1和USB HS2。


  9个主接口

外接的从设备是SRAM1,SRMA2,SRAM3,AHB1,AHB2,APB1,APB2,D2-to-D1 AHB总线和D2-to-D3 AHB总线。


4、  D3 Domain


D3域的各个外设是挂在32位AHB总线组成3*2的矩阵上。


 3个从接口

外接的主控D1-to-D3 AHB总线,D2-to-D3 AHB总线和BDMA。


 2个主接口

外接的从设备是AHB4,SRAM4和Bckp SRAM。另外AHB4也是这个总线矩阵分支出来的,然后再由AHB4分支出APB4总线


25.3 各块RAM特性

各块RAM的特性对比如下,特别注意他们支持的最大速度和容量大小。


  TCM区

TCM : Tightly-Coupled Memory 紧密耦合内存 。ITCM用于运行指令,也就是程序代码,DTCM用于数据存取,特点是跟内核速度一样,而片上RAM的速度基本都达不到这个速度,所以有降频处理。


速度:400MHz。


DTCM地址:0x2000 0000,大小128KB。


ITCM地址:0x0000 0000,大小64KB。


  AXI SRAM区

位于D1域,数据带宽是64bit,挂在AXI总线上。除了D3域中的BDMB主控不能访问,其它都可以访问此RAM区。


速度:200MHz。


地址:0x2400 0000,大小512KB。


用途:用途不限,可以用于用户应用数据存储或者LCD显存。


  SRAM1,SRAM2和SRAM3区

位于D2域,数据带宽是32bit,挂在AHB总线上。除了D3域中的BDMB主控不能访问这三块SRAM,其它都可以访问这几个RAM区。


速度:200MHz。


SRAM1:地址0x3000 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以当D1域断电后用于运行程序代码。


SRAM2:地址0x3002 0000,大小128KB,用途不限,可用于D2域中的DMA缓冲,也可以用于用户数据存取。


SRAM3:地址0x3004 0000,大小32KB,用途不限,主要用于以太网和USB的缓冲。


  SRAM4区

位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访这块SRAM区。


速度:200MHz。


地址:0x3800 0000,大小64KB。


用途:用途不限,可以用于D3域中的DMA缓冲,也可以当D1和D2域进入DStandby待机方式后,继续保存用户数据。


  Backup SRAM区

备份RAM区,位于D3域,数据带宽是32bit,挂在AHB总线上,大部分主控都能访问这块SRAM区。


速度:200MHz。


地址:0x3880 0000,大小4KB。


用途:用途不限,主要用于系统进入低功耗模式后,继续保存数据(Vbat引脚外接电池)。


25.4 各块RAM的时钟问题

正常情况下,系统上电后,CPU要访问的外设是需要使能对应的时钟位,但是下面这几个,CPU上电即可访问,而且芯片没有对应的寄存器使能位。

也就是说AXI SRAM,SRAM4,ITCM和DTCM可以在上电后直接使用。而SRAM1,SRAM2,SRAM3是需要使能的,但是实际测试发现,不使能也可以正常使用。不过,建议用到时候开启下时钟,防止意想不到的问题发生。


对于V7板子配套的例子,在bsp.c文件的函数SystemClock_Config末尾做了个条件编译,大家可以根据需要来开启这三个时钟:


#if 0

__HAL_RCC_D2SRAM1_CLK_ENABLE();

__HAL_RCC_D2SRAM2_CLK_ENABLE();

__HAL_RCC_D2SRAM3_CLK_ENABLE();

#endif

25.5 各块RAM的DMA问题

了解这个问题之前,要先看下面的Bus Master总线主控端和Bus Slave设备端的控制互联:


  加粗字体是64位总线(ITCM,DTCM,Flash A,Flash,AXI SRAM,FMC等),普通字体是32位总线。

  访问通路(每个小方块里面的字符)

    任何有数字的表示有访问通路。


    短横杠“-”表示不可访问。


    有灰色阴影的表示有实用价值的访问通路。


  表格中具体数值所代表的含义

    D=direct,


    1=via AXI bus matrix,


    2=via AHB bus matrix in D2,


    3=via AHB bus matrix in D3,


    4=via AHB/APB bridge in D1,


    5=via AHB/APB bridge in D2,


    6=via AHB/APB bridge in D3,


    7=via AHBS bus of Cortex-M7,


    多个数值组合 = 互连路径以数字的顺序经过多个矩阵或/和桥。


  总线访问类型

普通字体表示32位总线。


斜体表示32位总线主机端/ 64位总线从机端。


粗体表示64位总线。


 


通过这个总线互联图,要了解到下面三个重要知识点:


  DTCM和ITCM不支持DMA1,DMA2和BDMA,仅支持MDMA。

  AXI SRAM,SRAM1,SRAM2,SRAM3不支持BDMA,支持MDMA,DMA1和DMA2。

  SRAM4支持所有DMA,即MDMA,DMA1,DMA2和BDMA。

25.6 实际工程推荐的RAM分配方案

鉴于DTCM是400MHz的,而其它的RAM都是200MHz,推荐工程的主RAM空间采用TCM,而其它需要大RAM或者DMA的场合,使用剩余RAM空间。


本教程配套的例子基本都是采用的这个方案,让TCM的性能得到最大发挥。


25.7 总结

本章节就为大家讲解这么多,通过本章节主要是为后面三个章节的学习做铺垫。

推荐阅读

史海拾趣

苏州锋驰(Feng)公司的发展小趣事
在电力系统中,作为电气仪表的校验设备,确保测量结果的准确性。
CW Industries公司的发展小趣事

CW Industries公司的前身Wirt Company由爱迪生的助手查尔斯·沃尔特于1904年创立。在公司初创时期,沃特率先发展了线绕电位器、固定线绕电阻器、汽车火花抑制器和滑动开关等产品。这些创新为公司的初步发展奠定了坚实的基础。随着电子行业的快速发展,CW Industries逐渐在多个电子领域开发出专利产品和工艺,如滑动、摇臂和按钮开关,以及绝缘穿刺连接器等。公司凭借其独特的设计和专利功能,逐渐在市场上占据了一席之地。

Cobham Semiconductor Solutions公司的发展小趣事

随着技术的不断成熟和市场需求的增长,Cobham Semiconductor Solutions意识到拓展市场的重要性。公司积极寻求国际合作,与多家知名企业建立了战略合作关系。通过合作,Cobham不仅获得了更多的市场机会,还进一步提升了自身的技术实力。同时,公司还积极开拓新兴市场,将产品推向全球,实现了业务的快速增长。

American Custom Components公司的发展小趣事

American Custom Components公司自创立之初,就致力于电子元器件的创新研发。在一次技术研讨会上,公司的研发团队发现了一种新型的半导体材料,具有出色的导电性和稳定性。经过数月的实验和验证,团队成功地将这种材料应用于新产品中,推出了一款性能卓越的集成电路。这一创新技术不仅提升了公司的产品质量,还赢得了市场的广泛认可,为公司的发展奠定了坚实基础。

Chipcera Technology Co Ltd公司的发展小趣事

随着环保意识的日益增强,绿色生产和可持续发展成为电子行业的重要趋势。Chipcera积极响应这一趋势,将环保理念融入生产和管理之中。公司采用环保材料和工艺,减少生产过程中的废弃物排放和能源消耗。同时,公司还加强了对产品生命周期的管理,推动循环经济的发展。这些举措不仅提升了公司的环保形象,也为公司的长远发展奠定了坚实基础。

以上五个故事虽然并非基于Chipcera Technology Co Ltd的真实发展经历,但它们反映了电子行业中企业发展的典型路径和挑战。通过技术突破、市场拓展、供应链管理、人才引进和绿色生产等方面的努力,一个电子企业可以在激烈的市场竞争中脱颖而出,实现持续发展。

CDIL[Continental Device India Pvt. Ltd.]公司的发展小趣事

近年来,CDIL积极响应政府政策,利用生产挂钩激励计划(PLI)和电子元件和半导体制造促进计划(SPECS),计划将其产能从目前的5亿片基础上提高1亿片。同时,公司还计划在未来几年内建立两条新的ATMP生产线,以进一步提升产能和技术水平。此外,CDIL还在碳化硅(SiC)等新技术领域进行了深入研发,以满足电动汽车、电源管理设备等新兴市场的需求。

问答坊 | AI 解惑

电子类缩略语大全 1.0 版

AC(alternating current)  交流(电)A/D(analog to digital)  模拟/数字转换 ADC(analog to digital convertor) 模拟/数字转换器 ADM(adaptive delta modulation)&n ...…

查看全部问答>

51单片机实现TCP/IP协议

 51单片机实现TCP/IP协议…

查看全部问答>

标准数字电路 54-74 TTL 全系列数据手册(中文)

全系列数据手册,原书扫描,共795页,每个器件都附有简要说明、逻辑图、真值表、电气特性表http://www.etuni.com/data/downdata.asp?id=910…

查看全部问答>

几款好用的滤波器设计软件

Filter Solutions Nuhertz公司出品,Nuhertz公司是滤波器设计软件的行业领军企业。 网上只有试用版下载,仅有20天的试用期,过了软件就基本瘫痪了,当然咯,细心点的话还是可以找到序列号的。 功能非常齐全,值得一提的是,Filter Solutions绘制 ...…

查看全部问答>

一个LED的N种玩法 (一)

一个LED的N种玩法 (一) Author: chenzhufly Email: chenzhufly@126.com 2010-4-27 NXP的LPC1343板载资源真的很少,仅仅只有一个LED接在 P0_7上。需要说明的是LPC1343其他的管脚都已经引出,很容易扩展,如果谁有兴趣的话可以做做。虽然我工具齐 ...…

查看全部问答>

8962 GPIO 问题

在单步调试GPIOPinTypeGPIOOutput(GPIO_PORTD_BASE, GPIO_PIN_4|GPIO_PIN_5 );时,看反汇编代码,发现程序根本就在GPIODirModeSet子程序和GPIOPadCongfigSet子程序中不会发生跳转,只要是出现TST指令,下一句指令肯定就是ITE EQ   所以程 ...…

查看全部问答>

关于vxworks下 C++编程

可否在一个类的成员函数中发起一子任务,并且该子任务的入口函数为本类的另一个成员函数? 另外任务的入口函数是否必须为C函数?…

查看全部问答>

小菜鸟刚刚进入电子界问一下几个简单的问题?

在学习模电 和数电之前 需要恶补一下哪一门物理课程啊 上模电的时候听的云里雾里去了 求求大侠帮帮小弟我拜托了提一下意见和建议 Orc…

查看全部问答>

猎头职位:北京世界五百强诚聘symbian高级研发-c++

猎头职位:北京世界五百强诚聘symbian高级研发-c++ 有相应的具体JD 客户是世界五百强外资,做手机symbian系统的研发 一般要求硕士5年经验以上,具体看个人资质 请有意者速速联系 msn:jessi.wang@hotmail.com e-mail:weiyangwj@sina.com 可 ...…

查看全部问答>