Experimental Software Engineering Course for Training Practitioners in Embedded Real-Time Systems Real-Time Systems LAB, School of Electronic Engineering, Kyungpook National University, Korea Gi Hoon JungDo Hoon Kim Sung Ho ParkOk Gu Kim Soon Ju Kang
A computer application system embedded into a target system Operate under the time and resource constraints Developed under the co-design concepts in hardware and software work Needed rigorous software design methodologies Embedded Real-Time Systems ?
Purpose of Research Development educational practice course of embedded real-time system Use the software design methodologies Offer the Hardware/Software co-design experience Reusability and flexibility of experimental target system Bring up Skilled Real-Time System Design Engineer
The Contents of Practice Tool-Kit Sensor, Actuator and Target Prototyping Tool –Lego Dacta or MindStorms Hardware –I/O Interface Board for Sensor and Actuator –ISA Bus Interface Board with FPGA (Reprogrammable) –Single Board Computer Software Developing Environment –Linux with RTLinux 3.0 Kernel –GNU C with proprietary API Library –Java Applet (for GUI programming)
Step-by-Step Coursework Demo Sensor & Actuator Analysis Interface Board Making PC Interface Board Making (VHDL Programming) Device Driver & API Building (Linux, RTLinux) Cyclic Executive & Multi-thread Programming Exercise Requirement Analysis Software Architecture Design Scheduability Test Implementation Hardware and Firmware System Programming Software Engineering
Lego Sensor, Actuator and I/O Interface Board Rotation Sensor Light Sensor Touch Sensor Thermal Sensor Standard Motor Gear Motor Buzzer Lamp I/O interface board is able to connect 8 actuators and 8 sensors simultaneously
ISA Bus Interface Control Board ISA bus interface –1 DMA channel (128Bytes Block Transfer) & 1 Interrupt –1 I/O port address Lego I/O Device Control –8 Actuators Output –8 Sensors Input FPGA : rewritable VHDL programming environment Sensor Motor Controller Clock Modulator ADC Control Unit DMA Double Buffer ISA BUS ADC 0809 chip Actuator Driving Circuit PWM Generator
H/W Device Application (User Level) Device Driver (RT Kernel Level) DMA Interrupt Input/ Output Sensor Read Actuator Write I/O Control RT-FIFO ISR Interrupt Service RT-Thread DMA Double Buffer RT Rotation Sensor Thread RT-FIFO Handler RT-FIFO IOCTL Interfacing Diagram of Device Driver (based on RTLinux) RT-FIFO
Example of Target Application System Software Architecture Design for Model of Robot Arm and Conveyor Belt System Data/Control Flow Diagram Software Architecture Diagram
Conclusion It offers experience in hardware and software co- design Various real-time system models can be made due to the flexibility and reusability of the Lego blocks The system can be used as a test-bed for real-time theory. The proposed tool kit and training methodology have already been integrated into a practical course on embedded real-time systems by the School of Electrical Engineering and Computer Science at Kyungpook National University,Korea