📜 ⬆️ ⬇️

Smart Dust: how the smallest computer Michigan Micro Mote works

Last March, the AlphaGo program, developed by Google DeepMind, defeated one of the best go masters in the world, Lee Sedol. This series of games has become an indicator of what neural networks are capable of. And they are used in other (less global) applications, such as programs for detecting malware or translating text into images.

It is expected that in the near future, the value of the market for software using deep learning opportunities will exceed $ 1 billion. Therefore, researchers are engaged in the design of special chips that can cope with such applications.

Among them are Google, Nvidia, Qualcomm, and others. But today we would like to talk about the development of scientists at the University of Michigan - the Michigan Micro Mote project - a computer with a volume of one cubic millimeter.
')
/ photo rawdonfox CC

SoftBank CEO Masayoshi Son suggested that by 2035 the number of Internet of Things gadgets would reach 1 trillion. However, modern devices, such as cameras, microphones, locks, thermostats, have a drawback - they are not able to analyze information on their own, therefore they constantly transmit it to the cloud, expending energy.

Researchers from the University of Michigan set a task to solve this problem and make smart and small computers with sensors for IoT.

“It’s hard to imagine how much data a trillion devices will generate,” says Professor David Blaauw of the University of Michigan. “By creating small, energy-efficient sensors that can perform on-the-fly analysis, we will make our environment safer and save electricity”

It is the power consumption problem that the Michigan Micro Mote computer should solve, which is so small that it is comparable in size to a rice grain.

Nevertheless, it is a full-featured computing system capable of acting like a smart sensor. For example, it is used to monitor intraocular pressure.


Amazing powerless


At the core of the solution is a tiny Phoenix processor with very low power consumption. The Phoenix processor is divided into core and peripherals. The kernel consists of an 8-bit CPU, 52-bit 40-bit random access memory for data (DMEM), 64-bit 10-bit random access memory (IMEM), and 64-bit 10-bit ROM (IROM) for commands , as well as the power management unit.

The periphery includes a control timer and a temperature sensor, but you can add 8 more sensors to their number, depending on the required functionality.

Phoenix processor circuit ( Source )

The core and peripherals communicate using a system bus using a simple asynchronous protocol. Most of the time the Phoenix processor spends in standby mode. The watchdog timer, which is an oscillator with low current consumption, wakes up the processor and starts processing and storing the temperature sensor readings. After completing the task, the processor returns to standby mode and waits for the next command - this approach can significantly reduce power consumption.

CPUs and other logic modules can be disconnected from power supplies when their services are not required, but the memory (IMEM and DMEM) is not, since it must store the data recorded in it. Therefore, SRAM modules remain the main energy consumers. For this reason, the developers use techniques designed to reduce current leakage, for example, a high voltage level at the transistor inputs. For the same purpose, the duration of the gating pulse was increased.
Data Memory Architecture (DMEM) with SRAM Cell ( Source )

To further reduce power consumption, DMEM works with a so-called free list. This list, managed by the CPU, contains information about the lines used in the DMEM memory. DMEM has 26 switches (each connected to 2 lines) that selectively turn off the power supply in standby mode, considering the state of the free memory list.

The developers also optimized CPU performance with IMEM and DMEM. A minimum set of basic commands is used to work with IMEM. The command length is limited to 10 bits, while popular operations use flexible addressing methods, and less popular ones use implicit operands. The processor also has hardware compression support to maximize memory capacity.

Virtual memory addresses are mapped to DMEM using a fixed Huffman algorithm. DMEM itself is divided into static and dynamically defined blocks. Every 16 bytes of virtual memory receive one line of a static partition. If writing to memory causes an overflow, the excess is transferred to the dynamic partition by pointer.

Temperature Sensor Circuit ( Source )

As for the built-in temperature sensor, its diagram is shown in the figure above. The temperature-independent current source (Iref) and the current source, whose readings vary according to the absolute temperature (Iptat), are connected to a ring generator that converts the temperature information into pulses. Then, these signals are sent to a totalizer that generates digital data. Since the temperature sensor does not need to be stored for a long time, it turns off during downtimes, in order to save additional energy.

In their work, scientists tested the Phoenix processor and found that it consumes 297 nW in active mode and only 29.6 pW in standby mode.

What made a "sandwich"


In addition to the processor, the Michigan Micro Mote has several other “layers” that perform their functions. One of them is solar panels - a solar cell with an area of ​​1 square millimeter capable of producing 20 nW of power.

Incision Michigan Micro Mote ( Source )

In addition to solar batteries, the device consists of a control module, a radio module, an interface of the sensor system, the processor itself, a battery, and a power control element.

The layers communicate with each other using a specially designed universal interface called MBus. At the same time, scientists can simply replace one of the layers with another, implementing a new type of tracking device. This design significantly reduces the cost of production.

Micro-Future Path


“We are currently working on improving the messaging technology between computers,” says Blaauv. - So far we have managed to reach a distance of 20 meters. This is a major improvement, since the first versions of the device could only transmit information by 50 centimeters. ”

Scientists from Michigan demonstrated the capabilities of the technology at the ISSCC conference .

Stumbling blocks to expanding the coverage area remain the size of the antenna and the need to increase the power to transmit information over long distances, which affects energy consumption.

Researchers are taking other steps to improve the microcomputer. For example, they are constantly improving the memory of the device - the previous generation Micro Mote used only 8 kilobytes of SRAM, which made them unsuitable for processing audio and video. Therefore, a team of scientists has provided new computers with flash memory of 1 megabyte.

Moreover, one of the Micro Mote devices on the ISSCC had a processor for deep learning on board. The micro gadget was able to control the neural network, while consuming only 288 µW. Typically, such tasks require large banks of memory and computing power provided by modern GPUs.

Blaauw says that their startup CubeWorks is already engaged in device prototyping and market research. Scientists hope that in 2 years surveillance cameras will appear, capable of calculating the wanted offender right among people passing by, and other smart devices from the IoT world.


Source: https://habr.com/ru/post/321130/


All Articles