ICCAD’01: November, 2001 Instruction Generation for Instruction Generation for Hybrid Reconfigurable Hybrid Reconfigurable Systems Systems Ryan Kastner, Seda Ogrenci-Memik, Elaheh Bozorgzadeh and Majid Sarrafzadeh {kastner,seda,elib,majid}@cs.ucla.edu Embedded and Reconfigurable Systems Embedded and Reconfigurable Systems Group Group Computer Science Department Computer Science Department UCLA UCLA Los Angeles, CA 90095 Los Angeles, CA 90095
22
Embed
Instruction Generation for Hybrid Reconfigurable Systems
Instruction Generation for Hybrid Reconfigurable Systems. Ryan Kastner, Seda Ogrenci-Memik, Elaheh Bozorgzadeh and Majid Sarrafzadeh {kastner,seda,elib,majid}@cs.ucla.edu. Embedded and Reconfigurable Systems Group Computer Science Department UCLA Los Angeles, CA 90095. Outline. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
ICCAD’01: November, 2001
Instruction Generation for Instruction Generation for Hybrid Reconfigurable SystemsHybrid Reconfigurable Systems
Instruction Generation for Instruction Generation for Hybrid Reconfigurable SystemsHybrid Reconfigurable Systems
Ryan Kastner, Seda Ogrenci-Memik,
Elaheh Bozorgzadeh and Majid Sarrafzadeh
{kastner,seda,elib,majid}@cs.ucla.edu
Ryan Kastner, Seda Ogrenci-Memik,
Elaheh Bozorgzadeh and Majid Sarrafzadeh
{kastner,seda,elib,majid}@cs.ucla.edu
Embedded and Reconfigurable Systems GroupEmbedded and Reconfigurable Systems Group
Computer Science DepartmentComputer Science Department
UCLAUCLA
Los Angeles, CA 90095Los Angeles, CA 90095
Embedded and Reconfigurable Systems GroupEmbedded and Reconfigurable Systems Group
Computer Science DepartmentComputer Science Department
UCLAUCLA
Los Angeles, CA 90095Los Angeles, CA 90095
ICCAD’01: November, 2001
OutlineOutlineOutlineOutline Introduction
Programmability Hybrid Reconfigurable Systems Strategically Programmable System
Instruction Generation Uses in Hybrid Reconfigurable Systems Relation to Template Generation and Matching
Algorithm for Template Generation and Matching Experiments Conclusion
Introduction Programmability Hybrid Reconfigurable Systems Strategically Programmable System
Instruction Generation Uses in Hybrid Reconfigurable Systems Relation to Template Generation and Matching
Algorithm for Template Generation and Matching Experiments Conclusion
ICCAD’01: November, 2001
ProgrammabilityProgrammabilityProgrammabilityProgrammability Future systems need programmability multiple levels of
computation hierarchy
Computational Hierarchy:
Future systems need programmability multiple levels of computation hierarchy
Set of applications Set of applications specified in high level code specified in high level code
(c/c++, fortran, MOC)(c/c++, fortran, MOC)• Compile to low Compile to low level specificationlevel specification• Determine VPB Determine VPB functionalityfunctionality
ICCAD’01: November, 2001
VPB Instruction GenerationVPB Instruction GenerationVPB Instruction GenerationVPB Instruction Generation Given a set of applications, what computation should be
implemented on VPBs?
Given a set of applications, what computation should be implemented on VPBs?
Problem 1: Given a directed, labeled graph G(N, A), a library of templates, each of which is a directed labeled graph Ti(V,E), find every subgraph of G that is
isomorphic to any Ti
Problem 1: Given a directed, labeled graph G(N, A), a library of templates, each of which is a directed labeled graph Ti(V,E), find every subgraph of G that is
isomorphic to any Ti
+
*
*
+
+
* +
+
* &
+ ||
+
+
&
* *
Templates T+ *
* +
+
&
% +
+
%
* *
* & ||
* * +
+ +
Directed Labeled Graph G
T1 T2 T3
T4T5T6
ICCAD’01: November, 2001
Template Matching – Formal Def’nTemplate Matching – Formal Def’nTemplate Matching – Formal Def’nTemplate Matching – Formal Def’n Problem 2: Given an infinite number of each set of
templates = T1, … , Tk and an overlapping set of
subgraphs of the given graph G(N,E) which are isomorphic to some member of ; minimize k as well as xi where xi is the number of templates of type Ti used
such that the number of nodes left uncovered is the minimum.
Problem 2: Given an infinite number of each set of templates = T1, … , Tk and an overlapping set of
subgraphs of the given graph G(N,E) which are isomorphic to some member of ; minimize k as well as xi where xi is the number of templates of type Ti used
such that the number of nodes left uncovered is the minimum.
An automatic regularity extraction algorithm must develop it’s own templates
Generate a set of templates such that: Number of templates is minimized Covering of the graph is maximized
Templates may not always be given as input
An automatic regularity extraction algorithm must develop it’s own templates
Generate a set of templates such that: Number of templates is minimized Covering of the graph is maximized
ICCAD’01: November, 2001
Related WorkRelated WorkRelated WorkRelated Work
Useful in a wide variety of CAD applications
Data path regularity [Chowdhary98], [Callahan99]
Scheduling [Ly95] System partitioning [Rao93] Low power design [Mehra96] Soft macros – CPR [Cadambi99] for PipeRench
architecture
Useful in a wide variety of CAD applications
Data path regularity [Chowdhary98], [Callahan99]
Scheduling [Ly95] System partitioning [Rao93] Low power design [Mehra96] Soft macros – CPR [Cadambi99] for PipeRench
architecture
ICCAD’01: November, 2001
An Algorithm for Simultaneous An Algorithm for Simultaneous Template Generation and MatchingTemplate Generation and Matching An Algorithm for Simultaneous An Algorithm for Simultaneous Template Generation and MatchingTemplate Generation and Matching
1.1. Given a labeled digraph Given a labeled digraph G(V, E)G(V, E)
2.2. # C is a set of edge types# C is a set of edge types
3.3. C C
4.4. while (stop_conditions_not_met(while (stop_conditions_not_met(GG))))