SlideShare a Scribd company logo
Introduction to
CMOS VLSI
Design
Lecture 14:
CAMs, ROMs, and PLAs
David Harris
Harvey Mudd College
Spring 2004
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 2
Outline
 Content-Addressable Memories
 Read-Only Memories
 Programmable Logic Arrays
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 3
CAMs
 Extension of ordinary memory (e.g. SRAM)
– Read and write memory as usual
– Also match to see which words contain a key
CAM
adr data/key
match
read
write
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 4
10T CAM Cell
 Add four match transistors to 6T SRAM
– 56 x 43 l unit cell
bit bit_b
word
match
cell
cell_b
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 5
CAM Cell Operation
 Read and write like ordinary SRAM
 For matching:
– Leave wordline low
– Precharge matchlines
– Place key on bitlines
– Matchlines evaluate
 Miss line
– Pseudo-nMOS NOR of match lines
– Goes high if no words match
row
decoder
weak
miss
match0
match1
match2
match3
clk
column circuitry
CAM cell
address
data
read/write
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 6
Read-Only Memories
 Read-Only Memories are nonvolatile
– Retain their contents when power is removed
 Mask-programmed ROMs use one transistor per bit
– Presence or absence determines 1 or 0
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 7
ROM Example
 4-word x 6-bit ROM
– Represented with dot diagram
– Dots indicate 1’s in ROM
Word 0: 010101
Word 1: 011001
Word 2: 100101
Word 3: 101010
ROM Array
2:4
DEC
A0
A1
Y0
Y1
Y2
Y3
Y4
Y5
weak
pseudo-nMOS
pullups
Looks like 6 4-input pseudo-nMOS NORs
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 8
ROM Array Layout
 Unit cell is 12 x 8 l (about 1/10 size of SRAM)
Unit
Cell
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 9
Row Decoders
 ROM row decoders must pitch-match with ROM
– Only a single track per word!
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 10
Complete ROM Layout
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 11
PROMs and EPROMs
 Programmable ROMs
– Build array with transistors at every site
– Burn out fuses to disable unwanted transistors
 Electrically Programmable ROMs
– Use floating gate to turn off unwanted transistors
– EPROM, EEPROM, Flash
n+
p
Gate
Source Drain
bulk Si
Thin Gate Oxide
(SiO2)
n+
Polysilicon
Floating Gate
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 12
Building Logic with ROMs
 Use ROM as lookup table containing truth table
– n inputs, k outputs requires __ words x __ bits
– Changing function is easy – reprogram ROM
 Finite State Machine
– n inputs, k outputs, s bits of state
– Build with ________ bit ROM and ____ bit reg
n
inputs
2
n
wordlines
ROM Array
k outputs
DEC
ROM
inputs outputs
state
n k
s
k
s
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 13
Building Logic with ROMs
 Use ROM as lookup table containing truth table
– n inputs, k outputs requires 2n words x k bits
– Changing function is easy – reprogram ROM
 Finite State Machine
– n inputs, k outputs, s bits of state
– Build with 2n+s x (k+s) bit ROM and (k+s) bit reg
n
inputs
2
n
wordlines
ROM Array
k outputs
DEC
ROM
inputs outputs
state
n k
s
k
s
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 14
Example: RoboAnt
Let’s build an Ant
Sensors: Antennae
(L,R) – 1 when in contact
Actuators: Legs
Forward step F
Ten degree turns TL, TR
Goal: make our ant smart enough to
get out of a maze
Strategy: keep right antenna on wall
(RoboAnt adapted from MIT 6.004 2002 OpenCourseWare by Ward and Terman)
L R
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 15
Lost in space
 Action: go forward until we hit something
– Initial state
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 16
Bonk!!!
 Action: turn left (rotate counterclockwise)
– Until we don’t touch anymore
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 17
A little to the right
 Action: step forward and turn right a little
– Looking for wall
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 18
Then a little to the right
 Action: step and turn left a little, until not touching
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 19
Whoops – a corner!
 Action: step and turn right until hitting next wall
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 20
Simplification
 Merge equivalent states where possible
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 21
State Transition Table
S1:0 L R S1:0’ TR TL F
00 0 0 00 0 0 1
00 1 X 01 0 0 1
00 0 1 01 0 0 1
01 1 X 01 0 1 0
01 0 1 01 0 1 0
01 0 0 10 0 1 0
10 X 0 10 1 0 1
10 X 1 11 1 0 1
11 1 X 01 0 1 1
11 0 0 10 0 1 1
11 0 1 11 0 1 1
Lost
RCCW
Wall1
Wall2
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 22
ROM Implementation
 16-word x 5 bit ROM
ROM
L, R
S1:0
TL, TR, F
S'1:0
S1
' S0
' TR'TL' F'
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
4:16
DEC
S1 S0 L R
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 23
ROM Implementation
 16-word x 5 bit ROM
ROM
L, R
S1:0
TL, TR, F
S'1:0
S1
' S0
' TR'TL' F'
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
4:16
DEC
S1 S0 L R
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 24
PLAs
 A Programmable Logic Array performs any function
in sum-of-products form.
 Literals: inputs & complements
 Products / Minterms: AND of literals
 Outputs: OR of Minterms
 Example: Full Adder
out
s abc abc abc abc
c ab bc ac
   
  
AND Plane OR Plane
abc
abc
abc
abc
ab
bc
ac
s
a b c out
c
Minterms
Inputs Outputs
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 25
NOR-NOR PLAs
 ANDs and ORs are not very efficient in CMOS
 Dynamic or Pseudo-nMOS NORs are very efficient
 Use DeMorgan’s Law to convert to all NORs
AND Plane OR Plane
abc
abc
abc
abc
ab
bc
ac
s
a b c
out
c
AND Plane OR Plane
abc
abc
abc
abc
ab
bc
ac
s
a b c
out
c
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 26
PLA Schematic & Layout
AND Plane OR Plane
abc
abc
abc
abc
ab
bc
ac
s
a b c
out
c
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 27
PLAs vs. ROMs
 The OR plane of the PLA is like the ROM array
 The AND plane of the PLA is like the ROM decoder
 PLAs are more flexible than ROMs
– No need to have 2n rows for n inputs
– Only generate the minterms that are needed
– Take advantage of logic simplification
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 28
Example: RoboAnt PLA
 Convert state transition table to logic equations
S1:0 L R S1:0’ TR TL F
00 0 0 00 0 0 1
00 1 X 01 0 0 1
00 0 1 01 0 0 1
01 1 X 01 0 1 0
01 0 1 01 0 1 0
01 0 0 10 0 1 0
10 X 0 10 1 0 1
10 X 1 11 1 0 1
11 1 X 01 0 1 1
11 0 0 10 0 1 1
11 0 1 11 0 1 1
1 0
0
1 0
TR S S
TL S
F S S


 
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 29
RoboAnt Dot Diagram
AND Plane OR Plane
1 0
S S
1
LS
0
LRS
R
1
LS
0
S
0
LS
1 '
S
1
S 0
S L
0 '
S TR TL F
R
1
S
0
S
1 0 1 0
1 0
1 0
0
1 0
1'
0'
S S S LS LRS
S R LS LS
TR S S
TL S
F S S
  
  


 
CMOS VLSI Design
14: CAMs, ROMs, and PLAs Slide 30
RoboAnt Dot Diagram
AND Plane OR Plane
1 0
S S
1
LS
0
LRS
R
1
LS
0
S
0
LS
1 '
S
1
S 0
S L
0 '
S TR TL F
R
1
S
0
S
1 0 1 0
1 0
1 0
0
1 0
1'
0'
S S S LS LRS
S R LS LS
TR S S
TL S
F S S
  
  


 

More Related Content

Similar to lect14.ppt

EEE 4157_Lecture_10_11_12_13.ppt
EEE 4157_Lecture_10_11_12_13.pptEEE 4157_Lecture_10_11_12_13.ppt
EEE 4157_Lecture_10_11_12_13.ppt
OmarFaruqe23
 
Lab 7 -RAM and ROM, Xilinx, Digelent BASYS experimentor board
Lab 7 -RAM and ROM, Xilinx, Digelent BASYS experimentor boardLab 7 -RAM and ROM, Xilinx, Digelent BASYS experimentor board
Lab 7 -RAM and ROM, Xilinx, Digelent BASYS experimentor board
Katrina Little
 
Lect 1 - cktlay.ppt
Lect 1 - cktlay.pptLect 1 - cktlay.ppt
Lect 1 - cktlay.ppt
AnimSarker
 
lect1-circuits and layout.ppt
lect1-circuits and layout.pptlect1-circuits and layout.ppt
lect1-circuits and layout.ppt
ssuserf7da1a
 
lec23Concl.ppt
lec23Concl.pptlec23Concl.ppt
lec23Concl.ppt
BhuvanaEshwari1
 
Microcontroller 8051
Microcontroller 8051Microcontroller 8051
Microcontroller 8051
Denish Vaniyawala
 
Lecture 10.ppt
Lecture 10.pptLecture 10.ppt
Lecture 10.ppt
TimePresents
 
W9_3: UoS Educational Processor: Assembler Memory Access
W9_3: UoS Educational Processor: Assembler Memory AccessW9_3: UoS Educational Processor: Assembler Memory Access
W9_3: UoS Educational Processor: Assembler Memory Access
Daniel Roggen
 
Multipliers in VLSI
Multipliers in VLSIMultipliers in VLSI
Multipliers in VLSI
Kiranmai Sony
 
Introduction to ARM
Introduction to ARMIntroduction to ARM
Introduction to ARM
Puja Pramudya
 
Microprocessor system - summarize
Microprocessor system - summarizeMicroprocessor system - summarize
Microprocessor system - summarize
Hisham Mat Hussin
 
Lecture on Adders in VLSI Design in ECE Engineering
Lecture on Adders in VLSI Design in ECE EngineeringLecture on Adders in VLSI Design in ECE Engineering
Lecture on Adders in VLSI Design in ECE Engineering
Sadhvika1
 
Solving ProportionsRead the following instructions in order to.docx
Solving ProportionsRead the following instructions in order to.docxSolving ProportionsRead the following instructions in order to.docx
Solving ProportionsRead the following instructions in order to.docx
rafbolet0
 
lec25-final.ppt
lec25-final.pptlec25-final.ppt
lec25-final.ppt
zahixdd
 
Introduction to SCSI over FCP for Linux on System z
Introduction to SCSI over FCP for Linux on System zIntroduction to SCSI over FCP for Linux on System z
Introduction to SCSI over FCP for Linux on System z
IBM India Smarter Computing
 
how to generate sms
how to generate smshow to generate sms
how to generate smssumant reddy
 
Final vlsi projectreport
Final vlsi projectreportFinal vlsi projectreport
Final vlsi projectreportphilipsinter
 
Memory And Storages
Memory And StoragesMemory And Storages
Memory And Storages
Arsalan Qureshi
 
Lecture 9.ppt
Lecture 9.pptLecture 9.ppt
Lecture 9.ppt
TimePresents
 
The PDP-10 - and me
The PDP-10 - and meThe PDP-10 - and me
The PDP-10 - and me
Bjørn Hell Larsen
 

Similar to lect14.ppt (20)

EEE 4157_Lecture_10_11_12_13.ppt
EEE 4157_Lecture_10_11_12_13.pptEEE 4157_Lecture_10_11_12_13.ppt
EEE 4157_Lecture_10_11_12_13.ppt
 
Lab 7 -RAM and ROM, Xilinx, Digelent BASYS experimentor board
Lab 7 -RAM and ROM, Xilinx, Digelent BASYS experimentor boardLab 7 -RAM and ROM, Xilinx, Digelent BASYS experimentor board
Lab 7 -RAM and ROM, Xilinx, Digelent BASYS experimentor board
 
Lect 1 - cktlay.ppt
Lect 1 - cktlay.pptLect 1 - cktlay.ppt
Lect 1 - cktlay.ppt
 
lect1-circuits and layout.ppt
lect1-circuits and layout.pptlect1-circuits and layout.ppt
lect1-circuits and layout.ppt
 
lec23Concl.ppt
lec23Concl.pptlec23Concl.ppt
lec23Concl.ppt
 
Microcontroller 8051
Microcontroller 8051Microcontroller 8051
Microcontroller 8051
 
Lecture 10.ppt
Lecture 10.pptLecture 10.ppt
Lecture 10.ppt
 
W9_3: UoS Educational Processor: Assembler Memory Access
W9_3: UoS Educational Processor: Assembler Memory AccessW9_3: UoS Educational Processor: Assembler Memory Access
W9_3: UoS Educational Processor: Assembler Memory Access
 
Multipliers in VLSI
Multipliers in VLSIMultipliers in VLSI
Multipliers in VLSI
 
Introduction to ARM
Introduction to ARMIntroduction to ARM
Introduction to ARM
 
Microprocessor system - summarize
Microprocessor system - summarizeMicroprocessor system - summarize
Microprocessor system - summarize
 
Lecture on Adders in VLSI Design in ECE Engineering
Lecture on Adders in VLSI Design in ECE EngineeringLecture on Adders in VLSI Design in ECE Engineering
Lecture on Adders in VLSI Design in ECE Engineering
 
Solving ProportionsRead the following instructions in order to.docx
Solving ProportionsRead the following instructions in order to.docxSolving ProportionsRead the following instructions in order to.docx
Solving ProportionsRead the following instructions in order to.docx
 
lec25-final.ppt
lec25-final.pptlec25-final.ppt
lec25-final.ppt
 
Introduction to SCSI over FCP for Linux on System z
Introduction to SCSI over FCP for Linux on System zIntroduction to SCSI over FCP for Linux on System z
Introduction to SCSI over FCP for Linux on System z
 
how to generate sms
how to generate smshow to generate sms
how to generate sms
 
Final vlsi projectreport
Final vlsi projectreportFinal vlsi projectreport
Final vlsi projectreport
 
Memory And Storages
Memory And StoragesMemory And Storages
Memory And Storages
 
Lecture 9.ppt
Lecture 9.pptLecture 9.ppt
Lecture 9.ppt
 
The PDP-10 - and me
The PDP-10 - and meThe PDP-10 - and me
The PDP-10 - and me
 

More from SouravRoyElectronics

lect501.ppt
lect501.pptlect501.ppt
CMOS Combinational_Logic_Circuits.pdf
CMOS Combinational_Logic_Circuits.pdfCMOS Combinational_Logic_Circuits.pdf
CMOS Combinational_Logic_Circuits.pdf
SouravRoyElectronics
 
VIVADO PPT.pptx
VIVADO PPT.pptxVIVADO PPT.pptx
VIVADO PPT.pptx
SouravRoyElectronics
 
lecture25_fpga-conclude.ppt
lecture25_fpga-conclude.pptlecture25_fpga-conclude.ppt
lecture25_fpga-conclude.ppt
SouravRoyElectronics
 
MOSFET.ppt
MOSFET.pptMOSFET.ppt
Lec9
Lec9Lec9

More from SouravRoyElectronics (7)

Unit-4_ESE.pdf
Unit-4_ESE.pdfUnit-4_ESE.pdf
Unit-4_ESE.pdf
 
lect501.ppt
lect501.pptlect501.ppt
lect501.ppt
 
CMOS Combinational_Logic_Circuits.pdf
CMOS Combinational_Logic_Circuits.pdfCMOS Combinational_Logic_Circuits.pdf
CMOS Combinational_Logic_Circuits.pdf
 
VIVADO PPT.pptx
VIVADO PPT.pptxVIVADO PPT.pptx
VIVADO PPT.pptx
 
lecture25_fpga-conclude.ppt
lecture25_fpga-conclude.pptlecture25_fpga-conclude.ppt
lecture25_fpga-conclude.ppt
 
MOSFET.ppt
MOSFET.pptMOSFET.ppt
MOSFET.ppt
 
Lec9
Lec9Lec9
Lec9
 

Recently uploaded

A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 
Normal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of LabourNormal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of Labour
Wasim Ak
 
Marketing internship report file for MBA
Marketing internship report file for MBAMarketing internship report file for MBA
Marketing internship report file for MBA
gb193092
 
Embracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic ImperativeEmbracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic Imperative
Peter Windle
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
Vikramjit Singh
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
Celine George
 
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Thiyagu K
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
chanes7
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
MysoreMuleSoftMeetup
 
Group Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana BuscigliopptxGroup Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana Buscigliopptx
ArianaBusciglio
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
DeeptiGupta154
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
Nguyen Thanh Tu Collection
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
Jisc
 
Multithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race conditionMultithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race condition
Mohammed Sikander
 
Chapter -12, Antibiotics (One Page Notes).pdf
Chapter -12, Antibiotics (One Page Notes).pdfChapter -12, Antibiotics (One Page Notes).pdf
Chapter -12, Antibiotics (One Page Notes).pdf
Kartik Tiwari
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
Ashokrao Mane college of Pharmacy Peth-Vadgaon
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
deeptiverma2406
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 
special B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdfspecial B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdf
Special education needs
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
heathfieldcps1
 

Recently uploaded (20)

A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 
Normal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of LabourNormal Labour/ Stages of Labour/ Mechanism of Labour
Normal Labour/ Stages of Labour/ Mechanism of Labour
 
Marketing internship report file for MBA
Marketing internship report file for MBAMarketing internship report file for MBA
Marketing internship report file for MBA
 
Embracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic ImperativeEmbracing GenAI - A Strategic Imperative
Embracing GenAI - A Strategic Imperative
 
Digital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and ResearchDigital Tools and AI for Teaching Learning and Research
Digital Tools and AI for Teaching Learning and Research
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
 
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
 
Group Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana BuscigliopptxGroup Presentation 2 Economics.Ariana Buscigliopptx
Group Presentation 2 Economics.Ariana Buscigliopptx
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
 
Multithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race conditionMultithreading_in_C++ - std::thread, race condition
Multithreading_in_C++ - std::thread, race condition
 
Chapter -12, Antibiotics (One Page Notes).pdf
Chapter -12, Antibiotics (One Page Notes).pdfChapter -12, Antibiotics (One Page Notes).pdf
Chapter -12, Antibiotics (One Page Notes).pdf
 
Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.Biological Screening of Herbal Drugs in detailed.
Biological Screening of Herbal Drugs in detailed.
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
special B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdfspecial B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdf
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
 

lect14.ppt

  • 1. Introduction to CMOS VLSI Design Lecture 14: CAMs, ROMs, and PLAs David Harris Harvey Mudd College Spring 2004
  • 2. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 2 Outline  Content-Addressable Memories  Read-Only Memories  Programmable Logic Arrays
  • 3. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 3 CAMs  Extension of ordinary memory (e.g. SRAM) – Read and write memory as usual – Also match to see which words contain a key CAM adr data/key match read write
  • 4. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 4 10T CAM Cell  Add four match transistors to 6T SRAM – 56 x 43 l unit cell bit bit_b word match cell cell_b
  • 5. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 5 CAM Cell Operation  Read and write like ordinary SRAM  For matching: – Leave wordline low – Precharge matchlines – Place key on bitlines – Matchlines evaluate  Miss line – Pseudo-nMOS NOR of match lines – Goes high if no words match row decoder weak miss match0 match1 match2 match3 clk column circuitry CAM cell address data read/write
  • 6. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 6 Read-Only Memories  Read-Only Memories are nonvolatile – Retain their contents when power is removed  Mask-programmed ROMs use one transistor per bit – Presence or absence determines 1 or 0
  • 7. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 7 ROM Example  4-word x 6-bit ROM – Represented with dot diagram – Dots indicate 1’s in ROM Word 0: 010101 Word 1: 011001 Word 2: 100101 Word 3: 101010 ROM Array 2:4 DEC A0 A1 Y0 Y1 Y2 Y3 Y4 Y5 weak pseudo-nMOS pullups Looks like 6 4-input pseudo-nMOS NORs
  • 8. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 8 ROM Array Layout  Unit cell is 12 x 8 l (about 1/10 size of SRAM) Unit Cell
  • 9. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 9 Row Decoders  ROM row decoders must pitch-match with ROM – Only a single track per word!
  • 10. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 10 Complete ROM Layout
  • 11. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 11 PROMs and EPROMs  Programmable ROMs – Build array with transistors at every site – Burn out fuses to disable unwanted transistors  Electrically Programmable ROMs – Use floating gate to turn off unwanted transistors – EPROM, EEPROM, Flash n+ p Gate Source Drain bulk Si Thin Gate Oxide (SiO2) n+ Polysilicon Floating Gate
  • 12. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 12 Building Logic with ROMs  Use ROM as lookup table containing truth table – n inputs, k outputs requires __ words x __ bits – Changing function is easy – reprogram ROM  Finite State Machine – n inputs, k outputs, s bits of state – Build with ________ bit ROM and ____ bit reg n inputs 2 n wordlines ROM Array k outputs DEC ROM inputs outputs state n k s k s
  • 13. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 13 Building Logic with ROMs  Use ROM as lookup table containing truth table – n inputs, k outputs requires 2n words x k bits – Changing function is easy – reprogram ROM  Finite State Machine – n inputs, k outputs, s bits of state – Build with 2n+s x (k+s) bit ROM and (k+s) bit reg n inputs 2 n wordlines ROM Array k outputs DEC ROM inputs outputs state n k s k s
  • 14. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 14 Example: RoboAnt Let’s build an Ant Sensors: Antennae (L,R) – 1 when in contact Actuators: Legs Forward step F Ten degree turns TL, TR Goal: make our ant smart enough to get out of a maze Strategy: keep right antenna on wall (RoboAnt adapted from MIT 6.004 2002 OpenCourseWare by Ward and Terman) L R
  • 15. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 15 Lost in space  Action: go forward until we hit something – Initial state
  • 16. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 16 Bonk!!!  Action: turn left (rotate counterclockwise) – Until we don’t touch anymore
  • 17. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 17 A little to the right  Action: step forward and turn right a little – Looking for wall
  • 18. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 18 Then a little to the right  Action: step and turn left a little, until not touching
  • 19. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 19 Whoops – a corner!  Action: step and turn right until hitting next wall
  • 20. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 20 Simplification  Merge equivalent states where possible
  • 21. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 21 State Transition Table S1:0 L R S1:0’ TR TL F 00 0 0 00 0 0 1 00 1 X 01 0 0 1 00 0 1 01 0 0 1 01 1 X 01 0 1 0 01 0 1 01 0 1 0 01 0 0 10 0 1 0 10 X 0 10 1 0 1 10 X 1 11 1 0 1 11 1 X 01 0 1 1 11 0 0 10 0 1 1 11 0 1 11 0 1 1 Lost RCCW Wall1 Wall2
  • 22. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 22 ROM Implementation  16-word x 5 bit ROM ROM L, R S1:0 TL, TR, F S'1:0 S1 ' S0 ' TR'TL' F' 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 4:16 DEC S1 S0 L R
  • 23. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 23 ROM Implementation  16-word x 5 bit ROM ROM L, R S1:0 TL, TR, F S'1:0 S1 ' S0 ' TR'TL' F' 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 4:16 DEC S1 S0 L R
  • 24. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 24 PLAs  A Programmable Logic Array performs any function in sum-of-products form.  Literals: inputs & complements  Products / Minterms: AND of literals  Outputs: OR of Minterms  Example: Full Adder out s abc abc abc abc c ab bc ac        AND Plane OR Plane abc abc abc abc ab bc ac s a b c out c Minterms Inputs Outputs
  • 25. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 25 NOR-NOR PLAs  ANDs and ORs are not very efficient in CMOS  Dynamic or Pseudo-nMOS NORs are very efficient  Use DeMorgan’s Law to convert to all NORs AND Plane OR Plane abc abc abc abc ab bc ac s a b c out c AND Plane OR Plane abc abc abc abc ab bc ac s a b c out c
  • 26. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 26 PLA Schematic & Layout AND Plane OR Plane abc abc abc abc ab bc ac s a b c out c
  • 27. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 27 PLAs vs. ROMs  The OR plane of the PLA is like the ROM array  The AND plane of the PLA is like the ROM decoder  PLAs are more flexible than ROMs – No need to have 2n rows for n inputs – Only generate the minterms that are needed – Take advantage of logic simplification
  • 28. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 28 Example: RoboAnt PLA  Convert state transition table to logic equations S1:0 L R S1:0’ TR TL F 00 0 0 00 0 0 1 00 1 X 01 0 0 1 00 0 1 01 0 0 1 01 1 X 01 0 1 0 01 0 1 01 0 1 0 01 0 0 10 0 1 0 10 X 0 10 1 0 1 10 X 1 11 1 0 1 11 1 X 01 0 1 1 11 0 0 10 0 1 1 11 0 1 11 0 1 1 1 0 0 1 0 TR S S TL S F S S    
  • 29. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 29 RoboAnt Dot Diagram AND Plane OR Plane 1 0 S S 1 LS 0 LRS R 1 LS 0 S 0 LS 1 ' S 1 S 0 S L 0 ' S TR TL F R 1 S 0 S 1 0 1 0 1 0 1 0 0 1 0 1' 0' S S S LS LRS S R LS LS TR S S TL S F S S          
  • 30. CMOS VLSI Design 14: CAMs, ROMs, and PLAs Slide 30 RoboAnt Dot Diagram AND Plane OR Plane 1 0 S S 1 LS 0 LRS R 1 LS 0 S 0 LS 1 ' S 1 S 0 S L 0 ' S TR TL F R 1 S 0 S 1 0 1 0 1 0 1 0 0 1 0 1' 0' S S S LS LRS S R LS LS TR S S TL S F S S          