首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

对于MC9S12XDP512,主程序想放在芯片内FLASH,数据放在芯片外的FLASH,如何处理比较好?

对于MC9S12XDP512,主程序想放在芯片内FLASH,数据放在芯片外的FLASH,如何处理比较好?

谢谢
hi  thank you for your help
S12X的存储器是可以扩展的。不明白你说的如何处理指的是什么。
海纳百川  有容乃大
我的固定数据大约要占用100多兆,S12X的存储器显然不够,需外扩128M的FLASH。我们的设计是固定数据是上位主机通过串口和S12X CPU通信,然后S12X CPU把收到的数据写到128M的FLASH里,所以CPU的主程序应该在CPU内。
但S12如采用外扩总线方式,好像所有程序都放在外存储器里。
请版主赐教,谢谢!
hi  thank you for your help
不是的,你可以将程序和一部分数据放在内部FLASH,将另一部分数据放在外部FLASH中。
海纳百川  有容乃大
是采用外扩总线方式吗?
hi  thank you for your help
对。
海纳百川  有容乃大
采用外扩总线方式,S12X CPU地址总线总共23位,寻址空间为8M。从MC9S12XDP512的data sheet上的memmory mapping control看,只有0x14_0000到0x40_0000才是外部设备的寻址空间,共2.75M;而不是0x00_0000到0x7F_FFFF,8M的寻址空间。这不利于我存储及读取数据。
不知我是否理解正确?
hi  thank you for your help
如何不利于存储及读取数据?内部FLASH和外部FLASH在使用上基本没有什么区别。
海纳百川  有容乃大
谢谢版主的解答。
可能我没表述清楚。
采用外扩模式,主程序放在CPU 片内FLASH内,那CPU 的外扩寻址空间最大是多少,其起始地址和截止地址又是多少。
hi  thank you for your help
S12X整个8M的寻址空间中,只要是内部没有占用的地址,都可以用作外部扩展地址,并非只有2.75M的外部寻址空间。
海纳百川  有容乃大
我有些不明白版主说的“内部没占用的地址”。
主程序放在内部FLASH,那它是占用了还是没占用地址?还有运行主程序时用的内部RAM,它是占用了还是没占用地址?
现在设计急极需要扩展128M的FLASH,但总对MC9S12XDP512外扩总线内容搞得不是很清楚。版主是否有相关例子。
hi  thank you for your help
例如,S12XDP512的0x14_0000~0x3F_FFFF的250K的空间本身就是扩展地址,可以直接使用;另外,S12XDP512的FLASH空间为0x40_0000~0x7F_FFFF,但实际上它的内部FLASH只占用了0x78_0000~0x7F_FFFF的512K的空间,那么剩下的另外的0x40_0000~0x77_FFFF的3.5M的空间都可以作为扩展地址来使用。同样,未使用的RAM和FLASH空间也都可以作为扩展地址来使用。
海纳百川  有容乃大
终于盼来了版主的回应!谢谢版主。
如果我要外扩128M的FLASH,版主可否建议一个方案?万分感谢!
hi  thank you for your help
终于盼来了版主的回应!谢谢版主。
如果我要外扩128M的FLASH,版主可否建议一个方案?万分感谢!
hi  thank you for your help
这只能采用I/O口外扩地址译码器。或者用串行通讯的方式。你也可以看看S12UF32,它可以与128M的FLASH直接接口。
海纳百川  有容乃大
返回列表