Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL:...
Transcript of Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL:...
![Page 1: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/1.jpg)
Fundamentals of Computer SystemsMemory
Stephen A. Edwards
Columbia University
Summer 2020
![Page 2: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/2.jpg)
Atari Space Race, 1973
![Page 3: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/3.jpg)
Atari Space Race PCB
Front Back (mirrored)
![Page 4: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/4.jpg)
Read-Only Memories: Combinational Functions
2k ×nROM
A0
A1
A2
...
Ak−1
D0
D1
...
Dn−1
General ROM:2k words
n bits per word
128×1ROM
A0
A1
A2
A3
A4
A5
A6
D
Example:Space Race ROM
column
row
![Page 5: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/5.jpg)
Implementing ROMs
0/1
0
Z: “notconnected”
0
1
0
1
1
1
Add. Data
00 01101 11010 10011 010
2-to-4Decoder
A1A0
0 1 1
1 1 0
1 0 0
0 1 0
Wordline 00
Wordline 11
Wordline 22
Wordline 33
Bitline 0
D0
Bitline 1
D1
Bitline 2
D2
![Page 6: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/6.jpg)
Implementing ROMs
0/1
0
Z: “notconnected”
0
1
0
1
1
1
Add. Data
00 01101 11010 10011 010
2-to-4Decoder
1A10A0
0 1 1
1 1 0
1 0 0
0 1 0
Wordline 00
Wordline 11
Wordline 22
Wordline 33
Bitline 0
D0
Bitline 1
D1
Bitline 2
D2
1 0 0
0
0
1
0
![Page 7: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/7.jpg)
Implementing ROMs
0/1
0
Z: “notconnected”
0
1
0
1
1
1
Add. Data
00 01101 11010 10011 010
2-to-4Decoder
A1A0
0
1
2
3
D0D1D2
![Page 8: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/8.jpg)
Implementing ROMs
0/1
0
Z: “notconnected”
0
1
0
1
1
1
Add. Data
00 01101 11010 10011 010
2-to-4Decoder
A1A0
0
1
2
3
D0D1D2
0 01
1
1
0
1
![Page 9: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/9.jpg)
Atari Space Race Schematic
![Page 10: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/10.jpg)
The 1971 DEC M792-YB Bootstrap Diode Matrix
32-word, 16-bit (64-byte) ROM diode matrix
![Page 11: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/11.jpg)
CMOS Mask-Programmed ROMs
Add. Data
00 01101 11010 10011 010
ROM “programmed”by selectivelyconnecting drainwires
Active-highwordlines
![Page 12: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/12.jpg)
Mask ROM Die Photo
![Page 13: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/13.jpg)
Color PROM in Pac-Man
00 0001 0702 6603 EF04 0005 F806 EA07 6F08 0009 3F0A 000B C90C 380D AA0E AF0F F610 00...
...1F 00
![Page 14: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/14.jpg)
A Floating Gate MOSFET
Cross section of a NOR FLASH transistor. Kawai et al., ISSCC 2008 (Renesas)
![Page 15: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/15.jpg)
Floating Gate n-channel MOSFET
Channel
Drain Source
Floating Gate
Control GateSiO2
Floating gate uncharged; Control gate at 0V: Off
![Page 16: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/16.jpg)
Floating Gate n-channel MOSFET
Channel
Drain Source
Floating Gate
Control GateSiO2+++++++++
−−−−−−−−+++++++++
−−−−−−−−
Floating gate uncharged; Control gate positive: On
![Page 17: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/17.jpg)
Floating Gate n-channel MOSFET
Channel
Drain Source
Floating Gate
Control GateSiO2
−−−−
−−−−++++
++++
Floating gate negative; Control gate at 0V: Off
![Page 18: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/18.jpg)
Floating Gate n-channel MOSFET
Channel
Drain Source
Floating Gate
Control GateSiO2++++++++−−−−−−−
−−++
Floating gate negative; Control gate positive: Off
![Page 19: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/19.jpg)
EPROMs and FLASH use Floating-Gate MOSFETs
![Page 20: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/20.jpg)
Static Random-Access Memory Cell
Word line
Bit line Bit line
![Page 21: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/21.jpg)
Layout of a 6T SRAM Cell
��
���
!� !�$%� $%�&$
'()�
�����"#�����
Weste and Harris. Introduction to CMOS VLSI Design. Addison-Wesley,2010.
![Page 22: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/22.jpg)
Intel’s 2102 SRAM, 1024 × 1 bit, 1972
![Page 23: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/23.jpg)
2102 Block Diagram
![Page 24: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/24.jpg)
SRAM Timing
A12A11
A2A1A0
CS2
D7D6
D1D0
......
CS1
WEOE
62648K × 8SRAM
CS1
CS2
WE
OE
Addr 1 2
Data write 1 read 2
![Page 25: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/25.jpg)
6264 SRAM Block Diagram
CY6264-1
A1A2A3A4A5A6A7A8
I/O0
256 x 32 x 8ARRAY
INPUT BUFFER
COLUMN DECODERPOWERDOWN
I/O1
I/O2
I/O3
I/O4
I/O5
I/O6
I/O7CE1CE2WE
OE
![Page 26: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/26.jpg)
Galaga CPU detail (Namco/Midway 1981)
![Page 27: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/27.jpg)
Dynamic RAM Cell
Word line
Bit line
![Page 28: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/28.jpg)
Our Old Pal, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
means
and
means
![Page 29: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/29.jpg)
Our Old Pal, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
The decoder or“AND plane”
In a RAM or ROM,computes everyminterm
Pattern is notprogrammable
![Page 30: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/30.jpg)
Our Old Pal, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
The decoder or “ORplane”
One term for everyoutput
Pattern isprogrammable = thecontents of the ROM
![Page 31: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/31.jpg)
Our Old Pal, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
Can we do better?
![Page 32: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/32.jpg)
Simplifying the Space Race ROM
0 0 0 00 0 0 00 1 0 00 0 0 0
A0
A1
A2A3
0 0 0 00 0 0 01 1 0 00 0 0 0
0 0 0 00 0 0 00 1 0 00 0 1 0
0 0 0 01 0 0 00 1 1 10 0 0 1
0 0 1 01 0 0 00 0 1 00 1 0 0
0 0 0 11 1 1 10 1 1 11 0 0 0
0 1 0 00 0 0 00 1 0 00 0 0 0
1 0 0 00 0 0 00 1 0 00 0 0 0
Essential minterms mean don’t expand these
![Page 33: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/33.jpg)
Our New PAL, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
3210
D0=3210
D1=321
D2=3210+3210
D3=3210+310+3210+3210
D4=3210+3210+3210+3210
D5=310+20+21+3210+3210
D6=3210+3210
D7=3210+3210
Saved two ANDs
![Page 34: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/34.jpg)
Our New PAL, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
3210
321 D0=3210
D1=321
D2=3210+3210
D3=3210+310+3210+3210
D4=3210+3210+3210+3210
D5=310+20+21+3210+3210
D6=3210+3210
D7=3210+3210
Saved two ANDs
![Page 35: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/35.jpg)
Our New PAL, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
3210
321
3210
D0=3210
D1=321
D2=3210+3210
D3=3210+310+3210+3210
D4=3210+3210+3210+3210
D5=310+20+21+3210+3210
D6=3210+3210
D7=3210+3210
Saved two ANDs
![Page 36: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/36.jpg)
Our New PAL, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
3210
321
3210
3210
310
3210
D0=3210
D1=321
D2=3210+3210
D3=3210+310+3210+3210
D4=3210+3210+3210+3210
D5=310+20+21+3210+3210
D6=3210+3210
D7=3210+3210
Saved two ANDs
![Page 37: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/37.jpg)
Our New PAL, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
3210
321
3210
3210
310
3210
3210
3210
D0=3210
D1=321
D2=3210+3210
D3=3210+310+3210+3210
D4=3210+3210+3210+3210
D5=310+20+21+3210+3210
D6=3210+3210
D7=3210+3210
Saved two ANDs
![Page 38: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/38.jpg)
Our New PAL, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
3210
321
3210
3210
310
3210
3210
3210
310
20
21
3210
D0=3210
D1=321
D2=3210+3210
D3=3210+310+3210+3210
D4=3210+3210+3210+3210
D5=310+20+21+3210+3210
D6=3210+3210
D7=3210+3210
Saved two ANDs
![Page 39: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/39.jpg)
Our New PAL, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
3210
321
3210
3210
310
3210
3210
3210
310
20
21
3210
3210
D0=3210
D1=321
D2=3210+3210
D3=3210+310+3210+3210
D4=3210+3210+3210+3210
D5=310+20+21+3210+3210
D6=3210+3210
D7=3210+3210
Saved two ANDs
![Page 40: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/40.jpg)
Our New PAL, the Space Race ROM0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
A0A1A2A3 D0 D1 D2 D3 D4 D5 D6 D7
3210
321
3210
3210
310
3210
3210
3210
310
20
21
3210
3210
3210
D0=3210
D1=321
D2=3210+3210
D3=3210+310+3210+3210
D4=3210+3210+3210+3210
D5=310+20+21+3210+3210
D6=3210+3210
D7=3210+3210
Saved two ANDs
![Page 41: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/41.jpg)
A 22V10 PAL: Programmable AND/Fixed OR0 4 8 12 16 20 24 28
Increments
FirstFuseNumbers
32 36 40
Macro-cell
R = 5809P = 5808
R = 5811P = 5810
R = 5813P = 5812
R = 5815P = 5814
R = 5817P = 5816
Asynchronous Reset
23
22
21
20
19
1
2
3
4
5
(to all registers)
396
0
440
880
924
1452
1496
2112
2156
2860
I/O/Q
I/O/Q
I/O/Q
I/O/Q
I/O/Q
I
I
I
I
CLK/I
Macro-cell
Macro-cell
Macro-cell
Macro-cell
![Page 42: Fundamentals of Computer Systems - Memorysedwards/classes/2020/3827-summer/mem… · A 22V10 PAL: Programmable AND/Fixed OR 0 4 8 121 6 202 428 Increments First Fuse Numbers 32 36](https://reader036.fdocuments.us/reader036/viewer/2022071019/5fd28d8cacd13e0ac54f3985/html5/thumbnails/42.jpg)
Field-Programmable Gate Arrays (FPGAs)
Switch BlockLE LE LE
SB SB
LE LE LE
LUT
16×1 RAMprogrammable switch
Switch Box: 6programmable
switches