Title: Targeting Tiled Architectures in Design Exploration
1Targeting Tiled Architectures in Design
Exploration
- Lilian Bossuet1, Wayne Burleson2, Guy Gogniat1,
- Vikas Anand2, Andrew Laffely2, Jean-Luc Philippe1
2Outline
- Introduction Design Space Exploration
- Design Space of Reconfigurable Architecture
- A Target Architecture aSoC
- Proposition of Design Space Exploration Flow
- Results
- Conclusion and Future Work
3Design Space Exploration Motivations
- Design solutions for new telecommunication and
multimedia applications targeting embedded
systems - Optimization and reduction of SoC power
consumption - Increase computing performance
- Increase parallelism
- Increase speed
- Be flexible
- Take into account run-time reconfiguration
- Targeting multi-granularity (heterogeneous)
architectures
4Design Space Exploration Flow
- Progressive design space reduction
- iterative exploration
- refinement of architecture model
- increase of performance estimation accuracy
- One level of abstraction for one level of
estimation accuracy
5Outline
- Introduction Design Exploration Flow Principe
- Design Space of Reconfigurable Architecture
- A Target Architecture aSoC
- Proposition of Design Space Exploration Flow
- Results
- Conclusion and Future Works
6Reconfigurable Architectures
- Bridging the flexibility gap between ASICs and
microprocessor Hartenstein DATE 2001 - Energy efficient and solution to low power
programmable DSP Rabaey ICASSP 1997, FPL 2000 - Run Time Reconfigurable Compton Hauck
1999 - A key ingredient for future silicon
platforms Schaumont all. DAC 2001
7Design Space of Reconfigurable Architecture
RECONFIGURABLE ARCHITECTURES (R-SOC)
MULTI GRANULARITY (Heterogeneous)
FINE GRAIN (FPGA)
COARSE GRAIN (Systolic)
Processor Coprocessor
Tile-Based Architecture
Coarse Grain Coprocessor
Fine Grain Coprocessor
Island Topology
Hierarchical Topology
Linear Topology
Hierarchical Topology
Mesh Topology
- RAW
- CHESS
- MATRIX
- KressArray
- Systolix Pulsedsp
- Chameleon
- REMARC
- Morphosys
- Pleiades
- Garp
- FIPSOC
- Triscend E5
- Triscend A7
- Xilinx Virtex-II Pro
- Altera Excalibur
- Atmel FPSIC
- Xilinx Virtex
- Xilinx Spartran
- Atmel AT40K
- Lattice ispXPGA
- Altera Stratix
- Altera Apex
- Altera Cyclone
- Systolic Ring
- RaPiD
- PipeRench
8Outline
- Introduction Design Exploration Flow Principe
- Design Space of Reconfigurable Architecture
- A Target Architecture aSoC
- Proposition of Design Space Exploration Flow
- Results
- Conclusion and Future Works
9A Target Architecture aSoC
- Adaptive System-on-a-Chip (aSoC)
- Tiled architecture containing many heterogeneous
processing cores (RISC, DSP, FPGA, Motion
Estimation, Viterbi Decoder) - Mesh communication network controlled with
statically determined communication schedule - A scalable architecture.
10aSoC Architecture
tile
uProc
MUL
FPGA
MUL
11aSoC Communications Interface
- Interface Crossbar
- inter-tile transfer
- tile to core transfer
- Interconnect/Instruction Memory
- contains instructions to configure the interface
crossbar (cycle-by-cycle) - Interface Controller
- selects the instruction
- Coreports
- data interface and storage for transfers with the
tile IP core - Dynamic Voltage and Frequency Selection
- Dynamic Power Management
Core
Coreports
Interface Crossbar
North
North
South
South
East
East
West
West
Outputs
Inputs
Local
Config
.
Local
Decoder
Controller
Frequency
Voltage
North to South East
PC
Instruction Memory
12aSoC Exploration ...
- Type of tiles
- Number of each type of tile
- Placement of the tiles
- Intern architecture of reconfigurable tiles (FPGA
core) - Communication scheduling
13Outline
- Introduction Design Exploration Flow Principe
- Design Space of Reconfigurable Architecture
- A Target Architecture aSoC
- Proposition of Design Space Exploration Flow
- Results
- Conclusion and Future Work
14Design Space Exploration Goals
- Goal Rapid exploration of various architectural
solutions to be implemented on heterogeneous
reconfigurable architectures (aSoC) in order to
select the most efficient architecture for one or
several applications - Take place before architectural synthesis
(algorithmic specification with high level
abstraction language) - Estimations are based on a functional
architecture model (generic, technology-independen
t) - Iterative exploration flow to progressively
refine the architecture definition, from a coarse
model to a dedicated model
15Design Exploration Flow Targeting Tiled
Architecture
16Application Analysis
- Use of algorithmic metrics and dedicated
scheduling algorithms to highlight the target
architectures - Algorithmic metrics
- Characterize the application orientation
- Processing
- Memory
- Control
- Characterize the application potential
parallelism - Processing
- Memory
17Tile Exploration with 3 steps
- Projection
- Link between necessary resources (application)
and available resources (tile) - Use of an allocation algorithm based on
communication costs reduction - Composition
- Take into account of the function scheduling to
estimate additional resources (register, mux, )
- Estimation
- performance interval computation (lower and upper
bounds) - speed/resource utilization/power characterization
18aSoC Builder
- Environment AppMapper
- Partition and assignment
- based on Run Time Estimation
- Compilation
- Communication Scheduling
- Core compilation
- Generate tiles configuration
- Communications instructions
- Bitstreams (for reconfigurable tile)
- RISC instructions
19aSoC Analysis
- Use the results of previous steps
- Functions scheduling
- Tile allocation
- Communication scheduling
- Complete estimation of the proposed solution
- Global execution time
- Global power consumption
- Total area
20Outline
- Introduction Design Exploration Flow Principe
- Design Space of Reconfigurable Architecture
- A Target Architecture aSoC
- Proposition of Design Space Exploration Flow
- Results
- Conclusion and Future Work
21Results
- aSoC architecture (UMASS)
- Prototype of aSoC interconnect
- Technology 0.18 µm
- Clock speed of 400 MHz
- AppMapper (UMASS)
- Several mapped applications
- Matrix operations
- Median Filter
- Viterbi decoder
- DCT
- Tile exploration (UBS)
- Application analysis
- Intelligent Camera (motion detection)
- Matching Pursuit
- Projection step
- Lee DCT
- Matrix operations
22Outline
- Introduction Design Exploration Flow Principe
- Design Space of Reconfigurable Architecture
- A Target Architecture aSoC
- Proposition of Design Space Exploration Flow
- Results
- Conclusion and Future Work
23Conclusion and future work
- Conclusion
- Original design exploration flow working at a
high level of abstraction - Fast and flexible (use of functional view of the
architectures) - Targeting an efficient reconfigurable
architecture aSoC - Statically-scheduled, point-to-point
communications - Future Work
- Development of larger set of design exploration
benchmarks - Exploration of other configurable systems
24Thank you ...
25Previous Work
- Xplorer - University of Kaiserslautern, Germany
Hartenstein PATMOS 2000 - Targets a mesh coarse grain architecture The
KressArray a fast reconfigurable ALUs - Gives design guidance concerning the size of the
array, the available operators, the
communication architecture and the connection
structure. - Controlled by performance and power estimations.
- Starts with high level specification of
application (ALE-X language). - RAW - Massachusetts Institute of Technology, USA
Moritz FCCM 1998 - Targets a reminiscent coarse grained FPGA The
MIT Raw Microprocessor - Answers to the balance problem to determine the
best division of VLSI resources among computing,
memory and communication. - Answers to the grain problem to determine the
optimum size of each architecture tiles - Use several models architecture model, costs
model and performance model
26HCDFG Hierarchical Control Data Flow Graph
27Applications Metrics
Y. Le Moullec, N. Ben Amor, J-Ph. Diguet, M. Abid
and J-L. Philippe. Multi-Granularity Metrics for
the Era of Strongly Personalized SOCs.In DATE
2002, Munich, Germany, March 2002