摘要
本文能帮助电子技术爱好者彻底搞明白I2C的由来、I2C的读法、总线BuS的来源、总线Bus的定义、总线Bus的主要特点、什么是I2C总线、什么是规范、什么是I2C总线规范等知识原理,为全面掌握I2C总线规范打下基础。
一. 什么是I2C
1.1 I2C的由来
在电视机内部电路中,众多功能需要用到许多集成电路IC来实现,包括主控器件微控制器和众多外围设备器件,如:PLL合成器、非易失性存储器、音频处理器、视频处理器、屏幕显示器等。这些器件相互之间要传递数据信息,那么就需要用导线相互连接,如此众多IC器件的互连,势必导致芯片引脚、PCB走线以及连接导线变得数量庞大,错综复杂,这会导致IC芯片体积增大、功耗增大、成本增加,给IC芯片设计制造厂商带来不利影响,同时也给IC芯片应用厂商和应用工程师们造成极大不便。
1982年,从事电灯泡、电剃刀、电唱机、收音机、电视机等研发制造已久的荷兰飞利浦公司,为解决电视机的上述问题,从而发明了一种集成电路互连通信电路,该电路的优点就是仅用两条线就可以实现芯片之间的互连通信,使硬件电路最简化,硬件效益最大化,给芯片设计制造者和芯片应用者带来极大益处。
飞利浦公司给这种集成电路互连通信电路命名为Inter-Integrated Circuit,简称为Inter-IC,或I2C(数字“2”为上标)。
1.2 I2C的读法
在“Inter-Integrated Circuit” 中,“Inter-” 表示“在……之间,相互”的意思;“Integrated Circuit” 简称“IC”,表示“集成电路”的意思。 “Inter-Integrated Circuit”,直接翻译过来就是内部集成电路(DeepL翻译为互联电路,微软翻译为内部集成电路,百度翻译为内置集成电路)。德力威尔王术平认为,应该把“Inter-Integrated Circuit”翻译为集成电路互连或者芯片互连,更符合国人习惯,更为贴切。
在中国正式的书面场合,全称写作Inter-Integrated Circuit,简写Inter-IC或者I2C(数字“2”书写为上标,,英文读作“I squared C”,中文读作“I平方C”)。
在非正式场合或者数字“2”无法书写为上标时,有人就书写为“IIC”或者“I2C”,把“IIC”读作“I-I-C”,把“I2C”读作“I-two-C”或“I二C”。这些书写方式或叫法,其实没有对错,只是不同习惯而已,就像普通话和地方话一样。但是,我们在严谨的正式场合,还是要统一标准,规范书写为“I2C”(数字“2”书写为上标),规范读作“I平方C”。
在本文中,德力威尔王术平对相关术语的中文解释做出如下约定:
I2C:读作“I平方C”(尽量不读作“I方C”,避免和I3C混淆)。
I2C:集成电路互连。
I2C Bus:I2C总线或集成电路互连总线。
I2C Specification:I2C规范或集成电路互连规范。
I2C Communication Interface:I2C通信接口或集成电路互连通信接口。
I2C Communication Protocol:I2C通信协议或集成电路互连通信协议。
I2C:在无法书写上标数字“2”时,可书写为“IIC”或“I2C”。
二. 什么是总线(Bus)
2.1 计算机中Bus术语的来源
早期的计算机体积庞大,连线复杂(如图1-2),所有数据都通过实际的电缆传输,这变得非常混乱。把这些大捆的杂乱的电缆线,有序地布置在一个公共线排上,这些规则排列在一起的公共线束(如图1-3),就是术语“总线”的早期来源,用BUS表示。下面这段话来自https://study.com官网,揭示了“BUS”的来源:
In early computer systems, all the data traveled across actual cables, which got pretty messy. Large bundles of wires were organized using bus bars, which is where the term 'bus' comes from.
2.2 计算机中Bus术语的定义
在计算体系结构中, 总线(Bus)是计算机内部组件之间或计算机之间传送信息的公共通信干线,它是由导线组成的传输路径。
总线(Bus)是一种电路,它是cpu、RAM、ROM、输入、输出等设备传递信息的公用通道,充当数据在计算机内传输的高速公路
按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据信息、地址信息和控制信号。