The Sky130 is suitable for fabricating microcontrollers used in an IoT system based on a real-time operating system (RTOS). RTOS IoT has an advantage over Linux IoT in power consumption. Linux IoT may also achieve power reduction by hibernation but is not likely to yield a favorable design point for Sky130.
In the proposed project SoC generated from the rocket-chip repository is applied to Sky130 Caravel harness to constitute a chip solution targeted to RTOS IoT similar to the example shown below.
An IoT service provider needs to know when its IoT device is tampered, cloned, implanted. A remote power analysis of its IoT device can reveal some physical, structural, and electrical breaches of the device such as cloning, implant, and malware.
A purpose-specific power supply unit (PSU) board takes diverse power sources e.g. solar, lithium-ion, variable DC voltage, USB-C. The PSU supports up to 7 independent power output rails 6 of which may be turned on and off via I2C commands. The PSU can measure current flow in each of its power rail independently while the IoT is in operation. The circuit is designed so measurement is done without significant power loss.
Today a high-definition power analysis subsystem can be designed at an acceptable price today. An example is ChipWhisperer priced under $500 USD and achieves 10-bit analog-to-digital converter (ADC) output at 105 million samples per second. In the year 2003, a set of analysis tools similar to this capability cost over $300, 000 USD.
A power waveform suitable for differential power analysis of a microcontroller can be obtained from ChipWhisperer.
Many off-the-shelf microcontrollers today support on-chip analog-to-digital converter (ADC) with a sample rate of 100KHz and above. However many of them lack an interface for external memories which can hold meaningful amounts of data for dynamic power analysis of a relevant target processor or logic. Many DMAC within microcontrollers fails to siphon ADC data to external memories at the sampling rate ADC is capable of delivering.
Off-the-shelf microprocessor offers 16KB worth of power sample from ADC collected at 100 thousand samples per second, which is useful for some power analysis. But to apply more traditional side-channel analysis methodologies faster-sampling rate and larger memory store is necessary. A discrete ADC with a higher sample rate of one million samples and above is a choice. Many of them require a proprietary digital interface.
In an IoT multiplicity of wireless communication and global positioning (GPS) chips require UARTs. The UARTs are used in IoT apps and over-the-air firmware upgrades (OTA). Multiple I2Cs are needed to interface a number of sensor and root-of-trust (RoT) chips as they often present I2C address/speed conflicts. Many general-purpose input and output (GPIOs) are expended for crisscrossing reset and interrupt pins.
All of these factors within IoT may justify a custom ASIC rather than fitting a solution to an off-the-shelf microcontroller, which tends to lean on the side of high-end because "large doubles as small."
The Rocket SoC generator can from parameterized inputs generate an SoC consisting of a decent CPU, QPI interface to flash memory, PSRAM, an array of UARTs, I2C, and SPI.
The heart of the Rocket SoC generator is an object-oriented language Chisel leveraging Scala. Rocket SoC generator automatically generates a top-level RTL derived from sub-circuit meta class definitions.
Future challenges mating Rocket and Caravel includes support for low power operation e.g. standby or always on (slow clock mode operations) states. Using the MPW-5 project, we can utilize the rich features of the Caravel harness with its firmware and evaluate the resultant system. However, the type of a power solution that matches with off-the-shelf microcontroller might require deeper integration which might involve hardware beyond MPW-5 Marmot. CHIPS Alliance's Chipyard offers RISC-V SoC design framework with cores, accelerators, and peripherals including DMAC. This might be the area where we seek open-source resources.
Acknowledgments: This work is based on results obtained from project, JPNP16007, commissioned by The New Energy and Industrial Technology Development Organization (NEDO).
Marmot RISC-V SoCA Customizable RISC-V MicrocomputerA custom microcomputer design is useful when off-the-shelf general-purpose microcontrollers fail to meet the system's needs. The rocket SoC generator automatically generates an SoC. It circumvents labor-intensive, error-prone, top-level SoC design.
SoC Customization FlowThe Rocket SoC Generator and Caravel SoC Template are reused to create a twin (not identical) RISC-V SoC consisting of one Rocket RISC-V and one Caravel RISC-V. The objectives here is to save hours on design verification and reduce power consumption rather than saving die area or chip cost.
The following shows a scheme to manage the clock, reset, power, and low power state.
Freedom E300 Arty FPGA Dev Kit https://github.com/sifive/freedom#freedom-e300-arty-fpga-dev-kit
Krste Asanović, Rimas Avižienis, Jonathan Bachrach, Scott Beamer, David Biancolin, Christopher Celio, Henry Cook, Palmer Dabbelt, John Hauser, Adam Izraelevitz, Sagar Karandikar, Benjamin Keller, Donggyu Kim, John Koenig, Yunsup Lee, Eric Love, Martin Maas, Albert Magyar, Howard Mao, Miquel Moreto, Albert Ou, David Patterson, Brian Richards, Colin Schmidt, Stephen Twigg, Huy Vo, and Andrew Waterman, The Rocket Chip Generator, Technical Report UCB/EECS-2016-17, EECS Department, University of California, Berkeley, April 2016
eFabless Caravel Architecture https://caravel-harness.readthedocs.io/en/latest/getting-started.html
AcknowledgementsThis work is based on results obtained from project, JPNP16007, commissioned by The New Energy and Industrial Technology Development Organization (NEDO).
Links- EFabless Open MPW-5 Project - https://platform.efabless.com/projects/759
- Github Repo - https://github.com/Hagiwara-shc/marmot_asic
This project was created by Hagiwara-shc, and we are sharing it here to help spread the word about the EFabless Open MPW Shuttle Program.
Comments