
Global Output Enable (GOE) Module
7-11
The circuits described in the first two stages provide you with the
background information needed to understand the functionality of the
final design; the second circuit is not an actual GOE module circuit.
The circuit shown in Figure 7.5 on page 7-15 is a basic functional
circuit that generates the output enable signals. This simple design
is not sufficient to meet the timing requirements of a high
performance system. However, this circuit is described to explain the
functions of the different circuit components. In addition, you can use
this circuit during ATPG, since it is fully testable.
The circuit shown in Figure 7.6 on page 7-16 is the intermediate
design, with timing improvements implemented to solve some of the
performance problems inherent in the basic circuit.
The circuit shown in Figure 7.7 on page 7-17 is the final design. It
contains several timing-oriented optimizations, but is complex and
difficult to understand if you have not read the descriptions of the
previous two circuits. You should use this circuit in your design to
maximize performance. However, it is not well suited for ATPG, as it
is not fully scan testable.
Note that the first circuit should only be used for ATPG work. The last
circuit should be the circuit built in silicon.
The GOE module arbitrates between modules that drive the TR4101
data bus, DATAP[31:0]. As shown in Figure 7.9, on page 7-19, these
modules are likely to be one of the external coprocessors, on-chip
memory, or cache memory. To perform this arbitration and prevent
contention between the modules, the GOE module develops output
enable signals, only one of which is active at any one time.
All output enable signals are synchronous and valid on a cycle-by-cycle
basis. As such, they are ultimately driven by data in registers (flip-flops).
The logic that drives the enable signals must also pass through decoder
logic that guarantees only one enable signal at a time is active. The
decoder logic can be placed before or after the registers; placement is
governed by timing concerns.