DSP5509存储器划分总结

更新时间:2023-10-06 19:24:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

3.1 Memory

The 5509A supports a unified memory map (program and data accesses are made to the same physical space). The total on-chip memory is 320K bytes (128K 16-bit words of RAM and 32K 16-bit words of ROM).

3.1.1 On-Chip Dual-Access RAM (DARAM)

The DARAM is located in the byte address range 000000h——00FFFFh and is composed of 8 blocks of 8K bytes each (see Table 3?1). Each DARAM block can perform two accesses per cycle (two reads, two writes, or a read and a write). DARAM can be accessed by the internal program, data, or DMA buses. The HPI can only access the first four (32K bytes) DARAM blocks. Table 3?1. DARAM Blocks

BYTE ADDRESS RANGE MEMORY BLOCK 000000h ? 001FFFh DARAM 0 (HPI accessible)? 002000h ? 003FFFh DARAM 1 (HPI accessible) 004000h ? 005FFFh DARAM 2 (HPI accessible)

006000h ? 007FFFh DARAM 3 (HPI accessible) 008000h ? 009FFFh DARAM 4 00A000h ? 00BFFFh DARAM 5 00C000h ? 00DFFFh DARAM 6 00E000h ? 00FFFFh DARAM 7

? First 192 bytes are reserved for Memory-Mapped Registers (MMRs).

3.1.2 On-Chip Single-Access RAM (SARAM)

The SARAM is located at the byte address range 010000h?03FFFFh and is composed of 24 blocks of 8K bytes each (see Table 3?2). Each SARAM block can perform one access per cycle (one read or one write). SARAM can be accessed by the internal program, data, or DMA buses. Table 3?2. SARAM Blocks

BYTE ADDRESS RANGE MEMORY BLOCK BYTE ADDRESS RANGE MEMORY BLOCK

010000h ? 011FFFh SARAM 0 028000h ? 029FFFh SARAM 12 012000h ? 013FFFh SARAM 1 02A000h ? 02BFFFh SARAM 13 014000h ? 015FFFh SARAM 2 02C000h ? 02DFFFh SARAM 14 016000h ? 017FFFh SARAM 3 02E000h ? 02FFFFh SARAM 15 018000h ? 019FFFh SARAM 4 030000h ? 031FFFh SARAM 16 01A000h ? 01BFFFh SARAM 5 032000h ? 033FFFh SARAM 17 01C000h ? 01DFFFh SARAM 6 034000h ? 035FFFh SARAM 18 01E000h ? 01FFFFh SARAM 7 036000h ? 037FFFh SARAM 19 020000h ? 021FFFh SARAM 8 038000h ? 039FFFh SARAM 20 022000h ? 023FFFh SARAM 9 03A000h ? 03BFFFh SARAM 21 024000h ? 025FFFh SARAM 10 03C000h ? 03DFFFh SARAM 22

- 1 -

026000h ? 027FFFh SARAM 11 03E000h ? 03FFFFh SARAM 23

3.1.3 On-Chip Read-Only Memory (ROM)

The one-wait-state ROM is located at the byte address range FF0000h?FFFFFFh. The ROM is composed of one block of 32K bytes and two 16K-byte blocks, for a total of 64K bytes of ROM. The ROM address space can be mapped by software to the external memory or to the internal ROM.

NOTE: Customers can arrange to have the 5509A ROM programmed with contents unique to any particular application. Contact your local Texas Instruments representative for more information on custom ROM programming.

The standard 5509A device includes a bootloader program resident in the ROM. When the

MPNMC bit field of the ST3 status register is set through software, the on-chip ROM is disabled and not present in the memory map, and byte address range FF0000h?FFFFFFh is directed to external memory space. A hardware reset always clears the MPNMC bit, so it is not possible to disable the ROM at reset. However, the software reset instruction does not affect the MPNMC bit. All three ROM blocks can be accessed by the program, data, or DMA buses. The first 16-bit word access to ROM requires three cycles. Subsequent accesses require two cycles per 16-bit word. 3.1.4 Memory Map

The 5509A provides 16M bytes of total memory space composed of on-chip RAM, on-chip ROM, and external memory space supporting a variety of memory types. The on-chip, dual-access RAM allows two accesses to a given block during the same cycle. The 5509A supports 8 blocks of 8K bytes of dual-access RAM. The on-chip, single-access RAM allows one access to a given block per clock cycle. The 5509A supports 24 blocks of 8K byte of single-access RAM. The remainder of the memory map is external space that is divided into four spaces. Each space has a chip enable decode signal (called CE) that indicates an access to the selected space. The External Memory Interface (EMIF) supports access to asynchronous memories such as SRAM and Flash, and synchronous DRAM.

- 2 -

TMS320VC5509A的存储器空间

VC5509A具有16M字节(16MB)的最大可寻址空间,该存储空间是统一的数据/程序空间(即数据和程序空间在一片相同的物理空间中统一编址、统一划分物理空间)。整个16MB的存储空间共分为128个页,每页具有128KB的大小。要熟记一些常用的空间地址大小:如:

从000000—00ffffH,共010000(64KB)的大小,每个页的大小为020000(128KB);从000000—0fffffH,共100000(1MB)的大小。

下面介绍以字节为单位的存储器空间划分:前两个页(从第0个开始记起)即256KB的空间作为片上RAM区,其中包括64KB(000000-00ffffH)的双存取RAM(DARAM)和192KB(010000-03ffffH)的单存取RAM(SARAM)。从第3个页(040000-05ffffH)开始作为外部存储器空间CEx,标准的CEx空间大小为4MB,总共CE0-CE3四个外部存储空间。其分布如下表所示:

存储页 3-31 32-63 64-95 96-126 127的前半页 96-127 127的后半页 字节地址寻址范围(十六进制) 040000-3fffffH 400000-7fffffH 800000-bfffffH c00000-feffffH ff0000-ffffffH (用作片上ROM) 外部存储器 CE0空间 4M-256K的字节 CE1空间 4MB CE2空间 4MB CE3空间 4MB-64KB 64KB片上ROM(可以通过设置MP/MC位使本部分作为CE3空间) 以上便是16MB的存储空间的实际物理分配,哪一部分存放程序,哪一部分存放数据是由用户通过.cmd文件去设置,存放数据的那部分物理空间就称为数据空间,存放程序的那部分空间就称为程序空间。需要特别注意的是:CPU在访问

- 3 -

数据空间和程序空间时采用的寻址方式不同,对程序空间的访问是以一个字节为单位,采用24位的字节寻址;而对数据空间则是以一个字为单位,采用23位的字寻址。此外,在第0页中的前192个字节空间,即000000-0000BF(或对应字地址空间000000-00005FH,96个字)是用来用作存储器映射寄存器,对应着96个CPU寄存器,用户不能够使用该区。

TMS320VC5509A的IO空间

VC5509A的IO空间与数据/程序空间是分开的,采用16位的字寻址,共有64K字的大小。IO空间用于CPU与外设之间的双向通信,相当一部分IO空间用来作为片上外设的寄存器,以用来控制片上外设等。

- 4 -

本文来源:https://www.bwwdw.com/article/xd7d.html

Top