Solution is to insert intervening registers that keep

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: t keep signals stable registers require enable signals which now need ports as well µ C device A µ C device B Q EN D EN device A 7 Encode n single-bit device ports using log n bits of a controller port Conflict on device signals (e.g., one signal affects both) D $ enabled decoder: one-hot, input-only device ports registered decoder: input-only (but not one-hot) device ports multiplexor: output-only device ports µC log(n) bits D µC n one-hot signals enable Q device B log(n) bits enable Q EN n register select lines n signals registered decoder enabled decoder data n signals µC log(n) select bits multiplexor 4 8 % . 0 8 % . 0 Partition the address space Assign memory-mapped locations Software Address bus selects device Data bus contains data loads read from the device stores write to the device Can exploit unused bits for device input-only ports # 7 $ $ Problem of port shortage so common port expansion chips exist Easily connect to the microprocessor Timing on ports may be slightly different May not support interrupts & Exploit specialized functions (e.g., UART, timers) Attempt to connect directly to a device port without adding inte...
View Full Document

Ask a homework question - tutors are online