一句话:提出支持 COTS 芯片即插即用的芯片级可重构 IoT 架构,含统一芯片描述语言与网关编排。
面向多样化 IoT 应用,设备需按需扩展功能,但功能芯片异构导致定制困难、灵活性不足。本文提出 LEGO:一种支持 COTS 芯片即插即用的芯片级可重构 IoT 设备架构。为屏蔽异构性,设计统一芯片描述语言 UCDL,以元操作和芯片规格统一访问各类功能芯片;为实现即插即用,将芯片控制逻辑上移至网关,使设备与应用解耦,插入新芯片时无需修改设备。为降低通信开销,提出网关指令编排架构,减少远程芯片控制的指令传输频率。原型在 100 多种 COTS 功能芯片上评估:新芯片插入后 0.13 秒内被自动访问,平均通信负载仅 0.53 kb。
Versatile Internet of Things (IoT) applications call for re-configurable IoT devices that can easily extend new functionality on demand. However, the heterogeneity of functional chips brings difficulties in device customization, leading to inadequate flexibility. In this paper, we propose LEGO, a novel architecture for chip-level re-configurable IoT devices that supports plug-and-play with Commercial Off-The-Shelf (COTS) chips. To combat the heterogeneity of functional chips, we first design a novel Unified Chip Description Language (UCDL) with meta-operation and chip specifications to access various types of functional chips uniformly. Then, to achieve chips plug-and-play, we build up a novel platform and shift all chip control logic to the gateway, which makes IoT devices entirely decoupled from specific applications and does not need to make any changes when plugging in new functional chips. Finally, to handle communications overheads, we built up a novel orchestration architecture for gateway instructions, which minimizes instruction transmission frequency in remote chip control. We implement the prototype and conduct extensive evaluations with 100+ types of COTS functional chips. The results show that new functional chips can be automatically accessed by the system within 0.13 seconds after being plugged in, and only bringing 0.53 kb of communication load on average, demonstrating the efficacy of LEGO design.
@inproceedings{paperbot10061,
title = {LEGO: Empowering Chip-Level Functionality Plug-and-Play for Next-Generation IoT Devices},
author = {Chong Zhang and Songfan Li and Yihang Song and Qianhe Meng and Minghua Chen and YanXu Bai and Li Lu and Hongzi Zhu},
booktitle = {ASPLOS},
year = {2023},
doi = {10.1145/3582016.3582050}
}