$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

기계명령어-레벨 RTOS 시뮬레이터의 개발
Development of Machine Instruction-level RTOS Simulator 원문보기

정보과학회논문지. Journal of KISS : Computing practices. 컴퓨팅의 실제, v.11 no.3, 2005년, pp.257 - 267  

김종현 (연세대학교 컴퓨터공학과) ,  김방현 (연세대학교 전산학과) ,  이광용 (한국전자통신연구원 임베디드S)

초록
AI-Helper 아이콘AI-Helper

실시간 운영체제 개발 환경에서 제공하는 도구 중에 하나인 RTOS 시뮬레이터는 타겟 H/W가 호스트에 연결되어 있지 않은 상태에서도 호스트에서 응용 프로그램의 개발과 디버깅을 가능하게 해주는 타겟 시뮬레이션 환경을 제공해 줌으로써, 하드웨어 개발이 완료되기 전에도 응용 프로그램의 개발이 가능하도록 해준다. 그러한 이유로 현재 대부분의 상용 RTOS 개발환경에서는 RTOS 시뮬레이터를 제공하고 있다. 그러나 그들의 대부분은 RTOS의 기능적인 부분들만 호스트에서 시뮬레이션 하도록 구현되어 있어서, RTOS 및 응용 프로그램이 실제 타겟 UW에서 실행될 때의 실질적인 시간 추정이 불가능하다. 실시간 시스템은 정해진 시간 내에 프로그램 실행을 종료해야 하기 때문에, 실행시간 추정 기능도 가지는 RTOS 시뮬레이터가 필요하다. 본 연구에서는 RTOS 및 응용 프로그램이 실제 타겟 H/W에서 처리될 때의 실행시간 추정이 가능하고 구현도 용이한 기계명령어-레벨(machine instruction-level)의 RTOS 시뮬레이터를 개발하고, 실제 프로그램을 실행하여 기능과 정확도를 검증하였다.

Abstract AI-Helper 아이콘AI-Helper

The real-time operating system(RTOS) simulator, one of the tools provided by RTOS development environment, allows users to develop and debug application programs even before the target hardware is ready. Thus, most of commercial RTOS development environments provide with RTOS simulator for the purpo...

주제어

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 본 연구에서 개발한 Q+ 시뮬레이터 (Q+ Simulator: 이하 Q十Sim이라 함)는 Q+Esto에 포함되는 도구들 증의 하나로서, DTSB 보드와 같은 타겟 하드웨어가 호스트에 연결되어 있지 않더라도 타겟을 연결하여 작업할 때와 동일한 개발 환경을 개발자에게 제공할 수 있게 하는 것을 목표로 설계되었다. 또한 기능 면에서는 기존상용화된 RTOS 시뮬레이터에서 제공하는 기능들을 Q+Sim에서도 모두 지원하도록 하고, 이와 더불어 기존의 제품들이 가지지 못한 실질적인 수행시간 추정 기능을 추가하도록 함으로써 본 연구가 구현되어 상용화되었을 때에 차별화 된 제품으로 RTOS 시장에서 경쟁력을 가질 수 있게 설계하였다.
  • 본 연구에서는 RTOS와 RTOS 응용프로그램이 실제타겟에서 처리될 때의 실행시간 추정이 가능하고 상용화가 가능한 기계 명령어 기반machine instruction-based) 의 RTOS 시뮬레이터를 구현하는 것을 목표로 하였다. 이를 위하여 기계 명령어 레벨의 시뮬레이션 기법을 이용하여 RTOS의 실행 이미지를 생성하고, 그것이 호스트 상에서 수행되도록 하였다.
  • 또한 명령어의 비트 패턴은 복잡하게 구성되어 있으며, 명령어에 따라 비트 패턴이 의미하는 것이 달라진다[13]. 본 연구에서는 이렇게 복잡한 명령어들의 비트 패턴을 체계적으로 정리하여 명령어 시뮬레이션이 가능하도록 하였다. 전체적인 명령어 시뮬레이션 과정은 SAT10이 명령어를 수행하는 방법과 유사하게 설계되었으며, 복잡성을 감소시키기 위하여 기능에 영향을 받지 않는 부분들은 추상화시켰다.
  • 타겟 하드웨어의 속성을 정밀하게 반영할수록 시뮬레이션의 정확도는 높아지는 반면에 시뮬레이션 시간이 오래 걸리기 때문어〕, 시뮬레이터의 사용 목적에 따라서 적절한 정밀도를 설정하는 것이 중요하다. 본 연구에서는 캐쉬 시뮬레이션에 대한 부분을 사용자가 선택할 수 있도록 함으로써, 시뮬레이터가 두 가지 정밀도를 제공할 수 있도록 설계되었다.
  • 본 연구에서는 현재 상용 RTOS 시뮬레이터들이 가지고 있는 기능적 시뮬레이션의 문제점을 개선하기 위하여, 하드웨어 플랫폼에 제한되지 않고 구현돨 수 있으면서 실제 타겟 하드웨어에서의 실질적인 프로그램 실행 시간의 추정도 가능한 RTOS 시뮬레이터를 구현하는 기법을 개발하였다. 그리고 실제 이 기법을 이용하여 실시간 운영체제인 Q+의 실행 이미지를 시뮬레이션 하는 Q+Sim을 구현하였다.

가설 설정

  • 실제 타겟 하드웨어의 실험 결과를 토대로 하여, 메모리 액세스 및 분기가 발생하지 않는 명령어의 평균 실행시간은12 사이클로 가정하였다. 그리고 메모리 액세스가 발생할 경우에는 6 사이클이 추가되고, 분기가 발생할 경우에는 4 사이클이 추가되는 것으로 가정하였으며, 사이클 시간은 200 眦 SA-110 프로세서의 경우에 5 ns이다.
  • 실행시간 추정을 위하여 Q+Sim이 수집한데이타는 실행된 CPU 명령어들의 수, 메모리 액세스수, 명령어 캐쉬의, 적중률, 데이타 캐쉬의 적중률, 그리고 분기 명령어의 수이다. 실제 타겟 하드웨어의 실험 결과를 토대로 하여, 메모리 액세스 및 분기가 발생하지 않는 명령어의 평균 실행시간은12 사이클로 가정하였다. 그리고 메모리 액세스가 발생할 경우에는 6 사이클이 추가되고, 분기가 발생할 경우에는 4 사이클이 추가되는 것으로 가정하였으며, 사이클 시간은 200 眦 SA-110 프로세서의 경우에 5 ns이다.
본문요약 정보가 도움이 되었나요?

참고문헌 (13)

  1. 한국전자통신연구원, '조립형 실시간 OS 사용자 요구사항 정의서 1', 1998년 12월 

  2. WindRiver, VxWorks 5.3.1 Programmer's Guide, April, 1997 

  3. Realiant Systems, 'Carbon Kernel User Manual 1.2,' January, 2000 

  4. http://www.mentor.com/embedded, 2001. 1 

  5. http://www.neiworld.co.kr 

  6. http://www.aromasoft.com 

  7. 한국전자통신연구원, '실시간 OS 커널 상세 설계서 1.0', 1999년 7월 

  8. 한국전자통신연구원, '사용자개발도구 서브시스템 설계서 1.0', 1999년 3월 

  9. Intel, SA-110 Technical Reference Manual, December, 2000 

  10. Intel, EBSA-285 Evaluation Board Reference Manual, October, 1998 

  11. Ron Pluth, Taimur Aslam, 'Developing Device Drivers in a Hardware / Software Co-Simulation Environment,' The Embedded Systems Conference San Francisco, April, 1998 

  12. ARM, ARM ELF, 2000. 10 

  13. David Seal, ARM Architecture Reference Manual 2th ed., Addison-Wesley, 2000 

저자의 다른 논문 :

관련 콘텐츠

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로