有关tidsp的emif接口的两个问题

有关tidsp的emif接口的两个问题

ID:29771182

大小:235.00 KB

页数:7页

时间:2018-12-23

有关tidsp的emif接口的两个问题_第1页
有关tidsp的emif接口的两个问题_第2页
有关tidsp的emif接口的两个问题_第3页
有关tidsp的emif接口的两个问题_第4页
有关tidsp的emif接口的两个问题_第5页
资源描述:

《有关tidsp的emif接口的两个问题》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、有关TIDSP的EMIF接口的两个问题:地址总线不从零开始问题及寻址范围问题作者:JBB0523(彬彬有礼) 示例芯片:TMS320C6416EMIF,即ExternalMemoryInterFace,中文译为外部存储器接口。 EMIF可谓是困扰了我很久的一个接口。当然,相比于SPI,UART,I2C等总线协议来说,EMIF相对来说复杂一些…… ========================两个问题============================切不说EMIF怎么去用,单就表面的两个问题就能让人思考好久,但仍不得其解:1)6416中共有EMIFA和EMIFB两个E

2、MIF接口,但有一个问题,为什么EMIFA的地址总线是从AEA3到AEA22共20位,EMIFB的地址总线是从BEA1到BEA20共20位,按理来说这种总线都是从0开始的呀,这到底是怎么回事?2)TI文档《TMS320C6414,TMS320C6415,TMS320C6416FIXED-POINTDIGITALSIGNALPROCESSORS(SPRS146N)》中的表3部分如下所示:在表3中可以看到,对于EMIFB的每个CE片选空间,共有64MB的寻址空间;对于EMIFA的每个CE片选空间,共有256MB的寻址空间。但是,请注意问题1中的提到了无论对于EMIFA还是EMI

3、FB均只有20根地址线,我们可以计算一下,2^20=1M的寻址空间,这64MB和256MB到底是指什么呢? 对于高手来说当然弄懂也许是小问题,但对于初次接触这类问题的初学者来说,也许琢磨很久也弄不明白,我就是后者! ========================问题的答案============================为了解释以下问题,首先明确一个单位度量:字节=8bit,半字=16bit,字=32bit,双字=64bit解答问题1:我们再次来理一理EMIF接口:EMIFA有AEA3~AEA22共20根地址线和AED0~AED63共64根数据线,也就是说数据总结是

4、“双字”的,再注意一下表3中有关寻址范围的单位是BYTES,一个双字等于八个字节,而如果寻址八个字节则需要3位地址线。嗯,这就对了,EMIFA的地址总线无低三位,其实是因为它的数据总线是64位的缘故,即数据总线对数据的操作是以八个字节为单位的,所以根本没必要再包含低三位的地址线了……同理,对于EMIFB,数据总线为16位,即数据总线对数据的操作是以半字为单位的,所以根本没必要包含最低位地址线了……当然,虽然EMIFA有64位数据线,我们可以选择使用EMIFA的低32位,或者是低16位,或者是低8位;EMIFB有16位数据线,我们可以只选择使用它的低八位; 以EMIFB使用1

5、6位数据总线为例,我们要在DSP中使用EMIFB时,访问的地址是偶数,比如0,2,4等等,再具体点说吧,使用EMIFB的CE2片选的地址范围,我们可以这样在CCS中编程使用EMIFB接口:*(shortint*)(0x68000000)=0x11;(shortint*)(0x68000000)是将0x68000000强制类型转换成shortint型的指针类型,即得到指向地址0x68000000的指针,而地址0x68000000中存是一个16bit的数据(其实是和0x68000001合在一起了吧);*(shortint*)(0x68000000)则是取出地址0x6800000

6、0中存储的值;那么这时EMIFB的地址总线上是什么情况呢?访问地址0,当然20位地址总线都是0了;但若是*(shortint*)(0x68000002)呢?注意,这时地址总线是1而不是2,因为地址总线是从BEA1开始的,而不是BEA0!这时自然就出现了第2个问题,下面我们来解答。 解答问题2:首先看一个TI官方文档:《TMS320C6000DSPExternalMemoryInterface(EMIF)ReferenceGuide【SPRU266E】》,这个文档一开始就讲了很多存储器类型,本来是讲EMIF接口的,讲存储器干吗?下面看表4-3 注意表中的第一列是memoryt

7、ype,即存储器类型,共有三种,异步静态RAM(ASRAM),可编程同步存储器,同步动态RAM(SDRAM)然后再注意第三列是maximumaddressablebytesperCEspace,即每CE片选空间最大可寻址字节数,其中对于前两种类型的存储器都是对应相同的,但对于SDRAM来说则变为了前面两者的32倍! 再看表4-3,对于memorywitdth为16和64的请况,我们可以很容易作出如下计算:20根地址线,寻址范围为2^20=1M;对于EMIFA来说,他的数据总线为双字(8bytes),则它的寻址字节数

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。