Abstract
Advancements in CMOS technology enable the integration of a huge number of resources on the same system-on-chip. Managing the consequent growing complexity, including fault tolerance issues in deep submicron technologies, is a hard challenge for hardware designers. Self-organization may represent a viable path toward the development of massively parallel architectures in current and future technologies. This approach is progressively more studied in multiprocessor architectures where, however, a further mind-set shift in terms of programming paradigm is required.
In this article, self-organization and self-adaptiveness are exploited for the design of a coprocessing unit for array computations, supporting floating-point arithmetic. From the experience of previous explorations, an architecture embodying some principle of swarm intelligence to pursue adaptability, scalability, and fault tolerance is proposed. The architecture realizes a loosely structured collection of hardware agents implementing fixed behavioral rules aimed at the best exploitation of the available resources in whatever kind of context without any hardware reconfiguration. Comparisons with off-the-shelf very long instruction word (VLIW) digital signal processors (DSPs) on specific tasks reveal similar performance thus not paying the improved robustness with performance. The multitasking capabilities, together with the intrinsic scalability, make this approach valuable for future extensions as well, especially in the field of neuronal networks simulators.
- M. Abramovici, C. E. Stroud, and J. M. Emmert. 2004. Online BIST and BIST-based diagnosis of FPGA logic blocks. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 12, 12, 1284--1294. Google Scholar
Digital Library
- B. Ahsan, F. Omara, and M. Zahran. 2008. Chip multiprocessor: Challenges and opportunities. In Proceedings of the 6th International Conference on Informatics and Systems (INFOS’08). 54--65.Google Scholar
- G. Angius, C. Manca, D. Pani, and L. Raffo. 2006. Cooperative VLSI tiled architectures: Stigmergy in a swarm coprocessor. In Ant Colony Optimization and Swarm Intelligence. Lecture Notes in Computer Science, Vol. 4150. Springer, 396--403. Google Scholar
Digital Library
- ATMEL Corporation. 2005. DSP Library: User Manual. DRAFT-DPS-12/05. ATMEL Corporation.Google Scholar
- A. Avizienis. 1967. Design of fault-tolerant computers. In Proceedings of the Fall Joint Computer Conference, Vol. 31. 733--743. Google Scholar
Digital Library
- J. Beal. 2012. A dimensionless graceful degradation metric for quantifying resilience. In Proceedings of the IEEE 6th International Conference on Self-Adaptive and Self-Organizing Systems Workshops (SASOW’12). 89--92. Google Scholar
Digital Library
- E. Bonabeau, M. Dorigo, and G. Theraulaz. 1999. Swarm Intelligence, from Natural to Artificial Systems. Oxford University Press. Google Scholar
Digital Library
- M. Brambilla, E. Ferrante, M. Birattari, and M. Dorigo. 2013. Swarm robotics: A review from the swarm engineering perspective. Swarm Intelligence 7, 1, 1--41. DOI:http://dx.doi.org/10.1007/s11721-012-0075-2Google Scholar
Cross Ref
- C. Brunelli, F. Garzia, D. Rossi, and J. Nurmi. 2010. A coarse-grain reconfigurable architecture for multimedia applications supporting subword and floating-point calculations. Journal of Systems Architecture 56, 1, 38--47. Google Scholar
Digital Library
- G. Busonera, S. Carucci, D. Pani, and L. Raffo. 2007. Self-organization on silicon: System integration of a fixed-point swarm coprocessor. In Nature Inspired Cooperative Strategies for Optimization (NICSO 2007). Studies in Computational Intelligence, Vol. 129. Springer, 149--158.Google Scholar
- M. Chean and J. A. B. Fortes. 1990. A taxonomy of reconfiguration techniques for fault-tolerant processor arrays. IEEE Computer 23, 2, 55--69. Google Scholar
Digital Library
- O. Derin, E. Cannella, G. Tuveri, P. Meloni, T. Stefanov, L. Fiorin, L. Raffo, and M. Sami. 2013. A system-level approach to adaptivity and fault-tolerance in NoC-based MPSoCs: The MADNESS project. Microprocessors and Microsystems 37, 67, 515--529. Google Scholar
Digital Library
- G. Di Caro, F. Ducatelle, and L. M. Gambardella. 2004. AntHocNet: An ant-based hybrid routing algorithm for mobile ad hoc networks. In Proceedings of the 8th International Conference on Parallel Problem Solving from Nature (PPSN’04). 461--470.Google Scholar
- M. Dorigo and M. Birattari. 2007. Swarm intelligence. Scholarpedia 2, 9, 1462.Google Scholar
Cross Ref
- M. Dorigo and T. Stützle. 2004. Ant Colony Optimization. Bradford Company, Scituate, MA. Google Scholar
Digital Library
- F. Ducatelle, G. A. Di Caro, C. Pinciroli, and L. M. Gambardella. 2011. Self-organized cooperation between robotic swarms. Swarm Intelligence 5, 2, 73--96.Google Scholar
Cross Ref
- A. Farmahini-Farahani, S. M. Fakhraie, and S. Safari. 2007. SOPC-based architecture for discrete particle swarm optimization. In Proceedings of the 14th IEEE International Conference on Electronics, Circuits, and Systems (ICECS’07). 1003--1006.Google Scholar
- J. A. B. Fortes and C. S. Raghavendra. 1985. Gracefully degradable processor arrays. IEEE Transactions on Computers 34, 11, 1033--1044. Google Scholar
Digital Library
- T. Fukuda, D. Funato, K. Sekiyama, and F. Arai. 1998. Evaluation on flexibility of swarm intelligent system. In Proceedings of the IEEE International Conference on Robotics and Automation, Vol. 4. 3210--3215.Google Scholar
- F. Garzia, W. Hussain, and J. Nurmi. 2009. CREMA: A coarse-grain reconfigurable array with mapping adaptiveness. In Proceedings of the International Conference on Field Programmable Logic and Applications (FPL’09). 708--712.Google Scholar
- M. Glass, M. Lukasiewycz, C. Haubelt, and J. Teich. 2009. Incorporating graceful degradation into embedded system design. In Proceedings of the Design, Automation, & Test in Europe Conference and Exhibition (DATE’’09). 320--323. Google Scholar
Digital Library
- P. P. Grassé. 1959. La reconstruction du nid et les coordinations interindividuelles chez Bellicositermes natalensis et Cubitermes sp. La theorie de la stigmergie: Essai d’interpretation des termites constructeurs. Insectes Sociaux 6, 41--83.Google Scholar
Cross Ref
- F. Gruau, Y. Lhuillier, P. Reitz, and O. Temam. 2004. Blob computing. In Proceedings of the 1st Conference on Computing Frontiers (CF’04). 125--139. Google Scholar
Digital Library
- C. Haubelt, D. Koch, F. Reimann, T. Streichert, and J. Teich. 2010. ReCoNets—design methodology for embedded systems consisting of small networks of reconfigurable nodes and connections. In Dynamically Reconfigurable Systems, M. Platzner, J. Teich, and N. Wehn (Eds). Springer, 223--243.Google Scholar
- H. Hoffmann, J. Eastep, M. D. Santambrogio, J. E. Miller, and A. Agarwal. 2010. Application heartbeats for software performance and health. ACM SIGPLAN Notices 45, 5, 347--348. Google Scholar
Digital Library
- M. Jo, D. Lee, K. Han, and K. Choi. 2014. Design of a coarse-grained reconfigurable architecture with floating-point support and comparative study. Integration, the VLSI Journal 47, 2, 232--241. Google Scholar
Digital Library
- J. Kennedy, R. Eberhart, and Y. Shi. 2001. Swarm Intelligence. Morgan Kaufmann Academic Press. Google Scholar
Digital Library
- A. Khan, S. Laha, and S. K. Sarkar. 2013. A novel particle swarm optimization approach for VLSI routing. In Proceedings of the IEEE 3rd International Advance Computing Conference (IACC’13). 258--262.Google Scholar
- M. M. Khan, D. R. Lester, L. A. Plana, A. Rast, X. Jin, E. Painkras, and S. B. Furber. 2008. SpiNNaker: Mapping neural networks onto a massively-parallel chip multiprocessor. In Proceedings of the IEEE International Joint Conference on Neural Networks (IJCNN’08). 2849--2856.Google Scholar
- C. R. Kube. 1997. Collective Robotics: From Local Perception to Global Action. Ph.D. Dissertation. Department of Computer Science, University of Alberta, Edmonton. Google Scholar
Digital Library
- P. Kuntz and P. Layzell. 1997. An ant clustering algorithm applied to partitioning in VLSI technology. In Proceedings of the 4th European Conference on Artificial Life. 417--424.Google Scholar
- T. Lehtonen, D. Wolpert, P. Liljeberg, J. Plosila, and P. Ampadu. 2010. Self-adaptive system for addressing permanent errors in on-chip interconnects. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 18, 4, 527--540. Google Scholar
Digital Library
- P. R. Lewis, A. Chandra, S. Parsons, E. Robinson, K. Glette, R. Bahsoon, J. Torresen, and Y. Xin. 2011. A survey of self-awareness and its application in computing systems. In Proceedings of the 5th IEEE Conference on Self-Adaptive and Self-Organizing Systems Workshops (SASOW’11). 102--107. Google Scholar
Digital Library
- K. Loukil, N. Ben Amor, M. Abid, and J. Philippe Diguet. 2013. Self-adaptive on-chip system based on cross-layer adaptation approach. International Journal of Reconfigurable Computing 2013, Article No. 6. Google Scholar
Digital Library
- D. Mange, M. Sipper, A. Stauffer, and G. Tempesti. 2000. Toward robust integrated circuits: The embryonics approach. Proceedings of the IEEE 88, 516--541.Google Scholar
Cross Ref
- P. Meloni, G. Tuveri, L. Raffo, E. Cannella, T. Stefanov, O. Derin, L. Fiorin, and M. Sami. 2012. System adaptivity and fault-tolerance in NoC-based MPSoCs: The MADNESS project approach. In Proceedings of the 2012 15th Euromicro Conference on Digital System Design (DSD’12). 517--524. Google Scholar
Digital Library
- J. Von Neumann. 1956. Probabilistic logic and the synthesis of reliable organisms from unreliable components. In Automata Studies, C. Shannon and J. McCarthy (Eds.). Princeton University Press, 43--98.Google Scholar
- S. F. Oberman and M. J. Flynn. 1996. A variable latency pipelined floating-point adder. In Euro-Par’96 Parallel Processing. Lecture Notes in Computer Science, Vol. 1124. Springer, 183--192. Google Scholar
Digital Library
- F. Palumbo, N. Carta, D. Pani, P. Meloni, and L. Raffo. 2012. The multi-dataflow composer tool: Generation of on-the-fly reconfigurable platforms. Journal of Real-Time Image Processing 9, 1, 233--249. Google Scholar
Digital Library
- F. Palumbo, D. Pani, and L. Raffo. 2010. Hybrid switching techniques for heterogeneous traffic support in multi-processers system on chip and massively parallel processors. In Computer Science Research and the Internet, J. E. Morris (Ed.). Nova Science Publishers, 301--340.Google Scholar
- F. Palumbo, D. Pani, L. Raffo, and S. Secchi. 2008. A surface tension and coalescence model for dynamic distributed resources allocation in massively parallel processors on-chip. Studies in Computational Intelligence 129, 335--345.Google Scholar
- D. Pani. 2006. Conception, Design and Evaluation of Novel Digital VLSI Architectures for Computation Intensive Parallel Processing. Ph.D. Dissertation. Department of Electrical and Electronic Engineering, University of Cagliari, Italy.Google Scholar
- D. Pani, G. Barabino, and L. Raffo. 2013. NInFEA: An embedded framework for the real-time evaluation of fetal ECG extraction algorithms. Biomed Tech 58, 1, 13--26.Google Scholar
Cross Ref
- D. Pani and L. Raffo. 2004. A swarm intelligence based VLSI multiplication-and-add scheme. In Parallel Problem Solving from Nature—PPSN VIII. Lecture Notes in Computer Science, Vol. 3242. Springer, 362--371.Google Scholar
- D. Pani and L. Raffo. 2006. Stigmergic approaches applied to flexible fault-tolerant digital VLSI architectures. Journal of Parallel Distributed Computing, Special Issue on Parallel Bioinspired Algorithms 66, 8, 1014--1024. Google Scholar
Digital Library
- D. Pani and L. Raffo. 2010. Self-coordinated on-chip parallel computing: A swarm intelligence approach. In Parallel and Distributed Computational Intelligence. Springer-Verlag, Berlin, 91--112.Google Scholar
- D. Pani, S. Secchi, and L. Raffo. 2010. Self organization on a swarm computing fabric: A new way to look at fault tolerance. In Proceedings of the 7th ACM International Conference on Computing Frontiers. 327--336. Google Scholar
Digital Library
- D. Pani, F. Usai, L. Citi, and L. Raffo. 2011. Real-time processing of tfLIFE neural signals on embedded DSP platforms: A case study. In Proceedings of the 5th International IEEE/EMBS Conference on Neural Engineering (NER’11). 44--47.Google Scholar
- J. H. Patel and L. Y. Fung. 1982. Concurrent error detection in ALU’s by recomputing with shifted operands. IEEE Transactions on Computers 31, 7, 589--959. Google Scholar
Digital Library
- M. Pereira, T. Lo, and L. Carro. 2009. A self-adaptive approach for fault-tolerance in future technologies. In Proceedings of the 1st HiPEAC Workshop on Design for Reliability (DFR’09).Google Scholar
- M. Resnick. 1997. Turtles, Termites, and Traffic Jams: Explorations in Massively Parallel Microworlds. MIT Press. Google Scholar
Digital Library
- E. Rotenberg. 1999. AR-SMT: A microarchitectural approach to fault tolerance in microprocessors. In Proceedings of the 29th IEEE International Symposium on Fault-Tolerant Computing (FTCS’99). 84--91. Google Scholar
Digital Library
- P. K. Rout, D. P. Acharya, and G. Panda. 2010. Digital circuit placement in FPGA based on efficient particle swarm optimization techniques. In Proceedings of the International Conference on Industrial and Information Systems (ICIIS’10). 224--227.Google Scholar
- M. Rubenstein, A. Cornejo, and R. Nagpal. 2014. Programmable self-assembly in a thousand-robot swarm. Science 345, 6198, 795--799.Google Scholar
- E. Sahin, T. H. Labella, V. Trianni, J.-L. Deneubourg, P. Rasse, D. Floreano, L. M. Gambardella, F. Mondada, S. Nolfi, and M. Dorigo. 2002. SWARM-BOT: Pattern formation in a swarm of self-assembling mobile robots. In Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics.Google Scholar
- M. Salehie and L. Tahvildari. 2009. Self-adaptive software: Landscape and research challenges. ACM Transactions on Autonomous and Adaptive Systems 4, 2, Article No. 14. Google Scholar
Digital Library
- C. Sau, D. Pani, F. Palumbo, and L. Raffo. 2012. A nature-inspired adaptive floating-point coprocessing system. In Proceedings of the 2012 Conference on Design and Architectures for Signal and Image Processing (DASIP’12). 1--8.Google Scholar
- R. Schoonderwoerd, O. E. Holland, J. L. Bruten, and L. J. M. Rothkrantz. 1996. Ant-based load balancing in telecommunications networks. Adaptive Behavior 5, 2, 169--207. Google Scholar
Digital Library
- M. Sipper. 1997. Evolution of Parallel Cellular Machines: The Cellular Programming Approach. Springer-Verlag, Heidelberg, Germany. Google Scholar
Digital Library
- F. Sironi, M. Triverio, H. Hoffmann, M. Maggio, and M. D. Santambrogio. 2010. Self-aware adaptation in FPGA-based systems. In Proceedings of the International Conference on Field Programmable Logic and Applications (FPL’10). 187--192. Google Scholar
Digital Library
- R. Sterritt and M. Hinchey. 2010. SPAACE IV: Self-properties for an autonomous & autonomic computing environment——part IV: A newish hope. In Proceedings of the 7th IEEE International Conference and Workshops on Engineering of Autonomic and Autonomous Systems (EASe’10). 119--125. Google Scholar
Digital Library
- M. B. Taylor, J. Kim, J. Miller, D. Wentzlaff, F. Ghodrat, B. Greenwald, H. Hoffman, P. Johnson, J.-W. Lee, W. Lee, A. Ma, A. Saraf, M. Seneski, N. Shnidman, V. Strumpen, M. Frank, S. Amarasinghe, and A. Agarwal. 2002. The Raw microprocessor: A computational fabric for software circuits and general-purpose programs. IEEE Micro 22, 2, 25--35. Google Scholar
Digital Library
- Texas Instruments Inc. 2014. DSPLIB 3.4.0.0 Release Notes. Texas Instruments Inc.Google Scholar
- A. M. Tyrrell. 1999. Computer know thy self!: A biological way to look at fault-tolerance. In Proceedings of the 25th Euromicro Conference, Vol. 2. 129--135.Google Scholar
- A. M. Tyrrell, G. Hollingworth, and S. L. Smith. 2001. Evolutionary strategies and intrinsic fault tolerance. In Proceedings of the 3rd NASA/DoD Conference on Evolvable Hardware. 98--106. Google Scholar
Digital Library
- A. Upegui, C. A. Pena-Reyes, and E. Sanchez. 2005. An FPGA platform for on-line topology exploration of spiking neural networks. Microprocessors and Microsystems 29, 5, 211--223.Google Scholar
Cross Ref
- M. W. Van Tol, Z. Pohl, and M. Tichý. 2011. A framework for self-adaptive collaborative computing on reconfigurable platforms. In Proceedings of the International Conference on Parallel Computing (PARCO’11). 579--586.Google Scholar
- E. Waingold, M. Taylor, D. Srikrishna, V. Sakar, W. Lee, V. Lee, J. Kim, M. Frank, P. Finch, R. Barua, J. Babb, S. Amarasinghe, and A. Agarwal. 1997. Baring it all to software: RAW machines. IEEE Computer 30, 9, 86--93. Google Scholar
Digital Library
- S. Wildermann. 2012. Systematic Design of Self-Adaptive Embedded Systems with Applications in Image Processing. Ph.D. Dissertation. University of Erlangen-Nuremberg.Google Scholar
- S. Yajnik and N. K. Jha. 1997. Graceful degradation in algorithm-based fault tolerant multiprocessor systems. IEEE Transactions on Parallel and Distributed Systems 8, 2, 137--153. Google Scholar
Digital Library
- A. G. Zamorano, J. Timmis, and A. Tyrrell. 2011. A flexible decentralised communication architecture on a field programmable gate array for swarm system simulations. In Proceedings of the 2011 IEEE Congress on Evolutionary Computation (CEC’11). 230--237.Google Scholar
- K. Zhang, Y. Yao, O. Labanni, Z. Lu, X. Wu, and Z. Lu. 2012. A new universal-environment adaptive multi-processor scheduler for autonomous cyber-physical system. In Proceedings of the IEEE/ACIS 11th International Conference on Computer and Information Science (ICIS’12). 373--378. Google Scholar
Digital Library
- X. Zhang, G. Dragffy, A. G. Pipe, and Q. M. Zhu. 2004. Artificial innate immune system: An instant defence layer of embryonics. In Proceedings of the 3rd International Conference on Artificial Immune Systems (ICARIS’04). 302--315.Google Scholar
- Z. Zhang, K. Long, J. Wang, and F. Dressler. 2014. On swarm intelligence inspired self-organized networking: Its bionic mechanisms, designing principles and optimization approaches. IEEE Communications Surveys & Tutorials 16, 1, 513--537.Google Scholar
Cross Ref
Index Terms
Computing Swarms for Self-Adaptiveness and Self-Organization in Floating-Point Array Processing
Recommendations
Floating-point FPGA: architecture and modeling
This paper presents an architecture for a reconfigurable device that is specifically optimized for floating-point applications. Fine-grained units are used for implementing control logic and bit-oriented operations, while parameterized and ...
Reconfigurable Block Floating Point Processing Elements in Virtex Platforms
RECONFIG '11: Proceedings of the 2011 International Conference on Reconfigurable Computing and FPGAsThis paper describes a project undertaken to simplify the implementation of high-throughput, low-power, numerically intensive applications on Virtex platforms. The system is a pipeline composed of block floating point processing elements. These combine ...
Intel® Itanium® floating-point architecture
WCAE '03: Proceedings of the 2003 workshop on Computer architecture education: Held in conjunction with the 30th International Symposium on Computer ArchitectureThe Intel® Itanium® architecture is increasingly becoming one of the major processor architectures present in the market today. Launched in 2001, the Intel Itanium processor was followed in 2002 by the Itanium 2 processor, with increased integer and ...






Comments