summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorKshitij Sisodia <kshitij.sisodia@arm.com>2022-08-12 11:53:45 +0100
committerMaksims Svecovs <maksims.svecovs@arm.com>2022-08-16 10:24:39 +0000
commit01334f974f75d5ce405571095fc888c8ed7846d4 (patch)
treea6190f6ec4f2e634da79ede9a5bbe1cf5f99c66e /docs
parentd9bb3cf4fcc0c96bb9f6e9920eff18bf04d92258 (diff)
downloadml-embedded-evaluation-kit-01334f974f75d5ce405571095fc888c8ed7846d4.tar.gz
MLECO-3319: Documentation updates for Arm® Corstone™-310.
Documentation updates around use of Arm® Corstone™-310 AVH, especially in terms of use of timing adapters (TA). Also, use of TA's is forced off for SSE-310 subsystem's CMake configuration. Signed-off-by: Kshitij Sisodia <kshitij.sisodia@arm.com> Signed-off-by: Maksims Svecovs <maksims.svecovs@arm.com> Change-Id: I66a87060d8d47ce2580aa15f3908be20162eab54
Diffstat (limited to 'docs')
-rw-r--r--docs/sections/arm_virtual_hardware.md15
-rw-r--r--docs/sections/building.md3
-rw-r--r--docs/sections/timing_adapters.md25
3 files changed, 27 insertions, 16 deletions
diff --git a/docs/sections/arm_virtual_hardware.md b/docs/sections/arm_virtual_hardware.md
index 01c4c99..7982b73 100644
--- a/docs/sections/arm_virtual_hardware.md
+++ b/docs/sections/arm_virtual_hardware.md
@@ -6,11 +6,12 @@
## Overview
-Arm® Virtual Hardware is an accurate representation of a physical System on Chip and runs as a simple application in a
-Linux environment for easy scalability in the cloud and removes dependency from silicon availability.
-Powered by Amazon Web Services (AWS), developers can launch Amazon Machine Image
-(AMI) running as a virtual server in the cloud. The Arm Virtual Hardware is configured with the Corstone™-300 MPS3
-based Fixed Virtual Platform (FVP), compiler and other tools.
+Arm® Virtual Hardware (AVH) is an evolution of Arm’s modelling technology delivering models of Arm-based processors,
+systems, third party hardware for application developers and SoC designers to build and test software before silicon
+and hardware availability. It is an accurate representation of a physical System on Chip and runs as a simple
+application in a Linux environment for easy scalability in the cloud. Powered by Amazon Web Services (AWS), developers
+can launch Amazon Machine Image (AMI) running as a virtual server in the cloud. The Arm Virtual Hardware is configured
+with the Arm® Corstone™-300 and Corstone™-310 MPS3 based Fixed Virtual Platform (FVP), compiler and other tools.
### Getting started
@@ -23,7 +24,7 @@ To take advantage of Arm Virtual Hardware, you would need to have an AWS account
To access the Arm Virtual Hardware AWS instance via ssh, accept the prompt to generate a *.pem* key
while creating the instance or add it later.
- You can then access the AWS instance over ssh: `$ ssh -i <mykey.pem> ubuntu@<ec2-ip-address>`.
+ You can then access the AWS instance over ssh: `$ ssh -i <mykey.pem> ubuntu@<ec2-ip-address>`.
It may be necessary to change the permissions for mykey.pem with `$ chmod 400 mykey.pem`.
### Useful Links
@@ -42,3 +43,5 @@ with the ml-embedded-evaluation-kit. Note that on the AWS instance, the FVPs are
In order to view the FVP window when launching on the AWS instance a VNC is required.
See relevant section [here](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-linux-2-install-gui/).
+Alternatively, the FVPs can be given certain command line arguments to make them execute without the front-end. See
+[Running the FVP without the UI](./deployment.md#running-the-fvp-without-the-ui).
diff --git a/docs/sections/building.md b/docs/sections/building.md
index f6b71a8..4750e3e 100644
--- a/docs/sections/building.md
+++ b/docs/sections/building.md
@@ -253,6 +253,9 @@ The build parameters are:
- `ETHOS_U_NPU_TIMING_ADAPTER_ENABLED`: Specifies if the *Ethos-U* timing adapter is enabled.
+ > **NOTE**: This setting is set to ON for all platforms if `ETHOS_U_NPU_ENABLED` is set. However, it is overridden
+ > to OFF for Arm® Corstone-310 implementation.
+
- `TA_CONFIG_FILE`: The path to the CMake configuration file that contains the timing adapter parameters. Used only if
the timing adapter build is enabled. Default for Ethos-U55 NPU is
[ta_config_u55_high_end.cmake](../../scripts/timing_adapter/ta_config_u55_high_end.cmake),
diff --git a/docs/sections/timing_adapters.md b/docs/sections/timing_adapters.md
index ab05490..7ca7076 100644
--- a/docs/sections/timing_adapters.md
+++ b/docs/sections/timing_adapters.md
@@ -1,18 +1,23 @@
# Building timing adapter with custom options
The sources contain the configuration for a timing adapter utility for the *Arm® Ethos™-U* NPU driver. The timing
-adapter allows the platform to simulate user provided memory bandwidth and latency constraints.
+adapter allows the platform to simulate user provided memory bandwidth and latency constraints on platforms that
+support it. The timing adapter driver aims to control the behavior of two AXI buses used by *Ethos-U* NPU. One is for
+SRAM memory region, and the other is for flash or DRAM.
-The timing adapter driver aims to control the behavior of two AXI buses used by *Ethos-U* NPU. One is for SRAM memory
-region, and the other is for flash or DRAM.
+The SRAM is where intermediate buffers are expected to be allocated and therefore, this region can serve frequent read
+and write traffic generated by computation operations while executing a neural network inference. The flash or DDR is
+where we expect to store the model weights and therefore, this bus would only usually be used for RO traffic.
-The SRAM is where intermediate buffers are expected to be allocated and therefore, this region can serve frequent Read
-and Write traffic generated by computation operations while executing a neural network inference.
+It is used for MPS3 FPGA and for Fast Model environment (or [AVH](./arm_virtual_hardware.md)).
-The flash or DDR is where we expect to store the model weights and therefore, this bus would only usually be used for RO
-traffic.
-
-It is used for MPS3 FPGA and for Fast Model environment.
+> **NOTE**: All Arm® Corstone™-300 based platform implementations fully support the use of `timing adapter` to perform
+> bandwidth/latency sweeps for performance estimation of the Arm® Ethos™-U NPUs. However, Arm® Corstone™-310's
+> implementation of timing adapter is, different and, unsuitable for such benchmarking. See
+> [differences between timing adapter implementations](#differences-between-timing-adapter-implementations-in-arm-corstone_300-and-arm-corstone_310) for more details. Therefore, for Arm® Corstone™-310 targets, the
+> CMake configuration is set up to ignore the timing adapters, if any, entirely. If you want to do any NPU performance
+> benchmarking for different bandwidth and latency conditions, we recommend using the Arm® Corstone™-300
+> implementations.
The CMake build framework allows the parameters to control the behavior of each bus with following parameters:
@@ -128,7 +133,7 @@ An example of the build with a custom timing adapter configuration:
```commandline
cmake .. -DTA_CONFIG_FILE=scripts/cmake/timing_adapter/my_ta_config.cmake
```
-## Differences between timing adapter implementations in Arm® Corstone™-300 and Arm® Corstone™-310
+## Differences between timing adapter implementations in Arm Corstone-300 and Arm Corstone-310
Corstone-300 FVP and FPGA implements timing adapters that are tied to AXI masters M0 and M1 on the Ethos-U NPU.