Term
Advantages and disadvantages of ASICs |
|
Definition
Advantages:
- very high performanc and efficient
Disadvantages:
- not flexible (can’t be altered after fabrication)
- High NRE Cost |
|
|
Term
Advantages and disadvantages of software |
|
Definition
Advantages:
- software is very flexible to change
Disadvantages
- performance can suffer if clock is not fast
- fixed instruction set by hardware |
|
|
Term
Advantages of reconfigurable computing |
|
Definition
Advantages:
• fills the gap between hardware and software
• much higher performance than software
• higher level of flexibility than hardware |
|
|
Term
What is spatial and temporal based computing? |
|
Definition
Temporal-based execution (hardware)
- parallel computations
Spatial-based execution (software)
- sequential computations
- slower than ASIC but might be faster than FPGA
Extract parallelism (or concurrency) from algorithm descriptions is one of the keys to acceleration using reconfigurable computing
|
|
|
Term
Frequency and power comsuption of ASIC/ASIP |
|
Definition
1-2 GHz
feq thenths of watts |
|
|
Term
Frequency and power comsuption of reconf. HW |
|
Definition
xilinx v7 (28nm)
20-30 W
Up to 600MHz
Xilinx Artix-7 (28 nm)
4-8W
500MHz |
|
|
Term
Frequency and power comsuption of Multicores and GPUs |
|
Definition
IBM cell (90nm)
40-50 W
3.2 GHz
Nvidia Geforce GFX 560 ti (40nm)
170 W
0.8 GHz |
|
|
Term
Frequency and power comsuption of GPP
(general purpose processors) |
|
Definition
Xeon 7560 (45 nm)
130 W
2.26 GHz
i7E 3960X (32 nm)
130 W
3.3 GHz |
|
|
Term
Frequency and power comsuption of mobile processors |
|
Definition
Atom z6xx (45 nm)
1.3-3 W
400 MHz
Apple A5 (45 nm)
1.9W
1 GHz |
|
|
Term
Which processor type is the most efficient? |
|
Definition
depends on the application
Performance?
energy comsumption?
performance and energy consumption also depends on the application
|
|
|
Term
|
Definition
Energy is always over time
E = P*t |
|
|
Term
Why do we need reconfigurable computing? |
|
Definition
Performance, performace/power:
- many applications run more efficently on reconf HW
* streaming applications
* parallelins
* when GPPs and ASICs dont match the applications requirements
* application with changing requirements
FPGA provide:
- spatial coomputational resources to impl. massively-parallel computations in HW
- customization
-adaption
More:
- reduce TTM
- No NRE cost vs ASIC |
|
|
Term
Reconf. HW application characteristics |
|
Definition
Computational requirements:
- Data parallelism (few or no data dependencies)
- Data element size and aritmetic complexity
- Pipelining (can app. tolerate delay?)
- Simple Control (static vs dynamic, feed-only forward vs feed-back loops)
IO requirements:
- feed design with enough data
- memory elements to coordinate IO and computation (BRAM, LUTs, FF)
- Memory size vs memry ports (bandwidth) |
|
|
Term
What is FPGA the "emulation" technology mean? |
|
Definition
- FPGA have a disadvantage over ASICs
ATP = (10^2)x- (10^3)x
(Area, Time, Power)
- Still for some computations FPGAs app. get 10x performace/watt (energy efficency) |
|
|
Term
Name five ways that might make FPGA better (than ASICS?)
whay limit these five ways? |
|
Definition
- Exploit parallelism
(as much as the application spec. and FPGA resources allow)
- Pipelining (flip-flips are for free)
(how much latency can the application tolerate?)
- Streaming
(streaming, data-flow vs complex control)
- Flexibility (to reconf.)
(adaption to the app. req.)
- Customization
(complete control over arithmetic schemes, and number representation) |
|
|
Term
How and when can an FPGA be reconfigured? |
|
Definition
- Reconf. once (static, before execution)
- Runtime reconf. (dynamic, during runtime)
->global (entire device)
-> partial (part of the device)
|
|
|
Term
what can I do if my design wont fit in my FPGA? |
|
Definition
research if the design can be broken into parts and swap them in and out.
although reconf. overhead...
(can I stall to reconf?)
(can I afforde the energy cost?) |
|
|
Term
What is guarded evaluation? |
|
Definition
disconnect a part of your design with a logic guard.
experimets show sw activity reduced by 22% and power by 14%
The essential idea here is to dynamically detect on a per clock cycle basis which parts of a
logic circuit are being used and which are not. The ones that are not can then be shut off. This is done
by ensuring that no logic transitions propagate through this logic |
|
|
Term
how much energy reduction can pipelining achieve in a design? why? |
|
Definition
40-90%
Keeping clock frequency constant, and introducing more pipeline stages, will reduce spurious glitches and thus dynamic power |
|
|
Term
what is Power-aware clustering? |
|
Definition
put high-activity nets together in
the same cluster of logic cells |
|
|
Term
where is the largest portions of power consumed in an FPGA device? |
|
Definition
1. net power (reconf. wires)
2. i/o, memory, or gate power (depending on app)
(static power is small) |
|
|
Term
how can we reduce FPGAs' static power? |
|
Definition
- Flash switch technology
- Switch off things not used
--> multipliers dps-slices
--> Dual port BRAM
--> ripple carry chaing (70-90% unused)
--> clock generators
--> interconnects
-use ASIC technologies
--> low voltage ios
-->FF dont have an explicit load-enable |
|
|
Term
how can power consumption be reduced in the clock networks? |
|
Definition
- clock gating
- Placement technique to reduce interconnect resource usage on the clock network |
|
|