1 |
754 |
lampret |
OpenRISC Test Application for XESS XSV800 board
|
2 |
|
|
===============================================
|
3 |
|
|
|
4 |
|
|
Introduction
|
5 |
|
|
++++++++++++
|
6 |
|
|
|
7 |
|
|
This is OpenRISC Test Application. It contains OpenRISC 1200 and a set of
|
8 |
|
|
OpenCores peripherals. The whole test application SoC (System-on-Chip) is
|
9 |
|
|
designed with the XSV board in mind. Peripherals include UART16550, VGA CRT
|
10 |
|
|
controller, Audio controller, debug interface, Ethernet 10/100 MAC, SRAM
|
11 |
|
|
and Flash controllers. CRT and Audio controller are optimized for XSV
|
12 |
|
|
board.
|
13 |
|
|
OR1200 is a 32-bit RISC with harvard architecture. For XSV800 board it is
|
14 |
|
|
configured with 4/4KB data/instruction caches, no D/I MMU (lack of
|
15 |
|
|
BlockRAMs), and with programmable interrupt controller (PIC), MAC unit,
|
16 |
|
|
tick timer unit and debug unit.
|
17 |
759 |
lampret |
Right now the whole system runs only at 10MHz. This is because we are
|
18 |
|
|
right now focusing on getting functionality working and not optimizing.
|
19 |
|
|
Running heavily constrained P&R takes much longer.
|
20 |
754 |
lampret |
|
21 |
|
|
Software for this test application consists of:
|
22 |
|
|
- ORP (OpenRISC Reference Platform) monitor
|
23 |
|
|
- Linux (uClinux 2.0.36)
|
24 |
|
|
- OpenRISC GNU Toolchain (ANSI C compiler GCC, debugger etc)
|
25 |
|
|
|
26 |
|
|
Directory Structure
|
27 |
|
|
+++++++++++++++++++
|
28 |
|
|
|
29 |
|
|
bench: test bench (for simulation verification)
|
30 |
|
|
doc: Some of the documentation (more on the OpenCores web)
|
31 |
759 |
lampret |
rtl: Verilog sources of the XSV FPGA SoC
|
32 |
754 |
lampret |
sim: For running simulation
|
33 |
|
|
sw: Software example (OR1K GNU toolchain is available from OpenCores web)
|
34 |
|
|
syn: Synthesis scripts/constraints for FPGA and ASIC
|
35 |
759 |
lampret |
exo: Download files for XSV800
|
36 |
754 |
lampret |
|
37 |
|
|
Simulation
|
38 |
|
|
++++++++++
|
39 |
|
|
|
40 |
|
|
N/A yet.
|
41 |
|
|
|
42 |
|
|
Synthesis
|
43 |
|
|
+++++++++
|
44 |
|
|
|
45 |
|
|
N/A yet.
|
46 |
|
|
|
47 |
|
|
XSV800 Programming Procedure
|
48 |
|
|
++++++++++++++++++++++++++++
|
49 |
|
|
|
50 |
|
|
XSV800 board must be configured for 10MHz operation (see XSV documentation
|
51 |
|
|
how to set the clock divisor). If you want to use serial UART16550, or if
|
52 |
|
|
you want to use OR1K GDB debugger, you will also have to program the CPLD
|
53 |
|
|
with the cpld-tdm.svf file.
|
54 |
|
|
|
55 |
|
|
Make sure you set the divisor first. Download the .exo file. Then download
|
56 |
|
|
the .svf file. Turn the power off.
|
57 |
|
|
Connect XSV800 board via RS232 cable to your PC, start terminal software.
|
58 |
|
|
Set baud rate to 19200, data/parity/stop to 8/N/1. Now you can turn the
|
59 |
|
|
power back on and the FPGA will be configured from the flash and the RISC
|
60 |
|
|
will start booting.
|
61 |
|
|
|
62 |
|
|
What will boot depends what software is compiled and merged into the .exo
|
63 |
|
|
file. It can be the ORP (OpenRISC Reference Platform) monitor, or Linux,
|
64 |
|
|
or something else.
|
65 |
|
|
|
66 |
|
|
If you have problems downloading the files to the XSV board, please make sure
|
67 |
|
|
you first read the XSV manual and check the XESS website and XESS forum.
|
68 |
|
|
|
69 |
|
|
Want to help?
|
70 |
|
|
+++++++++++++
|
71 |
|
|
|
72 |
|
|
We need companies, universities and individuals to help us in HW and SW areas.
|
73 |
|
|
|
74 |
|
|
If you want to help, first go to http://www.opencores.org/cores/or1k-new/ and
|
75 |
|
|
check the status and TODOs. Also read the documentation.
|
76 |
|
|
|
77 |
|
|
Subscribe to the openrisc mailing list (and read OpenCores FAQ before you post):
|
78 |
|
|
- if you want more information
|
79 |
|
|
- if you want to help with the HW design (test application(s), verification of the
|
80 |
|
|
OR1200, optimization of OR1200, development of new units etc)
|
81 |
|
|
- if you want to develop software
|
82 |
|
|
|
83 |
|
|
If you want to help in some other area, please subscribe to main opencores
|
84 |
|
|
mailing list.
|
85 |
|
|
|
86 |
|
|
About OpenCores
|
87 |
|
|
===============
|
88 |
|
|
|
89 |
|
|
OpenCores is an organization that developes free, open source soft cores. If
|
90 |
|
|
you would like more information, please visit us at http://www.opencores.org.
|
91 |
|
|
|
92 |
|
|
We invite companies and individuals to help us in our mission. We need
|
93 |
|
|
experienced designers to verify and design new cores.
|
94 |
|
|
And we need companies and universities to use our existing verified cores in
|
95 |
|
|
projects (the whole purpose of OpenCores is to design free cores that someone
|
96 |
|
|
will use !).
|
97 |
|
|
|
98 |
|
|
--
|
99 |
|
|
Damjan Lampret, Mar/2002
|
100 |
|
|
$Log: not supported by cvs2svn $
|
101 |
759 |
lampret |
Revision 1.1.1.1 2002/03/21 20:47:47 lampret
|
102 |
|
|
First import of the "new" XESS XSV environment.
|