• No results found

Read-only memory Implementing logic with ROM Programmable logic devices Implementing logic with PLDs Static hazards

N/A
N/A
Protected

Academic year: 2021

Share "Read-only memory Implementing logic with ROM Programmable logic devices Implementing logic with PLDs Static hazards"

Copied!
5
0
0

Loading.... (view fulltext now)

Full text

(1)

Nov 2007

E1.2 Digital Electronics I 8.1

Lecture 8: ROM & Programmable Logic Devices

Professor Peter Cheung

Department of EEE, Imperial College London (Floyd 10.1,10.3-5, 11.1-11.3) (Tocci 12.1, 12.4-5, 13.1-13.4)

Nov 2007

E1.2 Digital Electronics I 8.2

Points Addressed in this Lecture

• Read-only memory

• Implementing logic with ROM

• Programmable logic devices

• Implementing logic with PLDs

• Static hazards

Memory Terminology

• Memory Cell: circuit that stores 1-bit of information

• Memory Word: 8 – 64 bits

• Byte: a group of 8 bits

• Capacity (=Density) - 4096 20-bit words

= 81,920 bits = 4096*20 = 4K*20 - 1 M or 1 meg = 2 20

- 1 G or 1 giga = 2 30

• Address

• Read Operation (=fetch operation)

• Write Operation (=store operation)

(2)

Nov 2007

E1.2 Digital Electronics I 8.5

Read-only Memory (ROM)

• A ROM cell can store 1 bit of information

• Data can be read but not changed (written)

– RAM is read-write capable

• ROM is non-volatile

– the data is "remembered" even when the power supply to the chip is turned off

– the data can be read after turning the power on again – RAM is volatile

• Applications

– permanent storage of programmes for micro-processors – look-up tables of data

– implementing combinational logic

Nov 2007

E1.2 Digital Electronics I 8.6

A ROM Device

– E.g. 64x1 bit ROM

0 8 16 24 32 40 48 56

1 9 17 25 33 41 49 57

2 10 18 26 34 42 50 58

3 11 19 27 35 43 51 59

4 12 20 28 36 44 52 60

5 13 21 29 37 45 53 61

6 14 22 30 38 46 54 62

7 15 23 31 39 47 55 63

7

0 .. .

0 2

}

G0_7

OUT MUX BIN/1 of 8

A0 A1 A2

A5 A4 A3

. +5 Volts

• Notes

– 6 address inputs - half for row select, half for column select

– row select energises all the switch transistors in one row

– column select uses a multiplexer to select just one column

– outputs are normally high but "pulled down" if a cell is programmed

A ROM Cell

• A voltage is stored to represent a 0 or 1 as required

• If the “row-line” is addressed, the switch closes and the stored voltage appears on the “column- line”

• The switch is implemented with a (MOS) transistor

0 or 1 Row

Column

Stor age

(3)

Nov 2007

E1.2 Digital Electronics I 8.9

Storage Mechanism

• The storage mechanism for the 0 or 1 depends on the design of the ROM

• Mask Programmed ROM

– the mask programmed ROM is programmed at the time of manufacture

– the switch transistor is made to have a low threshold voltage to program a 0 and a high threshold to program a 1

Row-line

Column-line

Mask Progammed Cell

‘0’

Nov 2007

E1.2 Digital Electronics I 8.10

• Field Programmable ROM (PROM)

– programmable using a PC-based system

– a semiconductor fuse is blown to program a cell to 1

• Electrically Erasable Programmable ROM (EEPROM)

– programmable using a PC-based system

– the gate capacitance of a MOS transistor is charged (electrically) to store a 0 or discharged (electrically) to store a 1

Row-line

Column-line

'0'

PROM Cell

Column-line Row-line

EPROM Cell

'0'

Different ROM technology Implementing Logic with ROM

• 2

n

x 1-bit ROM devices have n inputs and 1 output – they can be used to implement logic directly – E.g. OUT = X.Y+Z

– Programme the first 8 addresses according to the OUT column – Connect X to A2, Y to A1 and Z to A0 of the ROM

– Usually "cheaper" than using gates for complex logic involving many variables

X Y Z OUT

0 0 0 0

0 0 1 1

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

(4)

Nov 2007

E1.2 Digital Electronics I 8.13

Programmable Logic Devices (PLDs)

• Several different "architectures" available

– We will focus only on PAL and CPLD

• PALs and CPLDs are examples of PLDs

– PAL: Programmable Array Logic

– CPLD: Complex Programmable Logic Device – implement SOP expressions in canonical form

– made from a Programmable AND section and a Fixed OR section

– typically can implement 8 product terms

Nov 2007

E1.2 Digital Electronics I 8.14

• PALs are programmed like PROMs using fuses

– one-time programmable

• CPLDs are programmed like EEPROMs

– Electrically erasable

• PLAs

– Devices with

programmable AND and programmable OR

PAL Architecture

&

&

&

&

&

&

&

&

>1 f

A0 A1 A2 A3 A4 A5 A6 A7

f = A A A A A 0 1 2 . . . 4 . 6 + A A A 1 3 4 . .

A0 A1 A2 A3 A4 A5 A6 A7

Detail of AND Gates in PALs

1 1 1 1

&

≥1

other inputs not shown

A0 A1 A2 A3

4 bit example

f = A A A 0 1 3 . . + "

f

(5)

Nov 2007

E1.2 Digital Electronics I 8.17

Summary of Combinational Logic Building Blocks

• Gates

– seven basic gates from which all other circuits are made – AND/NAND, OR/NOR, XOR/XNOR, NOT

• Multiplexers

– act as switches to connect one output to one of a number of input signals

– can also be used to implement logic

• Decoders

– inverted multiplexers (sometimes called demultiplexers) – act as switches to connect one input to one of a number of

output signals

– also includes circuits such as Binary to 7 Segment decoders – four to seven bit decoders

Nov 2007

E1.2 Digital Electronics I 8.18

• Arithmetic Circuits

– binary adders, comparators, multipliers

– issues of signed or unsigned number representation are important

• Programmable Logic Devices

– ROMs

• implement arbitrary logic functions

• efficient for large combination logic circuits – CPLDs

• implement canonical SOP Boolean expressions – Advantages:

• reduction in chip count

• easy upgrade by just reprogramming – Disadvantages

• programming equipment required

• non-standard parts to stock and document

Static Hazards

• Gates have finite propagation delay

– This can cause glitches in logic waveforms

• Consider an inverter

– propagation delay of ~2nS

• E.g. Implementation of

– If we use an inverter to generate from then changes in will be later than changes in .

f A B C ( , , ) = A B + AC

A A A

A

T

d

A A

&

&

1 B A

C

>1 f

Avoid Static Hazards

• Using a Karnaugh map, look for groups of minterms which do NOT overlap

– These are potential hazards

• Avoid the hazard by introducing additional groups so that no non- overlapping groups remain

• Groups are which do not overlap – Potential hazard

• Introduce the additional term BC to avoid the hazard

A\BC 00 01 11 10

0 1 1

1 1 1

AC + AB

BC AB C

A + +

References

Related documents

 “Platform” FPGAs – implement one or more microprocessor hard/soft cores, with embedded memory and programmable logic.. The

With these types of performance numbers we can confidently state that a global centralized deployment of SAP BusinessObjects Enterprise can be similarly designed to ensure

❖ Real memory chips have a Memory Enable , called chip select Enables a particular memory chip in a multichip large memory ❖ When memory enable is inactive, no operation is

The study is based on the primary data collected from the respondents with the help of a self-administered questionnaire to measure the perception of service quality

Обґрунтування вибору моделі обліку витрат на людський капітал в залежності від обсягів повноважень та обов’язків управлінців

filer has not yet been issued an HMO Certificate of Authority.  Please note that approved rates shall only be applicable to that period of time forward of the date of approval. 

Optimization Process of Biodiesel Production From Nyamplung Seed (Calophyllum inophyllum L) Using In Situ Process and Ultrasonic Assisted.. Widayat, Abdullah, Kanevi Octova

In Angola, Vale (1991) argues SA used its custodianship over Namibia to support UNITA in a civil war against the MPLA government, which was supported by Cuba. In 1988 however,