Lecture (3)
Lecture (3)
Pin connections common to all memory devices are the address inputs, data outputs or
input/outputs, some type of selection input, and at least one control input used to select a read or
write operation.
See next Figure for ROM and RAM generic-memory devices.
We have four different connections:
Address Connections
Data Connections
Selection Connections
Control Connections
Address Connections
All memory devices have address inputs that select a memory location within the memory device.
Address inputs are labeled from A0, the least significant address input, to An where subscript n can
be any value but is always labeled as one less than the total number of address pins.
The number of address pins found on a memory device is determined by the number of memory
locations found within it.
A 1K memory device has 10 address pins (A0 – A9); therefore, 10 address inputs are required to
select any of its 1024 memory locations.
If a memory device has 11 address connections (A0 – A10), it has 2048 (2K) internal memory
locations, and so on.
A device that contains 1M locations requires a 20 - bit address (A0 – A19).
Data Connections
All memory devices have a set of data outputs or input/outputs.
The device illustrated in this Figure has a common set of
input/output (I/O) connections.
Today, many memory devices have bidirectional common I/O pins.
The data connections are the points at which data are entered for
storage or extracted for reading.
Data pins on memory devices are labeled D0 through D7 for an 8-
bit-wide memory device.
In this sample memory device there are 8 I/O connections,
meaning that the memory device stores 8 bits of data in each of its
memory locations.
Data Connections
An 8-bit-wide memory device is often called a byte-wide memory.
Although most devices are currently 8 bits wide, some devices are
16 bits, 4 bits, or just 1 bit wide.
A memory device with 1K memory locations and 8 bits in each
location is often listed as a 1K × 8 by the manufacturer. A 16K × 1 is
a memory device containing 16K 1-bit memory locations.
Selection Connections
Each memory device has an input, sometimes more than one, that
selects or enables the memory device.
This type of input is most often called a chip select (CS), chip enable
(CE), or simply select (S) input.
RAM memory generally has at least one CS or S input, and ROM has at
least one CE.
If the CE, CS, or S input is active (logic 0), the memory device performs
a read or write operation; if it is inactive (logic 1), the memory device
cannot do a read or a write because it is turned off or disabled.
If more than one CS connection is present, all must be activated to
read or write data.
Control Connections
All memory devices have some form of control input or inputs.
A ROM usually has only one control input, while a RAM often has
one or two control inputs.
The control input most often found on a ROM is the output enable
(OE) or gate (G) connection, which allows data to flow out of the
output data pins of the ROM.
If OE and the selection input (CE) are both active, the output is
enabled; if OE is inactive, the output is disabled at its high-
impedance state.
Control Connections
RAM memory device has either one or two control inputs.
If there is only one control input, it is often called R/W. This pin selects a
read operation or a write operation only if the device is selected by the
selection input (CS).
If the RAM has two control inputs, they are usually labeled WE (Write
Enable), and OE (Output Enable). WE must be active to perform a memory
write, and OE must be active to perform a memory read operation.
When these two controls (WE and OE) are present, they must never both
be active at the same time.
If both control inputs are inactive (logic 1s), data are neither written nor
read, and the data connections are at their high-impedance state.
The read-only memory (ROM) permanently stores programs and data and must not change when
power supply is disconnected.
This type of memory is often called nonvolatile memory.
It programmed during its fabrication at the factory.
The EPROM (erasable programmable read-only memory), a type of ROM, is more commonly used
when software must be changed often.
An EPROM is programmed in the field on a device called an EPROM programmer.
The EPROM is also erasable if exposed to high-intensity ultraviolet light for about 20 minutes.
Newer type of ROM is called the flash memory, it is also often called an EEPROM (electrically erasable
programmable ROM).
NOVRAM (nonvolatile RAM) is electrically erasable in the system, but they require more time to erase
than a normal RAM.
This Figure shows the 2716 EPROM, which is representative of most common EPROMs.
This device contains 11 address inputs and eight data outputs. The 2716 is a 2K × 8 read-only memory
device.
This Figure shows the timing diagram for the 2716 EPROM.
Note that, the memory access time (TACC) is measured from the appearance of the address at the
address inputs until the appearance of the data at the output connections.
Static RAM (SRAM) memory devices retain data for as long as DC power
is applied.
The main difference between a ROM and a RAM is that a RAM is written
under normal operation, whereas a ROM is programmed outside the
computer and normally is only read.
The SRAM, which stores temporary data, is used when the size of the
read/write memory is relatively small.
This Figure shows the 4016 SRAM, which is a 2K × 8 read/write memory.
This device has 11 address inputs and eight data input/output
connections.
This device is representative of all SRAM devices, except for the number
of address and data connections.
This Figure shows a 64K × 4 DRAM, which stores 256K bits of data.
Notice that it contains only eight address inputs where it should
contain 16—the number required to address 64K memory locations.
The only way that 16 address bits can be forced into eight address
pins is in two 8-bit increments.
This operation requires two special pins: the column address strobe
(CAS) and row address strobe (RAS).
First, A0 – A7 are placed on the address pins and strobed into an
internal row latch by RAS as the row address.
Next, the address bits A8 - A15 are placed on the same eight address
inputs and strobed into an internal column latch by CAS as the
column address.
To attach a memory device with the microprocessor, it is necessary decode the address sent from the
microprocessor.
Without an address decoder, only one memory device can be connected to a microprocessor.
In this section, we describe a few of the more common address-decoding techniques, as well as the
decoders that are found in many systems.
The decoder selects the EPROM from one of the 2K-byte sections of the 1M-byte memory system in
the 8088 microprocessor.
When CE is logic 0, data will be read from the EPROM only if OE (Output Enable) is also a logic 0.
The OE pin is activated by the 8088 RD signal.
The next Example shows how the address range for this EPROM is determined.
This Example also shows the 2K EPROM is decoded at memory address locations FF800H – FFFFFH.
Although this example serves to illustrate decoding, NAND gates are rarely used to decode memory
because each memory device requires its own NAND gate decoder.
Because of the excessive cost of the NAND gate decoder and inverters that are often required, this
option requires that an alternate be found.
Notice that all of the address connections from the 8088 are connected to this circuit.
The 74HCT138
decoder decodes
three 32K × 8
blocks of memory
for a total of 96K ×
8 bits of the
physical address
space for the
8088/80188.
ELC323: Microprocessor II Dr. Abouelmaaty M. Aly 34
Memory Interface – 8088 and 80188 (8-Bit) Memory Interface