KR20050101839A - 내장 에뮬레이터 - Google Patents

내장 에뮬레이터 Download PDF

Info

Publication number
KR20050101839A
KR20050101839A KR1020040027060A KR20040027060A KR20050101839A KR 20050101839 A KR20050101839 A KR 20050101839A KR 1020040027060 A KR1020040027060 A KR 1020040027060A KR 20040027060 A KR20040027060 A KR 20040027060A KR 20050101839 A KR20050101839 A KR 20050101839A
Authority
KR
South Korea
Prior art keywords
emulation
memory
code
embedded
debug
Prior art date
Application number
KR1020040027060A
Other languages
English (en)
Inventor
곽승호
Original Assignee
매그나칩 반도체 유한회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 매그나칩 반도체 유한회사 filed Critical 매그나칩 반도체 유한회사
Priority to KR1020040027060A priority Critical patent/KR20050101839A/ko
Publication of KR20050101839A publication Critical patent/KR20050101839A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3624Software debugging by performing operations on the source code, e.g. via a compiler
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45516Runtime code conversion or optimisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

본 발명은 에뮬레이션 런 제어 기능(emulation run control)을 마이크로 프로그램에 포함하여 온 칩(on chip) 시스템에서 임베디드 코드(embedded code)를 실시간으로 디버깅(debugging)할 수 있는 내장 에뮬레이터를 개시한다. 이를 위해, 디버그 프로세서를 통해 마이크로 컨트롤러의 동작을 정지시키거나 재수행시키고, 내부 상태를 변경하고, 특정 번지에서 임베디드 코드가 재수행되도록 제어하는 에뮬레이션 런 제어 블록과, 사용자 메모리 및 에뮬레이션 메모리를 포함하여, 실제 디버그를 수행해야하는 임베디드 코드(포그라운드 코드(foreground code))와 디버그 모드로 진입했을 때 디버그를 수행하기 위해 필요한 임베디드 코드(백그라운드 코드(background code))를 에뮬레이션 런 제어블록에 의해 디버그 프로세서에 전달하는 메모리 시스템 블록과, 버스 인터페이스를 통해 에뮬레이션 해석(emulation analysis)을 수행하는 호스트 머신(host machine)을 포함하는데, 에뮬레이션 런 제어 블록은 마이크로 프로세서 코어 내부에 내장된 마이크로 프로그램을 이용하여, 코어 내부의 컨택스트(context), 메모리, 내부 레지스터를 모니터링하고, 필요한 경우 그 값을 변경할 수 있는 것을 특징으로 한다.

Description

내장 에뮬레이터{In-circuit emulator}
본 발명은 마이크로 컨트롤러 시스템(micro controller system)에서 사용되는 내장 에뮬레이터(in-circuit emulator; ICE)에 관한 것으로, 보다 상세하게는 에뮬레이션 런 제어 기능(emulation run control)을 마이크로 프로그램에 포함하여 온 칩(on chip) 시스템에서 임베디드 코드(embedded code)를 실시간으로 디버깅(debugging)할 수 있는 내장 에뮬레이터를 개시한다.
마이크로 컨트롤러 시스템(micro controller system)에서 하드웨어로 내장되는 임베디드 코드(embedded code)는 시스템에 온 칩(on chip)화되면 수정이 불가능하다.
따라서 온 칩 되기 전에 임베디드 코드가 그 시스템에서 정상 동작하는지 검증할 수 있는 기능을 제공하는 것은 마이크로 컨트롤러 시스템에서 매우 중요한 부분이다.
특히 실시간 제어기능을 갖는 시스템에서는 소프트웨어 디버거(debugger)보다는 하드웨어 디버거가 매우 유용하다.
디버깅(debugging)을 수행하기 위해서는 마이크로 컨트롤러 시스템의 내부 상태를 모니터링하고 변경시킬 수 있어야 한다.
그러나 실시간으로 임베디드 코드가 수행되는 동안 이러한 작업을 수행하는 것은 매우 어렵다.
종래 기술에 따른 디버거(debugger)는 디버깅을 위해서 중단점(breakpoint) 설정을 위해 수행중인 작업을 중지시키고, 임베디드 코드를 수정하고, 재컴파일(recompile)하고 프로그램을 다시 수행해야 한다.
특히 디버깅 시 필요한 내부 상태를 모니터링하고 변경시키기 위한 포그라운드 코드(foreground code)를 삽입해야 하기 때문에 시스템의 자원을 낭비하게 된다.
따라서, 포그라운드 코드를 사용하지 않는 디버거에서는 내장 에뮬레이터(in-circuit emulator)를 통해 시스템의 내부 상태를 모니터링한다.
하지만 종래 기술에 따른 내장 에뮬레이터는 현재 수행되고 있는 임베디드 코드를 중지시키고 시스템의 내부 상태를 읽고 쓰기 위한 추가적인 부가 로직 회로(logic circuit)가 필요하다.
특히 마이크로 컨트롤러 내부 레지스터(context)의 값을 읽거나 변경시키기는 매우 어렵다. 또한 수행중인 임베디드 코드의 중단점(breakpoint)을 설정하는데 있어서 제한이 따르며 중단점 설정을 증가시키면 그만큼 하드웨어적 부하가 증가하는 문제점이 있다.
상기 문제점을 해결하기 위한 본 발명의 목적은 하드웨어적 부하가 되는 런 제어 기능을 마이크로 컨트롤러의 마이크로 프로그램으로 내장하여 하드웨어를 단순하게 하는 것이다.
본 발명의 다른 목적은 임의의 중단점(breakpoint) 설정이 가능하게 하는 것이다.
본 발명의 또 다른 목적은 디버깅 과정에서 실시간으로 시스템의 내부 상태를 모니터링 하거나 변경시킬 수 있는 것이다.
상기 목적을 달성하기 위한 본 발명의 내장 에뮬레이터는 디버그 프로세서를 통해 마이크로 컨트롤러의 동작을 정지시키거나 재수행시키고, 내부 상태를 변경하고, 특정 번지에서 임베디드 코드가 재수행되도록 제어하는 에뮬레이션 런 제어 블록; 사용자 메모리 및 에뮬레이션 메모리를 포함하여, 실제 디버그를 수행해야하는 임베디드 코드(포그라운드 코드(foreground code))와 디버그 모드로 진입했을 때 디버그를 수행하기 위해 필요한 임베디드 코드(백그라운드 코드(background code))를 상기 에뮬레이션 런 제어블록에 의해 상기 디버그 프로세서에 전달하는 메모리 시스템 블록; 버스 인터페이스를 통해 에뮬레이션 해석(emulation analysis)을 수행하는 호스트 머신(host machine)을 포함하는데, 상기 에뮬레이션 런 제어 블록은 마이크로 프로세서 코어 내부에 내장된 마이크로 프로그램을 이용하여, 코어 내부의 컨택스트(context), 메모리, 내부 레지스터를 모니터링하고, 필요한 경우 그 값을 변경할 수 있는 것을 특징으로 한다.
상술한 목적 및 기타의 목적과 본 발명의 특징 및 이점은 첨부도면과 관련한 다음의 상세한 설명을 통해 보다 분명해 질 것이다.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 상세히 설명하면 다음과 같다.
도 1은 본 발명에 따른 내장 에뮬레이터(in-circuit emulator)를 나타낸 블록도이다.
내장 에뮬레이터는 제어블록(2), 메모리 시스템 블록(4), 및 호스트 블록(6)을 포함한다. 여기서, 제어블록(2), 메모리 시스템 블록(4), 및 호스트 블록(6)은 에뮬레이션 버스(8)를 통해 서로 접속된다.
제어블록(2)은 에뮬레이션 런 제어부(10) 및 디버그 프로세서(debug processor)(12)를 포함한다.
에뮬레이션 런 제어부(10)는 디버그 프로세서(12)를 통해 마이크로 컨트롤러의 동작을 정지시키거나 재수행시키고, 내부 상태(메모리 및 내부 레지스터의 상태)를 변경하고, 특정 번지에서 임베디드 코드(embedded code)가 재수행되도록 제어한다.
메모리 시스템 블록(4)은 사용자 메모리(14) 및 에뮬레이션 메모리(16)를 포함하고, 실제 디버그를 수행해야하는 임베디드 코드(포그라운드 코드(foreground code))와 디버그 모드로 진입했을 때 디버그를 수행하기 위해 필요한 임베디드 코드(백그라운드 코드(background code))를 에뮬레이션 런 제어부(10)에 의해 디버그 프로세서(12)에 전달한다.
호스트 블록(6)은 버스 인터페이스를 통해 에뮬레이션 해석(emulation analysis)을 수행하는 호스트 머신(host machine)(18)을 포함한다.
본 발명에 따른 마이크로 컨트롤러는 미리 설정된 중단점(breakpoint)에 도달하면 동작을 중지하고, 메모리 및 내부 레지스터에 대한 읽기 및 쓰기 신호를 내장된 마이크로 프로그램을 통해 생성한다.
즉, 본 발명에 따른 에뮬레이션 런 제어부(10)는 호스트 머신(18)에 의해 설정된 중단점(breakpoint)에 도달하면 임베디드 코드를 수행 중이던 마이크로 컨트롤러의 메모리 및 내부 레지스터 값에 대한 모니터링이 가능한데, 특히, 마이크로 컨트롤러 코어(core) 내부의 컨택스트(context)(프로세서 상태 레지스터, 프로그램 카운터 등)에 대한 모니터링이 가능하다.
따라서, 본 발명에 따른 내장 에뮬레이터는 코어 내부에 내장된 마이크로 프로그램을 이용하여 코어 내부의 컨택스트, 메모리, 내부 레지스터를 모니터링하고, 필요한 경우 변경할 수 있도록 하여 하드웨어를 단순화하고 에뮬레이션 런 제어 기능을 수행할 수 있다.
도 2는 도 1에 도시된 내장 에뮬레이터의 런 제어 상태를 나타낸 상태도이다.
도 2를 참조하면, 본 발명에 따른 내장 에뮬레이터의 런 제어 기능은 4개의 런 상태를 갖는다.
먼저, 정상 프로그램 런 상태(normal program run)(20)에서는 사용자 메모리에 저장된 임베디드 코드가 수행된다. 이때 모니터링 활성화 신호 MONIT가 활성화되면, 컨택스트 저장 또는 복구 상태(22)로 진입하여 디버그가 활성화된다.
컨택스트 저장 또는 복구 상태(saving or restoring context)(22)에서는 코어의 컨택스트가 특정 메모리 위치로 전송되는 동작이 수행된다. 또한, 메모리 시스템 블록(4)은 사용자 메모리(14)에서 에뮬레이션 메모리(16)로 전환된다. 따라서, 마이크로 컨트롤러는 포그라운드 코드(foreground code)의 수행을 중단하고 백그라운드 디버그 모드(background debug mode)로 진입하여 디버그가 활성화된다.
반대로, 모니터링 활성화 신호 MONIT가 비활성화 되면 특정 메모리 위치의 컨택스트가 코어로 저장되고 마이크로 컨트롤러는 정상 프로그램 런 상태(20)로 돌아간다. 또한, 메모리 시스템(4)은 에뮬레이션 메모리(16)에서 사용자 메모리(14)로 전환된다. 즉, 백그라운드 디버그 모드에서 특정 메모리 위치의 값을 변경하고 정상 프로그램 런 상태(20)로 전환되면 변경된 값을 가지고 마이크로 컨트롤러가 동작한다. 이때 모니터링 활성화 신호 MONIT가 활성화 상태를 유지하면, 백그라운드 명령 수행 정지 상태(24)로 진입한다.
백그라운드 명령 수행 정지 상태(background instruction execution)(24)에서는 컨택스트가 메모리로 전송되고 모니터링 활성화 신호 MONIT가 활성화된 상태에서 마이크로 컨트롤러는 백그라운드 디버그 모드로 동작한다. 이때, 백그라운드 코드가 입력되지 않으면 NOP(No Operation) 명령이 수행되는 백그라운드 정지 모드(background halt mode)로 진입하여 백그라운드 코드가 입력되기를 기다린다.
백그라운드 명령 수행 상태(background instruction execution mode)(24)에서는 백그라운드 코드가 입력되면 자동으로 백그라운드 런 모드(background run mode)가 되며 이 상태가 버스 인터페이스를 통해 호스트 머신(18)으로 전달된다. 또한, 호스트 머신(18)이 백그라운드 코드를 이용하여 마이크로 컨트롤러의 상태를 변경한다.
본 발명의 내장 에뮬레이터는 상기한 모든 런 상태의 제어를 코어에 내장된 마이크로 프로그램으로 수행한다.
즉, 모니터링 활성화 신호 MONIT를 탐지하여 백그라운드 디버그 모드로 진입할 때 및 종료할 때의 컨택스트 이동을 마이크로 프로그램으로 제어한다.
또한, 모니터링 활성화 신호 MONIT를 이용하여 메모리 시스템의 메모리를 필요한 모드로 전환한다.
즉, 모니터링 활성화 신호 MONIT가 활성화되어 있을 때 마이크로 컨트롤러는 계속 동작을 하고, 이때에는 포그라운드 코드가 수행되는 것이 아니라 에뮬레이션 메모리(16)로부터 입력되는 백그라운드 코드를 수행한다. 즉 포그라운드 코드와 백그라운드 코드는 코어의 마이크로 프로그램에 의해 수행되는 정상 명령(normal instruction)이다.
코어의 디코더 로직은 모니터링 활성화 신호 MONIT의 상승 에지(rising edge) 및 하강 에지(falling edge)를 검출하여 각각 백그라운드 디버그 모드로 진입하는 것 및 종료하는 것을 구분하고, 백그라운드 디버그 모드 진입 신호 DEBUGW 및 종료 신호 DEBUGR에 따라 마이크로 프로그램의 어드레스 맵이 결정된다.
도 3은 본 발명에 따른 마이크로 프로그램 롬 어드레스 디코더를 나타낸 블록도이다.
마이크로 프로그램 롬 어드레스 디코더는 명령 레지스터(28), 프리 디코더(30), 상승 에지 검출부(32), 하강 에지 검출부(34), 어드레스 맵 제어부(36), 멀티플렉서(38), 마이크로 프로그램 롬(40), 및 출력 레지스터(42)를 포함한다.
프리 디코더(30)는 입력 레지스터(28)를 통해 입력된 어드레스 ADDR를 프리디코딩하여 어드레스 맵 제어부(36)로 전송한다.
상승 에지 검출부(32) 및 하강 에지 검출부(34)는 모니터링 활성화 신호 MONIT의 상승 에지 및 하강 에지를 검출하여 각각 백그라운드 디버그 모드 진입 신호 DEBUGW 및 백그라운드 디버그 모드 종료 신호 DEBUGR를 발생한다.
따라서, 어드레스 맵 제어부(30)는 백그라운드 디버그 모드 진입 신호 DEBUGW 및 백그라운드 디버그 모드 종료 신호 DEBUGR에 따라 어드레스 맵을 결정한다.
멀티플렉서(38)는 선택 신호 CPC_SEL에 의해 어드레스 맵 제어부(30)에 의해 설정된 어드레스 맵 제어신호(DEBUGW_ADDR, DEBUGR_ADDR)를 선택한다.
따라서, 마이크로 프로그램 롬(40)은 멀티플렉서(38)에 의해 선택된 어드레스 맵 선택신호 uCPC에 따라 마이크로 프로그램의 어드레스 맵을 결정한다.
도 4는 도 1, 도 2 및 도 3에 도시된 에뮬레이터의 동작을 나타낸 타이밍도이다.
먼저, 모니터링 활성화 신호 MONIT가 로우 레벨인 상태에서는 메모리 시스템(4)은 사용자 메모리(14)를 선택하여 정상 프로그램 런 상태(20)를 유지한다.
모니터링 활성화 신호 MONIT가 하이 레벨로 활성화되면, 상승 에지 검출부(32)가 백그라운드 디버그 모드 진입 신호 DEBUGW를 활성화하여 해당하는 어드레스 맵을 결정하여 컨택스트를 저장 또는 복구하고(22), 백그라운드 코드가 입력되면 백그라운드 명령 수행 상태(26)가 되어 백그라운드 코드를 수행한다.
한편, 모니터링 활성화 신호 MONIT가 로우 레벨로 비활성화되면, 하강 에지 검출부(34)가 백그라운드 디버그 모드 종료 신호 DEBUGR를 활성화하여 해당하는 어드레스 맵을 결정하여 컨택스트를 저장 또는 복구하고(22), 정상 프로그램 런 상태(20)로 진입하여 디버그는 비활성화 된다.
이상에서 살펴본 바와 같이, 본 발명에 따른 내장 에뮬레이터는 하드웨어적 부하가 되는 런 제어 기능을 마이크로 컨트롤러의 마이크로 프로그램으로 내장하여 하드웨어를 단순하게 할 수 있는 효과가 있다.
또한, 본 발명은 임의의 중단점(breakpoint) 설정이 가능하여 디버깅 과정에서 실시간으로 시스템의 내부 상태를 모니터링 하거나 변경시킬 수 있는 효과가 있다.
아울러 본 발명의 바람직한 실시예는 예시의 목적을 위한 것으로, 당업자라면 첨부된 특허청구범위의 기술적 사상과 범위를 통해 다양한 수정, 변경, 대체 및 부가가 가능할 것이며, 이러한 수정 변경 등은 이하의 특허청구범위에 속하는 것으로 보아야 할 것이다.
도 1은 본 발명에 따른 내장 에뮬레이터(in-circuit emulator)를 나타낸 블록도.
도 2는 도 1에 도시된 내장 에뮬레이터의 런 제어 상태를 나타낸 상태도.
도 3은 본 발명에 따른 마이크로 프로그램 롬 어드레스 디코더를 나타낸 블록도.
도 4는 도 1, 도 2 및 도 3에 도시된 에뮬레이터의 동작을 나타낸 타이밍도.

Claims (6)

  1. 디버그 프로세서를 통해 마이크로 컨트롤러의 동작을 정지시키거나 재수행시키고, 내부 상태를 변경하고, 특정 번지에서 임베디드 코드가 재수행되도록 제어하는 에뮬레이션 런 제어 블록;
    사용자 메모리 및 에뮬레이션 메모리를 포함하여, 실제 디버그를 수행해야하는 임베디드 코드(포그라운드 코드(foreground code))와 디버그 모드로 진입했을 때 디버그를 수행하기 위해 필요한 임베디드 코드(백그라운드 코드(background code))를 상기 에뮬레이션 런 제어블록에 의해 상기 디버그 프로세서에 전달하는 메모리 시스템 블록; 및
    버스 인터페이스를 통해 에뮬레이션 해석(emulation analysis)을 수행하는 호스트 머신(host machine)을 포함하고,
    상기 에뮬레이션 런 제어 블록은 마이크로 프로세서 코어 내부에 내장된 마이크로 프로그램을 이용하여, 코어 내부의 컨택스트(context), 메모리, 내부 레지스터를 모니터링하고, 필요한 경우 그 값을 변경할 수 있는 것을 특징으로 하는 내장 에뮬레이터.
  2. 제 1 항에 있어서,
    상기 에뮬레이션 런 제어 블록은 상기 마이크로 컨트롤러에 내장된 마이크로 프로그램을 이용하여 모니터링 활성화 신호를 탐지하여 백그라운드 디버그 모드로 진입할 때 및 종료할 때의 컨택스트 이동을 제어하는 것을 특징으로 하는 내장 에뮬레이터.
  3. 제 1 항에 있어서,
    상기 메모리 시스템 블록은 모니터링 활성화 신호를 이용하여 동작 모드에 따라 상기 사용자 메모리 또는 상기 에뮬레이션 메모리로 전환되는 것을 특징으로 하는 내장 에뮬레이터.
  4. 제 3 항에 있어서,
    상기 메모리 시스템 블록은 상기 모니터링 활성화 신호가 활성화되어 백그라운드 디버그 모드로 진입하면 상기 사용자 메모리에서 상기 에뮬레이션 메모리로 전환하여 백그라운드 코드(background code)를 수행하는 것을 특징으로 하는 내장 에뮬레이터.
  5. 제 3 항에 있어서,
    상기 메모리 시스템 블록은 상기 모니터링 활성화 신호가 비활성화 되어 백그라운드 디버그 모드를 종료하면 상기 에뮬레이션 메모리에서 상기 사용자 메모리로 전환하여 포그라운드 코드(foreground code)를 수행하는 것을 특징으로 하는 내장 에뮬레이터.
  6. 제 1 항에 있어서,
    모니터링 활성화 신호의 상승 에지 및 하강 에지를 탐지하여 마이크로 프로그램의 어드레스 맵을 결정하는 디코더 로직을 더 포함하는 것을 특징으로 하는 내장 에뮬레이터.
KR1020040027060A 2004-04-20 2004-04-20 내장 에뮬레이터 KR20050101839A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040027060A KR20050101839A (ko) 2004-04-20 2004-04-20 내장 에뮬레이터

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040027060A KR20050101839A (ko) 2004-04-20 2004-04-20 내장 에뮬레이터

Publications (1)

Publication Number Publication Date
KR20050101839A true KR20050101839A (ko) 2005-10-25

Family

ID=37280204

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040027060A KR20050101839A (ko) 2004-04-20 2004-04-20 내장 에뮬레이터

Country Status (1)

Country Link
KR (1) KR20050101839A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100878098B1 (ko) * 2006-08-01 2009-01-14 가부시키가이샤 히타치세이사쿠쇼 장해 해석 시스템, 장해 해석 방법 및 에뮬레이터 장치
US11294780B2 (en) 2019-07-30 2022-04-05 SK Hynix Inc. Memory controller and operating method thereof

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100878098B1 (ko) * 2006-08-01 2009-01-14 가부시키가이샤 히타치세이사쿠쇼 장해 해석 시스템, 장해 해석 방법 및 에뮬레이터 장치
US11294780B2 (en) 2019-07-30 2022-04-05 SK Hynix Inc. Memory controller and operating method thereof

Similar Documents

Publication Publication Date Title
US9690603B2 (en) Central processing unit, information processing apparatus, and intra-virtual-core register value acquisition method
US6145123A (en) Trace on/off with breakpoint register
US8464032B2 (en) Microprocessor integrated circuit with first processor that outputs debug information in response to reset by second processor of the integrated circuit
EP2847681B1 (en) Device having configurable breakpoint based on interrupt status
US5574892A (en) Use of between-instruction breaks to implement complex in-circuit emulation features
CN101154183B (zh) 一种微控制器嵌入式在线仿真调试系统
JP2752592B2 (ja) マイクロプロセッサ、マイクロプロセッサ−デバッグツール間信号伝送方法及びトレース方法
US7010722B2 (en) Embedded symmetric multiprocessor system debug
US6857084B1 (en) Multiprocessor system and method for simultaneously placing all processors into debug mode
US20020065646A1 (en) Embedded debug system using an auxiliary instruction queue
US20020144235A1 (en) Debugging embedded systems
US20100153786A1 (en) Processor, multiprocessor, and debugging method
KR20020079163A (ko) 데이터의 천이 상태에 따른 디버깅 장치 및 방법
JPS6120145A (ja) マイクロプロセツサ動作解析装置
US6968410B2 (en) Multi-threaded processing of system management interrupts
KR20050101839A (ko) 내장 에뮬레이터
US20020188813A1 (en) On-chip hardware breakpoint generator with comprehensive memory operation detection
KR100658485B1 (ko) 마이크로프로세서 개발시스템
GB2393272A (en) Controlling performance counters within a data processing system
JPH04199336A (ja) マイクロコンピュータ
JPH03175539A (ja) デバッグ用マイクロプロセッサ
JPS59202548A (ja) デバツグ装置
JPH04235641A (ja) マイクロプロセッサ開発支援装置
JP2000148536A (ja) 割り込み方法及び回路
JPH07219805A (ja) インサーキット・エミュレータ

Legal Events

Date Code Title Description
N231 Notification of change of applicant
WITB Written withdrawal of application