Scalability evaluation of an FPGA-based multi-core architecture with hardware-enforced domain partitioning

We present a scalable architecture for multiple self-contained systems on FPGAs.We use secure bus bridges that offer hardware-enforced domain partitioning.Multiple soft processors can reliably operate from common memory resources.Our modular architecture is suitable for safety- and security-critical applications.We use novel bus observers for detailed evaluation of bus-centric designs. There is a trend towards to dense integration of embedded systems for cost, weight, and power savings. Integration of multiple critical software functions in a single embedded platform requires domain partitioning. Groups of independent software functions exist in isolated domains to maintain individual functional correctness, even in presence of errors. Software solutions such as Real-Time Operating Systems (RTOS) with time and space partitioning are state-of-the-art segregation approaches. As an alternative to these existing solutions, we present a robust, reliable, and efficient architecture with segregation support for safety- and security-critical embedded systems. Our solution hosts different software functions on a platform with as few hardware components as possible: the System-on-a-Chip (SoC) approach.The proposed architecture instantiates multiple self-contained soft processor systems on a single chip. The architecture offers hardware-enforced segregation and is completely transparent to software applications. We demonstrate this aspect by running multiple segregated instances of unmodified off-the-shelf Linux systems from a shared memory device. Since our architecture targets reconfigurable platforms, it is also flexible and can be tailored to application-specific needs at design time.Segregation is achieved with a hierarchical connection of memory busses by secure bus bridges. The bridges perform caching, prefetching, and burst accesses to efficiently avoid temporal conflicts on shared resources. Hence, our secure bridges allow to use soft processors for critical designs.We implement several prototypes and evaluate them by using novel bus observers for characterization of bus-centric architectures. Finally, we show the effectiveness of our implemented optimizations.

[1]  David A. Patterson,et al.  Computer Architecture, Fifth Edition: A Quantitative Approach , 2011 .

[2]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[3]  Reinhold Weicker,et al.  Dhrystone: a synthetic systems programming benchmark , 1984, CACM.

[4]  Miaoqing Huang,et al.  Scalable Memory Hierarchies for Embedded Manycore Systems , 2012, ARC.

[5]  Martin Schoeberl,et al.  Is Chip-Multiprocessing the End of Real-Time Scheduling? , 2009, WCET.

[6]  Capers Jones,et al.  Embedded Software: Facts, Figures, and Future , 2009, Computer.

[7]  Stephen A. Edwards,et al.  Predictable programming on a precision timed architecture , 2008, CASES '08.

[8]  Sven-Ole Voigt,et al.  A multi-core FPGA-based SoC architecture with domain segregation , 2012, 2012 International Conference on Reconfigurable Computing and FPGAs.

[9]  Jing-Yang Jou,et al.  A real-time and bandwidth guaranteed arbitration algorithm for SoC bus communication , 2006, Asia and South Pacific Conference on Design Automation, 2006..

[10]  Francisco J. Cazorla,et al.  Timing effects of DDR memory systems in hard real-time multicore architectures , 2013, ACM Trans. Embed. Comput. Syst..

[11]  Luca Benini,et al.  Performance Analysis of Arbitration Policies for SoC Communication Architectures , 2003, Des. Autom. Embed. Syst..

[12]  Onur Mutlu,et al.  Prefetch-Aware Memory Controllers , 2011, IEEE Transactions on Computers.

[13]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[14]  G.E. Moore,et al.  Cramming More Components Onto Integrated Circuits , 1998, Proceedings of the IEEE.

[15]  Jiri Gaisler A portable and fault-tolerant microprocessor based on the SPARC v8 architecture , 2002, Proceedings International Conference on Dependable Systems and Networks.

[16]  H. Maejima,et al.  Domain Partitioning Technology for Embedded Multicore Processors , 2009, IEEE Micro.

[17]  Reinhard Wilhelm,et al.  The influence of processor architecture on the design and the results of WCET tools , 2003, Proceedings of the IEEE.