jump.git
10 years agodol: create target object folders when generating master
Sebastian [Tue, 17 Dec 2013 22:49:51 +0000 (23:49 +0100)]
dol: create target object folders when generating

Make generates object files in eobj/ or hobj/, depending on architecture and
complains loudly if these folders don't exist.

10 years agodol: add "-lm" to LFLAGS in generated Makefile
Sebastian [Tue, 17 Dec 2013 22:47:47 +0000 (23:47 +0100)]
dol: add "-lm" to LFLAGS in generated Makefile

Since digital signal processing might actually make use of the math library.

10 years agodol: add support for iterated ports and processes
Sebastian [Tue, 17 Dec 2013 22:14:43 +0000 (23:14 +0100)]
dol: add support for iterated ports and processes

10 years agomakefiles: call GNU /bin/echo directly instead
Sebastian [Mon, 16 Dec 2013 22:00:56 +0000 (23:00 +0100)]
makefiles: call GNU /bin/echo directly instead

GNU echo requires the "-e" switch to handle escape sequences. Other versions
(usually shell-builtins) print out the switch or don't handle the sequences at
all. POSIX doesn't specify any behaviour, pointing to printf for consistency.

Call GNU's /bin/echo directly to pretty-print make output.

10 years agosquare: DOL squaring example (shown in live demo)
Sebastian [Mon, 16 Dec 2013 21:46:21 +0000 (22:46 +0100)]
square: DOL squaring example (shown in live demo)

10 years agodol: fix shm_t contain the shm-buffers
Sebastian [Wed, 11 Dec 2013 00:13:59 +0000 (01:13 +0100)]
dol: fix shm_t contain the shm-buffers

The shared.h file contained the typedefs for all buffers, but
did not include the buffers themselves in the shared shm_t structure.

10 years agodol: initial epiphany code generator (untested)
Sebastian [Tue, 10 Dec 2013 21:11:06 +0000 (22:11 +0100)]
dol: initial epiphany code generator (untested)

First shot of a DOL code generator for Epiphany.
Our Epiphany currently does not have access to the internet.

notes:
- all communication channels in shared memory (slow)
- no architecture specification used (hard-coded for our board)
- no manual mapping possible (processes are placed left-right, top-bottom)
- no usable input/output to the processes possible
- completely untested!

10 years agodol: add command line options and empty class
Sebastian [Mon, 25 Nov 2013 18:27:27 +0000 (19:27 +0100)]
dol: add command line options and empty class

This allows selecting the Epiphany code generator
using the command line switches --epiphany or -E and
adds an empty EpiphanyVisitor class.

10 years agoaesa, dol: create dol binary path and use it
Sebastian [Mon, 25 Nov 2013 17:46:33 +0000 (18:46 +0100)]
aesa, dol: create dol binary path and use it

Make the Ant build file generate the dol.jar file next to the other
jars required for DOL.
Additionally, make the AESA Makefile use this new path.

10 years agodol: initial dol commit
Sebastian [Mon, 25 Nov 2013 16:47:40 +0000 (17:47 +0100)]
dol: initial dol commit

This is the original, unchanged DOL source code as provided by
ETHZ. It is meant to be built with Ant.

10 years agominidol: initial commit
Sebastian [Wed, 9 Oct 2013 13:39:39 +0000 (15:39 +0200)]
minidol: initial commit

Simple DOL-application consisting of the two blocks "Gen" (generate
a sequence of numbers) and "Square" (squares numbers) including the
block wrappers, DOL communication liberary, host application and
build system.

Buffer sizes are defined in shared.h and hsrc/main.c, ports are
assigned to buffers in the wrappers. Buffers are located in shared
memory (external DRAM).

The files shared.h, lib/*_Wrapper.c and hsrc/main.c will need to be
generated by the DOL toolchain; all other files are static.

10 years agominidol/Makefile: add wrapper support
Sebastian [Wed, 25 Sep 2013 12:03:49 +0000 (14:03 +0200)]
minidol/Makefile: add wrapper support

Every DOL process needs a wrapper file to contain the per-process
data structures. This file is named Process_Name_Wrapper.c and
is now built/linked automatically.

Furthermore, the Makefile does not delete intermediates anymore.

10 years agominidol/Makefile: initial commit
Sebastian [Mon, 23 Sep 2013 21:48:42 +0000 (23:48 +0200)]
minidol/Makefile: initial commit

This Makefile can build the host application and the epiphany applications.
Some work still needs to be done.

10 years agoaesa: make "make clean" also remove output.txt
Sebastian [Tue, 3 Sep 2013 20:16:13 +0000 (22:16 +0200)]
aesa: make "make clean" also remove output.txt

10 years agohdf2arch.pl: initial commit (processor, memory)
Sebastian [Tue, 3 Sep 2013 19:46:47 +0000 (21:46 +0200)]
hdf2arch.pl: initial commit (processor, memory)

The utility hdf2arch.pl read the Hardware Description File from the
Epiphany SDK and generates a DOL architecture specification in XML format.

example:
$ ./hdf2arch.pl zed_E16G3_512mb.hdf epiphany.xml

This specifies the <processor> and <memory> elements for every eCore in the
Epiphany (called "core_row_col" and "mem_row_col") as well as for the
host cpu and the shared DRAM (called "arm_0" and "shm_0") and includes
some basic sanity checking of the HDF.

The generated file does not specify any <hw_channel>, <writepath> or
<readpath> tags and does not need any flattening.

Since the HDF file does not contain any information about the amount
of local SRAM or even the number of cores in the Epiphany, new chips
will need to be added to this utility. The ARM (with 2 cores) is hard coded,
though.

10 years agoaesa: really replace old build script
Sebastian [Mon, 2 Sep 2013 22:05:29 +0000 (00:05 +0200)]
aesa: really replace old build script

10 years agoaesa: replace old build script with new Makefile
Sebastian [Mon, 2 Sep 2013 21:57:31 +0000 (23:57 +0200)]
aesa: replace old build script with new Makefile

10 years agoInitial commit of AESA implementation.
Farzad [Tue, 3 Sep 2013 03:17:49 +0000 (23:17 -0400)]
Initial commit of AESA implementation.

This version will pass vectors.
The makefile is not used to build, it will replace the make file
generated by DOL.

10 years agobsp2arch.pl: add host processor, emem size to xml
Sebastian [Mon, 2 Sep 2013 20:59:57 +0000 (22:59 +0200)]
bsp2arch.pl: add host processor, emem size to xml

10 years agobsp2arch.pl: initial commit (processor, memory)
Sebastian [Mon, 2 Sep 2013 18:45:35 +0000 (20:45 +0200)]
bsp2arch.pl: initial commit (processor, memory)

The utility bsp2arch.pl reads the XML hardware description file
from the Epiphany SDK and generates a DOL architecture specification.

example:
$ ./bsp2arch.pl zed_E16G3_512mb.xml epiphany.xml

The SDK uses a flat hardware description file (HDF), which was supposed
to be a temporary solution (SDK 4.x documentation), but seems to be
final (SDK 5.x documentation).

The current version does not define any <hw_channel>, <writepath> or
<readpath> tags and does not need any flattening.

10 years agoinitial commit
basti [Fri, 16 Aug 2013 11:52:41 +0000 (13:52 +0200)]
initial commit