No Slide Title

Download Report

Transcript No Slide Title

Circuitos Integrados
de. Aplicación Específica
Principios
Generales
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
10,000,000
Logic Transistors/Chip
100,000,000
.10m 1,000,000
Transistor/Staff Month
10,000,000
100,000
.35m
10,000
100,000
1,000
10,000
X
100
X x
2.5m
1,000,000
58%/Yr. compound
Complexity growth rate
10
X X
X
1,000
X
100
21%/Yr. compound
Productivity growth rate
2009
2007
2005
2003
2001
10
1999
1997
1995
1993
1991
1989
1987
1985
1983
1981
1
Logic Transistors
per Chip (K)
Productivity (Trans./Staff-Month)
Logic Transistors per Chip (K)
The Design Productivity Challenge
Produc
1981
1983
1985
1987
1989
1991
1993
1995
1997
1999
2001
2003
2005
2007
2009
A growing gap between design complexity and design productivity
Source: sematech97
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
A Simple Processor
Red de interconexiones
INPUT/OUTPUT
MEMORY
CONTROL
INPUT-OUTPUT
DATAPATH
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
A System-on-a-Chip: Example
Courtesy: Philips
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
None
Configurable/Parameterizable
10-100
Hardwired custom
Energy Efficiency (in MOPS/mW)
100-1000
1-10
Embedded microprocessor
Domain-specific processor
(e.g. DSP)
Impact of Implementation Choices
0.1-1
Somewhat
flexible
Diseño de Circuitos de Aplicación Específica
Fully
flexible
Flexibility
(or application scope)
Metodologías de diseño
Design Methodology
• Design process traverses iteratively between three abstractions:
behavior, structure, and geometry
• More and more automation for each of these steps
Diseño: traducción iterativa entre diferentes niveles
de representación en todos los niveles de abstracción
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Estrategias de diseño

Viabilidad económica




Prestaciones
Tamaño
Tiempo de diseño
Testabilidad
Diseño de Circuitos de Aplicación Específica

Diseño estructurado




Jerarquía
Regularidad
Modularidad
Localidad
Metodologías de diseño
Hierarchy

Divide and conquer
– compose system from simpler widgets

Analogy with software
– break large programs into threads and subroutines

Hierarchy can be there in all domains
– behavior, structural, physical

The hierarchy in different domains may not
correspond
– e.g. a structural hierarchy may not map well to physical
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Example of Structural Hierarchy
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Example of Physical Hierarchy
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Example of Structural Hierarchy
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Example of Physical Hierarchy
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Repartitioning Structural Hierarchy to
Fit Physical Hierarchy
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Regularity

Hierarchy breaks a system into submodules
– but this may not solve the complexity problem
– there may not be any regularity in the subdivision
» we just end up with a large # of different submodules

Regularity as a guide
– subdivide into a set of similar building blocks
» e.g. RAM composed of identical cells

Regularity means that the hierarchical
decomposition of a large system should result in
not only simple, but also similar blocks, as much
as possible
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Regularity (contd.)
 Regularity
can be at all levels
– circuit: use identically sized transistors
– gate: similar gate structures
– higher level: architectures with identical processors
 Regularity
helps in many ways
– correct by construction
– reuse of design
– simplify verification of correctness
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Circuit-level Regularity Example



A 2-1 Mux
D-type edge triggered
flipflop
One-bit full add
All designed using
inverter and tristate
buffer
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Modularity
 Condition
that submodules have “welldefined” functions and interfaces
– in addition to regularity and hierarchy
 ‘Well-formed”
modules allow their interaction
with others to be “well-characterized”
 Depends on the situation
– e.g. in s/w a subroutine has a well-defined interface
» argument list with typed variables
– e.g. in IC a well-defined physical, structural, and
behavioral interface
» pin position, layer, size, signal type, electrical
characteristics, logic function
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Why Modularity?
Allows the design of system to be broken up
with confidence that the system will work as
specified when the parts are combined
 Allows team design by a number of designers
 Examples:

– bad use: use of transmission gates as inputs
» internal signals now depend on source impedance
– bad use: use dynamic CMOS logic but fail to latch or
register the inputs
» timing of each module will have to be checked
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Example of Poor Modularity
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Locality

Modularity provided “well-characterized” interfaces
– internals of modules unimportant to exterior interface

internal details remain at the local level
– a form of “information hiding”


reduces apparent complexity of the module
Locality ensures that connections are between
neighboring modules, avoiding long-distance
connections
– Example: timing locality so that time critical operations are local



clock generation and distribution network
entire clock cycle for global signals to traverse chip
placement so that global wiring is minimized
– Analogy with software

global variables are to be avoided
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño
Parallels between H/W & S/W
Design
Strong parallels in the way VLSIs are
designed and the way complex software is
 HDLs used to describe hardware systems in
essence merge these two disciplines

– software methods used to define hardware
Hardware-software Co-design
 But, can’t ignore hardware aspects entirely

– important since a physical chip is the end product
Diseño de Circuitos de Aplicación Específica
Metodologías de diseño