System Level Design Languages for PSoC Architectures

The Programmable System-on-Chip (PSoC) technology revolution has been made possible by continuing exponential increase in integrated circuits’ (ICs) integration levels. Indeed, complex electronic systems that not so long ago would have been implemented as complex printed circuit boards, with many discrete heterogeneous components, can now be replaced by miniaturised single chip solutions with tens of millions of gates on-chip. However, it is already apparent that the main restrictions facing the semiconductor industry are not the availability of hardware and chip area, but the cost of system design, in terms of both time to market for new systems, and the Non-Recurring-Engineering (NRE) costs for chip fabrication.

Current methods for chip design, test and verification, however, do not scale well to the PSoC concept. This has given rise to a gap between the increasing silicon integration levels and the ability of designers to exploit them rapidly in system design. With this, PSoC programming is nowadays characterised by a plethora of tools and languages stretching from high level languages in which system configurations are described and synthesised from behavioural or algorithmic descriptions (e.g. SystemC), to structural tools in which system configurations are synthesised from the assembly of pre-designed library components. The former allow for fast design times but still result in relatively low levels of hardware efficiency, whereas the latter achieve high performance at the expense of longer design times and the requirement for specialised and often scarce expertise.

Traditionally, system designers chose between different design tools according to their cost, performance and ease of use. The latter is a crucial factor in gaining competitive advantage through fast times to market in today’s tough computer chip market. The view taken in this project is that the quest for the “one” single system design language, capable of attaining both satisfactory levels of performance and ease of use, is an elusive target. For this, the project proposes a multi-language design framework based on a combination of complementary design languages and environments that harness the strengths of each language/environment while avoiding their limitations. The research will develop standards for a multi-language system design paradigm. In particular, the crucial issue of communication between different languages/environments will be addressed.

Supervisor: Dr. Khaled Benkrid

Click here to e-mail me about this project