ArmVersatileExpressLinux
ARM Versatile Express Platform
This page includes information for the ARM Versatile Express platform configured for ARM Cortex-A9MP and Linux2.6.
The platform is included as part of the standard OVPsim download package.
You can download a self installer that includes the platform source, all peripherals, and a binary of Linux2.6 - in fact everything you need to boot and start to use the ARM Versatile Express Virtual Platform running Linux2.6.
To run the platform you do need an OVPsim license key.
| [for Windows] Versatile Express booting Linux on Cortex-A9MP Single, Dual and Quad Core (53.01 MB) ARM Versatile Express module and TLM platform including Cortex-A9MP Core, all peripherals and software to boot Linux2.6 |
| [for Linux] Versatile Express booting Linux on Cortex-A9MP Single, Dual and Quad Core (58.85 MB) ARM Versatile Express module and TLM platform including Cortex-A9MP Core, all peripherals and software to boot Linux2.6 |
This standard download includes the ARM Versatile Express platform, peripherals, and Linux2.6 image.
When downloaded, run the installer (Windows32.exe or Linux32.exe) and follow the simple instructions.
Diagram
Frame Buffer Test Application
The ramdisk provided with this demo includes a Frame Buffer application that can be executed.
To execute login to the simulated linux kernel using 'root' as the user name and then on the command line type 'df_andi'. This application shows a graphical 'penguin population', as shown in the following screen shot.
Compiling User Programs, and adding to disk image
The following sections illustrate how user applications can simply be added into a ramdisk for the Linux system. And then run within the Versatile Express virtual platform. In this example we are building and adding the 'benchmarks' user applications provided in the zip file benchmarks.zip, which includes a Makefile, into the ramdisk.
On a Linux host Machine
Firstly download the ARM linux toolchain from CodeSourcery
http://www.codesourcery.com/sgpp/lite/arm/portal/release858∞
Install this toolchain on your disk
Build benchmark applications in the following manner
% make -C benchmarks TOOLDIR=<pathToCompilerInstallation> all
This will create several executables, now we want to add this to our ramdisk
Extract the current Ramdisk 'fs.img' to file system
% unpackImage.sh fs.img fs
Copy benchmarks into the file system
% cp -r benchmarks fs
Package filesystem back into a ramdisk
% packImage.sh fs fs.img
Re run the simulator, this time there will be a top level directory called 'benchmarks', which contains the applications build in the previous steps these can now be executed in the simulated Linux
On a Windows host Machine with Msys/Mingw
Firstly download the ARM linux toolchain from CodeSourcery
http://www.codesourcery.com/sgpp/lite/arm/portal/release858∞
Install this toolchain on your disk
you will also need a windows version of cpio, this can be found at
http://sourceforge.net/projects/gnuwin32/files/cpio/cpio-2.6-2.exe/download∞
Install cpio, and ensure it appears on your path in the msys shell
Build benchmark applications in the following manner
% make -C benchmarks TOOLDIR=<pathToCompilerInstallation> all
Unfortunately under windows we cannot unpack the image to a filesystem because windows does not understand symbolic links, which are present on the simulated disk, So under Windows we will simply append the files onto the existing image
% appendImage.sh benchmarks fs.img newfs.img
% mv newfs.img fs.img
Re run the simulator, this time there will be a top level directory called 'benchmarks', which contains the applications build in the previous steps these can now be executed in the simulated Linux
| Download script to pack a directory into a disk image packImage.sh / 151 Bytes |
| Download script to unpack a disk image to a directory unpackImage.sh / 155 Bytes |
| Download script to append a program onto a disk image appendImage.sh / 402 Bytes |
ImperasPage ArmHoldingsPlatforms