Part V: A NOC Design Methodology - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

Part V: A NOC Design Methodology

Description:

How to develop a system that uses 1 billion transistor capacity ... Telepresence. Holodeck (Star Trek) Purpose of Life (Hitch Hikers Guide to Galaxy) ... – PowerPoint PPT presentation

Number of Views:31
Avg rating:3.0/5.0
Slides: 30
Provided by: juhapekka4
Category:

less

Transcript and Presenter's Notes

Title: Part V: A NOC Design Methodology


1
Part VA NOC Design Methodology
  • Juha-Pekka Soininen
  • VTT Electronics
  • Oulu, Finland

NOCARC project
2
Background of the presentation
  • Mission
  • How to develop a system that uses 1 billion
    transistor capacity effectively in 2007-2010
  • Maturity of design methodology
  • 2nd guess on how NOC based systems should be
    developed
  • Related methodologies
  • distributed systems
  • parallel processing systems
  • systems on chip and ASIC design

3
Outline
  • Existing design flows
  • NOC concept
  • Capacity considerations
  • Application characteristics
  • NOC design challenges
  • NOC design methodology
  • NOC layers
  • Development flow
  • System services
  • Architecture design problems
  • Application development problems
  • Conclusions

4
Design Flow Space
simulation
emulation
profiling
synthesis
System exists
monitoring
design
workloadanalysis
cosimulation
prototyping
mappability estimation
Function development
complexityanalysis
estimation
capacity estimation
mathematicalanalyses
performanceanalysis
performancesimulation
modelling
benchmarking
System does not exist
Resource development
5
Extremely short introduction to existing design
flows
  • Algorithm on Chip (AoC)
  • ASIC design flow
  • FPGA design flow
  • System on Chip (SoC)
  • Codesign flow
  • IP based design flow
  • Platform based design flow (Resources on Chip,
    RoC)
  • Configuration design flow
  • Software design flow

6
AoC Design Flow
Algorithms exists
simulation
emulation
profiling
synthesis
Chip exists
HW design
changes into functionality
Algorithm design
complexityanalysis
Function development
feasibility studies
mathematicalanalyses
modelling
System does not exist
Resource development
7
CoDesign Flow
simulation
emulation
profiling
synthesis
System exists
monitoring
workloadanalysis
cosimulation
prototyping
SW/HW partitioning
mappability estimation
Function development
capacity estimation
mathematicalanalyses
modelling
System does not exist
Resource development
8
IP Based Design
emulation
System exists
monitoring
workloadanalysis
cosimulation
prototyping
mappability estimation
Function development
capacity estimation
estimation
mathematicalanalyses
Architecture template
IP block integration
modelling
System does not exist
Resource development
9
Software Design
System exists
monitoring
prototyping
SW design
Function development
performance analysis
estimation
performancesimulation
RTOS services
modelling
benchmarking
Computer design
System does not exist
Computer exists
Resource development
10
Capacity of Network on Chip
Average SoC design ? 1 million gates 1 billion
transistors ? 250 million gates 1 NoC gt 200
SoCs 1 GHz clock with RISC computer ? 1000 MIPS
performance 1 NOC capacity ? 100-10000
GIPS Applicability of capacity is limited by
communication
10 computers
10 computers
11
Applications for NOC
  • Multistandard terminal
  • Next generation base station
  • Simulation of human brain
  • Virtual reality creation
  • Telepresence
  • Holodeck (Star Trek)
  • Purpose of Life (Hitch Hikers Guide to Galaxy)
  • Simulation of universe
  • Commercial operating system -)

Piece of cake
Realistic applications
Maybe not even for NOC
Real challenges for every archtitecture
12
Application characteristics
NOC capacity will be shared by several
simultaneous applications
NOC must be adaptable to different workload
patterns
Different applications have very different
requirement profile
Stream-based processing
tn
tnp
Parallel processing
Real-time processing
13
Network on Chip alternatives
NOC Network of computation and storage
resources NOC parameters Number of
resources Types of resources GPU DSP Memory
Configurable HW Coprocessors Any
combination Communication capability
14
Network on Chip alternatives
Regions are used to encapsulate application
requirements Parallel high-performance datapaths
Data compression, encryption, decompression,
decryption
OFDM bit-stream processing
WCDMA bit-stream processing
15
Network on Chip alternatives
Memory management
DATABASE NOC
Memory area
Applications
16
Network on Chip alternatives
Parallel processing engine
IO
17
NOC design challenges
Physical limits -gt Architecture basics -gt GALS
-gt Communication principles Application
requirements -gt Region concepts -gt Heterogenuous
resources types -gt Multilanguage and method
design flows Overall complexity -gt Architecture
reuse -gt Platform type of design flow Overall
complexity -gt Basic control principles -gt System
services Manufacturability problems -gt
Structured approach
NoC
SoC
18
Figure of Merit for NOC based systems
Scalability
Efficiency
Computation
Energy consumption
Utilisation
Storage
Fault tolerance
Capacity
Communication
Result quality (accuracy)
Functionality
Responsiveness
Materials
Structural
Licencing
Functional
System Quality
Production
Control
Implementation
Complexity
Development
Effort
Time
Modifiability
Flexibility
Volume
Risk
Coupling
Applicability
Lifetime
Cohesion
Configurability
Manufacturability
Modularity
Programmability
Usability
19
Basic requirements for NOC design methodology
  • Reuse
  • of intellectual property blocks
  • best performance/energy ratio
  • best mapping to application characteristics
  • Reuse
  • of hardware (and architecture)
  • best complexity/cost and performance/cost ratio
  • only way to even dream of achieving
    time-to-profit requirements
  • Reuse
  • of design methods and tools
  • only way to deal with heterogenuous application
    set

20
NOC Design Methodology
Cores
Communication structure
Memories
Accelerators
Optimised Virtual Components
Definition of NOC platform
Generic backbone
Application area specific IPR
Processors and hardware
Algorithms
Applications
Product area specific platform
Instantiation of NoC platform
Features
Product specific IPR
Optimised Intellectual Property
Code and configuration
NoC system
21
Structural layers of NOC
Product
System control, product behaviour
Network management, allocation, operation modes
Configuration
Applications
Resource management,diagnostics, applications
Functions
Execution control, functions
Executables
RTOS, code, HW configurations
Hardware units
Processors, memorires, configurable HW, logic
Resources
Resource types, buses, IO
Regions
Region types, switches, network interfaces
Communication
Channels and protocols
22
Logical layers of NOC
  • Backbone
  • Communication resources
  • Basic set of system services
  • Architecture design methods and tools
  • Platform
  • Computation and storage resources
  • System services
  • Application design methods and tools
  • System
  • Functionality of computation(code, configuration)
  • Control (OS, NetOS)
  • Validation and verification support

Product
Configuration
Applications
Functions
Executables
Hardware units
Resources
Regions
Communication
23
Development of NOC based systems
High-perforrmance communication systems
High-capacity communication systems
Baseband platform
Personal assistant
Database platform
Data collection systems
BACKBONE
Multimedia platform
Entertainment devices
PLATFORMS
Virtual reality games
SYSTEMS
24
Using Design Space for NOC
Communication channels
Non-configurable hardware
NOC System
Product differentiation
Application mapping
Function development
Platform
Architecturedesign
Backbone
System Services
Operation principles
Product area specialisation
System does not exist
Resource development
25
System Services
  • Purpose to hide implementation details from
    application developer
  • Execution services
  • Communication, resource allocation and conversion
    services
  • Control services
  • Power management, reconfiguration, load
    migration, fault detection and recovery, data
    collection and analysis
  • Development support services
  • Language interfacing, compilers, libraries,
    optimisations, debugging, testing, validation,
    etc.
  • System services are part of backbone and platform

ASIC
Performance
SW
Thickness of service layers
26
NOC Platform development
  • Scaling problem
  • How big NOC is needed? What are the application
    area requirements?
  • Region definition problem
  • What kind of regions are needed? What kind of
    interfaces between regions? What are the capacity
    requirements for the regions?
  • Resource design problem
  • What is needed inside resources? Internal
    computation type and internal communication?
  • Application mapping flow problem
  • What kind of languages, models and tools must be
    supported? How to validate and test the final
    products?

27
NOC Application Development
  • Mapping problem
  • How to partition applications for NOC resources?
    How to allocate functionality effectively? Is the
    performance adequate? Is the resource usage in
    balance?
  • Optimisation problem
  • How to perform global optimisation of
    heterogenuous applications? How to define right
    optimisation targets? How to utilise
    application/resource type specific tools?
  • Validation problem
  • Are the contraints met? Are the communication
    bottlenecks or power consumption hot spots? How
    to simulate 10000 GIPS system? How to test all
    applications?

28
Methods Tools
  • Analysis of applications (characterisation)
  • analysis of complexity, computation type,
    communication requirement, storage, etc.
  • for scaling, region and resource type selection,
    and application mapping
  • Different abstraction levels workload model,
    application model, execution model
  • Validation of decisions
  • network simulations at various abstraction levels
    (effects of mapping)
  • Estimation of quality characteristics
  • global vs. local optimisation of the system
  • SW architecture vs. HW architecture
  • computation vs. engine
  • Development support
  • virtual execution platforms for application
    developers
  • integration of existing design tools for resource
    level design

29
Conclusions
  • Development of NOC systems will be a huge effort
  • reuse in all levels is a must
  • reuse of architecture, hardware and software in
    product
  • reuse of different languages, methods, tools and
    practices during development
  • Backbone, platform, system based design
    methodology apporach
  • provides variability and performance
  • Analysis, decision, estimation and validation
    methods are the cornerstones of NOC development
  • complexity, functionality, workload vs. capacity,
    performance, efficiency
Write a Comment
User Comments (0)
About PowerShow.com