KR19990016837A - 어드레스 저장 및 트레이스 회로 - Google Patents

어드레스 저장 및 트레이스 회로 Download PDF

Info

Publication number
KR19990016837A
KR19990016837A KR1019970039524A KR19970039524A KR19990016837A KR 19990016837 A KR19990016837 A KR 19990016837A KR 1019970039524 A KR1019970039524 A KR 1019970039524A KR 19970039524 A KR19970039524 A KR 19970039524A KR 19990016837 A KR19990016837 A KR 19990016837A
Authority
KR
South Korea
Prior art keywords
address
trace
stack
stored
predetermined number
Prior art date
Application number
KR1019970039524A
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 KR1019970039524A priority Critical patent/KR19990016837A/ko
Publication of KR19990016837A publication Critical patent/KR19990016837A/ko

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

본 발명은 어드레스 저장 및 트레이스 회로를 공개한다. 그 회로는 프로그램 어드레스를 입력하여 지연하기 위한 소정수의 라인 버퍼들, 인스트럭션의 사이클 수에 따라 발생되는 선택신호에 응답하여 상기 소정수의 라인 버퍼들의 출력신호들중의 하나를 선택하여 출력하기 위한 선택수단, 및 상기 선택수단에 의해서 선택된 어드레스를 저장하고 순차적으로 저장하기 위한 소정수의 직렬 연결된 저장수단들을 구비하고 상기 소정수의 직렬 연결된 저장수단들 각각은 전단의 스택으로 부터 출력되는 어드레스와 후단의 스택으로 출력되는 트레이스 어드레스를 선택적으로 저장하고 목표 어드레스만을 저장할 것인지 소스 어드레스와 목표 어드레스를 모두 저장할 것인지를 구분하기 위한 체크 비트를 저장한다. 따라서, 작은 수의 스택과 논리 회로를 이용하여 어드레스를 저장하고 트레이스할 수 있으므로 프로그램 디버깅시에 하드웨어 비용 절감의 효과를 가져올 수 있다.

Description

어드레스 저장 및 트레이스 회로
본 발명은 프로그램 디버깅시에 어드레스 저장 및 트레이스 회로에 관한 것으로, 특히 회로 구성이 간단한 어드레스 저장 및 트레이스 회로에 관한 것이다.
일반적으로, 프로그램을 만들어서 디버깅(dehugging)시에 순차적으로 프로그램 어드레스를 저장해서 트레이스하기 위해 메모리가 있어야 한다.
그러나, 메모리를 사용할 경우에 하드웨어 비용이 증가한다는 단점이 있었다.
본 발명의 목적은 작은 수의 스택과 로직 회로를 이용하여 어드레스를 저장하고 트레이스할 수 있는 어드레스 저장 및 트레이스 회로를 제공하는데 있다.
이와같은 목적을 달성하기 위한 본 발명의 어드레스 저장 및 트레이스 회로는 프로그램 어드레스를 입력하여 지연하기 위한 소정수의 라인 버퍼들, 인스트럭션의 사이클 수에 따라 발생되는 선택신호에 응답하여 상기 소정수의 라인 버퍼들의 출력신호들중의 하나를 선택하여 출력하기 위한 선택수단, 및 상기 선택수단에 의해서 선택된 어드레스를 저장하고 순차적으로 저장하기 위한 소정수의 직렬 연결된 저장수단들을 구비하고 상기 소정수의 직렬 연결된 저장수단들 각각은 전단의 스택으로 부터 출력되는 어드레스와 후단의 스택으로 출력되는 트레이스 어드레스를 선택적으로 저장하고 목표 어드레스만을 저장할 것인지 소스 어드레스와 목표 어드레스를 모두 저장할 것인지를 구분하기 위한 체크 비트를 저장하는 것을 특징으로 한다.
도1은 본 발명의 어드레스 저장 및 트레이스 회로의 블럭도이다.
도2는 도1에 나타내 스택의 상세 블럭도이다.
이하, 첨부된 도면을 참고로 하여 본 발명의 어드레스 저장 및 트레이스 회로를 설명하면 다음과 같다.
도1은 본 발명의 어드레스 저장 및 트레이스 회로의 블럭도로서, 버퍼들(10, 12, 14), 멀티플렉서(16), 및 스택(stack)들(18, 20, 22, 24)로 구성되어 있다. 도1에서는 3개의 버퍼를 사용하고 4개의 스택을 사용하였지만 그 수를 증가하여 연결하여도 상관없다.
버퍼들(10, 12, 14)은 프로그램 카운터에 의해서 계수된 프로그램 어드레스를 입력하여 저장한다. 그래서, 입력 신호(PA)는 다음 수행될 프로그램 어드레스이고, 버퍼(10)에 저장된 어드레스는 현재의 프로그램 어드레스를 버퍼들(12, 14)에 저장된 어드레스는 이전에 수행된 프로그램 어드레스들을 각각 나타낸다. 멀티플렉서(16)는 인스트럭션 사이클 수에 따라 발생되는 선택신호(SEL1)에 응답하여 버퍼들(10, 12, 14)의 출력신호들 중의 하나를 선택하여 출력한다. 스택들(18, 20, 22, 24)은 멀티플렉서(16)에 의해서 선택된 어드레스를 순서적으로 저장한다.
수행된 프로그램 어드레스를 저장하는 원리는 다음과 같다.
인스트럭션 사이클 수에 따라 저장해야할 소스(source)와 목표(destination) 어드레스의 위치가 파이프 라인에서 달라지므로 이를 처리할 라인 버퍼들(10, 12, 14)이 있고, 파이프 라인의 길이에 따라 라인 버퍼의 크기가 정해진다. 그리고, 순차적인 어드레스는 스택에 저장하지 않는다. 그리고, 비순차적인 어드레스를 저장하는 방법에 있어서는, 인스트럭션의 소스 어드레스와 목표 어드레스의 상관된 정보가 있으면 목표 어드레스만을 저장하고, 이 경우외의 경우에는 소스 어드레스와 목표 어드레스를 모두 저장한다. 그리고, 스택에 목포 어드레스만을 저장할 것인지 소스 어드레스와 목표 어드레스를 모두 저장할 것인지를 구분하기 위해서 스택에는 어드레스 비트 수외에 1비트의 체크비트를 추가한다. 이와같은 동작을 반복적으로 수행하여 어드레스를 저장한다.
도2는 도1에 나타낸 스택의 상세 블럭도로서, 체크 비트 저장부(30)와 어드레스 비트 저장부(32)로 구성된 스택 및 멀티플렉서(34)로 구성되어 있다.
체크 비트 저장부(30)는 목표 어드레스(D)만을 저장할 것인지, 소스 어드레스(S)와 목표 어드레스(D)를 모두 저장할 것인지를 구분하기 위한 체크 비트를 저장한다. 멀티플렉서(34)는 어드레스 저장모드인지 트레이스 모드인지를 나타내는 선택신호(SEL2)에 응답하여 어드레스 저장모드인 경우에는 전단의 스택으로 부터의 트레이스 입력을 선택하여 출력하고 트레이스 모드인 경우에는 궤환 트레이스 입력신호를 선택하여 출력한다. 예를 들면, 도2에 나타낸 스택(20)에 어드레스 저장모드인 경우에는 스택(18)로 부터 입력되는 어드레스는 저장하고 트레이스 모드인 경우에는 스택(22)로 부터 궤환되는 궤환 어드레스를 저장한다.
저장된 프로그램 어드레스를 트레이스하는 원리는 다음과 같다.
어드레스 트레이스는 정지된 어드레스에서 역순으로 트레이스하는데, 스택의 체크 비트를 비교한 후에 목표 어드레스와 소스 어드레스 둘다 저장했을 때, 목표 어드레스의 내용과 현재의 트레이스 어드레스를 비교하여 같으면 현재의 트레이스 어드레스에 스택의 소스 어드레스를 대치한다. 목표 어드레스만 저장되었을 때, 목표 어드레스의 내용과 현재의 트레이스 어드레스를 비교하여 같으면 현재의 트레이스 어드레스에 목표 어드레스와 그 인스트럭션 내용에서 계산된 소스 어드레스를 현재 트레이스 어드레스로 대치한다. 다음 스택의 목표 어드레스와 대치된 현재의 어드레스를 비교하여 추적한다. 이와같은 동작을 반복적으로 수행하여 어드레스를 트레이스한다.
따라서, 본 발명의 어드레스 저장 및 트레이스 회로는 작은 수의 스택과 논리 회로를 이용하여 어드레스를 저장하고 트레이스할 수 있으므로 프로그램 디버깅시에 하드웨어 비용 절감의 효과를 가져올 수 있다.

Claims (5)

  1. 프로그램 어드레스를 입력하여 지연하기 위한 소정수의 라인 버퍼들;
    인스트럭션의 사이클 수에 따라 발생되는 선택신호에 응답하여 상기 소정수의 라인 버퍼들의 출력신호들중의 하나를 선택하여 출력하기 위한 선택수단; 및
    상기 선택수단에 의해서 선택된 어드레스를 저장하고 순차적으로 저장하기 위한 소정수의 직렬 연결된 저장수단들을 구비하고 상기 소정수의 직렬 연결된 저장수단들 각각은 전단의 스택으로 부터 출력되는 어드레스와 후단의 스택으로 출력되는 트레이스 어드레스를 선택적으로 저장하고 목표 어드레스만을 저장할 것인지 소스 어드레스와 목표 어드레스를 모두 저장할 것인지를 구분하기 위한 체크 비트를 저장하는 것을 특징으로 하는 어드레스 저장 및 트레이스 회로.
  2. 제1항에 있어서, 상기 소스 어드레스와 목표 어드레스가 상관된 정보가 있으면 목표 어드레스만을 상기 스택에 저장하는 것을 특징으로 하는 어드레스 저장 및 트레이스 회로.
  3. 제2항에 있어서, 상기 소스 어드레스와 목표 어드레스가 상관된 정보가 없으면 상기 소스 어드레스와 목표 어드레스를 모두 상기 스택에 저장하는 것을 특징으로 하는 어드레스 저장 및 트레이스 회로.
  4. 제3항에 있어서, 상기 스택의 체크 비트를 비교한 후 상기 목표 어드레스와 소스 어드레스를 모두 저장했을 때, 상기 저장된 목표 어드레스와 현재의 트레이스 어드레스를 비교하여 같으면 현재의 트레이스 어드레스에 상기 스택의 소스 어드레스를 대치하는 것을 특징으로 하는 어드레스 저장 및 트레이스 회로.
  5. 제4항에 있어서, 상기 스택의 체크 비트를 비교한 후 상기 목표 어드레스만 저장되었을 때, 상기 저장된 목표 어드레스와 현재의 트레이스 어드레스를 비교하여 같으면 현재 트레이스 어드레스에 상기 저장된 목표 어드레스와 소스 어드레스를 상기 현재 트레이스 어드레스로 대치하는 것을 특징으로 하는 어드레스 저장 및 트레이스 회로.
KR1019970039524A 1997-08-20 1997-08-20 어드레스 저장 및 트레이스 회로 KR19990016837A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970039524A KR19990016837A (ko) 1997-08-20 1997-08-20 어드레스 저장 및 트레이스 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970039524A KR19990016837A (ko) 1997-08-20 1997-08-20 어드레스 저장 및 트레이스 회로

Publications (1)

Publication Number Publication Date
KR19990016837A true KR19990016837A (ko) 1999-03-15

Family

ID=66046461

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970039524A KR19990016837A (ko) 1997-08-20 1997-08-20 어드레스 저장 및 트레이스 회로

Country Status (1)

Country Link
KR (1) KR19990016837A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100347865B1 (ko) * 1999-11-15 2002-08-09 삼성전자 주식회사 어드레스 트레이스를 이용한 분기 예측 방법
KR100492178B1 (ko) * 1999-09-16 2005-06-02 현대중공업 주식회사 철도차량 전장품용 고장 트레이스 데이터 구조와 저장 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100492178B1 (ko) * 1999-09-16 2005-06-02 현대중공업 주식회사 철도차량 전장품용 고장 트레이스 데이터 구조와 저장 방법
KR100347865B1 (ko) * 1999-11-15 2002-08-09 삼성전자 주식회사 어드레스 트레이스를 이용한 분기 예측 방법

Similar Documents

Publication Publication Date Title
KR950004854B1 (ko) 반도체 메모리 장치
KR100238931B1 (ko) 반도체 메모리 시험 장치의 페일 해석 장치
US6507581B1 (en) Dynamic port mode selection for crosspoint switch
JP2008233086A (ja) 試験装置及び電子デバイス
KR0159533B1 (ko) 랜덤 엑세스 메모리내에 데이타를 기억시키기 위한 소형레벨의 패리티 보호용 방법 및 장치
JP2766119B2 (ja) 空間スイッチ回路
KR100558492B1 (ko) 반도체 메모리 장치 및 이 장치의 테스트 패턴 데이터발생방법
KR19990016837A (ko) 어드레스 저장 및 트레이스 회로
KR900018793A (ko) 정렬처리장치의 제어데이타 생성장치
US6678852B2 (en) Semiconductor device testing apparatus
KR960706123A (ko) 재구성 가능한 프로그램 상태 워드를 구비한 마이크로콘트롤러(Microcontroller with a reconfigurble progam status word)
US5701299A (en) Method of and apparatus for switching multi-slot time division signals
KR100558476B1 (ko) 반도체 메모리 장치 및 이 장치의 라이트 패턴 데이터발생방법
US6067304A (en) No-hit switching apparatus
US4300208A (en) Controlling which of two addresses is used by a microcode memory
US6185714B1 (en) Address trap comparator capable of carrying out high speed fault detecting test
KR970076273A (ko) 캐쉬 메모리 컨트롤러 및 이를 제공하는 방법
KR930020458A (ko) 파이프라인 동작형 메모리 시스템
KR950001477A (ko) 기억 회로
KR980700575A (ko) 주기발생장치
KR960032930A (ko) 데이터 전송 회로
KR960032018A (ko) 반도체 집적회로 장치
KR940000956A (ko) 시간 이산 신호 처리기
KR950025534A (ko) 인터럽트신호의 멀티플렉싱회로
KR0143131B1 (ko) 램 테스트를 위한 최적 데이타 발생기

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination