网卡也叫网络适配器,是实现计算机进行网络通讯的设备。网卡工作在osi的最后两层,物理层和数据链路层,物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。物理层的芯片称之为PHY。数据链路层则提供寻址机构、数据帧的构建、数据差错检查、传送控制、向网络层提供标准的数据接口等功能。以太网卡中数据链路层的芯片称之为MAC控制器。

MAC控制器和PHY芯片之间的数据交换是通过IEEE定义的标准的MII/GigaMII(Media Independed Interfade,介质独立界面)进行的,MII连接MAC和PHY。这个界面是IEEE定义的。MII界面传递了网络的所有数据和数据的控制。而MAC对PHY的工作状态的确定和对PHY的控制则是使用SMI(Serial Management Interface)界面通过读写PHY的寄存器来完成的。PHY里面的部分寄存器也是IEEE定义的,这样PHY把自己的目前的状态反映到寄存器里面,MAC通过SMI总线不断的读取PHY的状态寄存器以得知目前PHY的状态,例如连接速度,双工的能力等。当然也可以通过SMI设置PHY的寄存器达到控制的目的,例如流控的打开关闭,自协商模式还是强制模式等。

千兆网卡如果使用电缆连接线,对网卡硬件的配置基本上是通过MAC->PHY方式进行的,其中,MAC与PHY的控制和状态信息是通过MDIO总线或者I2C总线进行的,对于网卡的工作模式一般设置为千兆自适应模式。如果使用SPF模块,使用光纤连接的话,主要通过PCS控制寄存器进行操作,网卡的工作模式使用强制设置为千兆模式。

VxWorks千兆网卡驱动开发之认识网卡相关推荐

  1. VxWorks设备驱动开发指南--VxBus And VxBus Device Driver

    8D Spaces Reliability & Stability & Efficiency 目录视图 摘要视图 订阅 VxWorks设备驱动开发指南(二)--VxBus And Vx ...

  2. VxWorks驱动开发:添加网卡驱动

    文章目录 添加ftp服务器组件 添加ping命令 添加ifconfig ftp连接失败 设备ftp挂接的目录为SD卡分区0 添加ipAttach 只有一个网卡 手动添加第二个网卡 ipAttach 2 ...

  3. VxWorks设备驱动程序开发指南---驱动程序的分类

    8D Spaces Reliability & Stability & Efficiency 目录视图 摘要视图 订阅 VxWorks设备驱动程序开发指南(三)---驱动程序的分类 2 ...

  4. windows7以上平台 NDISFilter 网卡过滤驱动开发

    by fanxiushu 2019-01-16 转载或引用请注明原始作者 这里讨论的都是基于WIN7以上平台,NDIS 6.0以上版本的网络驱动. 做个驱动的目的,是因为很早之前,我使用 TDI 和 ...

  5. VxWorks嵌入式操作系统的TrueFFS文件系统驱动开发

    嵌入式系统对执行速度和系统可靠性的要求,决定了嵌入式系统需要一种安全.快速的存储设备,这种设备备同时还需要体积小.容量大.掉电数据不丢失等特点.而Flash存储器恰恰能够满足上述要求.这也使得Flas ...

  6. vxworks驱动开发基础

    Vxworks内核驱动基本结构: 三张表:1. 系统设备表  2. 系统驱动表 3. 文件描述符表 Vxworks 内部对每个设备使用DEV_HDR 数据结构进行表示: Typedef struct ...

  7. STM32驱动开发(二)--USB Device RNDIS虚拟网卡(USB2.0 基础概念讲解)

    STM32驱动开发(二)–USB Device RNDIS虚拟网卡(USB2.0基础概念讲解) 一.简介   本文基于stm32 Rndis实例,github开源, 使用STM32F407单板.结合协 ...

  8. Linux驱动开发(十八)---网络(网卡)驱动学习

    前文回顾 <Linux驱动开发(一)-环境搭建与hello world> <Linux驱动开发(二)-驱动与设备的分离设计> <Linux驱动开发(三)-设备树> ...

  9. 驱动开发基础知识必修-(一)嵌入式开发板的启动过程

    驱动开发必修-嵌入式开发板的启动过程 简介 从打印日志入手 熟悉启动过程 1.执行u-boot程序 2.加载linux内核 3.挂载rootfs 4.加载完后 进入终端(命令输入行) UBOOT 1. ...

最新文章

  1. java list 移除_java 中List删除实例详解
  2. 自适应小波阈值去噪python_基于python的小波阈值去噪算法
  3. 对象androidandroid 开发中 如何取得ListView 的 每条Item 的对象
  4. 一个题目涉及到的50个Sql语句
  5. python编程技术总结_大数据技术学习之Spark技术总结
  6. 《JAVA与模式》之解释器模式
  7. 为癌症生存数据集开发神经网络
  8. linux 0.01内核分析与操作系统设计 百度网盘,《Linux 0.01内核分析与操作系统设计——创造你自己的操作系统》...
  9. Linux shell脚本编写
  10. 五种对称加密算法总结
  11. 答案原文翻译及解析《避凶就吉精明鬼,千变万化心不变》是指什么意思?
  12. [渝粤教育] 无锡商业职业技术学院 团队管理 参考 资料
  13. 作业一:数据软件系统的介绍及spss的操作简介
  14. 前端上传图片并修改名字(数据库的图片名字,并非原图片名字)
  15. java中函数编程的妙用
  16. 拼多多稽查系统升级,现在还有3个稳定出评
  17. 2w字Python列表,全了!
  18. MySQL内部搜索引擎
  19. v06.03 鸿蒙内核源码分析(调度队列) | 内核调度也需要排队 | 百篇博客分析HarmonyOS源码
  20. vim编辑器,应该这样用!

热门文章

  1. 国密SM2,SM3,SM4的前后台(js和java)加解密写法
  2. 艺赛旗助力2022冬奥会“科技冬奥专项”
  3. 用Python采集热门城市景点数据并简单制作数据可视化图
  4. 不吹牛,全网最全程序员效率工具及小技巧
  5. 2020届电子信息类专业保研经历分享
  6. case when then else end的用法
  7. 摹客标注:自动标注一键生成,手动标注自由补充
  8. QCalendarWidget实现某个区间时间凸出显示
  9. 2013年各大IT公司研发类笔试题
  10. android 开关mic,无线麦克风接收器输出接口旁设有MIC/LINE切换开关时