zoukankan      html  css  js  c++  java
  • 网络驱动移植之简述CS8900A网络芯片的基本原理

       CS8900A数据手册:http://www.cirrus.com/cn/products/cs8900a.html

        1、概述

        CS8900A是CIRRUS LOGIC公司生产的低功耗、性能优越的16位以太网控制器,集成了以下五大功能模块:

        (1)、带24毫安驱动的直接ISA总线接口,可选择配置4个中断号和3个DMA通道。

        (2)、片内4K字节RAM,是CS8900A网络芯片的控制寄存器和数据收发缓冲器,可工作在内存映射模式、I/O端口模式或者扩展的DMA模式下。

        (3)、MAC Engine,完全兼容IEEE 802.3以太网标准(ISO/IEC8802-3,1993),主要负责处理以太网数据帧的发送和接收,包括冲突检测、数据帧头的产生和检测,CRC校验码的生成和验证,以及冲突自动重传等功能。

        (4)、串行EEPROM控制器,可直接外接EEPROM芯片,用于存储相关配置信息,并且这些配置信息在启动时能被自动载入CS8900A。

        (5)10BASE-T滤波收发器以及适用于10BASE-2、10BASE-5和10BASE-FL等三种以太网类型的AUI收发器。

        CS8900A的内部结构图如下:

     

        2、片上4K字节RAM的映射模式

        (1)、片上4KB内存(被称作PacketPage)其实质是控制CS8900A运行的各种寄存器(注意它们的位数并不一样,不像S3C2410里的寄存器都是32位的),这些寄存器被分为五类,详情请参考以下各表(第1列是寄存器在RAM中的偏移地址,第2列是寄存器的大小,第3列是寄存器的操作权限,第4列是寄存器的功能说明)。

        总线接口寄存器:

     

        状态/控制寄存器:

     

        其中包含16个配置/控制寄存器(每个寄存器16位)和16个状态/事件寄存器(每个寄存器16位)。

        发送参数寄存器:

     

        地址过滤寄存器:

     

        数据帧收发寄存器:

     

        CS8900A接收的数据帧就临时存放在以0x0404开始的位置,将要发送的数据帧就被临时存放在以0x0A00开始的地方。

        关于这些寄存器的作用及其每位的详细说明请参考CS8900A的数据手册。

        (2)、内存映射模式

        当CS8900A被配置为内存映射模式时,片上4KB内存被直接映射到主机内存一个连续的4KB区域中,这样主机就可以像使用自己的内存一样直接使用这个片上4KB内存。举例,如下图(Memory Base Address寄存器设为0):

     

        (3)、I/O映射模式(默认模式)

        当CS8900A被配置为I/O模式时,主机只能通过8个被映射到主机I/O空间的16位的I/O端口来间接地访问片上4KB内存。S3C2410没有所谓的I/O空间,所以这8个16位I/O端口也被映射到其CPU可直接访问的内存空间中。举例,如下图:

     

        说明:上图中的偏移量指的是0x0000到0x000E;I/O模式基地址的默认值为0x300,存放在I/O Base Address寄存器中,是可以修改的。

        在I/O模式下,CPU可以直接访问这8个16位的I/O端口,但访问片上4KB内存时只能通过PacketPage Pointer和PacketPage Data(Port 0用于16位数据,和Port 1一起可用于32位数据)等端口间接地访问。例如,先把片上4KB内存上的偏移地址0x0120写入PacketPage Pointer端口,然后就可以通过PacketPage Data端口读写0x0120这个寄存器。

  • 相关阅读:
    Ignatius and the Princess II(全排列)
    中缀式变后缀式
    前缀式计算(前缀表达式)
    Mysql中的锁机制详解
    Mysql关于事务并发带来的问题
    第三方实用API接口汇总
    Mysql 性能优化Explain详解
    Mysql性能分析工具 SHOW PROFILE、 SHOW STATUS
    Mysql慢查询分析
    【数字图像处理】霍夫变换实现
  • 原文地址:https://www.cnblogs.com/Ph-one/p/6422406.html
Copyright © 2011-2022 走看看