tinyML Talks: CFU Playground: Customize Your ML Processor for Your Specific TinyML Model

CFU (Custom Function Unit) Playground lets you build your own specialized & optimized ML processor based on the RISC-V ISA, implemented on an FPGA using a fully open source stack. This talk isn’t about general ML extensions; it’s about a methodology for building your own extensions specific to your tinyML model. The extensions can range from a few simple new instructions, up through a complex accelerator that interfaces to the CPU via a set of custom instructions; we will show examples of both.

CFU Playground bundles the TensorFlow Lite for Microcontrollers library, a number of sample tinyML models, and profiling & test software, so that you can immediately build an initial processor, evaluate inference performance on your FPGA board, and start customizing. CFU Playground is designed for rapid iteration and design space exploration; you can update your design and rebuild your gateware and firmware in just a few minutes.
CFU Playground can be used to develop an SoC for FPGA deployment; as a prototype for eventual ASIC implementation; and/or to provide an ML research environment to try out hardware ideas quickly and credibly.

Date

January 11, 2022

Location

Virtual

Contact us

Discussion

Schedule

Timezone: PST

CFU Playground: Customize Your ML Processor for Your Specific TinyML Model

Tim CALLAHAN, Staff Software Engineer

Google

CFU (Custom Function Unit) Playground lets you build your own specialized & optimized ML processor based on the RISC-V ISA, implemented on an FPGA using a fully open source stack. This talk isn’t about general ML extensions; it’s about a methodology for building your own extensions specific to your tinyML model. The extensions can range from a few simple new instructions, up through a complex accelerator that interfaces to the CPU via a set of custom instructions; we will show examples of both.

CFU Playground bundles the TensorFlow Lite for Microcontrollers library, a number of sample tinyML models, and profiling & test software, so that you can immediately build an initial processor, evaluate inference performance on your FPGA board, and start customizing. CFU Playground is designed for rapid iteration and design space exploration; you can update your design and rebuild your gateware and firmware in just a few minutes.
CFU Playground can be used to develop an SoC for FPGA deployment; as a prototype for eventual ASIC implementation; and/or to provide an ML research environment to try out hardware ideas quickly and credibly.

Tim CALLAHAN, Staff Software Engineer

Google

Tim Callahan works at Google with the open source FPGA toolchain (SymbiFlow) team. His work is to help make FPGA development more accessible, fun, and rewarding. His research interests include anything that involves optimizing the hardware/software boundary. He has degrees from UC Berkeley, Cambridge University, and the University of Minnesota.

Schedule subject to change without notice.