Slide 1 IoT Energy Savings with GZIP IP Using GZIP Data Compression to Reduce Power Consumption in IoT Devices Meredith Lucky VP of Sales CAST, Inc. December 2016 www.cast- inc.com
Slide 1 IoT Energy Savings with GZIP IP
Using GZIP Data Compression to Reduce Power Consumption in IoT Devices
Meredith LuckyVP of SalesCAST, Inc.
December 2016www.cast-inc.com
Slide 2 IoT Energy Savings with GZIP IP
Second Generation IoTThe First Generation was trying to get a product to market ASAP.The Second Generation is about product differentiation.
Low powerProcessing power in edge devicesReduced cost (less memory, smaller devices)
Slide 3 IoT Energy Savings with GZIP IP
A Typical IoT Node
Low Energy Consumption is a key factor
Slide 4 IoT Energy Savings with GZIP IP
Where is Energy Consumed?
RF Transceivers and NVMs are major energy consumers
MCU (no NVM or RF)0.5–5mA
Low-power RF10–30mA
Low-power Serial Flash
2–25mALow-power CPU0.1–1 nAmA
Slide 5 IoT Energy Savings with GZIP IP
Reducing the Energy Consumed via Compression
NVM: Firmware CompressionLess on-chip data to transfer = lower energy (and less time) to boot/wake-up
NVM: Data Storage CompressionLess off-chip data = faster R/W operations = lower energy
RF: Tx/Rx Data CompressionLess data to send/receive = lower RF active time = lower communication energy
Slide 6 IoT Energy Savings with GZIP IP
IoT Node with GZIP Accelerator
GZIP CompressionStandard for
interoperabilityHardware
AccelerationLower power
consumption, less processor overhead,
low latencyUsesNVM: Firmware decompression while code shadowingNVM: data compression for local data storageRF: data compression at application level or in networking stack
Slide 7 IoT Energy Savings with GZIP IP
Expected Energy GainsDepends on compression performance (ratio), which depends on Data Characteristics and Compression Algorithm ParametersBasic GZIP Compression Parameters:
Static or Dynamic Huffman Static: smaller siliconDynamic: higher compression
History WindowSmaller: smaller siliconLarger: higher compression
Low silicon overhead = Static Huffman and relatively small History Window
Slide 8 IoT Energy Savings with GZIP IP
How Compressible is Wireless Data?
IoT Devices typically Exchange a set of measurements/sensed dataAre able to receive commands, and May allow remote access via an HTML page
Data they transmit resembles text files, spreadsheets, and HTML These all compress nicely to levels of 3:1 even for Static Huffman and Small History Windows
Slide 9 IoT Energy Savings with GZIP IP
How Compressible Is Firmware?Three examples:
FreeRTOS Port and Sensor Control app on BA22-DE Cygnal FreeRTOS Port and demo app on 8051 InterNiche Tech. TCPI/IP and HTTP Stacks on Cortex-M3
Slide 10 IoT Energy Savings with GZIP IP
Energy and Boot Time Savings from Firmware Compression
GZIP Assumption: Static Huffman, 2KB HistoryNVM Assumptions: 1.8V Serial, 5mA Read Current, 50MHz Read Clock
Code Size in kBytes Required NVM Size
System #1
(8051)System #2
(BA2)System #3
(ARM)System #1
(8051)System #2
(BA2)System #3
(ARM)Uncompressed Code 25.5 161 985 256kbits 2Mbit 8MbitsCompressed Code 10.9 76 511 128kbits 1Mbit 4MbitsSavings 57.25% 52.80% 48.12% 54.25% 50.00% 50.00%
Boot Time in msec Boot Power in mA - sec
System #1
(8051)System #2
(BA2)System #3
(ARM)System #1
(8051)System #2
(BA2)System #3
(ARM)Uncompressed Code 3.98 25 154 0.02 0.13 0.77Compressed Code 1.7 12 80 0.01 0.06 0.4Savings 57.29% 52.00% 48.05% 57.25% 52.80% 48.12%
averages
Code Size
52.72%NVM Size
51.42%Boot Time
52.45%Boot
Power52.73%
Slide 11 IoT Energy Savings with GZIP IP
Data Storage Servers & Gateways
Move analytics from cloud to edge for faster response and bandwidth limited applications -> Requires local data storage instead of sending data to remote server
Slide 12 IoT Energy Savings with GZIP IP
Local Data Storage for Analytics
Store data from many edge sensor devices. Wake-up server for periodic analytic processingNo longer just simple log data, but much larger imagery and natural language dataCompression minimizes the amount of NVM, but also power of read/write operations for 2KB Page for Block of 64 pages = 128kB
Access time
us/pagePower
uJ/pagePower
uJ/block
Read 130.9 4.72 302
Write 405.9 38.94 2,492
Power example in Micron SLC NAND
Slide 13 IoT Energy Savings with GZIP IP
Energy Saving VS Duty Cycles
**
*
* Energy decreased 50%
Slide 14 IoT Energy Savings with GZIP IP
ConclusionCompression can be used to significantly decrease the energy consumption in IoT Nodes
Firmware Compression for devices using code shadowingCompression of local Data for edge analyticsCompression of Data exchanged over wireless links
Parameters that need to be evaluatedCompression algorithm and parametersCompressibility of dataSystem’s energy profile (duty cycle)
GZIP/GUNZIP IP cores available from CAST are perfectly suitable for IoT Nodes
Slide 15 IoT Energy Savings with GZIP IP
GZIP Cores From CASTLow latency: from 20 cycles FIFO latencyLow silicon requirements: ~22kGates for gzip or gunzip (Static Huffman and History Windows sizes up to 4096 Bytes)Low power: 160 MBytes/sec at just 10 MHzEasy integration: AXI-Streaming (AXI-ST), or AHB Interfaces