RDI Interface Driver
RDI Interface Driver는 RDI가 지원이 되는 장치가 uVision Debugger에서 연결이 가능하도록 합니다. RDI는 Remote Debugger Interface의 약어로, ARM과 ARM debuggers에 의해 정의 및 널리 사용되는 표준입니다.
어떤 RDI Drivers는 통합된 Flash download 기능을 가집니다. 아래의 나열된 debugger solutions가 그 경우에 해당합니다. 이러한 드라이버는 Flash-ROM에 program code또한 download가 가능하게 하여, 그 결과 기타 다른 flash download utilities가 필요하지 않습니다.
RDI Interface Driver를 사용하면 사용자들은 다음과 같은 third-party debugger solutions에 연결할 수가 있습니다.
- Segger JLINK,
- Analog Devices Midaslink, or
- Atmel SAM-ICE.
아래의 section에서는 다음과 같은 내용을 설명합니다.
- Configuration of the RDI Interface Driver.
- Debugging with RDI Interface Driver.
JLINK Software Components
Segger사의 JLINK를 사용하기 위해서 사용자는 다음과 같은 components를 필요로 하는데, 이는 C:\KEIL\ARM\Segger\ 디렉토리에 복사가 되어 있습니다.
-
JLinkARM.dll (the generic ARM debugger DLL)
-
JLinkRDI.dll
추가적으로, C:\KEIL\ARM\Segger\USBDriver\ 디렉토리에 JLINK USB driver가 install되어 있어야 합니다.
Select RDI Interface Driver and RDI DLL
-
수행중인 프로젝트에서 “Options for Target – Debug tab”에서 아래 그림과 같이 RDI Interface Driver를 선택합니다. RDI Interface의 설정이 완료될 때까지 Load Application at Startup체크버튼은 disable 합니다.
- RDI Interface Driver setup dialog를 열기 위해서 Settings를 클릭합니다. 그 후, 브라우저 버튼으로 JLinkRDI.dll파일을 열람하고 아래 그림처럼 Cache Options를 enable합니다.
- “Options for Target – Utilities tab”에서 RDI Interface Driver를 선택하고, Update Target before Debugging 옵션을 해제합니다. (사용자가 debugger를 시작 할때, RDI Interface DLL파일에 의해서 Flash Download시 바로 해당 설정이 실행이 됩니다.)
Use uVision Flash Programmer
RDI Driver를 이용하면, KEIL사의 ULINK USB-JTAG adapter를 사용하여 동일한 Flash programming기능을 이용할 수가 있습니다. 아래의 절차대로 수행하시면 됩니다.
-
수행중인 프로젝트에서 “Options for Target – Utilities tab”에서 아래 그림과 같이 RDI Interface Driver를 선택합니다.
-
Settings버튼을 클릭한 후, uVision Flash Programmer를 선택합니다.
-
이제 아래와 같이 Flash download options을 해당 칩에 맞게 설정하면 됩니다.
Use RDI Flash Programmer
어떠한 RDI Drivers는 Flash download 기능들을 제공합니다. (Such as the Segger J-LINK) 이러한 드라이버들은 다음과 같이 설정합니다.
-
수행중인 프로젝트에서 “Options for Target – Utilities tab”에서 아래 그림과 같이 RDI Interface Driver를 선택합니다.
-
Settings버튼을 클릭한 후, J-LINK Flash Programmer를 선택합니다.
-
이제 아래와 같이 RDI DLL파일과 Interface options을 선택하면 됩니다.
-
Flash programming의 필요한 설정을 하기위해서Configuration RDI Driver를 선택합니다. Flash memoryoptions가 올바르게 선택되었는지와 Allow flash download가 enable되었는지를 확인합니다.
-
일단 Flash programming설정을 한 후, “Options for Target – Debug tab”에서 Load Application at Startup옵션을 enable합니다. 사용자가 debugger를 실행하면 J-LINK가 자동적으로 flash programming관련 태스크를 실행합니다.
Note.
-
Segger J-LINK는 상기의 기능을 수행하기 위해서 추가적인 add-on licenses가 반드시 필요합니다.
RDI Debugging
일단 사용자가 RDI Interface Driver를 설정해 놓으면 uVision Debugger를 시작할 수가 있습니다.
다음의 테이블은 debug commands에 대한 간략한 소개를 제시합니다. 자세한 사항은 uVision Debugger part를 참고해 주시기 바랍니다.
uVision Restrictions (제약사항)
uVision Debugger/Simulator는 많은 강력한 기능들을 제공하지만, Real target h/w에 RDI Interface driver를 사용한 debugging시에는 아래와 같은 기능들을 사용할 수가 없습니다.
- Memory Map: target h/w에 의해서 memory map은 설정이 되는데, physical hardware의 memory layout의 변경을 위해 memory map dialog를 사용하는것이 불가능 합니다.
- Trace Memory: RDI Interface Driver를 사용할 경우 해당 기능의 사용이 불가합니다.
- Performance Analyzer: RDI Interface Driver는 실행시간 정보를 제공하지 않기 때문에, 그 결과 해당 기능을 사용할 수가 없습니다.
- Code Coverage: 3번과 동일하게 code coverage 실행시간 정보를 제공하지 않기에 사용이 불가합니다.
- Periodic Window Update: 프로그램의 실행동안 RDI Interface는 target h/w로의 접근이 불가하기 때문에, 이러한 이유로 말미암아 periodic window update기능은 작동되지 않습니다.