SlideShare a Scribd company logo
1 of 26
Design Flow – Computation Flow
Computation Flow

• For both run-time
  and compile-time

• For some
  applications, must
  iterate




                                          2
Computation flow
 If many reconfigurations have to be
  done, then some of the steps should
  be reiterated according to the
  application's need.
 A synchronization mechanism is
  usually used between the processor
  and the RD.
 Blocking access should also be
  used for the memory access
  between the two devices.




                                        3
Computation flow
 Devices like the Xilinx Virtex II/II-
  Pro up and the Altera Excalibur
  feature one or more soft or hard-
  macro processors.
    − The complete system can be
        integrated in only one device.

 The reconfiguration process can
  be:
    − Full: The complete device have to
      be reconfigured.
    − Partial: Only part of the device is
      configured while the rest keeps
      running.


                                            4
Computation flow
 Full reconfiguration devices                                          task 2

    − Function to be downloaded at run-time are           task 1                       task N
      developed and stored in a database.
    − No geometrical constraints restriction are
      required for the function.                   Services                       Task Request


 Partial reconfiguration capabilities                     Module                     Scheduler
                                                           Database
    − Modules represented as rectangular                   M1      M4

      boxes, are pre-computed and stored in a              M2      M3
      data base.                                                                        Placer

    − With relocation, the modules are assigned    O.S.

      to a position on the device at run-time.
                                                                                       T2



                                                                                            TN
                                                                                 T1

                                                                            Reconfigurable Device




                                                                                                  5
RTR Challenges
                                                                                task 2

•   Management of Reconf. Device:                                 task 1                       task N
        − Usually as a part of the OS running on a
          processor
     Scheduler                                            Services                       Task Request

        − Decides when a task must be executed
        − Tasks in a database                                      Module                     Scheduler
                                                                   Database
        − Characterized by (bbox, run time)                        M1      M4

     Placer                                                       M2      M3
                                                                                                Placer
        − Temporal placement: management of tasks at run
          time                                             O.S.

        − Allocates a set of resources for the task.
                                                                                               T2
        − If cannot find a site, task is rejected
•   Challenges:
                                                                                                    TN
     Fragmentation                                                                      T1

                                                                                    Reconfigurable Device
     Communication between new/old tasks

                                                                                                          6
Design Flow
Hardware/Software Partitioning
•   Implementation of a reconfigurable
    system:
      a Hardware/software co-design
          process:
•   Software part: (code-segment to be
    executed on the processor)
      Development in a software
          language with common tools
•   Hardware part: (to be executed on the
    RD)
      Development in HDL
                                                           Interface
•   Interface:
                                              Software               Hardware
      HDL or system-level languages        C, C++, Java           VHDL, Verilog
                                                etc ...            HandelC, etc..

                                                                              8
FPGA Architecture
•   FPGA architecture from CAD tools’ point of view:
        N BLE’s (Basic Logic Element)
        K-LUT: k-input LUT
        I inputs, N outputs
        Inputs and outputs fully connected to the inputs of each LUT
         through MUXes




                                                                        9
Design Flow for H/w Part
     Almost the same for all digital
       circuit design
•   Synthesis
     Different particularly in Technology
       mapping
       − LUT-technology mapping
       − Specific to target technology (device)




                                                  10
Design Flow for H/w Part



•   Design Entry
      Schematic Netlist
      HDL
     Waveform
     State Diagram




                                    11
Textual or Schematic

•   Most people today use textual languages rather than schematic

      Poor use of screen space.


      Not appropriate for large designs.


      Hard tooling (parsing).




                                                                12
What is Synthesis?
 •   Transformation of an
     abstract description into a
     more detailed description
       "+" operator is
        transformed into a gate
        netlist
       "if (VEC_A = VEC_B)
        then"
         a comparator which
        controls a multiplexer
 •   Transformation depends on
     several factors:
       Algorithm, constraints,
         library
‫ ، مقايسه( به گيتهاي مشخصي‬AND ،OR ‫عملگرهاي ساده ) مثل‬     •
  ‫تبديل مي شوند اما عملگرهاي پيچيده تر مثل ضرب ابتدا به‬
                .‫ تبديل مي شوند‬tool ‫ماکروسلهاي خاص آن‬
                                                              13
Synthesizability



 • Only a subset of VHDL is
   synthesizable
 • Different tools support different
   subsets
    records?
    arrays of integers?
    clock edge detection?
    sensitivity list?
    ...




                                       14
Synthesis
•   Compilation and optimization:
      All non-synthesizable data types and
       operations  synthesizable code
      Translated into a set of Boolean equations
      Then minimized (Technology-independent
       optimization)
•   Technology mapping:
      Assign functional modules to library elements.
      On FPGAs:
        − Mapping control logic and datapath to LUTs and BLEs
        − Mapping optimized datapath to on-chip dedicated
          circuit structures (e.g. on-chip multipliers, adders with
          dedicated carry-chains, embedded memory blocks)
      Technology-dependent optimization



                                                                      15
Synthesis
•   Result:
      Netlist: a list of components and their
       interconnections.
•   Netlist Formats:
      EDIF (Electronic Design Interchange Format).
      Vendor specific formats.
        − Example: XNF (Xilinx Netlist Format)




                                                      16
Physical Design: Place and Route
•   Place:
      Assign locations to the components
      In hierarchical architectures:
        − May need a separate clustering step: to group BLEs into
          logic blocks
        − Clustering: prior to placement or during placement

•   Route:
      Provide communication paths to the
        interconnections.
•   Optimization problems: some cost must be minimized

•   Important factors:
      Clock frequency
      Power Consumption
      Routing congestion
      ...



                                                                    17
FPGA Placement & Routing




                           18
Field Programmable Gate Array (FPGA)




                                       19
Configuration Bitstream
•   Bitstream:

     LUT contents,


     Multiplexer control lines,


     Interconnections,


     ….




                                           20
‫‪Design Flow‬‬



                    ‫برنامه طرح مانند سيکل‬                ‫• ‪Debug‬‬
                                                         ‫: نويسي‬
   ‫برنامه‬    ‫کامپاي‬      ‫اجرا‬
   ‫نويسي‬         ‫ل‬
                   ‫ويراي‬
                      ‫ش‬
‫ورود طرح‬    ‫کامپاي‬     ‫شبيه سازي‬     ‫سنتز‬    ‫شبيه سازي‬
                 ‫ل‬
                    ‫ويراي‬
                                            ‫ويراي‬
                      ‫ش‬
                                              ‫ش‬




                                                                   ‫12‬
FPGA Design Flow – Example
•   Design:
      Modulo 10-counter
•   Target device:
      FPGA with 2x2 Logic Blocks (LB)
      LBs:
        − Two 2-inputs LUTs
        − Two edge-triggered T-Flipflops
•   Objectives:
      Area
      Latency




                                           22
FPGA Design Flow – Example
•   Truth table:        •   Synthesis and Optimization:
     State transitions      Karnaugh maps
     TFF inputs




                                                          23
FPGA Design Flow – Example




                             24
FPGA Design Flow – Example




                             25
References
 [Bobda07] C. Bobda, “Introduction to Reconfigurable
  Computing: Architectures, Algorithms and
  Applications,” Springer, 2007.




                                                        26

More Related Content

What's hot

Memory access control in multiprocessor for real-time system with mixed criti...
Memory access control in multiprocessor for real-time system with mixed criti...Memory access control in multiprocessor for real-time system with mixed criti...
Memory access control in multiprocessor for real-time system with mixed criti...Heechul Yun
 
Graphics processing uni computer archiecture
Graphics processing uni computer archiectureGraphics processing uni computer archiecture
Graphics processing uni computer archiectureHaris456
 
Rtos princples adn case study
Rtos princples adn case studyRtos princples adn case study
Rtos princples adn case studyvanamali_vanu
 
HKG15-305: Real Time processing comparing the RT patch vs Core isolation
HKG15-305: Real Time processing comparing the RT patch vs Core isolationHKG15-305: Real Time processing comparing the RT patch vs Core isolation
HKG15-305: Real Time processing comparing the RT patch vs Core isolationLinaro
 
Chapter 7 cpu struktur dan fungsi
Chapter 7 cpu struktur dan fungsiChapter 7 cpu struktur dan fungsi
Chapter 7 cpu struktur dan fungsirisal07
 
Hardware-aware thread scheduling: the case of asymmetric multicore processors
Hardware-aware thread scheduling: the case of asymmetric multicore processorsHardware-aware thread scheduling: the case of asymmetric multicore processors
Hardware-aware thread scheduling: the case of asymmetric multicore processorsAchille Peternier
 
Real Time Systems
Real Time SystemsReal Time Systems
Real Time SystemsDeepak John
 
Fast switching of threads between cores - Advanced Operating Systems
Fast switching of threads between cores - Advanced Operating SystemsFast switching of threads between cores - Advanced Operating Systems
Fast switching of threads between cores - Advanced Operating SystemsRuhaim Izmeth
 
200923 01en
200923 01en200923 01en
200923 01enopenrtm
 
Testing real-time Linux. What to test and how
Testing real-time Linux. What to test and how Testing real-time Linux. What to test and how
Testing real-time Linux. What to test and how Chirag Jog
 

What's hot (20)

RT linux
RT linuxRT linux
RT linux
 
Memory access control in multiprocessor for real-time system with mixed criti...
Memory access control in multiprocessor for real-time system with mixed criti...Memory access control in multiprocessor for real-time system with mixed criti...
Memory access control in multiprocessor for real-time system with mixed criti...
 
Real time Linux
Real time LinuxReal time Linux
Real time Linux
 
Graphics processing uni computer archiecture
Graphics processing uni computer archiectureGraphics processing uni computer archiecture
Graphics processing uni computer archiecture
 
Mastering Real-time Linux
Mastering Real-time LinuxMastering Real-time Linux
Mastering Real-time Linux
 
Rtos princples adn case study
Rtos princples adn case studyRtos princples adn case study
Rtos princples adn case study
 
Rtos
RtosRtos
Rtos
 
Duma ver3
Duma ver3Duma ver3
Duma ver3
 
HKG15-305: Real Time processing comparing the RT patch vs Core isolation
HKG15-305: Real Time processing comparing the RT patch vs Core isolationHKG15-305: Real Time processing comparing the RT patch vs Core isolation
HKG15-305: Real Time processing comparing the RT patch vs Core isolation
 
Real Time Support For Xen
Real Time Support For XenReal Time Support For Xen
Real Time Support For Xen
 
Chapter 7 cpu struktur dan fungsi
Chapter 7 cpu struktur dan fungsiChapter 7 cpu struktur dan fungsi
Chapter 7 cpu struktur dan fungsi
 
Preempt_rt realtime patch
Preempt_rt realtime patchPreempt_rt realtime patch
Preempt_rt realtime patch
 
Vx works RTOS
Vx works RTOSVx works RTOS
Vx works RTOS
 
Hardware-aware thread scheduling: the case of asymmetric multicore processors
Hardware-aware thread scheduling: the case of asymmetric multicore processorsHardware-aware thread scheduling: the case of asymmetric multicore processors
Hardware-aware thread scheduling: the case of asymmetric multicore processors
 
UIC Thesis Beretta
UIC Thesis BerettaUIC Thesis Beretta
UIC Thesis Beretta
 
Real Time Systems
Real Time SystemsReal Time Systems
Real Time Systems
 
Fast switching of threads between cores - Advanced Operating Systems
Fast switching of threads between cores - Advanced Operating SystemsFast switching of threads between cores - Advanced Operating Systems
Fast switching of threads between cores - Advanced Operating Systems
 
SmartBalance-DAC-v2
SmartBalance-DAC-v2SmartBalance-DAC-v2
SmartBalance-DAC-v2
 
200923 01en
200923 01en200923 01en
200923 01en
 
Testing real-time Linux. What to test and how
Testing real-time Linux. What to test and how Testing real-time Linux. What to test and how
Testing real-time Linux. What to test and how
 

Similar to Computation Flow Design

06_1_design_flow.ppt
06_1_design_flow.ppt06_1_design_flow.ppt
06_1_design_flow.pptMohammedMianA
 
High Performance Computing Infrastructure: Past, Present, and Future
High Performance Computing Infrastructure: Past, Present, and FutureHigh Performance Computing Infrastructure: Past, Present, and Future
High Performance Computing Infrastructure: Past, Present, and Futurekarl.barnes
 
Introduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network IssuesIntroduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network IssuesJason TC HOU (侯宗成)
 
Scheduler performance in manycore architecture
Scheduler performance in manycore architectureScheduler performance in manycore architecture
Scheduler performance in manycore architecturechiportal
 
Scientific Applications of The Data Distribution Service
Scientific Applications of The Data Distribution ServiceScientific Applications of The Data Distribution Service
Scientific Applications of The Data Distribution ServiceAngelo Corsaro
 
Real Time Kernels
Real Time KernelsReal Time Kernels
Real Time KernelsArnav Soni
 
Introduction to NetBSD kernel
Introduction to NetBSD kernelIntroduction to NetBSD kernel
Introduction to NetBSD kernelMahendra M
 
Ultra-scalable Architectures for Telecommunications and Web 2.0 Services
Ultra-scalable Architectures for Telecommunications and Web 2.0 ServicesUltra-scalable Architectures for Telecommunications and Web 2.0 Services
Ultra-scalable Architectures for Telecommunications and Web 2.0 ServicesMauricio Arango
 
Reverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device SoftwareReverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device SoftwareDharmalingam Ganesan
 
Session 1 introduction concurrent programming
Session 1 introduction  concurrent programmingSession 1 introduction  concurrent programming
Session 1 introduction concurrent programmingEric Verhulst
 
NetBSD and Linux for Embedded Systems
NetBSD and Linux for Embedded SystemsNetBSD and Linux for Embedded Systems
NetBSD and Linux for Embedded SystemsMahendra M
 
Introduction to Parallel Computing
Introduction to Parallel ComputingIntroduction to Parallel Computing
Introduction to Parallel ComputingAkhila Prabhakaran
 
Kubernetes presentation
Kubernetes presentationKubernetes presentation
Kubernetes presentationGauranG Bajpai
 
Advanced Reporting with Novell ZENworks Reporting Server: More than Asset Man...
Advanced Reporting with Novell ZENworks Reporting Server: More than Asset Man...Advanced Reporting with Novell ZENworks Reporting Server: More than Asset Man...
Advanced Reporting with Novell ZENworks Reporting Server: More than Asset Man...Novell
 
Real time system basic concept
Real time system basic conceptReal time system basic concept
Real time system basic conceptMOUMITA GHOSH
 
MapReduce Container ReUse
MapReduce Container ReUseMapReduce Container ReUse
MapReduce Container ReUseHortonworks
 
IS-ENES COMP Superscalar tutorial
IS-ENES COMP Superscalar tutorialIS-ENES COMP Superscalar tutorial
IS-ENES COMP Superscalar tutorialRoger Rafanell Mas
 

Similar to Computation Flow Design (20)

06_1_design_flow.ppt
06_1_design_flow.ppt06_1_design_flow.ppt
06_1_design_flow.ppt
 
High Performance Computing Infrastructure: Past, Present, and Future
High Performance Computing Infrastructure: Past, Present, and FutureHigh Performance Computing Infrastructure: Past, Present, and Future
High Performance Computing Infrastructure: Past, Present, and Future
 
Introduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network IssuesIntroduction to Cloud Data Center and Network Issues
Introduction to Cloud Data Center and Network Issues
 
Scheduler performance in manycore architecture
Scheduler performance in manycore architectureScheduler performance in manycore architecture
Scheduler performance in manycore architecture
 
Scientific Applications of The Data Distribution Service
Scientific Applications of The Data Distribution ServiceScientific Applications of The Data Distribution Service
Scientific Applications of The Data Distribution Service
 
Lect17
Lect17Lect17
Lect17
 
Architectures for parallel
Architectures for parallelArchitectures for parallel
Architectures for parallel
 
Real Time Kernels
Real Time KernelsReal Time Kernels
Real Time Kernels
 
Introduction to NetBSD kernel
Introduction to NetBSD kernelIntroduction to NetBSD kernel
Introduction to NetBSD kernel
 
Ultra-scalable Architectures for Telecommunications and Web 2.0 Services
Ultra-scalable Architectures for Telecommunications and Web 2.0 ServicesUltra-scalable Architectures for Telecommunications and Web 2.0 Services
Ultra-scalable Architectures for Telecommunications and Web 2.0 Services
 
Reverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device SoftwareReverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device Software
 
Session 1 introduction concurrent programming
Session 1 introduction  concurrent programmingSession 1 introduction  concurrent programming
Session 1 introduction concurrent programming
 
NetBSD and Linux for Embedded Systems
NetBSD and Linux for Embedded SystemsNetBSD and Linux for Embedded Systems
NetBSD and Linux for Embedded Systems
 
Introduction to Parallel Computing
Introduction to Parallel ComputingIntroduction to Parallel Computing
Introduction to Parallel Computing
 
Kubernetes presentation
Kubernetes presentationKubernetes presentation
Kubernetes presentation
 
L11-RTOS.ppt
L11-RTOS.pptL11-RTOS.ppt
L11-RTOS.ppt
 
Advanced Reporting with Novell ZENworks Reporting Server: More than Asset Man...
Advanced Reporting with Novell ZENworks Reporting Server: More than Asset Man...Advanced Reporting with Novell ZENworks Reporting Server: More than Asset Man...
Advanced Reporting with Novell ZENworks Reporting Server: More than Asset Man...
 
Real time system basic concept
Real time system basic conceptReal time system basic concept
Real time system basic concept
 
MapReduce Container ReUse
MapReduce Container ReUseMapReduce Container ReUse
MapReduce Container ReUse
 
IS-ENES COMP Superscalar tutorial
IS-ENES COMP Superscalar tutorialIS-ENES COMP Superscalar tutorial
IS-ENES COMP Superscalar tutorial
 

Recently uploaded

Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptxPoojaSen20
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfUmakantAnnand
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 

Recently uploaded (20)

Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.Compdf
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 

Computation Flow Design

  • 1. Design Flow – Computation Flow
  • 2. Computation Flow • For both run-time and compile-time • For some applications, must iterate 2
  • 3. Computation flow  If many reconfigurations have to be done, then some of the steps should be reiterated according to the application's need.  A synchronization mechanism is usually used between the processor and the RD.  Blocking access should also be used for the memory access between the two devices. 3
  • 4. Computation flow  Devices like the Xilinx Virtex II/II- Pro up and the Altera Excalibur feature one or more soft or hard- macro processors. − The complete system can be integrated in only one device.  The reconfiguration process can be: − Full: The complete device have to be reconfigured. − Partial: Only part of the device is configured while the rest keeps running. 4
  • 5. Computation flow  Full reconfiguration devices task 2 − Function to be downloaded at run-time are task 1 task N developed and stored in a database. − No geometrical constraints restriction are required for the function. Services Task Request  Partial reconfiguration capabilities Module Scheduler Database − Modules represented as rectangular M1 M4 boxes, are pre-computed and stored in a M2 M3 data base. Placer − With relocation, the modules are assigned O.S. to a position on the device at run-time. T2 TN T1 Reconfigurable Device 5
  • 6. RTR Challenges task 2 • Management of Reconf. Device: task 1 task N − Usually as a part of the OS running on a processor  Scheduler Services Task Request − Decides when a task must be executed − Tasks in a database Module Scheduler Database − Characterized by (bbox, run time) M1 M4  Placer M2 M3 Placer − Temporal placement: management of tasks at run time O.S. − Allocates a set of resources for the task. T2 − If cannot find a site, task is rejected • Challenges: TN  Fragmentation T1 Reconfigurable Device  Communication between new/old tasks 6
  • 8. Hardware/Software Partitioning • Implementation of a reconfigurable system:  a Hardware/software co-design process: • Software part: (code-segment to be executed on the processor)  Development in a software language with common tools • Hardware part: (to be executed on the RD)  Development in HDL Interface • Interface: Software Hardware  HDL or system-level languages C, C++, Java VHDL, Verilog etc ... HandelC, etc.. 8
  • 9. FPGA Architecture • FPGA architecture from CAD tools’ point of view:  N BLE’s (Basic Logic Element)  K-LUT: k-input LUT  I inputs, N outputs  Inputs and outputs fully connected to the inputs of each LUT through MUXes 9
  • 10. Design Flow for H/w Part  Almost the same for all digital circuit design • Synthesis  Different particularly in Technology mapping − LUT-technology mapping − Specific to target technology (device) 10
  • 11. Design Flow for H/w Part • Design Entry  Schematic Netlist  HDL  Waveform  State Diagram 11
  • 12. Textual or Schematic • Most people today use textual languages rather than schematic  Poor use of screen space.  Not appropriate for large designs.  Hard tooling (parsing). 12
  • 13. What is Synthesis? • Transformation of an abstract description into a more detailed description  "+" operator is transformed into a gate netlist  "if (VEC_A = VEC_B) then"  a comparator which controls a multiplexer • Transformation depends on several factors:  Algorithm, constraints, library ‫ ، مقايسه( به گيتهاي مشخصي‬AND ،OR ‫عملگرهاي ساده ) مثل‬ • ‫تبديل مي شوند اما عملگرهاي پيچيده تر مثل ضرب ابتدا به‬ .‫ تبديل مي شوند‬tool ‫ماکروسلهاي خاص آن‬ 13
  • 14. Synthesizability • Only a subset of VHDL is synthesizable • Different tools support different subsets  records?  arrays of integers?  clock edge detection?  sensitivity list?  ... 14
  • 15. Synthesis • Compilation and optimization:  All non-synthesizable data types and operations  synthesizable code  Translated into a set of Boolean equations  Then minimized (Technology-independent optimization) • Technology mapping:  Assign functional modules to library elements.  On FPGAs: − Mapping control logic and datapath to LUTs and BLEs − Mapping optimized datapath to on-chip dedicated circuit structures (e.g. on-chip multipliers, adders with dedicated carry-chains, embedded memory blocks)  Technology-dependent optimization 15
  • 16. Synthesis • Result:  Netlist: a list of components and their interconnections. • Netlist Formats:  EDIF (Electronic Design Interchange Format).  Vendor specific formats. − Example: XNF (Xilinx Netlist Format) 16
  • 17. Physical Design: Place and Route • Place:  Assign locations to the components  In hierarchical architectures: − May need a separate clustering step: to group BLEs into logic blocks − Clustering: prior to placement or during placement • Route:  Provide communication paths to the interconnections. • Optimization problems: some cost must be minimized • Important factors:  Clock frequency  Power Consumption  Routing congestion  ... 17
  • 18. FPGA Placement & Routing 18
  • 19. Field Programmable Gate Array (FPGA) 19
  • 20. Configuration Bitstream • Bitstream:  LUT contents,  Multiplexer control lines,  Interconnections,  …. 20
  • 21. ‫‪Design Flow‬‬ ‫برنامه طرح مانند سيکل‬ ‫• ‪Debug‬‬ ‫: نويسي‬ ‫برنامه‬ ‫کامپاي‬ ‫اجرا‬ ‫نويسي‬ ‫ل‬ ‫ويراي‬ ‫ش‬ ‫ورود طرح‬ ‫کامپاي‬ ‫شبيه سازي‬ ‫سنتز‬ ‫شبيه سازي‬ ‫ل‬ ‫ويراي‬ ‫ويراي‬ ‫ش‬ ‫ش‬ ‫12‬
  • 22. FPGA Design Flow – Example • Design:  Modulo 10-counter • Target device:  FPGA with 2x2 Logic Blocks (LB)  LBs: − Two 2-inputs LUTs − Two edge-triggered T-Flipflops • Objectives:  Area  Latency 22
  • 23. FPGA Design Flow – Example • Truth table: • Synthesis and Optimization:  State transitions  Karnaugh maps  TFF inputs 23
  • 24. FPGA Design Flow – Example 24
  • 25. FPGA Design Flow – Example 25
  • 26. References  [Bobda07] C. Bobda, “Introduction to Reconfigurable Computing: Architectures, Algorithms and Applications,” Springer, 2007. 26