Date post: | 22-Dec-2015 |
Category: |
Documents |
View: | 217 times |
Download: | 2 times |
4
Architecture
Logic Block
Interconnection
Input/Output
Switch Box
Connect Block
• Logic Block Options– Transistor pairs– Basic small gates (such
as two-input NAND’s or exclusive-OR’ s)
– Multiplexers– Look-up tables (LUT’s)– Wide-fanin AND-OR
structures
• Granularity
5
Architecture
Logic Block
Interconnection
Input/Output
Switch Box
Connect Block
Altera’s Stratix II ALM
7
Architecture
• Routing Options– From nearest neighbor
mesh to much more complex, like that in multiplexers
– Wire segments of varying lengths
• Delay Considerations• Density Considerations
Logic Block
Interconnection
Input/Output
Switch Box
Connect Block
8
Architecture
Logic Block
Interconnection
Input/Output
Switch Box
Connect Block
• Provide programmable multiplexers signals
• Connect shorter local wires to longer-distance routing resources
9
Architecture
Logic Block
Interconnection
Input/Output
Switch Box
Connect Block
• Used to change the direction of a signal
10
Programmable Switch Technology
• SRAM
• Antifuse
• EPROMSRAM
CellSRAM
Cell
0 1
MUX0 or 1
Control Pass Gate
Multiplexer
11
Programmable Switch Technology
• SRAM
• Antifuse
• EPROM
Disadvantages
Advantages
Volatile
External Permanent Memory Required
Large Area Required
Reprogrammable, easily and quickly
Requires only standard integrated circuit process technology (as opposed to Antifuse)
13
Programmable Switch Technology
• SRAM
• Antifuse
• EPROM
Disadvantages
Advantages
Not reprogrammable; links made are permanent
Requires extra circuitry to deliverthe high programming voltage
Small size
Relatively low series resistance
Low parasitic capacitance
14
Programmable Switch Technology
• SRAM
• Antifuse
• EPROM
Control Gate
Floating Gate
Bit
Line
Word Line
Drain Source
Oxide Layer
Control Gate
Floating Gate
Bit
Line
Word Line
Drain Source
Oxide Layer
1
0
- -
- - - - - - -
15
Programmable Switch Technology
• SRAM
• Antifuse
• EPROM
Disadvantages
Advantages
High resistance of EPROM transistors
High static power consumption
UV light exposure needed to reprogram
No external memory required; retains memory even without power
Reprogrammable
26
Analog Blackfin
• Fast MAC• Parallelism• Pipelines• Close/fast
storage• Multiple
memories• High-bandwidth
buses• External
interface
27
Analog Blackfin
• Fast MAC• Parallelism• Pipelines• Close/fast
storage• Multiple
memories• High-bandwidth
buses• External
interface
28
Analog Blackfin
• Fast MAC• Parallelism• Pipelines• Close/fast
storage• Multiple
memories• High-bandwidth
buses• External
interface
29
Analog Blackfin
• Fast MAC• Parallelism• Pipelines• Close/fast
storage• Multiple
memories• High-bandwidth
buses• External
interface
30
Analog Blackfin
• Fast MAC• Parallelism• Pipelines• Close/fast
storage• Multiple
memories• High-bandwidth
buses• External
interface
31
Analog Blackfin
• Fast MAC• Parallelism• Pipelines• Close/fast
storage• Multiple
memories• High-bandwidth
buses• External
interface
32
Analog Blackfin
• Fast MAC• Parallelism• Pipelines• Close/fast
storage• Multiple
memories• High-bandwidth
buses• External
interface
33
Analog Blackfin
• Fast MAC• Parallelism• Pipelines• Close/fast
storage• Multiple
memories• High-bandwidth
buses• External
interface
42
ASIC vs. µP vs. Reconfigurable
• Application Specific Integrated Circuit– Designed to perform a specific computation– Circuit cannot be altered after fabrication
• Software Programmed Microprocessors– Modification with software– Slower than ASICs
• Reconfigurable Computing– FPGAs and DSPs– Easily modifiable– Larger Area
43
Comparison
• Virtex-4 FPGA• Xilinx• 500 MHz Processor• 18-Bit MACS• 48-Bit Accumulator• Up to 1392K Bytes of
On-Chip Memory• Brand-New
• Blackfin DSP• Analog Devices• 600 MHz Processor• Two 16-Bit MACS• 40-Bit Accumulator• 308K Bytes of On-
Chip Memory• Somewhat Older
44
Comparison Criteria
• Performance – MIPS, MMACS, MHz
• Price
• Development Tools
• Supply Voltage
• Implementation Time
• Flexibility
• Most Importantly: Comfort Level
50
How to Use and Program an FPGA
• Write HDL code
• Generate Netlist
• Place and Route
• Generate Binary File
• Power On FPGA
• Configure FPGA
• Verilog
• VHDL (Very High Speed Integrated Circuit Hardware Description Language)
51
How to Use and Program an FPGA
• Write HDL code
• Generate Netlist
• Place and Route
• Generate Binary File
• Power On FPGA
• Configure FPGA
• Lists components that are connected to each other
• Lists connections between components, power, and ground
52
How to Use and Program an FPGA
• Write HDL code
• Generate Netlist
• Place and Route
• Generate Binary File
• Power On FPGA
• Configure FPGA
• Often performed by the FPGA company's proprietary software
• Determines which logic blocks to use for each part of the program, to optimize
• User validates
53
How to Use and Program an FPGA
• Write HDL code
• Generate Netlist
• Place and Route
• Generate Binary File
• Power On FPGA
• Configure FPGA
• Often performed by the FPGA company's proprietary software
54
How to Use and Program an FPGA
• Write HDL code
• Generate Netlist
• Place and Route
• Generate Binary File
• Power On FPGA
• Configure FPGA
• FPGA is initially in configuration mode
55
How to Use and Program an FPGA
• Write HDL code
• Generate Netlist
• Place and Route
• Generate Binary File
• Power On FPGA
• Configure FPGA
• Cable from your PC to the FPGA• Use a microcontroller on your board• Use a "boot-PROM" on your board, connected to the FPGA
56
Using DSPs
• C/C++/Assembly
• Lots of development environments
• Documentation– Interfacing– Common operations– Porting
57
Using DSPs
• C++/Assembly
• Lots of development environments
• Documentation– Interfacing– Common operations– Porting
58
Using DSPs
• C++/Assembly
• Lots of development environments
• Documentation– Interfacing– Common operations– Porting