Skip to content

A Template-Based Heterogeneous CGRA Modeling Framework Supporting Fast DSE

License

Notifications You must be signed in to change notification settings

yhqiu16/THRAM-1.0

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

THRAM Framework

Template-based Reconfigurable Architecture Modeling Framework, including:

  1. CGRA-MG: CGRA modeling and generation based on Chisel. Design a flexible CGRA template, and generate architecture IR and Verilog.

  2. CGRA-Compiler: CGRA mapper, mapping DFGs to CGRA in batches. The mapping flow includes placement and routing, data synchronization, optimization, visualization, and configuration generation.

  3. Bechmarks: DFGs in Json format derived from dot files.

  4. CGRA-DSE: CGRA design space exploration based on Bayesian Optimization

Getting Started

Dependencies

JDK 8 or newer (for CGRA-MG)
SBT (for CGRA-MG)
CMake (for CGRA-Compiler)
C++-11 (for CGRA-Compiler)

CGRA-MG

Build and run

Using the script run.sh

cd cgra-mg
./run.sh

Or using sbt command:

cd cgra-mg
sbt "runMain mg.CGRAMG -td ./test_run_dir"

CGRA-Compiler

Build

Using the script build.sh

cd cgra-compiler
./build.sh

Run

Using the script run.sh

./run.sh

Change the benchmark file path as you need. The generated result files are in the same directory as the benchmark.

CGRA-DSE

Using the script dse.py

python3 dse.py

Automatic DSE flow including benchmark analyzing, modeling and compiling , change the benchmarks as you need. Or implement the process step by step.

About

A Template-Based Heterogeneous CGRA Modeling Framework Supporting Fast DSE

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 88.2%
  • Python 6.0%
  • Scala 3.0%
  • Makefile 1.6%
  • C 0.6%
  • CMake 0.5%
  • Shell 0.1%