Skip to content

Commit 5ced96e

Browse files
authored
Update GitHub org (analogdevicesinc#335)
1 parent a8c8c79 commit 5ced96e

File tree

3 files changed

+24
-24
lines changed

3 files changed

+24
-24
lines changed

README.md

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
# ADI MAX78000/MAX78002 Model Training and Synthesis
22

3-
April 5, 2024
3+
April 19, 2024
44

55
ADI’s MAX78000/MAX78002 project is comprised of five repositories:
66

77
1. **Start here**:
8-
**[Top Level Documentation](https://github.com/MaximIntegratedAI/MaximAI_Documentation)**
8+
**[Top Level Documentation](https://github.com/analogdevicesinc/MaximAI_Documentation)**
99
2. The software development kit (MSDK), which contains drivers and example programs ready to run on the evaluation kits (EVkit and Feather):
1010
[Analog Devices MSDK](https://github.com/analogdevicesinc/msdk)
1111
3. The training repository, which is used for deep learning *model development and training*:
12-
[ai8x-training](https://github.com/MaximIntegratedAI/ai8x-training) **(described in this document)**
12+
[ai8x-training](https://github.com/analogdevicesinc/ai8x-training) **(described in this document)**
1313
4. The synthesis repository, which is used to *convert a trained model into C code* using the “izer” tool:
14-
[ai8x-synthesis](https://github.com/MaximIntegratedAI/ai8x-synthesis) **(described in this document)**
14+
[ai8x-synthesis](https://github.com/analogdevicesinc/ai8x-synthesis) **(described in this document)**
1515
5. The reference design repository, which contains host applications and sample applications for reference designs such as [MAXREFDES178 (Cube Camera)](https://www.analog.com/en/design-center/reference-designs/maxrefdes178.html):
1616
[refdes](https://github.com/analogdevicesinc/MAX78xxx-RefDes)
1717
*Note: Examples for EVkits and Feather boards are part of the MSDK*
@@ -73,15 +73,15 @@ Limited support and advice for using other hardware and software combinations is
7373

7474
**The only officially supported platforms for model training** are Ubuntu Linux 20.04 LTS and 22.04 LTS on amd64/x86_64, either the desktop or the [server version](https://ubuntu.com/download/server).
7575

76-
*Note that hardware acceleration using CUDA is <u>not available</u> in PyTorch for Raspberry Pi 4 and other <u>aarch64/arm64</u> devices, even those running Ubuntu Linux 20.04/22.04. See also [Development on Raspberry Pi 4 and 400](https://github.com/MaximIntegratedAI/ai8x-synthesis/blob/develop/docs/RaspberryPi.md) (unsupported).*
76+
*Note that hardware acceleration using CUDA is <u>not available</u> in PyTorch for Raspberry Pi 4 and other <u>aarch64/arm64</u> devices, even those running Ubuntu Linux 20.04/22.04. See also [Development on Raspberry Pi 4 and 400](https://github.com/analogdevicesinc/ai8x-synthesis/blob/develop/docs/RaspberryPi.md) (unsupported).*
7777

7878
This document also provides instructions for installing on RedHat Enterprise Linux / CentOS 8 with limited support.
7979

8080
##### Windows
8181

82-
On Windows 10 version 21H2 or newer, and Windows 11, after installing the Windows Subsystem for Linux (WSL2), Ubuntu Linux 20.04 or 22.04 can be used inside Windows with full CUDA acceleration, please see *[Windows Subsystem for Linux](https://github.com/MaximIntegratedAI/ai8x-synthesis/blob/develop/docs/WSL2.md).* For the remainder of this document, follow the steps for Ubuntu Linux.
82+
On Windows 10 version 21H2 or newer, and Windows 11, after installing the Windows Subsystem for Linux (WSL2), Ubuntu Linux 20.04 or 22.04 can be used inside Windows with full CUDA acceleration, please see *[Windows Subsystem for Linux](https://github.com/analogdevicesinc/ai8x-synthesis/blob/develop/docs/WSL2.md).* For the remainder of this document, follow the steps for Ubuntu Linux.
8383

84-
If WSL2 is not available, it is also possible (but not recommended due to inherent compatibility issues and slightly degraded performance) to run this software natively on Windows. Please see *[Native Windows Installation](https://github.com/MaximIntegratedAI/ai8x-synthesis/blob/develop/docs/Windows.md)*.
84+
If WSL2 is not available, it is also possible (but not recommended due to inherent compatibility issues and slightly degraded performance) to run this software natively on Windows. Please see *[Native Windows Installation](https://github.com/analogdevicesinc/ai8x-synthesis/blob/develop/docs/Windows.md)*.
8585

8686
##### macOS
8787

@@ -137,7 +137,7 @@ Ctrl+A,D to disconnect
137137
The following software is optional, and can be replaced with other similar software of the user’s choosing.
138138

139139
1. Code Editor
140-
Visual Studio Code, <https://code.visualstudio.com> or the VSCodium version, <https://vscodium.com>, with the “Remote - SSH” plugin; *to use Visual Studio Code on Windows as a full development environment (including debug), see <https://github.com/MaximIntegratedTechSupport/VSCode-Maxim>*
140+
Visual Studio Code, <https://code.visualstudio.com> or the VSCodium version, <https://vscodium.com>, with the “Remote - SSH” plugin; *to use Visual Studio Code on Windows as a full development environment (including debug), see <https://github.com/analogdevicesinc/VSCode-Maxim>*
141141
Sublime Text, <https://www.sublimetext.com>
142142
2. Markdown Editor
143143
Typora, <http://typora.io>
@@ -309,16 +309,16 @@ $ git config --global user.name "First Last"
309309

310310
#### Nervana Distiller
311311

312-
[Nervana Distiller](https://github.com/MaximIntegratedAI/distiller) is automatically installed as a git sub-module with the other packages. Distiller is used for its scheduling and model export functionality.
312+
[Nervana Distiller](https://github.com/analogdevicesinc/distiller) is automatically installed as a git sub-module with the other packages. Distiller is used for its scheduling and model export functionality.
313313

314314
### Upstream Code
315315

316316
Change to the project root and run the following commands. Use your GitHub credentials if prompted.
317317

318318
```shell
319319
$ cd <your/project>
320-
$ git clone --recursive https://github.com/MaximIntegratedAI/ai8x-training.git
321-
$ git clone --recursive https://github.com/MaximIntegratedAI/ai8x-synthesis.git
320+
$ git clone --recursive https://github.com/analogdevicesinc/ai8x-training.git
321+
$ git clone --recursive https://github.com/analogdevicesinc/ai8x-synthesis.git
322322
```
323323

324324
#### Creating the Virtual Environment
@@ -585,7 +585,7 @@ The MSDK is also available as a [git repository](https://github.com/analogdevice
585585
$ pacman -S --needed base filesystem msys2-runtime make
586586
```
587587

588-
5. Install packages for OpenOCD. OpenOCD binaries are available in the “openocd” sub-folder of the ai8x-synthesis repository. However, some additional dependencies are required on most systems. See [openocd/README.md](https://github.com/MaximIntegratedAI/ai8x-synthesis/blob/develop/openocd/README.md) for a list of packages to install, then return here to continue.
588+
5. Install packages for OpenOCD. OpenOCD binaries are available in the “openocd” sub-folder of the ai8x-synthesis repository. However, some additional dependencies are required on most systems. See [openocd/README.md](https://github.com/analogdevicesinc/ai8x-synthesis/blob/develop/openocd/README.md) for a list of packages to install, then return here to continue.
589589

590590
6. Add the location of the toolchain binaries to the system path.
591591

@@ -738,7 +738,7 @@ The number of discarded pixels is network specific and dependent on pooling stri
738738

739739
*Note: Streaming mode requires the use of [FIFOs](#fifos).*
740740

741-
For concrete examples on how to implement streaming mode with a camera, please see the [Camera Streaming Guide](https://github.com/MaximIntegratedAI/MaximAI_Documentation/blob/main/Guides/Camera_Streaming_Guide.md).
741+
For concrete examples on how to implement streaming mode with a camera, please see the [Camera Streaming Guide](https://github.com/analogdevicesinc/MaximAI_Documentation/blob/main/Guides/Camera_Streaming_Guide.md).
742742

743743
#### FIFOs
744744

@@ -2014,7 +2014,7 @@ While there can be multiple reasons for this, check two important settings that
20142014
20152015
#### Introduction
20162016
2017-
The following chapter describes the neural architecture search (NAS) solution for MAX78000/MAX78002 as implemented in the [ai8x-training](https://github.com/MaximIntegratedAI/ai8x-training) repository. Details are provided about the NAS method, how to run existing NAS models in the repository, and how to define a new NAS model.
2017+
The following chapter describes the neural architecture search (NAS) solution for MAX78000/MAX78002 as implemented in the [ai8x-training](https://github.com/analogdevicesinc/ai8x-training) repository. Details are provided about the NAS method, how to run existing NAS models in the repository, and how to define a new NAS model.
20182018
20192019
The intention of NAS is to find the best neural architecture for a given set of requirements by automating architecture engineering. NAS explores the search space automatically and returns an architecture that is hard to optimize further using human or “manual” design. Multiple different techniques are proposed in the literature for automated architecture search, including reinforcement-based and evolutionary-based solutions.
20202020
@@ -2087,7 +2087,7 @@ The only model architecture implemented in this repository is the sequential mod
20872087
20882088
<img src="docs/NAS_Sequential_Model.png" alt="nas_model" style="zoom:50%;"/>
20892089
2090-
All required elastic search strategies are implemented in this [model file](https://github.com/MaximIntegratedAI/ai8x-training/blob/develop/models/ai85nasnet-sequential.py).
2090+
All required elastic search strategies are implemented in this [model file](https://github.com/analogdevicesinc/ai8x-training/blob/develop/models/ai85nasnet-sequential.py).
20912091
20922092
A new model architecture can be implemented by implementing the `OnceForAllModel` interface. The new model class must implement the following:
20932093
@@ -2214,7 +2214,7 @@ The following table describes the most important command line arguments for `ai8
22142214
22152215
### YAML Network Description
22162216
2217-
The [quick-start guide](https://github.com/MaximIntegratedAI/MaximAI_Documentation/blob/main/Guides/YAML%20Quickstart.md) provides a short overview of the purpose and structure of the YAML network description file.
2217+
The [quick-start guide](https://github.com/analogdevicesinc/MaximAI_Documentation/blob/main/Guides/YAML%20Quickstart.md) provides a short overview of the purpose and structure of the YAML network description file.
22182218
22192219
If `yamllint` is installed and available in the shell path, it is automatically run against the configuration file and all warnings and errors are reported.
22202220
*Note: The name of the linter can be changed using the `--yamllint` command line argument.*
@@ -3029,7 +3029,7 @@ To run another inference, ensure all quadrants are disabled (stopping the state
30293029
The generated code is split between API code (in `cnn.c`) and data-dependent code in `main.c` or `main_riscv.c`. The data-dependent code is based on a known-answer test. The `main()` function shows the proper sequence of steps to load and configure the CNN accelerator, run it, unload it, and verify the result.
30303030
30313031
`void load_input(void);`
3032-
Load the example input. This function can serve as a template for loading data into the CNN accelerator. Note that the clocks and power to the accelerator must be enabled first. If this is skipped, the device may appear to hang and the [recovery procedure](https://github.com/MaximIntegratedAI/MaximAI_Documentation/tree/main/MAX78000_Feather#how-to-unlock-a-max78000-that-can-no-longer-be-programmed) may have to be used.
3032+
Load the example input. This function can serve as a template for loading data into the CNN accelerator. Note that the clocks and power to the accelerator must be enabled first. If this is skipped, the device may appear to hang and the [recovery procedure](https://github.com/analogdevicesinc/MaximAI_Documentation/tree/main/MAX78000_Feather#how-to-unlock-a-max78000-that-can-no-longer-be-programmed) may have to be used.
30333033
30343034
`int check_output(void);`
30353035
This function verifies that the known-answer test works correctly in hardware (using the example input). This function is typically not needed in the final application.
@@ -3223,7 +3223,7 @@ There can be many reasons why the known-answer test (KAT) fails for a given netw
32233223
* For very short and small networks, disable the use of WFI (wait for interrupt) instructions while waiting for completion of the CNN computations by using the command line option `--no-wfi`. *Explanation: In these cases, the network terminates more quickly than the time it takes between testing for completion and executing the WFI instruction, so the WFI instruction is never interrupted and the code may appear to hang.*
32243224
* The `--no-wfi` option can also be useful when trying to debug code, since the debugger loses connection when the device enters sleep mode using `__WFI()`.
32253225
* By default, there is a two-second delay at the beginning of the code. This time allows the debugger to take control before the device enters any kind of sleep mode. `--no-wfi` disables sleep mode (see also the related information [above](#known-answer-test-kat-console-does-not-print-passfail)). The time delay can be modified using the `--debugwait` option.
3226-
If the delay is too short or skipped altogether, and the device does not wake at the end of execution, the device may appear to hang and the [recovery procedure](https://github.com/MaximIntegratedAI/MaximAI_Documentation/tree/main/MAX78000_Feather#how-to-unlock-a-max78000-that-can-no-longer-be-programmed) may have to be used in order to load new code or to debug code.
3226+
If the delay is too short or skipped altogether, and the device does not wake at the end of execution, the device may appear to hang and the [recovery procedure](https://github.com/analogdevicesinc/MaximAI_Documentation/tree/main/MAX78000_Feather#how-to-unlock-a-max78000-that-can-no-longer-be-programmed) may have to be used in order to load new code or to debug code.
32273227
* For very large and deep networks, enable the boost power supply using the `--boost` command line option. On the EVkit, the boost supply is connected to port pin P2.5, so the command line option is `--boost 2.5`.
32283228
* The default compiler optimization level is `-O2`, and incorrect code may be generated under rare circumstances. Lower the optimization level in the generated `Makefile` to `-O1`, clean (`make distclean && make clean`), and rebuild the project (`make`). If this solves the problem, one of the possible reasons is that code is missing the `volatile` keyword for certain variables.
32293229
To permanently adjust the default compiler optimization level, modify `MXC_OPTIMIZE_CFLAGS` in `assets/embedded-ai85/templateMakefile` for Arm code and `assets/embedded-riscv-ai85/templateMakefile.RISCV` for RISC-V code.
@@ -3264,17 +3264,17 @@ When running C code generated with `--energy`, the power display on the EVKit wi
32643264
32653265
*Note: MAX78000 uses LED1 and LED2 to trigger power measurement via MAX32625 and MAX34417.*
32663266
3267-
See the [benchmarking guide](https://github.com/MaximIntegratedAI/MaximAI_Documentation/blob/main/Guides/MAX7800x%20Power%20Monitor%20and%20Energy%20Benchmarking%20Guide.pdf) for more information about benchmarking.
3267+
See the [benchmarking guide](https://github.com/analogdevicesinc/MaximAI_Documentation/blob/main/Guides/MAX7800x%20Power%20Monitor%20and%20Energy%20Benchmarking%20Guide.pdf) for more information about benchmarking.
32683268
32693269
32703270
32713271
## Further Information
32723272
3273-
Additional information about the evaluation kits, and the software development kit (MSDK) is available on the web at <https://github.com/MaximIntegratedAI/MaximAI_Documentation>.
3273+
Additional information about the evaluation kits, and the software development kit (MSDK) is available on the web at <https://github.com/analogdevicesinc/MaximAI_Documentation>.
32743274
32753275
[AHB Addresses for MAX78000 and MAX78002](docs/AHBAddresses.md)
32763276
3277-
[Facial Recognition System](https://github.com/MaximIntegratedAI/ai8x-training/blob/develop/docs/FacialRecognitionSystem.md)
3277+
[Facial Recognition System](https://github.com/analogdevicesinc/ai8x-training/blob/develop/docs/FacialRecognitionSystem.md)
32783278
32793279
32803280
---
@@ -3306,6 +3306,6 @@ Do not try to push any changes into the main branch. Instead, create a fork and
33063306
*Note: After creating the fork, you must re-enable actions in the “Actions” tab of the repository on GitHub.*
33073307
33083308
The following document has more information:
3309-
<https://github.com/MaximIntegratedAI/MaximAI_Documentation/blob/main/CONTRIBUTING.md>
3309+
<https://github.com/analogdevicesinc/MaximAI_Documentation/blob/main/CONTRIBUTING.md>
33103310
33113311
---

README.pdf

9.71 KB
Binary file not shown.

docs/Windows.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
December 8, 2022
44

5-
The preferred and most compatible way to train networks is using the *[Windows Subsystem for Linux (WSL2)](https://github.com/MaximIntegratedAI/ai8x-synthesis/blob/develop/docs/WSL2.md).* However, WSL2 is not always available. The instructions in this document demonstrate how to train networks natively on Windows, without WSL2.
5+
The preferred and most compatible way to train networks is using the *[Windows Subsystem for Linux (WSL2)](https://github.com/analogdevicesinc/ai8x-synthesis/blob/develop/docs/WSL2.md).* However, WSL2 is not always available. The instructions in this document demonstrate how to train networks natively on Windows, without WSL2.
66

77
## Requirements
88

@@ -85,7 +85,7 @@ Open a MinGW shell using Start - Maxim Integrated SDK - MinGW:
8585

8686
Next, change to the target directory (the default is `C:\MaximSDK\Tools\MinGW\msys\1.0\home\<name>\`).
8787

88-
Check out the training and synthesis repositories as detailed in the [main documentation](https://github.com/MaximIntegratedAI/ai8x-synthesis/blob/develop/README.md#upstream-code).
88+
Check out the training and synthesis repositories as detailed in the [main documentation](https://github.com/analogdevicesinc/ai8x-synthesis/blob/develop/README.md#upstream-code).
8989

9090

9191

0 commit comments

Comments
 (0)