The ITRON Project: Overview and Recent Results
Total Page:16
File Type:pdf, Size:1020Kb
The ITRON Project: Overview and Recent Results Hiroaki Takada Yukikazu Nakamoto Kiichiro Tamaru Dept. of Information and Computer Sciences Software Design Lab. System ULSI Engineering Lab. Toyohashi Univ. of Technology NEC Corporation TOSHIBA Corporation 1–1 Hibarigaoka, Tempaku-cho 2–11–5 Shibaura, Minato-ku 580–1 Horikawa-cho, Saiwai-ku Toyohashi 441–8580, Japan Tokyo 108-0023, Japan Kawasaki 210–8520, Japan Abstract Real-time operating system is among the key com- ponents in designing embedded systems. Currently, the The ITRON Project is to standardize real-time operating real-time operating system market is so fragmented that we system and related specifications for embedded systems. can say that there exists no international standard in this We have defined and published the series of ITRON real- field. The main reason is that embedded software tended to time kernel specifications. Of these, the "ITRON real-time be developed with a company’s propriety software technol- kernel specification, which was designed for consumer ogy. With the increasing complexity of embedded system electronic applications and other small-scale embedded software, however, introducing some software components systems, has been implemented for many kind of processors from outside software vendors becomes unavoidable, thus and adopted in numerous end products, making it an the standardization of real-time operating system becomes industry standard in this field. Based on the achievements, very important. we have broadened the scope of our standardization efforts beyond the kernel specifications to related aspects. The ITRON Project, which is one of the subprojects This paper briefly outlines the history and the current of the TRON Project [1, 2], is to standardize real-time status of the ITRON project and introduces its recent operating system and related specifications for embedded results, including the ITRON TCP/IP API specification, systems. The series of ITRON real-time kernel specifica- an application program interface (API) specification for tions have been defined and published so far [3]. Real-time TCP/IP protocol stacks suitable for embedded systems, kernels conformant to the specifications have been im- and the JTRON2.0 specification, an interface definition plemented for many kind of processors and adopted in for hybrid environments of Java Runtime Environment numerous embedded system designs. Now, it can safely and ITRON-specification kernel. We also describe the be said that the ITRON specifications are an industry current standardization activities in the project, focusing standard in this field in Japan. In this first stage of the ITRON Project, we focused our standardization efforts on " on "ITRON4.0, the next generation ITRON real-time kernel specification. the real-time kernel specifications. The reason is that many embedded systems (especially, small-scale ones) use only kernel functions. 1 Introduction As embedded systems grow larger and more complex, Advances in microprocessor technology continue to open however, the relative importance of real-time kernels is de- up new application fields for embedded systems, and today creasing. The need has increased for standardization efforts nearly almost all the electrical and electronic products that take into account software components, development around us are controlled by embedded systems. At the tools, and other specifications related to embedded system same time, the equipment controlled by embedded systems software and hardware. Among them, we have deter- has become more sophisticated, often incorporating many mined to put an emphasis on software component-related functions in one product. As a result, embedded system standardization at first, and started several standardization software has grown in scale and complexity. Moreover, as activities described in the following sections. With these products increasingly adopt digital technology, advanced activities, the second stage of the ITRON Project has started microprocessors have enabled more of the processing to [4]. be implemented in software, making embedded system In order to promote the circulation and use of software software more important. components, two directions of standardization efforts are HFDSAAAA support (Ver. 2.0) was developed with a smaller set of functions for 32-bit MPUs enhanced scalabilityAAAAAAAAAAAAAAA targeted to 8-bit and 16-bit MCUs, and the ITRON2 spec- first ITRON ITRON2 ification for 32-bit processors. Of these, the "ITRON kernel spec. AAAAAAAAAAAAA µITRON IMTRON µITRON AAAAAAAAAAAAAAAA specification met the industry’s demands very well, and ITRON1 4.0 3.0 AAAAAAAAA has been adopted in a number of embedded system de- µITRON AAAAAA AAAAAA signs. (ver. 2) AAAAAAAA for 8-bit and Thereafter, the expanding use of MCUs resulted in the software 16-bit MCUs AAAAAAAAAAA "ITRON specification being implemented for 32-bit pro- ITRON/ AAAAAcomponentsAAAAA FILE cessors, which was not anticipated when the specification AAAAAAAA was designed. We therefore decided to revise the speci- 1984 1987 19891992 1993 1998 21st century fication approach by drawing up a scalable specification, Figure 1: History of the ITRON specifications able to be used with MCUs ranging from 8-bit to 32-bit processors. The result of this work was issued in 1993 as the "ITRON3.0 specification. necessary. At first, it is necessary to satisfy the preconditions for 2.2 Design Principles their circulation and use. In more specific, the software The ITRON specifications are designed so that the fol- components should be portable to different platforms. In lowing requirements on an operating system standard for addition, because some software components have hard embedded systems are satisfied [3]. timing constraints, the framework to guarantee the timing constraints of each component within a system is neces- Being able to derive maximum performance from sary. In other words, what is needed is a framework that hardware allows coexistence of those software components with ap- Given the severe hardware resource limitations of plications while satisfying their real-time constraints, and a typical MCU-based system, the ability to derive enabling use of multiple software components each with maximum performance from the available hardware their own real-time needs. is a prerequisite for real-time OS adoption. The second direction is to standardize the application Helping to improve software productivity program interface (API) of software components, which Especially important is standardization from a training must be done for each kind of software components. standpoint, such as adopting consistent concepts and This paper first presents the overview of the current terminology, and standardizing design methods. ITRON real-time kernel specifications, and then intro- Being uniformly applicable to various processor scales duces two recently published specifications of software and types components. We also describe the current standardization The hardware used in an embedded system is normally activities in the project, focusing on "ITRON4.0, the next designed optimally for its application. The processor generation "ITRON real-time kernel specification. scale, moreover, may vary widely from 8-bit to 32-bit processors depending on the kind of equipment to be 2 ITRON Real-Time Kernel Specifications controlled. The overview of the current ITRON real-time kernel speci- In addition to the above requirements, another very fications, the results of the first stage of the ITRON Project, important issue is whether the specifications are truly open. is presented in this section. This means not only that the specification documents can 2.1 History be obtained, but also that everyone is free to implement and sell products based on those specifications. Since the ITRON Project started in 1984, we have studied The ITRON real-time kernel specifications were de- standard real-time OS specifications for embedded systems, signed according to the following principles. and have developed and made available the series of ITRON real-time kernel specifications as a result (Figure 1). Allow for adaptation to hardware, avoiding excessive The first ITRON real-time kernel specification was is- hardware virtualization sued in 1987 as the ITRON1 specification [5]. Several In order for a real-time kernel to take maximum advan- kernel products were developed based on this specification tage of the performance built into the MCU and deliver and applied to systems, mainly by way of proving the excellent real-time response, the specifications must applicability of the specification. In 1989, two revised avoid excessive virtualization of hardware features. specifications were released. The "ITRON specification Adaptation to hardware means changing the real-time kernel functions and internal implementation methods Audio/Visual Equipment, Home Appliance as necessary based on the hardware architecture and TVs, VCRs, digital cameras, settop box, audio compo- performance, raising the overall system performance. nents, microwave ovens, rice cookers, air-conditioners, washing machines Allow for adaptation to the application Adaptation to the application means changing the Personal Information Appliance, Entertainment kernel functions and internal implementation methods PDAs (Personal Digital Assistants), personal organiz- based on the functions and performance required by ers, car navigation systems, game gear, electronic mu- the application, in order to raise the overall system sical instruments performance. In the case of an embedded