打印

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

[复制链接]
9567|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是数字信号,对于接口信号,数字的肯定比模拟的要慢。因为传输通道的频响是有限制的。
所以要远距离快速通信,一般把数字信号调制到模拟的信号。

使用特权

评论回复
5
風神|  楼主 | 2011-10-25 08:08 | 只看该作者
LS,USB的模拟信号怎么包含数字信息?
SPI 为什么可以比 I2C 快?

使用特权

评论回复
6
yhn1973| | 2011-10-25 10:37 | 只看该作者
I2C的速度为什么不搞快些,SPI的速度都到50MHz了,I2C还是到1MHz,10年来没一点长进。

使用特权

评论回复
7
linqing171| | 2011-10-25 11:51 | 只看该作者
I2C 的长处是超级低廉,而且是协议简单的总线。
spi是端口,不是总线。 USB协议复杂。

I2C因为跨电平的标准,所以是OC 上拉的,上拉高电平驱动能力很弱,所以决定了他跑不快。但是不影响它在低速的场合应用。本来他面向的就是慢速,低廉成本的应用场合。
要快速怎么也要用intel总线。

使用特权

评论回复
8
gogogobomb| | 2011-10-25 12:01 | 只看该作者
这样啊。

使用特权

评论回复
9
風神|  楼主 | 2011-10-25 17:10 | 只看该作者
如7楼,有点靠谱了。但是,还需要更深入一点。
I2C为了节省口线资源而做双向口=>为了防止接口电路烧掉而用上拉电阻=>上拉导致电平变化慢=>传输速率低。
SPI中MISO和MOSI分开=>无需上拉,电平反转速度快一点=>传输速率比I2C高。
以上说法有误否?

使用特权

评论回复
10
jiabin1024| | 2011-10-25 19:38 | 只看该作者
LS  iic 用上拉电阻是由硬件决定的

使用特权

评论回复
11
ahgao| | 2011-10-25 20:46 | 只看该作者
I2C做成OC方式主要是为了实现“线与”,这是实现I2C速率自适应和总线仲裁的基础。

使用特权

评论回复
12
lyjian| | 2011-10-25 21:02 | 只看该作者
I2C的速度为什么不搞快些,SPI的速度都到50MHz了,I2C还是到1MHz,10年来没一点长进。
yhn1973 发表于 2011-10-25 10:37

I2C还有3.4MHz的

使用特权

评论回复
13
chunyang| | 2011-10-25 23:14 | 只看该作者
决定通讯速率是“水桶原则”的制约,“水桶”由接口电路、器件、电缆等通讯回路组成部份中最劣的部份决定。

使用特权

评论回复
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级别还是比较轻松的。

使用特权

评论回复
15
風神|  楼主 | 2011-10-26 08:05 | 只看该作者
LS,这么说来,I2C和SPI的极限速率其实决定于电平转换速率,你这个芯片提速的做法同样可以加速SPI了。进而引申到,通信电平的选择,如果选较低的通信电平如1.8V在极限速度上应该会比3.3V或5V快,但低通信电平会造成抗干扰能力降低。换句话说,假如在传输线短,传输环境相对较好的时候,不妨降低通信电平以取得高速。
另外,USB的电信号是什么形式?这个还没有太大概念。

使用特权

评论回复
16
joyme| | 2011-10-26 14:55 | 只看该作者
光谈总线速度有什么用,就算你把I2C提高到1M以上,设备不支持也白搭,大部分的I2C设备支持400Kbps左右的I2C通信,太高了它也识别不了,所以还是看应用场合来选择总线方式。

使用特权

评论回复
17
ang629| | 2015-7-31 15:51 | 只看该作者
学习一下。另外,如果I2C的引脚和gpio复用,并说明是引脚是High impedance,这个High impedance 是否就是OC开路??

使用特权

评论回复
18
lyjian| | 2015-7-31 20:10 | 只看该作者
yhn1973 发表于 2011-10-25 10:37
I2C的速度为什么不搞快些,SPI的速度都到50MHz了,I2C还是到1MHz,10年来没一点长进。 ...

高速I2C的标准速度是3.4MHz。
靠上拉电阻能拉多快速度,自己可以想象一下。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

269

帖子

0

粉丝