微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > 微电子学习交流 > 为什么以太网的padding必须是0?

为什么以太网的padding必须是0?

时间:12-12 整理:3721RD 点击:
为什么以太网的padding必须是0?
在逻辑设计时,觉得padding是前一拍的数据会更加节约资源。
大家怎么看呢?

有这个必须的要求吗?
即使协议有,一般的芯片设计可能也不会用它去检查packet,或者至少能通过配置选择开关。
最费资源的一般是memory,要节约资源,关键在于把架构做好,从芯片系统架构到每个模块的架构。当然了,优秀的逻辑设计是锦上添花。但逻辑设计也要在资源和验证复杂度之间做tradeoff。

是的,协议有写padding是0.
同时我也查到padding不是0,可能会造成系统漏洞的介绍。
只是,我还是觉得有点小题大做了。

padding也可能是1吧 或者是前面最后一个字符的padding?

不知道你有没有看过 Human Centipede 这个片子,
里面的主人公就提出了很好的一个设计并赋予实现,
他发现人类的消化器官并不是100%的有效率,
所以如果能把前一个人的shit给第二个人吃下去,会更加节约资源
不知你怎么看呢?

一些逻辑会基于padding的把,比如scramble之类的,一些协议会靠padding来初始化scramble.
另外特殊的pattern也利于前端时钟同步,agc的调制等,订协议的人总是有考虑的,你要相信制定协议的人比你聪明,呵呵
举个例子,PCI-E的协议里,数据里面其实是可以同步出时钟的,可是协议还是定了时钟信号,其他的串行传输协议基本是不需要传时钟的,你一定会觉得这个是多余的,你能想出来为什么吗?

是不是用于链路进入低功耗状态后,设备内部的一些逻辑使用呢?
这个时钟应该是可选的吧,我看到一些插卡上就没有提供单独的时钟线啊。

PCI-E里面对于时钟很严格,pcie的参考时钟是一个100Mhz的,这样所有的设备可以认为是同源,也是简化实现。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top