From e4393985f8fb9a6feb02d99f66085b74ff87f487 Mon Sep 17 00:00:00 2001 From: WentaoWong Date: Fri, 18 Feb 2022 14:40:20 +0800 Subject: [PATCH] APP_Framework/Framework/:add Kconfig file and SConscript file about NNoM(v0.4.3) --- APP_Framework/Framework/knowing/Kconfig | 1 + APP_Framework/Framework/knowing/nnom/Kconfig | 46 +++++++++++++++++++ .../Framework/knowing/nnom/SConscript | 18 ++++++++ 3 files changed, 65 insertions(+) create mode 100644 APP_Framework/Framework/knowing/nnom/Kconfig create mode 100644 APP_Framework/Framework/knowing/nnom/SConscript diff --git a/APP_Framework/Framework/knowing/Kconfig b/APP_Framework/Framework/knowing/Kconfig index 13807b9a..d4324bf7 100644 --- a/APP_Framework/Framework/knowing/Kconfig +++ b/APP_Framework/Framework/knowing/Kconfig @@ -10,4 +10,5 @@ if SUPPORT_KNOWING_FRAMEWORK source "$APP_DIR/Framework/knowing/image_processing/Kconfig" source "$APP_DIR/Framework/knowing/cmsis_5/Kconfig" source "$APP_DIR/Framework/knowing/kpu/Kconfig" + source "$APP_DIR/Framework/knowing/nnom/Kconfig" endif diff --git a/APP_Framework/Framework/knowing/nnom/Kconfig b/APP_Framework/Framework/knowing/nnom/Kconfig new file mode 100644 index 00000000..1bcef879 --- /dev/null +++ b/APP_Framework/Framework/knowing/nnom/Kconfig @@ -0,0 +1,46 @@ +menuconfig USING_NNOM + bool "NNOM" + default n + +if USING_NNOM + + config NNOM_USING_STATIC_MEMORY + bool "Using static memory" + default n + help + must set buf using "nnom_set_static_buf()" before creating a model. + + config NNOM_TRUNCATE + bool "Using NNOM Truncate" + default n + help + disable: backend ops use round to the nearest int (default). enable: floor + + choice + prompt "Select NNOM Format" + default NNOM_USING_HWC + + config NNOM_USING_HWC + bool "Using HWC Format" + + config NNOM_USING_CHW + bool "Using CHW Format" + help + CHW is incompatible with CMSIS-NN and must be used when using hardware accelerator such as KPU in K210 chip + endchoice + + choice + prompt "Select NNOM Backend" + default USING_NNOM_NORMAL + + config NNOM_USING_LOCAL + bool "Using NNOM local backend" + + config NNOM_USING_CMSIS_NN + bool "Using CMSIS-NN backend" + select USING_CMSIS_5 + select USING_CMSIS_5_NN + endchoice + +endif + diff --git a/APP_Framework/Framework/knowing/nnom/SConscript b/APP_Framework/Framework/knowing/nnom/SConscript new file mode 100644 index 00000000..dce24bb2 --- /dev/null +++ b/APP_Framework/Framework/knowing/nnom/SConscript @@ -0,0 +1,18 @@ +import os +from building import * + +cwd = GetCurrentDir() +src = [] +CPPDEFINES = [] +CPPPATH = [] + +src += Glob('src/core/*.c') +src += Glob('src/layers/*.c') +src += Glob('src/backends/*.c') + +CPPPATH+=['%s/inc'%(cwd), '%s/port'%(cwd)] + + +group = DefineGroup('nnom', src, depend = ['USING_NNOM'], CPPPATH = CPPPATH, LOCAL_CPPDEFINES=CPPDEFINES) + +Return('group') \ No newline at end of file