KR940002321B1 - 마이크로 코드된 데이타 처리기의 테스트 방법 - Google Patents

마이크로 코드된 데이타 처리기의 테스트 방법 Download PDF

Info

Publication number
KR940002321B1
KR940002321B1 KR1019850007533A KR850007533A KR940002321B1 KR 940002321 B1 KR940002321 B1 KR 940002321B1 KR 1019850007533 A KR1019850007533 A KR 1019850007533A KR 850007533 A KR850007533 A KR 850007533A KR 940002321 B1 KR940002321 B1 KR 940002321B1
Authority
KR
South Korea
Prior art keywords
micro
processor
address
user
instruction
Prior art date
Application number
KR1019850007533A
Other languages
English (en)
Other versions
KR860003519A (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 KR860003519A publication Critical patent/KR860003519A/ko
Application granted granted Critical
Publication of KR940002321B1 publication Critical patent/KR940002321B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • 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/22Microcontrol or microprogram arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Advance Control (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

내용 없음.

Description

마이크로 코드된 데이타 처리기의 테스트 방법
제1도는 본 발명을 실시하는데 적합한 마이크로 코드된 데이타 처리기의 블럭도.
제2도는 제1도의 처리기에 대한 명령어 디코딩 회로에 제1부분을 테스트하기 위한 하나의 마이크로 코드된 테스트 루틴의 흐름도.
제3도는 제1도의 처리기에 대한 명령어 디코딩 회로에 제1부분을 테스트하기 위한 다른 마이크로 코드된 테스트 루틴의 흐름도.
제4도는 제1도의 처리기에 대한 명령어 디코딩 회로에 제2부분을 테스트하기 위한 마이크로 코드된 테스트 루틴의 흐름도.
제5도는 제1도의 처리기에 대한 명령어 디코딩 회로에 제3부분을 테스트하기 위한 한 세트의 마이크로 코드된 테스트 루틴의 흐름도.
제6도는 제5도의 마이크로 코드된 테스트 루틴을 실행하는 동안에 제1도의 처리기에 대한 명령어 디코딩 회로의 제3부분에 의해 발생된 다수의 제어 신호에 멀티플렉스된 액세스를 제공하기 위한 특정 테스트 회로를 도시한 개략도.
제7도는 제1도의 처리기에 대한 명령의 캐쉬(instruction cache)를 테스트하기 위한 마이크로 코드된 테스트 루틴의 흐름도.
* 도면의 주요부분에 대한 부호의 설명
1 : 마이크로 코드된 데이타 처리기 2 : 마이크로 머신
3 : 명령어 파이프라인 4 : 실행 장치
5 : 버스 제어기 6 : 테스터
7 : 명령어 캐쉬 8 : 태그 캐쉬
9 : A4래치 10 : 마이크로 기억장치(micro store)
11 : 나노 기억장치(nano store) 23 : 기호 레지스터
24 : 데이타 버스
25 : 마이크로 어드레스 어드레스 버스(MADD)
26 : 멀티플렉서 27 : 어드레스 버스
[발명의 분야]
본 발명은 일반적으로 기능을 판단하기 위한 데이타 처리기의 테스트 방법(testing)에 관한 것으로, 특히 마이크로 코드된 데이타 처리기의 테스트 방법에 관한 것이다.
[발명의 배경]
마이크로 코드된 데이타처리기에 있어서, 각 매크로 명령어(macroinstruction)는 통상적으로 명령어를 실행하기에 적합한 마이크로 명령어의 특정 시퀀스로 제1마이크로 명령어의 마이크로 어드레스를 발생시키기 위해 디코드된다. 일단 마이크로 명령어가 실행되기 시작하면, 그 다음 마이크로 어드레스의 제어는 마이크로 시퀀스내의 각각의 후속의 마이크로 명령어에 의해 신중히 유지된다. 예를들어, 각 마이크로 명령어는 그 다음 마이크로 어드레스를 명확히 규정할 수 있다. 대안으로 마이크로 명령어가 간단히 다른 소자를 인에이블시킬 수 있어 그 다음 마이크로 어드레스를 제공한다. 몇몇 처리기에 있어서, 마이크로 명령어는 분기 제어 논리를 인에이블시켜 산술 및 논리(ALU) 또는 다른 논리에서의 몇몇 연산의 결과에 따라서 마이크로 어드레스를 발생시킬 수 있다. 비록 몇몇 처리기가 하나이상의 임의의 마이크로 시퀀스를 선택적으로 사용하기 위하여 사용자로 하여금 마이크로 명령어를 구성하게 하더라도 사용자가 마이크로 코드를 액세스(access)하는데 사용된 마이크로 어드레스를 직접 지정하게 하는 처리기는 아직 없다.
[발명의 요약]
본 발명의 목적은 마이크로 어드레스가 사용자에 의해 직접 지정될 수 있는 마이크로 코드된 데이타 처리기를 제공하기 위한 것이다.
본 발명의 다른 목적은 마이크로 코드된 데이타 처리기의 마이크로 어드레스를 직접 지정하기 위한 방법을 제공하기 위한 것이다.
본 발명의 또 다른 목적은 단지 직접 어드레싱될 수 있는 마이크로 코드된 데이타 처리기에서 특정 마이크로 시퀀스를 제공하기 위한 것이다.
본 발명의 이러한 목적 및 다른 목적을 실행하는데 있어서, 마이크로 머신(micromachine)을 갖춘 데이타 처리기가 일 형태로 제공되는데, 상기 마이크로 머신은 설정된 개시 마이크로 어드레스를 가진 각각의 마이크로 루틴을 실행함에 의해 다수의 명령어 각각의 처리기에 의해 실행을 제어한다. 특히, 상기 처리기는 처리기에 의해 실행하였을때, 마이크로 머신에 의해 다음 마이크로 어드레스를 선택적으로 제공하는 하나의 명령어를 포함한다. 본 발명에 따르면, 처리기는 모든 다른 마이크로 루틴의 개시 마이크로 어드레스와는 다른 특정 개시 마이크로 어드레스를 가진 처리기내의 특정 마이크로 코드된 루틴을 포함한다. 마이크로 머신 자체는 특정 개시 마이크로 어드레스르 발생시킬 수 없으므로, 특정 마이크로 코드된 루틴은 특정 마이크로 코드된 루틴의 특정 개시 마이크로 어드레스를 제공하기 위해 처리기에 의한 하나의 명령어 실행에 단지 응답하여 마이크로 머신에 의해 실행된다.
[발명의 설명]
이하, 첨부된 도면을 참조하여 본 발명을 더욱 상세히 설명하기로 한다.
제1도에 도시된 것은 발명의 명칭이 "가상 메모리 데이타 처리기"인 1984년 12월 11일자로 특허된 미합중국 특허 제 4,488,228호에 도시되고 기술된 것과 유사한 마이크로 코드된 데이타 처리기(1)이다. 일반적으로, 처리기(1)는 세그먼트로 이루어진 실행 장치(4)를 사용하여, 명령어 파이프라인 (3)을 통해 수신된 명령어 실행을 완수하기 위해 응답가능한 마이크로 머신(2)을 포함한다. 버스 제어기(5)는 처리기(1) 및 자동 테스터(6)와 같은 외부 자원간의 어떤 필요한 데이타 오퍼랜드(operands) 및 명령어를 전소하는데 마이크로 머신(2)과 협력한다. 버스 대역폭 요건을 감소시키고 실행속도를 증가시키기 위하여, 처리기(1)는 세트 결합 태그 캐쉬(8)와 협력하는 명령어 캐쉬(7)를 포함하여, 최근 사용된 명령어 또는 그 부분에 대한 국부 기억을 제공한다.
처리기(1)에 대한 구조 및 동작의 상세의 대부분은 본 발명의 범위를 벗어나므로, 단지 관련 부분만 아래에 상술될 것이다. 자동 테스트(6)는 젠래드 모델(GenRad Model) GR 16가 같은 상업적으로 이용가능한 다수 장치중의 어떤 장치일 수 있다.
미합중국 특허 제4,488,228호에 기술된 바와 같이, 처리기(1)는 적당한 에러 조정기로 유도하기 전에 내부 상태에 관한 정보의 블럭을 스택 오브(stack off)함으로써 어떤 형태의 에러 상태에 응답하도록 적용된다. 통상적으로 에러의 원인이 정정된후, 에러 조정기는 특별한 "예외로부터 복귀(Return from Exception ; RTE) 명령어를 실행하는데, 상기 명령어는 스택된 정보를 이용하여 상태를 복원시킨 후, 처리기(1)로 하여금 에러가 검출된 명령어 실행 시퀀스내의 정호가한 포인트로부터 실행을 다시 시작하게 된다.
본 발명의 목적에 있어서, 스택에 기억된 정보의 가장 중요한 항목은 마이크로 어드레스 프로그램 계수기(MICROPC)의 현재 값이다. 복원 동작 동안에, 이러한 값은 A4 래치(9)로 적재된 다음, 미아크로머신(2)에 의해 사용되어, 마이크로 기억장치(10)와 나노 기억장치(11)의 다음 마이크로 명령어를 실행하기 위해 선택된다. 정상 실행 동안에, 복원된 값이 기억되어 있는 값과 같지 않을 경우, 처리기(1)는 잘못된 명령어의 실행을 적절히 다시 시작할 수 없을 것이다. 따라서, 사용자는 스택된 정보의 상기 부분이 에러 조정 프로시듀(procedure) 동안에는 변화되지 않는다는 것을 특히 주의해야 한다. 한편, 스택된 정보의 어떤 부분은 처리기(1)가 대안의 방법으로 잘못된 명령어의 실행을 다시 시작할 수 있도록 정확히 변환될 수 있다. 일반적으로, 이러한 설정된 변환을 제외하면, 다른 변환은 정해지지 않은 방법으로 처리기(1)의 동작에 영향을 주지 않고 스택된 정보로 구성될 수 없다.
미합중국 특허 제 4,488,228호에 기술된 처리기를 디자인하는 과정에서, 거기에 기술된 처리기는 어떤 다수의 마이크로 명령어에 따른 실행을 다시 시작하도록 그 자체를 복원시킬 고유 능력을 가지고 있다. 그러나, 마이크로 기억장치(10) 및 나노 기억장치(11)의 크기에 제한을 둠에따라, 상기 능력은 유용한 기능을 실행하는데 결코 이용될 수 없다. 이후 처리기(1)가 디자인 되었을때, 향상된 기능은 증가된 테스트 가능문제를 상당힌 변화시킬 것이라는 것이 곧 명백하게 된다. 대부분의 상기 증가된 전원은 종래의 테스트 프로시듀 또는 특정 목적 테스트 논리를 사용하여 비용상 효과적인 방법으로 테스트될 수 있지만, 처리기(1)에 대한 회로의 어떤 영역은 상기와 같은 기술로 테스트 하기에는 특히 어렵거나 비용이 많이 든다. 그러므로, 특정 마이크로 명령어 시퀀스가 처리기(1)내의 다른곳에 통합된 전용 테스트 논리를 실행하기 위해 마이크로 기억장치(10) 및 나노 기억장치(11)내에 제공되도록 제안된다. 이러한 방법에서는 상기 테스트 논리의 크기의 감소가 중요할 뿐만 아니라, 처리기(1)내의 회로의 각 영역을 테스트하는데 요구된 시간의 감소도 중요하다.
처리기(1)내의 내부 구성 및 회로 장치를 주의깊게 살펴보면, 단지 몇몇 주요 회로 소자만이 마이크로 코드된 테스트 루틴을 사용하여 테스트할 수 있다는 것을 알게 되는데, 상기 테스트 루틴은 명령어 파이프라인(3)을 구성하여 IRC(16), IRC2(17) 및 IRD(18)의 내용(contents)을 디코드하는 기본 시퀀스인 "프로그램 가능 논리 어레이(Programmable Logic arrays)"(PLA) A1(12), A2(13), A5(14) 및 A6(15), IRD(18)의 현재 명령어를 디코드하는 잔여 제어 디코드 PLA(19 내지 22)(통상 총 8개인데, 편의상 모두 도시되지 않음)와, 명령어 및 태그 캐쉬(7 및 8) 각각을 구비한다. 처리기(1)의 댜른 영역은 매크로 명령어 시퀀스를 기능적으로 이용하거나 보드상의 기호 분석 레지스터(23)와 같은 비교적 통상적인 테스트 회로를 정확하게 이용하여 더욱 효율적으로 테스트된다는 것이 판면된다. 동시에, 이러한 기호 분석 레지스터(23)의 존재는 마이크로 코드된 테스트 루틴을 사용하여 테스트 하기 위해 상기 루틴 모두를 더욱 효율적으로 만들어준다.
기본 시퀀스인 PLA(12 내지 15)를 테스트하기 위한 준비 단계에 있어서, 테스트(6)는 여기에 첨부된 참조 1에 예시된 형태로, 유효 상태를 복원시키기 위하여 처리기(1)에 필요한 모든 정보를 가진 스택 프레임을 준비해야 한다. 마이크로 피시(MICRO PC)필드에 있어서, 테스터(6)는 여기에 첨부된 참조 2에서 도시된 세개(3)의 마이크로 명령어중 하나의 마이크로 기억장치(10) 및 나노 기억장치(11)에 어드레스를 삽입할 것이다. 게다가, 테스트(6)는 SSWI 필드의 AR 래치부에 테스트될 여러개의 기본 시퀀수인 PLA(12 내지 15중)적당한 하나를 나타내는 코드를 삽입해야 한다. 또한, 테스터(6)는 특정 PLA 테스트에 대한 적당한 초기 개시값, 소위 제로(0)를 [AUT.H : AUT.L]필도로 삽입한다. 마찬가지로, 다른 적당한 값이 IRD, IR, IRC 및 IRC2 필드로 삽입되어지므로 라인이 적당하게 초기화될 것이다. 아래에 상술된 바와같이, 선택된 테스트 루틴에 대해 적당하다면, 테스터(6)는 또한 SSWI의 CRC 필드를 세트하여 기호 레지스터(23)를 인에이블 시킨다. 그후, 테스트하는 시퀀스의 적당한 지점에서, 테스터(6)는 데이타 버스(24)를 통해 처리기(1)의 명령어 스트림의 RTE 명령어를 제공한다.
예를들면, 테스터(6)가 참조 2에 도시된 제1마이크로 명령어의 어드레스를 스택 프레임에 삽입하기 위해 선택하면, RTE 명령어를 실행함에 따라 처리기(1)는 명령어 파이프라인(3)에 상술된 초기값을 적재하기 전에 파이프라인(3)을 전진(advance)시킴으로서 제2도에 예시된 바와같이 진행할 것이다. AR 래치 코드에 따라서, PLA A1(12) 또는 A2(13)이 마이크로 어드레스 어드레스(Microaddress ADDress ; MADD) 버스(25)상의 기호 레지스터(23)에 "마이크로 어드레스"를 제공할 것이다. 상기 마이크로 어드레스를 무시하면, 대신에 마이크로 머신(2)은 마이크로 어드레스 멀티플렉서(26)를 통해 직접 분기 경로를 이용하여 현재 마이크로 명령어로 직접 재분기한다. 이러한 방법으로, 처리기(1)는 명령어 파이프 라인(3)에 적재된 값을 매번 증가시켜 이러한 하나의 마이크로 명령어의 루핑 작업을 계속할 것이다. 적정수의 사이클 이후, 테스트(6)는 처리기(1)를 리세트함으로서 루핑작업을 종결시킬 수 있다. 리세트에서 벗어나면, 처리기(1)는 자동적으로 기호 레지스터(23)내의 잔여를 실행장치(4)의 데이타 색션 REGB로 전손한후 실행장치(4)의 어드레스 섹션의 AUT로 전송한다. 테스터(6)는 리세트후에 제1버스 사이클상의 버스 에러를 간단하게 억제시킴으로서 상기 잔여를 갖게 되므로, 처리기(1)는 AUT를 포함하여, 모든 내부 상태 정보를 스택오프할 것이다. 이러한 마이크로 명령어를 사용함으로서, 테스트(6)는 기본 시퀀스인 PLA A1(12), A2(13), A5(14), 16(15)의 각 기능을 매우 빠르고 확실하게 점증할 수 있다.
한편, 테스터(6)가 MICRO PC 필드로 참조 2에 도시된 제2마이크로 명령어의 어드레스를 스택 프레임에 삽입하기 위해 선택하면, 처리기(1)는 데이타 버스(24)를 통해 테스터(6)에 의해 제공된 값을 명령어 파이프라인(3)에 적재하기 전에 파이프라인(3)을 전진시킴으로써 제3도에서 예시된 바와 같이 진행할 것이다. 다시, AR 래치 코드에 있어서, PLA A1(12) 또는 A2(13)가 "마이크로 어드레스"를 MADD 버스(25)상의 기호 레지스터(23)에 제공할 것이다. 상기 마이크로 어드레스를 무시하면, 대신에 마이크로 머신(2)은 마이크로 어드레스 멀티플렉서(26)를 통해 직접 분기 경로를 이용하여 현재 마이크로 명령어로 직접 분기할 것이다. 이러한 방법으로, 처리기(1)는 명령어 파이프라인(3)에 적재될 값을 매번 받아드려 상기 마이크로 명령어의 루핑 작업을 계속할 것이다. 적정수의 사이클 이후, 테스터(6)는 처리기(1)를 리세트함으로서 루핑 작업을 종격시킬 수 있고 그후 버스 에러를 억제시킴으로서 처리기(1)는 잔여를 스택오프할 것이다. 따라서, 이러한 마이크로 명령어를 이용함으로서, 테스터(6)는 기본 시퀀스인 PLA A1(12) 및 A2(13)의 기능을 선택적으로 검증할 수 있다.
대신에, 만약 테스터(6)가 MICRO PC 필드로 참조 2에 도시된 제3마이크로 명령어 스퀸스이 어드레스를 스택 프레임에 삽입하기 위해 선택하면, 처리기(1)는 명령어 파이프라인(3)의 IRC2(17) 및 IRD(18)에 적재될 한쌍의 특정값을 데이타 버스(24)를 통해 테스터(6)로부터 수신하기 위해 제4도에 예시된 것과 같이 진행할 것이다. 상기 스퀸스의 제1마이크로 명령어에서, 처리기(1)는 새로운 IRC 2값을 직접 IRC2(17)에 적재시킬 것이고, 실행장치(4)의 데이타 섹션내의 시프트 FXMUX를 인에이블시켜 새로운 IRD값을 재조사한다. 상기 시퀸스의 다음 마이크로 명령어에서, 처리기(1)는 새로운 IRD값을 파이프라인(3)에 적재시킬 것이다. 각 마이크로 명령어가 실행하는 동안, 선택된 PLA A5(14) 또는 A6(15)에 의해 제공된 "마이크로 에드레스"는 기호 레지스터(23)에 의해 축적된다. 새로운 IRC 2 및 IRD값이 스태거(stagger)된 시퀸스의 다른 마이크로 명령어 사이클마다 적재4되므로, 선택된 PLA상의 각각의 결과는 기호 레지스터(23)에 의해 두배로 축적된다. 처리기(1)가 적정수의 마이크로 명령어 사이클에 대해 두개의 명령어의 시퀸스를 계속 반복하게 한후, 테스터(6)는 처리기(1)를 리세트할 수 있어서 기호 레지스터(23)내의 잔여를 얻을 수 있다. 이러한 마이크로 명령어의 짧은 시퀸스를 이용함으로서, 테스터(6)는 기본 시퀸스인 PLA A5(14) 및 A6(15)의 기능을 선택적으로 검증할 수 있다.
또한, 잔여 제어 PLA(19 내지 22)를 테스트하기 위한 준비 단계에 있어서, 테스터(6)는 여기에 첨부된 참조 1에서 예시된 형태로 유효 상태를 복원시키기 위하여 처리기(1)에 필요한 모든 정보를 가진 스택 프레임을 준비해야만 한다. MICRO PC 필드에서, 테스터(6)는 여기에 첨부된 참조 3에 도시된 일곱개(7)의 마이크로 명령어중 하나의 마이크로 기억장치(10) 및 나노 기억장치(11)내에 어드레스를 삽입한다. 게다가, 테스터(6)는 SSWI 필드의 AR 래치부에 테스트될 여러개의 잔여 제어 PLA(19 내지 22)중 어떤 부분을 나타내는 코드를 삽입해야 한다. 그후, 테스트하는 시퀀스내의 적당한 지점에서, 테스터(6)는 데이타 버스(24)를 통해 처리기(1)의 명령어 스트림의 RTE 명령어를 제공한다.
어떤 어드레스에도 관계없이 테스터(6)가 참조 3에 도시된 마이크로 명령어의 어드레스에서부터 스택 프레임내의 MICRO PC 필도로 삼입하기 위해 선택하면, 처리기(1)는 명령어 파이프라인(3)에 적재될 특정값을 데이타 버스(24)를 통해 테스터(6)로부터 판독하기 위해 제5도에 예시된 바와 같이 여러개의 PLA(19 내지 22)의 결과로 생기는 출력중에는 선택된 부분을 인출할 것이고 실행장치(4)의 데이타 섹션의 PEGB의 상기 출력을 기억할 것이다. 동시에 처리기(1)는 이러한 미아크로 명령어이 최종 실행 동안에 기억된 출력을 단지 상기 출력이 다음 판독 버스 사이클동안 "어드레스"를 구성한 것처럼 어드레스 버스(27)를 통해 테스트(6)에 제공할 것이다. 그후, 처리기(1)는 터스터(6)에 의해 리세트될때까지 데이타 버스(24)를 통해 테스터(6)로부터 다음값을 매번 판독하여 상기 마이크로 명령어의 루핑 작업을 계속한다. 상기 마이크로 명령어의 각각을 연속적으로 이용함으로서, 테스터(6)는 잔여 제어 PLA(19 내지 22)의 기능을 선택적으로 검증할 수 있다.
명령어 및 태그 캐쉬(7 및 8) 각각을 테스터하기 위한 준비 단계에 있어서, 테스터(6)는 MICRO PC 필드에서 참조 4의 제1마이크로 명령어 어드레스에 따라, 유효 스택 프레임을 준비해야 한다. 테스트하는 시퀀스의 적당한 지점에서, 테스터(6)는 그후 데이타 버스(24)를 통해 처리기(1)의 명령어 스트림에서 RTE 명령어를 제공해야 한다. 응답하여, 처리기(1)는 스택 프레임의 AOB 필드에서 테스터(6)에 의해 개시된 "데이타 어드레스"값을 어드레스 버스(27)를 통해 제공하여 데이타 오퍼랜드 사이클을 개시할 것이다. 처리기(1)는 그때 데이타 버스(24)를 통해 테스터(6)로부터 "명령어 어스레스"값을 받아드릴 것이다. 상기 "명령어 어드레스"값을 사용하여, 처리기(1)는 태그 캐쉬(8)를 통해 명령어 캐쉬로의 액세스(access)를 시도한다. 명령어 캐쉬(7) 및 태그 캐쉬(8)는 처음에는 비게되므로, 태그캐쉬(8) 따라서, 처리기(1)는 어드레스 버스(27)상에 "명령어 어드레스"값을 제공하여 자동적으로 명령어 오퍼랜드 사이클을 개시할 것이다. 그다음, 처리기(1)는 데이타 버스(24)를 통해 테스터(6)로부터 "명령어"값을 받아드릴 것이다. 명령어 액세스가 "미스되므로", 명령어 캐쉬(7)는 자동적으로 상기 "명령어"값을 적재할 것이며, 반면에 태그 캐쉬(8)는 동시에 대응하는 "명령어 어드레스"값을 적재한다. 현재 "데이타 어드레스"값을 상기 새로운 "명령어"값으로 대체한후, 처리기(1)는 상기 사이클을 반복한다. 적당한 시퀀스 값으로 복귀함으로써, 테스터(6)는 명령어 캐쉬(7) 및 태그 캐쉬(8)를 처리기(1)가 계속적으로 가득 채우게 할 수 있다. 그다음 테스터(6)가 후속 데이타 오퍼랜드 사이클에 응답하여 태그 캐쉬(8)에서 "히트"를 유발하는 "명령어 어드레스"값을 제공한다면, 처리기(1)는 현재 "데이타 어드레스"값을 명령어 캐쉬(7)로부터 검색된 대응하는 "명령어"값으로 대체하여 다음 사이클로 진행할 것이다. 이러한 방법으로, 테스터(6)는 명령어 캐쉬(7)에 적재된 "명령어"값을 각각의 데이타 오퍼랜드 사이클에 제공되는 "데이타 어드레스"와 비교함으로서 명령어 캐쉬(7)의 기능을 결정할 수 있다. 마찬가지로, 테스터(6)는 "데이타 어드레스" 및 "명령어 어드레스"가 태그 캐쉬(8) "히트(hits)" 또는 "노우 히트(no hits)"임을 검증함으로서 태그 캐쉬(8)의 기능을 결정할 수 있다.
본 발명이 데이타 처리기(1)회로의 어떤 부분을 테스트하는 문맥(context)으로 기술되었더라도, 다른 적당한 회로 구성을 갖는 처리기의 상기 기술을 이용함으로서 부분을 효율적으로 테스트할 수 있다는 것은 명백할 것이다. 게다가, 마이크로 코드에 직접 진입시키기 위한 장치는 다른 응용에 편리하게 이용될 수도 있다. 예를들면, 특정 마이크로 루틴은 표준 명령어 세트에 이용할 수 없는 명령어를 실행하기 위해 제공된다. 상기 특정 명령어는 존재하는 명령어의 변형된 형태일 수 있고 또는 특별한 종류의 응용 또는 고객에게 유일한 명령어의 변형된 형태일 수 있다. 이러한 상황에서, 마이크로 코드는 설정된 기능을 실행하기 위하여 적절히 구성될 것이다. 참조 2 내지 4에 기술된 형태를 포함하는, 상기 마이크로 명령어에 대한 일반적인 형태는 참조 5에 도시된다.
[참조 1]
Figure kpo00001
* 여기서, SSWI는 다음과 같은 형태를 갖는다:
Figure kpo00002
[참조 2]
RTE에 의해 입력된 제1 PLA 진단 루틴
Figure kpo00003
RTE에 의해 입력된 제2 PLA 진단 루틴
Figure kpo00004
RTE에 의해 입력된 A5 PLA 진단 루틴
Figure kpo00005
[참조 3]
IRD PLA- -열 1-RTE에 의해 입력된 진단 루틴
Figure kpo00006
IRD PLA-열 2-RTE에 의해 입력된 진단 루틴
Figure kpo00007
IRD PLA-열 3-RTE에 의해 입력된 진단 루틴
Figure kpo00008
IRD PLA-열 4-RTE에 의해 입력된 진단 루틴
Figure kpo00009
IRD PLA-열 5-RTE에 의해 입력된 진단 루틴
Figure kpo00010
IRD PLA-열 6-RTE에 의해 입력된 진단 루틴
Figure kpo00011
IRD PLA-열 7-RTE에 의해 입력된 진단 루틴
Figure kpo00012
[참조 4]
RTE에 의해 입력된 캐쉬 진단 루틴
Figure kpo00013
[참조 5]
마이크로 명령어 리스팅
Figure kpo00014
기점 : 할당된다면, 기점의 좌표
기점이라면, 상기 박스로 할당하는 박스의 #
데이타 액세스 정보 :
Figure kpo00015
Figure kpo00016
Figure kpo00017
Figure kpo00018
Figure kpo00019
상기 치환은 dbin/dob를 선택하고 ry(또는 잔여로 규정된 ry)에 대한 활동을 금지하는 opmap(약 2ird라인)에서 규정된 잔여 제어에 근거를 두고 행해짐. 레일 dbin 또는 dob로부터의 방향에 따라 선택된다. 전송이 레일로 향한다면, 그때 dbin은 전송이 치환된 dod로부터 된다면, 치환된다.
특별한 경우 : IRD=φ1φφ φxxφssφφφxxx(clr, neg, negx, not)여기서, a-비스상에서 구동된다면 또한 d- 버스에도 구동될 것임.
Figure kpo00020
Figure kpo00021
Figure kpo00022
Figure kpo00023
Figure kpo00024
Figure kpo00025
CC-상태코드갱신제어
Figure kpo00026
Figure kpo00027
Figure kpo00028
신호의 의미 및 소오스는 세트에 이용된다.
상태 신호는 아래에 리스트 되어 있다.
Figure kpo00029
Figure kpo00030
Figure kpo00031
Figure kpo00032
Figure kpo00033
Figure kpo00034
Figure kpo00035
Figure kpo00036
Figure kpo00037
Figure kpo00038
Figure kpo00039
Figure kpo00040
Figure kpo00041
Figure kpo00042
Figure kpo00043
Figure kpo00044
Figure kpo00045
Figure kpo00046
Figure kpo00047
Figure kpo00048
Figure kpo00049

Claims (3)

  1. 다른 설정된 개시 마이크로 어드레스를 각각 갖는 제1복수의 마이크로 루틴을 기억하는 마이크로 기억장치 ; 마이크로 코드된 처리기에 의해 실행하기 위해 복수 명령어 각각을 수신하며, 상기 복수의 명령어 각각에 대한 상기 제1복수의 마이크로 루틴중 각각의 마이크로 루틴에 대한 개시 마이크로 어드레스를 지정하는 명령어 디코더 ; 및 상기 명령어중 각각의 명령어를 실행할시에 처리기의 동작을 제어하도록 지정된 개시 마이크로 어드레스를 갖는 상기 제1복수의 마이크로 루틴중 한 루틴을 실행하는 마이크로 머신을 포함하는데, 사용자에 의해 제공되는 설정된 명령어를 실행할시에, 상기 처리기는 또한 다수의 사용자 지정된 마이크로 어드레스중 하나를 사용자로부터 직접 수신하며, 각각의 상기 마이크로 어드레스는 마이크로 머신에 의해 발생될 수 없으며, 상기 하나의 사용자 지정된 마이크로 어드레스는 데이타 처리기의 마이크로 코드를 액세스하며, 그후 마이크로 머신은 상기 사용자 지정 어드레스에서 개시하는 제2복수의 추가 특정 기능 마이크로 루틴중 하나에 따라서 처리기의 동작을 제어하는 마이크로 코드를 사용하는 마이크로 코드된 데이타 처리기내에서 사용자에 의해 마이크로 코드로 직접 진입하여 데이타 처리기를 테스트하는 방법에 있어서, 상기 제1복수의 마이크로 루틴의 개시 마이크로 어드레스와는 다른 사용자 지정 개시 마이크로 어드레스를 각각 갖는 제2복수의 추가 특정 기능 마이크로 루틴을 마이크로 기억장치에 제공하는 단계 ; 사용자에 의해 제공된 상기 설정된 명령어를 실행을 위해 상기 처리기에 선택적으로 결합시키는 단계 ; 사용자에 의해 제공된 상기 설정된 명령어를 상기 처리기에 의해 실행할 동안, 제2복수의 마이크로 루틴에 대한 상기 선택된 마이크로 루틴의 개시 마이크로 어드레스를 상기 사용자 선택 마이크로 어드레스로서 상기 처리기에 제공하는 단계 ; 및 사용자에 의해 제공된 상기 명령어를 처리기에 의해 실행함에 응답하여, 처리기가 상기 사용자 선택 마이크로 어드레스로서 상기 선택된 마이크로 루틴의 개시 마이크로 어드레스를 수신할 경우에만, 마이크로 머신으로 상기 사용자 선택 마이크로 루틴을 실행하는 단계를 포함하는 마이크로 코드된 데이타 처리기의 마이크로 코드된 직접 진입하여 데이타 처리기를 테스트하는 방법.
  2. 제1항에 있어서, 상기 데이타 처리기 회로의 선택된 부분의 기능을 연속으로 테스트하기 위해 마이크로 머신에 의해서 실행된 제2복수의 마이크로 루틴의 결과를 이용하는 단계를 포함하는 마이크로 코드된 데이타 처리기의 마이크로 코드로 직접 진입하여 데이타 처리기를 테스트하는 방법.
  3. 제2항에 있어서, 상기 테스트의 결과를 나타내는 출력 신호를 제공하기 위해 마이크로 머신에 의해 실행된 마이크로 루틴의 결과를 이용하는 단계를 포함하는 마이크로 코드된 데이타 처리기의 마이크로 코드로 직접 진입하여 데이타 처리기를 테스트하는 방법.
KR1019850007533A 1984-10-15 1985-10-14 마이크로 코드된 데이타 처리기의 테스트 방법 KR940002321B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US66058784A 1984-10-15 1984-10-15
US660587 2000-09-12

Publications (2)

Publication Number Publication Date
KR860003519A KR860003519A (ko) 1986-05-26
KR940002321B1 true KR940002321B1 (ko) 1994-03-23

Family

ID=24650139

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019850007533A KR940002321B1 (ko) 1984-10-15 1985-10-14 마이크로 코드된 데이타 처리기의 테스트 방법

Country Status (2)

Country Link
JP (1) JPS6197748A (ko)
KR (1) KR940002321B1 (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5529592B2 (ko) * 1973-07-20 1980-08-05
JPS55112650A (en) * 1979-02-22 1980-08-30 Toshiba Corp Microprogram control unit

Also Published As

Publication number Publication date
JPS6197748A (ja) 1986-05-16
KR860003519A (ko) 1986-05-26

Similar Documents

Publication Publication Date Title
US4566063A (en) Data processor which can repeat the execution of instruction loops with minimal instruction fetches
US4635193A (en) Data processor having selective breakpoint capability with minimal overhead
EP0380858B1 (en) Method and apparatus for detecting and correcting errors in a pipelined computer system
US3518413A (en) Apparatus for checking the sequencing of a data processing system
US4710866A (en) Method and apparatus for validating prefetched instruction
CA1145852A (en) Diagnostic circuitry in a data processor
US5638382A (en) Built-in self test function for a processor including intermediate test results
US4493035A (en) Data processor version validation
US3696340A (en) Microprogram execution control for fault diagnosis
US4841434A (en) Control sequencer with dual microprogram counters for microdiagnostics
JPS59216249A (ja) 集積回路装置
US5095426A (en) Data processing system for effectively handling exceptions during execution of two different types of instructions
EP0111952B1 (en) Verification of a processor architecture having a partial instruction set
IE842859L (en) Self-testing of floating point accelerator processors
US4757445A (en) Method and apparatus for validating prefetched instruction
US4887203A (en) Microcoded processor executing microroutines with a user specified starting microaddress
US4744049A (en) Microcode testing of a cache in a data processor
US4745574A (en) Microcode testing of PLA's in a data processor
KR940002321B1 (ko) 마이크로 코드된 데이타 처리기의 테스트 방법
US4742449A (en) Microsequencer for a data processing system using a unique trap handling technique
JPH031231A (ja) マイクロプログラム制御装置
GB2158977A (en) Control sequencer with dual microprogram counters for microdiagnostics
EP0297890B1 (en) Apparatus and method for data induced condition signaling
JPH04112236A (ja) プロセッサの故障診断装置
CA1223079A (en) Data processor having selective breakpoint capability with minimal overhead

Legal Events

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

Payment date: 20050114

Year of fee payment: 12

EXPY Expiration of term