首页 > 编程知识 正文

笔记详情,中兴5950交换机配置telnet登陆实例

时间:2023-05-03 22:42:06 阅读:40656 作者:4837

1 .接口

完成后先去读。0x64寄存器。 值为0x87654321时,按时间顺序okay; 不,更改时机

访问Lan9252接口时

字节1字节2字节3字节4

数据线add [ 0:16 ] add [ 16:16 ] data [ 0:16 ] data [ 16:16 ]

地址线1组00000010001001000000000110

地址线2组010000110001110

3.DMA流程

1 ) CPU初始化状态机

2 ) DMA写入数据的初始化

a )读取地址0x314并跳至判断为data[31]==1状态b; 否则跳至状态c【此步骤是为了判断当前是否正在编写过程数据】

b )写入地址0x314,data[30]=1; 【这个步骤是为了停止当前的写入过程数据】

c )地址0x310,data={length,address}; 【address=0x1400,这是Lan9252写入进程数据区域的起始地址; Length=搬运数据的长度,单位为byte】

d )写入地址0x314、data[31]=1; 【开始写入】

e )读取地址0x314,判断为data[0]==0? 好的,开始搬运DMA数据; 不,在此操作中等待。 【判断是否有可用容量,如果有,则Fifocnt=data[8 :5]】

3 ) DMA数据搬运状态

a )发送第一个数据,fifocnt=fifocnt - 1'b1; 跳到b

b )判断Fificnt==0? 是的,跳c。不,跳d

c )读取地址0x314,取FIFOCNT=data(8:5),跳至d

d )发送以下数据: fifocnt=fifocnt - 1'b1; 跳到e

e )确定发送是否完成,是,跳至f; 否则跳b )

f )读取0x310,判断是否写入当前数据【仅限测试】

g )读0x314,data[31]==0? 是的,跳h。不,我等

h )发送结束

4.DMA问题的故障排除顺序

a )时间序列问题(读寄存器0x64 )

b )流程问题:

I .在DMA开始时,CPU初始化完成,从状态机==8(仅适用于当前工序) ) ) )。

ii .如果DMA不成功,则在DMA完成后,读取0x310以查看数据写入状态

5 .调试局域网9252遇到的问题:

a )时机太快) CS持续时间太短; CS间隔过短)

b )对于DMA,写入0x310的数据,地址和长度相反

c )对于DMA,连续用两个cs写入数据,用三个cs读取fifocnt,然后运送数据时,地址没有变化

d )搬运长度不够

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。