Design and Verification of Efficient On-Chip Debugger for Core-A

Core-A를 위한 효율적인 On-Chip Debugger 설계 및 검증

  • Xu, Jingzhe (School of Electrical Engineering, Pusan National University) ;
  • Park, Hyung-Bae (School of Electrical Engineering, Pusan National University) ;
  • Jung, Seung-Pyo (School of Electrical Engineering, Pusan National University) ;
  • Park, Ju-Sung (School of Electrical Engineering, Pusan National University)
  • 허경철 (부산대학교 전자전기공학과) ;
  • 박형배 (부산대학교 전자전기공학과) ;
  • 정승표 (부산대학교 전자전기공학과) ;
  • 박주성 (부산대학교 전자전기공학과)
  • Received : 2009.12.03
  • Accepted : 2010.03.12
  • Published : 2010.04.25

Abstract

Nowadays, the SoC is watched by all over the world with interest. The design trend of the SoC is hardware and software co-design which includes the design of hardware structure in RTL level and the development of embedded software. Also the technology is toward deep-submicron and the observability of the SoC's internal state is not easy. Because of the above reasons, the SoC debug is very difficult and time-consuming. So we need a reliable debugger to find the bugs in the SoC and embedded software. In this paper, we developed a hardware debugger named OCD. It is based on IEEE 1140.1 JTAG standard. In order to verify the operation of OCD, it is integrated into the 32bit RISC processor - Core-A (Core-A is the unique embedded processor designed by Korea) and is tested by interconnecting with software debugger. When embedding the OCD in Core-A, there is 14.7% gate count overhead. We can modify the DCU which occupies 2% gate count in OCD to adapt with other processors as a debugger.

최근 SoC 가 주목받으면서 검증이 더욱 중요해졌다. SoC 설계 추세는 구조 및 RTL(Register Transistor Logic) 레벨의 HW(Hardware) 설계 및 내장형 프로세서에서 수행 될 SW(Software) 개발을 동시에 진행하는 HW/SW 통합 설계이다. 테크놀로지가 DSM(Deep-Submicron)으로 가면서 SoC 내부 상태를 확인하는 것은 매우 어려운 일이 되었다. 이와 같은 이유 때문에 SoC 디버거는 매우 어려운 분야이며 디버깅에 매우 많은 시간이 소모된다. 즉 신뢰성이 있는 디버거 개발이 필요하다. 본 논문에서는 JTAG을 기반으로 하는 하드웨어 디버거 OCD를 개발하였다. OCD는 Core-A를 대상으로 하여 개발 된 것이다. 개발된 OCD는 Core-A에 내장하여 SW 디버거와 연동하여 검증까지 마치고 디버거로서의 기능 및 신뢰성을 확인하였다. Core-A에 내장한 OCD는 약 14.7%의 오버헤드를 보이며 OCD의 2% gate count를 차지하는 DCU를 수정함으로써 다른 프로세서에도 쉽게 적용할 수 있는 디버거 유닛으로 사용할 수 있다.

Keywords

References

  1. 박형배, 지정훈, 허경철, 우균, 박주성, "GNU 디버거를 이용한 온칩 디버깅 시스템 설계", 전자공학회논문지, 제46권 SD편, 제1호, 24-38쪽, 2009년 1월.
  2. www.core-a.net
  3. Richard Stallman, Roland Pesch, Stan Shebs, "GDB User Manual: Debugging With GDB(The GNU Source-Level Debugger)", GDB version 6.4. Technical report, Free Software Foundation, Cambridge, MA.
  4. C. MacNamee and D. Heffernan, "Emerging On-Chip Debugging Techniques for Real-Time Embedded Systems", IEEE Computing & Control Eng. J., vol. 11, no. 6, pp. 295-303, Dec. 2000. https://doi.org/10.1049/cce:20000608
  5. IEEE Std. 1149.1a-1993, "Test Access Port and Boundary-Scan Architecture", IEEE, Piscataway, N.J., 1993.
  6. ARM7TDMI Specification, DDI0210B, http://www.arm.com.
  7. Ing-Jer Huang, Chung-Fu Kao, Hsin-Ming Chen, Ching-Nan Juan, Tai-An Lu, "A retargetable embedded in-circuit emulation module for microprocessors", Design & Test of Computers, IEEE, Volume 19, Issue 4, pp. 28-38, July-Aug. 2002. https://doi.org/10.1109/MDT.2002.1018131
  8. Jundi, K., Moon, D., "Monitoring techniques for RISC embedded systems", Aerospace and Electronics Conference, 1993, vol.1, pp. 542-550, May 1993.
  9. C166S On Chip Debug Support, August 2001. http://www.infineon.com
  10. Jonathan B. Rosenberg, "How Debuggers Work-Algorithms, Data Structures, and Architecture", Wiley Computer Publishing, 1996.
  11. Hubert Hogl,Dominic Rath, "Open On-Chip Debugger", http://openocd.berlios.de/web/
  12. Yue-li Hu, Ke-xin Zhang, "Design of On-Chip Debug Module based on MCU", High Density packaging and Microsystem Integration, 2007. pp. 1-4, June 2007.
  13. G.R. Alves and J.M. Martins Ferreira, "From Design-for-Test to Design-for-Debug-and-Test: Analysis of Requirements and Limitations for 1149.1," Proc. 17th IEEE VLSI Test Symp. (VTS99), IEEE CS Press, Los Alamitos, Calif., pp.473-480, 1999.
  14. Jonathan B. Rosenberg, "How Debuggers Work-Algorithms, Data Structures, and Architecture", Wiley Computer Publishing, 1996.