首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于从phy层读取位的低级以太网驱动器

用于从phy层读取位的低级以太网驱动器
EN

Stack Overflow用户
提问于 2013-01-21 17:32:05
回答 2查看 856关注 0票数 14

是否可以从标准计算机以太网接口直接读取物理以太网连接接口上的位?

例如,假设我想使用笔记本电脑的以太网插孔作为差分逻辑探头(使用标准以太网电缆)。我是否可以只编写一个驱动程序来获取位,或者驱动程序可以达到多低是有限制的?

物理层本质上只是将比特流发送到设备驱动器,还是进行任何解码,这将影响比特的解释或导致设备故障(例如使用不同的编码方案)。

我猜归根结底是,我们可以通过编写合适的驱动程序将以太网端口用作任何标准的数字差分通信链路,还是仅限于ieee规范(8b/10b,等等)。

EN

回答 2

Stack Overflow用户

发布于 2017-03-02 14:33:52

简而言之,可能不会。

以下是其中一些原因:

在硬件链路层上,计算机和以太网电缆之间实际上没有电气连接,它是由小变压器电隔离的,是电流而不是电压驱动信号,因此这将是第一个要克服的问题,因为您必须在两条线路上发送相当精确的电流,而不是在一条线路上发送电压。Ethernet transformers

CPU硬件接口:然后下一步是,这根本不是由执行代码的控制的,而是由以太网PHY芯片接口控制的,在那里您没有(简单的)方法来刷新和控制它。一些不同的PHY芯片允许你不同的访问级别,但我怀疑你会找到任何允许你直接控制传输接口的芯片,即使它这样做了,它也必须被实现到驱动程序中,这也是不太可能的。Ethernet PHY Controller

也许其他一些解决方案如上所述,如果你想在计算机上有直接的IO控制,最好的解决方案是通过串行或并行端口,也许你可以找到以太网到串行或到串行端口,然后玩它,但这将是数字信号。

你可能想要使用的另一件事是麦克风输入,因为它接受模拟信号,你可以直接控制它,但要注意不要烧毁你的计算机。(我在手机上见过一些银行卡的磁频带)。

票数 3
EN

Stack Overflow用户

发布于 2017-03-03 21:46:16

您可以使用libpcap/WinPcap来完成此操作。然而,你并不能完全自由地选择你在网络上写/读的内容。例如,前同步码和SFD必须仍然存在。这是非常基本的(因为抗噪),以至于典型的硬件不支持任何不同的东西。

如果你想完全控制一切,去找嵌入式硬件,找到一块使用PHY的电路板,它可以为你提供信息,并有能力处理数据速率的处理器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14435737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档