在DM9000接受数据的时候一般采取的是中断的方式,这样子比较高效但是我们上位机发生数据给我们的dm9000网卡芯片的时候,接受中断是怎么产生的呢:
数据包接收功能是 DM9000 芯片实现网络功能的基础,在接收数据时采用中断方式,即当有数据到来并在 DM9000 内部 CRC 校验通过后会产生一个接收中断,中断发生时可以将 DM9000 所接收到的数据包读出并交由上层协议进行处理。接收到的数据在经过了硬件部分的 CRC 校验之后存放在 RX FIFO 中,在 DM9000中的内部地址 0x0C00-0x3FFF(13K byte)。在每一个接收到的数据包的前面都有一个 4bytes 的头,这四个字节是01h,status,byte_count_low,byte_count_high.