《第7章存储器映像及Boot引导模式ppt课件.ppt》由会员分享,可在线阅读,更多相关《第7章存储器映像及Boot引导模式ppt课件.ppt(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确第第7 7章章 存储器映像及存储器映像及BootBoot引导模式引导模式7.1 F2812的存储器映像的存储器映像7.2 外部接口外部接口XINTF 7.3 F2812的上电引导的上电引导7.4 FLASH的烧写固化的烧写固化在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.1 F2812的存储器映像的存储器映像 TMS320F2812的CPU本身不含存储器,但它可以通过总线访问DSP片内其他地方的存储器或者片外存储器。F28
2、12的存储器被划分成如下几个部分:程序/数据存储器。F2812具有片内单口随机存储器SRAM、只读存储器ROM和Flash存储器。它们被映像到程序空间或者数据空间,用来存放执行代码或存储数据变量。保留区。数据区的某些地址被保留作为CPU的寄存器使用。CPU中断向量。在程序地址中保留了64个地址作为CPU的32个中断向量。通过ST1的为VMAP可以将CPU的中断向量映像到程序空间的顶部或底部。7.1.1 存储器的结构存储器的结构在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确存储器名称存储器容量FLASH128K*16位H0(SRAM)
3、8K*16位L0(SRAM)4K*16位L1(SRAM)4K*16位M0(SRAM)1K*16位M1(SRAM)1K*16位Boot ROM4K*16位OTP(One Time Programmable ROM)1K*16位表表7-1 片内存储器资源片内存储器资源7.1.1 存储器的结构存储器的结构7.1 F2812的存储器映像的存储器映像在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.1.2 F2812的存储器映像的存储器映像 存储器映像的概念:存储器映像的概念:“Map”存储器本身不具有地址信息,它的地址是由芯片厂商或用户分配
4、存储器本身不具有地址信息,它的地址是由芯片厂商或用户分配的,给存储器分配地址的过程就称为存储器映射。的,给存储器分配地址的过程就称为存储器映射。7.1 F2812的存储器映像的存储器映像在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.1.2 F2812的存储器映像的存储器映像 存储器映像的概念:存储器映像的概念:“Map”实际物理存在的存储器,配置成不同的程序空间或数据空间,分配上各自的标签(也就是地址),然后通过该空间的地址来访问实际的物理上的存储器。7.1 F2812的存储器映像的存储器映像在整堂课的教学中,刘教师总是让学生带
5、着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确F2812存储器映像存储器映像1.统一编址,共统一编址,共用同一个地址用同一个地址空间。空间。2.每个存储空间每个存储空间都有唯一的地都有唯一的地址。址。3.PF02只与数只与数据存储有关。据存储有关。4.某些范围的存某些范围的存储器受到储器受到EALLOW保保护,以避免配护,以避免配置后的改写。置后的改写。5.BootROM和和外扩的外扩的XINTF区区7不能被同不能被同时激活,由时激活,由MP/MC引脚引脚的电平来决定的电平来决定哪个被激活。哪个被激活。6.向量表位置。向量表位置。在整堂课的教学中,刘教师总是让学生带着
6、问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.1.3 F2812各个存储器模块的特点各个存储器模块的特点(1)片内)片内SARAM SARAM为单口随机读/写存储器,简称片内RAM。含有18K 16位的RAM空间,分为H0、L0、L1、M0、M1共5个存储器。这些存储器模块,都可以被单独访问,并且觉可以作为程序空间或数据空间,用来存放指令代码或者存储数据。L0、L1受代码安全模块CSM保护。(2)片内)片内OTP ROM(一次性可编程(一次性可编程ROM)有2K 16位的OTP ROM空间,其中1K由TI公司保留,作为系统测试使用;剩余1K用户可以使用。OTP中的内
7、容受代码安全模块CSM保护。7.1 F2812的存储器映像的存储器映像在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.1.3 F2812各个存储器模块的特点各个存储器模块的特点(3)Boot ROM(引导(引导ROM)该存储空间有TI公司装载了产品的版本号、发布的数据、校验求和信息、复位矢量、CPU矢量及数学表等。Boot ROM主要作用是实现DSP的Bootloader功能。芯片出厂时,在Boot ROM的0 x3FFC000 x3FFFBF存储器内装有厂家的引导装载程序。,DSP被置位微计算机模式,CPU在复位后将执行这段程序
8、,从而完成Bootloader功能。(4)片内)片内Flash F2812片内含有128K 16位的Flash,分为4个8K 16位和6个16K 16位的存储段,用户可以单独对某些段进行操作。内容受CSM模块保护。7.1 F2812的存储器映像的存储器映像在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.1.3 F2812各个存储器模块的特点各个存储器模块的特点(5)代码安全模块)代码安全模块CSM 可以保护Flash/ROM、OTP ROM和L0、L1 SARAM;防止系统中的软件程序被修改或读取。(6)外设帧)外设帧PF F28
9、12有3个外设帧PF0、PF1、PF2,专门用于外设寄存器的映像空间。除了CPU的寄存器外,其他寄存器均放在了PF0、PF1和PF2内。有的外设寄存器受有的外设寄存器受EALLOW指令保护,防止一些偶然的指令保护,防止一些偶然的代码或指针去破坏寄存器的内容。再写外设寄存器相关程序代码或指针去破坏寄存器的内容。再写外设寄存器相关程序时,操作前需要加指令时,操作前需要加指令EALLOW,操作结束后使用,操作结束后使用EDIS。7.1 F2812的存储器映像的存储器映像在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.2 外部接口外部接口
10、XINTF7.2.1 XINTF的存储区域的存储区域 外部接口XINTF采用非复用异步总线,通常可用于扩展SRAM、Flash、ADC、DAC模块模块等。XINTF接口是F2812与外部设备进行通信的重要接口,这些外部接口分别和CPU的某个存储空间相对应,CPU通过对存储空间进行读/写操作,从而间接控制外部接口。在使用XINTF接口同外部设备进行通信时,无论是写操作还是读操作,CPU都作为主设备,外部设备作为从设备。外部设备不能控制F2812的外部接口信号线,只能读取、判断信号线的状态,来进行相应的操作。在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所
11、提出的问题也很明确16根数据总根数据总线线19根地址总根地址总线线跟读写操作有跟读写操作有关的一些控制关的一些控制信号信号TMS320F2812的有16根数据总线和19根地址总线.常用SRAM芯片IS61LV51216和和IS61LV25616。容量分别为512K16位和256K16位.常选用的Flash芯片型号为SST39VF160、SST39VF400.外扩外扩RAM/FLASH的设计的设计在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确 16位位19位位XINTF7.2 外部接口外部接口XINTF XZCS7取决于取决于MP/M
12、C的状态的状态在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.2 外部接口外部接口XINTF在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.2 外部接口外部接口XINTF7.2.1 XINTF的存储区域的存储区域外部接口的访问:外部接口的访问:各个区域共享外部地址总线,例如,当CPU访问Zone2和Zone6空间的第一个字时,地址总线产生0 x00000地址;当CPU访问Zone2和Zone6空间的最后一个字时,地址总线产生0 xFFFFF地址。访问Zone2和Zon
13、e6空间的唯一区别在于控制的片选信号不同,分别是XZCS2和XZCS6ANDCS7。在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确例如:如果CPU现在要向地址为Ox002001中写入数据,具体过程是:1:将片选信号 置为低电平,这样就选中了以Ox002000为为起始地址的区域0;2:接着有19根地址总线产生偏移地址Ox0001;这样就产生了地址Ox002001。7.2 外部接口外部接口XINTF7.2.1 XINTF的存储区域的存储区域在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问
14、题也很明确7.2 外部接口外部接口XINTF7.2.1 XINTF的存储区域的存储区域外部接口的访问:外部接口的访问:当系统使能某个片选信号时,相应的外部设备就会被选中,数据就可以存储到相应的存储空间内,或者数据就可以从相应的存储空间内读取出来。例如,当XZCS2信号为低电平时,表示Zone2(0 x0800000 x100000)这片存储区域被选中,也就是和这片存储区域相对应的外部设备被选中。在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.2 外部接口外部接口XINTF7.2.1 XINTF的存储区域的存储区域外部接口的访问:外
15、部接口的访问:对于两个区域共用片选信号时,例如zone0(0 x20000 x3FFF)和zone1(0 x40000 x5FFF)0 x20 x30 x30 x4在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.2 外部接口外部接口XINTF7.2.1 XINTF的存储区域的存储区域外部接口的访问:外部接口的访问:Zone7的映射同MP/MC有关,而Zone0,1,2,6总是有效的存储空间,同MP/MC状态无关。DSP复位时,XMP/MC引脚的值被采样,然后锁入XINTF的配置寄存器XINTFCNF2中,该引脚电平决定Boot R
16、OM还是XINTF7被使能。在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.2 外部接口外部接口XINTF7.2.2 XINTF的时钟的时钟 XINTF模块有两种时钟模式XTIMCLK和XCLKOUT,下图给出了CPU、SYSCLKOUT时钟同XINTF时钟之间的关系。XINTF配置寄配置寄存器存器XINTF各个区相应的时序寄存器,中可各个区相应的时序寄存器,中可以设置每个以设置每个XINTF空间访问各阶段的等空间访问各阶段的等待的待的XTIMCLK周期数。周期数。系统时钟系统时钟XINTF模块模块的基本时钟的基本时钟在整堂课的教
17、学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.2 外部接口外部接口XINTF XTIMCLK是是XINTF接口各个区域时序的基本时钟接口各个区域时序的基本时钟,所有的外部扩展访问都是以XTIMCLK为参考的,因此在配置XINTF时,首先要通过XINTFCNF2寄存器配置XTIMCLK。XTIMCLK可以配置为SYSCLKOUT,也可以配置为SYSCLKOUT/2,XTIMCLK默认的值是SYSCLKOUT/2。7.2.2 XINTF的时钟的时钟在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问
18、题也很明确7.2 外部接口外部接口XINTF 外部接口还提供了一个时钟输出XCLKOUT,对XINTF的访问都是在XCLKOUT的上升沿开始的,其大小取决于XINTFCNF2寄存器CLKMODE位。1时配置为XTIMCLK/2,0时配置为XTIMCLK,默认的值是XTIMCLK/2。此外,XCLKOUT还受到XINTFCNF2寄存器CLKOFF位的控制。7.2.2 XINTF的时钟的时钟在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.2 外部接口外部接口XINTF7.2.2 XINTF的时钟的时钟XINTF配置寄存器配置寄存器XI
19、NTCNF2设置设置XTIMCLK,000和和001两种两种XCLKOUT输出的模式输出的模式0 XCLKOUT=XTIMCLK1 XCLKOUT=XTIMCLK/2禁止禁止XCLKOUT输出,主要为了将低输出,主要为了将低功耗和减少噪声。复位时功耗和减少噪声。复位时CLKOFF的的值是值是0。0 允许允许XCLKOUT输出输出1 禁止禁止XCLKOUT输出输出在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.2 外部接口外部接口XINTF F2812的XINTF映射到5个独立的存储空间。当访问相应的存储空间时,就会产生一个片选信号
20、。每个空间都可以独立地设置访问等待、选择、建立以及保持时间,同时还可以使用XREADY信号来控制外设的访问。外部接口的访问时钟频率由内部的XTIMCLK提供XTI MCLK可以等于SYSCLKOUT或SYSCLKOUT/2。在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确外扩外扩RAM的设计的设计写信号引脚写信号引脚读信号引脚读信号引脚同同DSP的的XZCS6AND7相连,相连,表示选择了表示选择了2812的的XINTF6区,起始地址区,起始地址为为0 x100000在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一
21、定的梯度,由浅入深,所提出的问题也很明确SST39VF160512K同同DSP的的XZCS2相连,相连,表示选择了表示选择了2812的的XINTF2区,起始地址区,起始地址为为0 x80000写信号引脚写信号引脚读信号引脚读信号引脚外扩外扩FLASH的设计的设计在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确7.3 F2812的上电引导的上电引导上电引导流程图上电引导流程图Boot ROM,地址为0 x3FF0000 x3FFFFFInitBoot函数:1.对芯片初始化,并将DSP配置成28x工作模式;2.选择引导方式 0 x3F7FF60 x3F80000 x3D7800_c_int00是boot.asm的入口地址 boot.asm文件:1.为堆栈预留空间,设置堆栈指针初始值;2.初始化状态寄存器;3.初始化全局变量;4.初始化C+变量,设置C运行环境;7.调用主函数main()。按照一定的数据流格式接受来自外部的用户代码,写入DSP对应的目标内存,完成装载。在整堂课的教学中,刘教师总是让学生带着问题来学习,而问题的设置具有一定的梯度,由浅入深,所提出的问题也很明确