NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
OMAPL138/C6748 AIS Read Benchmarks
Contents
Introduction[edit]
This page gives the measurements of the time taken (i.e., Booting time ) to execute the first instruction after power on reset the board. The boot modes of OMAP-L138/OMAPL137/C6748 are experimented and projected them as benchmark measurements. The figure projected here are approximate as it is done under the lab environment.
Boot Performance using AIS read[edit]
Board | Boot Mode | Boot Time (ms) |
C6748 LCDK | NAND16 | 37 |
SD/MMC | 200 | |
UART | 300 | |
OMAP-L138 LCDK | NAND16 | 120 |
SD/MMC | 2100 | |
UART | 300 |
Test Details[edit]
Methodology[edit]
The test case used here toggles a GPIO immediately at the start of the first AIS command executed by RBL. AIS read timings were measured from the rising edge of RESETn to the rising/falling edge of the GPIO.
Please note that the measured values are just a bench exercise which includes a little bit of time consumed for AIS support functions to configure the PSC and PINMUX before the GPIO toggling starts.
Software[edit]
This test case used a simple LED application. After converting the LED application into an AIS formatted file, it is patched with additional AIS commands. So, now, the AIS commands will be patched in a way that it sits on top of the LED Application file. These AIS commands actually does the following.
1. Configuring GPIO PSC 2. Pinmuxing the GPIO 3. Toggles the GPIO ( The target CPU runs at 24MHz ie bypass frequency.)
Thus, the time is measured between the reset and the first toggling of GPIO. For more information on manually patching AIS file with AIS commands, please refer to the following TI WIKI.
http://processors.wiki.ti.com/index.php/Manually_Patch_AIS_File_using_Perl_Script
Hardware[edit]
Test was performed on Revision 2.1 of OMAP-L138/C6748 devices. Boot times may differ greatly from previous revisions for some boot modes.
The board runs at 24MHz ie bypass frequency.
OMAPL138 LCDK Board[edit]
Hardware | Part Number | Frequency |
---|---|---|
Board | OMAPL138 LCDK board | - |
SoC | OMAP-L138 Rev. 2.1 | 24 MHz |
NAND16 | SAMSUNG K4T1G1640F-BCE7 16-bit NAND Flash | 8MHz |
MMC/SD | TRANSCEND 8GB micro SD card |
12 MHz |
C6748 LCDK Board[edit]
Hardware | Part Number | Frequency |
---|---|---|
Board | C6748 LCDK board | - |
SoC | C6748 Rev. 2.1 | 24 MHz |
NAND16 | SAMSUNG K4T1G1640F-BCE7 16-bit NAND Flash | 8MHz |
MMC/SD | TRANSCEND 8GB micro SD card |
12 MHz |
Discussion[edit]
The results show that the OMAP-L138 boot times (ARM boot devices) are generally much longer than C6748/OMAP-L137 (DSP boot device) due to the following reasons.
- The ARM cache is not enabled by default, while the DSP cache is. This means that in the code, especially, delay loops will execute much faster on the DSP.
- The OMAP-L138/AM1808 require additional time before the ARM bootloader begins executing.
- The DSP compiler generates fewer instructions for delay loops than the ARM compiler, resulting in faster execution.
For larger boot images on OMAP-L138/AM1808, it would be beneficial to enable the cache through AIS commands. Future versions of AISgen will provide this option.