版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DSP存储单元DSP存储器的基本结构C54程序存储器C54数据存储器C54I/O空间DSP系统设计中涉及存储器的相关问题
’C54x的存储空间结构(5402)
寻址能力:
地址引脚:A0~A15(64k)
地址扩展引脚:A16~A19程序扩展专用(1M)
数据引脚:D0~D15配合相应片选引脚:/MSTRB+(/PS(程序)、/DS(数据));
/IOSTRB+/IS(I/O)[PORTR/PORTW]2.数据存储类型
RAM(随机存储器):SRAM/DRAM
ROM(只读存储器):主要存放固化程序和系数表。一般构成程序存储空间,也可以部分地映射在数据存储空间C54的存储空间结构
’C54x共有192K字的存储空间,分成3个相互独立可选择的存储空间:
程序存储空间:用来存放要执行的指令和指令执行中所需要的系数表(数学用表);
数据存储空间:用来存放执行指令所需要的数据;
I/O存储空间:用来提供与外部存储器映射的接口,可以作为外部数据存储空间使用。
’C54x的存储空间结构
’C54x片内存储器资源配置DSP存储器’C541’C542’C543’C545’C546’C548’C549’C5402’C5410’C5416’C5420ROM程序程序/数据DARAMSARAM28K20K8K5K02K2K010K02K2k010K048K32K16K6K048K32K16K6K02K2K08K24K16K16K08K24K4K4K4K16K0
16K16K08K56K
16K16K064K64K
00032K168K
TMS320VC5402存储器配置结构
中断矢量表(内部存储器)FF80HFFFFH保留FF00HFF7FH内部ROMF000HFEFFH外部存储器4000HEFFFHOVLY=1
内部DARAMOVLY=0
外部存储器0080H3FFFHOVLY=1
保留(0页)OVLY=0
外部存储器0000H007FH地址程序存储空间MP/MC=0微计算机模式中断矢量表(外部存储器)FF80HFFFFH±£ÁôFF7FHƬÄÚROM外部存储器4000HOVLY=1
内部DARAMOVLY=0
外部存储器0080H3FFFHOVLY=1
保留(0页)OVLY=0
外部存储器0000H007FH地址程序存储空间外部存储器MP/MC=1微处理器模式地址数据存储空间DROM控制的数据存储空间
0000H005FH0060H007FH存储器映像寄存器暂存寄存器0080H3FFFH内部DARAM(16K×16位)4000HEFFFH外部存储器F000HFEFFHDROM=0
外部ROMDROM=1
内部ROMFF00HDROM=0
外部存储器FFFFHDROM=1
保留
DROM=1保留
DROM=0外部存储器FF00HFFFFHDROM=1内部ROMDROM=0外部存储器F000HFEFFH外部存储器4000HEFFFH内部DARAM(16K×16位字)0080H3FFFH暂存器SPRAM0060H007FH存储器映像寄存器0000H005FH地址数据存储空间4K
程序存储空间
程序存储空间用来存放要执行的指令和执行中所需的系数表。
’C5402共有20条地址线,可寻址1M字的外部程序存储器。它的内部ROM和DARAM可通过软件映射到程序空间。当存储单元映射到程序空间时,CPU可自动地按程序存储器对它们进行寻址。
如果程序地址生成器(PAGEN)产生的地址处于外部存储器,CPU可自动地对外部存储器寻址。
1.程序存储空间的配置
●
MP/MC控制位用来决定程序存储空间是否使用内部存储器。
当MP/MC=0时,称为微计算机模式。
4000H~EFFFH程序存储空间定义为外部存储器;
F000H~FEFFH程序存储空间定义为内部ROM;
FF00H~FFFFH程序存储空间定义为内部存储器。
当MP/MC=1时,称为微处理器模式。
4000H~FFFFH程序存储空间定义为外部存储器。1.程序存储空间的配置
当OVLY=0时,程序存储空间不使用内部RAM。0000H~3FFFH全部定义为外部程序存储空间,此时内部RAM只作为数据存储器使用。
当OVLY=1时,程序存储空间使用内部RAM。内部RAM同时被映射到程序存储空间和数据存储空间。
0000H~007FH保留,程序无法占用;
0080H~3FFFH定义为内部DARAM。
●OVLY控制位用来决定程序存储空间是否使用内部RAM。2.程序存储空间的分页扩展
在’C54x系列芯片中,有些芯片采用分页扩展的方法,使程序存储空间可扩展到1M~8M。
如:’C5409和’C5416可扩展到8M。’C5402有20条外部程序地址总线,其程序空间只能扩展到1M。2.程序存储空间的分页扩展分页扩展技术的特点:①
有20或23条外部程序地址线,可寻址1M或8M存储空间;②有1个额外的存储器映像寄存器—程序计数器扩展寄存器XPC;③
有6条寻址扩展程序空间的指令,用于寻址扩展程序空间。2.程序存储空间的分页扩展
当OVLY=0时,内部RAM不允许映射到程序空间,程序空间分成128页,每页64K。
XPC=127XPC=1XPC=07F0000H………7FFFFFH020000H02FFFFHPage164K010000H01FFFFHPage064K000000H00FFFFHXPC=2Page264KPage12764K2.程序存储空间的分页扩展
为了便于软件进行页切换,设置了6条影响XPC的专用指令:
①
FB[D]——长跳转指令;
②
FBACC[D]——长跳转到累加器A或B所
指定的位置;
③
FCALA[D]——长调用累加器A或B所指
定的位置;
④
FCALL[D]——长调用指令;
⑤
FRET[D]——长返回;
⑥
FRETE[D]——带中断使能的长返回指令。3.内部ROM
’C5402共有4K字的内部ROM。
当MP/MC=0,4K字的ROM被映射到程序空间的地址范围为F000H~FFFFH。
F000H~F7FFH:用户专用程序,由TI公司固化;
F800H~FFFFH:TI公司定义。3.内部ROM
●引导程序。
从串行口、外部存储器、I/O口、主机接口进行自动加载引导程序。
●256字μ律扩展表。●256字A律扩展表。●256字正弦函数值查找表。●保留●中断向量表。F800H~FBFFHFC00H~FCFFHFD00H~FDFFHFE00H~FEFFHFF00H~FF7FHFF80H~FFFFH引导程序μ律扩展表A律扩展表sin函数表保留中断向量表F800HF900HFA00HFB00HFC00HFD00HFE00HFF00HFF80H数据存储空间
1.数据存储空间的配置
当CPU发生的数据地址处于内部存储器的范围内时,直接对内部数据存储器寻址。
当CPU发生的数据地址不在内部存储器的范围内时,CPU自动对外部数据存储器寻址。
’C5402数据存储空间结构
0000H~0050H
存储器映像寄存器
0060H~007FH
暂存器SPRAM0080H~3FFFH
内部DARAM4000H~EFFFH
外部存储器DROM=1
使用内部ROM
F000H~FEFFH
内部ROMFF00H~FFFFH
保留DROM=0
不使用内部ROM
F000H~FEFFH
外部存储器FF00HFFFFHF000HFEFFH4000HEFFFH0080H3FFFH0060H007FH0000H005FH数据存储空间地址存储器映像寄存器暂存器SPRAM内部DARAM(16K字)外部存储器DROM=1内部ROM
DROM=1保留内部RAM前1K的配置:存储器映像的CPU寄存器0000~001FH:特殊功能寄存器存储器映像的外设寄存器0020~005FH:外设寄存器暂存器SPRAM(DP=0)0060~007FH:暂存寄存器DARAM(DP=7)DARAM(DP=6)DARAM(DP=5)DARAM(DP=4)DARAM(DP=3)DARAM(DP=2)DARAM(DP=1)0080~03FFH:7个DARAM数据块1.数据存储空间的配置
数据存储器可以驻留在内部或映射到外部RAM中。
当处理器发出的数据地址处于内部数据存储空间范围内时,可直接对内部数据存储器寻址。
当数据存储器地址产生器(DAGEN)发出的地址不在内部数据存储空间范围内,处理器就会自动地对外部数据存储器寻址。
2.存储器映像寄存器
在’C54x的数据存储空间中,前80H个单元(数据页0)包含有的CPU寄存器、片内外设寄存器和暂存器。这些寄存器全部映射到数据存储空间,称作存储器映像寄存器MMR。存储器映像寄存器MMR:
①
CPU寄存器——特殊功能寄存器;
②
片内外设寄存器;
③
暂存器SPRAM。
特殊功能寄存器
功能:主要用于程序的运算处理和寻址方式的选择和设定。地址范围:0000H~001FH。
’C5402的CPU寄存器共有27个,CPU访问这些寄存器时,不需要插入等待时间。
外设寄存器
功能:用来控制片内外设电路的状态和存放数据。
地址范围:0020H~005FH。
包括串行口通信控制寄存器组、定时器定时控制寄存器组、时钟周期设定寄存器组等。
暂存器SPRAM
功能:用来暂存变量。地址范围:0060H~007FH。2.片内外设寄存器地址符号寄存器名称地址符号寄存器名称20H
BDRR0缓冲串行口0数据接收寄存器35HTRAD
TDM串行口接收地址寄存器
21HBDXR0缓冲串行口0数据发送寄存器36~37H保留22H
BSPC0缓冲串行口0控制寄存器38HAXR0
ABU0发送地址寄存器23H
BSPCE0缓冲串行口0控制扩展寄存器39H
BKX0
ABU0发送缓冲范围寄存器24H
TIM定时设定寄存器3AH
ARR0
ABU0接收地址寄存器25H
PRD定时周期寄存器3BHBKR0
ABU0接收缓冲范围寄存器26H
TCR定时控制寄存器3CH
AXR1
ABU1发送地址寄存器27H保留3DH
BKX1
ABU1发送缓冲范围寄存器28HSWWSR软件等待状态寄存器3EH
ARR1
ABU1接收地址寄存器29HBSCR多路开关控制寄存器3FH
BKR1
ABU1接收缓冲范围寄存器2A~2BH
保留40H
BDRR1缓冲串行口1数据接收寄存器2CH
HPIC主机口(HPI)控制寄存器41H
BDXR1缓冲串行口1数据发送寄存器2D~2FH
保留42HBSPC1缓冲串行口1控制寄存器30H
TRCV
TDM串行口数据接收寄存器43HBSPCE1缓冲串行口1控制扩展寄存器31HTDXR
TDM串行口数据发送寄存器44~57H保留32HTSPCTDM串行口控制寄存器58HCLKMD时钟模式寄存器33H
TCSR
TDM串行口通道选择寄存器
59~5FH
保留34H
TRTA
TDM串行口接收发送寄存器
I/O空间
’C54x除了程序和数据存储空间外,还提供了一个具有64K字的I/O空间。
主要用于对片外设备的访问。可以使用输入指令PORTR和输出指令PORTW对I/O空间寻址。
在对I/O空间访问时,除了使用数据总线和地址总线外,还要用到IOTRB、IS和I/W控制线。
IOTRB和IS:用于选通I/O空间;
I/W:用于控制访问方向。
通用I/O引脚
’C54x芯片为用户提供了两个通用的I/O引脚。
XF:用于程序向外设传输标志信息。
通过此引脚的置位或复位,可以控制外设
的工作。
BIO:用来监控外部设备的运行状态。
在实时控制系统中,通过查询此引脚控制
程序流向,以避免中断引起的失控现象。
DSP系统设计中涉及存储器的相关问题调试阶段,程序和数据都放在RAM中系统固化阶段,程序代码先写入FLASH(片内或片外)片外FLASH的访问速度比较慢,一般需要把运行代码重载到片内RAM运行,这一过程称为BootloaderDSP支持二次定位,即写入程序地址可以选择片内FLASH,运行时可重定位到片内RAMC54片内的ROM由TI公司编写,包含Bootloader启动程序和固定系数DSP的FLASH烧写方法①使用通用烧写器写入。②使用CCS中自带的FlashBurn工具。③用户自己编写烧写Flash的程序,由DSP将内存映像写入Flash。Bootloader(1)EPROM外部存储器存放用户代码,需要用代码转换工具将用户代码转换为二进制目标文件,然后用编程器将其烧写进EPROM(2)Flash存储器存放用户代码,则可直接使用DSP仿真器和CCS(CodeComposerStudio)仿真环境进行在线编程,使用灵活方便,不再需要其它编程设备Bootloader(引导程序)●Thiseliminatestheneedform
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论