硬件
- 控制器侧
SROM controller
无SFR寄存器(不用配置SROM)
内存范围 : 0x1800_0000 0x1FFF_FFFF 128MB SROMC Bank 1
硬件接口 : SRAM接口
- 设备侧
DM9000A + 水晶头座子
寄存器个数 : 46个
内存范围 :
无 (可以根据访问的地址来控制CMD线,从而来选中寻址端口)
但是有寻址端口 // CMD是 地址线上的一条
index port // CMD=0
data port // CMD=1
在 OK6410A 的电路图上 DM9000A 的 CMD 管脚 接了 S3C6440 的 XM0ADDR2
所以只要访问地址的 bit[2] 为 0 , 则 选中 index port
所以只要访问地址的 bit[2] 为 1 , 则 选中 data port
软件
SRAM 接口 不需要初始化, 所以直接读写内存即可
此代码只是实现了 DM9000A 的 标识寄存器的 读取,并没有实现网络协议栈.
https://github.com/lisider/ok6410-rawcode/tree/master/4_ethernet