DSP存储器及扩展接口_第1页
DSP存储器及扩展接口_第2页
DSP存储器及扩展接口_第3页
DSP存储器及扩展接口_第4页
DSP存储器及扩展接口_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、11、系统时钟、系统时钟 1 1)DSPDSP时钟:时钟:30MHz30MHz,5 5倍频;倍频;2 2)高)高/ /低速外设时钟设置与使能低速外设时钟设置与使能第二讲第二讲 内容回顾内容回顾2、看门狗模块、看门狗模块 1 1)使能)使能/ /屏蔽看门狗;屏蔽看门狗;2 2)复位看门狗()复位看门狗(0 x55+0 xAA0 x55+0 xAA)4、通用、通用I/O 1 1)高达)高达5656个,与外设复用;个,与外设复用;2 2)可配置为输入或输出)可配置为输入或输出3、CPU通用定时器通用定时器 1 1)32321616位计数器;位计数器;2 2)递减计数,产生周期性中断)递减计数,产生周

2、期性中断5、PIE中断中断 1 1)12128 8个中断源(个中断源(INT1INT1INT12INT12,INTx.1INTx.1INTx.8INTx.8) 2 2)中断向量表用来存在中断服务程序的地址中断向量表用来存在中断服务程序的地址2DSP原理及其应用技术原理及其应用技术3.1 概述概述3.2 片内存储器片内存储器3.3 外部扩展接口外部扩展接口3.4 与外部存储器的接口与外部存储器的接口第三讲 存储器及外部扩展接口33.1 3.1 存储器概述存储器概述u 程序存储器:程序存储器: ROM/PROM EPROM FLASH EEPROM DiskOnChipu 数据存储器:数据存储器:

3、 SRAM DRAM EEPROM Dual Port RAMPCPC104104兼容的兼容的Flash DiskFlash Disk模块模块4F281X的存储器u F2812提供了外部并行总线扩展接口,可提供提供了外部并行总线扩展接口,可提供1M字字(三个外部扩展空间:两个三个外部扩展空间:两个512K,一个,一个16K)的寻址空间,的寻址空间,有利于开发较复杂的系统,如扩展有利于开发较复杂的系统,如扩展FLASH、RAM、ADC、DAC、RTC、LCD、USB、LAN等。等。u F281采用增强的哈佛总线结构,能够并行访问程序采用增强的哈佛总线结构,能够并行访问程序和数据存储空间,如可以并

4、行实现程序读、数据读、数和数据存储空间,如可以并行实现程序读、数据读、数据写这三个操作。据写这三个操作。 u 片内集成了大量的片内集成了大量的SRAM、ROM、FLASH等存储器,等存储器,采用统一编址方式,方便程序开发。采用统一编址方式,方便程序开发。5CPUCPU及内部总线及内部总线 程序读u 程序程序/数据空间的写操作共用数据空间的写操作共用数据总线数据总线DWDB,两个操作不,两个操作不能同时进行;能同时进行;u 从程序空间读从程序空间读(PAB、PRDB)从数据空间读从数据空间读(DRAB、DRDB)向数据空间写向数据空间写(DWAB、DWDB)这这3个操作可以同时进行。个操作可以同

5、时进行。 数据写 数据读 CPU6Functional Overview 片内存储器片内存储器 扩展接口扩展接口07Memory Map0/XZCS0AND1/XZCS2/XZCS6AND783.2 片内存储器与寄存器u FLASH具有如下特点:具有如下特点: FLASH分成5/10个扇区,每个扇区可以单独擦除与编程; 代码可安全保护(128位秘匙); u 片内存储器均采用片内存储器均采用32位数据总线;位数据总线;u F2812F2812采用采用3232位格式访问存储器或外设时,分配的必须是偶位格式访问存储器或外设时,分配的必须是偶地址。绝大部分指令是采用地址。绝大部分指令是采用3232位格

6、式从程序存储空间读取的。位格式从程序存储空间读取的。u 各个数据存储器块各个数据存储器块M0M0 (1k) (1k)、M1M1 (1k (1k)、L0 (4k)、L1 (4k)、H0 (8k)均可以映射到程序和数据空间。均可以映射到程序和数据空间。 可根据CPU频率调整等待状态; 具有低功耗模式; 流水线模式能够提高代码执行效率。9F281X 的Flash地址表F2810F2812F2811128kW64kW10F2812的配置寄存器1/01/0使能使能/ /关闭关闭FLASHFLASH流水线模式流水线模式D11.8-D11.8-按页读取方式下的等待状态(按页读取方式下的等待状态(0 0151

7、5)D3.0-D3.0-随机读取方式下的等待状态(随机读取方式下的等待状态(1 11515)11Flash初始化 / / 下面的函数初始化下面的函数初始化FlashFlash控制寄存器,控制寄存器,DSPDSP时钟频率时钟频率150MHz150MHzvoid InitFlash(void) EALLOW; FlashRegs.FOPT.bit.ENPIPE = 1; /使能使能FlashFlash流水线模式以提高代码执行效率流水线模式以提高代码执行效率 FlashRegs.FBANKWAIT.bit.RANDWAIT = 5; /设置随机访问的等待状态数目设置随机访问的等待状态数目 Flash

8、Regs.FBANKWAIT.bit.PAGEWAIT = 5; /设置按页访问的等待状态数目设置按页访问的等待状态数目 EDIS; asm(“ RPT #7 | NOP”); /软件延迟,等待流水线刷新软件延迟,等待流水线刷新提示:初始化提示:初始化Flash寄存器的代码必须从寄存器的代码必须从RAM中运行,从中运行,从Flash中执行将导致不可预测的结果中执行将导致不可预测的结果。12外设寄存器空间u F281X和和C281X器件包含三个外设寄存器空间。这些空间分器件包含三个外设寄存器空间。这些空间分为以下三组:为以下三组: 1) Peripheral Frame0: 直接映射到CPU的存

9、储器总线,支持16位和32位数据访问。2) Peripheral Frame1: 映射到32位的外设总线,必须采用32位读写方式(限对偶地址访问)。 3) Peripheral Frame2: 映射到16位的外设总线,仅支持16为访问。13外设寄存器帧016/32 /* Peripheral Frame 0: */ DEV_EMU : origin = 0 x000880, length = 0 x000180 XINTF : origin = 0 x000B20, length = 0 x000020 PIE_CTRL : origin = 0 x000CE0, length = 0 x00

10、0020 PIE_VECT : origin = 0 x000D00, length = 0 x000100 FLASH_REGS : origin = 0 x000A80, length = 0 x000060 CSM : origin = 0 x000AE0, length = 0 x000010 CPU_TIMER0 : origin = 0 x000C00, length = 0 x000008 CPU_TIMER1 : origin = 0 x000C08, length = 0 x000008 CPU_TIMER2 : origin = 0 x000C10, length = 0

11、x000008 F2812.cmd14外设寄存器帧132/* Peripheral Frame 1: */ ECAN_A : origin = 0 x006000, length = 0 x000100 ECAN_AMBOX : origin = 0 x006100, length = 0 x000100 F2812.cmd15外设寄存器帧216/* Peripheral Frame 2: */ SYSTEM : origin = 0 x007010, length = 0 x000020 XINTRUPT : origin = 0 x007070, length = 0 x000010 GP

12、IOMUX : origin = 0 x0070C0, length = 0 x000020 GPIODAT : origin = 0 x0070E0, length = 0 x000020 EV_A : origin = 0 x007400, length = 0 x000040 EV_B : origin = 0 x007500, length = 0 x000040 MCBSP_A : origin = 0 x007800, length = 0 x000040 SCI_A : origin = 0 x007050, length = 0 x000010 SCI_B : origin =

13、 0 x007750, length = 0 x000010 SPI_A : origin = 0 x007040, length = 0 x000010 ADC : origin = 0 x007100, length = 0 x000020 F2812.cmd16存储器和寄存器的等待状态名称名称等待状态等待状态说说 明明RAM块块M0和和M10无需设置等待状态无需设置等待状态外设帧外设帧PF00无需设置等待状态无需设置等待状态外设帧外设帧PF10(写操作)(写操作)2(读操作)(读操作)固定数目的等待周期固定数目的等待周期外设帧外设帧PF20(写操作)(写操作)2(读操作)(读操作)固定数

14、目的等待周期固定数目的等待周期RAM块块L0和和L10无需设置等待状态无需设置等待状态Flash015(可编程)(可编程)可通过可通过Flash的等待状态寄存器编程的等待状态寄存器编程SARAM块块H00无需设置等待状态无需设置等待状态引导引导ROM1固定数目的等待周期固定数目的等待周期XINTF154(可编程)(可编程)可通过可通过XINTF寄存器编程寄存器编程提示:提示:Flash和和XINTF的等待状态与的等待状态与DSP时钟频率有关。时钟频率有关。17外设寄存器的进一步说明 C28系列DSP中有些寄存器的内容是受保护的,其目的是为了避免用户程序错误地改变这些寄存器的值。当受保护后,允许

15、CPU对该寄存器进行读操作,但任何写操作均被忽略。如果寄存器是如果寄存器是EALLOW保护的,在对该寄存器进行保护的,在对该寄存器进行写操作前必须首先执行写操作前必须首先执行EALLOW指令使能;而完成指令使能;而完成后执行后执行EDIS指令则可以禁止写操作。指令则可以禁止写操作。183.3 外部扩展接口u F2812的外部接口(的外部接口(XINTF)采用)采用非复用的扩展总线非复用的扩展总线,与,与C240的外的外部接口相似;部接口相似;u F2812的的XINTF映射到映射到5个个独立的存储空间。当访问相应独立的存储空间。当访问相应的存储空间时,就会产生一个片选信号。的存储空间时,就会产

16、生一个片选信号。u 每个空间都可以独立地设置访问建立、有效和跟踪时间,每个空间都可以独立地设置访问建立、有效和跟踪时间,同时还可以通过同时还可以通过XREADY信号来与外设的访问速度和时序信号来与外设的访问速度和时序匹配。匹配。 80318031单片机单片机的外部总线?的外部总线?19外部接口框图 16位位 19位位 XZCS7取决于取决于MP/MP的状的状态态 XINTF20外部接口的时钟配置u XINTFXINTF模块有两个时钟信号,下图给出了模块有两个时钟信号,下图给出了CPUCPU时钟与时钟与XINTFXINTF时钟间的关系;时钟间的关系;u 所有外部扩展接口的所有外部扩展接口的建立、

17、激活和跟踪时间建立、激活和跟踪时间均以时钟均以时钟XTIMCLKXTIMCLK为基准;为基准;u 所有外部接口的访问周期均在所有外部接口的访问周期均在XCLKOUTXCLKOUT的上升沿开始有效。的上升沿开始有效。21对XINTF空间的访问 任何对任何对XINTFXINTF空间的读空间的读/ /写时序都可以分为三个阶段:写时序都可以分为三个阶段:持续的持续的XTIMCLKXTIMCLK周期数(周期数(tcXTIMCLKtcXTIMCLK的周期;的周期;WSXREADYWSXREADY引入的等待周期数引入的等待周期数)缺省值缺省值WS=0WS=0u 建立阶段:所访问空间的片选信号为低电平,产生有

18、效的地址在建立阶段:所访问空间的片选信号为低电平,产生有效的地址在ABAB上;上; u 跟踪阶段:读跟踪阶段:读/ /写信号变为高后,保持片选信号为低电平的一段时间写信号变为高后,保持片选信号为低电平的一段时间; ;u 有效阶段:读操作有效阶段:读操作(/XRD=0)(/XRD=0)数据锁存到数据锁存到DSPDSP;写;写(/XWE(/XWE0)0)操作数据至操作数据至DBDB; u 缺省情况下,建立、有效、跟踪周期设置为最大值,见下表。缺省情况下,建立、有效、跟踪周期设置为最大值,见下表。22访问周期的计算(不使用(不使用XREADYXREADY信号)信号) 13 03 07 03 06 0

19、6 012 13 26 26 412 18 115 116 130 2SYSCLKOUT访问周期访问周期 54SYSCLKOUT23XTIMCLK和XCLKOUT的波形Lead2,Active2,Trail2XTIMCLK=SYSCLKOUT7724XTIMCLK和XCLKOUT的波形Lead2,Active2,Trail2XTIMCLK=SYSCLKOUT/2141425XREADY信号 XREADYXREADY信号信号? u DSPDSP通过检测通过检测XREADYXREADY信号,可以延长信号,可以延长DSPDSP访问外设的访问外设的有效阶段有效阶段; u 在对在对XREADYXREAD

20、Y信号采样时刻,如果信号为低电平,则有效阶段将延长信号采样时刻,如果信号为低电平,则有效阶段将延长一个一个XTIMCLKXTIMCLK周期,然后在下一个周期,然后在下一个XTIMCLKXTIMCLK的上升沿继续采样,直到检测的上升沿继续采样,直到检测到到XREADYXREADY为高电平,完成正常的读为高电平,完成正常的读/ /写周期;写周期; u 器件上所有外设空间共用一个器件上所有外设空间共用一个XREADYXREADY信号,低电平有效;信号,低电平有效;u 每个空间可以独立配置为检测或不检测每个空间可以独立配置为检测或不检测XREADYXREADY信号;信号; u 每个空间可以选择同步或异

21、步检测(每个空间可以选择同步或异步检测(缺省方式缺省方式)XREADYXREADY信号。信号。p 同步检测同步检测:在设定的建立和有效周期结束之后,再对:在设定的建立和有效周期结束之后,再对XREADYXREADY信号采样一个信号采样一个XTIMCLKXTIMCLK周期。这样有效周期至少增加一个。周期。这样有效周期至少增加一个。p 异步检测异步检测:在设定的建立和有效周期结束之后,再对:在设定的建立和有效周期结束之后,再对XREADYXREADY信号采样三个信号采样三个XTIMCLKXTIMCLK周期。这样有效周期至少增加三个。周期。这样有效周期至少增加三个。 26读周期波形(XTIMCLKS

22、YSCLKOUT) 3XTIMCLK1XTIMCLK2异步检测异步检测2同步检测同步检测3/127写周期波形(XTIMCLKSYSCLKOUT)1XTIMCLK 3XTIMCLK同步检测同步检测异步检测异步检测223/128对XREADY信号的讨论1、什么情况下需要XREADY信号? 2、是否有必要使用XREADY信号? 讨论:通过软件可以设置的读写周期范围为: 254个SYSCLKOUT 。如。如果果 SYSCLKOUT150MHz时,对应75MHz2.78MHz。如果一个外设芯片的读写周期为500s,是否需要使用XREADY信号?u 外设速度特别慢,依靠软件插入等待状态无法满足要求;外设速

23、度特别慢,依靠软件插入等待状态无法满足要求;u 一个一个XINTFXINTF区(区(ZONEZONE)的外设较多,速度快慢差异较大。)的外设较多,速度快慢差异较大。u 绝大多数情况下不必使用绝大多数情况下不必使用XREADYXREADY信号,直接将该引脚上拉至高电平;信号,直接将该引脚上拉至高电平;u 对于扩展外部设备较多,且访问速度相差较大的情况,可以将外设按对于扩展外部设备较多,且访问速度相差较大的情况,可以将外设按快慢分组,分别配置到不同的快慢分组,分别配置到不同的XINTFXINTF空间。空间。29XINTF的初始化void InitXintf(void) / Timing for a

24、ll zones based on XTIMCLK = SYSCLKOUT XintfRegs.XINTCNF2.bit.XTIMCLK = 0; / Zone 0 设置写周期时序设置写周期时序 / 缺省为使用缺省为使用XREADYXREADY信号,异步采样方式,信号,异步采样方式, ACTIVEACTIVE必须大于或等于必须大于或等于1 1。 XintfRegs.XTIMING0.bit.XWRLEAD = 1; XintfRegs.XTIMING0.bit.XWRACTIVE = 3; XintfRegs.XTIMING0.bit.XWRTRAIL = 1; XintfRegs.XTIMI

25、NG0.bit.X2TIMING = 0; / Zone0的的Lead/Acitve/Trail时间不加倍时间不加倍 / Zone 2设置读周期时序设置读周期时序 XintfRegs.XTIMING2.bit.USEREADY = 0; / Zone2 Zone2 忽略忽略 XREADYXREADY信号,缺省为信号,缺省为1 1 XintfRegs.XTIMING2.bit.XRDLEAD = 3; XintfRegs.XTIMING2.bit.XRDACTIVE = 7; XintfRegs.XTIMING2.bit.XRDTRAIL = 3; XintfRegs.XTIMING2.bit.

26、X2TIMING = 1; / Zone2Zone2的的Lead/Acitve/TrailLead/Acitve/Trail时间加倍时间加倍30DSP的工作模式 复位时复位时XMP/MCXMP/MC引脚的状态决定了引脚的状态决定了DSPDSP的工作模式:的工作模式: u 如果如果XMP/MC0(微计算机模式,主机微计算机模式,主机/从机从机),使能),使能BootROM,Zone7被屏蔽。此时,片上被屏蔽。此时,片上ROM映射到该存储空映射到该存储空间且中断向量表从间且中断向量表从BootROM中获取,用户可以选择从片上或中获取,用户可以选择从片上或片外存储器引导。片外存储器引导。 p 如果如

27、果XMP/MC1(微处理器模式微处理器模式,从机从机),使能),使能Zone7空间空间(映射到(映射到0 x3FC000),并从外部存储器获取中断向量表。此),并从外部存储器获取中断向量表。此时,为了正确执行代码,必须将复位向量指针指向一个有效的时,为了正确执行代码,必须将复位向量指针指向一个有效的存储空间。存储空间。u 复位后,可以通过复位后,可以通过XINTFCNF2XINTFCNF2寄存器改变工作模式,即从寄存器改变工作模式,即从BootROMBootROM引引导,软后通过软件使导,软后通过软件使XMP/MCXMP/MC0 0,从而可以访问,从而可以访问Zone7Zone7。31XINF

28、的DMA操作 外部接口支持程序外部接口支持程序/数据存储器的数据存储器的DMA传输,如从外部存储器传输,如从外部存储器加载引导程序,加载引导程序,DMA操作由操作由/XHOLD和和/XHOLDA信号控制。信号控制。 DMADMA操作步骤:操作步骤: 外设产生一个低电平信号送外设产生一个低电平信号送/XHOLD/XHOLD引脚;引脚; DSPDSP完成对所有外部接口的访问后将完成对所有外部接口的访问后将/XHOLDA/XHOLDA引脚置为低电平(设置引脚置为低电平(设置XINTCNF2XINTCNF2寄存器);寄存器); 随后随后XINFXINF的总线处于高阻状态(地址、数据、读写与片选信号),

29、的总线处于高阻状态(地址、数据、读写与片选信号),DSPDSP可以继续执行片内程序存储器中的程序;可以继续执行片内程序存储器中的程序; 其它设备可以控制对外部程序、数据存储器的访问;其它设备可以控制对外部程序、数据存储器的访问; DMADMA操作完成后送高电平信号至操作完成后送高电平信号至XHOLDXHOLD引脚。引脚。 提示:提示:DMA过程过程DSP芯片可使外部总线处于三态,但本身并不具备芯片可使外部总线处于三态,但本身并不具备DMA控制能力,需要外设扩展专门的控制能力,需要外设扩展专门的DMA控制芯片。控制芯片。323.4与外部存储器的接口TSSOP44CY7C1021V33特点:特点: 3.3V电压(电压(3.0-3.6V) 高速(高速(10/12/15ns) 片选无效时自动降低功片选无效时自动降低功耗耗200mA200mA5mA33与RAM接口原理图A05A14A23A32A41A544A643A742A827A926A1025A1124A1221A1320A1419A1518/CE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论