在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!)    创芯人才网--重磅上线啦!
查看: 9712|回复: 19

请教mips cpu地址映射的问题?

[复制链接]
发表于 2006-7-2 14:58:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
mips体系结构中,地址空间可以分为kuseg,k0seg,k1eg,k2seg.其地址范围我也就不说了,相信大家都知道的。关于虚拟地址和物理地址的映射,我有一个问题。在k1seg中,需要把0xa000_0000-0xbfff_ffff映射为0x0000_0000-0x1fff_ffff,那么这个地址映射是通过硬件来完成的,还是通过软件来完成的阿?因为这个地址范围包含了0xbfc0_0000,它需要映射到物理地址为0x1fc0_0000.而这个地址是mips cpu的入口地址,cpu启动的时候,没有任何的软件而言,所有,我想应该是直接通过硬件把高位清零?对么?那么,kuseg,k0seg,k2seg当中的地址映射是不是通过软件来完成的?

还有,好像k0seg也是要把地址映射为0x0000_0000-0x1fff_ffff.这不是跟k1seg映射的物理地址冲突么?我看资料说,访问这段地址是通过cache来完成的。
发表于 2006-7-11 15:32:27 | 显示全部楼层
所有,我想应该是直接通过硬件把高位清零?对么?
Re:是通过硬件直接映射的。
那么,kuseg,k0seg,k2seg当中的地址映射是不是通过软件来完成的?
Re:不确切记得这几个段中每一个段的映射方法;但如果是unmapped空间,则通过硬件直接映射;如果是mapped空间,则通过tlb进行虚实地址转换,应该是软硬件结合的吧。另外,有一个段的地址空间是否mapped可通过config寄存器进行控制,不记得是哪个段的,好像是k0seg。
还有,好像k0seg也是要把地址映射为0x0000_0000-0x1fff_ffff.这不是跟k1seg映射的物理地址冲突么?我看资料说,访问这段地址是通过cache来完成的。
Re:允许不同段的逻辑地址映射到相同的物理地址。

[ 本帖最后由 bigbird 于 2006-7-11 16:55 编辑 ]
发表于 2007-9-30 11:22:48 | 显示全部楼层
非常感謝,一語驚醒夢中人啊,哈哈~
发表于 2007-10-6 15:43:29 | 显示全部楼层
K0 K1就是一个是cached, 一个是un-cached。 比如你要给dma数据, 方便的话就可以直接用un-cached指针拷贝数据, 否则还需要刷对应的cache-line的。
发表于 2007-12-7 16:10:30 | 显示全部楼层
这个地址映射的问题,看了这么长时间的mips还是不清出,唉
发表于 2007-12-10 13:45:42 | 显示全部楼层
其实只不过是MIPS的处理器在这点上比其他的处理器多做了工作而已。而这些工作在其他处理器中需要软件自己来做。我觉得内部的道理想通了也就明白了,大家的工作原理其实还是一样的。
发表于 2008-2-21 13:41:35 | 显示全部楼层

OK

Thank you!
发表于 2008-3-30 13:55:29 | 显示全部楼层
晕了,搞不明白
发表于 2008-4-6 15:43:43 | 显示全部楼层
kseg0和kseg1的区别一个是经过cache,一个不经过cahe。我们经常看到在mips中,flash的起始地址是0xBFC00000, 这个地址是不经过cache的,因为系统刚刚启动的时候,cache还没有初始化ok,  所以flash的起始地址都是uncache的。
头像被屏蔽
发表于 2008-4-8 17:32:35 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /3 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-19 15:35 , Processed in 0.028907 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表