dsd
TRANSCRIPT
![Page 1: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/1.jpg)
Digital System Implementation Options
Dr. D. V. Kamath
Professor, Department of E&C Engg.,
Manipal Institute of Technology, Manipal
1
![Page 2: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/2.jpg)
2
ROM
All types of ROMs are non-volatile i.e., Data is retained
when power is removed
Generally not in-system writeable
![Page 3: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/3.jpg)
3
Types of ROMs
ROM : Read Only Memory
PROM : Programmable ROM
EPROM : Erasable Programmable ROM
EEPROM : Electrically Erasable Programmable ROM
EAROM : Electrically Alterable ROM
![Page 4: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/4.jpg)
4
ROM and PROM
ROMs and PROMs
Not erasable
Used for storing high volume data
ROM
Mask programmed by the manufacturer
PROM
Programmed by the user
![Page 5: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/5.jpg)
5
ROM memory structure
ROM is used to store the truth table of a combinational circuit.
Each row of a truth table corresponds to a single address in the memory
Memory size refers to number of and width of memory words.
e.g., 1024 eight-bit words (1024x8 bits) i.e.,
10 address lines 𝐴0 −𝐴9 and 8 data lines 𝐷7 −𝐷0
Can implement 10 input 8 output function
![Page 6: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/6.jpg)
6
ROM memory structure
The memory structure includes array of memory cells and address decoder The memory structure includes array of memory cells and address decoder
![Page 7: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/7.jpg)
7
Combinational circuit implementation using ROMs
![Page 8: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/8.jpg)
8
The sequential circuits can be implemented using ROM by
storing the state table
The present state and present input are applied on address
lines.
The data outputs consist of next state and present output
Both Mealy and Moore machines can be realized. (The output
of Moore machine lags by one clock period)
Sequential circuit implementation using ROMs
![Page 9: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/9.jpg)
9
Digital circuit implementation choices
Custom
Standard Cells Macro Cells
Cell-based
Pre-diffused
(Gate Arrays)
Pre-wired
(FPGAs)
Array-based
Semicustom
Digital Circuit Implementation Approaches
![Page 10: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/10.jpg)
10
PLD as a black box
Input Variables . . .
.
.
.
Logic Gates And Switches
Output Values (function values)
Programmable Logic Device (PLD) is a chip that is manufactured with a programmable
configuration, enabling it to serve in many arbitrary applications
![Page 11: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/11.jpg)
11
PLD structure
All different types of PLDs have an AND-OR structure
![Page 12: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/12.jpg)
12
Types of PLDs
Depending on the type of AND-OR planes, PLDs are classified as
follows:
Programmable read-only memory (PROM)
Programmable logic array (PLA)
Programmable array logic (PAL)
PLD AND Plane OR Plane
PROM Fixed Programmable
PLA Programmable Programmable
PAL Programmable Fixed
![Page 13: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/13.jpg)
13
PLD notation
Notation for Programmable AND gate
![Page 14: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/14.jpg)
14
PLD notation
Notation for Programmable OR gate
![Page 15: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/15.jpg)
15
PLD notation
Special notation for Programmable AND/ OR gate with no fuses blown
![Page 16: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/16.jpg)
16
PLD notation
![Page 17: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/17.jpg)
17
PROM structure
![Page 18: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/18.jpg)
18
Generic PLA structure
𝑿𝒏
.
.
.
Input (buffers & inverters)
.
.
.
.
.
.
AND plane
…
OR plane
𝒁𝒎
Programmable Logic Array (PLA) structures provide a logical and compact method of
implementation of multiple SOP(Sum of Products) or POS(Product of Sums) expressions
Suited for implementation of two-level combinational logic
To implement the sequential logic, additional memory element i.e., Flip-Flops are
needed
![Page 19: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/19.jpg)
19
PLA
Typical AND-OR floor plan used in PLA implementation
![Page 20: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/20.jpg)
20
PLA structures
NMOS PLA is usually implemented using NOR-NOR plane
![Page 21: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/21.jpg)
21
PLA
PLA implementation using programmable AND and programmable OR plane
![Page 22: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/22.jpg)
22
PLA
PLA using NAND-NAND plane
![Page 23: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/23.jpg)
23
Programmable Array Logic(PAL)
PAL A programmable AND array and a fixed OR array Merits: Easier to program Demerits: Not as flexible as PLA
![Page 24: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/24.jpg)
24
Programmable Array Logic(PAL)
Typical PAL architecture with fixed sequential circuit in the form of D-type flip-flop macro cell
![Page 25: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/25.jpg)
25
PAL
Typical PAL with 4 inputs , 4 outputs, and 3-wide AND-OR structure PAL consists of 4 sections of 3-wide AND-OR array
![Page 26: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/26.jpg)
26
PAL Implement the following functions using PAL 𝑊 𝐴, 𝐵, 𝐶, 𝐷 = ∑ (2, 12, 13) 𝑋 𝐴, 𝐵, 𝐶, 𝐷 = ∑(7, 8, 9, 10, 11, 12, 13, 14, 15)
𝑌 𝐴, 𝐵, 𝐶, 𝐷 = ∑(0,2, 3,4, 5,6,7,8,10,11,15) 𝑍 𝐴, 𝐵, 𝐶, 𝐷 = ∑(1,2,8,12,13)
![Page 27: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/27.jpg)
27
PAL
![Page 28: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/28.jpg)
28
TYPES OF ASICS
Full-Custom ASICs
Standard-Cell–Based ASICs
Gate-Array–Based ASICs
Channeled Gate Array
Channelless Gate Array
Structured Gate Array
Programmable Logic Devices/ Complex PLDs(CPLDs)
Field-Programmable Gate Arrays
![Page 29: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/29.jpg)
29
ASIC
ASIC - Application Specific Integrated Circuit In Integrated Circuit (IC) designed to perform a specific function for a specific application As opposed to a standard, general purpose off-the-shelf part such as a commercial microprocessor IC
Levels of integration: SSI - Small scale integration MSI - Medium scale integration LSI - Large scale integration VLSI - Very large scale integration USLI - Ultra large scale integration
Implementation technology TTL ECL MOS - NMOS, CMOS
![Page 30: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/30.jpg)
30
Full-Custom ASIC
All mask layers are customized in a full-custom ASIC
Generally, the designer lays out all cells by hand
Some automatic placement and routing may be done
Critical (timing) paths are usually laid out completely by hand
Full-custom design offers the highest performance and smallest
die size for a given design
The disadvantages of full-custom design include increased
design time, complexity, design expense, and highest risk
Microprocessors were exclusively full-custom, but designers are
increasingly turning to semicustom ASIC techniques in this area
as well
Other application examples of full-custom ICs or ASICs are
requirements in automobile, analog/digital communications,
military applications.
![Page 31: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/31.jpg)
31
Standard-Cell-Based ASICs
Cell-Based ASICs(CBICs)
![Page 32: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/32.jpg)
32
Standard-Cell-Based ASICs
A cell-based ASIC ( CBIC-“sea-bick”) Standard cells Possibly megacells , megafunctions , full-custom blocks , system-level
macros( SLMs ), fixed blocks , cores , or Functional Standard Blocks ( FSBs )
All mask layers are customized - transistors and interconnect Automated buffer sizing, placement and routing
Custom blocks can be embedded
![Page 33: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/33.jpg)
33
Standard Cell Layout
![Page 34: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/34.jpg)
34
Gate-Array-Based ASICs
In a gate-array-based ASIC, the transistors are predefined on the silicon wafer
The predefined pattern of transistors is called the base array The smallest element that is replicated to make the base array is
called the base or primitive cell
![Page 35: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/35.jpg)
35
Masked Gate Array (MGA) ASICs
Masked Gate Array (MGA)/Mask Programmable Gate Array (MPGA)
The top level interconnect between the transistors is defined by the designer in custom masks
Design is performed by connecting predesigned and characterized logic cells from a library (macros)
After validation, automatic placement and routing are typically used to convert the macro-based design into a layout on the ASIC using primitive cells
Types of MGAs:
Channeled Gate Array
Channelless Gate Array
Structured Gate Array
![Page 36: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/36.jpg)
36
Channeled Gate Array
Channeled Gate Array
Only the interconnect is customized
The interconnect uses predefined spaces between rows of
base cells
Wafers containing arrays of cells
Interconnections
Actual Design
![Page 37: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/37.jpg)
37
Channelless Gate Array
Sea-Of-Gates (SOG) array die
Channelless Gate Array
There are no predefined areas set aside for routing - routing is
over the top of the gate-array devices
Achievable logic density is higher than for channeled gate arrays
![Page 38: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/38.jpg)
38
Structured Gate Array
Structured Gate Array
Only the interconnect is customized
Custom blocks can be embedded
• These can be complete blocks such as a processor or memory array, or
• an array of different base cells better suited to implementing a specific
function
![Page 39: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/39.jpg)
39
CPLD structure
CPLD die
Complex Programmable Logic Devices (CPLDs) No customized mask layers or logic cells Fast design turnaround A single large block of programmable interconnect
Erasable PLD (EPLD) Mask-programmed PLD
A matrix of logic macro cells that usually consist of Programmable Array Logic(PAL) followed by a flip-flop or latch
![Page 40: DSD](https://reader033.vdocument.in/reader033/viewer/2022042715/558e221e1a28aba8398b474e/html5/thumbnails/40.jpg)
40
FPGA structure
FPGA die
Field Programmable Gate Array
None of the mask layers are customized A method for programming the basic logic cells and the interconnect The core is a regular array of programmable basic logic cells that can implement
combinational as well as sequential logic (flip-flops) A matrix of programmable interconnect surrounds the basic logic cells Programmable I/O cells surround the core