กรณีศึกษาของ t-kernel rtos บนแพลทฟอร มt-engine ·...

20
กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอรม T-Engine ผศ.ดร.ศุภชัย วรพจนพิศุทธิคณะวิศวกรรมศาสตร มหาวิทยาลัยธรรมศาสตร

Upload: others

Post on 05-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอรม T-Engine

ผศ.ดร.ศุภชัย วรพจนพิศุทธิ์คณะวิศวกรรมศาสตร

มหาวิทยาลัยธรรมศาสตร

Page 2: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ภาพรวมในการนําเสนอ

แนะนําแพลทฟอรม T-Engineการพัฒนาซอฟตแวรบน T-Engineระบบปฏิบัติการ T-Kernelการศึกษาประสิทธิภาพของ T-Kernelสรุป

Page 3: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

แพลทฟอรม T-Engine

เทคโนโลยีของระบบสมองกลฝงตัว ซึ่งProf. Ken Sakamura คิดคนตอเนื่องจากระบบปฏิบัติการ µITRONมีขอกําหนดชัดเจนทั้งในระดับของฮารดแวรและในระดับของซอฟตแวรแบงออกเปน 4 ระดับ ไดแก standard, micro, nano, pico

Page 4: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

แพลทฟอรม T-Engine

Standard T-Engine75x120 ม.ม

µT-Engine60x85 ม.ม.

nT-Engine28x33 ม.ม.

pT-Engine20x20 ม.ม.

Page 5: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ชุดพัฒนา SH7727หนวยประมวลผลแบบDSP รุน SH7727 ของRenesasหนวยความจํา

Flash 8MBRAM 32 MB

จอภาพ LCD 240x320 แบบสัมผัสชองเสียบอุปกรณแบบUSB และ PCMCIA

Page 6: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

การพัฒนาซอฟตแวรบน T-Engineติดตั้งซอฟตแวร gcc, terminal softwareเชื่อมตอคอมพิวเตอรกับT-Engine ผาน RS232C สรางดิสค (USB,PCMCIA) สําหรับใชระหวางพัฒนาพัฒนาซอฟตแวร / ถายขอมูลผาน RS232C และสั่งทํางานผาน CLI

Page 7: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

โครงสรางซอฟตแวรบน T-Engine

Page 8: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ระบบปฏิบัติการ T-Kernel

Pre-emptive priority-based scheduling RTOSใชหลักการของ FCFS (first-come first-serve) ในกรณีความสําคัญเทากันประกอบดวย 3 สวนหลัก คือ T-Kernel/OS,

T-Kernel/SM และ T-Kernel/DSมีสวนขยายคือ T-Kernel Extension

Page 9: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

สถานะของ task ใน T-Kernel

READYพรอมทํางาน

RUNกําลังประมวลผล

DORMANTเพิ่งถูกสราง/หยุด

WAIT-SUSPENDรอเงื่อนไข

NON-EXISTENTไมอยูในระบบ

Page 10: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

การทํางานแบบเวลาจริงการทํางานแบบขึ้นกับการตั้งเวลา

Delaytk_dly_tsk( )Cyclic handlertk_cre_cyc( )Alarm handlertk_cre_alm( )

การทํางานแบบขึ้นกับtask อื่น

Sleep-Wakeuptk_wup_tsk( )Semaphoretk_wai_sem( )Mailbox / Messagetk_snd_mbx( )tk_snd_mbf( )Etc.

Page 11: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

การทดสอบการทํางานแบงเปน 2 สถานการณ

Idle ไมมี task อื่น ทํางาน ณ ขณะนั้นLoad มี task ที่ทําการคํานวณอีก 100 tasks

ใช 32-bit counter 2 ของ TMU ในSH7727

0.1334 µsec (ทดสอบดวยฟงกชัน WaitUsec)ทดสอบในแงของความถูกตองของชวงเวลา ความเร็วในการตอบสนอง

Page 12: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ผลการทดสอบ #0

การสอบเทียบ counter ดวย WaitUsec(กรณี 100,000 µsec)คาเฉลี่ยของ counter 749,515.8คาเบี่ยงเบนมาตรฐาน 0.6คา max ของ counter 749,520คา min ของ counter 749,515คาบเวลา 0.133419 µsec

Page 13: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ผลการทดสอบ #1การใช tk_dly_tsk( ) หนวงเวลา 1 หนวยกรณี idleคาเฉลี่ย/คาเบี่ยงเบน16006.61 µsec / 1.18 µsecคา max / คา min 16008.53 µsec / 15997.19 µsec

กรณี loadคาเฉลี่ย/คาเบี่ยงเบน16006.52 µsec / 3.97 µsecคา max / คา min 16017.47 µsec / 15995.19 µsec

Page 14: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ผลการทดสอบ #2การใช tk_cre_alm( ) เพื่อตั้งเวลา 1 หนวยกรณี idleคาเฉลี่ย/คาเบี่ยงเบน15996.68 µsec / 1.39 µsecคา max / คา min 15998.79 µsec / 15987.85 µsec

กรณี loadคาเฉลี่ย/คาเบี่ยงเบน15991.97 µsec / 3.49 µsecคา max / คา min 16001.19 µsec / 15985.59 µsec

Page 15: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ผลการทดสอบ #3การใช tk_cre_cyc( ) เพื่อสรางฐานเวลา 1 หนวยกรณี idleคาเฉลี่ย/คาเบี่ยงเบน7992.78 µsec / 1.67 µsecคา max / คา min 7999.33 µsec / 7984.39 µsec

กรณี loadคาเฉลี่ย/คาเบี่ยงเบน7973.67 µsec / 4.14 µsecคา max / คา min 7989.59 µsec / 7958.51 µsec

Page 16: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ผลการทดสอบ #4การกลับเขาสูสภาวะ RUN จาก tk_wup_tsk( )กรณี idleคาเฉลี่ย/คาเบี่ยงเบน9.39 µsec / 0.80 µsecคา max / คา min 14.00 µsec / 9.07 µsec

กรณี loadคาเฉลี่ย/คาเบี่ยงเบน12.44 µsec / 1.13 µsecคา max / คา min 14.94 µsec / 10.67 µsec

Page 17: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ผลการทดสอบ #5การตอบสนองตอการไดรับขอมูล tk_rcv_mbf( )กรณี idleคาเฉลี่ย/คาเบี่ยงเบน11.09 µsec / 0.89 µsecคา max / คา min 14.40 µsec / 10.53 µsec

กรณี loadคาเฉลี่ย/คาเบี่ยงเบน14.57 µsec / 1.28 µsecคา max / คา min 18.01 µsec / 12.67 µsec

Page 18: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

ประสิทธิภาพแบบเวลาจริง

0.89 / 1.2811.09 / 14.57tk_rcv_mbf( )

0.80 / 1.139.39 / 12.44tk_wup_tsk( )

1.67 / 4.147992.78 / 7973.67tk_cre_cyc( )

1.39 / 3.4915996.68 / 15991.97tk_cre_alm( )

1.18 / 3.9716006.61 / 16006.52tk_dly_tsk( )

คาเบี่ยงเบนเวลาเฉลี่ย

Page 19: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

Context Switching ของ RTOS อื่น

19.0 / 38.80.3 / 3.23.1 / 9.5VxWorks

16.4 / 51.33.7 / 2.02.3 / 10.4RTEMS

33.1 / 193.90.5 / 4.58.7 / 11.2RT Linux

คา maxคาเบี่ยงเบนเวลาเฉลี่ย

Page 20: กรณีศึกษาของ T-Kernel RTOS บนแพลทฟอร มT-Engine · Microsoft PowerPoint - 20050328_Embeded System-01_Presenatation.ppt Author: chanida Created

สรุปประสิทธิภาพแบบเวลาจริงของ T-Kernel เปนที่นาพอใจ โดยอยูในระดับของ µsec ความนาเชื่อถือในแงของชวงเวลา มีคานอยกวา 10 µsecความเร็วในการตอบสนองในกรณีชาสุด มีคานอยกวา 20 µsecการอยูภายใตภาระโหลดไมทําใหคาประสิทธิภาพแบบเวลาจริงแยลงมากนัก