|
|||||||||||
| 技术交流 | 电路欣赏 | 工控天地 | 数字广电 | 通信技术 | 电源技术 | 测控之家 | EMC技术 | ARM技术 | EDA技术 | PCB技术 | 嵌入式系统 驱动编程 | 集成电路 | 器件替换 | 模拟技术 | 新手园地 | 单 片 机 | DSP技术 | MCU技术 | IC 设计 | IC 产业 | CAN-bus/DeviceNe |
TMS320vc5402 数据空间,程序空间相关问题,内行人请进 |
| 作者:dsp_step 栏目:DSP技术 |
请牛人指教: 在5402中 (1)程序空间和数据空间可否重叠?如果可以在什么情况下可以? (2)当FLASH空间足够大时,多余的空间可以作为外部数据区,是不是说明数据空间可以扩展,那么怎么使数据存到FLASH中呢? (3)在5402的datasheet中,4000后是映射到external的,请问如果我分配这部分空间给PAGE1,是映射到falsh里的吗?只有几十K。 |
| 2楼: | >>参与讨论 |
| 作者: dellxp 于 2005/5/23 8:49:00 发布:
所谓扩展好像是在程序空间 |
|
| 3楼: | >>参与讨论 |
| 作者: dsp_step 于 2005/5/23 15:03:00 发布:
to:dellxp 你认为程序空间与数据空间可否重叠呢?这是我一直没搞懂的一个问题 |
|
| 4楼: | >>参与讨论 |
| 作者: 明根兵 于 2005/5/23 17:16:00 发布:
可以的 |
|
| 5楼: | >>参与讨论 |
| 作者: yang96381 于 2005/5/24 15:06:00 发布:
呵呵,采用哈佛结构,分开的 |
|
| 6楼: | >>参与讨论 |
| 作者: dsp_step 于 2005/5/24 21:02:00 发布:
说得没错 多谢大家指点: 能重叠的话,也就是说cmd中的PAGE0与PAGE1中的数据可以重叠的咯? 在数据空间中,从4000到efff是映射到external的,那么这个external是指的FLASH吗?不然哪来的物理空间与64k相对应,16k加4k也不过20k。 |
|
| 7楼: | >>参与讨论 |
| 作者: dsp_step 于 2005/5/24 21:12:00 发布:
补充一问: 数据空间与程序空间能重叠的话,是不是就是由MP/MC,DROM,OVLY在控制的? 重叠在一起的程序空间和数据空间,在物理存储器中数据是怎么存放的呢,是不是虽然两个空间重叠在一起,但是存放在不同的物理空间中?我认为这样解释合理点 |
|
| 8楼: | >>参与讨论 |
| 作者: dellxp 于 2005/5/27 9:59:00 发布:
好像物理上也不分开,映射的就是实际的物理空间 最好要分开,为什么非要重叠呢?哈哈 CMD我也不是很明白,这次自己要好好的看看了,哈哈 |
|
| 9楼: | >>参与讨论 |
| 作者: dsp_step 于 2005/5/27 10:17:00 发布:
谢谢dellxp 我在做vc5402的bootload时,遇到过这样一个问题: 在cmd文件中对-e 选项的理解,有几种说法,有说-e选项“是程序中断向量的入口点”;还有种说法:-e是“装入引导表后程序运行的起始地址”,是不是这两种说法实际上是一样的? -e是中断向量的入口地址0xff80,还是_c_int00处对应的地址(一般是0x8000),不太理解,请问你有什么看法 |
|
| 10楼: | >>参与讨论 |
| 作者: gigs 于 2005/5/27 14:24:00 发布:
我也有同样问题 我认为重叠在一起的程序空间和数据空间,虽然两个空间重叠在一起,但是存放在不同的物理空间中的,只是由于采用哈佛结构,访问由总线对他们进行控制。 斑竹能给点解释吗? |
|
| 11楼: | >>参与讨论 |
| 作者: dsp_step 于 2005/5/30 12:42:00 发布:
有高手能解释一下上面的一些问题么 斑竹大哥能发表一下意见就最好了,谢谢! |
|
| 12楼: | >>参与讨论 |
| 作者: kvan 于 2005/5/31 10:04:00 发布:
FLASH BOOT 怎么那么多人问,很少人回答的!难道高手都隐掉了!假如系统采用并行8位BOOT方式,FLASH的数据空间是0000H-FFFFH,程序空间地址为0000H-FFFFH,01000H-01FFFFH,为什么数据空间地址和程序空间的地址都为0000H-FFFFH!在物理连接上,FLASH只有18条地址线呀!怎么样区分数据和地址空间! |
|
| 13楼: | >>参与讨论 |
| 作者: dsp_step 于 2005/5/31 16:03:00 发布:
kvan你的FLASH是什么型号的? 我采用的是16位boot模式,我的5402dsk上的FLASH是AM29LV800B的地址线有19根,有8M的存储空间,你的FLASH有18条地址线,那么是不是有4M 的存储空间呢,但是就是不知道怎么区分程序,数据空间的,难道就是根据初始化寄存器来设定的? |
|
| 14楼: | >>参与讨论 |
| 作者: ftn2 于 2005/6/7 0:43:00 发布:
关注此贴! |
|
| 15楼: | >>参与讨论 |
| 作者: gigs 于 2005/6/7 16:25:00 发布:
顶一顶,为什么这个问题一直悬而未决呀,高手都隐了吗~ |
|
| 16楼: | >>参与讨论 |
| 作者: wgg 于 2005/6/7 17:13:00 发布:
我觉得上面的问题书上说得很清楚吧 |
|
| 17楼: | >>参与讨论 |
| 作者: 指南针 于 2005/6/7 19:14:00 发布:
datasheet行清楚啊 |
|
| 18楼: | >>参与讨论 |
| 作者: gyfeng 于 2005/6/8 16:52:00 发布:
我这么做过 程序和数据空间是可以重叠的,不用IS和DS,只用MSTRB就可以了,这样不管访问程序还是就数据空间,都会到这里了,当然,片内优先,所以与内部数据区重叠地址的那部分外部存储器是访问不到的。 上面这种做法就可以把外部多余的FLASH做为数据存储器,关键是你的FLASH支持不支持自编程功能,这时是用在FLASH里面跑的程序来对另一部分编程,如果FLASH一进入编程状态就整片禁止读取,你上那里读程序代码。 片内没有的分当然映射到片外了。 |
|
| 19楼: | >>参与讨论 |
| 作者: dsp_step 于 2005/6/9 19:04:00 发布:
谢谢gyfeng,再请教请教 请问MSTRB是什么?以前没有接触过这个名字,见笑了。还有怎样才能知道FLASH是自编程的,我的FLASH型号是AM29LV800B的,不知是不是属于自编程的那种,datasheet中是哪部分说明这一点的? |
|
| 20楼: | >>参与讨论 |
| 作者: yang96381 于 2005/6/10 16:49:00 发布:
呵呵,不是很容易的!! |
|
| 21楼: | >>参与讨论 |
| 作者: victorymay 于 2005/6/10 17:55:00 发布:
关注 怎么做 |
|
| 22楼: | >>参与讨论 |
| 作者: gyfeng 于 2005/6/13 16:41:00 发布:
再次回复 MSTRB是MEMORY选通线,一般是用IS或DS做外部程序或数据存储器的片选线,用MSTRB做读写有效线(当然还需要R/W方向线),访问外部存储器空间时两个都会有负脉冲出来的,你可以看看5402的时序图。 至于什么芯片能自编程,我只知道肯定有,但我也没用过,一般数据手册的首页肯定做为特点列出来的,肯定要选新一点的,老的不行。 |
|
| 23楼: | >>参与讨论 |
| 作者: gyfeng 于 2005/6/15 16:48:00 发布:
回复MSTRB MSTRB是存储器选通,一般接芯片的E端,IS和DS一般连CS端,看看手册就知道了。自编程FLASH肯定有,但我没用过,应该在首页的特点里面会提到。 |
|
| 24楼: | >>参与讨论 |
| 作者: hoon 于 2005/6/16 14:09:00 发布:
哎,高手们都不出声了。 我自学dsp也有几个月了,小程序也编过几个了,可能都没有真正入门,但是还是有一点心得的。对于1楼的问题,我的看法是: 1、程序空间和数据空间是独立的。所以二者基本是可以重叠的。不过要注意:片内16K DARAM可同时被映射到程序空间和数据空间,但是一旦分配给程序空间的部分就不能再分配给数据空间了。 2。数据空间是可以扩展的。一般通过CPLD就可以了,通过存储器分页设置进行扩展。 3、4000后是映射到external的,分配这部分空间给PAGE1,是映射到falsh里的,通过分页设置可以突破64K的限制。 这是我的理解,还请高手指正啊。 |
|
|
|
| 免费注册为维库电子开发网会员,参与电子工程师社区讨论,点此进入 |
Copyright © 1998-2006 www.dzsc.com 浙ICP证030469号 |