6533b7d7fe1ef96bd1268e8a

RESEARCH PRODUCT

MAC-Engine

Ilenia TinnirelloFabrizio GiulianoPierluigi GalloStefano MangioneFrancesco GringoliDomenico Garlisi

subject

DowntimeFinite-state machineComputer scienceFirmwarebusiness.industryInterface (computing)computer.software_genreExecutorBytecodeEmbedded systemOperating systembusinessProtocol (object-oriented programming)computerHost (network)Computer hardware

description

In this demo, we prove that the flexibility supported by off-the-shelf IEEE 802.11 hardware can be significantly extended if we move the control of the MAC programming interface from the driver to the firmware, i.e. from the host CPU to the card CPU. To this purpose, we introduce the concept of MAC--Engine, that is an executor of Programmable Finite State Machines (PFSM) implemented at the firmware level: we show how the card itself can support different protocol logics thanks to PFSM bytecode representations that can be dynamically injected inside the card memory at run-time without incurring in down time issues or network disconnect events. We provide different PFSM examples in order to test the functional thoroughness of the programming interface provided by the MAC-Engine architecture. Finally, we introduce an experimental PFSM development framework, that can translate a graphical PFSM representation into an optimized bytecode.

https://doi.org/10.1145/2030718.2030742