第3章存储器及I.docx
- 文档编号:30020996
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:11
- 大小:426.35KB
第3章存储器及I.docx
《第3章存储器及I.docx》由会员分享,可在线阅读,更多相关《第3章存储器及I.docx(11页珍藏版)》请在冰豆网上搜索。
第3章存储器及I
第3章存储器及I/O空间
C240X芯片有16位地址线,可以访问3个独立的地址空间,总计192K字。
•程序存储器:
64K字
•数据存储器:
64K字
•I/O空间:
64K字,包含片内外设寄存器
LC:
无FLASH
LF:
有FLASH,
片内:
单端口SARAM(共2K字)
双端口DARAM(B0块、B1块、B2块共544字)
改进的哈佛结构,通过3组并行地址总线访问3个空间。
(1)程序地址总线(PAB)
(2)数据读地址总线(DRAB)
(3)数据写地址总线(DWAB)
可同时访问程序和数据空间,一个周期内,CALU可执行多达3次的并行存储器操作。
TMSC206:
片内32KFalsh,B0-256个;B1-256个;B2-32个SARAM4K字
TMSC240:
片内16KFalsh,B0-256个;B1-256个;B2-32个
TMSLF2407A(片内):
32K字Falsh,DARAM(双口RAM)为544个字:
B0-256个;B1-256个;B2-32个。
SARAM(单口RAM)2K字。
3.1片内存储器
3.1.1双端口RAM(DARAM)
544个字,分为三块:
B0、B1、B2。
B0作程序存储器还是作数据存储器,由寄存器ST1的D12位CNF来决定:
CNF=1,B0映射到程序存储器空间
CNF=0,B0映射到数据存储器空间
DARAM:
双访问随机读/写存储器,在单个机器周期内可被访问2次:
CPU在时钟的主相写入DARAM;在时钟的从相从DARAM读出数据;大大的提高了运行速度。
3.1.2单端口RAM(SARAM)
2K字
单访问随机读/写存储器,在单个机器周期内可被访问1次。
例如,一条指令要将A的值保存,且装载一个新值到A在SARAM中需两个时钟周期,而在DARAM中需一个时钟周期,
3.1.3FLASH程序存储器
LF2407:
16K字,映射到程序存储空间。
有片内程序存储器和片外程序存储器之分。
MP/MC*=0,选择片内Falsh存储器
MP/MC*=1,选择片外程序存储器,从片外程序存储器开始执行程序。
1.FLASH程序存储器
特点:
(1)运行在3.3V电压模式;
(2)编程需在VCCP上加有5V电压;
(3)有多个向量,被保护,防止被擦除。
(4)编程由CPU实现。
2.FLASH控制方式寄存器(FCMR)
占用I/O空间FF0Fh。
可对FLASH阵列编程。
3.访问FLASH控制寄存器
内有4个寄存器,控制在FLASH中的操作。
3.2程序存储器
存放指令码、表格、常量,寻址空间为64K字范围。
当某一片外地址被访问时,会自动产生控制信号:
PS*、DS*、STRB*
两个因素决定程序存储器的配置
(1)CNF位
CNF=1,B0映射到程序存储器空间
CNF=0,B0映射到数据存储器空间
(2)MP/MC*脚
MP/MC*=0,选择片内Falsh存储器0000h-7FFFh
MP/MC*=1,选择片外程序存储器0000h-7FFFh开始执行程序。
3.3数据存储器
1.数据存储器映射
三块:
B0、B1、B2。
B0:
256个字(可设置为程序/数据存储器)
B1、B2块:
只能配置为数据存储器
数据存储器映射图如下图所示。
2.数据存储器页面
在直接寻址中,64K空间分为512页,具体页由状态寄存器ST0中的9位数据页指针(DP)的值确定。
因此,在使用直接寻址指令中,必须指定数据页和7位偏移量
9位数据页指针(DP)+7位偏移量
3.第0页数据地址映射
第0页(00h-7Fh)包含一些重要的寄存器:
0004h:
中断屏蔽寄存器IMR。
0006h:
中断标志寄存器IFR。
002Bh-002Fh:
用作测试和仿真
0060h-007Fh:
B2块,32个字
3.4I/O空间
可寻址64K字,I/O空间映射如下。
0000h-FEFFh:
外部I/O空间
FF00h-FF0Eh:
保留
FF0Fh:
FLASH控制方式寄存器
FF10h-FFFEh:
保留
FFFFh:
等待状态发生寄存器
对I/O访问和对存储器访问可用IS*信号作为标志。
用IN或OUT指令,此时,IS*有效,作外部I/O片选。
访问外部I/O,与外部数据、程序存储器复用相同的地址和数据总线。
数据总线宽度16位,若用8位外设,可使用高8位数据线,也可使用低8位数据线。
访问片内I/O时,信号IS*和STRB*变成无效。
INDAT7,0AFEEh;从端口AFEEh读数据到DAT7寄存器
OUTDAT7,0CFEFh;DAT7寄存器的内容输出到CEEFh;端口寄存器
INDAT7,0FFFFh;将数据从等待状态发生器读入
OUTDAT7,0FFFFh;将数据输出到等待状态发生器
3.5外部存储器接口选通
程序空间64KPS*有效
数据空间64KDS*有效
I/O空间64KIS*有效
外部存储器接口信号:
A0-A15:
地址线;
D0-D15:
数据线;
DS*:
数据空间选通;
PS*:
程序空间选通;
IS*:
I/O空间选通;
STB*:
外部空间选通;
R/W*:
读写选通,指明与外围器件信号的传送方向;
W/R*/IOPC0:
读选通;
WE*:
写选通;
MP/MC*:
微处理器/微控制器选择
VIS_OE*:
可视输出可能;可视输出的方式下,外部数据总线为输出时,该引脚有效,可用作外部编码逻辑,以防止数据总线冲突。
ENA_144:
1-使能外部接口信号;0-无外部存储器。
3.6等待状态发生器
如果采用慢速的RAM、外设芯片,须考虑与C240X芯片的速度匹配问题,需使用READY信号、片外延迟电路或内部等待状态产生器来添加等待状态。
3.6.1用READY信号产生等待状态
外设通过使READY信号变为高电平,表示已准备好。
若外设未准备好,则需保持READY为低。
READY为低,LF240X等待一个CLKOUT周期。
再次检查READY,若READY信号没有被使用,LF240X将在外部访问时把READY拉高。
READY脚可用来产生任意数目的等待状态。
3.6.2用等待状态发生器产生等待状态
为控制等待状态发生器,必须写映射IO空间的FFFFh等待状态控制寄存器。
格式如下:
位15∼11:
保留
位10∼9:
BVIS,总线可见模式,提供了跟踪内部总线活动的方式。
00-总线可见模式关(降低功耗和噪声)
01-总线可见模式开;
10-数据到地址总线输出到外部地址总线;数据到数据总线输出到外部数据总线;
11-程序到地址总线输出到外部地址总线;数据到数据总线输出到外部数据总线。
位8∼6:
决定了等待状态(0∼7)的数目。
用于读片外I/O空间。
复位为111,为片外I/O空间的读写设定7个等待状态。
位5∼3:
决定了等待状态(0∼7)的数目。
用于读片外数据空间。
复位为111,为片外数据空间的读写设定7个等待状态。
位2∼0:
决定程序空间等待状态(0∼7)的数目。
复位为111,设定程序空间7个等待状态。
3.7外部存储器接口
程序存储器64K寻址空间。
当访问片内程序存储器时,PS*和STRB*为无效。
仅当访问片外程序存储器时,PS*、STRB*和数据总线与地址总线才有效。
可选用EPROM、EEPROM、Falsh作为片外程序存储器。
选用这些芯片时,注意它们的运行速度问题。
与外部数据存储器的接口电路。
2407外扩16K数据存储器。
关键是控制线的连接。
DSP2407数据存储器
DS*CS*
W/R*OE*
WE*WE*
如外扩16K程序存储器,只需将WE*信号去掉即可。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 存储器