Programmable Logic Devices
Programmable Logic Devices
Memory Unit
• A memory unit is a device to which binary information is stored and
retrieved when needed
Read/Write memory
Volatile
• For 1K-word memory instead of using 10 x1024 decoder, we use two 5x32
decoder in a two dimensional selection scheme.
• A 10x1024 decoder requires 1024 AND gates with 10 inputs each, whereas
when we use two 5x32 decoder it requires totally 64 AND gates with five
inputs each
• 10 Bit address is split into MSB 5 bits and LSB 5 bits. The MSB bits are
given to X and LSB bits are given to y
Coincident Decoding-Example
• DRAMS have 4 times the density and cost is also 4 times less
Address multiplexing for 64K DRAM
Read Cycle
Non-Volatile
• The inputs provide the address for memory, and the outputs give the data
bits of the stored word that is selected by the address.
• The number of words in a ROM is determined from the fact that k address
input lines are needed to specify 2k words.
• Note that ROM does not have data inputs, because it does not have a write
operation.
Eg:32x 8 ROM
• Here 2^k = 32 and n=8, Therefore 32 address locations and 8 output lines.
The 32 addresses are generated by a 5 x32 decoder.
Can be ―programmed‖
• Three types
PLA with three inputs, four product terms and two outputs
Boolean Function Implementation in PLA
(Contd.)
• PLA Programming Table
PLA Example
• Implement the following two Boolean functions with a PLA:
Programmable Array Logic(PAL)
• The PAL is a programmable logic device with a fixed OR
array and a programmable AND array. Because only the AND
gates are programmable, the PAL is easier to program than, but is
not as flexible as, the PLA.
PAL with four inputs, four outputs and a three-wide AND-OR structure
PAL Implementation Example
• Implement the function
x = A+BCD
y = A’B+CD+B’D’
z = ABC’+A’B’CD’+AC’D’+A’B’C’D
• z can be written in terms of w as
z= w+ AC’D’+A’B’C’D
PAL Implementation Example(Contd.)
w = ABC’+A’B’CD’
PAL Programming table
x = A+BCD
y = A’B+CD+B’D’
z = w+ AC’D’+A’B’C’D
Sequential Programmable Devices
• Digital systems are designed with flip‐flops and gates. Since the
combinational PLD consists of only gates, it is necessary to include
external flip‐flops when they are used in the design.
• Three types
• The circuit outputs can be taken from the OR gates or from the outputs of the
flip‐flops.
• The input–output (I/O) blocks provide the connections to the IC pins. Each I/O pin
is driven by a three state buffer and can be programmed to act as input or output.
• The switch matrix receives inputs from the I/O block and directs them to the
individual macrocells.
• Similarly, selected outputs from macrocells are sent to the outputs as needed.