KR100577659B1 - 전송기로부터 수신기로 요청을 재시도하는 방법 및 그 장치 - Google Patents

전송기로부터 수신기로 요청을 재시도하는 방법 및 그 장치 Download PDF

Info

Publication number
KR100577659B1
KR100577659B1 KR1020030090897A KR20030090897A KR100577659B1 KR 100577659 B1 KR100577659 B1 KR 100577659B1 KR 1020030090897 A KR1020030090897 A KR 1020030090897A KR 20030090897 A KR20030090897 A KR 20030090897A KR 100577659 B1 KR100577659 B1 KR 100577659B1
Authority
KR
South Korea
Prior art keywords
request
interval
duration
retry
response
Prior art date
Application number
KR1020030090897A
Other languages
English (en)
Other versions
KR20040065980A (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 KR20040065980A publication Critical patent/KR20040065980A/ko
Application granted granted Critical
Publication of KR100577659B1 publication Critical patent/KR100577659B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • 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
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines

Abstract

본 발명은, 요청(request)의 재시도(retry)를 행하도록 제안되는 시간을 최적화하기 위하여 시스템 성능 피드백 데이터를 포함하는 다양한 요소를 사용하는 방법 및 장치에 관한 것이다. 사용되는 요소들 중에는, 현재 시스템 성능, 요청의 유형, 진행중인 동작의 상태, 현재 진행중인 재시도의 횟수, 소정의 고정된 간격, 유사 임의 간격(pseudo random interval), 임의 간격, 재시도 요청의 과거 이력, 경험적으로 결정된 간격(heuristically determined interval), 및 행 감지(hang detection) 등이 포함된다.
재시도 요청, 버스 마스터, 프로세서 유닛

Description

전송기로부터 수신기로 요청을 재시도하는 방법 및 그 장치{SENDER TO RECEIVER REQUEST RETRY METHOD AND APPARATUS}
본 발명 및 그 장점의 보다 완벽한 이해를 위하여, 이하의 상세한 설명에 있어서 첨부된 도면을 참고한다.
도 1은 본 발명을 설명하기 위한 전형적인 멀티프로세서 시스템의 상호 접속부를 개괄적으로 도시한 블록도.
도 2는 전형적인 종래기술에 의한 멀티프로세서 시스템의 재시도 메커니즘을 도시한 흐름도.
도 3은 멀티프로세서 시스템에 있어서 본 발명의 재시도 메커니즘을 설명하기 위한 고레벨 흐름도.
<도면의 주요부분에 대한 부호의 설명>
10 제1 프로세서 유닛
12 제N 프로세서 유닛
14 메모리 제어기
16 입출력 장치
18 원격 마스터 프록시
20 버스 상호 접속부
22 응답 생성부
본 발명은 장치간 통신에 관한 것으로서, 특히 충돌 조건(conflicting condition)으로 인해 명령 요청 또는 다른 요청된 동작이 거부된 후의 통신 요청의 관리에 관한 것이다.
전형적인 멀티프로세서 시스템에 있어서, 시스템 버스는 프로세서들에 의하여 처리되는 명령을 전달하기 위하여 사용된다. 주어진 프로세서 유닛(process unit; PU) 또는 요청이 전달되는 다른 버스 마스터의 상태에 따라, 주어진 명령에 대하여, 당해 명령이 몇몇 충돌 조건 때문에 현재 처리될 수 없다는 응답(response)이 지시될 수 있다. 그러면, 요청 PU(requesting PU)는 명령을 "재시도(retry)" 할 것이다. 즉각적으로 재시도하는 것은 일반적으로 라이브록 조건(livelock condition)을 야기하고, 따라서 버스의 성능을 저하시킨다.
이러한 문제를 경감시키기 위한 종래의 접근 방법은, 요청 유닛으로 하여금 명령을 다시 보내기 전에 "임의(random)" 시간만큼 지연되도록 하는 것이다. 이러한 접근 방법의 문제점이라면, 어떤 상황에서는 임의의 시간이 너무 짧을 수 있고, 다른 동작상 중요한 상황에서는 임의의 시간이 너무 길 수 있다는 것이다.
재시도 간격은 실행될 명령의 유형 및/또는 동작 요청이 재시도 시에 완료될 가능성에 영향을 미칠 수 있는 다른 요소와 관련이 있는 것이 바람직하다. 또한, 재시도 메커니즘이 다른 유형의 명령 및/또는 주어진 관련 버스 마스터에 대한 과거 경험에 기초하여 재시도 간격의 동적 조절(dynamic adjustment)을 제공하는 것이 바람직하다.
본 발명은, 명령의 유형이나 주어진 유형의 명령 및/또는 주어진 관련 PU와의 통신을 위한 재시도 간격의 과거 경험과 관련된 적어도 하나의 유형의 명령 및 동적 피드백 중 적어도 하나에 기초하여 프로세서간의 명령 재시도 통신의 조절을 가능하게 하기 위한 PU 제어 메커니즘을 사용한다.
도 1에는 도면부호 10으로 도시한 제1 프로세서 유닛(PU1) 블록 및 도면부호 12로 도시한 PUN 블록이 도시되어 있으며, 그 사이의 3개의 점은 더 많은 PU들이 있을 수 있음을 나타낸다. 요청 재시도 처리에 포함될 수 있는 추가적인 지능형 에이전트(intelligent agent) 또는 장치는 메모리 제어기(14), 입출력(I/O) 장치(16), 및 원격 마스터 프록시 블록(18)을 포함한다. 도면부호 10 내지 18의 각 장치는 버스 마스터(bus master)라 할 수 있다. 임의의 버스 마스터는 출력 정보를 RO(Request_Out) 접속을 통하여 버스 상호 접속부(20)로 제공하고, RI(Request_In) 접속을 통하여 버스(20)로부터 정보를 수신한다. 또한, 각 버스 마스터는 출력 회답(output reply)을 응답 생성 블록(22)으로 제공하고, 응답 생성 블록(22)으로부터 응답을 수신할 수 있다. 응답 생성 블록(22)은 전형적으로 지능적인 방법으로 모든 버스 마스터의 회답을 조합하여, 각 버스 마스터에 조합된 응답을 제공한다.
도 1과 함께 도 2에 대하여 설명한다. 도 2의 흐름도에 도시된 바와 같이, 버스 마스터들 중 하나가 블록(30)으로 나타낸 바와 같이 요청을 생성한다. 종래기술에서, 이 요청은 전형적으로 메모리로부터 데이터의 저장 또는 페치(fetch) 등을 수행하기 위한 다른 버스 마스터로의 명령이다. 그 다음 블록(32)에 나타낸 바와 같이 버스 상호 접속 블록(20)은 모든 버스 마스터로 요청을 분배하거나 제공한다. 다음으로, 블록(34)에 나타낸 바와 같이, 모든 버스 마스터는 요청과 관련된 상황 상태(the status of their situation)를 검사하고 응답 생성 블록(22)으로 회답을 제공한다.
예를 들어, 하나의 버스 마스터는 다른 장치가 현재 사용하고 있는 데이터베이스에서 데이터가 변경되도록 요청할 수 있다. 어떤 상황에서는 다른 버스 마스터에 의한 사용은 변경을 방지할 수 있다. 다른 상황에서는 데이터를 사용하는 다른 버스 마스터가, 요청된 변경에 따라 그 데이터를 업데이트할 필요가 있다는 것을 인지하는 것을 필요로 한다. 블록(36)에 나타낸 바와 같이, 모든 버스 마스터의 회답은 응답 생성 블록(22)에서 조합된다. 블록(38)에 나타낸 바와 같이, 이 조합된 응답이 모든 버스 마스터로 제공된다.
재시도 블록(40)으로 나타낸 바와 같이, 이 조합된 응답의 일부로서, 요청이 차후에 재시도되어야 하는지 여부에 대한 지시가 존재한다. 재시도가 지시되지 않았다면, 즉 요청 명령이 성공하였다면, 블록(42)에 나타낸 바와 같이 모든 버스 유닛은 요청을 완료하고, 그들의 상태를 업데이트한다. 한편, 응답에 재시도가 지시되어 있다면, 블록(44)에 나타낸 바와 같이 동작을 요청 유닛을 제외한 모든 버스 마스터에서는 요청이 무시된다. 그리고, 요청 마스터는 블록(46)에 나타낸 바와 같이 요청을 임의로 생성된 시간만큼 지연하여 큐잉(queueing)한다.
블록(42) 또는 블록(46) 동작을 완료하면 블록(30)으로 다시 돌아가서, 동일한 또는 다른 버스 마스터가 다른 유닛에 동작을 위한 요청을 생성한다. 통신 속도가 버스 속도를 압도하는 경우와 같이, 제공되는 회답이 없을 때에는, 타임아웃이 발생하거나 검사중지(checkstop), 또는 에러 취급 메커니즘이 그 버스 마스터 유닛에 의하여 발동된 때에 요청한 마스터에 의하여 응답 없음이 감지된다는 것을 알 수 있다.
도 1과 함께 도 3을 참조한다. 언급한 바와 같이, 도 2의 처음 네 단계(블록 30, 32, 34 및 36)는 도 3에 도면부호 60, 62, 64 및 66으로 나타낸 블록과 동일하다는 것을 알 수 있다. 그러나, 본 발명은 재시도 블록(68)에 나타낸 바와 같이 응답 생성 유닛(22), 및 조합된 응답이 응답 생성 유닛으로 재시도가 필요하다는 것을 지시하는 상황을 위한 그 후의 목표 지연 생성 블록(generate target delay block; 70)으로 사이클이 변경된다.
여기서 설명하는 바와 같이, 재시도가 요구될 때 응답 생성 블록(22)은 아래에서 설명할 다양한 요소에 기초하여 재시도 요청이 생성되어야 하는 적절한 시간을 결정한다. 그리고 프로세서는 블록(72)으로 진행하여, 생성된 응답이 도 2에서와 실질적으로 동일한 방식으로 모든 버스 마스터로 공급된다. 블록(68)에서 재시도가 필요하지 않다고 결정되면, 다음 단계에서는 마찬가지로 블록(72)으로 나타낸 단계로 정보를 제공한다. 남은 블록들(74, 76, 78 및 80) 각각의 동작은, 블록(40, 42, 44, 46)으로 나타낸 블록에서의 종래기술의 상세한 기능들에 대응한다.
재시도가 요구된다고 결정되는 경우에, 본 발명에 따른 응답 생성 블록(22)은 버스 마스터가 다시 요청의 전송을 시도하도록 하는 특정된 목표 지연 시간(target delay time)을 생성한다. 재시도를 위한 지연 시간을 결정함에 있어서, 응답 생성 블록(22)은 시스템 설계자에 의하여 결정된 요소들이 재시도 간격을 최적화함에 있어서 결정적인지 여부를 검사한다. 요청의 유형은 타이밍에 대한 요소일 수 있다. 저장 요청이 페치 요청보다 일찍 재시도되어야 한다고 결정할 수 있다. 데이터 삭제 요청은 페치 또는 저장 요청보다 덜 중요하거나 더 중요할 수 있다. 또 다른 요소는 현재 버스가 충분히 이용되고 있는지에 대한 것일 수 있다. 따라서, 재시도 간격은, 버스가 용량의 90% 이상을 이용하고 있는 경우보다 버스가 용량의 90% 이하를 이용하고 있는 경우에 더 짧아지도록 결정될 수 있다. 최근에 생성된 재시도의 횟수는, 요청 마스터로 제안된 재시도 간격(suggested retry interval)을 생성하는데 사용되는 요소일 수 있다. 따라서, 다수의 재시도 응답이 최근에 전송되었다면, 제안된 재시도 간격은 최근에 다른 마스터들에 제안된 것보다 주어진 유형의 이벤트에 대한 현재 마스터에 대해 더 클 수 있다.
블록(22)이 "행(hang)" 또는 다른 라이브록 조건을 감지하면, 이 요소에 기초하여 재시도 시간을 증가시키는 것이 바람직할 수 있다. 다른 마스터로부터의 응답은, 현재 요청이 완료될 때까지 다른 동작이 완료될 수 없음을 나타낼 수 있다. 따라서, 제안된 재시도 시간은, 사용된 다른 요소에 기초하여 일반적으로 제안되는 것보다 더 작게 할 수 있다. 상술한 제안된 요소는 제안된 재시도 지연을 확인하기 위한 바람직한 다른 요소를 배제하는 것이 아님을 알아야 한다.
지연을 계산함에 있어서, 응답 생성 블록(22)은 가능한 예로서, (a) 고정 지연(fixed delay), (b) 주어진 한계 내의 유사 임의 지연, (c) 버스 초기화, 현재 재시도율 및 행 감지 등의 시스템 성능 지시자의 상태, (d) 요청된 동작의 유형, 및 (e) 진행중인 동작의 상태 등의 성분을 포함할 수 있다. 상기 성분이 사용된다면, 시스템은 (a) 및 (b)를 결합하여, 각 주어진 유형의 명령 요청에 대해 특정된 고정 지연(specified fixed delay)을 가능하게 할 수 있다. 이 제안된 재시도 지연은, 버스 초기화가 90%를 초과할 때마다, 다른 요소들에 의하여 유도된 지연에 추가하여 고정 지연을 더 포함할 수 있다.
제안된 재시도 지연을 계산하는 또 다른 접근법은, 명령 스트림(stream)의 재시도 비율이 5%를 초과할 때마다 주어진 고정 지연과 관련하여 (b)의 유사 임의 지연을 사용하는 것이다. 페치(fetch)가 집적 캐쉬(integral cache)로의 액세스에 실패하여 페치가 메모리로부터 생성되어야 하는 상황에서는 다른 계산법이 사용될 수 있다. 이러한 상황에서는, 진행중인 동작의 상태 [즉, (e)] 때문에, (a) 및 (b)를 결합하는 것이 바람직할 수 있다.
이상으로부터, 제안된 재시도 지연의 계산은 동적이고, 시스템 성능 요소들에 의하여 영향을 받을 수 있다는 것이 명백할 것이다. 더 복잡한 경험적 계산(heuristic calculation)은, 이후의 재시도를 위한 재시도 간격을 설정할 때에, 이전 상황에서 주어진 조건에 대한 성공적인 재시도가 발생하기 전에 마스터가 생성하여야 했던 재시도의 횟수와 관련된 데이터를 포함할 수도 있다.
블록(70)은 "제안된(suggested)" 재시도 시간을 생성한다. 요청 마스터가 제안된 시간에 요청된 명령을 재시도하는 것을 다른 요소가 방지할 수 있기 때문에, "제안된"이라는 용어가 사용된다. 그러나, 전형적으로 마스터는 제안된 재시도 시간이 경과한 후에 가능한 한 빨리 재시도한다.
본 발명을 사용하는 주요한 예는 명령의 재시도를 위한 것이지만, 데이터 패킷의 전송과 같은 다른 상황에도 유용하게 사용될 수 있다.
또한, 재시도에 대하여 다른 버스 마스터로 응답하는 요청과 관련해서만 설명하였지만, 본 발명은 회답 제한 시간이 초과되고 회답이 응답 생성 블록(22)에 의해 감지되지 않는 상황에 대한 재시도 시간을 조절하는 것을 포함한다.
결론적으로, 본 발명은 하나 이상의 복수의 요소, 변수 및/또는 이벤트의 함수로서 재시도 간격을 변경하는 메커니즘으로 이루어진다. 복수의 요소들은 적어도 현재 시스템 성능, 요청의 유형, 진행중인 동작의 상태, 현재 진행중인 재시도 횟수, 소정의 고정된 간격, 유사 임의 간격, 임의 간격, 재시도 요청의 이력, 및 행 감지에 기초한 간격을 포함할 수 있다. 이는 또한 동적 피드백 하에서 재시도 간격의 조절을 (경험적으로) 가능하게 하며, 따라서 재시도 간격의 최적화에 의해 반복되는 재시도 횟수를 최소화하고, 간격을 최소화함으로써 지연을 감소시킬 수 있다.
본 발명의 특정 실시예와 관련하여 설명하였지만, 이러한 설명은 본 발명을 제한하는 것으로 해석되어서는 안 된다. 본 발명의 설명을 참고하면, 본 발명에 따른 다른 실시예뿐만 아니라, 개시된 실시예의 다양한 변형예도 당업자에게는 명 백할 것이다. 따라서, 청구항은 본 발명의 진정한 범위 및 사상에 속하는 임의의 변형 및 실시예를 모두 포함하는 것이다.
본 발명에 따르면, 동적 피드백 하에서 재시도 간격의 조절을 가능하게 하며, 따라서 재시도 간격의 최적화에 의해 반복되는 재시도 횟수를 최소화하고, 간격을 최소화함으로써 지연을 감소시킬 수 있다.

Claims (14)

  1. 대칭적인 멀티프로세서에서의 재시도 간격의 동적 제어 방법에 있어서,
    제2 프로세서 유닛에 의해 처리하기 위한 제1 요청을 요청 프로세서 유닛(requesting processor unit)으로부터 생성하는 단계와,
    상기 제2 프로세서 유닛으로부터 서비스의 부인(a denial of service)을 생성하는 단계와,
    상기 제2 프로세서 유닛에 의해 상기 제1 요청의 가변 간격을 처리하기 위한 다음 요청을 상기 요청 프로세서 유닛으로부터 생성하는 단계
    를 포함하고,
    상기 간격은 고정 간격(fixed interval), 유사 임의 간격(pseudo random interval), 경험적 간격(heuristic interval), 및 행 감지 간격(hang detection interval)을 포함하는 선정된 간격 세트 중 하나로부터 결정되는 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 멀티프로세서에서 장치간 통신 재시도 간격을 제어하기 위한 컴퓨터 프로그램을 수록한 컴퓨터 판독 가능 매체에 있어서, 상기 컴퓨터 프로그램은,
    제2 장치에 의한 동작을 위한 제1 요청을 요청 장치로부터 생성하기 위한 컴퓨터 코드와,
    상기 요청 장치에서 상기 제2 장치가 상기 요청에 따라 동작할 수 없다는 지시를 수신하기 위한 컴퓨터 코드와,
    고정 지속시간, 유사 임의 지속시간, 경험적 지속시간 및 행 감지 지속시간을 포함하는 선정된 지속시간 세트 중 하나로부터 결정되는 가변 지속시간(variable duration)의 시간 간격으로 상기 요청을 반복하기 위한 컴퓨터 코드
    를 포함하는 컴퓨터 판독 가능 매체.
  9. 장치간 통신 재시도 간격의 제어 장치에 있어서,
    통신 버스와,
    상기 통신 버스를 통하여 서로 동작 요청을 통신하며, 각각 제안된 재시도 응답 입력을 포함하는 복수의 프로세서와,
    상기 프로세서 각각의 일부를 포함하며, 수신된 동작 요청에 대하여 부정 및 긍정 동작 회답을 생성하는 회답 수단과,
    상기 회답 수단 및 상기 프로세서 각각의 제안된 재시도 응답 입력에 접속되며, 부정 동작 회답을 수신하면, 고정 지속시간, 유사 임의 지속시간, 경험적 지속시간 및 행 감지 지속시간을 포함하는 선정된 지속시간 세트 중 하나로부터 결정되는 가변 지속시간의 제안된 요청 재시도 간격을 생성하도록 동작하는 응답 생성 수단
    을 포함하는 장치.
  10. 장치간 통신 재시도 간격의 제어 방법에 있어서,
    통신 버스를 통하여 프로세서간 요청을 다른 모든 프로세서들로 전송하는 단계와,
    상기 요청과 관련된 각 프로세서로부터 회답을 생성하는 단계와,
    응답 생성기에서 상기 회답 전체에 포함된 데이터를 통합하는 단계와,
    상기 요청된 동작에 대하여 하나 이상의 부정 회답이 상기 응답 생성기에 의해 수신되면 제안된 재시도 간격 응답을 공식화하는 단계 - 상기 제안된 요청 재시도 간격은 고정 지속시간, 유사 임의 지속시간, 경험적 지속시간 및 행 감지 지속시간을 포함하는 선정된 지속시간 세트 중 하나로부터 결정되는 가변 지속시간임 -
    를 포함하는 방법.
  11. 제10항에 있어서, 상기 복수의 요소들은 현재 시스템 성능, 요청의 유형, 진행중인 동작의 상태 및 현재 진행중인 재시도의 횟수 중 하나 이상을 포함하는 방법.
  12. 제10항에 있어서, 상기 제안된 재시도 시간 간격은 성공적인 재시도에 앞서, 재시도 횟수에 기초한 주어진 요소들 세트를 위하여 미리 제안된 시간 간격들로부터 경험적으로 변경되는 방법.
  13. 멀티프로세서 시스템에서의 장치간 통신 재시도 간격의 제어 방법에 있어서,
    제2 장치에 의한 동작을 위한 제1 요청을 요청 장치로부터 생성하는 단계와,
    상기 제2 장치가 상기 요청에 따라 동작할 수 없다는 지시를 상기 요청 장치에서 수신하는 단계와,
    고정 지속시간, 유사 임의 지속시간, 경험적 지속시간 및 행 감지 지속시간을 포함하는 선정된 지속시간 세트 중 하나로부터 결정되는 가변 지속시간의 시간 간격으로 상기 요청을 반복하는 단계
    를 포함하는 방법.
  14. 제13항에 있어서, 상기 복수의 요소들은, 현재 시스템 성능, 요청의 유형, 진행중인 동작의 상태, 현재 진행중인 재시도의 횟수, 선정된 고정 간격, 유사 임의 간격, 임의 간격, 재시도 요청의 과거 이력, 경험적으로 결정된 간격, 및 행 감 지에 기초한 간격 중 하나 이상을 포함하는 방법.
KR1020030090897A 2003-01-16 2003-12-13 전송기로부터 수신기로 요청을 재시도하는 방법 및 그 장치 KR100577659B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/346,293 2003-01-16
US10/346,293 US7096289B2 (en) 2003-01-16 2003-01-16 Sender to receiver request retry method and apparatus

Publications (2)

Publication Number Publication Date
KR20040065980A KR20040065980A (ko) 2004-07-23
KR100577659B1 true KR100577659B1 (ko) 2006-05-10

Family

ID=32712115

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030090897A KR100577659B1 (ko) 2003-01-16 2003-12-13 전송기로부터 수신기로 요청을 재시도하는 방법 및 그 장치

Country Status (4)

Country Link
US (1) US7096289B2 (ko)
JP (1) JP4195368B2 (ko)
KR (1) KR100577659B1 (ko)
TW (1) TWI291102B (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007087247A (ja) * 2005-09-26 2007-04-05 Nec Electronics Corp バス制御システム
US20080065873A1 (en) * 2006-09-11 2008-03-13 Ronald Hall Dynamic livelock resolution with variable delay memory access queue
KR20080074545A (ko) * 2007-02-09 2008-08-13 삼성전자주식회사 버스 시스템 및 그 제어 방법
US7739455B2 (en) * 2007-06-22 2010-06-15 Mips Technologies, Inc. Avoiding livelock using a cache manager in multiple core processors
US7769958B2 (en) * 2007-06-22 2010-08-03 Mips Technologies, Inc. Avoiding livelock using intervention messages in multiple core processors
US7962677B2 (en) * 2008-07-15 2011-06-14 International Business Machines Corporation Bus access moderation system
JP2010044814A (ja) * 2008-08-11 2010-02-25 Toshiba Storage Device Corp 記憶装置の制御方法及び記憶装置
JP5127927B2 (ja) * 2008-08-22 2013-01-23 三菱電機株式会社 バスコントローラ及びバス通信システム及びバス制御方法
TWI383617B (zh) * 2008-10-31 2013-01-21 Ind Tech Res Inst 具排列架構之無線通訊方法及系統
CN101788972B (zh) * 2010-03-08 2012-07-11 威盛电子股份有限公司 一种数据传输的系统与方法
US8984194B2 (en) * 2011-01-21 2015-03-17 Numia Medical Technology Llc Multi-master bus arbitration and resource control
US9054968B2 (en) 2012-09-19 2015-06-09 International Business Machines Corporation Business intelligence-infused smart retransmission processing
US9198034B2 (en) * 2013-06-28 2015-11-24 Symbol Technologies, Llc Validating presence of a communication device using a wireless local area network
US10055327B2 (en) 2014-09-30 2018-08-21 International Business Machines Corporation Evaluating fairness in devices under test
US10496577B2 (en) 2017-02-09 2019-12-03 Hewlett Packard Enterprise Development Lp Distribution of master device tasks among bus queues
US10394636B2 (en) * 2017-08-02 2019-08-27 International Business Machines Corporation Techniques for managing a hang condition in a data processing system with shared memory
CN114827280B (zh) * 2022-04-26 2024-04-26 中国建设银行股份有限公司 请求处理方法、装置、设备、介质

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4281380A (en) * 1978-12-27 1981-07-28 Harris Corporation Bus collision avoidance system for distributed network data processing communications system
US5555420A (en) * 1990-12-21 1996-09-10 Intel Corporation Multiprocessor programmable interrupt controller system with separate interrupt bus and bus retry management
US5293621A (en) * 1993-01-11 1994-03-08 Unisys Corporation Varying wait interval retry apparatus and method for preventing bus lockout
US5623628A (en) 1994-03-02 1997-04-22 Intel Corporation Computer system and method for maintaining memory consistency in a pipelined, non-blocking caching bus request queue
US5623694A (en) * 1994-10-03 1997-04-22 International Business Machines Corporation Aborting an I/O operation started before all system data is received by the I/O controller after detecting a remote retry operation
US5727203A (en) 1995-03-31 1998-03-10 Sun Microsystems, Inc. Methods and apparatus for managing a database in a distributed object operating environment using persistent and transient cache
US5706446A (en) * 1995-05-18 1998-01-06 Unisys Corporation Arbitration system for bus requestors with deadlock prevention
JPH09114750A (ja) * 1995-10-13 1997-05-02 Mitsubishi Electric Corp バス制御装置
US5764929A (en) * 1995-12-18 1998-06-09 International Business Machines Corporation Method and apparatus for improving bus bandwidth by reducing redundant access attempts
US5717872A (en) * 1996-01-11 1998-02-10 Unisys Corporation Flexible, soft, random-like counter system for bus protocol waiting periods
US5748900A (en) * 1996-03-13 1998-05-05 Cray Research, Inc. Adaptive congestion control mechanism for modular computer networks
US5771235A (en) * 1996-05-01 1998-06-23 3Com Corporation Scalable CSMA/CD repeater
US5842026A (en) * 1996-07-01 1998-11-24 Sun Microsystems, Inc. Interrupt transfer management process and system for a multi-processor environment
EP0848332B1 (en) * 1996-12-13 2004-06-02 Bull S.A. Unit for arbitration of access to a bus of a multiprocessor system with retry ability
US6021483A (en) * 1997-03-17 2000-02-01 International Business Machines Corporation PCI-to-PCI bridges with a timer register for storing a delayed transaction latency
US5889972A (en) * 1997-03-25 1999-03-30 Adaptec, Inc. Bus to bus bridge deadlock prevention system
US6141715A (en) * 1997-04-03 2000-10-31 Micron Technology, Inc. Method and system for avoiding live lock conditions on a computer bus by insuring that the first retired bus master is the first to resubmit its retried transaction
JPH10293744A (ja) * 1997-04-18 1998-11-04 Nec Corp Pciバス・システム
US5884052A (en) * 1997-07-14 1999-03-16 Vlsi Technology, Inc. Smart retry mechanism to program the retry latency of a PCI initiator agent
US6397279B1 (en) * 1998-01-07 2002-05-28 Vlsi Technology, Inc. Smart retry system that reduces wasted bus transactions associated with master retries
US6081859A (en) * 1998-03-12 2000-06-27 Vlsi Technology, Inc. Address dependent retry system to program the retry latency of an initiator PCI agent
US6112272A (en) * 1998-06-02 2000-08-29 Adaptec, Inc. Non-invasive bus master back-off circuit and method for systems having a plurality of bus masters
JPH11345198A (ja) * 1998-06-03 1999-12-14 Nec Corp バスマスタ機構およびその制御方法
JP3592547B2 (ja) * 1998-09-04 2004-11-24 株式会社ルネサステクノロジ 情報処理装置および信号転送方法
US6289406B1 (en) * 1998-11-06 2001-09-11 Vlsi Technology, Inc. Optimizing the performance of asynchronous bus bridges with dynamic transactions
US6728808B1 (en) * 2000-02-07 2004-04-27 3Com Corporation Mechanism for optimizing transaction retries within a system utilizing a PCI bus architecture
JP2001333136A (ja) * 2000-05-19 2001-11-30 Canon Inc 通信装置、データ通信システム、通信制御方法、記憶媒体
US6633936B1 (en) * 2000-09-26 2003-10-14 Broadcom Corporation Adaptive retry mechanism
JP2002149480A (ja) * 2000-11-16 2002-05-24 Matsushita Electric Ind Co Ltd 排他制御方法
JP4063529B2 (ja) * 2001-11-28 2008-03-19 Necエレクトロニクス株式会社 バスシステムおよびリトライ方法
US6816954B2 (en) * 2002-07-29 2004-11-09 Lsi Logic Corporation System and method for tuning retry performance
US6898751B2 (en) * 2002-07-31 2005-05-24 Transdimension, Inc. Method and system for optimizing polling in systems using negative acknowledgement protocols

Also Published As

Publication number Publication date
TW200428220A (en) 2004-12-16
TWI291102B (en) 2007-12-11
JP2004220597A (ja) 2004-08-05
KR20040065980A (ko) 2004-07-23
US7096289B2 (en) 2006-08-22
JP4195368B2 (ja) 2008-12-10
US20040143691A1 (en) 2004-07-22

Similar Documents

Publication Publication Date Title
KR100577659B1 (ko) 전송기로부터 수신기로 요청을 재시도하는 방법 및 그 장치
US6016503A (en) Methods, systems and computer program products for preemptive avoidance of constraints for shared resources
KR100537869B1 (ko) 비동기 메시지 전송 시스템에서 사용하기 위한 방법 및 장치
CN103164266B (zh) 用于发起设备向接收设备发送的事务请求的动态资源分配
EP0588521A1 (en) System and method for regulating access to direct access storage devices in data processing systems
JP3284311B2 (ja) データ処理システムにおける通信バス制御装置およびバス制御方法
CN104854845B (zh) 使用高效的原子操作的方法和装置
CN113141264B (zh) 高并发访问处理方法、装置以及存储介质
WO2006128148A1 (en) System and method for bypassing execution of an algorithm
JP4099561B2 (ja) マルチプロセッサおよびそのバス調停方法
JP2001352345A (ja) データ伝送装置およびデータ送出制御方法
CN108153689A (zh) 轮询仲裁的方法和装置
US20090204728A1 (en) System and method for improving communications for systems having communications protocol enabled devices
JP6992694B2 (ja) 通信装置及び通信方法
JPS5860333A (ja) 複数端末装置の優先制御方法
JPH11272508A (ja) 監視対象装置の異常検出方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体
JP2829908B2 (ja) サーバプログラム実行制御方式
EP0187420B1 (en) A system for processing and transmitting information, and array for same
JP2001297016A (ja) 命令実行システム
JPH04329443A (ja) タスク制御方式
CN115277517A (zh) 一种基于报文队列的通讯测试方法及装置
KR19990086863A (ko) 인터럽트 적재기능을 갖는 인터럽트 전송장치
JPH01183744A (ja) プロセッサストール監視装置
CN117812007A (zh) 一种限流的方法及系统
CN116886641A (zh) 一种用于网络集群的数据传输方法及装置

Legal Events

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

Payment date: 20090504

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee