Skip to main content

A Built-In Circuit for Self-reconfiguring Mesh-Connected Processor Arrays with Spares on Diagonal

  • Chapter
  • First Online:
  • 263 Accesses

Part of the book series: Lecture Notes in Computer Science ((TCOMPUTATSCIE,volume 11820))

Abstract

This paper presents a built-in self-reconfiguring system for mesh-connected processor arrays where faulty processing elements are compensated for by spare processing elements located on the diagonal. First, an algorithm for reconfiguring the arrays with faulty processing elements is presented. The reliability of the system is analyzed by simulation and compared with that of arrays having spare processing elements on one side. The result shows that under the condition of the same number of spares, the former is fairly higher than the latter. Next, a logical circuit realizing self-reconfiguration by the algorithm is described. The circuit controls interconnections of processing elements and its hardware overhead is shown to be quite small (i.e. less than ten logic gates for each processing element). The proposed system is effective for the case where each processing element is fairly reliable and the small number of spares is sufficient for retaining a high reliability. It is also effective in enhancing the run-time reliability of a processor array in mission critical systems where first self-reconfiguration is required without an external host computer or manual maintenance operations.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Abbreviations

PA:

Processor array

PE:

Processing element

SRS:

Self-reconfiguration system

DSR:

Direct spare replacement

STS:

Single track shifting

RC:

Reconfigurability condition

RA:

Reconfiguration algorithm

References

  1. Schaper, L.W.: Design of multichip modules. Proc. IEEE 80(12), 1955–1964 (1992)

    Article  Google Scholar 

  2. Okamoto, K.: Importance of wafer bonding for the future hype-miniaturized CMOS devices. ECS Trans. 16(8), 15–29 (2008)

    Article  Google Scholar 

  3. Okamoto, K.: Route packets, not wires: on-chip interconnection networks. In: Proceedings of the 38th Design Automation Conference, pp. 684–689 (2001)

    Google Scholar 

  4. Kung, S.Y., Jean, S.N., Chang, C.W.: Fault-tolerant array processors using single-track switches. IEEE Trans. Comput. 38(4), 501–514 (1989)

    Article  Google Scholar 

  5. Mangir, T.E., Avizienis, A.: Fault-tolerant design for VLSI: effect of interconnection requirements on yield improvement of VLSI designs. IEEE Trans. Comput. c-31(7), 609–615 (1982)

    Article  Google Scholar 

  6. Negrini, R., Sami, M.G., Stefanelli, R.: Fault-Tolerance Through Reconfiguration of VLSI and WSI Arrays. MIT Press Sries in Computer Systems. MIT Press, Cambridge (1989)

    Google Scholar 

  7. Koren, I., Singh, A.D.: Fault tolerance in VLSI circuits. IEEE Comput. 23(7), 73–83 (1990)

    Article  Google Scholar 

  8. Roychowdhury, V.P., Bruck, J., Kailath, T.: Efficient algorithms for reconstruction in VLSI/WSI array. IEEE Trans. Comput. 39(4), 480–489 (1989)

    Article  Google Scholar 

  9. Varvarigou, T.A., Roychowdhury, V.P., Kailath, T.: Reconfiguring processor arrays using multiple-track models: the 3 - tracks - 1 - spare - approach. IEEE Trans. Comput. 42(11), 1281–1293 (1993)

    Article  Google Scholar 

  10. Fukushi, M., Fukushima, Y., Horiguchi, S.: A genetic approach for the reconfiguration of degradable processor arrays. In: IEEE 20th International Symposium on Defect and Fault Tolerance in VLSI Systems, pp. 63–71, October 2005

    Google Scholar 

  11. Fukushima, Y., Fukushi, M., Horiguchi, S.: An improved reconfiguration method for degradable processor arrays using genetic algorithm. In: IEEE 21st International Symposium on Defect and Fault Tolerance in VLSI Systems, pp. 353–361, October 2006

    Google Scholar 

  12. Wu, J., Zhu, L., He, P., Jiang, G.: Reconfigurations for processor arrays with faulty switches and links. In: 15th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing, pp. 141–148 (2015)

    Google Scholar 

  13. Qian, J., Zhou, Z., Gu, T., Zhao, L., Chang, L.: Optimal reconfiguration of high-performance VLSI subarrays with network flow. IEEE Trans. Parallel Distrib. Syst. 27(12), 3575–3587 (2016)

    Article  Google Scholar 

  14. Negrini, R., Sami, M., Stefanelli, R.: Fault tolerance techniues for array structures used in supercomputing. IEEE Comput. 19(2), 78–87 (1986)

    Article  Google Scholar 

  15. Sami, M., Stefanelli, R.: Reconfigurable architectures for VLSI processing arrays. Proc. IEEE 74, 712–722 (1986)

    Article  Google Scholar 

  16. Takanami, I., Kurata, K., Watanabe, T.: A neural algorithm for reconstructing mesh-connected processor arrays using single-track switches. In: International Conference on WSI, pp. 101–110, January 1995

    Google Scholar 

  17. Horita, T., Takanami, I.: An efficient method for reconfiguring the 1\(\frac{1}{2}\) track-switch mesh array. IEICE Trans. Inf. Syst. E82-D(12), 1545–1553 (1999)

    Google Scholar 

  18. Horita, T., Takanami, I.: Fault tolerant processor arrays based on the 1\(\frac{1}{2}\)-track switches with flexible spare distributions. IEEE Trans. Comput. 49(6), 542–552 (2000)

    Article  Google Scholar 

  19. Horita, T., Takanami, I.: An FPGA implementation of a self-reconfigurable system for the 1\(\frac{1}{2}\) track-switch 2-D mesh array with PE faults. IEICE Trans. Inf. Syst. E83-D(8), 1701–1705 (2000)

    Google Scholar 

  20. Lin, S.Y., Shen, W.C., Hsu, C.C., Wu, A.Y.: Fault-tolerant router with built-in self-test/self-diagnosis and fault-isolation circuits for 2D-mesh based chip multiprocessor systems. Int. J. Electr. Eng. 16(3), 213–222 (2009)

    Google Scholar 

  21. Collet, J.H., Zajac, P., Psarakis, M., Gizopoulos. D.: Chip self-organization and fault-tolerance in massively defective multicore arrays. IEEE Trans. Dependable Secur. Comput. 8(2), 207–217 (2011)

    Article  Google Scholar 

  22. Takanami, I.: Self-reconfiguring of 1\(\frac{1}{2}\)-track-switch mesh arrays with spares on one row and one column by simple built-in circuit. IEICE Trans. Inf. Syst. E87-D(10), 2318–2328 (2004)

    Google Scholar 

  23. Takanami, I., Horita, T.: A built-in circuit for self-repairing mesh-connected processor arrays by direct spare replacement. In: 2012 IEEE 18th Pacific Rim International Symposium on Dependable Computing, pp. 96–104, November 2012

    Google Scholar 

  24. Takanami, I., Horita, T., Akiba, M., Terauchi, M., Kanno, T.: A built-in self-repair circuit for restructuring mesh-connected processor arrays by direct spare replacement. In: Gavrilova, M.L., Tan, C.J.K. (eds.) Transactions on Computational Science XXVII. LNCS, vol. 9570, pp. 97–119. Springer, Heidelberg (2016). https://doi.org/10.1007/978-3-662-50412-3_7

    Chapter  Google Scholar 

  25. Takanami, I., Fukushi, M.: A built-in circuit for self-repairing mesh-connected processor arrays with spares on diagonal. In: Proceedings of 22nd Pacific Rim International Symposium on on Dependable Computing, pp. 110–117, January 2017

    Google Scholar 

Download references

Acknowledgment

The research is in part supported by Yamaguchi University Fund.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Masaru Fukushi .

Editor information

Editors and Affiliations

Appendices

Appendix A: The proof of Property 2

Notation:

  • RC-STS: reconfigurability condition described in Property 1.

  • RA-STS: the total algorithm consisting of Right-RA and Left-RA.

  • Right-RA: the sub-algorithm of RA-STS for right triangle subarray.

  • Left-RA: the sub-algorithm of RA-STS for left triangle subarray.

Property 2 is proved by a sequence of the following Proposition and Lemmas.

Proposition 1

In processing a column of an array, if flg changes from 0 to 1 at a row, it does not change from 1 to 0 at the succeeding rows. \(sfg=1\) at the begining of a process, and the process ends with \(sfg=0\) if sfg changes from 1 to 0, otherwise with \(sfg=1\).

Proof: This is easily shown from Right-RA.   \(\square \)

Notation: (1) The process that ‘for-statement’ at \(j=j_0 (1\le j_0 \le N)\) and \(i=i_0 (1\le i_0 \le j)\) in Right-RA is executed is denoted as “for-process at \((i_0,j_0)\)”.

(2) flg\(_{i_0 j_0} (1\le i_0 \le j_0)\) denotes the value of flg just after for-process at \((i_0,j_0)\) is executed.

(3) \(d_{i_0 j_0}\)s denote the values after Right-RA has been executed.

Lemma 2

For any \(j (N\ge j \ge 1)\) and any \(i (j\ge i \ge 1)\), \(flg_{i j} = 1\) if and only if \(s_{j}=1\), \(p_{\hat{i} j}=1\) or \(d_{\hat{i} j}=2\) for some \(\hat{i} (j\ge \hat{i} \ge i \ge 1)\).

Proof: From Right-RA the followingt is easily seen. If \(flg_{i j} =0\), \(flg_{i' j} = 0\) for any \(i'\ge i\). Then \(s_{j}=0\), \(p_{i' j}=0 \) and \(d_{i' j}=0\) for any \(i'\ge i\). If \(s_{j}=0\), \(p_{i' j}=0 \) and \(d_{i' j}=0\) for any \(i'\ge i\), \(flg_{i' j} = 0\) for any \(i'\ge i\).   \(\square \)

Lemma 3

  1. 1.

    1-seq(ij) never passes other faulty PEs than PE(ij).

  2. 2.

    2-seq(ij) never passes other faulty PEs than PE(ij).

Proof: (1) 1-seq(ij) is generated downward at (11) in for-process at (ij) from a faulty PE(ij). Hence, \(p_{ij}=1\) and \(flg_{(i+1) j}=0\). Therefore, from Lemma 2 \(p_{\hat{i}j}=0\) for all \(\hat{i} (j \ge \hat{i} \ge i+1)\) and \(s_j=0\), and this means that the 1-seq(ij) never passes other faulty PEs (including the spare S(j)) than PE(ij).

(2) Since a 2-sequence is generated at (7) and (9) in for-process at (ij) from a faulty PE(ij), and it reaches a spare, it is clear that it never passes other faulty PEs than PE(ij).   \(\square \)

Lemma 4

2-sequences neither intersect nor overlap each other.

Proof: It is clear that they never intersect since they go only in the left direction. We suppose that there exist 2-seq(ij) and 2-seq\((i',j') ((i,j)\ne (i',j'))\) which overlap. Then \(p_{ij}=p_{i'j'}=1\) and \(i=i'\). Without loss of generality, it can be assumed that \(j' >j \). Then sfg becomes 0 at (8) in for-process at \((i,j')\) and a sequence of 2’s from PE\((i,j')\) can not reach the spare S(i). This contradicts that there exist 2-seq(ij) and 2-seq\((i',j')\) which overlap.   \(\square \)

Lemma 5

1-sequences neither intersect nor overlap each other. Furthermore, 1-sequences and 2-sequences never intersect each other.

Proof: It is clear that no 1-sequences intersect each other since they go only downward. We suppose that there exist 1-seq(ij) and 1-seq\((i',j')\) \(((i,j)\ne (i',j'))\) which overlap. Then \(p_{ij}=p_{i'j'}=1\) and \(j=j'\) since a 1-sequence is generated at (11). Without loss of generality, \(i'>i \) can be assumed. Then 1-seq(ij) passes the faulty PE\((i',j')\), which contradicts Lemma 3. Next, we suppose that there exist 1-seq(ij) and 2-seq\((i',j')\) which intersect. Then \(i'\ge i\) and \(j' \ge j \), and from the flow of execution in Right-RA 1-seq(ij) is generated after 2-seq\((i',j')\) is generated. If \(i=i'\), 2-seq\((i',j')\) passes the faulty PE(ij), which contradicts Lemma 3. If \(i'>i \), the process (4) in for-process at \((i',j)\) is executed since \(d_{i'j}=2\), and \(flg_{i'j}=1\). Hence, from Proposition 1, \(flg_{ij}=1\). Therefore, the process (10) is not executed in for-process at (ij), and 1-seq(ij) is not generated. This contradicts that there exist 1-seq(ij) and 1-seq\((i',j')\) \(((i,j)\ne (i',j'))\) which overlap.   \(\square \)

Lemma 6

Let \(p_{ij}=1\), that is, PE(ij) be faulty. If \(flg_{(i+1)j}=1\), the downward c-path (if it exists) from PE(ij) is not included in any set of c-paths which satisfies RC-STS described in Property 1.

Proof: Let \(p_{ij}={ flg}_{(i+1)j}=1\). Then, from Lemma 2 \(s_j=1\), \(p_{\hat{i}j}=1\), or \(d_{\hat{i}j}=2\) for some \(\hat{i} (j \ge \hat{i}\ge i+1)\). We will prove by induction on the number of 2-sequences t. If \(t=0\), no \(d_{uv}\) is 2 and hence, \(s_j=1\) or \(p_{\hat{i}j}=1\) for some \(\hat{i}\) (\(j \ge \hat{i} \ge i+1 )\), and it is clear that there is not a downward c-path from PE(ij).

Let \(t\ge 1\). For the case where \(s_j=1\) or \(p_{\hat{i}j}=1\) for some \(\hat{i} (j \ge \hat{i}\ge i+1)\), the proof is similar as above. Otherwise, \(s_j=0\) and \(p_{i' j}=0\) for any \(i' (j \ge i' \ge i+1)\) and \(d_{\hat{i} j}=2\) for some \(\hat{i}\) \((j \ge \hat{i}\ge i+1)\). Then there exists 2-seq\((\hat{i},j')\) for some \(j'\) (\(j '\ge j \)). Just before the 2-seq\((\hat{i},j')\) is generated at (5) to (9) in for-process\((\hat{i}, j')\), the number of 2-sequences is less than t, and \(d_{\hat{i} j'}=0\), \(p_{\hat{i}j'}=1\) and \(flg_{\hat{i}j'}=1\). Therefore, since (4) is not executed but (5) is executed, \(flg_{\hat{i}+1j'}=1\), and from the hypothesis of induction, the downward c-path (if it exists) from PE\((\hat{i},j')\) is not included in any set of c-paths which satisfies RC-STS. This implies that a c-path from faulty PE\((\hat{i},j')\) must be taken in the left direction. However, the downward c-path from PE(ij) intersects the left-directional c-path from PE\((\hat{i},j')\). This implies that the downward c-path (if it exists) from PE(ij) is not included in any set of c-paths which satisfies RC-STS.   \(\square \)

The proof of Property 2. (‘only if’ part): We assume that the algorithm ends with \({sfg}=0\) and suppose that there exists a set S of c-paths which satisfies RC-STS. sfg becomes 0 at (6) or (8) in for-process at some (ij). Then \(p_{ij}=1\) (that is, PE(ij) is faulty) and \(flg=1\) at (5). If \(flg_{(i+1)j}=0\), \(d_{ij}=2\) at (4) and hence, a 2-seq\((i, j')\) for some \(j'\) (\(j<j'\)) passes the faulty PE(ij). This contradicts (2) in Lemma 3. Therefore \(flg_{(i+1)j}=1\). Then, from Lemma 6, S must contains the left-directional c-path from PE(ij). However, there exist faulty PEs in the left direction from PE(ij) since sfg beomes 0, and hence the left-directional c-path for PE(ij) is also not included in S. This contradicts the property of S. Therefore, there exists no set of c-paths which satisfies RC-STS.

(‘if’ part): We assume that the algorithm ends with \(sfg=1\). If \(flg=1\) at (5) in for-process at (ij) for \(p_{ij}=1\) (that is, PE(ij) is faulty), the processes (7) and (9) generate 2-seq(ij) which reaches the spare on the diagonal in the left-directiion from (ij). If \({flg}=0\) for \(p_{ij}=1\), the processe (11) generates 1-seq(ij) which reaches the spare on the diagonal in the downward from (ij). From Lemma 3 these sequences are c-paths from PE(ij). Furthermore, these sequences from faulty PEs neither intersect nor overlap each other. Therefore, the set of 1- and 2-sequences obtained satisfies RC-STS.   \(\square \)

Appendix B-1: The proof of Property 5

Property 5 is proved by a sequence of the following Lemmas.

The following Lemmas 7, 8 and 9 are easily proved, referring to Eqs. (1), (2) and (3).

Lemma 7

  1. (1)

    If \(D_{out}(x,y)=1\), for all \(x' (x'\le x) D_{out}(x',y)=1\).

  2. (2)

    If \(L_{out}(x,y)=1\), for all \(y' (y'\le y)\) \(L_{out}(x,y')=1\).

  3. (3)

    If \(U_{out}(x,y)=1\), for all \(x' (x'\ge x)\) \(U_{out}(x',y)=1\).   \(\square \)

Proof; The statements clearly hold from Eqs. (1), (2) and (3).   \(\square \)

Lemma 8

If \(L_{out}(x,y)=1\), \(D_{out}(x,y)=1\).

Proof: The statement is easily proved from Eqs. (1) and (2).   \(\square \)

Lemma 9

If \(D_{out}(x,y)=1\), \(U_{in}(x,y)=0\).

Proof: If \(D_{out}(x,y)=1\), for any \(x'<x\) \(D_{in}(x',y)= D_{out}(x'+1,y)= 1\) from Lemma 7, and hence \(U_{out}(x',y)=U_{in}(x',y)\) from Eq. (3), and since \(U_{in}(1,y)=0\), \(U_{out}(x',y)=0\) for any \(x'<x\). Therefore, \(U_{in}(x,y)=U_{out}(x-1,y)=0\).   \(\square \)

Lemma 10

For \(y (N\ge y\ge 1)\) and \(x(y+1\ge x \ge 1)\), \(D_{out}(x,y)=1\) if and only if for some \(x'(y+1 \ge x' \ge x)\) \(p_{x'y}=1\) or for some \(x''(y\ge x'' \ge x)L_{in}(x'',y)=1\).

Proof: (‘only if’ part) We will prove by induction on x, decreasing x. The statement holds for \(x=y+1\) since \(p_{y+1y} = D_{out}(y+1,y)\). Let \(x\le y\) and suppose that the statement is true for any \(x'(y+1\ge x' > x)\). Let \(D_{out}(x,y)=1\). If \(D_{in}(x,y)\) \((=D_{out}(x+1,y))=1\), from the hypothesis of induction the statement holds. Hence, let \(D_{in}(x,y)=0\). Then, from Eq. (1) \(p_{xy}=1\) or \(L_{in}(x,y)=1\) and hence, the statement holds.

(‘if’ part) We will prove by induction on x, decreasing x. Since \(p_{y+1y}=D_{out}(y+1,y)\), the statement holds for \(x=y+1\). Suppose that for any \(\hat{x}(y+1\ge \hat{x} > x)\) the statement is true. If for some \(x'(y+1\ge x' > x)\) \(p_{x'y}=1\) or for some \(x''(y\ge x'' > x)L_{in}(x'',y)=1\), from the hypothesis of induction, \(D_{out}(x+1,y)=1\). Hence, from (1) of Lemma 7 \(D_{out}(x,y)=1\). If \(p_{xy}=1\) or \(L_{in}(x,y)=1\), from Eq. (1) \(D_{out}(x,y)=1\).   \(\square \)

Lemma 11

For \(y(N\ge y \ge 1)\) and \(x(y\ge x \ge 1)\), \(L_{out}(x,y)=1\) if and only if for some \(y'(N\ge y'\ge y)p_{xy'}=1\) and \(D_{in}(x,y')=1\).

Proof: (‘only if’ part) Let \(L_{out}(x,y)=1\). Since \(L_{in}(y+1,y)=D_{in}(y+1,y)=0\), we assume \(x\le y\). We will prove by induction on y, decreasing y. Let \(y=N\). Since \(L_{in}(x,N)=0\), from Eq. (2) \(1=L_{out}(x,N)=p_{xN}\cdot D_{in}(x,N)\). Hence, the statement holds for \(y=N\). Suppose that the statement is true for any \(y'(N \ge y' >y \ge 1)\). From Eq. (2) (i) \(L_{in}(x,y)=1\) or (ii) \(p_{xy}=1\) and \(D_{in}(x,y)=1\). If \(L_{in}(x,y)=1\), \(L_{in}(x,y)=L_{out}(x,y+1)=1\). Hence, from the hypothesis of induction, for some \(y'(y'\ge y+1>y)p_{xy'}=1\) and \(D_{in}(x,y')=1\), and the statement holds. If \(p_{xy}=1\) and \(D_{in}(x,y)=1\), the statement clearly holds.

(‘if’ part) From Eq. (2), for some \(y'\ge y\) \(L_{out}(x,y')=1\). Hence, from (2) of Lemma 7 \(L_{out}(x,y)=1\).   \(\square \)

Lemma 12

If \(L_{out}(x,y)=1(y\ge x)\), for some \(x'\) and \(x''(y\ge x' >x'' \ge x)\) and for some \(y'(y' \ge y)p_{x'y'}=p_{x''y'}=1\), that is, PE\((x'y')\) and PE\((x''y')\) are faulty.

Proof: We will prove by induction on x and y. Let \(y=N\). Since \(L_{in}(x,N)=0\), from Eq. (2) \(1=L_{out}(x,N) = p_{xN}\cdot D_{in}(x,N)\). Hence, \(p_{xN}=1\) and \(D_{out}(x+1,\) \(N)=D_{in}(x,N)=1\). Hence, from Lemma 10, for some \(x'(N+1\ge x' \ge x+1>x)p_{x'N}=1\) or for some \(x''\) \((N\ge x''\ge x+1>x)\) \(L_{in}(x'',N)=1\). However, since \(L_{in}(x'',N)=0\), \(p_{x'N}=1(x'> x)\), and since \(p_{xN}=1\), the statement holds for any \(x(y\ge x \ge 1)\) and \(y=N\). Suppose that the statement holds for any \(\hat{y}(N\ge \hat{y} >y)\) and any \(\hat{x}(\hat{y} \ge \hat{x})\) and let \(L_{out}(y,y)=1\). From Lemma 11 for some \(y'(N \ge y'\ge y)\) \(p_{yy'}=1\) and \(D_{in}(y,y')=1\). Hence, \(D_{out}(y+1, y')=D_{in}(y,y')=1\) and from Lemma 10, for some \(x'(y'+1\ge x' \ge y+1)p_{x'y'}=1\) or some \(x'' (y'\ge x'' \ge y+1)\) \(L_{in}(x'', y')=1\). If \(p_{x'y'}=1\), the statement holds since \(p_{yy'}=1\). If \(L_{in}(x'',y')=1\), from Eq. (2) \(L_{out}(x'', y')=1(y'>y)\) and hence by the hypothesis of induction, for some \(x_1\) and \(x_2(y' \ge x_1> x_2\ge x'')\) and some \(y'' (N\ge y''\ge y')p_{x_1y''}=p_{x_2y''}=1\). Hence the statement holds for \(x=y\) and y.

Suppose that the statement holds for any y and any \(\hat{x}\) \((y\ge \hat{x}> x)\), and let \(L_{out}(x,y)=1\). From Lemma 11, for some \(y'(y'\ge y)p_{xy'}=1\) and \(D_{out}(x+1,y')=D_{in}(x,y')=1\). Then from Lemma 10, for some \(x'(y'+1\ge x' \ge x+1)p_{x'y'}=1\) or for some \(x''(y' \ge x''\ge x+1)L_{in}(x'',y')=1\). If \(p_{x'y'}=1\), the statement holds since \(x' > x\) and \(p_{xy'}=p_{x'y'}=1\). If \(L_{in}(x'',y')=1\), from Eq. (2) \(L_{out}(x'',y')=1(x''\ge x+1 > x)\) and by the hypothesis of induction, for some \(x_1\) and \(x_2(x_1> x_2\ge x''> x)\) and for some \(y''(y''\ge y'\ge y)p_{x_1y''} = p_{x_2y''} =1\). Hence, the statement is true.   \(\square \)

Lemma 13

  1. (1)

    If \(d_{xy}=2\) (\(y\ge x\)), for some \(y'(y'\ge y)p_{xy'}=1\) and \(flg_{x+1y'}=1\).

  2. (2)

    If \(d_{xx}=2\), for some \(y'(y'> x)p_{xy'}=1\) and \(flg_{x+1y'}=1\).

  3. (3)

    Under the condition that Right-RA ends with \(sfg=1\), \(d_{xy}=2\) if and only if for some \(y'(y'\ge y)p_{xy'}=1\) and \(flg_{xy'}=1\).

Proof: At the beginning of for-process at (xy),

  1. (i)

    if \(d_{xy}=2\), for some \(y'>yd_{xy'+1}=0\), \(p_{xy'}=1\) and (\(s_{y'}=1\) or \(flg_{x+1y'}=1\)). Then from Lemma 2 if \(s_{y'}=1\), \(flg_{y'y'}=1\) and hence \(flg_{x+1y'}=1\).

  2. (ii)

    if \(d_{xy}=0\), \(p_{xy}=1\) and (\(s_y=1\) or \(flg_{x+1y}=1\)). If \(y=x\), the for-process ends with \({sfg}=0\). Therefore, \(y>x\). Then from Lemma 2, if \(s_y=1\), \(flg_{yy}=1\) and hence \(flg_{x+1y}=1\).

From above, (1) and (2) are proved. (3) is easily proved from (1) and (2).   \(\square \)

Lemma 14

If \(d_{xy}=2\), \(L_{out}(x,y)=1\).

Proof: By induction on x and y. If \(x=y=N\). Since \(d_{NN}=0\), the statement is proved. Suppose that for all \(x'(N\ge x' >x)\) the statement is true, and let \(d_{xN}=2\). From Lemma 13, \(p_{xN}=1\) and \(flg_{x+1N}=1\). From Lemma 2, \(s_N(=p_{N+1N})=1\), for some \(x'(x' \ge x+1>x)p_{x'N}=1\) or \(d_{x'N}=2\). If \(p_{x'N}=1\), from Lemma 10 \(D_{out}(x',N)=1\). If \(d_{x'N}=2\), from the hypothesis of induction \(L_{out}(x', N)=1\), and from Lemma 8 \(D_{out}(x',N)=1\). From Lemma 7 \(D_{in}(x,N)=D_{out}(x+1,N)=D_{out}(x',N)=1\). Since \(p_{xN}=1\), from Lemma 11 \(L_{out}(x,N)=1\).

Suppose that for any \(\hat{x}(N\ge \hat{x} > x)\) and any \(\hat{y}(N\ge \hat{y} >y)\) if \(d_{\hat{x}\hat{y}}=2\), \(L_{out} (\hat{x}, \hat{y})=1\), and let \(d_{xy}=2(x=y)\). From Lemma 13, for some \(y'(y'>y=x)p_{xy'}=1\) and \(flg_{x+1 y'}=1\). Then from Lemma 2 \(s_{y'}=1\), \(p_{x''y'}=1\) or \(d_{x'' y'}=2\) for some \(x''(y'\ge x'' \ge x)\). if \(s_{y'}=1\), \(D_{in}(y', y')=s_{y'}=1\), and then \(D_{out}(y', y')=1\) and \(D_{out}(x'',y')=1\). If \(p_{x'' y'}=1\), from Eq. (1) \(D_{out} (x'', y')=1\). If \(d_{x''y'}=2\), from the hypothesis of induction \(L_{out}(x'',y')=1\), and then from Lemma 8 \(D_{out}(x'',y')=1\). For either case, \(D_{out}(x+1, y')=D_{in}(x,y')=1\). Then since \(p_{xy'}=1\), from Eq. (2) \(L_{out}(x,y')=1\), and hence \(L_{out}(x,y)=1\) (\(x=y\)).

Suppose that for any \(\hat{x}(N\ge \hat{x} > x)\) if \(d_{\hat{x} y}=2\) \(L_{out}(\hat{x},y)=1\) and let \(d_{xy}=2\) (\(\hat{x} > x\)). Then from Lemma 13 for some \(y'(y'\ge y)p_{xy'}=1\) and \(flg_{x+1 y' }=1\). Similarly to the above, \(L_{out}(x,y')=1\), and \(L_{out}(x,y)=1\).   \(\square \)

Lemma 15

(‘only if’ part of Property 5). If \(S_{fg}(x,y)=0\) for some \((x,y)(N\ge y \ge 1, y\ge x\ge 1)\), Right-RA ends with \(sfg=0\).

Proof: Let \(y_0=\max _{y}\{y|S_{fg}(x,y)=0\) for some \(x (y\ge x) \}\) and let \(x_0=\min _{x}\{x| S_{fg}(x,y_0)=0\}\). Let \(x_0 \le y_0\). Then, from Eq. (4) \(p_{x_0y_0}=1\) and \(1=L_{in}(x_0,y_0)=L_{out}(x_0,y_0+1)\). Then from Lemma 11, for some \(y'(N \ge y'\ge y_0+1)p_{x_0 y'}=1\) and \(D_{in}(x_0,y')=D_{out}(x_0+1,y')=1\). Hence, from Lemma 10, for some \(x'(y'+1 \ge x'\ge x_0+1)p_{x'y'}=1\) or for some \(x''(y'\ge x''\ge x_0+1)L_{in}(x'',y')=1\). If \(p_{x'y'}=1\), \(p_{x_0y_0}=p_{x_0 y'}=p_{x'y'}=1\) for \(y'>y_0\) and \(x'>x_0\), and hence there is no c-path from faulty PE\((x_0,y')\) from Lemma 3, that is, Right-RA ends by returning \(sfg=0\) from Property 2. If \(L_{in}(x'',y')=1\), \(L_{out}(x'',y')=1\) from Eq. (2) and hence from Lemma 12 for some \(x_1\), \(x_2(x_1>x_2\ge x''>x_0)\) and some \(y''(y''\ge y'>y_0)p_{x_1y''}=p_{x_2y''}=1\). Therefore, c-paths from PE\((x_2,y'')\) and PE\((x_0,y')\) are only admissible in the left and downward directions, respectively. However, They cross each other (see the figure below). Hence, there are no c-path for them and hence Right-RA ends by returning \(sfg=0\) from Property 2.    \(\square \)

figure c

Lemma 16

(‘if’ part of Property 5). If Right-RA ends with \(sfg=0\), \(\mathrm{S}_{fg}(x,y)=0\) for some (xy).

Proof: If Right-RA ends with \(sfg=0\) in for-process at (xy), \(sfg=0\) at the process (6) or (8). Hence, If \({sfg}=0\) at (6), \(x=y\), \(p_{yy}=1\) and (\(s_y=1\) or \(d_{yy}=2\)). If \(s_y=1\), \(D_{in}(y,y)=s_y=1\) and hence from Eq. (4) \(\overline{S}_{fg}(y,y)=1\).

The case that \(d_{yy}=d_{xx}=2\) is impossible since if so, Right-RA would end with \(sfg=0\) in for-process at \((x,y')\) for some \(y'(y' >y)\).

Now, if \({sfg}=0\) at (8) in for-process at \((x,y)(y>x)\), \(p_{xy}=1\), \(d_{xy}=2\) and (\(s_x=1\) or \(p_{xy'}=1\) for some \(y'(y'<y)\)). Then from Lemma 14 \(L_{out}(x,y)=1\) and hence from Lemma 7 \(L_{in}(x, y')=L_{in}(x,x)=1\). If \(p_{xy'}=1\), from Eq. (4) \(\overline{S}_{fg}(x,y')=1\). If \(s_x=1\), since \(D_{in}(x,x)=s_x=1\), from Eq. 5 \(\overline{S}_{fg}(x,x)=1\).   \(\square \)

From Lemmas 15, 16 and Properties 2, 5 has been proved.

Appendix B-2: The proof of Property 6

Property 6: (\(d_{xy}=2\) if and only if \(L_{out}(x,y)=1\).

(‘only if’ part) is proved by Lemma 14.

(‘if’ part) Let \(L_{out}(x,y)=1\). From Lemma 11 \(p_{xy'}=1\) and \(D_{in}(x,y')=1\) for some \(y'(N\ge y'\ge y)\). By induction on y. Let \(y=N\). Then \(p_{xN}=1\) and \(D_{in}(x,N)=1\). Hence, \(D_{out}(x+1,N)=1\). From Lemma 10 and \(L_{in}(\hat{x},N)=0\) for all \(\hat{x}\), \(p_{x'N}=1\) for some \(x'(x'\ge x+1)\). From Lemma 2 \(flg_{x+1N}=1\) and hence from (3) of Lemma 13 \(d_{xN}=2\), that is, the statement holds for \(y=N\). Suppose that the statement is true for any \(y''(y<y''\le N)\). Since \(D_{out}(x+1,y')=D_{in}(x,y')=1\), from Lemma 10 (i) for some \(x'( x'\ge x+1)p_{x'y'}=1\) or (ii) for some \(x''\) \((y'\ge x''\ge x+1)L_{in}(x'',y')=1\). For the case (i), from Lemma 2 \(flg_{x+1y'}g=1\). Since \(p_{xy'}=1\) and \(y'\ge y\), From (3) of Lemma 13 \(d_{xy}=2\). For the case (ii), \(L_{out}(x'',y'+1)=1\). From the hypothesis of induction, \(d_{x'',y'+1}=2\). Hence, \(d_{x''y'}=2\). From Lemma 2 \(flg_{x+1y'}=1\). Since \(p_{xy'}=1\), from Lemma (1) of Lemma 13 \(d_{xy}=2\).   \(\square \)

Appendix B-3: The proof of Property 7

Lemma 17

\(flg_{xy}=1\) if and only if \(D_{out}(x,y)=1\).

(‘only if’ part) Let \(flg_{xy}=1\), From Lemma 2 if \(s_y=1\), \(s_y=D_{in}(y,y)=D_{out}(y,y)=1\). Hence, from (1) of Lemma 7, \(p_{x'y}=1\) or \(d_{x'y}=2\) for some \(x'(x'\ge x)\). If \(p_{x'y}=1\), from Lemma 10 \(D_{out}(x,y)=1\). If \(d_{x'y}=2\), from Property 6 \(L_{out}(x',y)=1\). From Lemma 8 \(D_{out}(x',y)=1\) and hence, from Lemma 7 \(D_{out}(x,y)=1\).

(‘if’ part) If \(D_{out}(x,y)=1\), from Lemma 10 for some \(x'(y+1\ge x' \ge x)p_{x'y}=1\) or for some \(x''(y\ge x''\ge x)L_{in}(x'',y)=1\). If \(p_{x'y}=1\), from Lemma 2 \(flg_{xy}=1\). If \(L_{in}(x'',y)=1\), from Eq. (2) \(L_{out}(x'',y)=1\). Hence, from Property 6 \(d_{x''y}=2\), and from Lemma 2 \(flg_{xy}=1\).   \(\square \)

Lemma 18

\(U_{out}(x,y)=1\) if and only if for some \(x'( x' \le x)\) \(p_{x'y}=1\) and \(D_{in}(x',y)=0\).

Proof: (’only if’ part). We will prove by induction on x. Let \(x=1\). Since \(U_{in}(1,y)=0\), from Eq. (3) \(U_{out}(1,y)=p_{1y}\cdot \overline{D}_{in}(1,y)=1\). Hence, \(p_{1y}=1\) and \(D_{in}(1,y)=0\). Suppose that for any \(x'(1 \le x'< x)\) the statement holds. Let \(U_{out}(x,y)=1\). From Eq. (3), (i) \(U_{in}(x,y)=1\) or (ii) \(p_{xy}=1\) and \(D_{in}(x,y)=0\). If \(U_{in}(x,y)=1\), \(U_{out}(x-1,y)=U_{in}(x,y)=1\). Hence, from the hypothesis of induction for some \(x'( x' \le x-1<x)\) \(p_{x'y}=1\) and \(D_{in}(x',y)=0\). If \(p_{xy}=1\) and \(D_{in}(x,y)=0\), the statement clearly holds.

(‘if’ part). From Eq. (3) \(U_{out}(x',y)=1\) and from (3) of Lemma 7 \(U_{out}\)\((x,y)=1\).\(\square \)

Property 7: \(d_{xy}=1\) if and only if \(U_{out}(x,y)=1\).

(‘only if’ part) If \(d_{xy}=1\), from Right-RA for some \(x'(x'\le x)p_{x'y}=1\) and \(flg_{x'+1y}=0\). From Lemma 17, \(D_{out}(x'+1,y)=0\). Since \(D_{in}(x',y)=D_{out}(x'+1,y)=0\) and \(p_{x'y}=1\), from Lemma 18 \(U_{out}(x,y)=1\).

(‘if’ part) If \(U_{out}(x,y)=1\), from Lemma 18 for some \(x'( x' \le x)\) \(p_{x'y}=1\) and \(D_{in}(x',y)=0\). Since \(D_{out}(x'+1,y)=D_{in}(x',y)=0\), from Lemma 17 \(flg_{x'+1y}=0\). Then, from Lemma 2 \(s_y=0\), for all \(x''\ge x'+1p_{x''y}=0\) and \(d_{x''y}=0\). Then, from Lemma (3) of Lemma 13, \(flg_{x'+1}=0\) and the process (11) in for-statement at \((x',y)\) in Right-RA is executed, and hence \(d_{xy}=1\).   \(\square \)

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer-Verlag GmbH Germany, part of Springer Nature

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Takanami, I., Fukushi, M. (2019). A Built-In Circuit for Self-reconfiguring Mesh-Connected Processor Arrays with Spares on Diagonal. In: Gavrilova, M., Tan, C. (eds) Transactions on Computational Science XXXIV. Lecture Notes in Computer Science(), vol 11820. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-59958-7_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-59958-7_7

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-59957-0

  • Online ISBN: 978-3-662-59958-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics