Download - Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation
![Page 1: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/1.jpg)
www.flextiles.eu
FlexTiles
Da
te /R
efe
renc
e
FlexTiles Simulating Environment based on Open Virtual Platforms
(OVP)Stephan Werner (KIT)
Date
/R
efe
r en
ce
![Page 2: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/2.jpg)
2 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Outline
Outline Why using OVP? Introduction to FlexTiles Platform Implementation in OVP WebGUI Integration in toolchain
![Page 3: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/3.jpg)
3 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Why using OVP
Why using OVP: Very complex software
OS Management services Ressource Managers User applications in Virtual Platforms
Hardware not fully integrated Making a cycle-accurate model is not possible Possible: modeling the expected behavior (register set, protocols, etc.
Our focus: Rapid Prototyping of complex software Simulation should run as fast as possible
OVP: binary translation of cross-compiled code by morphing
Cycle accuracy is not needed
OVP is right choice for our application
![Page 4: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/4.jpg)
4 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Introduction to the FlexTiles Platform
Introduction to the FlexTiles Platform: Hardware GPPs
MicroBlazes executing CompOSe One Monitoring Core
DSP Icyflex 4
eFPGA Accelerator Interface
Virtualizing DSPs and accelerators
Network Interfaces Abstraction for different NoCs
NoC View in HW: DMAs View in SW: FIFOs
![Page 5: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/5.jpg)
5 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Introduction to the FlexTiles Platform: Hardware
Homogeneous GPP nodes
Heterogeneous acceleratorsnodes
GPP Node
AI
DSPNode
NI
GPP Node
NI
NoC
NI NI NI
AI AI
NI
Config. Ctrl.
DDR Ctrl.
NI
GPP Node
NI
I/O
NI
Generic Interfaces
eFPGA Domain (Reconfigurable HW acc.)
Dedicated Accelerator
Node
Dedicated Accelerator
Node
![Page 6: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/6.jpg)
6 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Introduction to the FlexTiles Platform
Introduction to the FlexTiles Platform: Software CompOSe
Real-time OS Guaranteed real-time
FIFOs Software view to NoC
Cyclo-static dataflow Programming model
ELF-bundles Contains information about the different configurations of the CSDF model Contains all executables
Virtualization Layer Manages task migration and (re-)distribution Runs as priviledged service
![Page 7: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/7.jpg)
7 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Introduction to the FlexTiles Platform: Software
![Page 8: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/8.jpg)
8 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Introduction to the FlexTiles Platform: Software
Programming Model: CSDF
![Page 9: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/9.jpg)
9 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Introduction to the FlexTiles Platform: Software
Programming Model: CSDF
![Page 10: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/10.jpg)
10 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: Outline GPPs running the OS The Monitoring Core DMA-support as used for FIFOs Accelerator Interface
After implementation: WebGUI Integration in toolflow
![Page 11: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/11.jpg)
11 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: GPP MicroBlaze-model in OVP available
Same (cross-compiled) code is executed
Timer has to be adapted CompOSe executed Virtualization layer
Test environment
Can be connected to GDB
NI
NoC
GPP CoreInstruction
CacheLocal
Data Memory
Peripherals
IT / event
iNoC
Control Sync
Instruction
DMA
Supervisor
![Page 12: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/12.jpg)
12 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: GPP// FOR ALL CORESfor (index=0; index<CORES; index++){
...
////////////////////// BUSES////////////////////
bus[index] = icmNewBus( busName, 32);
////////////////////// PROCESSORS////////////////////cpu[index] = icmNewProcessor(
cpuName, // CPU name"microblaze", // CPU type0, // CPU cpuId0, // CPU model flags32, // address bitsmicroblazeModel, // model file"modelAttrs", // morpher attributesSIM_ATTRS, // attributescpu_attr, // user-defined attributesmicroblazeSemihost, // semi-hosting file"modelAttrs" // semi-hosting attributes
);
icmConnectProcessorBusses(cpu[index], bus[index], bus[index]);
…
![Page 13: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/13.jpg)
13 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: GPP// FOR ALL CORESfor (index=0; index<CORES; index++){
...
////////////////////// MEMORY////////////////////
localMem[index] = icmNewMemory(memName, 0x7, MICRO_SIZE);
icmConnectMemoryToBus( bus[index], "mp1", localMem[index], MICRO_BASE);icmConnectMemoryToBus( bus[index], memportName, shared, SHARE_BASE);
if(!icmLoadProcessorMemory(cpu[index], application[index], False, False, True))return -1;
////////////////////// TIMERS AND INTS////////////////////
timer[index] = icmNewPSE( timerName, // name //timer_path, // model"../Peripherals/Timer/pse.pse",timer_attr, // attrlist 0, // semihost file 0 // semihost symbol
);
icmConnectPSEBus( timer[index], bus[index], "plb", 0, TIMER_BASE, (TIMER_BASE+TIMER_SIZE-1));
…
![Page 14: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/14.jpg)
14 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: GPP// FOR ALL CORESfor (index=0; index<CORES; index++){
...
irq[index] = icmNewNet(irqName);icmConnectProcessorNet( cpu[index], irq[index], "Interrupt", ICM_INPUT);icmConnectPSENet( timer[index], irq[index], "Interrupt", ICM_OUTPUT);
////////////////////// UART////////////////////
uartAttr[index] = icmNewAttrList();icmAddStringAttr(uartAttr[index], "outfile", uartAttrName);
uart[index] = icmNewPSE(uartName, // nameuart_path, // modeluartAttr[index], // attrlistNULL, // semihost fileNULL // semihost symbol
);
icmConnectPSEBus(uart[index], bus[index], "plb", 0, UART_BASE, (UART_BASE+UART_SIZE-1));
...}
![Page 15: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/15.jpg)
15 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: GPP// FOR ALL CORESfor (index=0; index<CORES; index++){
...#ifdef DEBUG
if(index==DEBUG_CORE){cpu[index] = icmNewProcessor(
cpuName, // CPU name"microblaze", // CPU type0, // CPU cpuId0, // CPU model flags32, // address bitsmicroblazeModel, // model file"modelAttrs", // morpher attributesICM_ATTR_DEBUG, // attributescpu_attr, // user-defined attributesmicroblazeSemihost, // semi-hosting file"modelAttrs" // semi-hosting attributes
);}else{
#endif...
}
![Page 16: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/16.jpg)
16 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: Monitoring Core
Not every GPP can have an UART Hardware limited
Monitoring Core gathers the output Only GPP with I/O Connected via FSL to other GPPs On OVP: UART On board: Ethernet to PC Same operations run in OVP and on board
getfsl, putfsl
CompOSe CompOSe
MonitoringCore
CompOSe
UART(OVP)
(Board)
![Page 17: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/17.jpg)
17 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: Monitoring Core// FOR ALL CORESfor (index=0; index<CORES; index++){
...//connections to central monitoring core; limitation: 16FSL links//Monitor core is last core created, its link is defined by FSL_MONITOR, tile fsl connect to this id and putfsl sends to it//FSL_MONITOR needs to be set to the # of the last core, which equals CORESif(index!=FSL_MONITOR){
char monitorPort[64];
tfsl[index] = icmNewFifo(fsl_ToMonitor_Name, 64, 128);sprintf(monitorPort, "MFSL%d", FSL_MONITOR);icmConnectProcessorConn(cpu[index], tfsl[index], monitorPort, ICM_OUTPUT);
ffsl[index] = icmNewFifo(fsl_FromMonitor_Name, 64, 128);sprintf(monitorPort, "SFSL%d", FSL_MONITOR);icmConnectProcessorConn(cpu[index], ffsl[index], monitorPort, ICM_INPUT);
}if(CORES==index+1){
char tilePort[64];for(i=0;i<CORES;i++){
if(i!=FSL_MONITOR){sprintf(tilePort, "SFSL%d", i);icmConnectProcessorConn(cpu[FSL_MONITOR], tfsl[i], tilePort,
ICM_INPUT);
sprintf(tilePort, "MFSL%d", i);icmConnectProcessorConn(cpu[FSL_MONITOR], ffsl[i], tilePort,
ICM_OUTPUT);}
}}...
}
![Page 18: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/18.jpg)
18 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: DMA-support
![Page 19: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/19.jpg)
19 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: DMA-support Per DMA this is needed:
One CMI: input memory One CMO: output memory Adress table:
Local addresses Remote addresses
GPP local memory
CMI
CMO
DMA
/////////////////////////////// // DMA Peripheral ///////////////////////////////
// instantiate the peripheral icmAttrListP config = icmNewAttrList(); icmAddUns64Attr(config, "id", 1); icmPseP dma = icmNewPSE("dma", "../Peripherals/DMA/dma.pse", config, 0, 0);
icmConnectPSEBus(dma, bus[2], "slave1", False, mb0_dma0_BASEADDR, mb0_dma0_BASEADDR+7); icmConnectPSEBus(dma, bus[2], "master1", True, 0x00000000, 0xFFFFFFFF);
icmConnectPSEBus(dma, bus[0], "slave0", False, mb1_dma0_BASEADDR, mb1_dma0_BASEADDR+7); icmConnectPSEBus(dma, bus[0], "master0", True, 0x00000000, 0xFFFFFFFF);
![Page 20: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/20.jpg)
20 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: Accelerator Interface
NINoC
OutputData
DMA
DMAdataoutreq
FIFO
InputData
DMA
DMAdata
inreq
FIFO
da
ta rd
ctrl w
r
AcceleratorOutput Ch.Input Ch.
da
ta w
r
ctrl w
r
InputConfig
DMA
DMAcfgreq
FIFO
Config.Ch.
co
nfig
wr
co
nfig
wr
co
nfig
rd
ctrl w
r
Workreq
FIFO
ctrl w
rc
trl rd
co
ntro
l write
/ sta
tus
rea
d
Synchronization /Notification
rea
d . w
rite n
otific
atio
n
co
nfig
wr
sendsync
Control / Status Channel
me
m c
trl
me
m c
trl
DebugCh.
write
/ rea
d d
eb
ug
no
tifica
tion
rea
d
![Page 21: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/21.jpg)
21 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: Accelerator Interface
EXPLANATION IN COMBINATION WITH LIVE-PRESENTATION OF CODE
![Page 22: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/22.jpg)
22 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Implementation in OVP: Accelerator Interface AI implemented as peripheral in OVP
Runs seperately from GPP simulation
Algorithm of accelerator is executed on host natively Fast simulation
Can be used as template for accelerators Insert algorithm in function start_calc()
![Page 23: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/23.jpg)
23 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Usability
WebGUI Generation of Hardware-Architecture
![Page 24: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/24.jpg)
24 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Usability
WebGUI Application-Binding
![Page 25: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/25.jpg)
25 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Usability
WebGUI Simulation in WebGUI
![Page 26: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/26.jpg)
26 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Integration in toolchain
Integration in toolchain
![Page 27: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/27.jpg)
27 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Integration in toolchain
Integration in toolchain
![Page 28: Conference on Adaptive Hardware and Systems (AHS'14) - Why FlexTiles uses OVP for Simulation](https://reader033.vdocument.in/reader033/viewer/2022061123/5472b38fb4af9f980a8b4f9f/html5/thumbnails/28.jpg)
28 /
Da
te /R
efe
renc
e
The
info
rmat
ion
cont
aine
d in
thi
s do
cum
ent
and
any
atta
chm
ents
are
the
pro
pert
y of
Fle
xTile
s co
nsor
tium
. Y
ou a
re h
ereb
y no
tifie
d th
at a
ny r
evie
w,
diss
emin
atio
n, d
istr
ibut
ion,
co
pyin
g or
oth
erw
ise
use
of t
his
docu
men
t m
ust
be d
one
in a
ccor
danc
e w
ith t
he C
A o
f th
e pr
ojec
t (T
RT
/DJ/
6244
1278
5.20
11).
Tem
plat
e ve
rsio
n 1
.0
Implementation in OVP
Thank you for your attention
Questions ?