Studienprojekt Nr. 1931
Betreuer: Dipl.-Inf. Günter Bartsch
begonnen: 24.11.2003
beendet: 24.5.2004
LEON-basiertes SoC-Framework zur Unterstützung der Hardwareentwicklung in Lehre und Forschung
Aufgrund der steigenden Integrationsdichte beim Hardwareentwurf wird der
modulare Entwurf zunehmend wichtiger. Durch die immer kürzer werdenden
Entwicklungszyklen gewinnt reprogrammierbare Logik gegenüber traditioneller
ASIC-Technologie immer mehr an Bedeutung. Gerade im universitären Umfeld bieten
sich die FPGA Technologie zur schnellen Evaluation eigener Designs an und führt
in der Industrie zu einer kürzeren Entwicklungszeit bis zur Marktreife. Diese
Trends führen zur Verschiebung der Entwurfsmethodologie vom traditionellen
Custom-Design hin zum Core basierten Entwurfsstil. Im universitären Bereich
bieten sich durch freie Cores vielfältige Möglichkeiten. Ziel dieses
Studienprojektes ist eine dafür geeignete Entwicklungsumgebung bereitzustellen
und zu evaluieren um eine Grundlage für den Einsatz in Forschung und Lehre zu
bieten.
report (german)
leon2 support for linux 2.6.x
about
here you find a patchset and some other files you need to get linux 2.6.x run
on mmu-enabled leon2 platform from gaisler
research. this work is derived from the linux patches gaisler research
provides and konrad eisele worked on.
not much documentation here yet. quick intro: you need a sparc cross compiler
(e.g. from gaisler.com) and genromfs tool. extract tarball change into the
created directory. drop latest busybox and linux tarballs
(busybox-1.00-pre8.tar.gz, linux-2.6.5.tar.bz2) into arc subdir. check toplevel
makefile, type make. additional informations in
README.
download
here is the latest tarball for download: linux-2.6.5-l1.tar.gz and its contents.
you can also download the patches seperately (these are included in the tarball):
changelog
0.0.4 -> 2.6.5-l1
- ported patches to 2.6.5
- implementor's id is 0xf
- make tags fixed
- network-enabled linux .config updated
- some asi workarounds
- versioning and tarball name - erm - fixed ;)
- fixed missing section in linker scripts, thanks to ulrich gries
- nonzero_phys_base.patch merged to mainline kernel
- some restructuring of driver patches to be more maintainable
- better naming for prom.S/main.c, now prom_stage1.S, prom_stage2.c
0.0.3 -> 0.0.4
- pre-kernel code (prom stage2) now located at beginning of memory
- openeth driver fixed - thanks to ulrich gries
- make tags
- emulate a sun4c v0 prom for kernel
- a bit more doc in readme
- break out nonzero phys_base stuff in an own patch
- support for writable ext2 rootfs (needs e2fsimage tool, eats lot of mem)
- fs images are now compressed
- 'make run' starts tsim with -c tsim.do if present
- 'make lclean' makes clean in linux tree
- -Os is broken for sparc, turn it off
- fix compilation/linking for newer gcc/uclibc
0.0.2 -> 0.0.3
- Makefile updates
- new naming scheme (image.tsim, image.dsu, image.ram, image.asm)
- patches ported to 2.6.4
- added Changelog and README to distribution
- main.c cleanup
- dirty_hacks.patch not needed anymore
0.0.1 -> 0.0.2
- static creation of initial context/page directory tables
- 'make make' calls make in linux subdir
- change again to prom_con, vt console hack removed
- removed unneccessary #ifdef in include/asm-sparc/head.h
- leon.h whitespace/indent fixes
- page.h whitespace fixes
- cache enable configurable in prom.S
- srmmu_nocache_calcsize tweak (calcs bad srmmu_nocache_npages for very low memory)
linux-2.5.75.diff -> 0.0.1
- move leon_tmp out of kernel tree
- activate btfixup
- removed almost all unused/debug code
- port the patch to 2.6.3
- splitup patch into smaller ones
- simplified pre-kernel boot code
- support for standard /dev/console in leon_serial, devfs support
history
if you have questions, problems, improvements, mail me.
copyright (c) 2004, stefan holst