HOME자료실역대 수상작

역대 수상작

The World Embedded software Contest 2024

[2009년] 장려상 - In Software Emulator for ARM

분류명
정부 시상
훈격
KESIC회장상
- 팀명 : Before Sunrise
- 소속 : 삼성SW멤버십
- 참가부문 : 자유 공모
- 개요
Software Debug시 가장 쉽고 흔히 쓰이는 진단 message 기반의 Debugging를 Firmware에 접목을
시킨다. 우리가 정의한 Library에 의해 Break Point, Scan Point 지점으로 부터 각 line을 Scan하게 된다. 이렇게 Scan을 통하여 얻어진 변수 및 Register 정보는 USART 통신을 통하여 PC로 전송이 된다. 이때 message를 통한 통신Channel의 한계가 발생할 수 있다. 그래서 Break Point 지점에서 Scan되는 정보가 PC로 전송되는 USART를 제외한 Global Interrupt를 Disable 시킴으로서 통신상의 한계는 극복이 된다.
Firmware단에서 PC와 직접 통신을 하기 위한 Communication Module이 필요하게 된다. 이 커뮤니
케이션 GDB의 방식을 모방하게 되는데 GDB를 이용하여 원격 Debugging을 하기위해 GDB-Server
GDB-Client의 형식으로 나누어지게 된다.
여기서 GDB-Server는 Sever 본체를 의미하는 것이고 GDB-Client는 Debugging의 대상이 되는 최
소한의 Module이다. GDB가 Sever로 동작을 하게 되면 지정된 Channel을 통하여 Client로 접속을 시도하게 되는데 둘 사이에는 Serial Protocol 을 이용하여 통신을 한다.
GDB-Sever 는 Debugging에 필요한 정보들을 가지고 사용자와의 Interface를 통하여 Debugging에
필요한 동작들을 결정하고 이를 GDB-Client에 요청을 하고 Target Program을 Debugging을 하게 된다.
이러한 일련의 과정은 UNIX 기반의 OS에서 GDB-Server(host)로 부터의 요청을 Kernel로 전달하는
방식인데 이런 일련의 과정을 모방하는 Mechanism을 Library를 Link file형태로 구현을 함으로서 Arm에 OS를 porting 하지 않고 Firmware의 최소한의 자원을 가지고 Debugging 환경을 구축하는 것이 목표이다.
top
주최

주관