Blogs
>
Data buses simplified with the new I3C specification

Data buses simplified with the new I3C specification

07 Oct 2016

The relatively new I3C specification, an extension of the popular Inter-Integrated-Circuit (I2C) serial bus for embedded systems, is actively under development and has recently reached the draft stage – with details available to the members of the MIPI Alliance for development and review.

I3C is being developed by the MIPI (Mobile Industry Processor Interface) Alliance, and it is specifically aimed at addressing future-proof interconnect needs in embedded mobile, Internet-of-Things and wearable computing devices that incorporate ever-greater numbers of advanced sensors and peripheral devices.

The MIPI I3C specification combines features from I2C and SPI into a new unified standard and scalable interface to connect many devices in embedded systems together - with minimal pin use, new capabilities, and improvements in power management and data rate.

The MIPI Sensor Working Group, consisting of many major system design and ASIC vendors, has been jointly defining the I3C specification, with the goal to re-use existing interfaces as much as possible while reducing pin count, providing in-band interrupts, reducing power use and engineering cost, as well as increasing bandwidth.

I3C builds new features onto the mature I2C standard such as a new high-data-rate mode which can support lots of data from sensors or other peripheral device – along with better support for relatively large networks of many devices connected to a host microcontroller.

Furthermore, I3C can compete with higher-bandwidth embedded serial interfaces like SPI, but still use only two wires like I2C does. The I3C standard is backwards compatible with I2C, so legacy devices with I2C interfaces can connect to the I3C bus, however new hardware (both on the peripheral and on the host controller side) is needed to take full advantage of the bandwidth and other benefits that I3C provides.

I3C offers higher speeds, greater power efficiency, reduced pin count compared to multi-device SPI networks, and support for relatively large sensor suites connected to a host microcontroller using only two wires but carrying ever-greater amounts of rich sensor data in wireless sensor network and IoT applications.

I3C was developed by MIPI's Sensor Working Group as a potential way to unify the serial bus landscape with a single, consistent interface that can handle any kind of device, allowing all kinds of sensors to be very easily integrated into embedded systems.

It aims to combine the simplicity and the low wire count of I2C with the high speed and power efficiency of SPI, to merge both these popular

standards together, and to add powerful new features such as in-band interrupt support with no need for extra interrupt wires, advanced power management and dynamic addressing of the different ICs on the bus. And I3C does all of this while largely maintaining backwards compatibility with existing I2C devices.

A typical smartphone today may contain up to a dozen sensors, and the widespread adoption and cost reduction of technologies like MEMS means that these sensors are producing much more complex, rich data.

Moving all this data back to the central controller is stretching the capabilities of today's familiar interfaces such as SPI or I2C, and this is the problem that I3C is primarily designed to address. I3C aims to incorporate and unify key attributes of I2C and SPI while improving the capabilities and performance of each approach with a comprehensive, scalable interface and architecture.

A typical system in use today may use a combination of I2C and SPI devices, with three wires for SPI, two wires for I2C, one further wire for each SPI device select line, plus an interrupt line for each peripheral device.

This complexity adds up quickly with modern sensor suites, and I3C aims to replace a dozen or more wires with just two wires, providing in-band interrupt capability without any need for dedicated interrupt lines wired back to the host device, reducing fragmentation between these different standards in the device market, freeing up pins on the host device, simplifying PCB engineering and making devices smaller, as well as offering speeds of up to 27 megabits per second.

I3C also includes multi-master support - this means it provides the ability for devices on the bus to request to take the master role, so the bus architecture is not limited to one single fixed master device and a number of slave devices.

Devices can be both master and slave, and direct "peer-to-peer" communication between I3C devices on the bus is possible without the master device needing to be involved in this exchange. I3C also introduces dynamic addressing, hot-joining and a uniform approach for advanced power management features such as sleep modes.

Devices on the bus can be powered on and off, and they don't have to be activated when the I3C bus is powered up. They can be added onto the bus later, or connected initially but not powered on, without any issues with loading down the bus.

This hot-joining capability, like with USB devices, allows the master device to assign a dynamic address to the slave device when it comes up on the bus, and has advantages for power efficiency when sensor and peripheral devices are turned off and on to save power, as well as allowing for removable, hot-swappable modules.

Dynamic address configuration means that the master device on the bus assigns each device a unique address, either when the bus is initialised or when a new device is connected to an already-configured I3C bus. Like the now-ubiquitous dynamic host configuration in IP networks, this automatic address configuration potentially makes it much easier to set up I3C hardware, removing conflicts between hardware devices with fixed addresses.

We look forward to the evolution that is the I3C data bus, and how it can be part of efficient Internet of Things devices. And if you are too, here at the LX Group we have the systems in both hardware and software to make your IoT vision a success.

We have end-to-end experience and demonstrated results in the entire process of IoT product development, and we’re ready to help bring your existing or new product ideas to life. Getting started is easy – click here to contact us, telephone 1800 810 124, or just keep in the loop by connecting here.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in IoT embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.