KR20080016432A - 요청 송신 제어 장치 및 요청 송신 제어 방법 - Google Patents

요청 송신 제어 장치 및 요청 송신 제어 방법 Download PDF

Info

Publication number
KR20080016432A
KR20080016432A KR1020070045969A KR20070045969A KR20080016432A KR 20080016432 A KR20080016432 A KR 20080016432A KR 1020070045969 A KR1020070045969 A KR 1020070045969A KR 20070045969 A KR20070045969 A KR 20070045969A KR 20080016432 A KR20080016432 A KR 20080016432A
Authority
KR
South Korea
Prior art keywords
request
address
address request
transmission
various
Prior art date
Application number
KR1020070045969A
Other languages
English (en)
Other versions
KR100837712B1 (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 KR20080016432A publication Critical patent/KR20080016432A/ko
Application granted granted Critical
Publication of KR100837712B1 publication Critical patent/KR100837712B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4031Coupling between buses using bus bridges with arbitration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

본 발명은 라이브락을 회피할 수 있고, 시스템 정지를 방지하는 것을 과제로 한다.
어드레스 크로스바 스위치는 수신한 어드레스 요청을 일시적으로 버퍼링하는 동시에 감시하여 소정 종별의 어드레스 요청(예컨대, 긴 패킷의 어드레스 요청)을 계수한다. 그리고, 어드레스 크로스바 스위치는 소정 종별의 어드레스 요청의 계수치가 소정의 임계치를 초과하는 경우에는(예컨대, 긴 패킷 카운터가 100을 초과하는 경우에는), 재시도된 어드레스 요청의 브로드캐스트를 일정 시간 정지한다. 그리고, 어드레스 크로스바 스위치는 브로드캐스트 정지 기간이 종료되면, 수신하고 있던 순서대로 어드레스 요청의 브로드캐스트를 재개한다.

Description

요청 송신 제어 장치 및 요청 송신 제어 방법{TRANSIMISSION CONTROL DEVICE AND TRANSMISSION CONTROL METHOD}
도 1은 제1 실시예에 따른 어드레스 크로스바 스위치의 개요 및 특징을 설명하기 위한 도면.
도 2는 제1 실시예에 따른 어드레스 크로스바 스위치의 개요 및 특징을 설명하기 위한 도면.
도 3은 제1 실시예에 따른 어드레스 크로스바 스위치의 구성을 도시한 블록도.
도 4는 제1 실시예에 따른 어드레스 크로스바 스위치의 처리 흐름을 도시한 흐름도.
도 5는 계산 처리기의 종래 구성을 도시한 도면.
〈도면의 주요 부분에 대한 부호의 설명〉
10 : 시스템 보드
20 : IO 유닛
30 : 어드레스 크로스바 스위치
31 : 통신 제어 I/F부
32 : 기억부
32a : 버퍼부
33 : 제어부
33a : 요청 수신부
33b : 요청 송신 제어부
본 발명은 컴퓨터 시스템 내에 탑재된 각종 장치 또는 이 컴퓨터 시스템에 외부 접속되는 각종 외부 장치로부터 수신한 어드레스 요청을 조정하여 이 각종 장치 및 이 각종 외부 장치의 전부에 대하여 송신하는 동시에, 이 각종 장치 및 이 각종 외부 장치로부터 수신한 이 어드레스 요청에 대한 요청 응답을 집약하여 이 각종 장치 및 이 각종 외부 장치 전체에 대하여 송신하는 요청 송신 제어 장치 및 요청 송신 제어 방법에 관한 것이다.
종래로부터, 각종 시스템에 이용되는 계산 처리기(예컨대, 기지의 퍼스널 컴퓨터나 워크스테이션, 서버 등)에 있어서, 데이터 처리의 고속화 등의 성능 향상을 도모하는 기술이 개시되어 있다(예컨대, 특허 문헌 1 참조). 이러한 기술 중에는 도 5에 예시한 바와 같이, CPU(Central Proccessing Unit)나 주기억부 등을 탑재한 시스템 보드 및 PCI 카드 등의 외부 장치와의 접속을 제어하는 IO 유닛 등으로 이루어진 멀티프로세서 구성을 채용하여 데이터 처리의 고속화 등의 성능 향상을 도모하는 기술이 존재한다.
그리고, 이러한 멀티프로세서 구성에는 시스템 보드간이나 IO 유닛간, 시스템 보드/IO 유닛간의 데이터 전송 속도의 고속화를 도모하는 것을 목적으로 하여 CPU나 IO 디바이스로부터 발행된 어드레스 요청(예컨대, 데이터 기록이나 데이터 판독에 관한 어드레스 요청)을 집약하는 동시에 조정하여 모든 시스템 보드 및 IO 유닛에 대하여 브로드캐스트하는 어드레스 크로스바 스위치가 구비되어 있다.
[특허 문헌 1] 일본 특허 공개 평성 제10-254843호 공보
그러나, 상기한 종래의 기술은 라이브락(livelock)을 일으켜 시스템 정지에 빠진다고 하는 문제점이 있었다.
즉, 어드레스 크로스바 스위치는 CPU나 IO 디바이스로부터 발행된 어드레스 요청을 복수 수신하고 있는 경우에는, 조정한 요청을 라운드 로빈 방식에 의해 전송할 뿐이며 특별한 제어를 행하지 않는다. 그 때문에, 예컨대, 동일 어드레스로의 액세스가 경합되고 있는 경우나 자원 부족인 경우 등에는 브로드캐스트된 어드레스 요청은 처리되지 않고서 수신처로부터 재시도 요구되어 되돌려지고, 어드레스 크로스바 스위치는 재시도된 어드레스 요청을 재브로드캐스트한다. 그리고, 이 일련의 동작이 일정 타이밍에 행해지면, 어드레스 요청이 영원히 처리되지 않고, 자원 개방을 사용 중 상태에서 기다리는 현상인 라이브락을 일으키며, 라이브락이 복구되지 않으면 최종적으로 시스템 정지에 빠진다고 하는 문제점이 있었다.
또한, 어드레스 요청의 재시도 레벨을 관리함으로써, 라이브락을 회피하는 기술도 존재하지만, 재시도 레벨을 관리하기 위한 복잡한 회로 구성을 필요로 한다 는 문제점이 있다.
그래서, 본 발명은 전술한 종래 기술의 과제를 해결하기 위해서 이루어진 것으로서, 라이브락을 회피할 수 있고, 시스템 정지를 방지할 수 있는 요청 송신 제어 장치 및 요청 송신 제어 방법을 제공하는 것을 목적으로 한다.
전술한 과제를 해결하고, 목적을 달성하기 위해서, 청구항 1에 따른 발명은, 컴퓨터 시스템 내에 탑재된 각종 장치 또는 이 컴퓨터 시스템에 외부 접속되는 각종 외부 장치로부터 수신한 어드레스 요청을 조정하여 이 각종 장치 및 이 각종 외부 장치 전체에 대하여 송신하는 동시에, 이 각종 장치 및 이 각종 외부 장치로부터 수신한 이 어드레스 요청에 대한 요청 응답을 집약하여 이 각종 장치 및 이 각종 외부 장치 전체에 대하여 송신하는 요청 송신 제어 장치로서, 상기 어드레스 요청을 일시적으로 기억하는 어드레스 요청 기억 수단과, 상기 어드레스 요청 기억 수단에 기억되어 있는 상기 어드레스 요청의 송신을 소정의 타이밍에 일정 시간 정지하도록 제어하는 송신 정지 제어 수단을 포함한 것을 특징으로 한다.
또한, 청구항 2에 따른 발명은, 상기 발명에 있어서, 각종 장치 또는 상기 각종 외부 장치로부터 수신한 상기 어드레스 요청을 감시하여 소정 종별의 어드레스 요청을 계수하는 요청 계수 수단을 더 포함하고, 상기 송신 정지 제어 수단은 상기 요청 계수 수단에 의한 계수치가 소정의 임계치에 도달할 때마다 상기 어드레스 요청의 송신을 일정 시간 정지하도록 제어하는 것을 특징으로 한다.
또한, 청구항 3에 따른 발명은, 컴퓨터 시스템 내에 탑재된 각종 장치 또는 이 컴퓨터 시스템에 외부 접속되는 각종 외부 장치로부터 수신한 어드레스 요청을 조정하여 이 각종 장치 및 이 각종 외부 장치 전체에 대하여 송신하는 동시에, 이 각종 장치 및 이 각종 외부 장치로부터 수신한 이 어드레스 요청에 대한 요청 응답을 집약하여 이 각종 장치 및 이 각종 외부 장치 전체에 대하여 송신하는 요청 송신 제어 방법으로서, 상기 어드레스 요청을 일시적으로 기억하는 어드레스 요청 기억 단계와, 상기 어드레스 요청 기억 단계에 기억되어 있는 상기 어드레스 요청의 송신을 소정의 타이밍에 일정 시간 정지하도록 제어하는 송신 정지 제어 단계를 포함한 것을 특징으로 한다.
또한, 청구항 4에 따른 발명은, 상기 발명에 있어서, 상기 각종 장치 또는 상기 각종 외부 장치로부터 수신한 상기 어드레스 요청을 감시하여 소정 종별의 어드레스 요청을 계수하는 요청 계수 단계를 더 포함하고, 상기 송신 정지 제어 단계는 상기 요청 계수 단계에 의한 계수치가 소정의 임계치에 도달할 때마다 상기 어드레스 요청의 송신을 일정 시간 정지하도록 제어하는 것을 특징으로 한다.
이하에 첨부 도면을 참조하여 본 발명에 따른 요청 송신 제어 장치 및 요청 송신 제어 방법의 실시예를 상세히 설명한다. 또한, 이하에서는, 본 발명에 따른 요청 송신 제어 장치로서 기능하는 어드레스 크로스바 스위치를 제1 실시예에서 설명한 후에, 본 발명에 포함되는 다른 실시예를 설명한다.
[제1 실시예]
이하의 제1 실시예에서는, 제1 실시예에 따른 어드레스 크로스바 스위치의 개요 및 특징, 어드레스 크로스바 스위치의 구성 및 처리를 차례로 설명하고, 마지 막으로 제1 실시예에 따른 효과를 설명한다.
[어드레스 크로스바 스위치의 개요 및 특징(제1 실시예)]
우선 처음에 도 1 및 도 2를 이용하여 제1 실시예에 따른 어드레스 크로스바 스위치의 개요 및 특징을 설명한다. 도 1 및 도 2는 제1 실시예에 따른 어드레스 크로스바 스위치의 개요 및 특징을 설명하기 위한 도면이다.
도 1에 도시된 바와 같이, 제1 실시예에 따른 어드레스 크로스바 스위치는 계산 처리기 등의 컴퓨터 시스템 내에 탑재된 CPU(Central Prosseccing Unit) 등의 각종 장치 또는 컴퓨터 시스템에 외부 접속되는 PCI 카드 등의 각종 외부 장치로부터 수신한 어드레스 요청을 조정(arbitration)하여 각종 장치 및 각종 외부 장치 전체에 대하여 송신(브로드캐스트)하는 동시에, 각종 장치 및 각종 외부 장치로부터 수신한 어드레스 요청에 대한 요청 응답을 집약(merge)하여 각종 장치 및 각종 외부 장치 전체에 송신(브로드캐스트)하는 것을 개요로 하지만, 라이브락을 회피할 수 있고, 시스템 정지를 방지할 수 있는 점에 주된 특징이 있다.
이 주된 특징에 대해서 구체적으로 설명하면, 도 1에 도시된 바와 같이, 어드레스 크로스바 스위치는 CPU 등의 주제어부나 메모리 등의 주기억부를 탑재한 시스템 보드(예컨대, SB#0∼SB#4)나 컴퓨터 시스템과 외부 장치와의 접속을 제어하는 IO 유닛(예컨대, IOU#0∼IOU#4)으로부터, 예컨대, 재시도된 어드레스 요청을 수신하면, 재시도된 어드레스 요청의 브로드캐스트를 일정 시간 정지한다.
구체적으로는, 도 2에 도시된 바와 같이, 어드레스 크로스바 스위치는 수신한 어드레스 요청을 일시적으로 버퍼링하는 동시에 감시하여 소정 종별의 어드레스 요청(예컨대, 긴 패킷의 어드레스 요청)을 계수한다. 그리고, 어드레스 크로스바 스위치는 소정 종별의 어드레스 요청의 계수치가 소정의 임계치를 초과하는 경우에는(예컨대, 긴 패킷 카운터가 100을 초과하는 경우에는), 재시도된 어드레스 요청의 브로드캐스트를 일정 시간 정지한다. 그리고, 어드레스 크로스바 스위치는 브로드캐스트 정지 기간이 종료되면, 수신하고 있던 순서대로 어드레스 요청의 브로드캐스트를 재개한다.
예컨대, 도 2에 도시된 바와 같이, SB#0에서부터 송신되며, 어드레스 크로스바 스위치로부터 브로드캐스트된 어드레스 요청 A는 이미 동일한 어드레스를 지정하는 어드레스 요청 B를 송신하고 있는 SB#1에서부터 재시도하도록 되돌려진다. 그래서, SB#0은 어드레스 요청 A를 재시도(재송신)하지만, 어드레스 요청 A의 재시도를 수신한 어드레스 크로스바 스위치는 긴 패킷 카운터가 임계치를 초과하는 경우에는, 어드레스 요청 A의 재시도를 일정 시간 정지한다.
마찬가지로, SB#1에서부터 송신되어 어드레스 크로스바 스위치로부터 브로드캐스트된 어드레스 요청 B는 이미 동일한 어드레스를 지정하는 어드레스 요청 A를 송신하고 있는 SB#0에서부터 재시도하도록 되돌려진다. 그래서, SB#1은 어드레스 요청 B를 재시도(재송신)하지만, 어드레스 요청 B의 재시도를 수신한 어드레스 크로스바 스위치는 브로드캐스트 정지 기간인 경우에는, 어드레스 요청 B의 재시도를 일정 시간 정지한다.
그리고, 브로드캐스트 정지 기간이 종료되면, 어드레스 크로스바 스위치는 처음에 수신한 어드레스 요청 A를 브로드캐스트하는 동시에, 처리된 어드레스 요청 A에 대한 요청 응답(예컨대, 요청에 대한 어드레스를 통지하는 응답)을 브로드캐스트한다. SB#0은 어드레스 크로스바 스위치로부터 수신한 요청 응답에 기초하여 데이터 요구 등의 다음 처리를 행한다.
마찬가지로, 어드레스 크로스바 스위치는 어드레스 요청 A 다음에 수신한 어드레스 요청 B를 브로드캐스트하는 동시에, 처리된 어드레스 요청 B에 대한 요청 응답을 브로드캐스트한다. SB#1은 어드레스 크로스바 스위치로부터 수신한 요청 응답에 기초하여 데이터 요구 등의 다음 처리를 행한다.
이러한 것으로부터, 제1 실시예에 따른 어드레스 크로스바 스위치는 전술한 주된 특징과 같이, 예컨대, 요청 응답(예컨대, 동일한 어드레스에 관한 요청에 대하여 재시도를 요구하는 응답 등)에 대한 어드레스 요청을 송신하는 타이밍에 대해서 교란시켜 라이브락을 회피할 수 있고, 시스템 정지를 방지할 수 있는 점에 주된 특징이 있다.
[어드레스 크로스바 스위치의 구성(제1 실시예)]
다음에, 도 3을 이용하여 제1 실시예에 따른 어드레스 크로스바 스위치의 구성을 설명한다. 도 3은 제1 실시예에 따른 어드레스 크로스바 스위치의 구성을 도시하는 블록도이다.
도 3에 도시된 바와 같이, 제1 실시예에 따른 어드레스 크로스바 스위치(30)는 통신 제어 I/F부(31)와, 기억부(32)와, 제어부(33)로 구성된다. 통신 제어 IF부(31)는 시스템 보드(10)나 IO 유닛(20) 사이에서 주고받는 각종 정보에 관한 통신을 제어한다.
기억부(32)는 제어부(33)에 의한 각종 처리에 필요한 데이터 및 프로그램을 기억하는 기억부로서, 특히 본 발명에 밀접하게 관련된 것으로서는, 버퍼부(32a)를 구비한다. 버퍼부(32a)는 후술하는 요청 수신부(33a)에 의해 수신된 어드레스 요청을 일시적으로 기억한다.
제어부(33)는 소정의 제어 프로그램, 각종 처리 순서 등을 규정한 프로그램 및 소요 데이터를 저장하기 위한 내부 메모리를 가지며, 이들에 의해 여러 가지 처리를 실행하는 처리부로서, 특히 본 발명에 밀접하게 관련된 것으로서는, 요청 수신부(33a) 및 요청 송신 제어부(33b)를 구비한다.
요청 수신부(33a)는 어드레스 요청을 수신하는 처리부로서, 통신 제어 IF부(31)를 통해 시스템 보드(10)나 IO 유닛(20)으로부터 수신한 어드레스 요청을 버퍼부(32a)에 저장한다.
요청 송신 제어부(33b)는 어드레스 요청의 송신(브로드캐스트)을 제어하는 처리부이다. 구체적으로는, 요청 수신부(33a)에 의해 수신된 어드레스 요청을 감시하여 소정 종별의 어드레스 요청(예컨대, 긴 패킷의 어드레스 요청)을 계수한다. 그리고, 요청 송신 제어부(33b)는 소정 종별의 어드레스 요청의 계수치가 소정의 임계치를 초과하는 경우에는(예컨대, 긴 패킷 카운터가 100을 초과하는 경우에는), 어드레스 요청의 브로드캐스트를 일정 시간 정지한다. 그리고, 요청 송신 제어부(33b)는 브로드캐스트 정지 기간이 종료되면, 수신하고 있던 순서대로 버퍼부(32a)에 기억되어 있는 어드레스 요청의 브로드캐스트를 재개한다.
[어드레스 크로스바 스위치에 의한 처리(제1 실시예)]
계속해서, 도 4를 이용하여 제1 실시예에 따른 어드레스 크로스바 스위치에 의한 처리를 설명한다. 도 4는 제1 실시예에 따른 어드레스 크로스바 스위치의 처리 흐름을 도시한 흐름도이다.
도 4에 도시된 바와 같이, 요청 수신부(33a)에 의해 어드레스 요청이 수신되면(단계 S401), 요청 송신 제어부(33b)는 소정 종별의 어드레스 요청(예컨대, 긴 패킷의 어드레스 요청)을 계수한다(단계 S402).
그리고, 요청 송신 제어부(33b)는 어드레스 요청의 계수치가 소정 임계치를 초과하고 있는지 여부를 확인한다(단계 S403). 그 결과, 어드레스 요청의 계수치가 소정 임계치를 초과하고 있는 경우에는(단계 S403 긍정), 요청 송신 제어부(33b)는 어드레스 요청의 브로드캐스트를 일정 시간 정지한다(단계 S404). 한편, 어드레스 요청의 계수치가 소정의 임계치를 초과하지 않는 경우에는(단계 S403 부정), 요청 송신 제어부(33b)는 어드레스 요청을 브로드캐스트한다(단계 S405).
[제1 실시예에 따른 효과]
전술한 바와 같이, 제1 실시예에 따르면, 계산 처리기 등의 컴퓨터 시스템 내의 각종 장치(예컨대, 시스템 보드 상에 탑재된 CPU)나 컴퓨터 시스템에 외부 접속되는 각종 외부 장치(예컨대, IO 유닛을 통해 접속되는 PCI 카드)로부터 수신한 어드레스 요청을 일시적으로 기억하여(버퍼링하여) 기억되어 있는 어드레스 요청의 송신을 소정 타이밍(예컨대, 일정하지 않은 부정기적인 타이밍)에 일정 시간 정지하도록 제어하기 때문에, 예컨대, 요청 응답(예컨대, 동일한 어드레스에 관한 요청에 대하여 재시도를 요구하는 응답 등)에 대한 어드레스 요청을 송신하는 타이밍 에 대해서 교란시켜 라이브락을 회피할 수 있고, 시스템 정지를 방지할 수 있다.
또한, 제1 실시예에 따르면, 계산 처리기 등의 컴퓨터 시스템 내의 각종 장치 또는 컴퓨터 시스템에 외부 접속되는 각종 외부 장치로부터 수신한 어드레스 요청을 감시하여 소정 종별의 어드레스 요청(예컨대, 긴 패킷의 어드레스 요청)을 계수하는 동시에, 그 계수치가 소정 임계치에 도달할 때마다 어드레스 요청의 송신을 일정 시간 정지하도록 제어하기 때문에, 소정 종별의 어드레스 요청을 계수한 계수치가 소정 임계치에 도달하는 타이밍에 의해 어드레스 요청을 송신하는 타이밍을 교란시킬 수 있고, 복잡한 회로 구성을 필요로 하지 않으며, 라이브락을 회피할 수 있다.
[제2 실시예]
그런데, 지금까지 본 발명의 제1 실시예에 대해서 설명하였지만, 본 발명은 전술한 실시예 이외에도 여러 가지 다른 형태로써 실시되어도 좋은 것이다. 그래서, 이하에서는, 본 발명에 포함되는 다른 실시예를 설명한다.
[장치 구성 등]
도 3에 도시된 어드레스 크로스바 스위치(30)의 각 구성 요소는 기능 개념적인 것으로서, 반드시 물리적으로 도시된 바와 같이 구성되어 있을 필요는 없다. 즉, 어드레스 크로스바 스위치(30)의 분산 및 통합의 구체적 형태는 도시한 것에 한정되지 않고, 예컨대, 요청 수신부(33a)와 요청 송신 제어부(33b)를 통합하는 등, 그 전부 또는 일부를 각종 부하나 사용 상황 등에 따라 임의의 단위로 기능적 또는 물리적으로 분산 및 통합하여 구성할 수 있다.
또한, 어드레스 크로스바 스위치(30)로써 행해지는 처리 기능(요청 송신 제어 기능)은 그 전부 또는 임의의 일부가 미리 준비되어 소정 메모리 등에 기억되어 있는 프로그램을 MMB가 판독하여 실행함으로써 실현될 수 있다. 또한, 상기 문서나 도면에 도시한 처리 순서, 제어 순서, 구체적 명칭을 포함하는 정보에 대해서는 특기하는 경우를 제외하고 임의로 변경할 수 있다.
[산업상의 이용가능성]
이상과 같이, 본 발명에 따른 요청 송신 제어 장치 및 요청 송신 제어 방법은 컴퓨터 시스템 내에 탑재된 각종 장치 또는 이 컴퓨터 시스템에 외부 접속되는 각종 외부 장치로부터 수신한 어드레스 요청을 조정하여 이 각종 장치 및 이 각종 외부 장치 전체에 대하여 송신하는 동시에, 이 각종 장치 및 이 각종 외부 장치로부터 수신한 이 어드레스 요청에 대한 요청 응답을 집약하여 이 각종 장치 및 이 각종 외부 장치 전체에 대하여 송신하는 경우에 유용하며, 특히, 라이브락을 회피할 수 있고, 시스템 정지를 방지하는 것에 적합하다.
본 발명에 따르면, 컴퓨터 시스템 내의 각종 장치(예컨대, 시스템 보드 상에 탑재된 CPU)나 컴퓨터 시스템에 외부 접속되는 각종 외부 장치(예컨대, IO 유닛을 통해 접속되는 PCI 카드)로부터 수신한 어드레스 요청을 일시적으로 기억하여(버퍼링하여), 기억되어 있는 어드레스 요청의 송신을 소정의 타이밍(예컨대, 일정하지 않은 부정기적인 타이밍)에 일정 시간 정지하도록 제어하기 때문에, 예컨대, 요청 응답(예컨대, 동일한 어드레스에 관한 요청에 대하여 재시도를 요구하는 응답 등) 에 대한 어드레스 요청을 송신하는 타이밍에 대해서 교란시켜 라이브락을 회피할 수 있고, 시스템 정지를 방지할 수 있다.
또한, 본 발명에 따르면, 컴퓨터 시스템 내의 각종 장치 또는 컴퓨터 시스템에 외부 접속되는 각종 외부 장치로부터 수신한 어드레스 요청을 감시하여 소정 종별의 어드레스 요청(예컨대, 긴 패킷의 어드레스 요청)을 계수하는 동시에, 그 계수치가 소정의 임계치에 도달할 때마다 어드레스 요청의 송신을 일정 시간 정지하도록 제어하기 때문에, 소정 종별의 어드레스 요청을 계수한 계수치가 소정의 임계치에 도달하는 타이밍에 의해 어드레스 요청을 송신하는 타이밍을 교란시킬 수 있고, 복잡한 회로 구성을 필요로 하지 않으며, 라이브락을 회피할 수 있다.

Claims (4)

  1. 컴퓨터 시스템 내에 탑재된 각종 장치 또는 상기 컴퓨터 시스템에 외부 접속되는 각종 외부 장치로부터 수신한 어드레스 요청을 조정하여 상기 각종 장치 및 상기 각종 외부 장치 전체에 대하여 송신하는 동시에, 상기 각종 장치 및 상기 각종 외부 장치로부터 수신한 상기 어드레스 요청에 대한 요청 응답을 집약하여 상기 각종 장치 및 상기 각종 외부 장치 전체에 대하여 송신하는 요청 송신 제어 장치로서,
    상기 어드레스 요청을 일시적으로 기억하는 어드레스 요청 기억 수단과;
    상기 어드레스 요청 기억 수단에 기억되어 있는 상기 어드레스 요청의 송신을 소정의 타이밍에서 일정 시간 정지하도록 제어하는 송신 정지 제어 수단
    을 포함한 것을 특징으로 하는 요청 송신 제어 장치.
  2. 제1항에 있어서, 상기 각종 장치 또는 상기 각종 외부 장치로부터 수신한 상기 어드레스 요청을 감시하여 소정 종별의 어드레스 요청을 계수하는 요청 계수 수단을 더 포함하고,
    상기 송신 정지 제어 수단은 상기 요청 계수 수단에 의한 계수치가 소정의 임계치에 도달할 때마다 상기 어드레스 요청의 송신을 일정 시간 정지하도록 제어하는 것을 특징으로 하는 요청 송신 제어 장치.
  3. 컴퓨터 시스템 내에 탑재된 각종 장치 또는 상기 컴퓨터 시스템에 외부 접속되는 각종 외부 장치로부터 수신한 어드레스 요청을 조정하여 상기 각종 장치 및 상기 각종 외부 장치 전체에 대하여 송신하는 동시에, 상기 각종 장치 및 상기 각종 외부 장치로부터 수신한 상기 어드레스 요청에 대한 요청 응답을 집약하여 상기 각종 장치 및 상기 각종 외부 장치 전체에 대하여 송신하는 요청 송신 제어 방법으로서,
    상기 어드레스 요청을 일시적으로 기억하는 어드레스 요청 기억 단계와;
    상기 어드레스 요청 기억 단계에 기억되어 있는 상기 어드레스 요청의 송신을 소정의 타이밍에서 일정 시간 정지하도록 제어하는 송신 정지 제어 단계
    를 포함한 것을 특징으로 하는 요청 송신 제어 방법.
  4. 제3항에 있어서, 상기 각종 장치 또는 상기 각종 외부 장치로부터 수신한 상기 어드레스 요청을 감시하여 소정 종별의 어드레스 요청을 계수하는 요청 계수 단계를 더 포함하고,
    상기 송신 정지 제어 단계는 상기 요청 계수 단계에 의한 계수치가 소정의 임계치에 도달할 때마다 상기 어드레스 요청의 송신을 일정 시간 정지하도록 제어하는 것을 특징으로 하는 요청 송신 제어 방법.
KR1020070045969A 2006-08-18 2007-05-11 요청 송신 제어 장치 및 요청 송신 제어 방법 KR100837712B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006223490A JP4841358B2 (ja) 2006-08-18 2006-08-18 リクエスト送信制御装置およびリクエスト送信制御方法
JPJP-P-2006-00223490 2006-08-18

Publications (2)

Publication Number Publication Date
KR20080016432A true KR20080016432A (ko) 2008-02-21
KR100837712B1 KR100837712B1 (ko) 2008-06-13

Family

ID=38705124

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070045969A KR100837712B1 (ko) 2006-08-18 2007-05-11 요청 송신 제어 장치 및 요청 송신 제어 방법

Country Status (5)

Country Link
US (1) US20080046622A1 (ko)
EP (1) EP1895429B1 (ko)
JP (1) JP4841358B2 (ko)
KR (1) KR100837712B1 (ko)
CN (1) CN100578479C (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201102698A (en) * 2010-01-26 2011-01-16 Mastouch Optoelectronics Technologies Co Ltd Single-layer projected capacitive touch panel and fabricating method thereof
TWI666551B (zh) * 2011-05-20 2019-07-21 美商英特爾股份有限公司 以複數個引擎作資源與互連結構的分散式分配以支援指令序列的執行
CN103716345A (zh) * 2012-09-29 2014-04-09 海尔集团公司 一种智能社区网络中的ip表下发方法
CN110247852A (zh) * 2019-07-08 2019-09-17 无锡锐格思信息技术有限公司 减少广播报文对以太网交换设备cpu影响的方法与设备

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5852718A (en) * 1995-07-06 1998-12-22 Sun Microsystems, Inc. Method and apparatus for hybrid packet-switched and circuit-switched flow control in a computer system
JPH09114750A (ja) * 1995-10-13 1997-05-02 Mitsubishi Electric Corp バス制御装置
US5657281A (en) 1996-03-11 1997-08-12 Cirrus Logic, Inc. Systems and methods for implementing inter-device cell replacements
US5961623A (en) * 1996-08-29 1999-10-05 Apple Computer, Inc. Method and system for avoiding starvation and deadlocks in a split-response interconnect of a computer system
JPH10254843A (ja) * 1997-03-06 1998-09-25 Hitachi Ltd クロスバスイッチ、該クロスバスイッチを備えた並列計算機及びブロードキャスト通信方法
US6032232A (en) * 1997-05-29 2000-02-29 3Com Corporation Multiported memory access system with arbitration and a source burst limiter for blocking a memory access request
US5953685A (en) * 1997-11-26 1999-09-14 Intel Corporation Method and apparatus to control core logic temperature
US6230229B1 (en) * 1997-12-19 2001-05-08 Storage Technology Corporation Method and system for arbitrating path contention in a crossbar interconnect network
US6122692A (en) 1998-06-19 2000-09-19 International Business Machines Corporation Method and system for eliminating adjacent address collisions on a pipelined response bus
JP2000315188A (ja) * 1999-05-06 2000-11-14 Nec Corp ライブ・ロック検出方法及びその装置並びに調停回路
US6629177B1 (en) * 1999-12-27 2003-09-30 Intel Corporation Arbitrating requests on computer buses
KR100588947B1 (ko) * 2001-02-28 2006-06-14 인터내셔널 비지네스 머신즈 코포레이션 스위칭 장치 및 스위칭 방법
US6895454B2 (en) * 2001-10-18 2005-05-17 International Business Machines Corporation Method and apparatus for sharing resources between different queue types
JP4063529B2 (ja) * 2001-11-28 2008-03-19 Necエレクトロニクス株式会社 バスシステムおよびリトライ方法
ATE333679T1 (de) * 2003-03-24 2006-08-15 Sony Computer Entertainment Inc Crossbar-vermittlungsstelle, zugehöriges betriebssteuerungverfahren und -programm
US7127534B2 (en) * 2003-06-27 2006-10-24 Emulex Design & Manufacturing Corporation Read/write command buffer pool resource management using read-path prediction of future resources
US7047322B1 (en) * 2003-09-30 2006-05-16 Unisys Corporation System and method for performing conflict resolution and flow control in a multiprocessor system
US7748001B2 (en) 2004-09-23 2010-06-29 Intel Corporation Multi-thread processing system for detecting and handling live-lock conditions by arbitrating livelock priority of logical processors based on a predertermined amount of time
US7600023B2 (en) * 2004-11-05 2009-10-06 Hewlett-Packard Development Company, L.P. Systems and methods of balancing crossbar bandwidth
US7254768B2 (en) * 2005-02-18 2007-08-07 Broadcom Corporation Memory command unit throttle and error recovery
US7484131B2 (en) * 2005-09-13 2009-01-27 International Business Machines Corporation System and method for recovering from a hang condition in a data processing system
JP5076400B2 (ja) * 2006-08-16 2012-11-21 富士通株式会社 データ処理システムおよび情報処理装置

Also Published As

Publication number Publication date
US20080046622A1 (en) 2008-02-21
EP1895429B1 (en) 2011-07-27
CN101127016A (zh) 2008-02-20
CN100578479C (zh) 2010-01-06
JP2008046980A (ja) 2008-02-28
KR100837712B1 (ko) 2008-06-13
JP4841358B2 (ja) 2011-12-21
EP1895429A1 (en) 2008-03-05

Similar Documents

Publication Publication Date Title
US7404190B2 (en) Method and apparatus for providing notification via multiple completion queue handlers
JP5722264B2 (ja) データ処理装置、データ容量増加抑制方法
US20080209093A1 (en) Fine-grained bandwidth control arbiter and the method thereof
US10606753B2 (en) Method and apparatus for uniform memory access in a storage cluster
US7617344B2 (en) Methods and apparatus for controlling access to resources in an information processing system
US20210160321A1 (en) Read-coherent group memory
CN101616083A (zh) 一种报文转发方法和装置
KR100837712B1 (ko) 요청 송신 제어 장치 및 요청 송신 제어 방법
US8677041B2 (en) Balancing loads of a plurality of bus lanes of a snooping-based bus using a receiver, analyzer, and controller
CN111797050A (zh) 片上系统
CN117807000B (zh) 通道总线仲裁电路、加速装置、方法、系统、装置及介质
US11768769B2 (en) Uniform memory access in a system having a plurality of nodes
US10824465B2 (en) Transaction request epochs
CN109062707A (zh) 电子装置及其限制进程间通信的方法、存储介质
US6421712B1 (en) Method and apparatus for broadcasting invalidation messages in a computer system
CN111104168B (zh) 一种计算结果提交方法及装置
KR950012498B1 (ko) 내부 버스 중재기
KR100199021B1 (ko) 순차식 pci 버스용 다중 인터럽트 제어장치 및 방법
JPH04128959A (ja) マルチプロセッサシステムにおける負荷分配方法
KR100693601B1 (ko) 멀티 프로세서간 데이터 통신장치와 그 방법
JP2917329B2 (ja) メモリアクセス方式
JP5494925B2 (ja) 半導体集積回路、情報処理装置およびプロセッサ性能保証方法
JPH03142551A (ja) 共通バス制御方式
JPH0272743A (ja) 情報処理装置のトラフィック制御方式
JPH1049485A (ja) アービトレーション方式

Legal Events

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

Payment date: 20130524

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140530

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150430

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160517

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170522

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee