OpenRISC 1000 Project: Xess XSV Demo Apps

Home | Architecture | OpenRISC 1200 | GNU Toolchain | Or1ksim | Linux | uClinux | RTEMS | ATS

We are preparing some tutorials how to use the OpenRISC. Until this tutorials are ready, you can only download some precompiled demo apps for Xess XSV800 board. Some demos could also be used with the XSV300 board, but would have to be synthesized/implemented again for the XSV300 board.
If you can't wait for tutorials, you can get all the individual blocks from the OpenCores CVS under module name or1k (several submodules) and uart16550.

MP3 Demo App

MP3 demo uses the OR1200 as the RISC processor running GNU GPLed version of the MP3 decoder software called MAD. In order to run this demo, set your XSV800 board to 20 MHz (set frequency divisor to 5 with Xess utility GXSSETCLK). Since setting the frequency doesn't always work, check with an oscilloscope or similar tool that it is set properly. If you can't set it, consult Xess online documentation.
Attach a speaker or headsets to speaker out connector and download the classic.exo (3.3MB) file to onboard flash using GXSLOAD utility provided by Xess.
When the flash is loaded, restart the board by turning power off and then back on. You should hear classical music. One switch button is used to position the player to the first song and and one to advance to the next song.

uClinux/OR32 Demo App

This demo uses uClinux 2.0.x port running pn OR1200 RISC processor. In order to run this demo, set your XSV800 board to 10 MHz (set frequency divisor to 10 with Xess utility GXSSETCLK). Since setting the frequency doesn't always work, check with an oscilloscope or similar tool that it is set properly. If you can't set it, consult Xess online documentation.
Download the linux-35.exo (4.4MB) file to onboard flash using GXSLOAD utility provided by Xess. Now you will also have to download a new CPLD configuration so that the Serial RS232 console will work. Download the cpld-tdm.svf (850KB) file.
Connect the console terminal by attach a RS232 cable connected to a PC running some sort of terminal software (Minicom on Linux or HyperTerminal on Windows for example). Set communication parameters to 4800 baud, 8N1 (8 bits data, no parity, 1 stop bit).
When the flash and CPLD are loaded, restart the board by turning power off and then back on. Now you should see something like this (can vary since uClinux port is under heavy development):

OpenRisc 1000 support (C) www.opencores.org

uClinux/OR32 on Xess XSV800
Flat model support (C) 1998,1999 Kenneth Albanowski, D. Jeff Dionne
Calibrating delay loop.. ok - 0.81 BogoMIPS
Memory available: 1852k/2024k RAM, 0k/0k ROM (180k kernel data, 423k code)
Swansea University Computer Society NET3.035 for Linux 2.0
NET3: Unix domain sockets 0.13 for Linux NET3.035.
uClinux version 2.0.38.1pre3 (simons@odin) (gcc version 2.95.2 19991024 (release
)) #186 Mon Aug 6 20:45:43 CEST 2001
Serial driver version 4.13p1 with no serial options enabled
ttyS00 at 0x9c000000 (irq = 15) is a 16550A
Ramdisk driver initialized : 16 ramdisks of 512K size
Blkmem copyright 1998,1999 D. Jeff Dionne
Blkmem copyright 1998 Kenneth Albanowski
Blkmem 0 disk images:
RAMDISK: Romfs filesystem found at block 0
RAMDISK: Loading 385 blocks into ram disk... done.
VFS: Mounted root (romfs filesystem).
   request_irq irq = 15  IRQ_T(info) = 20000000
Executing sash

Sash command shell (version 1.1.1)
/>
/>
/> ls
Makefile
Makefile~
bin
dev
linuxrc
proc

/> date
Thu Jan 17 03:44:32 2002

/>

Ignore the BogoMIPS rating. Delay loop is not yet calibrated.

We didn't try yet to increase speed of the processor. Looks like there is quite some margin left.

More Demo Apps to Come ...

One of the next Xess demos will be demonstration of the Ethernet MAC core together with the OR1200. Hopefully we will also soon be able to demonstrate a simple web server - uClinux running on OR1200 on XSV800 with both UART and Ethernet.
If you have an idea for a cool demo, let us know.

Credits

Credits go to Xess Corp for supplying one XSV board and to Xilinx Inc for supplying Xilinx Foundation software.

Mailing list / Discussion Forum

To participate in the development or simply to discuss OpenRISC 1200 issues and to report bugs, go to the openrisc mailing list. To subscribe to the list, follow mailing list subscribe instructions.

Page Maintainer

This web page is maintained by Damjan Lampret.