KR0171768B1 - System bus analysis apparatus of computer system - Google Patents

System bus analysis apparatus of computer system Download PDF

Info

Publication number
KR0171768B1
KR0171768B1 KR1019950069178A KR19950069178A KR0171768B1 KR 0171768 B1 KR0171768 B1 KR 0171768B1 KR 1019950069178 A KR1019950069178 A KR 1019950069178A KR 19950069178 A KR19950069178 A KR 19950069178A KR 0171768 B1 KR0171768 B1 KR 0171768B1
Authority
KR
South Korea
Prior art keywords
bus
signal
system bus
trigger condition
data
Prior art date
Application number
KR1019950069178A
Other languages
Korean (ko)
Other versions
KR970049660A (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 KR1019950069178A priority Critical patent/KR0171768B1/en
Publication of KR970049660A publication Critical patent/KR970049660A/en
Application granted granted Critical
Publication of KR0171768B1 publication Critical patent/KR0171768B1/en

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/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
    • 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/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3027Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a bus

Landscapes

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

Abstract

본 발명은 컴퓨터 시스템의 시스템 버스 분석장치에 관한 것으로, 제어신호에 따라 시스템 버스의 신호를 저장하기 위한 검색 메모리(26); 트리거 조건을 위한 신호를 출력하고, 상기 검색 메모리의 데이타를 읽어와 가공하여 사용자에게 제공하는 프로세서(21); 상기 프로세서로부터 입력된 돈케어(dont' care) 트리거 조건을 저장하는 마스크 레지스터(22); 상기 프로세서로부터 입력된 케어(care) 트리거 조건을 저장하는 데이타 레지스터(23); 상기 마스크 레지스터 및 데이타 레지스터에 저장된 트리거 조건과 시스템 버스의 신호상태를 버스 클럭마다 비교하는 비교기(24); 및 상기 비교기의 출력에 따라 트리거 조건이 일치되면 시스템 버스의 신호상태를 검색 메모리에 저장하도록 검색 메모리 어드레스 및 라이트신호를 출력하는 검색 메모리 저장 제어신호 생성부(25)를 포함하여 구성되어 시스템 버스 클럭 단위로 트리거 조건을 입력받아 시스템 버스의 상태를 검색하므로써 고속 중형 컴퓨터의 시스템 상태를 효율적으로 시험하거나 컴퓨터의 성능을 분석할 수 있는 효과가 있다.The present invention relates to a system bus analyzer of a computer system, comprising: a search memory (26) for storing a signal of a system bus in accordance with a control signal; A processor 21 for outputting a signal for a trigger condition, reading and processing data of the search memory and providing the same to a user; A mask register 22 for storing a don 'care trigger condition input from the processor; A data register (23) for storing a care trigger condition input from the processor; A comparator (24) for comparing a signal condition of a system bus with a trigger condition stored in the mask register and the data register for each bus clock; And a search memory storage control signal generator 25 outputting a search memory address and a write signal to store the signal state of the system bus in the search memory when a trigger condition is matched according to the output of the comparator. By retrieving the state of the system bus by receiving the trigger condition in units, it is possible to efficiently test the system state of a high-speed medium-size computer or to analyze the performance of the computer.

Description

컴퓨터 시스템의 시스템 버스 분석장치System bus analyzer of computer system

제1도는 일반적인 다중 프로세서 시스템의 예를 도시한 블럭도.1 is a block diagram illustrating an example of a general multiprocessor system.

제2도는 본 발명에 따른 시스템 버스 분석장치를 도시한 블럭도.2 is a block diagram showing a system bus analyzer according to the present invention.

제3도는 본 발명이 적용되는 버스 정보 분석기를 도시한 블럭도.3 is a block diagram showing a bus information analyzer to which the present invention is applied.

제4도는 제3도에 도시된 버스 정보 분석기의 상태 천이도.4 is a state transition diagram of the bus information analyzer shown in FIG.

제5도는 제3도에 도시된 기능제어모듈의 신호선을 도시한 도면.FIG. 5 is a diagram showing signal lines of the function control module shown in FIG.

제6도는 제3도에 도시된 기능 제어모듈의 상태 천이도.6 is a state transition diagram of the function control module shown in FIG.

제7도는 제3도에 도시된 프로세서모듈의 신호선.7 is a signal line of the processor module shown in FIG.

제8도는 제3도에 도시된 프로세서모듈의 상태 천이도.8 is a state transition diagram of the processor module shown in FIG.

제9도는 제3도에 도시된 검색 메모리모듈의 신호선.9 is a signal line of the search memory module shown in FIG.

제10도는 제3도에 도시된 버스 인터페이스 모듈을 통한 데이타의 흐름을 도시한 도면.FIG. 10 shows the flow of data through the bus interface module shown in FIG.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

1 : 시스템 버스 2 : 프로세서 보드1: system bus 2: processor board

3 : 메모리보드 4 : 입출력제어보드3: memory board 4: input / output control board

5 : 시스템 제어보드 6,20 : 시스템 버스 분석기5: System control board 6,20: System Bus Analyzer

21 : 프로세서 22 : 마스크 레지스터21 processor 22 mask register

23 : 데이타 레지스터 24 : 비교기23: data register 24: comparator

25 : 검색 메모리 저장 제어신호 생성부 26 : 검색 메모리25: search memory storage control signal generator 26: search memory

본 발명은 컴퓨터 시스템에 있어서 시스템 버스의 상태를 분석하는 시스템 버스 분석기에 관한 것으로, 특히 대칭 구조형 다중 프로세서 시스템의 시스템 버스 분석기에 적용되어 버스 클럭(bus clock) 단위로 트리거 조건을 만족하는 신호를 검색하는 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system bus analyzer for analyzing the state of a system bus in a computer system. In particular, the present invention relates to a system bus analyzer of a symmetric multiprocessor system, and searches for a signal satisfying a trigger condition in units of a bus clock. It relates to a device to.

일반적으로 버스구조와 공유메모리를 기반으로 하는 다중 처리시스템에서 각 프로세서보드는 버스와 메모리를 공유하며 모든 데이타의 전송은 버스를 통하여 이루어진다. 따라서 시스템 버스를 통해서 전송되는 데이타를 검색하면 시스템의 동작상태를 파악하여 동작상의 에러 유무를 발견하고 실제적인 시스템 성능을 유추할 수 있다.In general, in a multiple processing system based on a bus structure and shared memory, each processor board shares a bus and a memory, and all data transfer is performed through the bus. Therefore, by searching the data transmitted through the system bus, it is possible to grasp the operating status of the system to find out the operational error and to infer the actual system performance.

즉, 다중 프로세서 컴퓨터 시스템은 제1도에 도시된 바와 같이, 하나의 시스템 버스(1)에 다수의 프로세서 보드(2)와 메모리보드(3), 입출력제어보드(4) 및 시스템 제어보드(5)가 연결되어 시스템 버스(1)를 통해 데이타를 교환하도록 되어 있다. 이러한 다중프로세서 시스템에 있어서 시스템 버스(1)는 컴퓨터의 성능을 좌우하는 중요한 요소인데, 이와 같이 시스템 버스의 성능은 시스템 버스 분석기(6)에 의해 측정될 수 있다.That is, a multiprocessor computer system, as shown in FIG. 1, includes a plurality of processor boards 2, a memory board 3, an input / output control board 4, and a system control board 5 on one system bus 1. Are connected to exchange data via the system bus (1). In such a multiprocessor system, the system bus 1 is an important factor in determining the performance of the computer. Thus, the performance of the system bus can be measured by the system bus analyzer 6.

시스템 버스 분석기(6)는 다양한 트리거환경을 가지고 버스의 데이타를 검색, 저장, 처리하는 기능과 시스템 버스의 사용율 측정등 시스템 버스의 성능을 분석하는 기능 및 응답기(ResPonder)로서의 기능을 제공한다. 이러한 시스템 버스 분석기(6)는 기본적으로 고속 중형컴퓨터의 기본 구성에는 포함되지 않으나 시스템의 통합 시험시나 시스템 버스의 성능 분석시와 같이, 필요에 따라 시스템 버스 백플레인에 장착되어 시스템 버스에 구동된 데이타를 검색, 저장, 처리하여 특정 상황의 시스템 버스의 상태를 분석하거나 성능을 측정하여 이를 사용자에게 제공하도록 된 것이다.The system bus analyzer 6 provides a function of searching, storing, and processing data on the bus with various trigger environments, and analyzing the performance of the system bus such as measuring the utilization of the system bus, and functions as a responder (ResPonder). Such a system bus analyzer 6 is basically not included in the basic configuration of a high-speed medium-size computer, but is mounted on the system bus backplane as needed for data integration and system bus performance analysis. Search, store and process to analyze the state of the system bus in a specific situation or to measure the performance and provide it to the user.

그런데 종래의 시스템 버스 분석기는 비동기식 버스 점유형이기 때문에 팬디드 프로토콜을 적용하여 동기식 버스를 사용하는 고속 중형컴퓨터에는 적용하기 어렵고, 종래의 동기식 HiPi 버스 전용 버스상태 분석기는 HiPi-Bus용이었기 때문에 개선된 HiPi+버스를 사용하는 고속 중형컴퓨터에 직접 사용할 수 없으며, 그 기능 또한 단순한 문제점이 있다.However, since the conventional system bus analyzer is asynchronous bus occupied type, it is difficult to apply to a high speed medium computer using the synchronous bus using the PANED protocol. It cannot be used directly on high speed medium computers using HiPi + bus, and its function also has a simple problem.

이에 본 발명은 HiPi+버스를 사용하는 대칭 구조형 다중 프로세서 시스템에 있어서 시스템 버스 분석기에 적용되어 기본 버스 사이클(cycle) 단위로 트리거 조건을 만족하는 신호를 검색하는 장치를 제공하는데 그 목적이 있다.Accordingly, an object of the present invention is to provide an apparatus for searching for a signal satisfying a trigger condition on a basic bus cycle basis in a system bus analyzer in a symmetric structured multiprocessor system using a HiPi + bus.

상기와 같은 목적을 달성하기 위하여 본 발명의 장치는, 다중 프로세서 시스템의 시스템 버스상의 신호들을 기본 사이클 단위로 검색하여 모니터하도록 된 시스템 버스 분석기에 있어서, 제어신호에 따라 시스템 버스의 신호를 저장하기 위한 검색 메모리; 트리거 조건을 위한 신호를 출력하고, 검색 메모리의 데이타를 읽어와 가공하여 사용자에게 제공하는 프로세서; 상기 프로세서로부터 입력된 돈케어 트리거 조건을 저장하는 마스크 레지스터; 상기 프로세서로부터 입력된 케어 트리거 조건을 저장하는 데이타 레지스터; 상기 마스크 레지스터 및 데이타 레지스터에 저장된 트리거 조건과 시스템 버스의 신호정보를 버스 클럭마다 비교하는 비교기; 및 상기 비교기의 출력에 따라 트리거 조건이 일치되면 소정의 방식으로 시스템 버스의 신호상태를 검색 메모리에 저장하도록 상기 검색 메모리의 어드레스 및 라이트신호를 출력하는 검색 메모리 저장 제어신호 생성부로 구성된 것을 특징으로 한다.In order to achieve the above object, an apparatus of the present invention is a system bus analyzer configured to search for and monitor signals on a system bus of a multiprocessor system in basic cycle units, and to store signals of a system bus according to a control signal. Search memory; A processor for outputting a signal for a trigger condition, reading and processing data in a search memory and providing the same to a user; A mask register for storing a money care trigger condition input from the processor; A data register for storing a care trigger condition input from the processor; A comparator for comparing a trigger condition stored in the mask register and a data register with signal information of a system bus for each bus clock; And a search memory storage control signal generation unit configured to output an address and a write signal of the search memory to store the signal state of the system bus in the search memory in a predetermined manner when the trigger condition is matched according to the output of the comparator. .

즉, 본 발명은 래치된 시스템 버스의 신호들을 미리 설정된 트리거 조건과 매 버스 클럭마다 비교 검색하여 일치하면, 그때의 시스템 버스의 신호를 중심으로 적당한 범위의 시스템 버스 정보를 검색 메모리에 저장하도록 한 것이다. 이때 본 발명에 따라 트리거 조건을 버스 클럭 단위(예컨대, HiPi+버스일 경우에 60.6nsec 단위)로 설정한다.That is, according to the present invention, when the signals of the latched system bus are compared and searched for the preset trigger condition with every bus clock, the system bus information is stored in the search memory based on the signals of the system bus at that time. . At this time, according to the present invention, the trigger condition is set to a bus clock unit (for example, 60.6 nsec unit in the case of HiPi + bus).

이하, 첨부된 도면을 참조하여 본 발명을 자세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described in detail the present invention.

본 발명이 적용되는 HiPi+버스는 동기형 제어방식으로서, 팬디드 프로토콜을 사용하는데, '팬디드 프로토콜(Pended Protocol)'은 전송을 정보 요청단계와 정보 응답단계로 엄격하게 구분하여 버스의 전송속도에 영향을 주지 않도록 하는 방법이다. 여기서 엄격하게 구분한다는 의미는 정보요청을 위하여 사용하는 버스와 정보응답을 위하여 사용하는 버스를 분리하고, 각각의 버스를 사용하기 위해서는 별도의 중재기를 통한 중재과정을 수행함으로써 사용할 수 있다는 것이다. 이러한 방식을 적용함으로써 데이타 전송버스는 실질적인 데이타 전송시에만 사용되기 때문에, 메모리에 대한 접근시간동안 계속해서 버스를 장악함으로 인하여 다른 프로세서가 시스템 버스를 사용하지 못했던 다른 표준버스와는 달리, 순수히 데이타의 전송시에만 버스를 사용하게 함으로써 전송 성능면에서 향상을 가져오게 된다.The HiPi + bus to which the present invention is applied is a synchronous control method, and uses the PANDED protocol. The PENDED PROTOCOL strictly divides the transmission into an information request step and an information response step. This is how you do not affect. The strict classification here means that the bus used for information request and the bus used for information response can be separated, and each bus can be used by performing an arbitration process through a separate arbitrator. By applying this method, the data transfer bus is used only for the actual data transfer, and unlike other standard buses where other processors have not used the system bus because of the continuous bus seizure during memory access time, By using the bus only for transmission, there is an improvement in transmission performance.

그리고 '동기형(Synchronous)제어' 방식이란 시스템 버스상에 구동되는 정보의 충돌을 방지하는 프로토콜의 하나로, 전송 사이클의 종류에 따라 기본 사이클을 설정하여 버스를 사용하는 방식이다. 팬디드 프로토콜은 데이타의 전송을 요청과 응답의 단계로 나누어 파이프 라인시킨 것과 유사하므로 비동기형보다는 동기형 제어방식이 유리하다.Synchronous control is a protocol that prevents collision of information driven on the system bus, and uses a bus by setting a basic cycle according to the type of transmission cycle. The PANDED protocol is similar to the pipeline of data transfer divided into request and response phases, so synchronous control is advantageous over asynchronous.

이와 같은 시스템 버스에서 버스상에서 오류가 발생되면 이를 검출하여 오류를 제거하기 위해 시스템 버스 분석기가 필요한데, 이러한 시스템 버스 분석기는 제2도에 도시된 바와 같이, 제어신호에 따라 시스템 버스의 신호를 저장하기 위한 검색 메모리(26); 트리거 조건을 위한 신호를 출력하고, 상기 검색 메모리의 데이타를 읽어와 가공하여 사용자에게 제공하는 프로세서(21); 상기 프로세서로부터 입력된 돈케어(dont' care) 트리거 조건을 저장하는 마스크 레지스터(22); 상기 프로세서로부터 입력된 케어(care) 트리거 조건을 저장하는 데이타 레지스터(23); 상기 마스크 레지스터 및 데이타 레지스터에 저장된 트리거 조건과 시스템 버스의 신호상태를 버스 클럭마다 비교하는 비교기(24); 상기 비교기의 출력에 따라 트리거 조건이 일치되면 시스템 버스의 신호상태를 검색 메모리에 저장하도록 검색 메모리 어드레스 및 라이트신호를 출력하는 검색 메모리 저장 제어신호 생성부(26)를 포함하여 구성된다.A system bus analyzer is needed to detect and eliminate an error on a bus in such a system bus. The system bus analyzer stores a signal of a system bus according to a control signal, as shown in FIG. Search memory 26 for; A processor 21 for outputting a signal for a trigger condition, reading and processing data of the search memory and providing the same to a user; A mask register 22 for storing a don 'care trigger condition input from the processor; A data register (23) for storing a care trigger condition input from the processor; A comparator (24) for comparing a signal condition of a system bus with a trigger condition stored in the mask register and the data register for each bus clock; And a search memory storage control signal generator 26 for outputting a search memory address and a write signal to store the signal state of the system bus in the search memory when the trigger condition is matched according to the output of the comparator.

제2도에 있어서, 프로세서부(21)는 사용자가 검색하고자 하는 신호 정보를 마스크 레지스터부(22)와 데이타 레지스터부(23)로 전송하고, 마스크 레지스터부(22)와 데이타 레지스터부(23)에는 각각 돈케어정보와 검색하고자 하는 신호의 정보가 저장된다. 비교기(24)는 상기 레지스터에 설정된 트리거 조건과 시스템 버스의 신호정보를 비교하여 버스상에서 원하는 신호가 구동되었을 경우, 이를 알리는 신호를 검색 메모리 저장 제어신호 생성부(25)에 알린다. 이 신호가 구동되면 검색 메모리 저장 제어신호 생성부(25)는 검색 메모리 어드레스를 출력하여 해당 시스템 버스의 정보를 검색 메모리(27)에 저장하고, 프로세서부(21)에 이를 알린다. 이때, 검색 메모리 저장 제어신호 생성부(25)는 트리거 조건을 만족하는 버스 클럭의 래치된 시스템 버스 정보를 저장하는데, 이 데이타를 기준으로 소정(예컨대, 128K)의 버스클럭의 데이타를 저장할 수 있다. 본 발명의 실시예에서는 트리거 조건을 만족하는 데이타를 중심으로 앞의 128K 버스클럭을 저장할 수 있도록 되어 있다.In FIG. 2, the processor unit 21 transmits the signal information that the user wants to search to the mask register unit 22 and the data register unit 23, and the mask register unit 22 and the data register unit 23. As shown in FIG. In each of the money care information and the information of the signal to be stored is stored. The comparator 24 compares the trigger condition set in the register with the signal information of the system bus and informs the search memory storage control signal generator 25 of a signal informing that the desired signal is driven on the bus. When the signal is driven, the search memory storage control signal generator 25 outputs a search memory address to store information of the corresponding system bus in the search memory 27 and informs the processor 21 of the signal. In this case, the retrieval memory storage control signal generator 25 stores latched system bus information of a bus clock that satisfies a trigger condition, and may store data of a predetermined (eg, 128K) bus clock based on the data. . In the embodiment of the present invention, the previous 128K bus clock can be stored centering on data satisfying the trigger condition.

이와 같은 본 발명이 적용된 고속 중형 컴퓨터의 버스 정보 분석기는 통합 시스템 구축을 지원하기 위한 도구로서, 시스템 버스에 구동되는 모든 신호들을 감시, 저장, 검색, 분석하여 시스템 오류나 이상 동작상태를 시험자에게 알려줌으로써 적절한 조치를 취할 수 있게 한다.The bus information analyzer of the high-speed medium-size computer to which the present invention is applied is a tool for supporting the construction of an integrated system. By monitoring, storing, retrieving, and analyzing all signals driven on the system bus, the system error or abnormal operation status is informed to the tester. Allow appropriate action to be taken.

이어서, 본 발명이 적용되는 시스템 버스 분석기는 제3도에 도시된 바와 같이, 시스템 버스 정보를 매 클럭마다 래치하여 기능제어모듈(34:FCM)과 검색 메모리 모듈(33:TM)에 제공하기 위한 버스인터페이스모듈(31:BIM), 시스템클럭을 입력받아 버스 분석기에서 사용되는 각종 클럭을 제공하는 클럭발생모듈(32:TPC), 시스템 버스에 대한 트레이스 정보를 저장하는 검색 메모리 모듈(33:TM), 트리거 조건과 시스템 정보를 비교하여 검색을 제어하는 기능제어모듈(34:FCM) 및 프로세서모듈(35:CPU)로 구성되어 있다.Next, as shown in FIG. 3, the system bus analyzer to which the present invention is applied latches the system bus information every clock to provide the function control module 34 (FCM) and the search memory module 33 (TM). Bus interface module (31: BIM), Clock generation module (32: TPC) which receives various system clocks and provides various clocks used in bus analyzer, Search memory module (33: TM) which stores trace information about system bus And a function control module 34 (FCM) and a processor module 35 (CPU) that control the search by comparing the trigger condition and system information.

먼저 본 발명이 적용되는 시스템 버스 분석기는 고속 중형컴퓨터의 시스템 버스인 HiPi+버스에서 구동되는 모든 신호들을 감시, 저장, 검색 및 가공하여 사용자의 요구에 따라 여러 가지 형태의 정보로서 제공해 주는데, 이러한 시스템 버스 분석기에서 시스템 버스 검색기능은 시스템 버스상에 구동되는 모든 신호들을 감시하여 트리거 조건(trigger condition)을 만족하는 신호들을 검색 메모리(33)에 저장하고, 이를 각 버스신호선 모임으로 그룹화하여 사용자에게 제공하는 것이다.First, the system bus analyzer to which the present invention is applied monitors, stores, retrieves, and processes all signals driven on the HiPi + bus, which is a system bus of a high-speed medium-sized computer, and provides them as various types of information according to user requirements. In the bus analyzer, the system bus search function monitors all signals driven on the system bus, stores signals satisfying the trigger condition in the search memory 33, and groups them into groups of individual bus signal lines and provides them to the user. It is.

여기서 트리거 조건은 다음 표 1과 같이 트리거 조건 형태, 트리거 로직, 저장방법에 따라 구분될 수 있는데, 본 발명의 실시예에서는 트리거 조건을 버스 클럭에 따라 한정한다.Here, the trigger condition may be classified according to the trigger condition type, the trigger logic, and the storage method as shown in Table 1 below. In an embodiment of the present invention, the trigger condition is defined according to the bus clock.

상기 표 1을 참조하여 설명하면, 본 발명의 실시예에 있어서 '버스동작 기본 사이클 단일 저장' 기능은 HiPi 버스의 기본주기인 어드레스 기본 사이클, 데이타 기본 사이클, 그리고 어드레스/데이타 기본 사이클을 트리거 조건으로 사용하여 데이타의 요청에서 응답까지 일련의 동작(transation)을 검색하는 기능이다. 이러한 기능에서는 각 기본 주기나 트랜잭션안에서 앤드나 앤드오아의 트리거 로직을 제공한다. 설정된 트리거 조건을 만족하는 데이타를 기준으로 연속된 128K의 버스클럭 데이타를 저장할 수 있고, 저장하고자 하는 데이타의 영역은 트리거 조건을 만족하는 데이타를 중심으로 앞의 8k 버스클럭과 뒤의 120K 버스클럭으로 설정하거나, 또는 앞의 128K 버스클럭으로 설정하는 등 16종류의 트리거 위치를 지정할 수 있다.Referring to Table 1 above, in the embodiment of the present invention the 'bus operation basic cycle single storage' function is HiPi It is a function that retrieves a series of transitions from the request to the response of data using the basic cycle of the bus, the address basic cycle, the data basic cycle, and the address / data basic cycle as trigger conditions. These features provide the trigger logic for AND or ANDO within each basic cycle or transaction. Continuous 128K bus clock data can be stored based on the data satisfying the set trigger condition, and the area of the data to be saved is the 8K front clock and the 120K bus clock after the data meeting the trigger condition. 16 types of trigger positions can be specified, such as setting or setting the previous 128K bus clock.

그리거, '버스동작 기본 사이클 다중 블럭저장' 기능은 HiPi 버스의 기본 주기인 어드레스 기본 사이클, 데이타 기본 사이클, 그리고 어드레스/데이타 기본 사이클을 트리거 조건으로 사용하며 동일 트리거 조건을 만족하는 복수개의 데이타 블럭을 저장하는 기능으로 최대 1024개의 블럭을 저장할 수 있다. 각 블럭당 트리거를 만족하는 데이타를 포함하여 128버스 사이클의 데이타를 저장할 수 있다. 단, 리드 트랜잭션의 경우 최대 512개의 블럭을 저장할 수 있으며, 각 블럭당 트리거 조건을 만족하는 데이타를 포함한 256버스클럭의 데이타를 저장할 수 있다. 그리고, 트리거 조건을 만족하는 버스 데이타를 중심으로 앞의 32버스클럭, 뒤의 96버스클럭의 데이타를 저장하거나 앞의 128버스클럭의 데이타를 저장하는 방법등 4종류의 트리거 위치를 제공한다.And, 'Bus operation basic cycle multi-block save' function is HiPi The basic cycle of the bus, the address basic cycle, the data basic cycle, and the address / data basic cycle are used as trigger conditions, and a function of storing a plurality of data blocks satisfying the same trigger condition can store up to 1024 blocks. Each block can store 128 bus cycles of data, including data that satisfies the trigger. However, up to 512 blocks can be stored in the read transaction, and 256 bus clock data including the data satisfying the trigger condition for each block can be stored. In addition, four types of trigger positions are provided such as storing the data of the previous 32 bus clocks, the data of the 96 bus clocks later, or the data of the previous 128 bus clocks.

'버스 클럭주기 단일블럭 저장' 기능은 매 버스클럭에 구동된 신호들중 설정된 트리거 조건에 대하여 앤드나 앤드와 오아를 조합한 트리거 로직을 만족하고, 버스 정보 분석기의 버스인터페이스부(3)에 처음으로 래치되는 데이타를 저장한다. 이때 이 데이타를 기준으로 최대 128K클럭의 데이타를 저장할 수 있는데, 트리거 조건을 만족하는 데이타를 중심으로 앞의 8K 버스클럭, 뒤의 120K 버스클럭의 데이타를 저장하거나 앞의 128K 버스클럭의 데이타만을 저장하는등 16종류의 트리거 위치를 설정할 수 있다.The function of 'single bus clock period single block' function satisfies the trigger logic of the combination of AND, AND and OR for the set trigger condition among the signals driven in each bus clock, and the bus interface part 3 of the bus information analyzer Save the latched data. At this time, up to 128K clock data can be stored based on this data.The data of the previous 8K bus clock and the later 120K bus clock is stored or only the data of the previous 128K bus clock is stored. 16 kinds of trigger positions can be set.

'버스클럭주기 다중 블럭저장' 기능은 매 버스클럭에 구동된 신호들중 설정된 트리거 조건을 만족하는 복수개의 버스 데이타 블럭을 저장하는 기능이다. 최대 1024개의 블럭을 저장할 수 있으며, 각 블럭당 트리거 조건을 만족하는 데이타를 포함한 128버스 클럭의 데이타를 저장할 수 있다. 트리거 조건을 만족하는 데이타를 기준으로 앞의 32버스클럭, 뒤의 96버스클럭의 데이타를 저장하거나 앞의 128K만 저장하는 등 4종류의 트리거 위치를 설정할 수 있다. 이상에서 설명한 바와 같이 구체적인 수치를 언급한 것은 발명의 이해를 쉽게 하기 위한 것으로 실제로 적용시에는 설계자에 따라 임의값으로 변경될 수 있고, 따라서 본 발명의 기술적 사상을 해석함에 있어서 수치에 제한되어서는 안될 것이다.The bus clock cycle multi-block storage function stores a plurality of bus data blocks that satisfy a set trigger condition among the signals driven in each bus clock. Up to 1024 blocks can be stored, and 128-bus clock data can be stored including data that satisfies the trigger condition for each block. Based on the data satisfying the trigger condition, four types of trigger positions can be set: the data of the previous 32 bus clocks, the data of the 96 bus clocks later, or the previous 128K only. As mentioned above, specific numerical values are referred to for easy understanding of the present invention, and may be changed to arbitrary values according to designers when they are actually applied, and thus should not be limited to numerical values in interpreting the technical idea of the present invention. will be.

한편, 고속 중형컴퓨터에 있어서, 시스템 버스는 기본적으로 데이타 이동의 통로이며 이러한 데이타 이동은 버스상에 장착된 보드들 사이에서 이루어지는데, 데이타 전송에 참여하는 보드는 특정시간에 어떤 일을 하느냐에 따라 요구기(ReQuester)와 응답기(ResPonder)로 구분된다. 요구기는 데이타 이동에 능동적으로 참여하며 데이타 전송을 시작하는 보드이고, 응답기는 데이타 전송에 수동적으로 참여하며 요구기의 데이타전송에 응답하는 보드이다.On the other hand, in a high speed medium-size computer, the system bus is basically a path of data movement, and this data movement is performed between boards mounted on the bus, and the board participating in the data transfer is required depending on what is done at a specific time. It is divided into Requester and ResPonder. The requestor is a board that actively participates in data movement and initiates data transmission, and the responder is a board that passively participates in data transmission and responds to the data transmission of the requestor.

이와 같이 요구기와 응답기간의 데이타 전송은 버스동작으로 수행되며, 버스 동작은 기본 사이클(cycle)로 구성된다. 기본 사이클은 분리될 수 없는 일정한 순서로 진행되는 단계(phase)로 구성되며, 각 단계는 하나의 버스 클럭(clock) 주기가 소요된다. 여기서, 기본 사이클은 어드레스 기본 사이클, 단일 전송 데이타 기본 사이클, 단일전송 어드레스 데이타 기본 사이클, 블럭전송 데이타 기본 사이클, 블럭전송 어드레스 데이타 기본 사이클이 있다. 그리고 HiPi 버스에서 버스클럭은 예컨대, 16.5MHz로서 버스클럭 주기는 60.6nsec이고, 293개의 신호선으로 구성되며, 어드레스 버스 중재버스, 데이타버스 중재버스, 어드레스 버스, 데이타버스, 상태버스, 인터럽트 전송버스, 유틸리티버스로 그룹지을 수 있다.As such, data transfer between the requester and the response period is performed by a bus operation, and the bus operation is composed of a basic cycle. The basic cycle consists of phases that go in a certain sequence that cannot be separated, and each phase takes one bus clock cycle. Here, the basic cycle includes an address basic cycle, a single transmission data basic cycle, a single transmission address data basic cycle, a block transmission data basic cycle, and a block transmission address data basic cycle. And HiPi The bus clock on the bus is, for example, 16.5 MHz, with a bus clock period of 60.6 nsec, consisting of 293 signal lines, the address bus arbitration bus, data bus arbitration bus, address bus, data bus, status bus, interrupt transmission bus, and utility bus. Can be grouped together.

다른 한편, 시스템 버스 분석기의 동작상태는 제4도에 도시된 바와 같이, 휴지(idle) 상태와, CPU 모듈이 검색전 레지스터를 셋하고, 검색 메모리를 리드하는 등과 같은 프로세서모듈 제어상태 및 프로세서모듈의 검색 시작명령에 따라 기능제어모듈이 시스템 버스의 데이타를 검색하는 기능제어모듈상태가 있다. 이때, 휴지상태에서 Trace_request 신호가 구동되면 프로세서모듈상태로 천이되고, 프로세서모듈상태에서 Start 신호가 구동되면 기능제어모듈상태로 천이되고, 기능제어모듈상태에서 Done 혹은 Stop 신호가 구동된 후 프로세서모듈상태가 되며, 프로세서모듈상태에서 Stop 신호가 구동되면 휴지상태가 된다.On the other hand, as shown in FIG. 4, the operating state of the system bus analyzer includes an idle state, a processor module control state and a processor module such as a CPU module setting a register before searching, and reading a search memory. There is a function control module status in which the function control module retrieves data on the system bus according to the start search command. At this time, if the Trace_request signal is driven in the idle state, the state transitions to the processor module state, and in the processor module state, Start When the signal is driven, it transitions to the function control module state, and Done or Stop in the function control module state. After the signal is driven, it becomes the processor module state and stops at the processor module state. When the signal is driven, it is idle.

이어서, 본 발명의 실시예의 동작을 각 모듈별로 구분하여 자세히 설명한다.Next, the operation of the embodiment of the present invention will be described in detail by dividing each module.

1. 기능제어 모듈1. Function control module

기능제어모듈(34:FCM Module)은 트리거 조건을 설정하기 위한 마스크 레지스터(22), 데이타 레지스터(23), 비교기(24), 검색 메모리 저장 제어신호 생성부(25)를 포함하며, 검색 메모리(27)에서 시스템 버스의 정보가 라이트되도록 제어한다. 따라서 시스템 버스 데이타를 검색 메모리(27)에 저장하고자 할 때는 반드시 기능제어모듈(34)을 통해서만 가능하다. 기능제어모듈(34)은 버스 인터페이스 모듈(31)에 의해 래치된 시스템 버스상의 데이타를 설정된 트리거 조건과 비교하여 검색 메모리(33)에 저장할 것인가를 결정하고, 버스 정보 분석기의 전체 상태를 관리하며, 검색 메모리(33)의 초기화 및 제어신호 생성, 그리고 검색 메모리 라이트 동작시의 어드레스를 생성하는 역할을 수행한다. 또한 각 레지스터에 설정된 검색조건과 실제 버스상의 정보를 비교하여 조건이 만족되었을 경우, 이를 알리는 신호를 구동하며, 타임 시퀀스신호를 생성하여 검색 메모리(33)의 특정 뱅크에 저장한다. 이러한 기능제어모듈(34)이 수행하는 기능은 크게 트리거 조건 비교검색기능, 어드레스제어 및 검색 메모리 라이트기능이 있다.The function control module 34 (FCM Module) includes a mask register 22, a data register 23, a comparator 24, and a search memory storage control signal generator 25 for setting a trigger condition. In step 27), the information on the system bus is written. Therefore, when the system bus data is to be stored in the retrieval memory 27, it is possible through the function control module 34 only. The function control module 34 determines whether to store the data on the system bus latched by the bus interface module 31 in the search memory 33 by comparing with the set trigger condition, and manages the overall state of the bus information analyzer. Initializes the search memory 33, generates a control signal, and generates an address during a search memory write operation. In addition, a search condition set in each register is compared with information on an actual bus, and when a condition is satisfied, a signal for notifying the driver is driven, and a time sequence signal is generated and stored in a specific bank of the search memory 33. Functions performed by the function control module 34 include a trigger condition comparison search function, an address control, and a search memory write function.

여기서, 트리거 조건 비교검색기능은 버스 인터페이스 모듈(31)로부터 전송된 데이타를 트리거 조건과 비교한 후, 만족여부에 따라 검색 메모리(33)에 저장할 것인가를 결정하는 것인데, 이는 시스템 버스의 매 사이클 마다 구동되는 신호들을 검색해야 하므로, 한 사이클 안에 모든 동작을 수행한다. 그리고 어드레스제어 및 검색 메모리 라이트기능은 트리거 조건을 만족하는 데이타를 검색 메모리(33)에 저장하기 위하여 필요한 제어신호를 구동하여 라이트 동작을 수행한다. 기능제어모듈(34)은 상기의 동작을 모두 마치면 동작이 끝났음을 프로세서모듈(35)에 알리고, 준비상태로 대기한다.Here, the trigger condition comparison search function compares the data transmitted from the bus interface module 31 with the trigger condition and decides whether to store the data in the search memory 33 according to whether or not it is satisfied. This is performed every cycle of the system bus. Because we need to search for the signals that are driven, we perform all the operations in one cycle. The address control and search memory write function drives a control signal necessary to store data satisfying the trigger condition in the search memory 33 to perform a write operation. The function control module 34 notifies the processor module 35 that the operation is completed when all the above operations are completed, and waits in a ready state.

그리고 기능제어모듈(35)은 제5도에 도시된 바와 같은 신호선을 가지며, 이들 신호선중에서 주요한 신호들의 정의는 다음과 같다. 'SCLK'는 클럭발생기(32:TPG)에서 제공되는 16.5MHz의 시스템 클럭이고, 'CPU_request_'는 프로세서모듈(35)이 제어권을 얻기 위하여 구동하는 입력신호이고, 'Start_'는 프로세서모듈(35)에서 기능제어모듈(34)에 제어권을 넘겨주기 위하여 구동하는 입력신호로서 기능제어모듈의 검색실행을 알려준다. 'Stop_'은 프로세서모듈(35)에서 기능제어모듈(34)에게 자원의 모든 사용을 종료하였음을 알려주는 입력신호인데, 기능제어모듈이 검색 수행중에 이 신호가 구동되면 무조건 종료할 것을 알려주는 인터럽트신호로 사용된다.The function control module 35 has signal lines as shown in FIG. 5, and the major signals among these signal lines are defined as follows. 'SCLK' is a system clock of 16.5MHz provided by the clock generator 32: TPG, 'CPU_request_' is an input signal driven by the processor module 35 to obtain control, and 'Start_' is a processor module 35 In FIG. 3, an input signal for driving the control right to the function control module 34 informs the execution of the search of the function control module. 'Stop_' is an input signal that informs the function control module 34 of the processor module 35 that all the use of resources has been completed. If the signal is driven while the function control module is performing a search, the interrupt signal informs the termination. Used as a signal.

'DoneACK' 신호는 Done에 대한 응답신호로서 받는 입력신호이고, 'P_inBUS31:0' 신호는 프로세서모듈에서 전송되는 32비트 전용버스이다. 'REGsel17:0' 신호는 프로세서모듈(35)에서 전송되는 18비트 레지스터 선택 입력신호로서, 레지스터 0와 레지스터 15, 16, 17은 리드온리(read only)이며, 레지스터 1∼14는 라이트 온리(write only)이다. CPU의 리드동작시는 로우 액티브레벨 트리거신호를 구동하며 라이트시는 로우 액티브 라이징 에지 트리거신호를 구동한다.The 'DoneACK' signal is an input signal received as a response signal to the Done, and the 'P_inBUS31: 0' signal is a 32-bit dedicated bus transmitted from the processor module. The 'REGsel17: 0' signal is an 18-bit register select input signal transmitted from the processor module 35. Register 0 and registers 15, 16, and 17 are read only, and registers 1 through 14 are write only. only). During the read operation of the CPU, the low active level trigger signal is driven, and when it is written, the low active rising edge trigger signal is driven.

'Busin_Data'는 버스인터페이스(BIF)모듈에서 전송되는 시스템 버스 정보에 대한 데이타신호선으로서, 매 사이클마다 이 신호선들에 구동되는 데이타를 입력으로 받아 트리거 조건과 비교한 후 어드레스 제어를 수행한다. 'Busin_Data282'는 HiPi 버스에 정의되지 않은 신호선으로 외부에서 제공되는 트리거신호이다.'Busin_Data' is a data signal line for system bus information transmitted from a bus interface (BIF) module. The busin data is inputted every cycle and compared with a trigger condition to perform address control. 'Busin_Data282' is HiPi Trigger signal provided externally by signal line not defined on bus.

'Ctl_sta1:0'는 각 모듈간의 동기를 위한 제어 상태 신호선으로 기능제어모듈(34)만이 상태를 제어할 수 있다. 제어비트의 상태에 따라 각 모듈은 다음 표 2와 같이 현재의 상태를 파악하며 출력이다.'Ctl_sta1: 0' is a control state signal line for synchronization between modules, and only the function control module 34 can control the state. According to the status of the control bit, each module outputs the current state as shown in the following table.

'F_Addr16:0'는 검색 메모리모듈(33)로 전송되는 어드레스 신호선으로, 라이트 동작시 사용되며 트리거 조건과 버스상의 구동신호들을 비교하여 어드레스를 제어한다. 'F_outDATA'는 상태 레지스터나 카운터 레지스터의 내용을 프로세서모듈(35)로 전송하는 신호선이다. 'Time_seq'는 검색 메모리모듈(33)로 전송되는 타이머 데이타이다. 초기화이후 타이머가 구동되며 검색종료후 리셋된다. 'Init_TM'는 기능제어모듈(34)의 초기화 작업 상태를 알려주는 출력신호이다. 'SAT'는 외부로 제공되는 트리거 조건 만족신호로서, 트리거 조건을 만족하는 경우에만 구동되며 한 사이클동안 구동된다. 'Done'은 모든 검색 저장 기능이 끝났음을 알리는 신호로서, 프로세서모듈(35)에 대한 인터럽트 신호로 사용된다.'F_Addr16: 0' is an address signal line transmitted to the search memory module 33. The F_Addr16: 0 is used during a write operation to control an address by comparing a trigger condition with driving signals on a bus. 'F_outDATA' is a signal line that transfers the contents of the status register or counter register to the processor module 35. 'Time_seq' is timer data transmitted to the search memory module 33. After initialization, timer starts and resets after searching ends. 'Init_TM' is an output signal indicating the initialization operation status of the function control module 34. 'SAT' is an externally provided trigger condition satisfaction signal, which is driven only when the trigger condition is satisfied and is driven for one cycle. 'Done' is a signal indicating that all the search storage functions are completed, and used as an interrupt signal to the processor module 35.

이러한 기능제어모듈의 상태는 제6도에 도시된 바와같이, FIDLE, INIT, Single_S, Transac_S, S_Level, Single_M, Transac_M, M_Level이 있으며 일정조건에 따라 각각 천이된다.As shown in FIG. 6, there are FIDLE, INIT, Single_S, Transac_S, S_Level, Single_M, Transac_M, and M_Level as shown in FIG.

제6도에 있어서, 'FIDLE'는 기능제어모듈이 아이들 상태임을 나타내고, 'INIT'은 검색전 검색 메모리의 내용을 초기화하는 상태이며, 'Single_S'는 버스클럭 주기 단일 블럭저장기능을 트리거 조건을 만족할 때까지 반복수행하는 상태이다.In FIG. 6, 'FIDLE' indicates that the function control module is in an idle state, 'INIT' indicates a state of initializing the contents of the search memory before searching, and 'Single_S' indicates the trigger condition of the bus clock cycle single block storage function. It repeats until it is satisfied.

'Trans_S'는 버스동작 기본 사이클 단일 블럭 저장기능을 트리거 조건을 만족할 때까지 반복 수행하는 상태이고, 'Single_M'은 버스 클럭 주기 다중 블럭저장상태이며, 'Trans_M'은 버스동작 기본 사이클 다중블럭 저장기능을 수행하는 상태이며, 트리거 조건에서 설정된 지정된 블럭수의 트리거가 발생되면 검색을 종료한다.'Trans_S' is a state of repeating the bus operation basic cycle single block storage function until the trigger condition is satisfied. 'Single_M' is the bus clock cycle multi block storage state, and 'Trans_M' is the bus operation basic cycle multi block storage function. When the trigger of the specified number of blocks set in the trigger condition occurs, the search ends.

'S_level'은 트리거 조건을 만족하는 시점을 기준으로 지정된 사이클 수만큼 저장을 계속하고, 저장완료 후 검색을 종료하는 상태이고, 'M_level'은 트리거 조건을 만족하는 시점을 기준으로 지정된 블럭수만큼 저장을 계속하고 저장완료 후 검색을 종료하는 상태이다.'S_level' continues to save the specified number of cycles based on the point at which the trigger condition is satisfied, and finishes searching after the completion of storage. 'M_level' saves the specified number of blocks based on the point at which the trigger condition is satisfied. Continue to save and finish the search after saving.

2. 프로세서모듈2. Processor Module

프로세서모듈(35)은 사용자와 인터페이스를 제공하며 사용자의 검색저장 명령을 받으면 기능제어모듈(34)에 트리거 조건을 제공하여 기능제어모듈에 의해 실질적인 검색 저장기능을 수행하도록 지시한다. 기능제어모듈(33)에 의해 검색 저장기능이 종료되면, 저장된 검색 결과를 얻기 위하여 검색 메모리 리드동작을 수행하며, 읽혀진 데이타를 가공한 후 사용자에게 시스템 버스 정보를 디스플레이 해준다. 또한 기능제어모듈(34)에 의해 검색 저장기능이 수행되고 있는 동안, 프로세서모듈(35)은 주기적으로 카운터 레지스터값을 검색하여 버스 사용율에 대한 정보를 사용자에게 디스플레이 해준다.The processor module 35 provides an interface with a user and provides a trigger condition to the function control module 34 when receiving a user's search and store instruction to instruct the function control module to perform a substantial search and storage function. When the search storage function is terminated by the function control module 33, the search memory read operation is performed to obtain a stored search result, and after processing the read data, the system bus information is displayed to the user. In addition, while the search storage function is being performed by the function control module 34, the processor module 35 periodically retrieves the counter register value and displays information on the bus utilization rate to the user.

이러한 프로세서모듈은 제7도에 도시된 바와 같은 신호선을 가지며, 그 신호선들의 의미는 다음과 같다.The processor module has a signal line as shown in FIG. 7, and the meanings of the signal lines are as follows.

'inBUS31:0'은 기능제어모듈(34)로부터 상태 레지스터나 카운터 레지스터를 읽어 들이거나 검색 메모리(33)에 저장된 데이타를 읽어 들일 때 사용되는 32비트 데이타 입력버스이고, 'ctlacq1:0'는 각 모듈간의 동기를 위한 제어상태 입력신호이다. 프로세서모듈(35)은 기능제어모듈(34)로부터 구동되는 이 신호를 보고 제어권을 요청하거나 현재의 동작 진행상태를 파악한다. 'Done'은 기능제어모듈(34)로부터 구동되는 인터럽트 입력신호로서 이 신호에 의해 프로세서모듈이 다시 제어권을 돌려 받는다. 'Reset_'은 각 모듈을 리셋하기 위한 출력신호로서 푸시버튼 리셋이나 전원온 리셋이 동작할 때 구동되고, 'CPU_request'는 제어권을 획득하기 위하여 기능제어모듈(34)에 요청하는 출력신호이고, 'Start'는 기능제어모듈(34)에 트리거 조건을 인가한 후 기능제어모듈로 하여금 시스템 버스의 데이타를 검색하여 검색 메모리(33)에 데이타를 저장할 수 있도록 시작시점을 알리는 신호이다. 이 신호는 반드시 제어권을 획득한 후 구동하여야 한다. 'Stop'은 프로세서모듈(35)의 사용이 모두 끝났음을 알리는 신호로서, 이때 제어권은 기능제어모듈에 이양된다. 'DoneACK'는 기능제어모듈(34)로부터 구동되는 Done신호에 대한 응답신호이고, 'outBUS17:0'은 레지스터 라이트동작을 수행하기 위해 필요한 데이타를 전송하는 통로이고, 'S_REG'는 레지스터 리드나 레지스터 라이트동작을 수행하기 위해 대상 레지스터를 선택하기 위한 신호선으로서, 리드동작을 위해서는 로우 액티브상태를 유지해야 하고, 라이트동작을 위해서는 로우에서 하이로 전이하여야 한다.'inBUS31: 0' is a 32-bit data input bus used when reading status registers or counter registers from the function control module 34 or reading data stored in the search memory 33, and 'ctlacq1: 0' is used for each. Control status input signal for synchronization between modules. The processor module 35 sees this signal driven from the function control module 34 to request control right or to grasp the current operation progress. 'Done' is an interrupt input signal driven from the function control module 34 and the processor module returns control right by this signal. 'Reset_' is an output signal for resetting each module, and is driven when a pushbutton reset or a power-on reset is operated. 'CPU_request' is an output signal that requests the function control module 34 to obtain control. Start 'is a signal indicating the start time so that after the trigger condition is applied to the function control module 34, the function control module can retrieve data on the system bus and store data in the search memory 33. This signal must be driven after acquiring control. 'Stop' is a signal indicating that the use of the processor module 35 is all finished, and the control right is transferred to the function control module. 'DoneACK' is a response signal to the Done signal driven from the function control module 34, 'outBUS17: 0' is a path for transmitting data necessary to perform a register write operation, and 'S_REG' is a register read or a register. As a signal line for selecting a target register to perform a write operation, it is required to maintain a low active state for a read operation and to transition from low to high for a write operation.

'P_Addr19:3'은 검색 메모리(33)에 저장된 데이타를 읽기 위하여 사용되는 어드레스신호선으로, 32비트의 데이타를 얻기 위하여 'S_TM9:0' 신호를 같이 구동하는데, 'S_TM9:0'은 검색 메모리에 저장된 데이타를 읽기 위하여 검색 메모리모듈내의 10개 뱅크중에서 하나를 선택하는 신호선이다.'P_Addr19: 3' is an address signal line used to read data stored in the search memory 33, and drives 'S_TM9: 0' signal together to obtain 32 bits of data, and 'S_TM9: 0' is stored in the search memory. The signal line selects one of the ten banks in the search memory module to read the stored data.

그리고 프로세서 모듈은 제8도에 도시된 바와 같이 동작상태가 변화되는데, 'A'는 검색관련 동작상태이고, 'B'는 검색결과를 사용자에게 알려주기 위한 디스플레이관련 동작상태이다.As shown in FIG. 8, the processor module changes its operation state, where 'A' is a search-related operation state, and 'B' is a display-related operation state for informing a user of a search result.

프로세서모듈(35)은 휴지(idle)상태에 있다가 'Request' 신호에 의해 CPU_request신호를 구동하여 제어권을 획득한 후 검색조건을 설정하기 위하여 마스크 레지스터와 데이타 레지스터에 트리거 조건을 기록한 다음 Start 신호를 구동한 후 아이들 상태로 대기하고, 'Done' 신호에 의해 웨이크업되어 검색 메모리 데이타를 리드한 후 이를 가공하여 디스플레이하고, 계속 검색할 것인지를 판단하여 예이면 검색조건을 다시 설정하는 단계로 넘어가고 아니면 Stop 신호를 구동한 후 휴지상태로 천이한다.The processor module 35 is in the idle state, drives the CPU_request signal by the 'Request' signal, acquires the control right, and then records the trigger condition in the mask register and the data register to set the search condition. After driving the signal, it waits in the idle state, wakes up by the 'Done' signal, reads the search memory data, processes it, displays it, and determines whether to continue searching. If not, stop After driving the signal, it transitions to the idle state.

3. 검색 메모리 모듈3. Search memory module

검색 메모리모듈(33)은 버스인터페이스 모듈(31)로부터 데이타를 전송받아 검색 메모리에 저장하거나 저장된 데이타를 로칼 버스를 통해 프로세서 모듈로 전송한다.The search memory module 33 receives data from the bus interface module 31 and stores the data in the search memory or transmits the stored data to the processor module through a local bus.

이러한 검색 메모리모듈의 신호선은 제9도에 도시된 바와 같은데, 이를 설명하면 다음과 같다.Signal lines of such a search memory module are shown in FIG. 9, which will be described below.

'F_Addr16:0'은 기능제어모듈(34)에서 제어하는 어드레스신호선으로서 시스템 버스로부터 오는 버스정보를 검색 메모리에 쓰기 위한 입력신호이고, 'P_Addr18:2'는 프로세서모듈(35)에서 제어하는 어드레스신호선으로서 검색 메모리 리드동작시에 사용된다.'F_Addr16: 0' is an address signal line controlled by the function control module 34 and is an input signal for writing bus information from the system bus into the search memory, and 'P_Addr18: 2' is an address signal line controlled by the processor module 35. It is used as a search memory read operation.

'TM9:0'은 프로세서모듈(35)에서 제어하는 검색 메모리 뱅크 어드레스신호선으로 프로세서모듈(35)에서 리드동작시 사용하고, inTraceDATA319:288'은 기능제어모듈에서 제공하는 시간에 관한 정보를 전송하고, 'inTraceDATA288:0'은 시스템 버스상에 구동된 데이타를 버스인터페이스모듈(31)에서 래치하여 제공하는 신호선이다.'TM9: 0' is a search memory bank address signal line controlled by the processor module 35, and is used during a read operation in the processor module 35, and inTraceDATA319: 288 transmits information about time provided by the function control module. 'inTraceDATA288: 0' is a signal line which latches and provides data driven on the system bus in the bus interface module 31.

'owner1:0'은 현재 검색 메모리에 대한 제어권을 가진 모듈을 알려주며, 메모리 제어부는 현재 제어권을 가진 모듈에 따라 라이트와 리드동작에 대한 권한을 제한한다. 라이트에 대한 권한은 기능제어모듈에만 있으며 프로세서 모듈은 리드에 대한 권한만을 가지고 있다.'owner1: 0' indicates a module that has control over the current search memory, and the memory control unit restricts the right to write and read operations according to the module having the control right. Rights to writes are only in the function control module, and processor modules only have rights to reads.

'clkE', 'clkS'는 검색 메모리 라이트를 위한 클럭신호선이고, 'outBUS17:0'은 프로세서모듈의 데이타 리드 요청에 따른 데이타를 전송하기 위한 통로이다.'clkE' and 'clkS' are clock signal lines for writing the search memory, and 'outBUS17: 0' is a path for transmitting data in response to a data read request of the processor module.

4. 버스인터페이스모듈4. Bus Interface Module

버스인터페이스모듈(31)은 시스템 버스상에 구동되는 모든 데이타를 래치하여 검색메모리 모듈(33)과 기능제어모듈(34)로 전송한다. 즉, 버스인터페이스모듈(31)은 제10도에 도시된 바와 같이, 시스템 버스(본 발명의 실시예에서는 HiPi 버스)로부터 입력되는 버스선들을 BTL 버퍼를 통한 후 D플립플롭에 래치하여 기능제어모듈 및 검색 메모리로 시스템 버스의 정보를 전송한다. 이때 데이타버스 중재버스는 DBARB버퍼(41)를 통해, 데이타 버스는 Data BUS버퍼(42)를 통해, 상태 버스는 Status Bus버퍼(43)를 통해, 어드레스버스 중재버스는 AARB버퍼(44)를 통해, 어드레스 버스는 Addr. Bus버퍼(45)를 통해, 인터럽트버스는 Int. Bus버퍼(46)를 통해, 유틸리티 버스는 Utility Bus 버퍼(47)를 통해 래치되도록 되어 있다.The bus interface module 31 latches all data driven on the system bus and transmits the data to the search memory module 33 and the function control module 34. That is, the bus interface module 31 is a system bus (HiPi in the embodiment of the present invention), as shown in FIG. Bus lines are input through the BTL buffer and latched to the D flip-flop to transfer the system bus information to the function control module and the search memory. At this time, the data bus arbitration bus through the DBARB buffer 41, the data bus through the Data BUS buffer 42, the status bus through the Status Bus buffer 43, and the address bus arbitration bus through the AARB buffer 44. , Address bus is Addr. Through the bus buffer 45, the interrupt bus is Int. Through the bus buffer 46, the utility bus is arranged to be latched through the utility bus buffer 47.

이상에서 설명한 바와 같이, 본 발명이 적용된 버스 정보 분석기는 HiPi 버스에서 나타나는 총 293개의 신호선중에서 282개의 신호들과, 외부 트리거 요소신호 1개를 포함하여 총 283개의 신호들을 검색할 수 있다.As described above, the bus information analyzer to which the present invention is applied is HiPi. A total of 283 signals can be searched from the total of 293 signal lines appearing on the bus, including 282 signals and one external trigger element signal.

5. 클럭생성모듈5. Clock Generation Module

클럭생성모듈(32)은 시스템 버스에서 구동되는 시스템 버스 클럭을 입력받아 버스 정보 분석기내의 각 모듈에 내부 클럭을 제공한다.The clock generation module 32 receives the system bus clock driven on the system bus and provides an internal clock to each module in the bus information analyzer.

이상에서 살펴본 바와 같이 본 발명에 따른 시스템 버스 분석기는 시스템 버스 클럭 단위로 트리거 조건을 입력받아 시스템 버스의 상태를 검색하므로써 고속 중형컴퓨터의 시스템 상태를 효율적으로 시험하거나 컴퓨터의 성능을 분석할 수 있는 효과가 있다.As described above, the system bus analyzer according to the present invention has an effect of efficiently testing the system state of a high-speed midsize computer or analyzing the performance of the computer by searching for the state of the system bus by receiving a trigger condition in the system bus clock unit. There is.

Claims (1)

다중 프로세서 시스템의 시스템 버스상의 신호들을 버스 클럭 단위로 검색하여 모니터하도록 된 시스템 버스 분석기에 있어서, 제어신호에 따라 시스템 버스의 신호를 저장하기 위한 검색 메모리(26); 트리거 조건을 위한 신호를 출력하고, 검색 메모리의 데이타를 읽어와 가공하여 사용자에게 제공하는 프로세서(21); 상기 프로세서로부터 입력된 돈케어 트리거 조건을 저장하는 마스크 레지스터(22); 상기 프로세서로부터 입력된 케어 트리거 조건을 저장하는 데이타 레지스터(23);상기 마스크 레지스터 및 데이타 레지스터에 저장된 트리거 조건과 시스템 버스의 신호정보를 버스 클럭마다 비교하는 비교기(24); 및 상기 비교기의 출력에 따라 트리거 조건이 일치되면 소정의 방식으로 시스템 버스의 신호상태를 검색 메모리에 저장하도록 상기 검색 메모리의 어드레스 및 라이트신호를 출력하는 검색 메모리 저장 제어신호 생성부(25)로 구성되는 컴퓨터 시스템의 시스템 버스 분석장치.A system bus analyzer configured to retrieve and monitor signals on a system bus of a multiprocessor system by a bus clock unit, the system bus analyzer comprising: a search memory 26 for storing signals of a system bus according to a control signal; A processor 21 for outputting a signal for a trigger condition, reading and processing data in a search memory and providing the same to a user; A mask register (22) for storing the money care trigger condition input from the processor; A data register (23) for storing a care trigger condition input from the processor; a comparator (24) for comparing the trigger condition stored in the mask register and the data register with signal information of a system bus for each bus clock; And a search memory storage control signal generator 25 for outputting an address and a write signal of the search memory to store the signal state of the system bus in the search memory in a predetermined manner when a trigger condition is matched according to the output of the comparator. System bus analyzer of a computer system.
KR1019950069178A 1995-12-30 1995-12-30 System bus analysis apparatus of computer system KR0171768B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950069178A KR0171768B1 (en) 1995-12-30 1995-12-30 System bus analysis apparatus of computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950069178A KR0171768B1 (en) 1995-12-30 1995-12-30 System bus analysis apparatus of computer system

Publications (2)

Publication Number Publication Date
KR970049660A KR970049660A (en) 1997-07-29
KR0171768B1 true KR0171768B1 (en) 1999-03-30

Family

ID=19448329

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950069178A KR0171768B1 (en) 1995-12-30 1995-12-30 System bus analysis apparatus of computer system

Country Status (1)

Country Link
KR (1) KR0171768B1 (en)

Also Published As

Publication number Publication date
KR970049660A (en) 1997-07-29

Similar Documents

Publication Publication Date Title
US6539500B1 (en) System and method for tracing
US4503495A (en) Data processing system common bus utilization detection logic
US4511960A (en) Data processing system auto address development logic for multiword fetch
US5664117A (en) Apparatus and method for prefetching data to load buffers in a bridge between two buses in a computer
US8904392B2 (en) Shared performance monitor in a multiprocessor system
US5878235A (en) Method and system for concurrent computer transaction processing
EP0537721A2 (en) Hardware-configured operating system kernel for a multitasking processor
KR100617357B1 (en) Zero overhead computer interrupts with task switching
US20110041105A1 (en) Integrated dma processor and pci express switch for a hardware-based functional verification system
EP0217922B1 (en) An array for simulating computer functions for large computer systems
US6092219A (en) Method for use of bus parking states to communicate diagnostic information
US5919268A (en) System for determining the average latency of pending pipelined or split transaction requests through using two counters and logic divider
CN116028413A (en) Bus arbiter, bus arbitration method, device and medium
CN116225995B (en) Bus system and chip
US6128705A (en) Method and apparatus for executing multiply-initiated, multiply-sourced variable delay system bus operations
KR0171768B1 (en) System bus analysis apparatus of computer system
KR0171767B1 (en) System bus analysis apparatus of computer system
KR0171774B1 (en) System bus analysis apparatus of computer system
US6734984B2 (en) System having an arithmetic-logic circuit for determining the maximum or minimum of a plurality of codes
EP0543607B1 (en) Image processing system
Halang On methods for direct memory access without cycle stealing
Thacker et al. The alpha demonstration unit: A high-performance multiprocessor
KR960015585B1 (en) Bus information processing unit for a high-performance multiprocessing system
CN110245096B (en) Method for realizing direct connection of processor with expansion calculation module
EP0334240B1 (en) Semiconductor integrated circuit device having a microprogramm

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee