存储器和IO空间word版

上传人:日度 文档编号:164394137 上传时间:2021-01-28 格式:DOC 页数:9 大小:180KB
返回 下载 相关 举报
存储器和IO空间word版_第1页
第1页 / 共9页
存储器和IO空间word版_第2页
第2页 / 共9页
存储器和IO空间word版_第3页
第3页 / 共9页
存储器和IO空间word版_第4页
第4页 / 共9页
存储器和IO空间word版_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《存储器和IO空间word版》由会员分享,可在线阅读,更多相关《存储器和IO空间word版(9页珍藏版)》请在金锄头文库上搜索。

1、5-1 / 9 第第 5 5 章章存储器和存储器和 I/OI/O 空间空间 本章介绍 TMSLF240 x DSP 的程序存储器空间、数据存储器空间和 I/O 空间。TMSLF240 x DSP 具有 16 位地址线,可访问分别访问这三个独立的地址空间,每个空间的容量均为 64K 字: (1)程序存储器空间64K 字; (2)数据存储器空间64K 字; (3)I/O 空间64K 字。 注意注意: :LF240 x DSP 的所有片内外设的寄存器均映射在数据存储器空间。所有片内外设的寄存器均映射在数据存储器空间。 以“LF”为前缀的 DSP 芯片具有 Flash 存储器,而以“LC”为前缀的芯片

2、,片内有 CMOS 工艺的程序存储器,而没有 Flash 存储器。 在 LF2407/ LF2407A 的片内具有 2K 字的单访问 RAM(SARAM)和 544 字的双访问 RAM(DARAM:B0 块-256 字;B1 块-256 字;B2-32 字) 5.15.1 片内存储器片内存储器 5.1.15.1.1 双访问双访问 RAMRAM (DARAM)(DARAM) 所有 LF240 x DSP 片内均有 544 字双访问 RAM(DARAM)。双访问双访问 RARAM M 在一个机器周期内在一个机器周期内 可被访问可被访问 2 2 次次,即在一个机器周期的主相写数据到 DARAM;而在

3、该周期的从相从 DARAM 读出 数据,从而大大提高了运行速度。 544 字双访问 RAM 分为三块:B0、B1 和 B2,该存储器空间主要用来保存数据,但是 B0 块也可以用来保存程序。B0 块配置成数据存储器空间还是程序存储器空间,要由寄存器 ST1 的 CNF 位来决定: (1)CNF=1,B0 映射到程序存储器空间; (2)CNF=0,B0 映射到数据存储器空间。 5.1.25.1.2 单访问单访问 RAMRAM (SARAM)(SARAM) LF2407/LF2407A 的片内有 2K 字的单访问 RAM(SARAM)。单访问单访问 RAMRAM 在一个机器周期内在一个机器周期内 只

4、能被访问只能被访问 1 1 次次。例如,如果一条指令要将累加器的值保存,并且装载一个新值到累加器, 在 SARAM 中,完成这个任务需要两个时钟周期,而在 DARAM 中只需要一个时钟周期。 利用软件可将 SARAM 配置成外部存储器或内部 SARAM。 5.1.35.1.3 FlashFlash 程序存储器程序存储器 片内的 Flash 存储器映射到程序存储器空间。对于 LF2407/LF2407A,MP/引脚决定是MC 访问片内的程序存储器(Flash)还是访问片外的程序存储器。 1 1 FlashFlash 程序存储器程序存储器 Flash 可以被编程(在 15MHz 至 40MHz 的

5、时钟频率范围内)或者使用电擦除的方式多次 使用,以便进行程序的修改和开发。Flash 模块具有如下特点: 运行在 3.3V 电压模式。 对 Falsh 编程时需要在 VCCP上有 5V(5)电压供电。 Flash 有多个向量,用来保护它,防止被擦除。 Flash 的编程是由 CPU 来实现的。 2 2 FlashFlash 控制方式寄存器(控制方式寄存器(FCMRFCMR) 除了 Flash 存储器阵列,Flash 模块还有 4 个寄存器。控制在 Flash 中的操作。在任意 给定的时间内,用户可以访问 Flash 模块中的存储器阵列,也可以访问控制寄存器,但不能 同时访问。Flash 模块有

6、一个 Flash 控制方式寄存器控制方式寄存器来选择两种访问模式。该寄存器映射在映射在 内部内部 I/OI/O 空间的空间的 FF0FhFF0Fh,这是一个不能读的特殊功能寄存器,它可以在 Flash 的存储器阵列 方式下使能 Flash,用来对 Flash 阵列编程。该寄存器的功能如下: 使用该寄存器地址的 OUTOUT 指令指令,可以将 Flash 模块置于寄存器访问模式置于寄存器访问模式,被使用的 数据操作数是无意义的。例如: OUT dummy, 0FF0Fh ;选择寄存器访问方式 使用该寄存器地址的 ININ 指令指令,可以将 Flash 模块置于存储器阵列访问模式置于存储器阵列访问

7、模式,被使 用的数据操作数是无意义的。例如: IN dummy, 0FF0Fh;选择存储器阵列访问方式 5.25.2 程序存储器程序存储器 程序存储器空间用于保存程序代码以及数据表和常数,其寻址范围为 64K,包括了片内 DARAM 和片内 Flash。当一个片外程序存储器地址需要访问时,DSP 会自动产生相应的访问外 部程序存储器地址空间的控制信号(、等)。图 5-1 所示为 LF2407/LF2407A 的程序PSSTRB 存储器空间的映射。 图 5-1 LF2407/2407A 的程序存储器映射 有两个因素决定程序存储器的配置: (1 1)CNFCNF 位。位。CNF 位是状态寄存器 S

8、T1 的第 12 位,决定双访问 RAM(DARAM)配置在数据 存储器空间,还是配置在程序存储器空间。 CNF0 时,256 字的 B0 块被映射到数据存储器空间。 CNF1 时,256 字的 B0 块被映射到程序存储器空间。 在复位时,由于 CNF0, B0 块则被映射到数据存储器空间。 (2 2)MP/MP/引脚。引脚。该引脚决定是从片内 Flash/ROM 读取指令。还是从外部程序存储器MC 读取指令。 MP/0 时,器件被配置为微控制器方式。片内 Flash 可以被访问,器件从片内 MC 程序存储器中读取复位向量。对于 LF2407/LF2407A 芯片,此时访问的是片内程序存储器的

9、 0000h-7FFFh 空间。 MP/1 时,器件被配置为微处理器方式。器件从外部程序存储器中读取复位向MC 量。对于 LF2407/LF2407A 芯片,此时访问的是片外程序存储器的 0000h-7FFFh 空间。 无论 MP/引脚为何值,LF240 x DSP 都是从程序存储器空间的 0000h 单元开始执行程MC 序。 5.35.3 数据存储器数据存储器 LF2407/LF2407A 数据存储器的空间的寻址范围高达 64K 字,32 K 字是内部数据存储器空 间(0000h-7FFFh)。内部数据存储器包括了 DARAM 和片内外设的映射寄存器。另外 32K 字 (8000h-FFFF

10、h)空间的存储器为外部数据存储器。 1 1 数据存储器映射数据存储器映射 芯片内部有 3 个 DARAM 块:B0、B1 和 B2 块。B0 块即可配置为数据存储器,也可配置为 程序存储器。B1 和 B2 块只能配置为数据存储器。B0 块究竟是配置为程序存储器,还是配置 为数据存储器,要根据 CNF 的值来定,前面已经介绍。图 5-2 所示为 LF2407/LF2407A 的数据 存储器空间的映射。 图 5-2 LF2407/LF2407A 的数据存储器映射 2 2 数据存储器页面数据存储器页面 数据存储器可以采用两种方式:直接寻址和间接寻址。当使用直接寻址时,按 128 字 (称为数据页)的

11、数据块来对数据存储器进行寻址。图 5-3 显示了这些块是如何被寻址的。 全部 64K 的数据存储器分为 512 个数据页,其标号从 0511。当前页由状态寄存器 ST0 中的 9 位数据页指针(DP)值来确定。因此,当使用直接寻址指令时,用户必须事先指定数据页, 并在访问数据存储器的指令中指定偏移量,偏移量位数为 7 位。 图 5-3 数据存储器的页面 编程时要注意,访问下面的数据存储器的地址空间是非法的,并会对 NMI 置位。除了以 下地址,任何对外设寄存器映射中的保留地址的访问也是非法的。 0080h-00FFh701Fh-71FFh (CAN 内部的) 0500h-07FFh7230h-

12、73FFh (部分在 CAN 内部) 1000h-700Fh7440h-74FFh 7030h-703Fh7540h-75FFh 7060h-706Fh7600h-77EFh 77F4h-7FFFh7080h-708Fh 3 3 第第 0 0 页数据地址映射页数据地址映射 数据存储器中包括存储器映射寄存器,它们位于数据存储器的第 0 页(地址 0000h- 007Fh),表 5-1 对第 0 页数据地址映射进行详细说明。应用过程中必须注意以下几点: 可以以零等待状态访问两个映射寄存器:中断屏蔽寄存器(IMR)和中断标志寄存 器(IFR)。 测试/仿真保留区被测试和仿真系统用于特定信息发送。因此

13、不能对测试/仿真地址 进行操作。 32 个字的 B2 块用于变量的存储,同时又不会弄碎较大的内部和外部 RAM 块。此处 RAM 支持双访问访问操作,且可用任何数据存储器方式寻址。 表 5-1 第 0 页数据地址映射 地址名称说明 0000h-0003h 保留 0004hIMR 中断屏蔽寄存器 0005h 保留 0006hIFR 中断标志寄存器 0023h-0027h 保留 002Bh-002Fh 保留用作测试和仿真 0060h-007FhB2 双访问 RAM 的 B2 块 4 4 配置数据存储器配置数据存储器 CNF 位决定数据存储器的配置,CNF 位是状态寄存器 ST1 的第 12 位,决

14、定片内的 DARAM 块 B0 块是被映射到程序存储器空间还是被映射到数据存储器空间。 CNF0 时, B0 块被映射为数据存储器空间。复位时,由于 CNF0, B0 块则被映 射到数据存储器空间 CNF1 时, B0 块被映射到程序存储器空间。 5.45.4 I/OI/O 空间空间 I/O 空间的寻址可达 64K 字,图 5-4 为 LF2407/LF2407A 的 I/O 空间地址映射。 图 5-4 TMS320LF2407 的 I/O 空间地址映射 I/O 空间访问的控制信号为。所有 64K 的 I/O 空间均可以用 IN 和 OUT 指令来访问。当IS 执行 IN 或 OUT 指令时,

15、信号变为有效。因此可用信号作为外部 I/O 设备的片选信号。ISIS 访问外部 I/O 端口与访问程序存储器、数据存储器复用相同的的地址总线和数据总线。数据 总线的宽度为 16 位,若使用 8 位的外设,即可使用高 8 位数据总线,也可使用低 8 位数据总 线,以适应特定应用的需要。 当访问片内的 I/O 空间时,信号和变成无效,即这两个信号被驱动到高电平状ISSTRB 态。外部地址和数据总线仅仅当访问外部 I/O 地址时有效。 对所有的外部写操作,需要两个时钟周期,包括在变低电平之前的半个周期和变WEWE 高电平之后的半个周期,这样可以保护外部总线上的数据内容。 下面是使用汇编语言的直接访问

16、 I/O 空间的实际例子。 INDAT2,0AFEEh;从端口地址为 AFEEh 的外设读取数据,并存入 DAT2 寄存器 OUTDAT2,0CFEFh;输出数据存储器 DAT2 的内容到端口地址为 CFEFh 的外设 下面是访问等待状态发生器的寄存器的实例: INDAT2,0FFFFh;从等待状态发生器读取数据到 DAT2 寄存器 OUTDAT2,0FFFFh;将 DAT2 寄存器的数据写入等待状态发生器,使用等待状态发生器 5.55.5 外部存储器接口选通信号说明外部存储器接口选通信号说明 LF240 x DSP 可以访问如表 5-2 所列出的外部存储器和 I/O 空间。当 DSP 外扩存储器和 I/O 时,需要将选通信号与外部存储器和 I/O 的使能引脚相连。 表 5-2 外部存储器空间访问及片选信号 外部存储空间外部存储空间空间大小(字)空间大小(字)选通信号选通信号 程序空间 64K PS 数据空间 64K DS I/O 空间 64K IS LF240 x DSP 的外部存储器和 I/O 空间接口信号的功能描述如表 5-3 所示。 表 5-3

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号