Download presentation
Presentation is loading. Please wait.
Published byAlison Maud Bridges Modified over 9 years ago
1
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Topics n Low power design. n Pipelining.
2
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Rules for reducing power consumption. n Turn it off. –Eliminates leakage current. n Slow it down, reduce voltage. –Performance is linear with clock frequency. –Power is V 2. n Don’t change its inputs. –Activity-dependent.
3
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Energy and power n Energy = power * time. n Energy consumption is critical for battery- powered systems. n Power consumption is critical for heat dissipation limited systems.
4
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Energy and performance n In many cases, high performance = low energy. –Efficiency pays off in both arenas. n In some cases, energy can be saved by reducing performance. –P = 1/2 CV 2 –Power goes down faster than performance.
5
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Levels of abstraction n Physical: –Minimize capacitance. n Gate: –Use low leakage gates. n Combinational: –Avoid twitches. n Register-transfer: –Avoid using units. n Architecture: –Slow things down, turn them off.
6
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Sources of energy consumption n Static: –Leakage. n Dynamic: –Switching activity.
7
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Physical optimizations n Assuming equal signal probabilities, total wire capacitance is proportional to dynamic power consumption. n Shorter wires -> less power consumption. n More active nets should be shortened first.
8
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR How to reduce wire length n Use hard macros where possible. n Add placement constraints. n Use design hierarchy to guide placement search. n Use nets with small drivers where possible. –Don’t drive a net faster than it needs to go.
9
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Logic/circuit optimizations n Turn off gate where possible. –Not an option in most FPGAs, but it should be. n Operate gate at low voltage. –Speed decreases linearly, power decreases as V 2.
10
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Combinational optimizations n Design network to avoid unnecessary glitching where possible. –Balance delays across paths. n Can duplicate logic to reduce wire lengths. –Does the duplicate logic use less power than the wire?
11
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Register-transfer optimizations n Hold inputs when a unit’s output will not be used. –Put register at inputs. n Turn off units when they won’t be used for several cycles. –Can’t selectively turn off LEs in most FPGAs.
12
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Architectures for low power n Two important methods: –architecture-driven voltage scaling –power-down modes
13
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Architecture-driven voltage scaling n Add extra logic to increase parallelism so that system can run at lower rate. n Power improvement for n parallel units over Vref: –P n (n) = [1 + C i (n)/nC ref + C x (n)/C ref ](V/V ref ) Clock = 50 MHz Clock = 25 MHz
14
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Power-down modes n CMOS doesn’t consume power when not transitioning. Many systems can incorporate power-down modes: –condition the clock on power-down mode; –add state to control for power-down mode; –modify the control logic to ensure that power- down/power-up don’t corrupt control state.
15
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Pipelines n Provide higher utilization of logic: Combinational logic P1P1 P2P2
16
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Pipeline metrics n Throughput: rate at which new values enter the system. –Initiation interval: time between successive inputs. n Latency: delay from input to output.
17
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Simple pipelines n Pure pipelines have no control. n Choose latency, throughput. n Choose register locations with retiming. n Overhead: –Setup, hold times. –Power.
18
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Complex pipelines n Actions in pipeline depend on data or external events. n Actions on pipe: –Stall values. –Abort operation. –Bypass values.
19
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Pipeline metrics n Ignore register delay: –Combinational logic delay D. –Latency L. –Throughput T. n Delay through unpipelined system. –L = D. –T = 1/D.
20
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Adding pipeline stages n Add a pipeline stage: –Latency remains L = D. –Throughput increases: T = 2/D. n n-stage pipeline: –Throughput increases: T = n/D. n Clock period: –P = D/n.
21
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Performance vs. pipeline stages # stages throughput clock period
22
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Adding pipeline stages n Must add a pipeline stage that cuts the logic. –Cutset for PI-PO graph. n Can use retiming to position the registers in the logic.
23
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Cutsets
24
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Bad pipeline
25
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Pipeline utilization n Need to fill up the pipeline. –Later stages are unused as the pipeline fills up. n Assume D stages of valid data, n total stages. –Utilization U= D / D+n. n In steady state, utilization approaches 1.
26
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Pipelines with control n Pipeline may do different things at different times. –CPU control flow. n Must make sure that the pipeline operates properly in all cases.
27
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Sending a control signal forward
28
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Sending a control signal backward n Make sure control arrives at right cycle:
29
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Combining signals from multiple cycles n Different stages can’t use ALU on same cycle.
30
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Distributed pipeline control
31
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Pipeline control logic n Ideal pipeline needs no significant control: s1 -/ALU = op
32
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Simple decisions n Simple decision doesn’t add states: s1 0 /ALU = +1 /ALU = -
33
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Controlling a pipeline flush
34
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Product machine for pipeline flush
35
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Hardware sharing control
36
FPGA-Based System Design: Chapter 6 Copyright 2004 Prentice Hall PTR Pipeline verification n Extensive simulation is required to exercise the pipeline. –State of pipeline stages interact. n Symbolic simulation: simulate names, not particular values.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.