Top Banner
Hichart Development Environment for Embedded Software ○Takaaki Goto (UEC) Yasunori Shiono (Toyo University) Takeo Yaku (Nihon University) Kensei Tsuchida (Toyo University) Tetsuro Nishino (UEC)
37

Hichart Development Environment for Embedded Software

Jan 14, 2016

Download

Documents

Noura

Hichart Development Environment for Embedded Software. ○ Takaaki Goto (UEC) Yasunori Shiono (Toyo University) Takeo Yaku (Nihon University) Kensei Tsuchida (Toyo University) Tetsuro Nishino (UEC). 本発表について. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Hichart Development Environment for Embedded Software

Hichart Development Environment for Embedded Software

○Takaaki Goto (UEC) Yasunori Shiono (Toyo University) Takeo Yaku (Nihon University) Kensei Tsuchida (Toyo University) Tetsuro Nishino (UEC)

Page 2: Hichart Development Environment for Embedded Software

本発表について

2009 年 10 月 28 日~ 30 日に、電通大で行われた Triangle Symposium on Advanced ICT 2009 (TriSAI 2009) にて発表した内容 TriSAI は、電通大、北京郵電大、 KAIST (韓国科学技

術院)が 2006 年から毎年行っているシンポジウム Takaaki Goto, Yasunori Shiono, Takeo Yaku,Kensei

Tsuchida, Tetsuro Nishino, "Hichart Development Environment for Embedded Software", Proceedings of Triangle Symposium on Advanced ICT 2009, pp. 17-20, (2009).

WAAP144 22009/12/5

Page 3: Hichart Development Environment for Embedded Software

WAAP144 32009/12/5

1. Introduction2. Preliminary3. Hichart Editor4. Behavioral Specifications table5. Example6. Conclusion

Contents

Page 4: Hichart Development Environment for Embedded Software

WAAP144 42009/12/5

1. Introduction

1.1 Background1.2 Motivation1.3 Purpose

Page 5: Hichart Development Environment for Embedded Software

WAAP144 52009/12/5

1.1 Background

Embedded systems are becoming increasingly large and complicated

Development methodologies and efficient testing systems for embedded systems are highly desirable

Checking behavioral specification of upstream operations is especially important

Page 6: Hichart Development Environment for Embedded Software

WAAP144 62009/12/5

1.1 Background (cont.)

The program diagram called Hichart (HIerachical flowCHART description language) in this environment is treated

We have already developed bidirectional translators that translate Pascal, C, or DXL to Hichart   Hichart to Pascal, C, or DXL

Page 7: Hichart Development Environment for Embedded Software

1.1 Background (cont.)

We have already developed visual software development environment with below function parser, Drawing aesthetic Hichart diagrams, Generating a SVG file

WAAP144 72009/12/5

Page 8: Hichart Development Environment for Embedded Software

WAAP144 82009/12/5

1.2 Motivation

We want to expand our visual software development

environment to support developing embedded system,

provide the functions that enables to treat logical part and physical part, separately on the environment

Page 9: Hichart Development Environment for Embedded Software

WAAP144 92009/12/5

1.3 Purpose

To develop a visual software development environment that support developing embedded system

(Target) LEGO MINDSTORM as the example of

embedded system

Page 10: Hichart Development Environment for Embedded Software

2. Preliminary

2.1 Hichart2.2 LEGO MINDSTORM

WAAP144 102009/12/5

Page 11: Hichart Development Environment for Embedded Software

2.1 Hichart

From the 1970, many program diagram languages have been proposed such as NSD, HCP, SPD, PAD, and so on.

Hichart (HIerarchical flowCHART description language) was introduced by Yaku and Futatsugi in 1978.

WAAP144 112009/12/5

Page 12: Hichart Development Environment for Embedded Software

WAAP144 122009/12/5

2.1 Hichart (cont.)

Fig. Example of “Hanoi Tower” program written in Hichart

Page 13: Hichart Development Environment for Embedded Software

WAAP144 132009/12/5

2.1 Hichart (cont.)

Characteristics of Hichart(1) Diagram is a tree-flowchart with the

same flow control lines as a Neumann program flowchart

(2) The hierarchy of the data structure and the control flow are displayed on a plane simultaneously

Page 14: Hichart Development Environment for Embedded Software

2.2 LEGO MINDSTROM

LEGO MINDSTORM has been developed jointly by LEGO and MIT in 1998

RCX is a microprocessor with touch sensor, humidity sensor, photodetector, motor, lamp

WAAP144 142009/12/5

Fig. LEGO MINDSTORM RCX(http://www.legoeducation.jp/mindstorms/)

Page 15: Hichart Development Environment for Embedded Software

2.2 LEGO MINDSTROM (cont.) ROBOLAB is the programming software

for LEGO MINDSTORM Users can program by click on the icon

and drag and drop it→ However users can not program on

ROBOLAB in detail

WAAP144 152009/12/5

Fig. ROBOLAB(http://www.mdstorm.com/robolab/index.htm

Page 16: Hichart Development Environment for Embedded Software

2.2 LEGO MINDSTROM (cont.)

NQC (Not Quite C) is the C like programming language for RCX is developed by Dave Baum does not support pointer supports function specialized for RCX

Turn on the motor, check the touch sensor value

→ NQC is our target of visual software development environment for embedded software

WAAP144 162009/12/5

Page 17: Hichart Development Environment for Embedded Software

2.2 LEGO MINDSTROM (cont.)

The step for executing LEGO MINDSTORM is

1. set up the blocks2. programming3. transfer the program to RCX4. run the RCX

WAAP144 172009/12/5

Page 18: Hichart Development Environment for Embedded Software

WAAP144 182009/12/5

3. Hichart Editor

Hichart Editor Supports visual editing on diagram Supports behavioral specifications table especially useful for development of the

embedded software

Page 19: Hichart Development Environment for Embedded Software

WAAP144 192009/12/5

Input Hichart diagrams or NQC source codes

Output NQC source code

3. Hichart Editor (cont.)

Page 20: Hichart Development Environment for Embedded Software

3. Hichart Editor (cont.)

WAAP144 202009/12/5

Fig. System overview

NtoH converts NQC source code into Hichart internal data

Page 21: Hichart Development Environment for Embedded Software

3. Hichart Editor (cont.)

WAAP144 212009/12/5

Fig. System overview

allows users to develop programs on visual editor and to change physical parameter on

the Behavioral Specifications table

Page 22: Hichart Development Environment for Embedded Software

3. Hichart Editor (cont.)

WAAP144 222009/12/5

Fig. System overview

HtoN converts Hichart internal data into NQC source code

Page 23: Hichart Development Environment for Embedded Software

3. Hichart Editor (cont.)

WAAP144 232009/12/5

Fig. System overview

BricxCC can compile and transfer the generated NQC source code to an RCX

Page 24: Hichart Development Environment for Embedded Software

3. Hichart Editor (cont.)

WAAP144 242009/12/5

Fig. Screenshot of Hichart diagram on the Hichart editor

Page 25: Hichart Development Environment for Embedded Software

3. Hichart Editor (cont.)

WAAP144 252009/12/5

Fig. Screenshot of NQC code generated by Hichart Editor

Page 26: Hichart Development Environment for Embedded Software

4. Behavioral Specifications table

A behavioral specifications table indicates a spreadsheet containing

information of specifications for behavior by some parameters of physical units

is produced by demonstration experiments

WAAP144 262009/12/5

Page 27: Hichart Development Environment for Embedded Software

4. Behavioral Specifications table (cont.)

Sensitivity s:

0-32 33-49 50-100

Recognizes an table edge

○ ○

Does not turn in its

tracks

○ ○

WAAP144 272009/12/5

Table Behavioral Specifications Table

Perfomance is expected

Perfomance is not expected

indicate the range of parameter

Page 28: Hichart Development Environment for Embedded Software

4. Behavioral Specifications table (cont.)

Sensitivity s:

0-32 33-49 50-100

Recognizes an table edge

○ ○

Does not turn in its

tracks

○ ○

WAAP144 282009/12/5

Fig. Behavioral Specifications Table

the RCX does not recognize a table edge, and “does not turn

in its tracks” is met

the specifications of “recognizes a table edge” and “does not turn in its tracks” are

met

Page 29: Hichart Development Environment for Embedded Software

5. Example

Specification an RCX runs without falling off a desk→when a photodetector on the RCX

recognizes the edge of the desk, RCX moves backwards and turns.

WAAP144 292009/12/5

Page 30: Hichart Development Environment for Embedded Software

5. Example (cont.)

WAAP144 302009/12/5

Fig. Screenshot of Hichart editor

1. Users develop the Hichart diagrams

Page 31: Hichart Development Environment for Embedded Software

5. Example (cont.)2. After generating NQC code on Hichart

editor, and compile and transfer program to RCX by BrixCC.

WAAP144 312009/12/5

Fig. RCX runs with falling off a desk

Page 32: Hichart Development Environment for Embedded Software

5. Example (cont.)3. Users need to change the sensor value to

the optimum value

WAAP144 322009/12/5

Fig. Screenshot of a behavioral specifications table on Hichart editor

Behavioral Specifications Table

Sensitivity :sRecognizes an table edge

Does not turn in its tracks

Page 33: Hichart Development Environment for Embedded Software

5. Example (cont.)

4. The chosen value is reflected to the Hichart diagram

WAAP144 332009/12/5

Fig. Screenshot of Hichart after setting optimum value by a behavioral specifications table

Page 34: Hichart Development Environment for Embedded Software

5. Example (cont.)5. The RCX can distinguish the edge of the

table, moves backwards, and turns

WAAP144 342009/12/5

Fig. The RCX works on as required.

Page 35: Hichart Development Environment for Embedded Software

WAAP144 352009/12/5

6. ConclusionSummary

We developed a visual software development system for embedded system

can treat source codes for embedded Software as Hichart diagrams support for setting appropriate physical parameters through behavioral specifications tables.

Page 36: Hichart Development Environment for Embedded Software

WAAP144 362009/12/5

6. Conclusion (cont.)

Future workWe will Improve the development environment of

Hichart for flexible and appropriate setting. Adopt a method for checking behavior in

Hichart development environments by using model checking tool SPIN for logically checking whether a given behavior specification is fulfilled.

Page 37: Hichart Development Environment for Embedded Software

WAAP144 372009/12/5