+ All Categories
Home > Documents > Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM...

Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM...

Date post: 01-Aug-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
44
Memory and Programmable Logic EE 200 Digital Logic Circuit Design Dr. Abdulaziz Tabbakh College of Computer Sciences and Engineering King Fahd University of Petroleum and Minerals
Transcript
Page 1: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

Memory and Programmable Logic

EE 200

Digital Logic Circuit Design

Dr. Abdulaziz Tabbakh

College of Computer Sciences and Engineering

King Fahd University of Petroleum and Minerals

Page 2: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 2

Outline

Random Access Memory (RAM)

Programmable Logic

Programmable Logic Device (PLD)

Read-Only Memory (ROM)

Programmable Logic Array (PLA)

Programmable Array Logic (PAL)

Page 3: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 3

Memory Units

A memory unit is a device to which binary information is

transferred for stored and from which information is retrieved

when needed

Memory register processing register memory

Information received from an input device is stored in

memory, and information transferred to an output device is

taken from memory

The process of storing new information into memory is

referred to as a memory write operation.

The process of transferring the stored information out of

memory is referred to as a memory read operation

A memory unit is a collection of cells capable of storing a

large quantity of binary information.

Page 4: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 4

Memory Units

There are two types of memories in digital systems:

Random‐Access Memory (RAM)

Read‐Only Memory (ROM)

RAM can perform both write and read operations

ROM can perform only the read operation.

This means that suitable binary information is already stored

inside memory and can be retrieved or read at any time.

However, that information cannot be altered by writing.

Page 5: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 5

Programmable Logic Devices (PLDs)

ROM is a programmable logic device (PLD)

The binary information that is stored within PLD is specified in

some fashion and then embedded within the hardware in a

process is referred to as programming the device.

The word “programming” is a hardware procedure which

specifies the bits that are inserted into the hardware

configuration of the device

PLDs include:

ROMs

programmable logic array (PLA)

programmable array logic (PAL)

field‐programmable gate array (FPGA)

Page 6: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 6

Random Access Memory (RAM)

A memory unit is a collection of storage cells, together with

associated circuits needed to transfer information into and out

of a device

information can be selectively retrieved from any of its internal

locations.

The time it takes to transfer information to or from any desired

random location is always the same (in contrast to magnetic tape)

Each memory location will have a group of binary bits called

words (read/written together) (multiple of bytes in length)

Group of 8-bits is called a Byte.

16‐bit word = 2 bytes, and a 32‐bit word = 4 bytes

The capacity of the memory is stated in bytes

Page 7: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 7

RAM Interfacing a memory requires:

Data input and output lines (n)

Address selection lines (k)

Direction of transfer (read/write)

The n data input lines provide the information to be stored in

memory, and the n data output lines supply the information

coming out of memory

The k address lines specify a particular word among the many

available

The two control inputs specify the direction of transfer:

Write input causes binary data to be transferred into the memory

Read input causes binary data to be transferred out of memory.

Page 8: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 8

RAM

Each word has a unique address (from 0 to 2k-1)

Memory of size 1,024 words, requiring an address of 10 bits

(210 = 1024)

Assume each word is 16-bits (2bytes) total capacity is 2048

bytes or 2Kbytes (called 1K×16 memory) (K=210, M=220, G=230)

A word in memory is selected by

its binary address.

When a word is read or written,

the memory operates on all 16 bits

as a single unit

A 64K×10 memory will have 16

bits in the address (since 64K=216)

and each word will consist of 10

bits.

Page 9: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 9

RAM

The number of address bits is dependent on the total number

of words that can be stored in the memory and is independent

of the number of bits in each word (2k ≥ m, where m is the

total number of words and k is the number of address bit)

RAMs has two operations:

Write: a transfer‐in operation

Read: a transfer‐out operation

Page 10: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 10

RAM (write operation)

The steps for WRITE operation (transfer a new word into

memory )

1. Apply the binary address of the desired word to the address lines.

2. Apply the data bits that must be stored in memory to the data input

lines.

3. Activate the write input

Page 11: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 11

RAM (read operation)

The steps for READ operation (transfer a stored word out of

memory )

1. Apply the binary address of the desired word to the address

lines.

2. Activate the read input

The contents of the

selected word do not

change after the read

operation, i.e., the READ

operation is

nondestructive.

Page 12: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 12

RAM Operations

The memory enable (sometimes called the chip select) is

used to enable the particular memory chip in a multichip

implementation of a large memory.

When the memory enable is inactive, the memory chip is not

selected and no operation is performed.

When the memory enable input is active, the read/write input

determines the operation to be performed

Page 13: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 13

Timing Waveforms

The operation of the memory unit is controlled by an external

device such as a central processing unit (CPU).

The CPU is usually synchronized by its own clock.

The memory does not employ an internal clock.

its read and write operations are specified by control inputs

Access time is the time required to select and read a word

from memory.

Cycle time is the time needed to write a word to memory

The CPU provides the memory control signals in such a way

as to synchronize its internal clocked operations with the read

and write operations of memory.

Access time and cycle time of the memory must be within a time

equal to a fixed number of CPU clock cycles

Page 14: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 14

RAM (write cycle) CPU clock = 50 MHz, T (Period) = 20 ns

Memory access time and cycle time do not exceed 50 ns = 2.5 * T

Page 15: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 15

RAM (read cycle) The memory places the data of the word selected by the address

into the output data lines within a 50‐ns interval (or less) from the

time that the memory enable is activated.

The CPU can transfer the data into one of its internal registers

during the negative transition of T3. The next T1 cycle is available

for another memory request.

Page 16: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 16

RAM Types

Static RAM (SRAM):

consists of internal latches that store the binary information

The stored information remains valid as long as power is applied

to the unit.

Easier to use, shorter read/write cycles

Dynamic RAM (DRAM):

stores the binary information in the form of electric charges on

capacitors provided inside the chip by MOS transistors

The stored charge on the capacitors tends to discharge with

time, the capacitors must be periodically recharged by

refreshing the dynamic memory every few milliseconds

Low power, larger storage,

Page 17: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 17

Memory Units

CMOS cells

A six-transistor CMOS SRAM cell DRAM

Page 18: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 18

18

Memory Units

A Memory unit is a device to which binary information is

saved in and then can be retrieved at a later time.

It is a collection of cells that can store large quantities of

binary data.

volatile Non-volatile

RAM ROM Flash FPGA

DRAMSRAM EEPROMPROM

Page 19: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 19

Memory Decoding

There is a need for decoding circuits to select the memory

word specified by the input address

The binary storage cell is the basic building block of a

memory unit shown below (SR Latch)

A binary storage cell must be

very small (4-6 transistors)

pack as many cells as

possible in the small area

The select input enables the

cell for reading or writing

The 𝑟𝑒𝑎𝑑/𝑤𝑟𝑖𝑡𝑒 input

determines the operation of

the cell when it is selected

Page 20: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 20

Memory Decoding

The internal construction of a RAM of m words and n bits per

word consists of m×n binary storage cells and associated

decoding circuits for selecting individual words

4 words 2

address lines and

2×4 decoder

Memory_enable to

enable the decoder.

Read/write signal

determine the

operation

Page 21: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 21

Memory Internal Structure

Commercial RAMs may have a capacity of thousands of

words, and each word may range from 1 to 64 bits.

The logical construction of a large‐capacity memory would be

a direct extension of the configuration shown here

A memory with 2k words of n bits per word requires k address

lines that go into a k×2k decoder.

Each one of the decoder outputs selects one word of n bits for

reading or writing

Page 22: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 22

Memory Decoding

A decoder with k inputs and 2k outputs requires 2k AND gates

with k inputs per gate.

The number of gates and the number of inputs per gate can

be reduced by employing two decoders in a two‐dimensional

selection scheme.

The basic idea is to arrange the memory cells in an array that is

close as possible to square

1 K-inputs decoder 2 K/2-input decoders

One decoder performs the row selection and the other the

column selection in a two‐dimensional matrix configuration.

Page 23: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 23

Memory Decoding (Coincident Decoding)

1K words = 1024 words =

210 words

that needs 10x210 decoder

One 10X210 Decoder

1024 AND gates (10

inputs)

Two 5X32 Decoders

64 AND gates (5 inputs)

consider the word address

is 404. or 01100 10100.

X = 01100 (binary 12)

Y = 10100 (binary 20).

Page 24: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 24

Address Multiplexing

To reduce the number of pins in the IC package, designers

utilize address multiplexing

the address is applied in two parts at different times, with the

row address first and the column address second.

An eight‐bit address input and

two address strobes to enable

row/column address registers.

The row address strobe (RAS)

enables the eight‐bit row

register,

The column address strobe

(CAS) enables the eight‐bit

column register

Page 25: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 25

Read-Only Memory (ROM)

A read‐only memory (ROM) is essentially a memory device in

which permanent binary information is stored.

The binary information must be specified by the designer and is

then embedded in the unit. Once the pattern is established, it

cannot be altered even when power is turned off and on again.

ROM is a programmable logic device (PLD)

Special types of ROM like EEPROM (Electrically erasable

ROM) can be reprogrammed to store a new set of functions

or data within it. This process is not straight forward.

ROM is a non-volatile type of memory, meaning that even if

the power is cut off, the data will stay in its place.

It consists of a decoder and an array of fused (programmed)

OR gates.

Page 26: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 26

ROM

The inputs provide the address for memory, and the outputs

give the data bits of the stored word that is selected by the

address

No data input

The number of words in a ROM is determined from k address

input lines needed to specify 2k words

ROM chips have one or more enable inputs and

sometimes come with three‐state outputs to facilitate the

construction of large arrays of ROM.

Page 27: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 27

ROM The five inputs are decoded into

32 distinct outputs by means of a

5X32 decoder

Each output of the decoder

represents a memory address

The 32 outputs of the decoder are

connected to each of the eight OR

gates (32 input OR gate)

2kXn ROM will have an internal

kX2k decoder and n OR gates.

Each OR gate has 2k inputs,

which are connected to each of

the outputs of the decoder (n×2k

internal programmable

connections )

A programmable connection between two

lines is logically equivalent to a switch that

can be altered to be either closed (meaning

that the two lines are connected) or open

(meaning that the two lines are disconnected)

The programmable intersection between two

lines is sometimes called a crosspoint

Page 28: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 28

ROMAddress 00000 has Data 10110010

Address 00001 has Data 01010101

Address 00010 has Data 01101010

The internal binary storage of a

ROM is specified by a truth table

that shows the word content in

each address

Every 0 listed in the truth table

specifies the absence of a

connection,

Every 1 listed specifies a path that

is obtained by a connection

One of the simplest technologies

employs a fuse that normally

connects the two points, but is

opened or “blown” by the

application of a high‐voltage pulse

into the fuse.

Page 29: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 29

Programming ROM

Every 0 listed in the

truth table specifies

the absence of a

connection,

Every 1 listed

specifies a path that

is obtained by a

connection1 0 1 1 0 0 1 0

Addre

ss

0 0

0 1 1

Page 30: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 30

Combinational Circuit Implementation

The internal operation of a ROM can be interpreted in two

ways.

A memory unit that contains a fixed pattern of stored words.

A unit which implements a combinational circuit

Each output terminal is considered separately as the output of

a Boolean function expressed as a sum of minterms.

For example, the ROM in the previous slide may be

considered to be a combinational circuit with eight outputs,

each a function of the five input variables.

Output A7 can be expressed in sum of minterms as A7(I4, I3, I2,

I1, I0) = ∑ (0, 2, 3, ….., 29)

Page 31: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 31

Combinational Circuits using ROM

If a combinational circuit is designed by a ROM, it is not

necessary to design the logic or to show the internal gate

connections inside the unit.

the designer has to specify a particular ROM and provide the

applicable truth table

Page 32: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 32

Example Example: Design a combinational circuit using a ROM that

accepts 3-bits and outputs their squared value. Use minimum

size ROM

3-bits max value = 7 64 > 72=49 > 32 we need 6 bits

Output B0 is always equal

to input A0

There is no need to

generate B0 with a ROM,

since it is equal to an

input variable

Output B1 is always 0

this output is a known

constant

ROM must be of size 8×4

Page 33: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 33

Types of ROMs

ROM may be programmed in four different ways

Mask programming: is done by the semiconductor company during the

last fabrication process of the unit

Programmable read‐only memory (PROM): The fuses in the PROM are

blown by the application of a high‐voltage pulse to the device through a

special pin at the lab. (all hardware procedure and is irreversible)

Erasable PROM (EPROM): can be restructured to the initial state even

though it has been programmed previously (using ultraviolet light)

Electrically erasable PROM (EEPROM or E2PROM ): like the EPROM,

except it can be erased with an electrical signal instead of ultraviolet

light.

Flash memory devices are similar to EEPROMs, but have

additional built‐in circuitry to selectively program and erase

the device in‐circuit, without the need for a special

programmer

Page 34: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 34

Combinational PLDs

Three types:

PLD-PROM: Fixed AND gates (Decoder) and Programmable

OR array that represents the Boolean Function. Sum-of-

Products.

Programmable Array Logic (PAL): Programmable AND array

and Fixed OR array. Sum-of-Products.

Programmable Logic Array (PLA): Most Flexible, AND array and

OR array are programmable.

Page 35: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 35

Programmable Logic Array (PLA)

Similar to PROM in concept,

but no decoder, thus does not

generate all Minterms.

The decoder is replaced by an

array of AND gates that can be

programmed to generate any

product term

These produce terms are

passed to a programmable OR

the output.

The output of the OR gate

goes to an XOR gate, where

the other input can be

programmed, to invert the

output or not

Page 36: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 36

Example

Design and sketch a PLA circuit to implement the following two

Boolean functions:

F1 = AB’ + AC + A’BC’, F2 = (AC + BC)’

Construct the PLA Programming Table.

PLA with 3 inputs, 4

product terms and 2

outputs

Page 37: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 37

PLA

The size of a PLA is specified by the number of inputs, the

number of product terms, and the number of outputs.

A typical integrated circuit PLA may have 16 inputs, 48 product

terms, and eight outputs.

For n inputs, k product terms, and m outputs

the internal logic of the PLA consists of n buffer–inverter gates, k

AND gates, m OR gates, and m XOR gates.

There are 2n×k connections between the inputs and the AND array,

k×m connections between the AND and OR arrays, and m

connections associated with the XOR gates.

There is no need to show the internal connections of the unit

when designing a digital system with a PLA

PLA programming table is enough

The PLA may be mask programmable or field programmable

Page 38: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 38

PLA

In implementing a combinational circuit with a PLA,

reduce the number of distinct product terms, since a PLA has a

finite number of AND gates.

This can be done by simplifying each Boolean function to a

minimum number of terms.

The number of literals in a term is not important, since all the

input variables are available anyway.

Both the true value and the complement of each function

should be simplified to see which one can be expressed with

fewer product terms and which one provides product terms

that are common to other functions.

Page 39: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 39

Example

Implement the following two Boolean functions with a PLA:

F1 (A, B, C)= Σ(0, 1, 2, 4)

F2 (A, B, C)= Σ(0, 5, 6, 7)

F1= B’C’ + A’B’ + A’C’

F1= (AB + BC + AC)’

F2= AB + AC + A’B’C’

F2= AB’C’ + A’B + A’C

* We need to get common products!

Page 40: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 40

Programmable Array Logic (PAL)

Fixed OR, Programmable AND.

Easier to program than PLA

but is not as flexible as PLA

Output values can be fed back to

inputs if needed! i.e. one output has

the same expression as another

output.

A typical PAL integrated circuit may

have eight inputs, eight outputs, and

eight sections, each consisting of an

eight‐wide AND–OR array.

Page 41: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 41

PAL

the Boolean functions must be simplified to fit into each

section. Unlike the situation with a PLA, a product term cannot

be shared among two or more OR gates

each function can be simplified by itself, without regard to

common product terms

The number of product terms in each section is fixed

If the number of terms in the function is too large, it may be

necessary to use two sections to implement one Boolean

function

Page 42: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 42

Example

Design using a PAL to get:

w(A,B,C,D) = Σ(2,12,13)

x(A,B,C,D) = Σ(7,8,9,10,11,12,13,14,15)

y(A,B,C,D) = Σ(0,2,3,4,5,6,7,8,10,11,15)

z(A,B,C,D) = Σ(1,2,8,12,13)

Simplify using K-MAPs

w(A,B,C,D)= ABC’ + A’B’CD’

x(A,B,C,D) = A + BCD

y(A,B,C,D) = A’B + CD + B’D’

z(A,B,C,D) = ABC’ + A’B’CD’ + AC’D’ + A’B’C’D

= w + AC’D’ + A’B’C’D

Page 43: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 43

Example

w(A,B,C,D)= ABC’ + A’B’CD’

x(A,B,C,D) = A + BCD

y(A,B,C,D) = A’B + CD + B’D’

z(A,B,C,D) = w + AC’D’ + A’B’C’D

Page 44: Memory and Programmable Logic - KFUPMROM is a programmable logic device (PLD) Special types of ROM like EEPROM (Electrically erasable ROM) can be reprogrammed to store a new set of

EE 200– Digital Logic Circuit Design – KFUPM slide 44

Example


Recommended