Age | Commit message (Collapse) | Author |
|
Jira: NO-JIRA
Change-Id: I5c31bc432d421ae7645474a24b0ce7a4be7cefb8
|
|
Tensorflow lite micro has increased the size of the MicroProfiler.
As a consequence the FreeRTOS application needs to increase the stack
size allocate from the heap.
Change-Id: I8e4df44767edaecee27d9571319ef72da5937a3b
|
|
Change-Id: I4530ab1aa336ae4fc487745279f74ae4ebebe3d1
|
|
Change-Id: Iada7cfaa42dc6f5706504ee78e975730048e0f3c
|
|
Support building applications for targets without a NPU.
Change-Id: I04199b1c0444f23eadc6d4cf85195413dfd8bc97
|
|
- Allow linker file to be overriden
- Disable Trustzone build for other targets than Corstone-300
- Make toolchain TARGET_CPU variable cached
Change-Id: I98a15e1080e4bf49e029578888b1e4ce362bbab7
|
|
Some scripts require external modules (from pip).
Install using:
python -m pip install -r requirements.txt
NOTE: On some distributions python2 is still default, so to
use python 3 it might be necessary to replace python on the
above command line with python3
Update README.md to mention the python requirements.
Change-Id: Ia7581c874570d92846095775f680238328f651b4
|
|
Tensorflow reference kernels are bit exact and should be used by the
run_platform.py script to generate the expected OFM data.
Change-Id: I90e688e753e5330aaaf9002abed23df0493ff99b
|
|
Change-Id: Icfc30968f3d1bc0048a235eacec94b47097d662b
|
|
Adjust to updated Ethos-U driver
Change-Id: Ie374c29bec2baee4717634588b22f6db419ad9a3
|
|
Remove dependency on cpp, and instead use the specified
compiler to preprocess the linker scripts.
Signed-off-by: Jonas Ohlsson <jonas.ohlsson@arm.com>
Change-Id: I000082f8e90015b12f99ba3f616b6b3e07647873
|
|
Fix inconsistencies between the scatter file and linker script
Jira: MLBEDSW-4596
Change-Id: I4d31fc89ef0d0371e1ba8758d60871674cf844a9
|
|
Change-Id: I551ec9136d3ce9d89a066f6f63bb5fd9b5d39f80
|
|
Change-Id: Ided3ff5e2a5fc1f16e2fad0732f5464ccddbc96c
|
|
Setting NDEBUG for non debug builds. This will disabled the asserts
used by the for example the Ethos-U driver.
Disabling caches by default.
Change-Id: I614edc09b99e9997af7e113c7565d64f273f3fa0
|
|
NPU PMU interface currently have functions that have been stepped
each time a compatibilty breaking changed has been introduced. Old
entrypoints have been redefined with macro to use the latest version
for backwards compatibility. This series of patches will remove any
such functions and macro to unify the interface.
Update: All PMU entrypoints to support updated interface
Change-Id: I12113649cfbbe162f0fc66563868ec9df0382cbe
|
|
Change-Id: Ie5afef7bd07456e0fe2eb47c0ab6f979fc9aa5ea
|
|
Adding documentation and sequence diagrams for startup and multi
NPU.
Change-Id: I4a4a43e8bea089b6325f7d8285434017cbda25ec
|
|
Change-Id: I142057dfe9429b6360fafcae4f9e1b4b8140f3d5
|
|
Changes to facilitate building on Windows systems.
Signed-off-by: Jonas Ohlsson <jonas.ohlsson@arm.com>
Change-Id: Ib95bd89fe476790333bafccc3f6fa402b6569166
|
|
NPU driver interface currently have functions which have been stepped
each time a compatibilty breaking changed has been introduced. Old
entrypoints have been redefined with macro to use the latest version
for backwards compatibility. This series of patches will remove any
such functions and macro to unify the interface.
Update: All driver entrypoints to support updated interface
Change-Id: Ibe5fa7b2ac909eceb16a6879d4eaf9d0d7e36211
|
|
Generate the map file for each executable target added with the helper
function ethosu_add_executable.
Change-Id: Ib8b26508f7c439c8cd12b90061cc42eb771d9fd5
|
|
Add helper to generate binaries for all targets added with
ethosu_add_executable in order to ease development on fpga.
Change-Id: I23df4f8aa1fd2d8a1e633d337b9f09ad7fe75774
|
|
In order to ease the work with both FVP and FPGA, create a script that
handles sorting out the binary creation.
Change-Id: I19bc4b4d659c54b4569e6a714c7281bec4a81310
|
|
Name memories as they are in reference manual and consolidate the ddr
objects to single section to ease the creation of the binary.
The program headers are also updated to use the same layout as using
armclang.
Change-Id: Ib98cad45d0679c0d44226c46c2398d02f771ea9f
|
|
The script will build the platform, optimize the network through vela,
run it on the model and present relevant statistics from the run.
Change-Id: I6bf7d77caa68e64c52f7b523e6b79af9271b6500
|
|
Note that the MPU is split between S and NS. Code running in
NS (non-secure) state will not have access to S regions, however
it will have access to NS regions unless the MPU_NS is configured
(or other security mechanisms like SAU/IDAU limits access).
The MPU for NS is not enabled or configured in this example code.
Change-Id: I6b07bda25e4dbb23e8c2afdfa01d82ca5611f21a
|
|
- Enable CPU instruction- and data cache by default.
- Add a CMake option to turn CPU cache on/off.
- Add basic MPU configuration for memory areas. Make the code
segment RO (NS address' are reachable from secure state,
hence MPU config entries for both S and NS address of ITCM).
- Target latest NPU API version
Change-Id: Ie9bf2f02e5ad534375d146804fdc66b9f2f6770f
Change-Id: I9def430d1e61d18e521798db4f48ed0a8c58380e
|
|
Fixed code formatting
Change-Id: I12df8da14a7100706f20ffb084ca8477928d0005
|
|
Change-Id: Ie97250f03f9c1f7d3603ecfba370049bf12f7c90
|
|
Move model data used by the FreeRTOS application to separate folder to
allow for changing model easier by chaning the compile definition set in
CMakeLists.txt just after ethosu_add_executable_test(...)
Change-Id: I81d801c52e721f8ca7ad83892f9b68e82aee8188
|
|
Modified freertos.cpp to the support multi NPUs API.
Spawn NUM_INFERENCE_TASKS inference processing tasks (Reserves, locks,
and runs inference on an available NPU driver. Usually 1 per NPU, but
not required)
Spawn NUM_JOB_TASKS job creating/recieving tasks (Creates
NUM_JOBS_PER_TASK jobs, sends
them to inference job queue, and recieves response once finished)
Added: Mutex & Semaphore interfaces. Overrides weakly linked symbols in
driver.
Change-Id: Id187c6c9b43b988b1fdd560fdf3d57bd4b30b79c
|
|
Update all license headers to the correct years.
Change-Id: I18881cbceabe26066d69d8535bb3cb969cbaeba1
|
|
Add driver unit tests that runs simple command streams directly
on top of the NPU driver.
Change-Id: I3fcce2a2bfbd458d14186b8fd13ba47174f49562
|
|
Add basic skeleton to initialize timing adapters.
See core_software/drivers/timing_adapter/include/timing_adapter.h
for description of settings and API.
Change-Id: I0884f8efc5735b1a837d45e0bb7c6612d329ad58
|
|
Added: Baremetal application
'keyword_spotting_ds_dnn_large_clustered_int8' as and
executable test. Run with ctest -R
keyword_spotting_ds_dnn_large_clustered_int8
Model taken from ML-zoo, run through vela, and hexdumped to C header
format.
Change-Id: If1cee9f45bf9886eace299a378523b81beee4798
|
|
Added: Baremetal application 'keyword_spotting_dnn_medium_int8' as and
executable test. Run with ctest -R keyword_spotting_dnn_medium_int8
Model taken from ML-zoo, run through vela, and hexdumped to C header
format.
Change-Id: Iba97a2c89277131605e233f0c9241581ea178755
|
|
Added: Baremetal folder for baremetal applications
Added: Baremetal application 'keyword_spotting_cnn_small_int8' as an
executable test. Run with ctest -R keyword_spotting_cnn_small_int8
Model taken from ML-zoo, run through vela, and hexdumped to C header
format.
Change-Id: I053d88a4319cb58020027d6007e83fd519a2af6e
|
|
Adding hello world application that is useful when porting the stack
to a new target platform.
Change-Id: I28ba96d9fac1489d73b84cb7940d05cf9860e4ed
|
|
Change-Id: I660cd5d2bc73eaf589598c4f0570f5e9293de28d
|
|
Adding script to run CTest on the Corstone-300 FVP. The script will
detect which version of the FVP that is used and pass the correct
command line arguments.
Updating README with instructions how to run tests, either using
CTest or calling the FVP directly.
Update FreeRTOS example to exit with the status of the inference.
Minor adjustments are needed to the output vectors.
Change-Id: I8a1a740b0dec2ce35d95e5c5d91f4b57a2c8e1fa
|
|
Replace the CPU-only network with mobilenet_v2_1.0_224.
The header files in this commit are the same as the model data in the
trustzone application, see the README.md in
applications/trustzone_inference for details on how to generate them
from source on Arm ML-Zoo repository on github.
Change-Id: I8d3cfd6313fd5d98880cf1b24511208ca12faa05
|
|
Change-Id: Iff207d9bd8f8406c645b087560212fb0aabe82f4
|
|
Change-Id: Ia2ca0593e65bdb570c53a16cf7706d876e649e18
|
|
Updating readme files with trademark information.
Change-Id: I9e20a0163c65119fd29826bf088c5f62d1e1c3b3
|
|
The FreeRTOS port resets the stack when the scheduler starts. Move the
queue to global memory for it to not be overwritten.
Change-Id: I98f2360a14a0f74a65353694c6e2f60d37461ecf
|
|
Add example project that builds both secure and nonsecure world
sides and the inference is done on the secure side.
This commit includes the mpc driver as found in the upstream
trustedfirmware git repository
https://git.trustedfirmware.org/TF-M/trusted-firmware-m.git
(8c0a234e453b51e6606d11599d0cb15097c3da48)
The model,input and output used are described in the README.md in this
directory.
Change-Id: Ie54904a38d54df4de2d6936f066c388ea58e396b
|
|
Moved the initialisation of the TensorArena from inference_process.cpp in core_software to application level.
Change-Id: Id2f8361b19241b4251e2ce90b4f330d32734e801
|
|
Change-Id: I59561365b61d256d3211101739dfb5c3e15488fa
|
|
The core_software handling has split cmsis_startup into cmsis_system and
cmsis_startup in order to be able to controll the build of the libraries
per excecutable. This change adapts to that change.
Change-Id: I13286c75ba1c2298e760f9c0594ce4fec9db33dc
|