Chapter 1: Introduction to FPGA (PLDs and FPGAs) Flashcards

1
Q

What is FPGA stands for?

A

Field Programmable Gate Array

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is FPGA?

A

Programmable semiconductor devices that are based around a matrix of configurable logic blocks (CLBs) connected via programmable interconnects.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What does early programmable logic device (PLD) offers?

A

Early PLD offers programmable arrays to implement 2-level logic in sum-of-product (SOP) form.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Hierarchy of PLD

A

Refer to pic in Final FPGA folder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

FPGA HISTORY - PLDs (PROMs) (5)

A
  1. Pre-wired AND array & programmable OR array.
  2. PROMs were originally intended for use as a computer memories to store programs and constant data.
  3. However, engineers used them to implement lookup tables and state machines.
  4. PROMs can be used to implement any block of combinational logic.
  5. Important limitation of PROM: the AND plane produces all products whether they are used or not, which limits the number of inputs.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the important limitation of PROM?

A

The AND plane produces all products whether they are used or not, which limits the number of inputs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

How many inputs does AND and OR have in PROM?

A

AND: 3 inputs.
OR: 8 inputs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

PLD (PROM) diagram:

A

Refer to pic in Final FPGA folder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What can programmable links in the OR array can be implemented as?

A

Programmable links in the array can be implemented as fusible links or as EPROM/EEPORM transistors.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

How many types of PLDs are there? State the types.

A
[Not so sure] 
<>
Four:            or          Two:
1. PROM                     1. SPLDs
2. PLA                        2. CPLDs
3. PAL
4. CPLD
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

FPGA HISTORY - PLDs (PLAs) (5)

A
  1. Programmable Logic Arrays (PLAs) allowed both the AND and OR plane to be programmed.
  2. Number of AND functions in the AND array is independent of the number of inputs to the device.
  3. Product terms can be shared among output functions.
  4. The programmable links slow signals, thus PLAs are slower then PROMs.
  5. PLAs never achieved any significant level of market presence.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

PLD (PLAs) diagram:

A

Refer to pic in Final FPGA folder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

FPGA HISTORY - PLDs (PALs) (4)

A
  1. Programmable Array Logic (PALs) were introduced in late 70’s to address speed problem of PLAs.
  2. The AND array is programmable and the OR array is predefined, therefore they are faster than PLAs.
  3. However, PALs only allow a restricted number of product terms to be OR’ed, at least on chip.
  4. Real devices have many more inputs and outputs plus a variety of options available including:
    (a) The ability to invert the outputs
    (b) The ability to tristate the outputs
    (c) The ability to latch the outputs
    (d) The ability to configure certain pins as input or output
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

PLD (PALs) diagram:

A

Refer to pic in Final FPGA folder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

FPGA HISTORY - CPLD (6)

A
  1. In ‘84, Altera introduced a CPLD based on a combination of CMOS and EPROM technologies.
  2. CMOS allowed low power and high density, while EPROM enabled these devices to be used for development and prototyping.
  3. Altera’s real contribution was to use an interconnection array with less than 100% connectivity.
  4. This will result in increasing the complexity of software but keep the device scalable in terms of speed, power and cost.
  5. Interconnection matrix usually has more wires than the individual SPLD blocks
    - –> a MUX is used to connect them.
  6. The programmable switches may be EPROM, EEPROM, FLASH or SRAM based.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is Altera’s real contribution?

A

To use an interconnection array with less than 100% connectivity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

CPLD diagram:

A

Refer to pic in Final FPGA folder.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What does a generic CPLD structure typically consist of?

A

A generic CPLD structure typically consists of several SPLD blocks sharing a common programmable interconnection matrix.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

SPLDs and interconnect of CPLD:

A

Both SPLD and interconnect can be programmed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

FPGA HISTORY - Early FPGAs (6)

A
  1. In the early ’80s, a gap emerged in the digital IC continuum.
  2. At one end, SPLDs and CPLDs provided high (i) configurability, (ii) fast design, and (iii) modification times,
    but supported only small to moderate functions.
  3. At the other end, ASICs supported large complex designs but were immutable once fabricated, expensive, and time-consuming to design.
  4. The first FPGAs were based on CMOS and used SRAM cells for configuration.
  5. The early chips used an array of programmable logic blocks (PLBs), which comprised:
    (i) a 3-input lookup table (LUT),
    (ii) a register, and
    (iii) a MUX.
  6. Each PLB can be programmed individually to perform a unique function.
21
Q

Gap between PLDs and Arrays.

A

Refer to pic in Final FPGA folder.

22
Q

Who developed FPGA?

A

Xilinx

23
Q

When was FPGA built?

A

in ‘84

24
Q

Why do Xilinx created FPGA?

A

to fill the gap between PLDs and ASICs.

25
Q

The gap between PLDs and ASICs:

A

Refer to pic in Final FPGA folder.

26
Q

What’s the function of an LUT?

A

Can implement any 3-input logic function.

27
Q

What is the function of a MUX?

A

Allows selection of the LUT output or an external input.

28
Q

Registers (FF) can be triggered by?

A

Can be triggered by a positive or negative-going clock

29
Q

PLB diagram:

A

Refer to pic in Final FPGA folder.

30
Q

Early FPGA architecture:

A

Refer to pic in Final FPGA folder.

31
Q

How many types of FPGA are there? State the types.

A

Three:

  1. Anti-fused-based.
  2. EPROM-based.
  3. SRAM-based.
32
Q

FPGA Technologies - Anti-fused-based (5)

A
  1. Anti-fused-based FPGA are programmed off-line using a special chip programmer.
  2. Advantages:
    (a) Configuration is retained during power cycle (non-volatile).
    (b) They don’t require an external memory to store their configuration data, which saves on board cost and real estate.
  3. Disadvantages:
    (a) One-time-programming (OTP) –> Not much use in development and prototyping environments.
  4. Their interconnection structure is “rad hard”, or relatively immune to the effects of radiation the configuration data is buried deep inside them.
  5. Unfortunately, the technology used to fabricate anti-fuse FPGAs is one or more generations behind the technology used for SRAM versions.
33
Q

FPGA Technologies -

E-PROM-based (8)

A
  1. Configuration cells are connected together in a long shift-register-style chain (scan chain).
  2. Programming done off line, some allow in-system programming (ISP).
  3. Use charged floating gates, programmed by a high voltage.
  4. Reprogrammable and non-volatile.
  5. Programming time is about 3 times longer than SRAM version.
  6. Have high static power because of the internal pull-up resistors.
  7. For security, some use a multibit key (50 to several hundred bits)
  8. Disadvantage:
    (a) The devices require about 5 additional
    process steps beyond the standard CMOS
    process.
    (b) Similar to anti-fuse, this cause a lag of these devices, technology wise.
34
Q

FPGA Technologies -

SRAM-based (5)

A
  1. Mainly uses CMOS transmission gates to establish interconnect.
  2. Status of the gates is determined by contents of SRAM configuration memory.
  3. The majority use SRAM based configuration cells, which allows fast reconfiguration:
    (a) Allows new design ideas to quickly
    implemented and tested.
    (b) Allows evolving standards and protocols to be accommodated.
    (c) Allows the FPGA to carry out multiple functions such as self-tested or board/system test at power-up and something else later.
  4. Another disadvantage - SRAM technology is very heavily invested in, and therefore, FPGA companies can leverage this
    - The same process used to fabricate the logic gates on the FPGA is used to fabricate SRAM –> no special processing steps are needed.
  5. Disadvantage:
    (a) In terms of volatility, which is overcome with a special external memory device or microprocessor (costly either way).
    (b) Can be difficult to protect your intellectual property –> the configuration file maybe somewhere on disk, in memory, etc.
    –> SOLUTION: use bitstream encryption.
35
Q

Comparison between types of FPGAs:

A

Refer to pic in Final FPGA folder.

36
Q

Current FPGA Structure:

A

Refer to pic in Final FPGA folder.

37
Q

FPGA Structure - Common Features
<> :
(3)

A
  1. Basic logic unit in an FPGA.
  2. Exact numbers and features vary from device to device, but every CLB consists of a configurable switch matrix with 4 or 5 inputs, some selection circuitry (MUX, etc.), and flip-flops.
  3. The switch matrix is highly flexible and can be configured to handle combinatorial logic, shift registers, or RAM.
38
Q

Inner Structure of Configurable Logic Block (CLB):

A

Refer to pic in Final FPGA folder.

39
Q

FPGA Structure - Common Features
<> :
(3)

A
  1. Provides the ideal interface bridge in the system.
  2. Grouped in banks with each bank independently able to support different I/O standards.
  3. FPGA nowadays have dozen I/O banks, thus allowing flexibility in I/O support.
40
Q

Inner Structure of SelectIO (IOB):

A

Refer to pic in Final FPGA folder.

41
Q

FPGA Structure - Common Features
Interconnect:
(3)

A
  1. Flexible interconnect routing routes the signals between CLBs and to and from I/Os.
  2. Various types of routing;
    (a) from that designed
    to interconnect
    between CLBs to
    fast horizontal and
    vertical long lines
    spanning the device
    to global low-skew
    routing for Clocking
    and other global
    signals.
  3. Design software makes the interconnect routing task hidden
    to the user unless specified otherwise, thus significantly
    reducing design complexity.
42
Q

FPGA Structure - Common Features
Memory:
(2)

A
  1. Embedded Block RAM memory is available inmost FPGAs.

2. Allows for on-chip memory for your design.

43
Q

FPGA Structure - Common Features
Digital Clock Management:
(2)

A
  1. Provided by most FPGAs in the industry.
    2The most advanced FPGAs from Xilinx offer both digital clock
    management and phase-looped locking that provide precision
    clock synthesis combined with jitter reduction and filtering.
44
Q

FPGA STRUCTURE – Altera Stratix II

A

Refer to pic in Final FPGA folder.

45
Q

FPGA vs ASIC - Design Advantage

A

Refer to pic in Final FPGA folder.

46
Q

FPGA vs ASICs Design Flow

A

Refer to pic in Final FPGA folder.

47
Q

Rapid prototyping with Verilog and FPGA (Definition)

A

Create a working prototypes as quickly as possible using FPGA with Verilog as the design entry.

48
Q

Rapid prototyping with Verilog and FPGA (Advantages)

A
  1. It bypass the structural detail that is forced by schematic-based
    entry method.
  2. Allows usage of single clock –> timing-driven routing tools works more efficient.
  3. FPGA register-rich –> recommended to employ one-hot encoding in state machines –> produce simpler NS & output logic.
49
Q

Rapid prototyping with Verilog and FPGA

A

Refer to pic in Final FPGA folder