ele2mic lecture 19 multiplexor - data selector demultiplexor - data distributor external address bus...

36
ELE2MIC Lecture 19 • MULTIPLEXOR - DATA SELECTOR • DEMULTIPLEXOR - DATA DISTRIBUTOR • External Address Bus • Timing Diagrams • Address Decoding using a 74LS138

Upload: blake-flynn

Post on 05-Jan-2016

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

ELE2MIC Lecture 19• MULTIPLEXOR - DATA SELECTOR

• DEMULTIPLEXOR - DATA DISTRIBUTOR

• External Address Bus

• Timing Diagrams

• Address Decoding using a 74LS138

Page 2: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Multiplexor - Data Selector

• Multiplex (MUX) many inputs to one output

• Switch selects the one signal source from many input signals.

• Like Stereo HiFi source selection switch

Page 3: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Two Input Multiplexor

Output = (Input0 & Select#)

| (Input1 & Select)

Two Input MuxTruth Table

OutputSelectInput 00Input 11

Page 4: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Four Input Multiplexor4 Input MultiplexorTruth TableSelect Line:

Output01Input 000Input 110Input 201Input 311

Page 5: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Eight Input Multiplexor

Eight Input MultiplexorTruth Table

OutputSelect Line:012

Input 0000Input 1100Input 2010Input 3110Input 4001Input 5101Input 6011Input 7111

Page 6: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

74F151 8-Input MUX

Page 7: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

74F151 8-Input MUX

Pin Names and Loading / Fanout

Page 8: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Mux vs DeMux

Page 9: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

AVR On-Chip SRAM Timing

Page 10: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

AVR Data Ram

• When 4KB is enough RAM for an application, the On-Chip SRAM is sufficient.

• When 4KB is insufficient, an external RAM chip can be used to expand the address range to 64K bytes.

• There are four memory configuration options for external RAM.

Page 11: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

AVR External Data Ram

• By setting the XMEM bit to 1, the eXternal MEMory interface is enabled, and the dedicated external memory control lines become active.

• The dedicated controls are ALE#, RE#, WE# and the multiplexed address & data bus bits 0..7 and the address bits 8..15 take control, overriding the port A, port C and port G (pins 0..2) functions.

Page 12: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

AVR External Data Ram

• The dedicated control signals are:

• RE# - Read Enable - Active Low– Data is read from the external memory (or

device) into the AVR microcontroller.

• WE# - Write Enable - Active Low– Data is written from the AVR to the external

memory (or device).

Page 13: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

AVR External Data Ram

• ALE - Address Latch Enable - Active High.

• When ALE transitions high, the Memory Address Register is asserted onto the Multiplexed Address & Data bus lines

• the bus enters a write-address phase

• the address is latched into an external address latch which is used to form an system’s external address bus.

Page 14: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

AVR External Data Ram

• ALE - Address Latch Enable - Active High.

• When ALE is low, a data phase commences and data can be read or written to the external memory or device.

• (external in this context refers to off-chip memory)

Page 15: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

AVR External Address Latch

Page 16: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

AVR External Mem Timing

Page 17: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

AVR External Mem Timing

Page 18: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

68HC11 External Address Latch

Page 19: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

HC11 Strobe Timing Diagram

Page 20: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Applications of a de-multiplexor

• The Memory Chip Select device used on the original IBM PC is a 74xx138 de-multiplexor.

• The 74LS138 is used to activate 1 of 8 lines based on the conditions of the three binary select inputs A, B & C, and the three enable inputs.

• The 74LS138 Outputs are “Active Low”.

Page 21: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

74LS138 8-Output DEMUXDe-Multiplex one input to many outputs -Reverse operation of a multiplexor74LS138 Truth Table

Page 22: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

DeMultiplexor• The 74LS138 can be

implemented by the logic shown.

• The 54LS138 is identical in function, but can operate over the “Mil-spec” -55°C to 125°C Temperature Range.

• The 74LS138 can operate over the Commercial 0°C - 70°C Temperature Range.

Page 23: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Memory Select

Page 24: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Address Decoding & Chip Select

• A15 -> G1#, E -> G, A14 -> A2, A13 -> A1

• R/W# -> A0

• Chip is enabled when A15 = 0 & E is High

• Y2 = (A14#) & (A13) & Write (R/W#=0) & E

• Y3 = (A14#) & (A13) & Read (R/W#=1) & E

• Y4 = (A14) & (A13#) & Write (R/W#=0) & E

• Y5 = (A14) & (A13#) & Read (R/W#=1) & E

Page 25: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Write Data Timing Diagram

Page 26: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

EEPROM Technology (1)

Page 27: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

EEPROM Technology (2)

Erasure of Cells is performed by providing a tunnelling voltage to the control gate which causes the charge on the floating gate to be removed. When read, each cell returns a logical ‘1’ value.

Page 28: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

EEPROM Technology (3)

Programming of Cells is performed by providing a tunnelling voltage to the control gate which causes the charge to be placed on the floating gate. The write process writes the ‘0’s into each cell.

Page 29: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138
Page 30: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138
Page 31: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Logic Family - Propagation Delay (H-L)

Page 32: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Logic Family - Propagation Delay (L-H)

Page 33: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Logic Family - Propagation Delay (3)

Page 34: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Bus Design RulesBus lines have very low line impedances (20 .. 40 Ohms).

• Bus lines have to be terminated to prevent line reflections (signal distortion, circuit malfunctions due to undershoots).

• Take care of propagation times (25 ns/m). Settling time of signals on TTL-type buses is 2 x tp (no incident wave switching).

• Take care of control lines (clock, read, write, etc.).

• Provide shielding between control lines and data / address lines.

Page 35: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Bus Design Rules• A multiplexed data and address bus reduces design problems (50% less signal lines and 50% less line drivers).

• Driver output current is 100 mA/line. Provide adequate and low inductance GND return path (simultaneous switching)!

• Rule of thumb: 25% of all backplane connector pins have to be GND lines!

• Use multilayer boards with separate GND and Vcc plane for backplanes.

Page 36: ELE2MIC Lecture 19 MULTIPLEXOR - DATA SELECTOR DEMULTIPLEXOR - DATA DISTRIBUTOR External Address Bus Timing Diagrams Address Decoding using a 74LS138

Acknowledgements• Altium Protel 98, DXP or Altium 6 to create these

schematic diagrams

• Logic Timing Diagrams are from Texas Instruments (TI) Logic Selection Guide - Digital Design Seminar

• National Semiconductor data sheets 74LS138.

• http://www.sea.vg/mic/2007/Atmel/Atmega128ManualDoc2467.pdf

• Paul Main - sea.net.au, October 2007