Fixing the Address Decoding on the Version 1.1/1.11 Board


Version 1.1 and 1.11 of the Handy Board contain a bug which prevents the Expansion Board from being fully utilized. This page explains the bug and gives directions for fixing already-build boards.

The Interactive C library files and runtime module being distributed for the Handy Board do require that this fix be performed. Note: The Version 1.0 board does not have the bug.


Nature of the Addressing Bug

U6, the 74hc138 chip, is used to select the motor outputs and digital inputs on the main board, and other input/output latches on the expansion board. This chip is enabled when three signals are asserted. As it is wired on the version 1.1/1.11 boards, the three signals are A15 low, A14 low, and the E clock high. Thus the chip is enabled during any reads or writes to addresses in the range $0000 to $3FFF.

This is incorrect because the 6811's internal RAM and register bank is in the part of this range (i.e., $0000 to $00FF for the RAM, and $1000 to $103F for the registers). Whenever one of these addresses is accessed, the signal lines cause the 'hc138 to be enabled, and values may be written to latches hooked up to this chip.

The solution is to invert the sense of the A14 line. Then the 'hc138 will be enabled only for addresses $4000 to $7FFF. These addresses do not overlap with other important pre-defined points in the 6811 addressing range, so it can safely be assumed that any reads and writes to that range are intended for latches hooked up to the 'hc138 chip.

Fixing the Bug

Fortunately there is a spare, unused inverter on the 'hc04 chip. The board fix wires the inverter so that the 'hc138 chip is presented with ~A14 rather than A14.

The board rework involves three trace cuts and three jumpers. This job can easily be performed on the solder side of already assembled boards.

Click on the diagrams below to see where to cut the traces and where to wire the jumpers. Again, these fixes are done on the solder side (bottom) of the Handy Board PCB.



Click here to see which traces to cut.


Click here to see where to wire jumpers.


<fredm@media.mit.edu>
Last modified: Mon Sep 25 22:20:50 1995