Femtocore: An Application Specific Processor for Vertically Integrated High Performance Real-Time Controls

Filippo Savi, Jayakrishnan Harikumaran, Davide Barater, Giampaolo Buticchi, Chris Gerada, Pat Wheeler

Research output: Journal PublicationArticlepeer-review

3 Citations (Scopus)


In applications that require a high availability and high performance (for example aerospace),modular power electronics and multi-phase machines represent an advantageous choice. In this framework, a control system able to handle a high number of PWM signals and communication interfaces as well as featuring a high computational power is required. This paper proposes a novel HDL plus soft-core approach to be implemented on System-on-Chip hardware which allows for the efficient and modular implementation of the modern control techniques with strong guarantees in terms of determinism. The proposal lies in the adoption of a very simplified and optimized floating-point soft-core, the femtocore (fCore) and its tool-chain, which allows C-like implementation of complex algorithms in a HDL-design power electronics control framework. Several fCore units can be arranged for parallel processing to handle the time requirements of a complex modular system even with low sampling time (100 kHz or more). The proposed architecture is experimentally validated in a proof-of-concept, six-phase electric machine including a comparison against a traditional method.

Original languageEnglish
Pages (from-to)479-488
Number of pages10
JournalIEEE Open Journal of the Industrial Electronics Society
Publication statusPublished - 2021


  • Digital signal processors
  • control system implementation
  • current control
  • machine drive

ASJC Scopus subject areas

  • Electrical and Electronic Engineering
  • Control and Systems Engineering
  • Industrial and Manufacturing Engineering


Dive into the research topics of 'Femtocore: An Application Specific Processor for Vertically Integrated High Performance Real-Time Controls'. Together they form a unique fingerprint.

Cite this