关键词不能为空

当前您在: 主页 > 英语 >

AX88796总结

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-01 23:46
tags:

-

2021年2月1日发(作者:布基纳法索英文)






































AX88796


1



MAR0~~MAR7






8


个与多播地址有关的寄存器(寄存 器的值并不是


MAC


地址或任何网络地


址)


,提供对组播数据包的过滤。


MAR0~~MAR7


全设置为


0xff


后,将接受所有的


组播数据包;全设置为


0xff


后,将不接受任 何组播数据包。






在实际的应用当中,用户应根据自己的实际组播地址采用适当 的法则(附于后)计算,


以确定对


MAR0~~MAR7


的某些位置


1


,来过滤性的接受组播数据包。






接收的数据包的目的地址区的首字节为


0x01

时,表示本数据包为多播数据包。



Multicast Address Match Filter


The Multicast


Address Registers provide


filtering of


multicast addresses


hashed by the


CRC


logic.


All destination addresses


are


fed through


the 32 bits CRC generation


logic


and as the


last bit of


the destination address enters the CRC, the 6


most significant bits


of the CRC


generator are


latched.


These 6 bits are


then decoded by a 1 of 64 decode to


index


a


unique


filter


bit


(FB0-63)


in


the


Multicast


Address


Registers.


If


the


filter


bit


selected


is


set,


the


multicast


packet


is


accepted.


The


system


designer


would


use


a


program


to


determine


which


filter


bits


to


set


in


the


multicast


registers.


All


multicast


filter bits that correspond to Multicast Address


Registers accepted by the node are then


set to one. To accept all multicast packets all of the registers are set to all ones.



2


:缓冲环


Buffer Ring





AX8 8796


内部的存储区域总大小为


16K


,以


256bytes


为单元划分成


0x40


个缓冲页,每个


缓冲页的大小都固定为


256bytes


,地址为


0x40~~0x7f


。在网口芯片初始化时,由两个寄存器


PSTART



PSTOP



8


bits


)来指定缓冲环的大小:如果


PSTA RT



PSTOP


分别设置为


0x40



0x55


, 则实际构成缓冲环的缓冲页的地址为


0x40~~~0x54





3


:网络数据包接收



Packet Reception (Write data to memory from MAC)


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



数据包从网络进入网口芯片


AX87 96


内的缓冲环,是


local DMA


的功能。




网络数据包接收时受到


Buffer Management Logic


控制,


Buffer Management Lo gic



3


大功能:

< br>



Ⅰ:


网络数据包的大小为< /p>


64bytes



1522bytes,


Buffer Management Logic


自动连接 缓冲页来


存储大数据包。








网络






据包






存储


< p>





断应




< br>受


还是





Buffer


Management Logic


释放被抛弃的数据包原占有的缓冲区。


< p>
Ⅲ:释放已经被


HOST


读取的数据包所占的缓冲 区(是否意味着由


Buffer Management Logic

< br>来修改


BNRY


寄存器的值?)





Buffer Management Logic


是一种虚拟的管理机制,不需要人为地干预。



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~


与网络数据包接收有关的 寄存器除了


PSTART



PSTOP


外,


还有


CPR



Current Page Register




BNRY



Boun dary Pointer Register





CPR



Current


Page


Register


)指示网 络数据包进入


AX88796


时存放的首个缓冲页。当数据包< /p>


由于某种原因(地址不对,帧结构错误等等)被丢弃后,


CPR< /p>



Buffer Management Logic



制变更存储值。



BNRY



Boundary Pointer Register



指示还没有被

< p>
HOST


读取的数据包对应的首个缓冲页地址。



简而言之:


CPR


相当于一个



写指针,


BNRY


相 当于一个



读指针。



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~


连接多个缓冲页用来存储大数据包



当 一个数据包太大,一个缓冲页


256bytes


容量不够时,< /p>


Buffer


Management


Logic


会自动连接


多个缓冲页用来存储此数据包。这些数据 包必须地址上相连,不能跳跃。在连接时,


Buffer


Management Logic


会自动进行两个比较:



下一个缓冲页的地址



=



=PSTOP










&&










下一个缓冲页的地址



=



=BPR








~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~


每个数据包被成功接收后,在数据包对应的首个缓冲页的前四个字节用于存储一 下信息:接


收状态



Receive Status




下一个数据包的首地 址



Next Packet Pointer




本包总字节数



Receive


Byte Count 0



Receive Byte Count 1




3


者的具体存储顺序见




P29


。< /p>



4


:网络数据包接收时溢出的处理


< /p>


当网络存入


AX88796


的数据太多太 快而


HOST


没有及时读取数据时,


A X88796


发生数据溢出,


处理步骤:





P24




Ⅰ:设置变量


Resend


,读取并存储


CR


寄存器内的


TXP


位的值;



Ⅱ:写


21h



CR


寄存 器,阻止


AX88796


的继续工作;



Ⅲ:等待


1.5ms


(查看

< p>
ISR


寄存器的


RST


位 是否为


0





Ⅳ:清零


RBCR0



RBCR1




Ⅴ:读取步 骤Ⅰ中存储的


TXP


位的值:







若为


0



Rese nd



0


,跳至Ⅵ;




若为


1

< p>
:若


PTX


位或


TXE< /p>


位(


ISR


寄存器)为

< br>1


,则置


Resend



0


,跳至Ⅵ;





PTX


位和


TXE


位(


ISR


寄存器)均为


0


,则置


Resend



1


,跳至Ⅵ;


< br>Ⅵ:设置


TCR


寄存器的


LB1



LB0


位分别为

0



1


,进入


loop_back




Ⅶ :写


22h



CR

寄存器


,


启动


AX88796




Ⅷ:将缓冲环的数据清除;



Ⅸ:对< /p>


ISR


寄存器


OVW

位清零;



Ⅹ:对


TCR


寄存器的


LB1



LB 0


位清零,其他位按需设置;



Ⅺ:若


Resend



1

,对其清零后写


26h



CR


寄存器,若


Resend



0


,则不管;




互感器校验仪项目板上的网口程序不包括



数据溢出处理



部分。



5



DMA


DMA:Direct Memory Access,


直接存储器访问。



-


-


-


-


-


-


-


-



本文更新与2021-02-01 23:46,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/595898.html

AX88796总结的相关文章