Experience of Deploying Event-B in Industrial Microprocessor Development


The XCore microprocessor is an embedded device developed by XMOS Ltd. of Bristol, UK. The Instruction Set Architecture (ISA) contains a range of typical instructions, for example, for control flow, register-to-register calculation and memory access, but also provides support for efficient multi-threaded programming, parallelism and communication with other devices via fast interconnects. Support for these features is integrated into the ISA of the XCore. This greatly improves run-time performance, at the cost of introducing specialist instructions to the ISA, which comprises 170 instructions. The ISA contains instructions of both two and four byte length, and implements a very compact encoding scheme. The XCore is general-purpose and has been exploited in a range of different markets, including audio, display, communications, robotics and motor control. As part of a Knowledge Transfer Secondment (Grant EP/H500316/1) at the University of Bristol, a formal model of the complete ISA was constructed in Event-B notation, using the Rodin toolset. This project applied the Event-B and Rodin-based techniques for ISA analysis, developed at the University of Bristol, and extended them to an industrial setting.


  1. 1.
    Bendisposto, J., Fritz, F., Jastram, M., Leuschel, M., Weigelt, I.: Developing Camille: A text editor for Rodin. Softw. Pract. Exp. 41(2), 189–198 (2011) CrossRefGoogle Scholar
  2. 2.
    Bergeron, J.: Writing Testbenches: Functional Verification of HDL Models, 2nd edn. Kluwer Academic, Norwell (2003) CrossRefGoogle Scholar
  3. 3.
    Chockler, H., Halpern, J.Y., Kupferman, O.: What causes a system to satisfy a specification? ACM Trans. Comput. Log. 9, 20:1–20:26 (2008) MathSciNetCrossRefGoogle Scholar
  4. 4.
    Foster, H.D., Krolnik, A.C., Lacey, D.J.: Assertion-Based Design. Springer, Berlin (2003) CrossRefGoogle Scholar
  5. 5.
    Hennessy, J., Patterson, D.: Computer Architecture: A Quantitative Approach. Morgan Kaufmann, San Mateo (2003) Google Scholar
  6. 6.
    May, D.: XMOS XS1 Architecture. XMOS Ltd. (2008) Google Scholar
  7. 7.
    Roder, J.: Relevance filters for Event-B. ETH Zurich (2010) Google Scholar
  8. 8.
    Watt, D.: Programming XC on XMOS Devices. XMOS Ltd. (2009) Google Scholar
  9. 9.
    Wright, S., Eder, K.: Using Event-B to construct instruction set architectures. Form. Asp. Comput. 23(1), 73–89 (2010) CrossRefGoogle Scholar
  10. 10.
    Wright, S.: Automatic generation of C from Event-B. In: Workshop on Integration of Model-based Formal Methods and Tools (2009) Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of BristolBristolUK

Personalised recommendations