|Core Services: A new design methodology for MPSoCs
||My MSc thesis for the Microelectronics System Design MSc at University of Southampton. Extended Xilinx’s high-end FPGA platform with a Web Services inspired mechanism for interoperable on-chip communication which supports dynamic reconfiguration, fault tolerance and run-time mapping.
||Multiprocessor SoC, Platform based design, Web Services, CoreConnect, Xilinx, FPGA, AES, MP3
Complete (April-October 2006)
|Significant research effort in platform based design has given numerous interesting
and innovative solutions to some of the recent VLSI design automation problems.
Emerging Multi-Processor System-on-Chips (MPSoC) feature reconfigurable
components and hierarchical busses or Networks-on-Chips as communication
Core Services methodology reported in this dissertation uses mechanics inspired by
Web Services that most software engineers are already familiar with to exploit
efficiently dynamic partial reconfiguration and run-time mapping of current Systemon-
Chips (SoCs) to provide guaranteed performance increase and fault tolerance ondemand.
Core services can be efficiently implemented in platforms with
communication infrastructures including busses and network-on-chips.
Core Services define a function-level abstraction of the underlying hardware
processing elements and a resource management mechanism (Service Broker)
which optimises at run-time the mapping of functionality to available processing
resources. Service Broker also measures the frequency of requests and configures
reconfigurable elements to increase system’s performance. Fault tolerance is
considered as a resource management problem and thus solved transparently by the
Core Services framework.
We validate Core Services methodology by applying it on Xilinx’s reconfigurable
platform for high-end FPGAs. The stack of software and hardware components for
communication, data management and function virtualization is implemented and
evaluated. A user-friendly application interface (API) and a powerful device driver for
MontaVista embedded Linux are provided. Hardware and software components are
created automatically by an easy to use platform building application able to run on
Windows and UNIX workstations. The platform is being evaluated with two
computationally intensive applications, AES encryption and MP3 decoding that get
accelerated in different levels of granularity. We conclude by presenting our
benchmarking results on a complex use case of these applications.
| The final report of my dissertation
|Professor Bashir Al-Hashimi's home page
|Paul Rosinger's home page