KR20010013275A - 미리 정의된 정지점 조건의 발생시에 신호를 감시하는메모리를 이용하는 디지털 회로 - Google Patents

미리 정의된 정지점 조건의 발생시에 신호를 감시하는메모리를 이용하는 디지털 회로 Download PDF

Info

Publication number
KR20010013275A
KR20010013275A KR19997011268A KR19997011268A KR20010013275A KR 20010013275 A KR20010013275 A KR 20010013275A KR 19997011268 A KR19997011268 A KR 19997011268A KR 19997011268 A KR19997011268 A KR 19997011268A KR 20010013275 A KR20010013275 A KR 20010013275A
Authority
KR
South Korea
Prior art keywords
memory
circuit
data
breakpoint
signal
Prior art date
Application number
KR19997011268A
Other languages
English (en)
Other versions
KR100495755B1 (ko
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 페레고스 조지
Publication of KR20010013275A publication Critical patent/KR20010013275A/ko
Application granted granted Critical
Publication of KR100495755B1 publication Critical patent/KR100495755B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/25Testing of logic operation, e.g. by logic analysers
    • 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/3636Software debugging by tracing the execution of the program

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

정지점 유닛은 임의의 소정의 복수개의 조건들의 발생에 대하여 디지털 신호(B1, ..., Bn, C1, ..., Cm)를 감시하는 메모리 회로(30, 50)를 포함한다. 메모리 회로는 메모리 셀(34, 53)(각 셀은 중요한 정지점 조건의 값을 결정하는 데이터(Ii, Klm)를 저장함)의 어레이를 포함하고, 이 셀중에서 선택된 1개의 셀은 신호 비트의 여러가지의 결합 구성에 응답하여 독출될 수 있다. 액세스된 데이터 값은 감시되는 신호를 발생시키는 회로(20)의 동작을 정지 또는 초기화시키는 정지점 신호로서 이용된다. 또 다른 실시예로는 중요한 다른 조건용 신호 비트의 구별되는 세트를 감시하는 다중의 메모리 회로(41, 42; 60, 61)를 가질 수 있고, 대응하는 액세스된 데이터 값은 로직 게이트(43)에 의해 결합되거나 또는 정지점 신호(Kij, Lm)를 발생시키기 위해 제2 단의 메모리 회로(62)로의 입력으로서 이용될 수 있다.

Description

미리 정의된 정지점 조건의 발생시에 신호를 감시하는 메모리를 이용하는 디지털 회로{DIGITAL CIRCUIT USING MEMORY FOR MONITORING SIGNALS FOR OCCURRENCES OF PREDEFINED BREAKPOINT CONDITIONS}
임의의 소정의 각종 조건들의 발생, 즉, 신호 세트에서의 신호값의 결합에 대해 디지털 신호 프로세서, 마이크로 제어기, 로직 분석기 및 기타의 회로에 의해 제공되는 하나 이상의 디지털 신호의 세트를 감시하는 것이 공지되어 있다. 로직 분석기의 경우에, 제조자들은 일반적으로 가장 최근의 클록 주기에 걸쳐 어떤 특정 신호 세트에 대한 신호 상태를 단순히 기록하기 위하여 장치에 귀선 버퍼 메모리를 설치함으로써, 어떤 문제가 발생하는지가 나중에 분석될 수 있는 귀선 이력(trace history)이 제공된다. 버퍼의 크기는 저장될 수 있는 최근의 주기의 정확한 수를 결정하고, 일반적으로, 감시된 신호에서 임의의 미리 정의된 조건의 실시간 통지는 제공되지 않는다. 디지털 신호 프로세서(이하, DSP라 함)와 같은 일부 다른 회로의 경우에, 정지점 유닛에 의해 감시되는 신호 세트에서의 미리 정의된 조건의 검출에 응답하여 정지점(또는 정지) 신호를 발생시키는 것이 일반적이다. DSP, 마이크로 제어기 또는 기타 회로의 동작은 동일한 클록 주기에서 즉시 정지되어 프로그래머 또는 다른 사용자가 예컨대 회로의 다양한 레지스터에 제공된 값을 포함한 회로의 내부 상태를 그러한 조건을 발생시킨 프로그래밍 또는 다른 에러를 확인하는 노력으로써 분석할 수 있다. 감시될 중요한 특정 조건의 일례는 소정의 범위를 벗어난 어드레스로 메모리를 접근하는 시도이다. 마이크로 제어기, DSP 등에서, 시동 또는 부트스트랩 루틴은 일반적으로 전원이 먼저 턴 온되어 레지스터 및 다른 회로 소자를 필요한 초기 상태로 프리셋시킬 때에 실현된다. 정지점 유닛은 시동 주기가 완료된 것을 나타낸는 어떤 신호 상태에 대한 루틴 동안에 신호들을 감시할 수 있다. 이어서, 이 유닛에 의해 발생된 "정지점" 신호에 따라서 회로의 통상의 동작을 초기화시킨다.
종래의 정지점 유닛은 전용의 비교기 회로들을 이용하며, 각 회로는 이러한 신호에 대해 일부 조건의 발생을 검출하고 어떠한 검출된 발생의 표시를 출력시키기 위해 관찰되는 신호 세트에서 동작한다. 2개의 비교기를 갖는 이러한 정지점 유닛의 예가 도 1에 도시되어 있다. 각 비교기는 상이한 신호 조건을 검출하기 위해 전용되며, 실제는 16개의 비교기가 많은 조건을 검출하기 위해 정지점 유닛에 있을 수 있다. 도 1에서, 정지점 유닛은 제1 비교기(2), 제2 비교기(4) 및 인크루시브 OR 게이트(6)를 포함한다. 비교기들(2, 4)은 감시될 신호들(B1, B2, ..., BN)의 세트를 입력으로 수신한다. 예컨대, 이러한 신호들은 디지털 신호 프로세서, 마이크로 제어기, 로직 분석기 또는 다른 회로에 의해 프로그램 메모리에서 나오는 명령을 액세스하거나 또는 어떤 어드레스에서 하나 또는 그 이상의 메모리로 향하거나 이로부터 나오는 데이터를 액세스하려는 시도를 나타내거나, 또는 이러한 회로들로부터의 다른 출력 또는 이러한 회로로 가는 입력을 표현할 수 있다. 따라서, 비교기 입력은 메모리 어드레스, 데이터, 에러 플래그(오버플로우와 같은 것) 및 다른 신호들을 표현할 수 있다. 반면에, 도 1은 양 비교기(2, 4)가 동일한 신호(B1, B2, ..., BN)를 수신하는 것을 나타내며, 다른 비교기들은 상이한 또는 중첩하는 신호들의 세트를 수신하고 감시할 수 있다. 제1 비교기(2)는 감시되는 신호들(B1, B2, ..., BN)과 수가 같고 상응하는 기준 신호들(R1, R2, ..., RN)의 세트를 수신하거나, 또는 내부적으로 저장한다. 기준 신호들(R1, R2, ..., RN)은 검출될 조건에 대한 신호값을 나타낸다. 각 입력 신호 Bi(i=1 내지 N)는 대응하는 기준 신호 Ri와 부합되고, 비교기(2)는 감시되는 조건의 발생을 표시하는 로직 레벨 "1"로써 표시 신호 I1을 출력한다. 그렇지 않으면, 비교기(2)는 표시 신호 I1에 대해 로직 레벨 "0"을 출력한다. 유사하게, 제2 비교기(4)는 감시되는 입력 신호들(B1, B2, ..., BN)에 대해 다른 조건을 표시하는 상이한 기준 신호(R1, R2, ..., RN) 세트를 수신하거나, 또는 내부적으로 저장한다. 비교기(4)는 조건이 검출되면 로직 레벨 "1"이고 조건이 검출되지 않을 경우에는 언제나 로직 레벨 "0"인 제2 표시 신호 I2를 출력한다.
비교 결과는 제1 표시 신호 I1에 대해 나타낸 바와 같이 개별적으로 이용될 수 있다. 예컨대, 하나의 표시 신호가 필요한 시작 조건을 신호할 수 있고, 반면에 다른 표시 신호는 필요한 정지 조건을 신호할 수 있다. 양자 택일로, 2개 또는 그 이상의 지지 신호들이 하나 또는 그 이상의 로직 게이트에 의해 일부 논리적인 방식으로 하나 또는 그 이상의 로직 게이트에 의해 결합될 수 있다. 예컨대, 도 1에서, 비교기(2, 4)에 의해 출력되는 제1 및 제2 표시 신호(I1, I2)는 인크루시브 OR 게이트(6)에 입력된다. 제3 표시 신호(I3)는 게이트(6)에 의해 출력되고 다른 중요한 조건의 발생을 표시한다.
전형적인 비교기(8)가 도 2에 나타낸 바와 같이 구성되어 있다. 이 비교기는 배타적 NOR 세트 또는 배타적 OR 게이트(101, 102, ..., 10N)를 포함하며, N개의 입력 신호(B1, B2, ..., BN)의 각각은 감시되고 기준값(R1, R2, ..., RN)과 비교될 것이다. 기준값(R1, R2, ..., RN)은 N 비트 레지스터(12)에 저장될 수 있다. 따라서, 각 XNOR 로직 게이트(101, 102, ..., 10N)는, 하나는 입력 신호 Bi(i=1 내지 N)이고 다른 신호는 대응하는 기준 신호 Ri인 2개의 신호를 수신한다. 각 게이트는 그 비트 비교의 결과를 출력한다. 또한, 비교기는 N-1개의 2입력 AND 게이트(141, 142, ..., 14N-1)의 세트를 포함한다. (N이 너무 크지 않다면, N입력 AND 게이트가 적소에서 이용될 수 있다.) 모든 N 비트 비교 결과를 결합한 결과는 정지점 유닛의 j번째 비교기(8)에 대한 표시 신호 Ij로서 출력된다. 이러한 실현은 일반적으로 8비트 입력 신호까지 비교를 제한하거나, 또는 극대의 경우는 16비트 입력 신호까지 가능하다. 또한, 각 비교기는 통상적으로 분리된 집적 회로 칩 상에서 실현된다.
종래의 접근은 각 전용 비교기 장치에 대해서 단 하나의 부합되는 조건을 허용하기 때문에, 종래의 정지점 유닛은 약간의 사용자 정의 가능한 조건을 실현하는데 한정된다. 따라서, 종래의 유닛은 단지 상용자가 약간의 간단한 중요 조건에 대해 검출하고 동작하도록 허용한다. 예컨대, 16개의 비교기로써 정지점 유닛은 8개의 프로그램 메모리 어드레스, 4개의 데이터 메모리 어드레스 및 4개의 데이터값(즉, 액세스된 메모리 내용)에 대한 DSP의 액세스를 허용한다. 여러 동작 조건의 복잡한 논리 구성은 매우 고비용이어서, 간단한 구성만이 시도된다. 예컨대, 종래의 유닛에 대해 가능한 일구성은, 임의의 어드레스가 42와 같거나 또는 어드레스가 85와 같거나 또는 데이터가 22와 같거나 또는 데이터가 27과 같으면, 종료한다. 또한, 이러한 한정된 감시 성능으로조차 비교기/로직 회로 필요 조건은 일반적으로 감시되는 장치에서 분리된 오프칩(off-chip) 정지점 유닛을 상술한다.
본 발명의 목적은 방대한 양의 정의된 조건들 또는 조건군들에 대한 신호 세트를 감시할 수 있는 장치를 제공하고, 감시된 신호 세트 또는 세트들에서 임의의 하나 이상의 이러한 조건의 발생을 검출에 대해 회로의 시작 또는 정지 동작을 실시간으로 통지하는 것을 제공하는 데 있다.
본 발명의 다른 목적은 정의된 신호 조건의 논리적인 구성에 대해 전술한 통지를 제공하는 효과적인 방법을 제공하는 것이다.
본 발명의 또 다른 목적은 정의된 조건들이 쉽게 재프로그래밍될 수 있는 전술한 장치를 제공하는 것이다.
본 발명은 디지털 신호 프로세서, 마이크로 제어기 및 로직 분석기에 의해 제공되는 신호와 같이 하나 이상의 신호들을 관찰 또는 감시하고, 감시되는 신호의 세트에서 미리 정의된 조건의 발생시에 일반적으로 신호가 감시되는 칩의 정지(또는 초기화) 동작에 대한 정지점(breakpoint) 신호의 형태로 실시간 통지를 제공하는 정지점 유닛으로 공지된 디지털 회로에 관한 것이다.
도 1은 정지점 신호를 발생시키기 위해 비교기 회로를 이용하는 종래 기술의 정지점 유닛의 개략도.
도 2는 도 1의 회로에 사용하는 종래의 1개의 비교기의 블록도.
도 3은 정지점 신호를 발생시키기 위한 랜덤 액세스 메모리 칩(10)과 디지털 신호 프로세서 칩(60)을 포함하는, 본 발명의 시스템의 바람직한 실시예의 개략도.
도 4는 도 3의 램 칩(10)을 도 3의 시스템 상에서 다양하게 대치시킬 수 있는 다중 칩 램 회로와 프로세서(19)를 구비하는, 본 발명의 시스템의 다른 실시예의 개략도.
도 5는 도 3의 램 칩(10)을 도 3의 시스템 상에서 다양하게 대치시키기 위한 램 칩의 개략도.
도 6은 도 3의 램 칩(10)을 도 3의 시스템 상에서 다양하게 대치시키기 위한 다중 칩 램 회로의 개략도.
도 7은 램 칩(92~100), 로직 회로(102), (정지점 신호를 발생시키기 위한) 타이머(106) 및 디지털 신호 프로세서 칩(90)을 구비하는, 본 발명의 시스템의 다른 실시예.
상기의 목적은 종래의 유닛에서 비교기의 적소에 메모리를 사용하고 감시되는 신호를 적어도 1개의 메모리 칩을 액세스하는 어드레스 비트로서 처리하는 정지점 유닛에 의해 달성된다. 감시되는 조건들, 즉 신호 구성들은 대응하는 메모리 위치에서 프로그래밍된 비트에 의해 표현될 수 있다. 따라서, 중요한 모든 신호 구성은 중요한 어드레스로서 다루어지고, 메모리 출력은 검사했던 임의의 신호 조건이 발생했는지의 여부를 나타내는데, 이는 임의의 이러한 발생이 메모리의 대응하는 어드레스에서 하나 이상의 프로그램된 표시 비트를 액세스하고 그 비트 또는 비트들을 메모리에 의해 출력되게 한다. 따라서, 프로그램된 메모리는 중요한 조건의 맵을 포함한다.
메모리는 감시되는 조건들의 하나의 군을 표시하기 위해 1비트 폭의 메모리가 될 수 있고, 또는 분리된 조건군들을 정의하기 위해 (다중 비트 출력을 제공하는) 다중 비트폭의 메모리가 될 수 있다. 메모리 출력은 자체로서 표시 또는 정지점 신호로서 이용될 수 있거나, 또는 논리적으로 구성될 수 있다. 제2 메모리단은 통상적인 논리 게이트의 적소에 복잡한 표시 신호 구성을 실현하는데 이용될 수 있다. 카운터는 신호가 발생할 때에 표시 신호들을 수신하는데 이용될 수 있고 일부 특정 수의 조건들이 발생한 후에만 정지점 신호를 발생시킨다.
조합된 디지털 신호가 정지점 유닛에 의해 감시될 수 있는 회로는 디지털 신호 프로세서, 마이크로 제어기, 로직 분석기, 다른 디지털 회로, 그리고 심지어는 하이브리드 아날로그 디지털 회로를 포함한다. 신호들은 하나 이상의 입력되는, 출력되는, 그리고 (레지스터 값과 같은) 회로의 내부의 동작하는 상태뿐만 아니라 프로그램 또는 데이터 메모리의 감시되는 회로, 또는 버스를 따르는 일부 다른 회로의 감시되는 회로에 의한 액세스 또는 시도된 액세스를 나타낼 수 있다. 만약, 복수의 메모리 칩이 정지점 유닛에서 사용된다면, 각 칩은 수신할 수 있으므로써 동일한 신호 세트를 감시하거나 또는 모든 신호의 서브세트가 상이한 조건군에 대해 중첩되는지 또는 완전히 분리되는지를 구별한다.
본 발명의 정지점 유닛은 오직 메모리의 크기에 따라 임의의 하나 이상의 매우 큰 수의 정의된 조건들의 검출을 가능하게 하며, 이러한 조건들은 더 큰 조건군들 또는 조건의 구성들로 개별적으로 또는 여러 구룹별로 사용될 수 있다. 또한, 본 발명은 제한된 성능의 많은 비교기 칩을 메모리 칩 또는 칩들로 대체하며, 각각은 더 큰 성능을 갖는다. 또한, 메모리는 쉽게 재프로그램되고, 필요하다면 동작중에도 재프로그램된다. 이외의 장점은 바람직한 실시예의 설명에서 알 수 있다.
하기에 설명된 정지점 유닛이 디지털 신호 프로세서(DSP) 감시에 응용되는 것에 도시되어 있는데, 본 발명의 정지점 유닛이 또한 한정되지 않으나, 마이크로 제어기 및 로직 분석기를 포함하는 다른 회로로 입력되거나 그로부터 출력되는 디지털 신호를 감시하는 데 이용될 수 있는 것을 이해해야 한다. 또한, 발명의 정지점 유닛으로 감시될 대부분의 회로들이 완전히 디지털로 될 것이라고 예상되는데, 하이브리드 아날로그 디지털 회로에 입력되거나 회로에서 출력되는 디지털 신호는 또한 본 발명으로 감시될 수 있다는 것을 이해해야 한다. 또한, 회로로 입력되는 신호들도 감시될 수 있다.
바람직한 실시예에서, 본 발명은 N 상태 비트 또는 다른 신호 출력(N은 정수이고 각 비트 또는 출력 신호는 DSP의 노드 또는 소자의 상태 또는 동작 조건을 나타냄)을 어서트(assert)하는 디지털 신호 프로세서(DSP) 또는 다른 디지털 회로를 포함하는 시스템이고, DSP로부터 N 비트를 수신하는 메모리 회로이다. 메모리 회로(랜덤 액세스 메모리가 바람직함)는 메모리 셀(DSP에 대한 정지점 신호값을 결정하는 데이터를 저장하는 각 셀)의 M * 1 어레이와 N 상태 비트에 응답하는 임의의 선택된 1개의 셀에서 독출하기 위한 수단을 포함한다. 각 상태 신호가 2진 신호인 바람직한 실시예에서, M = 2N이다. 상태 비트 함수는 때때로 N 비트 "어드레스" 신호로서 칭해진다(N 비트 어드레스 신호는 DSP의 동작하는 조건을 나타낸다). 바람직한 실행에서, 메모리 회로는 1개의 메모리 셀의 내용을 각 어드레스 신호에 응답하여 DSP로 (정지점 신호로서) 어서트시키고, DSP는 제1 값을 갖는 그러한 각 정지점 신호에 응답하여 하나의 동작을 정지시킨다. 대안이 되는 실시예에서, 전술한 DSP는 상태 비트를 메모리 회로로 어서트시키고, 정지점 신호(여기에서 정지점 신호는 상태 비트에 응답하여 메모리 회로에 의해 발생된다)를 처리하기 위한 수단을 포함하는 일부 다른 회로에 의해 대체된다.
본 발명의 다른 실시예는 설명된 시스템에 의해 실현될 수 있는 정지점 신호 발생 방법이다.
바람직한 실시예에서, 본 발명의 시스템은 N 상태 비트의 세트의 값의 각 구성에 대해 레벨(예컨대, 논리적인 "1" 또는 "0" 레벨)을 갖는 정지점 신호를 어서트시키기 위해 신호 램 칩(메모리 셀의 M * 1 어레이를 포함)을 채택하며, 여기에서 N은 큰 수(바람직한 실시예에서 M = 2N)이고, 각 상태 비트의 값은 노드 또는 제1 회로의 소자의 상태 또는 동작 조건을 나타낸다. 바람직한 실시예의 다른 군에서, 본 발명의 시스템은 상태 비트의 매우 더 큰 세트의 값의 각 구성에 대해 레벨(예컨대, 논리적인 "1" 또는 "0" 레벨)을 갖는 정지점 신호를 어서트시키기 위해 적은 수의 램 칩과 단순한 로직 회로를 채택하며, 각 상태 비트의 값은 회로의 노드 또는 소자의 상태 또는 동작 조건을 나타낸다. 도 3에서와 같은 바람직한 실시예의 군에서, 본 발명은 디지털 신호 프로세서(예컨대, 도 3의 DSP(20))와, 소정의 조건 하에서 DSP의 정지 동작에 대해 정지점 신호(예컨대, 도 3의 2진 신호 Ii)를 어서트시키기 위한 단일 램 칩(예컨대, 도 3의 램 칩(30))을 구비하는 시스템이다.
도 3의 DSP(20)는 프로그램 메모리(도 3에 도시되지 않음), 프로그램 메모리로부터 명령을 페치시키고 디코드하기(이로써 명령의 실행을 제어하기 위한 제어 신호를 발생시킴) 위한 프로그램 제어 유닛("PCU")(21), 및 PCU(21)에서 출력되는 제어 신호에 응답하여 데이터에 대해 동작(예컨대, 산술 계산)을 실행하기 위한 프로세싱 유닛(22)을 구비한다.
DSP(20)는 램(30)에 의해 감시되는 BN(N은 1보다 큰 수)을 통하여 2진 상태 비트 신호 B1을 어서트시키기 위한 수단을 포함한다. 각 상태 비트(각 상태 비트 신호에 의해 결정된 상태 비트)의 값은 DSP(20)의 1개 노드 또는 소자의 상태 또는 조건을 나타내고, 따라서, BN을 통하여 신호 B1에 의해 결정된 N 상태 비트는 DSP(20)의 동작 조건을 선택적으로 나타낸다.
편의상, 회로의 "상태를 나타내는 상태 비트"라는 표현이 하기에서(청구함 포함) 회로의 "노드 또는 소자의 상태 또는 조건을 나타내는 상태 비트"를 의미하도록 사용될 것이다. 회로의 "상태"는 회로에 의해 입력 또는 수신되는 신호, 데이터 신호를 포함한 회로에서 출력되는 신호, 회로에 의해 프로그램 또는 데이터 메모리를 액세스하거나 다른 회로의 동작과 통신 또는 제어하는 시도, 신호 변경 및 에러 또는 다른 플래그, 그리고 다양한 인터넷 레지스터의 상태 뿐만 아니라 다양한 내부 회로 소자의 동작 모드를 포함하는 것으로 이해되어야 한다.
도 3에 나타낸 바와 같이, DSP(20)의 PCU(21)는 상태 비트 신호 B1(B1은 PCU(21)의 상태를 나타냄)을 어서트시키고, 프로세싱 유닛(22)은 상태 비트 신호 B2-BN(B2-BN은 유닛(22)의 상태를 나타냄)을 어서트시킨다. 도 3에서 다양한 실시예에서 자세히 보았는데, 상태 비트 신호 B1-BN은 DSP(20)의 일부 또는 모든 노드 또는 소자의 상태 또는 조건의 폭넓게 다양한 것 중 임의의 것을 나타낸다.
각 상태 비트 신호 B1-BN은 시간과 함께 다양한 값을 갖는다. 상태 비트 신호 B1-BN은 램(30)의 어드레스 디코더 유닛(32)과 병렬로 N 비트 어드레스 신호로서 인가된다. 또한, 램(30)은 메모리 셀 어레이(34)를 포함한다. 어레이(34)는 M 메모리 셀로 구성된 M * 1 어레이다. 1개의 2진 비트는 어레이(34)의 각 셀에 저장될 수 있다. 임의의 순간에, 비트 신호 B1-BN은 N 비트의 2진값을 결정하며(B1은 매우 중요한 비트를 결정하고 BN은 적어도의 중요한 비트를 결정함), 이는 어레이(34)의 1개 셀의 어드레스에 대응한다. 또한, 임의의 순간에서의 신호 B1-BN의 N 비트의 2진값은 DSP(20)의 동작 조건(신호 B1-BN이 비롯된 DSP(20)의 N개의 노드 또는 소자의 상태 또는 조건에 의해 결정된 동작 조건)을 나타낸다. 디코더(32)는 신호 B1-BN에 의해 결정된 각 N 비트의 2진값에 응답하여 어레이(34)의 다른 셀을 선택한다. 램(30)은 선택된 셀(2진 신호 Ii)의 내용을 정지점 신호로서 (DSP(20)의) PCU(21)로 어서트시킨다. PCU(21)는 특정값을 갖는 이러한 각 정지점 신호에 응답하여 DSP(20)의 동작(또는 일부 또는 모든 동작)을 정지시킨다.
일례에서, 논리적인 "1"을 나타내는 레벨을 갖는 2진 정지점 신호 Ii에 응답하여 PCU(21)는 DSP(20)의 동작(또는 일부 또는 모든 동작)을 정지시킨다. 이러한 예에서, 정지점 신호 Ii는 어드레스 신호 B1-BN에 이 논리적인 "1" 비트를 저장하는 어레이(34)의 셀을 선택할 때에는 언제나 DSP(20)의 동작의 정지를 유발시킨다. 일반적으로, 어레이(34)의 많은 셀은 논리적인 "0"을 나타내는 데이터를 저장하고, 어레이(34)의 남은 셀은 논리적인 "1"을 나타내는 데이터를 저장한다.
도 4는 본 발명의 시스템의 대안이 되는 실시예이고, 이 시스템은 도시된 바와 같이 연결된 프로세서(40)와, 제1 램 칩(41)(메모리 셀의 2P* 1 어레이를 포함)과 제2 램 칩(42)(메모리 셀의 2Q* 1 어레이를 포함)을 포함하는 다중 칩 램 회로와, 인크루시브 OR 게이트를 포함한다. 대안으로, 도 4의 다중 칩 램 회로는 도 3의 램 칩(30)(또는 램 칩(92~100) 및 도 7의 로직 회로(102))을 대체하는데 이용될 수 있다. 도 4에서, 프로세서(40)는 바람직하게도 외부 장치(도시하지 않음)에서 출력된 명령에 응답하여 내부 제어 신호의 순차를 어서트하기 위해 (도 3의 DSP와 같은 프로그램 메모리 및 프로그램 제어 유닛보다는) 상태 장치를 포함하는 집적 회로이다.
도 4의 회로의 설명을 단순화하기 위해, P = 3(램(41)은 8개의 메모리 셀을 갖춤)이고 Q = 4(램(42)은 16개의 메모리 셀을 갖춤)인 실현을 고려한다. 이러한 실현에서, 비트 신호 B1, B2및 B3은 어드레스 신호로서 프로세서(40)로부터 제1 램(41)으로 병렬로 어서트되고, 램(40)에 응답하여 이러한 각 어드레스 신호에 의해 선택된 셀의 내용(2진 신호 Ii)을 어서트시킨다. 유사하게, 비비트 신호 B1, B2, B4및 B5는 어드레스 신호로서 프로세서(40)로부터 제2 램(42)으로 병렬로 어서트되고, 램(42)에 응답하여 이러한 각 어드레스 신호에 의해 선택된 셀의 내용(2진 신호 Jj)을 어서트시킨다. 신호 Ii및 Jj는 OR 게이트(43)의 2개의 입력으로 인가된다. 신호 Ii및 Jj의 각 쌍에 응답하여, 게이트(43)는 정지점 신호 Kij를 어서트시킨다. 램(41)의 메모리 어레이가 8개의 셀을 가지기(각각은 3비트 어드레스 신호의 상이한 값에 의해 선택됨) 때문에, 램(42)의 메모리 어레이는 16개의 셀을 가지며(각각은 4비트 어드레스 신호의 상이한 값에 의해 선택됨), 정지점 신호 Kij는 어드레스 신호들의 비트들의 128가지 가능한 구성 중 하나에 의해 결정된 값을 가지고, 따라서, 정지점 신호 Kij의 값은 프로세서(40)의 128가지 가능한 동작 조건 중 하나를 나타낸다. 전형적인 실행에서, Ii및 Jj가 2진 신호이고, 또한 신호 Kij도 2진 신호이다.
도 4의 실시예의 여러가지 변형에서, 본 발명의 시스템은 출력이 로직 회로에 인가되는 다양한 구성의 메모리 회로(램 칩이 바람직함)를 포함한다. 본 발명의 정지점 신호는 로직 회로의 출력에서 어서트되고, 감시되는 회로(예컨대, DSP)로부터 메모리 회로로 인가되는 어드레스 신호에 의해 나타내지는 동작 조건의 일부 논리적인 구성을 나타낸다. 대안으로, 로직 회로는 생략하고 다중 정지점 신호는 메모리 회로로부터 DSP(또는 어드레스 신호가 비롯되는 다른 회로)로 직접 어서트된다. 본 발명의 시스템의 임의의 실시예의 각 메모리 회로는 (전술한 램(30)의 실현에서와 같은) 1 비트 폭의 셀 어레이 또는 (도 5에 관련되어 하기에서 설명될 실시예에서와 같은) 2 이상의 비트폭의 셀 어레이를 포함할 수 있다.
본 발명의 시스템의 다른 실시예에서, 도 5의 램 칩(50)은 도 3의 램 칩(또는 도 7의 1개 이상의 램 칩(92~100))을 대체한다. 램 칩(50)은 메모리 셀 어레이(53)(N * Z의 메모리 셀 어레이를 포함하고, N 및 Z는 1 이상의 정수)를 포함한다. 1개의 2진 비트가 어레이(53)의 각 셀에 저장될 수 있다. 또한, 램 칩(50)은 X 어드레스 디코더(로우 선택) 유닛(51)과 Y 어드레스 디코더(컬럼 선택) 유닛(52)을 포함한다.
DSP(20)는 램(30) 대신에 램(50)에 의해 감시될 수 있고 상태 비트 신호 B1~BN및 C1~CZ를 램(50)에 어서트시킨다. 각 상태 비트 신호는 시간과 함께 변화하는 값을 갖는다. 상태 비트 신호 B1~BN은 N 비트 어드레스 신호로서 램(50)의 X 디코더 유닛(51)으로 병렬로 인가되고, 상태 비트 신호 C1~CZ는 Z 비트 어드레스 신호로서 Y 디코더 유닛(52)으로 병렬로 인가된다. 임의의 순간에, 비트 신호 B1~BN은 N 비트 2진값을 결정하고(B1은 가장 중요한 비트를 결정하고 BN은 적어도의 중요한 비트를 결정함), 이는 어레이(53)의 셀의 1개 로우의 어드레스에 대응되고, 비트 신호 C1~CZ는 Z 비트 2진값을 결정하며(C1은 가장 중요한 비트를 결정하고 CZ는 적어도의 중요한 비트를 결정함), 이는 어레이(53)의 셀의 1개 컬럼의 어드레스에 대응된다. 또한, 임의의 순간에서의 신호 B1~BN의 N 비트 2진값은 DSP(20)의 동작 조건(신호 B1~BN이 비롯되는 DSP(20)의 N개의 노드 또는 소자의 상태 또는 조건에 의해 결정된 동작 조건)을 나타내고, 임의의 순간에서의 신호 C1~CZ의 Z 비트 2진값은 DSP(20)의 다른 동작 조건(신호 C1~CZ가 비롯되는 DSP(20)의 Z개의 노드 또는 소자의 상태 또는 조건에 의해 결정된 동작 조건)을 나타낸다. 디코더 유닛(51, 52)은 신호 B1~BN및 C1~CZ에 의해 결정된 각 쌍의 2진 값에 응답하여 어레이(53)의 상이한 셀을 선택한다. 램(50)은 선택된 셀의 내용(2진 신호 Klm)을 정지점 신호로서 DSP(20)로 어서트시킨다. DSP(20)는 특정값을 갖는 이러한 각 정지점 신호에 응답하여 어떤 동작(또는 일부 또는 모든 동작)을 정지한다. 정지점 신호 Klm은 어드레스 신호의 M * Q개의 가능한 비트 구성에 의해 결정된 값을 가지며, M = 2N이고 Q = 2Z이다. 따라서, 정지점 신호 Klm의 값은 DSP(20)의 M * Q개의 가능한 동작 조건 중 하나를 나타낸다.
셀 어레이가 셀의 다중 컬럼을 포함하는(예컨대, Z 컬럼을 포함하는 셀 어레이이고, 각 컬럼은 N개의 셀을 포함) 메모리 회로의 사용은 본 발명의 시스템을 가능하게 하여서, 단지 1개의 이러한 컬럼을 포함하는(N개의 셀 포함) 셀 어레이이 사용되면 가능한 것보다 더 큰 상태 비트의 세트를 나타내는 정지점 신호를 생성한다. 높은 용량성의 램 칩이 상업적으로 (낮은 비용으로) 가능하다. (하나 이상의 어드레스 신호로서) 메모리 회로에 병렬로 어서트되는 상태 비트 신호의 각 가능한 세트를 위해 필요한 데이터량(예컨대, 1 비트)을 저장하기 위해 충분한 수의 셀을 갖는 적어도의 비용의 상업적으로 유용한 램 칩의 구성(1개 이상의 램 칩으로 구성될 수 있음)을 이용하는 본 발명의 메모리 회로를 실현하는 것이 종종 바람직할 것이다. 예컨대, N * Z개의 상태 비트 신호가 메모리 회로에 병렬로 어서트된다면, 원칩 실현이 Z개의 칩 실현보다 저비용으로 실현될 수 있다면 Z개의 램 칩(각각은 N개의 셀의 1개 컬럼을 가짐)보다는 메모리 회로를 단일 램 칩(N개의 셀의 Z개의 컬럼 또는 N * Z개의 셀의 1개 컬럼을 가짐)으로서 실현하는 것이 일반적으로 바람직하다.
또 다른 실시예의 대안에서, 도 6의 다중칩 램 회로는 도 4의 램 회로(41~43)(또는 도 7의 1개 이상의 램 칩(92~100))를 대체한다. 도 6의 회로는 제1 램 회로단과 제2 램 회로단을 포함한다. 제1 단은 제1 램 칩(60)(메모리 셀의 8 * 1개의 어레이를 포함)과 제2 램 칩(61)(메모리 셀의 16 * 1개의 어레이를 포함)으로 구성되고, 제2 단은 램 칩(62)(메모리 셀의 4 * 1개의 어레이를 포함)으로 구성된다.
도 4의 실시예에서와 같이, 비트 신호 B1, B2및 B3은 어드레스 신호로서 프로세서(40)로부터 램(60)으로 병렬로 어서트되고, 램(60)에 응답하여 이러한 각 어드레스 신호에 의해 선택된 셀의 내용(2진 신호 Ii)을 어서트시킨다. 유사하게, 비비트 신호 B1, B2, B4및 B5는 어드레스 신호로서 프로세서(40)로부터 램(61)으로 병렬로 어서트되고, 램(61)에 응답하여 이러한 각 어드레스 신호에 의해 선택된 셀의 내용(2진 신호 Jj)을 어서트시킨다. 신호 Ii및 Jj는 2 비트 어드레스 신호로서 램(62)에 인가되고, 램(62)에 응답하여 이러한 어드레스 신호에 의해 선택된 셀의 내용(2진 신호 Lm, 여기에서 m은 1, 2, 3 또는 4)을 어서트시킨다. 램(60)의 메모리 어레이가 8개의 셀을 가지기(각각은 3비트 어드레스 신호의 상이한 값에 의해 선택됨) 때문에, 램(61)의 메모리 어레이는 16개의 셀을 가지며(각각은 4비트 어드레스 신호의 상이한 값에 의해 선택됨), 정지점 신호 Lm은 프로세서(40)에서 출력된 어드레스 신호들의 비트들의 128가지 가능한 구성 중 하나에 의해 결정된 값을 가지고, 따라서, 정지점 신호 Lm의 값은 프로세서(40)의 128가지 가능한 동작 조건 중 하나를 나타낸다.
도 6의 2개 단의 실시예의 변형들은 다음 관련 내용, 즉, 램 회로의 부가적인 단이 포함될 수 있고, 램 회로의 각 단은 임의의 필요한 수의 램 회로를 포함할 수 있으며, 그리고 각 단의 각 램 회로는 임의의 필요한 수의 메모리 셀을 포함할 수 있는 내용 중 하나 이상에 있어서 도 6에 도시된 회로와 다르다.
도 7은 본 발명의 정지점 시스템의 다른 실시예이며, 디지털 신호 프로세싱 시스템(70)을 포함한다. DSP 시스템(70)은 어드레스 버스(80) 상에서 전송된 어드레스 신호의 수단에 의해 프로그램 메모리(74)에서 나오는 명령 버스(82) 상에서 명령을 액세스하는 프로세서(72)를 포함한다. 또한, 프로세서(72)는 관련된 메모리(76, 78)로 가는 어드레스 버스(84, 88) 상에서 전송된 어드레스 신호의 수단에 의해 데이터 메모리(76, 78)에서 나온 데이터를 데이터 버스(86, 90) 상에서 액세스한다. 정지점 유닛은 램 칩(92, 94, 96, 98, 100), 로직 회로(102) 및 정지점 신호를 발생시키기 위한 카운터(104)를 포함한다. 정지점 신호는 "정지" 값이든지 "비정지" 값을 갖는 (카운터(104)로부터 출력되는) 2진 신호이며, DSP(90)로 어서트된다.
각 램 칩(92, 94, 96, 98, 100)은 메모리 셀 어레이를 가지며, 각각은 DSP(90)에서 나온 다중 비트 어드레스 신호에 응답하여 어레이의 선택된 셀로부터 로직 회로(102)로 데이터값을 출력한다. 특히, 램 칩(92, 94, 96, 98, 100)은 내부 버스(80, 84, 86, 88, 90)에서 나온 어드레스 및 데이터 신호에 대응하는 버스(81, 85, 87, 91)상의 신호를 감시한다. 따라서, DSP 시스템(70)에 의한 프로그램 및 데이터 메모리(74, 76, 78)의 액세싱은 소정의 조건에 대해 감시된다. 각 램 칩의 어레이의 각 셀은 마이크로 프로세서(106)로부터 램 칩에 기록함으로써 프로그램될 수 있다(프로그래밍 및 재프로그래밍 동안 프로그램된다, 또한 마이크로 프로세서(106)는 적합한 어드레스 신호를 프로그램되는 각 램 칩으로 인가한다). 마이크로 프로세서(106)는 필요하면 언제나 램 칩들 중 모든 또는 선택된 것의 메모리 셀 어레이를 다른 데이터값의 어레이로 재프로그램할 수 있다. 일반적으로, 하나의 2진 비트가 각 메모리 어레이의 각 셀에 저장된다.
DSP 시스템(70)으로부터 램(92~100)으로 공급된 각 신호는 복수개의 신호 비트로 구성되고, 각 비트는 DSP 시스템(70) 내의 본 발명의 상태 또는 조건을 나타낸다. 임의의 순간에, 신호 비트는 램(92~100) 중에서 임의의 램의 셀 어레이 중 1개의 셀의 어드레스에 대응하는 다중 비트 2진 값을 결정한다. 각 램의 디코더 회로는 램 입력에서 수신된 신호 비트에 의해 결정된 각 다중 비트 2진 값에 응답하여 램의 어레이의 상이한 셀을 선택하고, 램은 선택된 셀의 내용(일반적으로 단일 2진 비트)을 조합의 로직 회로(102)로 출력한다. 회로(102)는 램(92~100)에서 회로(102)로의 데이터 입력의 필요한 논리 구성을 나타내는 단일 2진 비트 Km을 발생시키기 위해 충분한 수의 AND 게이트 및/또는 OR 게이트를 포함한다. 2진 비트 Km(논리적인 1 또는 0을 나타낸는 레벨)의 특정 레벨은 카운터(104)를 트리거시킨다.
일정한 횟수로 트리거되는 것에 응답하여, 카운터(또는 트리거 신호의 어서트 후의 소정 시간에 신호를 발생시키는 다른 수단)(104)는 정지점 신호(바람직하게는 소정의 시간이 마이크로 프로세서(106)에서 카운터(104)로의 적합한 제어 신호의 어서트에 의해 제어될 수 있다)를 어서트시킨다. DSP 시스템(70)은 "정지" 값을 갖는 이러한 각 정지점 신호에 응답하여 일부 또는 모든 동작을 정지시킨다. 일례로, 논리적인 "1"을 나타내는 레벨을 갖는 카운터(104)의 출력에서 어서트되는 2진 정지점 신호에 응답하여, 시스템(70)은 일부 또는 모든 동작을 정지시킨다.
본 발명의 시스템의 대안이 되는 실시예에서, DSP(20 또는 70)는 메모리 바탕의 정지점 유닛에 의해 감시되는 신호 비트를 출력하는 다른 프로세싱 회로 또는 시스템에 의해 대체되고, 이는 상태 비트에 응답하여 메모리 회로에 의해 발생된 정지점 신호를 프로세싱(처리)하기 위해 수단을 포함한다. 이러한 프로세싱 회로 또는 시스템의 예는 (전술한 DSP에서와 같은 프로그램 메모리 및 프로그램 제어 유닛보다는) 외부 장치에서 비롯된 명령에 응답하여 내부 제어 신호의 순차를 어서트하기 위한 상태 장치를 포함한다.
도 3 내지 도 7과 관련하여 설명된 시스템에 의해 실현되는 방법 및 그 변형예는 본 발명의 기술적 사상의 범주 내에 있다. 바람직한 실시예에서, 본 발명에 따른 방법은,
(a) N개의 상태 비트(여기에서, N은 1보다 큰 정수이고, 각 상태 비트는 노드 또는 소자의 상태 또는 동작 조건을 나타내는 제1 회로의 상태를 나타냄)를 메모리 셀의 어레이를 포함하는 메모리 회로로 어서트(assert)하는 단계와,
(b) N개의 상태 비트의 적어도 하나의 서브세트에 응답하여 1개의 선택된 셀로부터 정지점 신호의 값을 결정하기 위해 제1 데이터를 독출하는 단계를 포함한다.
또한, 본 발명에 따른 방법은,
(c) N개의 상태 비트의 제2 서브세트에 응답하여 다른 1개의 셀로부터 정지점 신호의 값을 결정하기 위해 제2 데이터를 독출하는 단계와,
(d) 상기 정지점 신호의 값을 갖는 정지점 신호를 발생시키도록 로직 회로 내에서 제1 데이터 및 제2 데이터를 처리하는 단계를 선택으로 포함한다.
또한, (b) 단계에서 발생된 제1 데이터는 상기 정지점 신호의 값을 갖는 정지점 신호이다.
대안이 되는 다른 실시예에서, (b) 단계는 N개의 상태 비트의 상기 서브세트를 어드레스 비트로서 메모리 회로의 제1 단의 메모리 회로로 어서트함으로써 실현되고, 또한 상기 방법은,
(c) N개의 상태 비트의 제2 서브세트를 메모리 회로의 제1 단에서의 제2 메모리 회로로 어서트하는 것에 응답하여 다른 1개의 셀로부터 정지점 신호의 값을 결정하기 위한 제2 데이터를 독출하는 단계와,
(d) 제1 데이터 및 제2 데이터를 어드레스 비트로서 메모리 회로의 제2 단에서의 제3 메모리 회로로 어서트하는 것에 응답하여 상기 값을 갖는 정지점 신호를 제3 메모리 회로로부터 독출시키는 단계를 포함한다.
또한, 바람직하게는 상기 방법은, (e) 정지점 신호를 제1 회로로 어서트하는 단계와, (f) 정지점 신호의 제1 값에 응답하여 제1 회로의 동작을 정지시키는 단계를 포함한다.

Claims (21)

  1. 제1 회로의 동작을 제어하기 위한 정지점 신호를 발생시키는 방법에 있어서,
    (a) 적어도 2개의 상태 비트를 상기 제1 회로로부터 메모리 회로로 어서트하는 단계로서, 각각의 상태 비트는 상기 제1 회로의 상태를 나타내며, 상기 메모리 회로는 적어도 제1 메모리 및 제2 메모리를 갖는 제1 단을 포함하고, 상기 제1 및 제2 메모리는 상기 상태 비트의 제1 및 제2 서브세트에 의해 어드레스 가능한 메모리 셀의 제1 및 제2 어레이를 각각 가지며, 상기 상태 비트의 서브세트는 어드레스 비트로서 상기 제1 및 제2 메모리로 어서트되는 것인 어서트 단계와;
    (b) 어드레스 비트로서 상기 제1 메모리로 어서트된 상태 비트의 상기 제1 서브세트에 응답하여 메모리 셀의 제1 어레이의 셀 중 선택된 1개의 셀로부터 상기 정지점 신호의 값을 결정하기 위해 제1 데이터를 독출하는 단계와;
    (c) 어드레스 비트로서 상기 제2 메모리로 어서트된 상태 비트의 상기 제2 서브세트에 응답하여 메모리 셀의 제2 어레이의 셀 중 선택된 1개의 셀로부터 상기 정지점 신호의 값을 결정하기 위해 제2 데이터를 독출하는 단계와;
    (d) 상기 제1 데이터 및 상기 제2 데이터를 어드레스 비트로서 상기 메모리 회로의 제2 단의 제3 메모리로 어서트하고, 상기 어서트된 제1 및 제2 데이터에 응답하여 상기 제3 메모리에 포함된 메모리 셀의 제3 어레이의 셀 중 선택된 셀로부터 제3 데이터를 독출하는 단계와;
    (e) 상기 값을 갖는 상기 정지점 신호를 발생시키기 위해 상기 제3 데이터를 처리하는 단계를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 단계 (e)는,
    상기 제3 데이터를 카운터로 어서트하는 단계로서, 상기 카운터는 상기 제3 데이터가 상기 제1 회로로부터 상기 상태 비트에 대한 정지점 조건에 대응하는 값을 갖는 경우에 증가되는 것인 어서트 단계와;
    상기 단계 (a) 내지 단계 (d)를 반복하는 단계와;
    상기 카운터로 어서트된 상기 제3 데이터에 의해 결정된 바와 같이, 소정의 수의 정지점 조건이 발생한 후에 정지점 신호를 발생시키는 단계를 포함하는 것인 방법.
  3. (삭제)
  4. (삭제)
  5. 제1항에 있어서, 상기 제3 데이터는 2진 값을 나타내고, 상기 단계 (e)는 상기 제3 데이터를 정지점 신호로서 상기 제1 회로로 어서트하는 단계를 포함하며, 상기 정지점 신호의 값은 상기 2진 값인 것인 방법.
  6. 제1항에 있어서, 상기 제1 회로는 디지털 신호 프로세서이고,
    (f) 상기 정지점 신호의 값을 갖는 상기 정지점 신호를 상기 디지털 신호 프로세서로 어서트하는 단계와;
    (g) 상기 정지점 신호에 응답하여 상기 디지털 신호 프로세서의 동작을 정지시키는 단계를 더 포함하는 것인 방법.
  7. 제1항에 있어서, 상기 제1, 제2 및 제3 메모리는 랜덤 액세스 메모리 회로이고,
    상기 단계 (a) 이전에, 필요한 데이터 값으로 상기 제1, 제2 및 제3 어레이의 셀을 프로그래밍하는 단계를 포함하고, 상기 제1, 제2 및 제3 데이터는 상기 필요한 데이터 값으로서 포함되는 것인 방법.
  8. 프로세싱 수단과, 제1 회로의 상태를 나타내는 적어도 2개의 상태 비트를 어서트하는 수단을 포함하는 제1 회로와;
    상기 제1 회로에 접속되고 상기 상태 비트를 수신하여 상기 상태 비트에 의해 결정된 값을 갖는 정지점 신호를 발생시키는 메모리 수단을 포함하고,
    상기 메모리 수단은 메모리 회로의 제1 단과 메모리 회로의 제2 단을 포함하며, 메모리 회로의 상기 제1 단은 메모리 셀의 제1 어레이와 상기 상태 비트의 적어도 하나의 서브세트에 응답하여 상기 제1 어레이의 셀 중 선택된 1개의 셀로부터 제1 데이터를 독출하기 위한 제1 수단을 갖는 제1 메모리와, 메모리 셀의 제2 어레이와 상기 상태 비트의 적어도 하나의 서브세트에 응답하여 상기 제2 어레이의 셀 중 선택된 1개의 셀로부터 제2 데이터를 촉출하기 위한 제2 수단을 갖는 제2 메모리를 포함하고, 메모리 회로의 상기 제2 단은 상기 제1 및 제2 데이터를 수신하기 위한 상기 제1 단에 접속되고, 상기 제2 단은 메모리 셀의 제3 어레이와 상기 제1 및 제2 데이터에 응답하여 상기 제3 어레이의 셀 중 선택된 1개의 셀로부터 제3 데이터를 독출하기 위한 제3 수단을 갖는 제3 메모리와, 상기 정지점 신호의 값을 갖는 상기 정지점 신호를 발생시키기 위해 상기 제3 데이터를 처리하는 수단을 포함하는 것을 특징으로 하는 시스템.
  9. 제8항에 있어서, 상기 메모리 수단의 상기 제1, 제2 및 제3 메모리는 집적 회로로서 각각 실현되는 랜덤 액세스 메모리이고, 상기 제3 데이터는 정지점 신호로서 2진 값을 나타내며, 상기 정지점 신호의 값은 상기 2진 값이고, 상기 메모리 수단의 상기 제2 단의 상기 처리 수단은 상기 정지점 신호의 값을 갖는 상기 정지점 신호를 상기 제1 회로로 어서트하는 것인 시스템.
  10. 제8항에 있어서, 각 상태 비트는 2진 비트이고, 상기 메모리 수단의 상기 제1, 제2 및 제3 메모리는 집적 회로로서 각각 실현되는 랜덤 액세스 메모리이며, 독출용 제1 및 제2 수단의 각각은 상기 제1 및 제2 메모리의 셀의 각각의 제1 및 제2 어레이의 선택된 셀에 응답하는 어드레스 비트로서 상태 비트를 수신하여 처리하며, 상기 독출용 제3 수단은 상기 제3 메모리의 셀의 상기 제3 어레이의 선택된 셀에 대응하는 어드레스 비트로서 제1 및 제2 데이터를 수신하여 처리하고, 상기 제1, 제2 및 제3 메모리는 각각의 제1, 제2 및 제3 데이터로서 하나의 1 비트 출력을 제공하는 단일 비트폭의 메모리인 것인 시스템.
  11. 제8항에 있어서, 각각의 상태 비트는 2진 비트이고, 상기 메모리 수단의 상기 제1, 제2 및 제3 메모리는 집적 회로로서 각각 실현되는 랜덤 액세스 메모리이며, 상기 메모리 수단의 상기 메모리의 적어도 1개는 상기 상태 비트를 통하여 감시되는 조건의 복수의 분리된 군을 설정하는 다중 비트 출력을 제공하는 다중 비트폭의 메모리인 것인 시스템.
  12. 제8항에 있어서, 상기 제3 데이터를 수신하기 위해 상기 메모리 수단의 상기 제3 메모리에 접속된 카운터를 더 포함하고, 상기 카운터는 상기 제1 회로로부터의 상기 상태 비트에 대한 정지점 조건에 대응하는 상기 제3 데이터에 응답하여 증가하며, 상기 카운터는 정지점 조건의 소정의 수가 발생한 후에 상기 소정의 수까지 증가하는 상기 카운터에 의해 결정되는 바와 같이 정지점 신호를 제공하는 출력을 구비하는 것인 시스템.
  13. (삭제)
  14. (삭제)
  15. (삭제)
  16. (삭제)
  17. 제8항에 있어서, 상기 제1 회로는 디지털 신호 프로세서이고, 상기 메모리 수단은 상기 정지점 신호의 값을 갖는 상기 정지점 신호를 상기 디지털 신호 프로세서로 어서트하는 수단을 포함하며, 상기 디지털 신호 프로세서는 상기 정지점 신호의 값을 갖는 상기 정지점 신호에 응답하여 상기 프로세싱 수단의 동작을 정지시키는 수단을 포함하는 것인 시스템.
  18. 제8항에 있어서, 상기 제1 회로는 마이크로 제어기인 것인 시스템.
  19. 제8항에 있어서, 상기 제1 회로는 로직 분석기인 것인 시스템.
  20. 제8항에 있어서, 상기 제1, 제2 및 제3 메모리는 랜덤 액세스 메모리이고,
    상기 제1, 제2 및 제3 메모리의 셀을 필요한 데이터 값으로 프로그래밍하는 수단을 포함하며, 상기 제1, 제2 및 제3 데이터는 상기 필요한 데이터 값으로서 포함되는 것인 시스템.
  21. 프로세싱 수단과, 제1 회로의 상태를 나타내는 적어도 2개의 상태 비트를 어서트하는 수단을 포함하는 제1 회로와;
    상기 제1 회로에 접속되고 상기 상태 비트를 수신하여 상기 제1 회로의 정지점 조건의 발생을 나타내는 값을 갖는 출력 데이터를 발생시키며 내부에 저장된 데이터를 독출하기 위한 상기 상태 비트에 의해 어드레스된 메모리 셀의 적어도 1개 어레이를 포함하는 메모리 수단과;
    상기 메모리 수단에 접속되고 상기 메모리 수단으로부터 출력되는 데이터를 수신하며 정지점 조건에 대응하는 출력 데이터에 응답하여 증가하고, 상기 데이터에 의해서 소정의 수까지 증가되는 카운터에 의해 결정되는 것처럼 정지점 조건의 소정의 수가 발생한 후에 정지점 신호를 제공하는 출력을 갖는 카운터를 포함하고, 상기 제1 회로는 상기 정지점 신호를 수신하기 위해 상기 카운터 출력에 접속된 것을 특징으로 하는 시스템.
KR10-1999-7011268A 1997-06-10 1998-06-09 미리 정의된 정지점 조건의 발생시에 신호를 감시하는메모리를 이용하는 디지털 회로 KR100495755B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/872,822 1997-06-10
US08/872,822 US5931956A (en) 1997-06-10 1997-06-10 Digital circuit using memory for monitoring signals for occurrences of predefined breakpoint conditions
PCT/US1998/012042 WO1998057266A1 (en) 1997-06-10 1998-06-09 Digital circuit using memory for monitoring signals for occurrences of predefined breakpoint conditions

Publications (2)

Publication Number Publication Date
KR20010013275A true KR20010013275A (ko) 2001-02-26
KR100495755B1 KR100495755B1 (ko) 2005-06-17

Family

ID=25360372

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-7011268A KR100495755B1 (ko) 1997-06-10 1998-06-09 미리 정의된 정지점 조건의 발생시에 신호를 감시하는메모리를 이용하는 디지털 회로

Country Status (10)

Country Link
US (1) US5931956A (ko)
EP (1) EP0988599A4 (ko)
JP (1) JP2002505775A (ko)
KR (1) KR100495755B1 (ko)
CN (1) CN1105971C (ko)
CA (1) CA2276673A1 (ko)
HK (1) HK1024763A1 (ko)
NO (1) NO994637L (ko)
TW (1) TW410289B (ko)
WO (1) WO1998057266A1 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6145123A (en) * 1998-07-01 2000-11-07 Advanced Micro Devices, Inc. Trace on/off with breakpoint register
US6502210B1 (en) * 1999-10-01 2002-12-31 Stmicroelectronics, Ltd. Microcomputer debug architecture and method
US6487683B1 (en) * 1999-10-01 2002-11-26 Stmicroelectronics Limited Microcomputer debug architecture and method
US6735652B2 (en) * 2001-05-03 2004-05-11 Texas Instruments Incorporated Detecting the occurrence of desired values on a bus
US20020188813A1 (en) * 2001-05-04 2002-12-12 Hugo Cheung On-chip hardware breakpoint generator with comprehensive memory operation detection
US6981248B2 (en) * 2002-05-02 2005-12-27 International Business Machines Corporation Conditional breakpoint encountered indication
EP1378832A1 (en) * 2002-07-04 2004-01-07 Sap Ag Process and system for comfortable debugging of computer programs
EP1378835B1 (en) * 2002-07-04 2015-12-30 Sap Se Process and system for comfortable debugging of computer programs
DE102004056936B4 (de) * 2004-11-23 2011-02-03 Getrag Getriebe- Und Zahnradfabrik Hermann Hagenmeyer Gmbh & Cie Kg Stufenwechselgetriebe für ein Kraftfahrzeug
US7506206B2 (en) * 2005-06-07 2009-03-17 Atmel Corporation Mechanism for providing program breakpoints in a microcontroller with flash program memory
CN100435112C (zh) * 2005-11-21 2008-11-19 洛阳卓航测控设备有限责任公司 单片机开发***用户软件程序断点设置方法
US7865704B2 (en) * 2006-03-29 2011-01-04 Freescale Semiconductor, Inc. Selective instruction breakpoint generation based on a count of instruction source events
US8539087B2 (en) * 2010-03-12 2013-09-17 Symantec Corporation System and method to define, visualize and manage a composite service group in a high-availability disaster recovery environment
DE112010006087T5 (de) * 2010-12-23 2014-06-26 Intel Corporation Architektur zum Testen, zur Validierung und zur Fehlerbereinigung
CN102253875B (zh) * 2011-07-25 2014-02-19 中国人民解放军国防科学技术大学 基于PicoBlaze嵌入式软核处理器的FPGA逻辑模块调试与数据采集方法
US9444580B2 (en) 2013-08-06 2016-09-13 OptCTS, Inc. Optimized data transfer utilizing optimized code table signaling
JP2019518397A (ja) 2016-06-06 2019-06-27 アジャイルピーキュー, インコーポレイテッド データ変換システムおよび方法
US10169196B2 (en) * 2017-03-20 2019-01-01 Microsoft Technology Licensing, Llc Enabling breakpoints on entire data structures

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55117336A (en) * 1979-03-02 1980-09-09 Kagaku Gijutsucho Hoshasen Igaku Sogo Kenkyusho Logic circuit
US4338660A (en) * 1979-04-13 1982-07-06 Relational Memory Systems, Inc. Relational break signal generating device
US4675646A (en) * 1983-09-29 1987-06-23 Tandem Computers Incorporated RAM based multiple breakpoint logic
US4635193A (en) * 1984-06-27 1987-01-06 Motorola, Inc. Data processor having selective breakpoint capability with minimal overhead
US5249278A (en) * 1986-01-24 1993-09-28 Intel Corporation Microprocessor breakpoint apparatus
JP2505950B2 (ja) * 1991-05-13 1996-06-12 インターナショナル・ビジネス・マシーンズ・コーポレイション ハ―ドウェア支援ブレ―クポイント・システム
JP3088129B2 (ja) * 1991-05-29 2000-09-18 日本電気株式会社 マイクロプロセッサ
US5841670A (en) * 1994-03-09 1998-11-24 Texas Instruments Incorporated Emulation devices, systems and methods with distributed control of clock domains
US5717851A (en) * 1994-08-15 1998-02-10 Motorola, Inc. Breakpoint detection circuit in a data processor and method therefor
US5704034A (en) * 1995-08-30 1997-12-30 Motorola, Inc. Method and circuit for initializing a data processing system

Also Published As

Publication number Publication date
NO994637D0 (no) 1999-09-24
HK1024763A1 (en) 2000-10-20
WO1998057266A1 (en) 1998-12-17
EP0988599A4 (en) 2004-06-09
JP2002505775A (ja) 2002-02-19
KR100495755B1 (ko) 2005-06-17
NO994637L (no) 2000-01-31
TW410289B (en) 2000-11-01
CN1105971C (zh) 2003-04-16
CA2276673A1 (en) 1998-12-17
EP0988599A1 (en) 2000-03-29
US5931956A (en) 1999-08-03
CN1252140A (zh) 2000-05-03

Similar Documents

Publication Publication Date Title
KR100495755B1 (ko) 미리 정의된 정지점 조건의 발생시에 신호를 감시하는메모리를 이용하는 디지털 회로
US5210862A (en) Bus monitor with selective capture of independently occuring events from multiple sources
US5206948A (en) Bus monitor with means for selectively capturing trigger conditions
US5638382A (en) Built-in self test function for a processor including intermediate test results
EP0702297B1 (en) A data processor with breakpoint circuit
JPH0212541A (ja) コンピユーテイング・システム及びその動作方法
WO1998054639A1 (en) Patching apparatus and method for upgrading modem software code
KR20030059339A (ko) 단일 스텝 처리 방법 및 장치
US4084262A (en) Digital monitor having memory readout by the monitored system
US7010672B2 (en) Digital processor with programmable breakpoint/watchpoint trigger generation circuit
US6380730B1 (en) Integrated circuit tester having a program status memory
US6941494B1 (en) Built-in test for multiple memory circuits
KR100305679B1 (ko) 반도체 메모리 장치의 테스터의 테스터 방법 및 그 장치
US20030126502A1 (en) Efficient word recognizer for a logic analyzer
US5732255A (en) Signal processing system with ROM storing instructions encoded for reducing power consumpton during reads and method for encoding such instructions
US6735652B2 (en) Detecting the occurrence of desired values on a bus
EP0434081B1 (en) Monitor apparatus for selectively detecting signal conditions at points in an operating system
JP3093642B2 (ja) シングルチップマイクロコンピュータおよびそのテスト方法
CA1165454A (en) Odd byte memory accessing in data processing apparatus
US7293258B1 (en) Data processor and method for using a data processor with debug circuit
JP2586333Y2 (ja) 半導体メモリ試験装置
SU601762A1 (ru) Устройство дл контрол полупроводниковых оперативных накопителей
JPS6145336A (ja) デ−タ処理装置
JPH0397195A (ja) 半導体記憶装置
JPS58158752A (ja) プログラム及びデ−タの監視装置を持つデ−タ処理システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080603

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee