DSP之外部设备连接接口之EMIF
Posted Eason.wxd
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DSP之外部设备连接接口之EMIF相关的知识,希望对你有一定的参考价值。
外部设备连接接口包括外部存储器连接接口(EMIF)、主机接口(HPI)等。外部存储器接口主要用来同并行存储器连接,这些存储器包括SDRAM、SBSRAM、Flash、SRAM存储器等,外部存储器接口还可以同外部并行设备进行连接,这些设备包括并行A/D、D/A转换器、具有异步并行接口的专用芯片,并可以通过外部存储器接口同FPGA、CPLD等连接;主机接口主要用来为主控CPU和C55x处理器之间提供一条方便、快捷的并行连接接口,这个接口用来对DSP进行控制、程序加载、数据传输等工作。 这里主要是EMIF。 EMIF输入输出信号图: EMIF为3种类型的存储器提供了无缝接口: 1 异步存储器,包括ROM,FLASH,异步SRAM 2 同步突发静态存储器( SBSRAM ) 3 同步动态存储器( SDRAM ) 异步存储器可以是静态随机存储器( SRAM )、只读存储器( ROM )和闪存存储器等存储器,在实际使用中还可以用异步接口连接并行 A/D 采样器件、并行显示接口等外围设备,但使用这些非标准设备时需要增加一些外部逻辑来保证设备的正常使用。 在使用外部存储器接口时应区分字寻址和字节寻址之间的区别,当 TMS320C55x 访问数据时, CPU 用 23 位地址访问 16 位字,该方式下数据空间被分成 128 页,每页字长 64K 。 CPU 访问程序代码时,用 24 位地址访问 8 位字节, DMA 控制器访问存储器时也采用字节寻址方式。 如果多个请求服务同时到达,EMIF会根据每个请求优先级来进行处理。最高为HOLD,最低为刷新。 对EMIF编程时,必须了解外部存储器地址如何分配给片使能空间,即CE空间,每个CE空间可以同那些类型的存储器连接,以及用那些寄存器位来配置CE空间。 TMS320C55x的外部存储器映射在存储空间的分布,相应于EMIF的片选使能信号,例如CE1空间的存储器,则必须将其片选引脚连接到EMIF的CE1引脚。当EMIF访问CE1空间时,驱动CE1变低。数据页 | 字寻址方式地址范 围 ( 16 进制) | 外部存储器 | 字节寻址方式地址 范围 ( 16 进制) |
第 2 页后 64K 字节 3-31 | 02 8000-1F FFFF | CE0 空间 ( 4M-320K )字节 | 05 0000-3F FFFF |
32-63 | 20 0000-3F FFFF | CE1 空间 4M 字节 | 40 0000-7F FFFF |
64-95 | 40 0000-5F FFFF | CE2 空间 4M 字节 | 80 0000-BF FFFF |
96-127 | 60 0000-7F FFFF | 当 MP/MC=0 CE3 空间长度为 ( 4M-32K )字节 剩余地址空间被片上ROM占用 当 MP/MC=1 CE3 空间长度为 4M 字节 | C0 0000-FF FFFF |
位 | 字段 | 数值 | 说明 |
15~13 | Reserved |
| 保留 |
14~12 | MTYPE | 000b 001b 010b 011b 100b 101b~111b | 存储器类型 8 位宽异步存储器 16 位宽异步存储器 32 位宽异步存储器 32 位宽同步动态存储器 (SDRAM) 32 位宽同步静态突发存储器 (SBSRAM) 保留 |
11~8 | READ SETUP | 1~15 | 读建立时间 |
7~2 | READ STROBE | 1~63 | 读选通时间 |
1~0 | READ HOLD | 0~3 | 读保持时间 |
位 | 字段 | 数值 | 说明 |
15~14 | EXTENED HOLD READ | 0~3 | 读延长保持时间 |
13~12 | EXTENED HOLD WRITE | 0~3 | 写延长保持时间 |
11~8 | WRITE SETUP | 1~15 | 写建立时间 |
7~2 | WRITE STROBE | 1~63 | 写选通时间 |
1~0 | WRITE HOLD | 0~3 | 写保持时间 |
位 | 字段 | 数值 | 说明 |
15~8 | Reserved |
| 保留 |
7~0 | TIMEOUT | 0 1 ≤ N ≤ 255 | 超时字段(同步存储器超时字段无效) 超时功能被禁止 当ARDY信号为低超过N个时钟周期,则发生超时错误 |
所在寄存器 | 位 | 字段名称 | 数值 | 说明 |
片选控制寄存器 | 14~12 | MTYPE | 100b | 32 位宽 SBSRAM |
全局控制寄存器 | 11~9 | MEMFRE Q | 000b 001b | CLKMEM 频率 CLKOUT 频率 CLKOUT 频率除 2 |
全局控制寄存器 | 7 | WPE | 0 1 | 后写使能 禁止后写 后写使能 |
全局控制寄存器 | 5 | MEMCEN | 0 1 | 存储器时钟使能 CLKMEM 保持高电平 CLKMEM 输出使能 |
全局控制寄存器 | 0 | NOHOLD | 0 1 | 外部保持控制 允许外部保持 禁止外部保持 |
SDRAM 容 量 及排列方式 | 使用芯 片 数量 | 配置位 | 占用 CE 空间数 | 边界 / 行地址 | 列地址 | ||
SDACC SDSIZE SDWID | SDRAM | EMIF | SDRAM | EMIF | |||
64M 位 4M x16 位 | 1 | 0 0 0 | 2 | BA[1:0] 和 [11:0] | A[14:12] 、 SDA10 和 A[10:1] | A[7:0] | A[8:1] |
64M 位 4M x16 位 | 2 | 1 0 0 | 4 | BA[1:0] 和 [11:0] | A[15:13] 、 SDA10 和 A[11:2] | A[7:0] | A[9:2] |
64M 位 2M x32 位 | 1 | 1 0 1 | 2 | BA[1:0 和 [10:0] | A[14:13] 、 SDA10 和 A[11:2] | A[7:0] | A[9:2] |
64M 位 2M x32 位 | 2 | 1 0 1 | 4 | BA[1:0 和 [10:0] | A[14:13] 、 SDA10 和 A[11:2] | A[7:0] | A[9:2] |
128M 位 8M x16 位 |
以上是关于DSP之外部设备连接接口之EMIF的主要内容,如果未能解决你的问题,请参考以下文章 DSP和FPGA之间EMIF连接,使用外部中断上升沿触发,持续时间是多少? TMS320DM642的emif(外部存储器接口)的设置结构 |