Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
tapasco
tapasco
Commits
c8a58f11
Commit
c8a58f11
authored
May 15, 2017
by
Jens Korinth
Browse files
Closes
#12
- Rename Descriptions to extension ".json"
parent
328f9c33
Changes
31
Hide whitespace changes
Inline
Side-by-side
kernel/sudoku/kernel.
descripti
on
→
kernel/sudoku/kernel.
js
on
View file @
c8a58f11
File moved
kernel/warraw/kernel.
descripti
on
→
kernel/warraw/kernel.
js
on
View file @
c8a58f11
File moved
platform/pynq/platform.
descripti
on
→
platform/pynq/platform.
js
on
View file @
c8a58f11
File moved
platform/vc709/platform.
descripti
on
→
platform/vc709/platform.
js
on
View file @
c8a58f11
File moved
platform/zc706/platform.
descripti
on
→
platform/zc706/platform.
js
on
View file @
c8a58f11
File moved
platform/zedboard/platform.
descripti
on
→
platform/zedboard/platform.
js
on
View file @
c8a58f11
File moved
src/main/scala/tapasco/activity/CoreStatistics.scala
View file @
c8a58f11
...
...
@@ -85,7 +85,7 @@ object CoreStatistics {
}
private
def
dumpAvgClockCycles
(
r
:
SynthesisReport
)
:
String
=
Core
.
from
(
r
.
file
.
getParent
.
resolveSibling
(
"core.
descripti
on"
))
map
{
cd
=>
Core
.
from
(
r
.
file
.
getParent
.
resolveSibling
(
"core.
js
on"
))
map
{
cd
=>
Seq
(
cd
.
averageClockCycles
.
getOrElse
(
""
),
(
for
(
t
<-
r
.
timing
;
c
<-
cd
.
averageClockCycles
)
yield
"%2.2f"
format
(
1.0
/
((
t
.
clockPeriod
*
c
)
/
1000000000.0f
))).
getOrElse
(
""
)
...
...
src/main/scala/tapasco/activity/Import.scala
View file @
c8a58f11
...
...
@@ -57,7 +57,7 @@ object Import {
logger
.
trace
(
"found VLNV in zip "
+
zip
+
": "
+
vlnv
)
// extract version and name from VLNV, create Core
val
c
=
Core
(
descPath
=
zip
.
resolveSibling
(
"core.
descripti
on"
),
descPath
=
zip
.
resolveSibling
(
"core.
js
on"
),
_zipPath
=
zip
.
getFileName
,
name
=
vlnv
.
name
,
id
=
id
,
...
...
@@ -66,8 +66,8 @@ object Import {
Some
(
"imported from %s on %s"
.
format
(
zip
.
toAbsolutePath
.
toString
,
java
.
time
.
LocalDateTime
.
now
().
toString
)),
acc
)
// write core.
descripti
on to output directory (as per config)
val
p
=
cfg
.
outputDir
(
c
,
t
).
resolve
(
"ipcore"
).
resolve
(
"core.
descripti
on"
)
// write core.
js
on to output directory (as per config)
val
p
=
cfg
.
outputDir
(
c
,
t
).
resolve
(
"ipcore"
).
resolve
(
"core.
js
on"
)
importCore
(
c
,
t
,
p
)
}
...
...
@@ -105,7 +105,7 @@ object Import {
// finally, evaluate the ip core and store the report with the link
val
res
=
evaluateCore
(
c
,
t
)
// write core.
descripti
on
// write core.
js
on
logger
.
debug
(
"writing core description: {}"
,
p
.
toString
)
Core
.
to
(
c
,
p
)
res
...
...
src/main/scala/tapasco/filemgmt/EntityManager.scala
View file @
c8a58f11
...
...
@@ -76,11 +76,11 @@ class EntityManager(val bpm: BasePathManager) extends Publisher {
/* @{ Internals */
/** Internal map of description regexes. **/
private
val
_filters
:
Map
[
Entity
,
Regex
]
=
Map
(
Entities
.
Architectures
->
"""architecture.
descripti
on$"""
.
r
.
unanchored
,
Entities
.
Compositions
->
"""
.bd
$"""
.
r
.
unanchored
,
Entities
.
Cores
->
"""core.
descripti
on$"""
.
r
.
unanchored
,
Entities
.
Kernels
->
"""kernel.
descripti
on$"""
.
r
.
unanchored
,
Entities
.
Platforms
->
"""platform.
descripti
on$"""
.
r
.
unanchored
Entities
.
Architectures
->
"""architecture.
js
on$"""
.
r
.
unanchored
,
Entities
.
Compositions
->
"""
composition.json
$"""
.
r
.
unanchored
,
Entities
.
Cores
->
"""core.
js
on$"""
.
r
.
unanchored
,
Entities
.
Kernels
->
"""kernel.
js
on$"""
.
r
.
unanchored
,
Entities
.
Platforms
->
"""platform.
js
on$"""
.
r
.
unanchored
)
/** Issue warning for failed builds (at least once). */
...
...
src/main/scala/tapasco/itapasco/view/detail/DirectoryDetailPanel.scala
View file @
c8a58f11
...
...
@@ -36,54 +36,53 @@ class DirectoryDetailPanel extends BorderPanel with Listener[DirectoriesPanel.Ev
private
object
DirectoryDetailPanel
{
val
detailTexts
:
Map
[
Entity
,
String
]
=
Map
(
Architectures
->
"""
Architecture directory - This is the directory in which TPC will
look for files called architecture.description containing the
JSON description of a TPC architecture (i.e., the organisation
of the processing elements of the ThreadPool).
Changing this directory will affect the available architectures
in the 'Architectures' tab.
Architecture directory - This is the directory in which TaPaSCo will
look for files called architecture.json containing the JSON
description of a TaPaSCo architecture (i.e., the organisation of the
processing elements). Changing this directory will affect the
available architectures in the 'Architectures' tab.
"""
.
trim
.
split
(
"""\s+"""
).
mkString
(
" "
),
Compositions
->
"""
Composition directory - This is the output directory for the
T
PC
hardware designs. It is organized in a three-level directory
T
aPaSCo
hardware designs. It is organized in a three-level directory
hierarchy: First level contains the composition + target
user clock frequency pairs, second level the architecture and
the third level the platform for all Compositions that were
built with T
PC
. When a build is started, TPC will overwrite
built with T
aPaSCo
. When a build is started, TPC will overwrite
existing runs in this directory.
"""
.
trim
.
split
(
"""\s+"""
).
mkString
(
" "
),
Cores
->
"""
Core Directory - This is the output directory for the processing
elements (PEs) that were built by, or can be used by, T
PC
(i.e.,
elements (PEs) that were built by, or can be used by, T
aPaSCo
(i.e.,
it contains the IP-XACT base.of the cores and the
synthesis results. T
PC
will look here for synthesis results
synthesis results. T
aPaSCo
will look here for synthesis results
(e.g., area requirements, max. frequency, etc.) during design
space exploration (DSE).
It is organized in a three-level directory hierarchy: First
level contains a directory for each distinct available core,
second level contains one directory for each T
PC
architecture
and the last level one directory for each T
PC
platform.
Each core is described by a core.
descripti
on file containing
second level contains one directory for each T
aPaSCo
architecture
and the last level one directory for each T
aPaSCo
platform.
Each core is described by a core.
js
on file containing
a JSON description of the core with the basic information that
T
PC
requires to use the core as a PE in a ThreadPool.
T
PC
will generate the base.automatically during
T
aPaSCo
requires to use the core as a PE in a ThreadPool.
T
aPaSCo
will generate the base.automatically during
high-level synthesis (HLS), but you can also provide it manually
and place your custom core in this directory. All available
cores will be shown in the 'Cores' tab.
"""
.
trim
.
split
(
"""\s+"""
).
mkString
(
" "
),
Kernels
->
"""
Kernel directory - This is the directory in which T
PC
will look
for kernel.
descripti
on files containing the JSON description of
Kernel directory - This is the directory in which T
aPaSCo
will look
for kernel.
js
on files containing the JSON description of
a processing element (PE) that can be generated by a High-Level
Synthesis (HLS) tool, such as Xilinx Vivado HLS. When selecting
such a Kernel for the Composition, T
PC
will search the 'Core'
such a Kernel for the Composition, T
aPaSCo
will search the 'Core'
directory for previous HLS results. If none are found, the core
is built automatically prior to building the Composition.
"""
.
trim
.
split
(
"""\s+"""
).
mkString
(
" "
),
Platforms
->
"""
Platform directory - This is the directory in which T
PC
will
look for files called platform.
descripti
on containing the
JSON description of a T
PC
platform (i.e., the device-specific
Platform directory - This is the directory in which T
aPaSCo
will
look for files called platform.
js
on containing the
JSON description of a T
aPaSCo
platform (i.e., the device-specific
and infrastructure components).
Changing this directory will affect the available platforms
in the 'Platforms' tab.
...
...
src/test/scala/tapasco/filemgmt/FileAssetManagerTest.scala
View file @
c8a58f11
...
...
@@ -58,14 +58,14 @@ class FileAssetManagerSpec extends FlatSpec with Matchers {
assert
(
FileAssetManager
.
entities
.
kernels
.
size
==
oldnum
)
}
"Creating new core.
descripti
ons during runtime"
should
"be reflected in the caches"
in
{
"Creating new core.
js
ons during runtime"
should
"be reflected in the caches"
in
{
val
p
=
Files
.
createTempDirectory
(
"tapasco-fileassetmanager-"
)
val
d
=
p
.
resolve
(
"Test"
).
resolve
(
"baseline"
).
resolve
(
"vc709"
).
resolve
(
"ipcore"
)
Files
.
createDirectories
(
d
)
FileAssetManager
.
basepath
(
Entities
.
Cores
).
set
(
p
)
assert
(
FileAssetManager
.
entities
.
cores
.
size
==
0
)
val
zip
=
d
.
resolve
(
"test_baseline.zip"
)
val
cf
=
d
.
resolve
(
"core.
descripti
on"
)
val
cf
=
d
.
resolve
(
"core.
js
on"
)
Files
.
createFile
(
zip
)
val
t
=
Target
(
FileAssetManager
.
entities
.
architectures
.
toSeq
.
head
,
FileAssetManager
.
entities
.
platforms
.
toSeq
.
head
)
val
core
=
Core
(
cf
,
zip
,
"Test"
,
42
,
"0.0.1"
,
t
,
None
,
None
)
...
...
Prev
1
2
Next
Jens Korinth
@jk
mentioned in commit
a831b501
·
Jul 14, 2017
mentioned in commit
a831b501
mentioned in commit a831b5015df6bd8f8d23ddd334a3b1159392de92
Toggle commit list
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment