1 کلاس جبراني پنجشنبه 26 فروردين: ساعت 8:00 صبح ميان ترم ...
Post on 21-Dec-2015
238 views
TRANSCRIPT
1
کالس جبراني• 8:00 فروردين: ساعت 26پنجشنبه
صبح
ميان ترم • 9:30 ارديبهشت: ساعت 3سه شنبه
صبح
Programmable Logic
PAL, PLA
3
Integration
• SSI Small-Scale Integration
− Several gates in a package
• MSI Medium-Scale Integration
− Tens of gates in a package
• LSI Large-Scale Integration
− Hundreds to hundred thousands of gates in a package
• VLSI Very Large-Scale Integration
− More than above− E.g. Microprocessors.
4
SSI (7400 Series)
5
DIP
Dual in-line Packages
6
PLAs
Programmable Logic Array
Pre-fabricated building block of many AND/OR gates (or NOR, NAND) "Personalized" by making/ breaking connections among the gates.
General purpose logic building blocks.
7
PLA
Inputs
Dense array of AND gates Product
terms
Dense array of OR gates
Outputs
8
PLA
9
PLA
• A 3×2 PLA with 4 product terms.
10
Design for PLA:Example
Implement the following functions using PLAF0 = A + B' C'F1 = A C' + A BF2 = B' C' + A BF3 = B' C + A
Personality Matrix
1 = asserted in term0 = negated in term- = does not participate
Input Side:
1 = term connected to output0 = no connection to output
Output Side:Outputs Inputs Product
t erm
Reuse of
t erms
A 1 - 1 - 1
B 1 0 - 0 -
C - 1 0 0 -
F 0 0 0 0 1 1
F 1 1 0 1 0 0
F 2 1 0 0 1 0
F 3 0 1 0 0 1
A B B C A C B C A
11
Example: Continued
F0 = A + B' C'F1 = A C' + A BF2 = B' C' + A BF3 = B' C + A
Personality Matrix
Outputs Inputs Product t erm
Reuse of
t erms
A 1 - 1 - 1
B 1 0 - 0 -
C - 1 0 0 -
F 0 0 0 0 1 1
F 1 1 0 1 0 0
F 2 1 0 0 1 0
F 3 0 1 0 0 1
A B B C A C B C A
A B C
F0 F1 F2 F3
AB
B’C
AC’
B’C’
A
12
Constants Sometimes a PLA output
must be programmed to be a constant 1 or a constant 0.− P1 is always 1
because its product line is connected to no inputs and is therefore always pulled HIGH;
− this constant-1 term drives the O1 output.
No product term drives the O2 output, which is therefore always 0.
Another method of obtaining a constant-0 output is shown for O3.
13
BCD to Gray Code Converter
W = A + B D + B CX = B C'Y = B + CZ = A'B'C'D + B C D + A D' + B' C D'
Minimized Functions:
A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
W 0 0 0 0 0 1 1 1 1 1 X X X X X X
X 0 0 0 0 1 1 0 0 0 0 X X X X X X
Y 0 0 1 1 1 1 1 1 0 0 X X X X X X
Z 0 1 1 0 0 0 0 1 1 0 X X X X X X
AB
CD 00 01 11 10
00
01
11
10
D
B
C
A
0 0 X 1
0 1 X 1
0 1 X X
0 1 X X
K-map for W
AB
CD 00 01 11 10
00
01
11
10
D
B
C
A
0 1 X 0
0 1 X 0
0 0 X X
0 0 X X
K-map for X
AB
CD 00 01 11 10
00
01
11
10
D
B
C
A
0 1 X 0
0 1 X 0
1 1 X X
1 1 X X
K-map for Y
AB
CD 00 01 11 10
00
01
11
10
D
B
C
A
0 0 X 1
1 0 X 0
0 1 X X
1 0 X X
K-map for Z
14
4 product terms per each OR gate
A B C D
0
0
0
0
0
0
A B C D
A
BD
BC
W X Y Z
BC’
B
C
BCD
AD’
BCD’
Product terms cannot be shared !
PLA achieves higher flexibility at the cost of lower speed!
15
PALs
• Programmable Array Logic a fixed OR array.
Inputs
Dense array of AND gates Product
terms
Dense array of OR gates
Outputs
16
PALinputs
1st output section
2nd output section
3rd output section
4th output section
Only functions withat most four products can be implemented
17
PAL
W = ABC + CDX = ABC + ACD + ACD + BCD Y = ACD + ACD + ABD
x
x
x
18
19
Tri-State (Output Enable) Gate
• Tri-State (Three-State) Inverter: The output in NOT of input if the Enable input is HIGH Else Hi-Impedance (Hi-Z)
− Unconnected.Enable
input output
outputinput
Enable• Tri-State (Three-State) Buffer:
20
Active Low Input
• Tri-State Buffer with Active Low Enable:
• Tri-State Inverter with Active Low Enable:
in out
EN
in out
EN
3-state BUF, EN low
3-state INV, EN low
21
Helper Terms If an I/O pin’s output-
control gate produces a constant 1, the output is always enabled, but the pin may still be used as an input too.
outputs can be used to generate first-pass “helper terms” for logic functions that cannot be performed in a single pass with the limited number of AND terms available for a single output.