LImbiC: An adaptable architecture description language model for developing an application-specific image processor

Due to their ease of integration and widespread adoption, General Purpose Processors (GPP) are presently used in a wide range of applications. However, the highly flexible nature of a GPP leads to overhead in terms of power, performance and area for a specific application. Another approach, proposed by this paper, is to use Application-Specific Instruction-set Processors (ASIP) that are specifically adapted to a given application. To decrease development time and effort and consequently time-to-market, a model-based development process is used. The high-level model allows for automated generation of software development tools, simulation models and RTL models from a single source. An adaptable LISA model representing a simplified ARM Cortex-M1 processor is used as a base, which is then supplemented by application-specific features requested by the software developer or system architect. This paper presents a working example of this concept, in which a state-of-the-art processor model, we call LImbiC, is extended to meet the requirements of a specific application. Specifically, custom instructions are added to the LImbiC processor to improve its performance in the particular task of image processing. In addition, during the development process infrequently used or obsoleted instructions can be removed, which allows for separate versions of LImbiC to meet varying design goals within the design space exploration.

[1]  Jürgen Becker,et al.  LISPARC: Using an architecture description language approach for modelling an adaptive processor microarchitecture , 2012, 7th IEEE International Symposium on Industrial Embedded Systems (SIES'12).

[2]  Jörg Henkel,et al.  Closing the SoC Design Gap , 2003, Computer.

[3]  Kamalakanta Mahapatra,et al.  Optimization of an Application Specific Instruction Set Processor using Application Description Language , 2010, 2010 5th International Conference on Industrial and Information Systems.

[4]  Heinrich Meyr,et al.  A methodology for the design of application specific instruction set processors (ASIP) using the machine description language LISA , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[5]  Klaus D. Müller-Glaser,et al.  MORPHEUS: Heterogeneous Reconfigurable Computing , 2007, 2007 International Conference on Field Programmable Logic and Applications.

[6]  Michael Winston Dales,et al.  Managing a reconfigurable processor in a general purpose workstation environment , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[7]  Nikil D. Dutt,et al.  EXPRESSION: a language for architecture exploration through compiler/simulator retargetability , 1999, Design, Automation and Test in Europe Conference and Exhibition, 1999. Proceedings (Cat. No. PR00078).

[8]  Markus Freericks,et al.  Describing instruction set processors using nML , 1995, Proceedings the European Design and Test Conference. ED&TC 1995.

[9]  Achim Nohl,et al.  Application specific processor design: Architectures, design methods and tools , 2010, 2010 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[10]  Muhammad Shafique,et al.  KAHRISMA: A Novel Hypermorphic Reconfigurable-Instruction-Set Multi-grained-Array Architecture , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[11]  Frank Vahid,et al.  Warp Processors , 2004, ACM Trans. Design Autom. Electr. Syst..

[12]  Rainer Leupers,et al.  Architecture exploration for embedded processors with LISA , 2002 .

[13]  Srinivas Devadas,et al.  ISDL: an instruction set description language for retargetability , 1997, DAC.

[14]  Muhammad Shafique,et al.  RISPP: Rotating Instruction Set Processing Platform , 2007, 2007 44th ACM/IEEE Design Automation Conference.