This Article 
 Bibliographic References 
 Add to: 
Design of Balanced and Constant Weight Codes for VLSI Systems
May 1998 (vol. 47 no. 5)
pp. 556-572

Abstract—A constant weight, w, code with k information bits and r check bits is a binary code of length n = k + r and cardinality 2k such that the number of 1s in each code word is equal to w. When $w = \lfloor n/2 \rfloor,$ the code is called balanced. This paper describes the design of balanced and constant weight codes with parallel encoding and parallel decoding. Infinite families of efficient constant weight codes are given with the parameters k, r, and the "number of balancing functions used in the code design," p. The larger p grows, the smaller r will be; and the codes can be encoded and decoded with VLSI circuits whose sizes and depths are proportional to pk and log2p, respectively. For example, a design is given for a constant weight w = 33 code with k = 64 information bits, r = 10 check bits, and p = 8 balancing functions. This code can be implemented by a VLSI circuit using less than 4,054 transistors with a depth of less than 30 transistors.

[1] V. Akella, N.H. Vaidya, and G.R. Redinbo, “Limitations of VLSI Implementation of Delay-Insensitive Codes,” Proc. 26th Int'l Symp. Fault-Tolerant Computing (FTCS-26), pp. 208-217, 1996.
[2] S. Al-Bassam and B. Bose, “On Balanced Codes,” IEEE Trans. Information Theory, vol. 36, pp. 406-408, Mar. 1990.
[3] S. Al-Bassam and B. Bose, “Design of Efficient Balanced Codes,” IEEE Trans. Computers, vol. 43, no. 3, pp. 362-365, Mar. 1994.
[4] N. Alon, E.E. Bergmann, D. Coppersmith, and A.M. Odlyzko, “Balancing Sets of Vectors,” IEEE Trans. Information Theory, vol. 34, pp. 128-130, Jan. 1988.
[5] M. Blaum, ed., Codes for Detecting and Correcting Unidirectional Errors.Los Alamitos, Calif.: IEEE CS Press, June 1993.
[6] M. Blaum and J. Bruck, "Delay-Insensitive Pipelined Communication on Parallel Buses," IEEE Trans. Computers, vol. 44, no. 5, pp. 660-668, May 1995.
[7] B. Bose, "On Unordered Codes," IEEE Trans. Computers, vol. 40, no. 2, pp. 125-131, Feb. 1991.
[8] R.M. Capocelli, L. Gargano, and U. Vaccaro, “Efficient$q$-ary Immutable Codes,” Discrete Applied Mathematics, vol. 33, pp. 25-41, 1991.
[9] T.H. Cormen,C.E. Leiserson, and R.L. Rivest,Introduction to Algorithms.Cambridge, Mass.: MIT Press/McGraw-Hill, 1990.
[10] J.P. Hayes, Digital System Design and Microprocessors. McGraw-Hill, 1984.
[11] Intel Corp., i860 64-Bit Microprocessor, 4, 1989.
[12] D.E. Knuth, “Efficient Balanced Codes,” IEEE Trans. Information Theory, vol. 32, pp. 51-53, Jan. 1986.
[13] J. Kolodzey, "Cray-1 Computer Technology," IEEE Trans. Components, Hybrids, and Manufacturing Technology, vol. 4, pp. 181-186, June 1981.
[14] F.J. MacWilliams and N.J.A. Sloane, The Theory of Error Correcting Codes. North-Holland, 1977.
[15] K. Matsuzawa and E. Fujiwara, "Masking Asymmetric Line Faults Using Semi-Distance Codes," Proc. FTCS-18, pp. 354-359, 1988.
[16] H.S. Stone and J. Cocke, "Computer Architecture in the 1990s," Computer, vol. 24, no. 9, pp. 30-38, Sept. 1991.
[17] J. Tabor, “Noise Reduction Using Low Weight and Constant Weight Coding Techniques,” Technical Report AI-TR 1232, MIT Artificial Intelligence Laboratory, June 1990.
[18] L. Tallini, L. Merani, and B. Bose, "Balanced Codes for Noise Reduction in VLSI Systems," Digest of Papers: The 24th Int'l Symp. Fault-Tolerant Computing, pages 212-218, June 1994.
[19] L.G. Tallini, R.M. Capocelli, and B. Bose, “Design of Some New Efficient Balanced Codes,” IEEE Trans. Information Theory, vol. 42, pp. 790-802, May 1996.
[20] L.G. Tallini and B. Bose, "Balanced Codes with Parallel Encoding and Decoding," Technical Report 96-60-6, Dept. of Computer Science, Oregon State Univ., Corvallis, May 1996.
[21] T. Verhoeff, "Delay-Insensitive Codes—An Overview," Distributed Computing, vol. 3, pp. 1-8, 1988.

Index Terms:
Constant weight codes, balanced codes, parallel encoding, parallel decoding, VLSI systems.
Luca G. Tallini, Bella Bose, "Design of Balanced and Constant Weight Codes for VLSI Systems," IEEE Transactions on Computers, vol. 47, no. 5, pp. 556-572, May 1998, doi:10.1109/12.677239
Usage of this product signifies your acceptance of the Terms of Use.