关于C8051的 EMIF 工作模式选择?

2020-02-01 16:21发布

如图:

未命名.jpg (112.41 KB, 下载次数: 0) 下载附件 2013-1-8 11:32 上传

现在我的C8051F120外接4个rtl8019(同时连接的还有FPGA), 通过地址线控制, 假设(具体没看)四个网卡芯片对应的地址分别是0000-0FFF,  1000-1FFF, 2000-2FFF, 3000-3FFF.

该如何选择上面的四个模式? 全部当做片外XRAM用? 我想的是第四种模式, 但是, 如果这样, 编译器将程序的变量和数组放在哪里? 片内有 8KB 的 XRAM, 但是会不会和上面的四个地址冲突(也就是片外XRAM地址冲突)?

同事问的, 我也不大明白, 不会解释, 希望前辈们解释一下.谢谢了.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
zpxa001
1楼-- · 2020-02-01 21:14
本帖最后由 zpxa001 于 2013-1-8 14:49 编辑

C8051F120的数据空间包括片内256字节的IDATA RAM(如同传统51单片机)和片内8K字节的XRAM,所以选择第四种模式并不用担心编译器无法为变量分配空间,只是这种情况下片内的8K XRAM就不能用了,XRAM空间只保留给了连接的4个外围设备(RTL8019)。要想使用片内的8K XRAM,可使用模式2或模式3,当然此时4个外设的地址分配会有不同。
monkerman
2楼-- · 2020-02-02 02:09
C8051F12x-13x中文版.pdf (2.03 MB, 下载次数: 3) 2013-1-8 14:26 上传 点击文件名下载附件
C8051F12x-13x中文版
monkerman
3楼-- · 2020-02-02 04:08
zpxa001 发表于 2013-1-8 14:48
C8051F120的数据空间包括片内256字节的IDATA RAM(如同传统51单片机)和片内8K字节的XRAM,所以选择第四种模 ...

也就是说,模式2/3, 我保留0x2000(8KB)以内的地址共片内自带的XRAM用, 剩余空间供片外接的XRAM用? 这样, 内部自带的XRAM可用与程序数据的保存, 而且外部的地址(>0x2000)操作也不会和其冲突?
这样我就得将rtl8019的操作地址更改不让其在0x2000以内. 是吧?
zpxa001
4楼-- · 2020-02-02 08:20
 精彩回答 2  元偷偷看……
monkerman
5楼-- · 2020-02-02 13:08
zpxa001 发表于 2013-1-8 15:59
是这样的,注意一下模式2和模式3的区别:前者是Split Mode without Bank Select,后者是Split Mode with  ...

知道了! 谢谢哈!
zpxa001
6楼-- · 2020-02-02 17:37
不客气呵

一周热门 更多>