Abstract
Parts of a self-organizing map (SOM)-based quantizer can be performed in parallel, i.e., distance calculation between an input pixel and a group of codewords or processing elements (PEs), and updating codewords. To search for the best matching unit (BMU) whose distance is the minimum, all distances are inevitably required to compare with each other. It is true that a group of comparators and registers can be instantiated with equal size to the distances (which is equivalent to the number of PEs) and performed in a multistage manner to come up with the minimum distance and its index. In this way, the algorithm requires n = log2 C clock cycles, where C is the number of PEs and \(\sum\nolimits_{k=0}^{n-1}{2^k}\) are the number of comparators and registers. In this paper, we propose a novel hardware centric algorithm with the objective to accelerate the BMU searching stage of the SOM-based quantizer. In a simple form, the algorithm relies on using a PE’s distance as an address of a memory to store its index. Simultaneously with storing indices of all PEs, the states of all ‘non-empty’ addresses within the memory are prepared. In this way, it can be stated that the position of the first non-empty state corresponds to the memory address whose content is the BMU index. The approach to find the first position of the non-empty state within a single clock cycle is also detailed. The algorithm is also adapted to make it more feasible to realize on an FPGA platform. The synthesis results compared with the conventional BMU searching indicate that the FPGA resource requirements of the algorithm are 1.8 and 1.57 times in terms of slices and LUT usages, respectively. In terms of acceleration, the algorithm outperforms the conventional ones by a factor of 1.8 for a test image of size 512 × 512 pixels.
Similar content being viewed by others
References
Appiah, K., Hunter, A., Meng, H., Yue, S., Hobden, M., Priestley, N., Hobden, P., Pettit, C.: A binary self-organizing map and its FPGA implementation. In: Proceedings of International Joint Conference on Neural Networks, Atlanta, Georgia, USA, June 14–19 (2009)
Kanjanawanishkul, K., Uyyanonvara, B.: Novel fast colour reduction algorithm for time-constrained applications. J. Visual Commun. Image Reconstr. 16(3), 311–332 (2005)
Kohonen, T.: The self-organizing map. Proc. IEEE. 78, 1464–1480 (1990)
Kohonen, T., Oja, E., Simula, O., Visa, A., Kangas, J.: Engineering applications of the self-organizing map. Proc. IEEE. 84, 1358–1384 (2002)
Kurdthongmee, W.: Design and implementation of an FPGA-based multiple-colour LED display board. J. Microprocess. Microsyst. 29(7), 327–336 (2005)
Kurdthongmee, W.: A novel Kohonen SOM-based image compression architecture suitable for moderate density FPGAs. Image Vision Comput. 26(8), 1094–1105 (2008)
Kurdthongmee, W.: A novel hardware-oriented Kohonen K-SOM image compression algorithm and Its FPGA implementation. J. Syst. Archit. 54(10), 983–994 (2008)
Peiris, V., Hochet, B., Declercq, M.: Implementation of a fully parallel Kohonen map: a mixed analog digital approach. In: Proceedings of IEEE World Congress on Computational Intelligence, Orlando, FL, USA. 4, pp. 2064–2069 (1994)
Ramirez-Agundis, A., Gadea-Girones, R., Colom-Palero, R.:A hardware design of a massive-parallel, modular NN-based vector quantizer for real-time video coding. Microprocess. Microsyst. 32(1), 33–44 (2008)
Soudris, D., Zervas, N.D., Argyriou, A., Dasygenis, M., Tatas, K., Goutis, C.E., Thanailakis, A.: Data-reuse and parallel embedded architecture for low-power, real-time multimedia applications. In: Proceedings of 10th International Workshop PATMOS, 1918, 243–254 (2000)
Sudha, N., Srikanthan, T., Mailachalam, B.: A VLSI architecture for 3D Self-organizing map based colour quantization and its FPGA implementation. J. Syst. Archit. 48(11–12), 337–352 (2003)
Sudha N (2004) An ASIC implementation of Kohonen’s map based colour image compression. J. Real Time Imaging 10(1), 31–39
Sourceforge,“mprfgen”: A multi-port memory generator. http://sourceforge.net/projects/mprfgen/ (2013)
Acknowledgments
This paper was proof-read by Assoc. Prof. Dr. David J. Harding and Dr. Joab Winkler. The author would like to thank Xilinx, Inc. for providing the free-of-charge Xilinx’s ISE 14.3 tools which were mainly used during the course of experimentations.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Kurdthongmee, W. A hardware centric algorithm for the best matching unit searching stage of the SOM-based quantizer and its FPGA implementation. J Real-Time Image Proc 12, 71–80 (2016). https://doi.org/10.1007/s11554-013-0387-5
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11554-013-0387-5