The aim of this project was to monitor the energy required per inference from DNN and ds-CNN neural networks running on
The aim of this project was to monitor the energy required per inference from DNN and ds-CNN neural networks running on an Arm Cortex M7 microcontroller to perform audio keyword recognition.
an Arm Cortex M7 microcontroller to perform audio keyword recognition.
Folder F756ZG_KWS contains the source code and additional files used by STM32 CubeIDE. To distinguish between the MFCC
Folder F756ZG_KWS contains the source code and additional files used by STM32 CubeIDE. To distinguish between the MFCC feature extraction and inference stages, the MCU is put in sleep mode for 3s intervals between MCU initialization, MFCC and neural net classification.
feature extraction and inference stages, the MCU is put in sleep mode for 3s intervals between MCU initialization,
MFCC and neural net classification.
The original implmentations of the neural netowrks can be found in:
The original implmentations of the neural netowrks can be found in:
Current measurements were obtained from an STM32 Nulceo-F756ZG development board. To monitor the current supply to the
Current measurements were obtained from an STM32 Nulceo-F756ZG development board. To monitor the current supply to the the MCU, solder bridge SB13 was removed and an ammeter was connected to jumper JP5 as described in the board's reference manual (https://www.st.com/resource/en/user_manual/dm00244518-stm32-nucleo-144-boards-stmicroelectronics.pdf)
the MCU, solder bridge SB13 was removed and an ammeter was connected to jumper JP5 as described in the board's
The .csv files containing the raw data from the current measurements can be found in the MCU_Current_Measurements
The .csv files containing the raw data from the current measurements can be found in the MCU_Current_Measurements folder. The folder also contains the Python scrpits used for energy calculations and plot generation.
folder. The folder also contains the Python scrpits used for energy calculation and plot generation.