4.1. How to Test Vertical & Horizontal PIPs
When the hex lines propagate continuously in the horizontal or vertical direction, a cycle structure will eventually be formed. The corresponding equation for this cyclic structure in the horizontal direction is described as follows:
For
in
Figure 7, according to Equation (
2), if the hex line propagates to the left along the horizontal direction without crossing the loop-back area, the coordinate of the ending point is
, where
p is the number of repetitions propagated before crossing the left-side loop-back area. After that, the coordinate of the ending point becomes
, where
q is the number of repetitions propagated after crossing the left-side loop-back area but before crossing the right-side loop-back area. When the loop-back operation occurs twice, it means the hex line will propagate from the right to the left. Then the coordinate of the ending point becomes
, and the horizontal distance between this point and
is
where,
is a positive integer. Obviously, the X-axis coordinate of the nearest point
B to
is
where % means residual operation.
If
, multiple rounds of propagation are needed to make the final ending point back to
. Therefore, the number of iterations is defined as
where
.
Similarly, in the vertical direction, the Y-axis coordinate of the nearest point
C which is closest to
is
After
N rounds of propagation, an end-to-end cycle structure will be formed, where
. The value of
N is defined as
A large number of cycles described above can be established to cover all hex lines and hex PIPs in the horizontal and vertical directions. However, such cycle structure cannot be controlled and observed because of having no input and output terminals. Therefore, glue logics used to apply test stimulus and control the transmission of the measured signal need to be inserted as shown in
Figure 8. The glue logic which is a buffer in this paper is usually implemented by LUT (look-up table) in the CLB tile. In addition, a PIP should be removed from each cycle. The input and output terminals are provided to the enclosed cycle, and then the unclosed cycle can be further cascaded with other similar structure. After being cascaded through the cycle structure, all hex PIPs in the horizontal and vertical directions are testable.
4.2. How to Test Oblique PIPs
As described in the traditional test structure shown in
Figure 9, the PIPs under test, like the single line cascade pattern in Wang et al. [
6], constitute an end-to-end cascade structure.
Since parts of the hex lines have no PIP in the oblique direction, propagating along the oblique direction will inevitably be connected to a dead end, where the cascade structure can no longer be extended. Hence, it is impossible to construct traditional cascade structure for the hex PIPs in the oblique direction.
Taking into account that the hex PIPs in the oblique direction can hardly be cascaded in the entire circuit, this paper presents a new test structure, through which the hex PIPs can be tested in parallel ways, as shown in
Figure 10. Coordinate method is also used to construct such structure. The new test structure contains three parts, that is, stimulus transmission path, PIPs under test, and response transmission path.
A flip-flops chain with taps constitutes the stimulus transmission path. Each flip-flop outputs to the next one along the chain to carry the stimuli, whereas the stimuli are sent through the taps in the chain to the corresponding PIPs. Then the PIPs under test obtain global controllability through the flip-flops chain with taps.
Since the test response cannot be output in parallel without sufficient IO resources, this paper refers to the scanning chain test structure in DFT (design for test) to design the response transmission path. A 2:1 multiplexer with a control terminal is inserted at the input of each flip-flop in the chain. By these multiplexers, the response transmission path can alternately implement parallel input and serial output, which makes the tested PIPs globally observable.
The two flip-flop chains shown in
Figure 10 can be implemented in CLB tiles. The hex PIPs under test are connected to these two flip-flop chains for rich observability and controllability. The tile position of the flip-flops is calculated by the coordinate method, and the coordinates of the corresponding flip-flops in the stimulus transmission path are obtained by the Equations (
1)–(
8).
However, it is difficult to cascade the hex PIPs in the oblique direction globally, partial-cascade plan with enclosed cycle is a good choice.
Figure 11 divides the island-style FPGA into different regions. All these sections are loop-back areas except section A. The distribution of partial-cascade structure is divided into three cases, that is, in section A, connected with tiles at the boundary, and connected with tiles at the corner.
If the island-style FPGA is borderless, the partial-cascade structure can migrate to anywhere. However, since the imaginary tiles outside the boundary indicated by the dotted line cannot be tested, as shown in
Figure 12, the planned partial-cascade structure cannot be realized anymore in the loop-back areas. It is necessary to reconstruct the partial-cascade structure in the loop-back areas. Take the right boundary (Section D) and the upper right boundary (Section H) as examples, as shown in
Figure 13, the corresponding test structures need to be reconstructed to connect to other parts of the partial-cascade structures in section A.
Assume that the coordinate of the new starting point is
, according to Equation (
4), the coordinates of the two adjacent tiles for Section D shown in
Figure 13a are
and
, respectively. Similarly, according to Equation (
4) or Equation (
6), the coordinate of the upper right tile for Section H shown in
Figure 13b is
or
, depending on the convenience of the designer.
Through these partial-cascade structures, an enclosed cycle can be formed again, which is very helpful for the generation of test patterns. Furthermore, all the coordinates of the corresponding tiles can be obtained by the Equations (
1)–(
8).