请问:SPI I2C USB这类总线速度的本质是什么?

[复制链接]
10973|17
 楼主| 風神 发表于 2011-10-24 23:51 | 显示全部楼层 |阅读模式
协议中的速率规定,里面肯定有根本的原因的。好奇心,比较想寻根究底,跟大家探讨一下
相信哥咯 发表于 2011-10-25 01:16 | 显示全部楼层
本质是jj
ejack 发表于 2011-10-25 07:30 | 显示全部楼层
最高速率的本质是物理层扛不扛得住。
因此USB>SPI>I2C。
gx_huang 发表于 2011-10-25 07:46 | 显示全部楼层
速度要信号的波形。
高速USB是差分类似模拟的信号,速度快。
SPI/I2C是数字信号,对于接口信号,数字的肯定比模拟的要慢。因为传输通道的频响是有限制的。
所以要远距离快速通信,一般把数字信号调制到模拟的信号。
 楼主| 風神 发表于 2011-10-25 08:08 | 显示全部楼层
LS,USB的模拟信号怎么包含数字信息?
SPI 为什么可以比 I2C 快?
yhn1973 发表于 2011-10-25 10:37 | 显示全部楼层
I2C的速度为什么不搞快些,SPI的速度都到50MHz了,I2C还是到1MHz,10年来没一点长进。
linqing171 发表于 2011-10-25 11:51 | 显示全部楼层
I2C 的长处是超级低廉,而且是协议简单的总线。
spi是端口,不是总线。 USB协议复杂。

I2C因为跨电平的标准,所以是OC 上拉的,上拉高电平驱动能力很弱,所以决定了他跑不快。但是不影响它在低速的场合应用。本来他面向的就是慢速,低廉成本的应用场合。
要快速怎么也要用intel总线。
gogogobomb 发表于 2011-10-25 12:01 | 显示全部楼层
这样啊。
 楼主| 風神 发表于 2011-10-25 17:10 | 显示全部楼层
如7楼,有点靠谱了。但是,还需要更深入一点。
I2C为了节省口线资源而做双向口=>为了防止接口电路烧掉而用上拉电阻=>上拉导致电平变化慢=>传输速率低。
SPI中MISO和MOSI分开=>无需上拉,电平反转速度快一点=>传输速率比I2C高。
以上说法有误否?
jiabin1024 发表于 2011-10-25 19:38 | 显示全部楼层
LS  iic 用上拉电阻是由硬件决定的
ahgao 发表于 2011-10-25 20:46 | 显示全部楼层
I2C做成OC方式主要是为了实现“线与”,这是实现I2C速率自适应和总线仲裁的基础。
lyjian 发表于 2011-10-25 21:02 | 显示全部楼层
I2C的速度为什么不搞快些,SPI的速度都到50MHz了,I2C还是到1MHz,10年来没一点长进。
yhn1973 发表于 2011-10-25 10:37

I2C还有3.4MHz的
chunyang 发表于 2011-10-25 23:14 | 显示全部楼层
决定通讯速率是“水桶原则”的制约,“水桶”由接口电路、器件、电缆等通讯回路组成部份中最劣的部份决定。
linqing171 发表于 2011-10-26 00:39 | 显示全部楼层
9楼和11楼基本对的。
另外说一下USB提高速度的方法。
1 差分模式,可以传高速信号。提高抗干扰能力。
2 低负载阻抗,为了可以跑的更快。抗干扰更强。
3 低摆幅,电平翻转时间更短。

USB1.0是1.5M的,幅度也是比较高的,印象里要求在3.6V上,和USB2.0的低速兼容。 可以用一个外置了12M晶振的AVR单片机用纯软件来实现。
USB1.1 是12M的,和USB2.0的全速兼容。
USB2.0的高速是480M的。
USB3.0不止变了速度,连码型神马的都变了。

I2C提速的方法是加个提速芯片,当检测到电路上电压从低电平网上升,并且升了一点了以后,开启内部的强1输出,直到信号快到一电平为止,关闭加速电路。  下降沿一般是用NMOS驱动,速度到M级别还是比较轻松的。
 楼主| 風神 发表于 2011-10-26 08:05 | 显示全部楼层
LS,这么说来,I2C和SPI的极限速率其实决定于电平转换速率,你这个芯片提速的做法同样可以加速SPI了。进而引申到,通信电平的选择,如果选较低的通信电平如1.8V在极限速度上应该会比3.3V或5V快,但低通信电平会造成抗干扰能力降低。换句话说,假如在传输线短,传输环境相对较好的时候,不妨降低通信电平以取得高速。
另外,USB的电信号是什么形式?这个还没有太大概念。
joyme 发表于 2011-10-26 14:55 | 显示全部楼层
光谈总线速度有什么用,就算你把I2C提高到1M以上,设备不支持也白搭,大部分的I2C设备支持400Kbps左右的I2C通信,太高了它也识别不了,所以还是看应用场合来选择总线方式。
ang629 发表于 2015-7-31 15:51 | 显示全部楼层
学习一下。另外,如果I2C的引脚和gpio复用,并说明是引脚是High impedance,这个High impedance 是否就是OC开路??
lyjian 发表于 2015-7-31 20:10 | 显示全部楼层
yhn1973 发表于 2011-10-25 10:37
I2C的速度为什么不搞快些,SPI的速度都到50MHz了,I2C还是到1MHz,10年来没一点长进。 ...

高速I2C的标准速度是3.4MHz。
靠上拉电阻能拉多快速度,自己可以想象一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

269

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部