KR19990063741A - 주변구성요소 내부접속 버스상의 기능을 향상시키는 장치 및방법 - Google Patents
주변구성요소 내부접속 버스상의 기능을 향상시키는 장치 및방법 Download PDFInfo
- Publication number
- KR19990063741A KR19990063741A KR1019980702208A KR19980702208A KR19990063741A KR 19990063741 A KR19990063741 A KR 19990063741A KR 1019980702208 A KR1019980702208 A KR 1019980702208A KR 19980702208 A KR19980702208 A KR 19980702208A KR 19990063741 A KR19990063741 A KR 19990063741A
- Authority
- KR
- South Korea
- Prior art keywords
- memory access
- direct memory
- electronic device
- coupled
- bus
- Prior art date
Links
- 230000002093 peripheral effect Effects 0.000 title claims abstract description 38
- 238000000034 method Methods 0.000 title claims abstract description 15
- 230000002708 enhancing effect Effects 0.000 title 1
- 238000012546 transfer Methods 0.000 claims abstract description 49
- 238000012545 processing Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 8
- 101150106544 HRQ1 gene Proteins 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 101000583702 Homo sapiens Pleckstrin homology-like domain family A member 2 Proteins 0.000 description 2
- 102100030926 Pleckstrin homology-like domain family A member 2 Human genes 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4208—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
- G06F13/4217—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
주변구성요소 내부접속("PCI")버스(220)가 직접 메모리 액세스("DMA")전송(230a)을 지운할 수 있는 장치와 방법. 그 장치는 복수의 DMA 제어기(230a-230n), 상태머신(360), 및 내부기억소자(340)로 구성되어 있다. 복수의 DMA 제어기(230a-230n)는 전자 디바이스에 대한 DMA 요청를 상태머신(360)에 전송하고 DMA 긍정응답을 상태머신(360)에서 전자 디바이스로 전송한다. 상태 머신(360)은 각각의 DMA 전송에 대하여 두개의 트랜잭션 즉 메모리 사이클과 입력/출력 사이클을, 수행함으로써 DMA 전송을 제어한다. 내부기억소자(340)는 이 복수의 사이클 DMA 전송에 대하여 버퍼로서 동작한다.
Description
초기 발달과정에서, 퍼스널 컴퓨터("PC")는 PC의 마이크로프로세서 또는 메모리와, 모뎀, 플로피 디스크 드라이브 제어기, 오디오 디바이스등과 같은 여러 입력/출력("I/O")디바이스 사이에 통신로를 제공하는 업계규격 아키텍쳐("ISA")버스로 구성되어 있다. 공지된 바와같이, ISA버스는 대략 8메가헤르즈("MHz")의 작동비율로 16비트 데이터와 24비트 어드레스를 지원하는 전형적인 비다중 버스이다. 이 구성은 ISA버스에 결합된 I/O디바이스가 그 특정 I/O디바이스와 메모리 사이에 DMA채널을 만드는 DMA제어기(예, 인텔R8237제어기)에 적절히 신호함으로써 DMA전송을 수행하게 한다.
수년동안, PC의 버스구조는 변화되지 않았다. 그러나, 마이크로 프로세서가 더 고속화되고 더 고성능이 됨에 따라, PC의 더 나은 시스템 성능을 제공하기 위해 새로운 버스구조가 필요하게 되었다. 이것은 컴퓨터 산업에서 급격히 통용되는 주변구성요소 내부접속("PCI")버스의 개발을 유발했다. 그 PCI버스는 대략 33MHz의 비율로 작동하도록 구성된 다중화 32비트 버스이다. DMA채널을 통해 DMA전송을 지원하는 ISA버스와 달리, PCI버스는 하나의 버스 마스터가 하나 또는 다수의 버스 슬레이브를 제어하게 하는 멀티마스터 버스이다. "버스 마스터"는 버스 사이클을 개시함으로써 버스를 제어하는 디바이스(예, 마이크로프로세서, 메모리, I/O디바이스, 등)이다. "버스 슬레이브"는 버스 사이클을 개시할 수 있는 능력을 가지고 있지 않고 버스 사이클을 수신만 한다. 이 버스 마스터와 버스 슬레이브는 카드슬롯을 포함하는 다수의 내부접속을 통해 서로 결합될 수 있다.
최근에, 도 1에 도시된 바와같이, PC(100)는 중앙처리장치("CPU")(105), 메인메모리(100)(예, 임의 접근 메모리 "RAM", 판독 전용 메모리"ROM", 캐시등), 및 두개의 별개 버스, 즉 PCI버스(120)와 ISA버스(130)로 구성되어 있다. 더 상세하게, CPU(105)와 메인 메모리(110)는 시스템제어기(115), 바람직하게 메모리 제어기에 결합되어 있고, 이것은 상기 특성을 가진 PCI버스(120)에 결합되어 있다. PCI버스(120)는 ISA버스(130)에 결합된 다수의 I/O디바이스(135)와 CPU(105) 또는 메인메모리(110)사이에 통신로를 만드는 PCI-ISA 브리지(125)를 통해 ISA버스(130)에 결합되어 있다.
공지된 바와 같이, PCI-ISA브리지(125)는 다른 것중 하나, 두개의 DMA제어기(예, 인텔R8237제어기), 두 개의 인터럽트 제어기, 및 타이밍 메카니즘(도시생략)을 포함하고 있다. 이 PCI-ISA 브리지(125)는 I/O 디바이스(135), 예를들어 휘발성 메모리(예, EEPROM)(140) 및 슈퍼 I/O(145)를 메인 메모리(110)에 접근하게 한다. 슈퍼 I/O(145)는 각각, 실시간 클록에 대한 인터페이스, 병렬 및 직렬 포트를 통해 결합된 디바이스, 및 데이터 경로(146-149)에 의해 도시된 DMA 전송을 요청할 수 있는 플로피 디스크 드라이브 제어기이다. 그 I/O 디바이스(135)는 DMA 전송을 요청할 수 있는 오디오 디바이스와 유사한 다른 I/O 디바이스(100)와 모뎀, 오디오 디바이스, 네트워크카드, 또는 DMA를 사용하거나 사용할 수 없는 다른 디바이스를 ISA버스에 접속하는 "J"카드슬롯(155)(여기서 "J"는 임의의 정수)을 더 포함하고 있다.
전형적으로, ISA 버스(130)에 접속된 대다수의 I/O 디바이스(135)는 어떤 구조상 문제를 초래함이 없이 대안으로 PCI버스(120)에 결합될 수 있다. 그러나, DMA를 사용하는 I/O디바이스(예, 플로피 디스크 드라이브 제어기, 카드슬롯(155)에 삽입된 DMA를 사용하는 어미기판과 레게시 카드에 결합된 디바이스(150), 특히 디스크 운용 시스템("DOS")계 응용과 접속하여 사용되는 레게시 카드)는 PCI버스(120)가 DMA를 지원하지 않기 때문에, 현재 PCI버스(120)에 결합될 수 없다. 명백하게, 어미기판에 결합되어 DMA 전송을 수행할 수 있는 디바이스, 카등은 "DMA 디바이스"로 총칭적으로 불리운다. 결과적으로, 현재 버스구조의 두가지 별개 유형은 다수의 단점을 가진 PC내에 구현될 필요가 있다.
하나의 제 1단점은 ISA버스에 관련된 속도 제한이 8MHz 보다 큰 비율에서 작동할 수 있는 특정 DMA 디바이스를 적정 레벨에서 작동하는 것을 막는다는 것이다. 총체적으로, 이것은 PC가 적정 운용 속도로 작동하는 것을 방해한다. 다른 단점은 단일 버스 구조 대신, 두개의 상이한 유형의 버스구조를 지원하는 것이 컴퓨터 제조자에게는 더 많은 비용이 든다는 것이다. 또 다른 단점은 어느 I/O버스가 어느 버스유형에 결합되어 있는지를 다수의 컴퓨터 사용자가 혼동한다는 것이다.
따라서, ISA버스에 전형적으로 접속되어 있는 DMA가 대안으로 PCI버스에 결합될 수 있게 하고, 운용 소프트웨어에 완전히 투명한 시스템을 개발하는 것이 유리할 것이다.
본 발명은 컴퓨터 분야에 관한 것이다. 더 상세하게, 본 발명은 직접 메모리 액세스("DMA")전송을 이용하는 종래 디바이스를 업계규격 아키텍쳐("ISA")버스에서 주변구성요소 내부접속("PCI")버스로 이동시키는 장치와 방법에 관한 것이다.
도 1은 업계규격 아키텍쳐("ISA")버스와 주변구성요소 내부접속("PCI")버스 모두를 구현한 종래의 컴퓨터 시스템의 블록도,
도 2는 ISA버스 대신 PCI버스에 결합된 DMA를 이용한 다수의 I/O 디바이스를 갖춘 퍼스널 컴퓨터의 블록도,
도 3은 도 2의 PCI-ISA브리지의 작동을 제어라인을 통해 총괄적으로 제어하기 위해 DMA제어기, 상태머신, 내부기억소자, 및 위치 레지스터를 포함하는 PCI I/O 디바이스의 블록도,
도 4는 도 3의 위치 레지스터의 비트 표시의 블록도,
도 5는 PCI버스 내지 ISA버스중 어느 하나에 결합되어 메인메모리와 정보를 교환하는 DMA 디바이스를 지원하는 것이 필요한 작동 단계를 설명하는 흐름도,
도 6a 및 6b는 DMA 디바이스를 위치시킬 때의 연속 체크로 야기된 대기 시간을 없애는 추가 작동 단계뿐만 아니라 도 5에 설명된 작동단계를 합친 설명흐름도이다.
본 발명은 주변구성요소 내부접속("PCI")버스가 직접 메모리 액세스("DMA")전송과 같은 더 큰 기능관계를 지원할 수 있는 장치와 관련 방법에 관한 것이다. PCI버스에 결합된 본 장치는 복수의 DMA제어기, 상태머신 및 내부 기억 소자로 구성되어 있다. 복수의 DMA제어기는 본 장치가 PCI버스상에 행해질 DMA 전송을 지원할 준비가 될때마다, DMA 긍정응답신호를 발생함으로써 DMA디바이스("목표 DMA 디바이스")중 하나로부터의 DMA요청에 응답한다. 상태 머신은 DMA요청에 응답하여 두개의 트랜잭션을 수행함으로써 본 장치의 작동을 제어한다. 이 트랜잭션은 메모리 사이클과 입력/출력 사이클의 성능을 포함하고 있다. 내부 기억 소자는 복수 사이클 DMA 전송이 전형적인 단일 사이클 DMA 전송을 대신하여 수행되게 하는 내부버퍼링을 제공한다. 적절하게, 본 장치는 목표 DMA디바이스가 PCI버스나 업계규격 아키텍쳐 버스상에 존재하는지를 보다 좋게 예측하기 위해 위치 레지스터를 포함하고 있다.
본 발명의 특징과 장점이 다음의 본 발명의 상세할 설명으로 분명해 질 것이다:
본 발명은 DMA를 이용한 I/O 디바이스가 PCI 버스에 의해 지원되게 함으로써 PCI버스의 기능적 관계를 증가시키는 시스템과 방법을 설명하고 있다. 다음의 상세한 설명은 본 발명을 상세히 명확하게 설명하는 블록도와 흐름도로 주로 주어지지만, 본 발명의 모호성을 피하기 위해 공지된 회로나 진행단계는 논의하지 않는다. 흐름도는 바라는 결과를 유도하는 일련의 단계를 설명한다. 이 단계는 저장되고, 전송되고, 결합되고, 비교되거나 또는 그 반대로 조작될 수 있는 전기신호나 자기 신호의 형태로 물리적인 양의 물리적인 조작을 필요로 한다.
도 2를 참조하면, 본 발명을 사용하는 컴퓨터 시스템(200)의 예시적인 블록도가 도시되어 있다. 컴퓨터 시스템(200)은 시스템 제어기(215)에 결합된 CPU(205)와 메인 메모리소자(210)(예, RAM, ROM, 캐시등)로 구성되어 있다. 메모리 제어기로서 바람직하게 작동하기 위해, 시스템 제어기(215)는 내장된 다수의 디바이스를 상호접속하는 PCI버스(220)에 결합되어 있지만, 어미기판에 결합된 "n" DMA디바이스(230a-230n)(여기서, "n"은 임의의 정수)와 PCI I/O 디바이스(225)에 제한되지 않는다. 종래의 시스템에서와 같이, 단독으로 브리지처럼 작용하는 PCI I/O 디바이스(225)는 도시된 제어라인(235)을 포함한 버스를 통해 업계규격 아키텍쳐("ISA")버스(도시생략)에 결합되어 있다. 그러나, 여기서, PCI I/O 디바이스(225)는 운용 소프트 웨어에 투명한 PCI I/O 디바이스(225)와 정보를 교환하기 위해 DMA 디바이스(230a-230n)에 사용되는 제어라인(240a-240n)을 지원한다.
여기서, 도 3을 참조하면, 바람직하게, PCI I/O 디바이스(225)는 한쌍의 DMA제어기(300,310), 상태머신(320), 내부기억소자(340), PCI상태머신(360) 및 ISA 상태머신(370)으로 구성되어 있다. DMA제어기(300,310)(예, 인텔R8237제어기)는 복수의 DMA요청("DRQ")제어라인(330)과 대응되는 복수의 DMA긍정응답("DACK")제어라인(335)에 결합되어 있다. DRQ제어라인(330)은 ISA버스(245) 내지 PCI버스(220)중 어느 하나에 접속된 DMA 디바이스가 발생하는 DMA 전송을 요청하는 DMA제어기(300,310)에 신호를 보내는데 사용되고, DACK 제어라인(335)은 DMA 전송이 시작할 수 있음을 지시하는데 사용된다.
도 3에 추가 도시된 바와 같이, DMA제어기(300)는 DRQ라인(330), 즉 "DRQ[3:0]"을 통해 DMA 요청을 지원된 DMA 디바이스중 하나로 부터 검출하여 제어라인(311)을 통해 제 1홀드요청("HRQ1")신호를 상태 머신(320)에 표명한다. 추가로, DMA 제어기(310)는 남은 DMA 채널 "DRQ[7:4]"을 통하여, 그 지원된 DMA 디바이스중 하나로부터 DMA요청을 검출하여 제어라인(312)을 통해 DMA 제어기(300)로 제 2홀드요청("HRQ2")을 표명한다. HRQ2신호가 DMA 요청이 수신되었음을 지시하도록 표명되고 어텐션을 기다리고 있다면, DMA제어기(300,310)는 DMA제어기(300)가 표명한 HRQ1 신호에 의해 집합 유니트로서 작동하도록 서로 종속접속되어 있다. 어느 DMA 채널이 DRQ 신호를 전파했는가에 따라, 상태머신(320)은 DMA 전송이 메모리 판독인지 메모리 기억인지를 결정할 수 있다. DMA 제어기의 수를 증가시킴으로써, 도시된 8이상의 DMA채널은 PCI I/O 디바이스(225)에 의해 지원될 수 있다는 것을 알 수 있다.
DRQ라인중 표명한 하나에 응답하여, PCI I/O디바이스(225)는 작동을 두 개의 PCI 사이클; 즉 하나의 메모리와 하나의 I/O 사이클로 분할함으로써 DMA 작동을 수행한다. PCI 버스에 결합된 DMA 디바이스에 의해 개시된 DMA 메모리 판독 작동에 있어서, PCI I/O 디바이스(225)는 (i) PCI 메모리 판독 사이클을 발생하고, 그 다음 (ii) PCI버스(220)상에 모조어드레스로 I/O 기록사이클을 발생한다. 그 모조 어드레스는 PCI버스(220)에 결합된 임의의 하드웨어 디바이스와 관련되어 있지 않지만, 목표 DMA 디바이스가 I/O 기록사이클에 응답하는지를 체크하는 완전성(completeness)을 위해서 보내진다.
더 상세하게, 표명된 HRQ1 신호를 DMA 제어기(300)로부터 수신함과 동시에, 상태 머신(320)은 PCI버스의 점유권을 요청하기 위해 제어라인(321)을 통해 PCI상태 머신(360)에 신호한다. PCI 상태 머신(360)이 PCI I/O 디바이스에 대하여 PCI버스(220)의 점유권을 수신할 때, PCI상태 머신(360)은 응답하여 데이터를 PCI버스(220)에 배치시키는 메인 메모리 소자(도시생략)에 의해 수신되도록, 요청된 메모리 어드레스를 PCI버스(220)상에 배치시킨다. 상태 머신(320)은 데이터 라인(341)을 통하여 병렬로 데이터를 수신하는 내부기억소자(340)에 제어신호를 제어라인(322)을 통해 표명한다. 그 내부기억소자(340)는 DMA 메모리 기록 작동시의 목표 DMA 디바이스와 DMA 메모리 판독작동시의 메모리로부터 소정된 수의 비트(예, 32비트)를 저장하기 위해 일시 버퍼로서 작동한다. DMA 작동을 수행하는데 두개의 PCI사이클이 필요하기 때문에 필요하다.
그다음, 상태 머신(320)은 PCI 메모리 판독 사이클이 완료되었음을 DMA제어기(300)에 지시하는 제 1홀드인식("HLDA1")제어라인(313)을 표명한다. 목표 DMA 디바이스가 DMA제어기(310)에 의해 지원되면, 제 2 HLDA제어라인("HLDA2")(314)이 표명된다. 따라서, 목표 DMA 디바이스를 지원하는 DMA 제어기는 DACK신호를 발생한다.
그다음, 상태머신(320)은 PCI버스(220)상에 모조어드레스와 내부기억소자(340)에 기억된 데이터를 배치시킴으로써 I/O기록사이클을 PCI버스에 발생시키기 위해 PCI상태머신(360)에 신호를 보낸다. 목표 DMA디바이스가 PCI버스(220)에 결합되어 있으면, 디바이스는 데이터를 수신하고 DMA전송이 완료된다. 그러나, 목표 DMA디바이스가 ISA버스(245)에 결합되어 있음을 지시하는 I/O기록사이클에 응답이 없으면, 상태머신(320)은 공지된 복수의 ISA I/O기록사이클을 수행하는 것을 ISA상태머신(370)에 요청한다.
PCI버스(220)에 결합된 목표 DMA 디바이스에 의해 개시된 DMA메모리 기록작동에 있어서, PCI I/O 디바이스(225)는 모조어드레스로 I/O판독사이클을 발생하고, 그 다음 메모리 어드레스로 PCI버스상에 I/O기록사이클을 발생한다. 이 PCI사이클은 ISA버스(245)에 결합된 디바이스에 의해 DMA 작동이 수행되지 않고 있음을 소프트웨어가 검출하는 것을 방해한다.
특히, 목표 DMA 디바이스는 대응하는 DRQ라인(330)을 표명할 수 있다. 응답하여, DMA제어기(300)는 HRQ1신호를 발생할 수 있다. 표명된 HRQ1 신호를 DMA 제어기(300)으로부터 수신할 때, 상태머신(320)은 제어라인(321)을 통하여 PCI상태머신(360)에 신호를 보내고 PCI버스(220)의 제어권을 요청한다. 일단 PCI버스(220)가 입수되면, 상태머신(320)이 DMA제어기(310)에 의해 지원된 DRQ 신호에 응답한다면 HLDA2제어라인(314)의 표명을 가능하게 야기시켜 HLDA1제어라인(313)을 표명하고, DACK신호를 목표 DMA디바이스에 발생할 수 있음을 DMA제어기(300,310)에 지시한다. 다음 상태머신(320)은 PCI 상태머신에 지시하여 모조어드레스로 I/O판독 사이클을 발생하게 한다. 목표 DMA디바이스가 응답하면, 다음 PCI메모리 기록사이클의 메인 메모리 소자에 기록되는 내부기억소자(340)에 동시에 데이터의 32비트를 배치시킨다. 그러나, 목표 DMA디바이스가 응답하지 않으면, 목표 DMA디바이스가 ISA버스(245)에 결합되어 있음을 암시하여, 상태머신(320)은 ISA상태머신(370)에 신호하여, 데이터 라인(342)을 통해 내부기억소자(340)로의 데이터 전파를 제어한다. 내부기억소자(340)가 충만하면, 상태머신(320)은 PCI상태머신(360)에 신호하여 데이터를 메인메모리 소자에 기록한다.
선택적으로, 위치 레지스터(350)는 PCI I/O디바이스(225)내에서 사용될 수 있다. 바람직한 실시예에서, 그 위치 레지스터(350)는 16비트 데이터 버스(351)와 제어라인(352)을 통해 상태머신(320)에 결합되어 있다. 최소한, 도 4에 도시된 위치레지스터(350)는 16비트 길이이기 때문에, 그리고 두개의 비트가 각각의 포텐셜 DMA채널과 관련되어 있으므로 16비트 데이터 버스가 필요하다. 각각이 4개의 DMA 채널까지 제공하는 두개의 DMA 제어기가 있으므로, 총 8개의 DMA 채널("CH"로 라벨)(360-367)이 지원될 수 있다. 그러나, PCI I/O디바이스(225)에 의해 지원된 DMA채널의 수에 따라 위치 레지스터(350)가 조절될 수 있음이 기대된다.
각각의 DMA채널에 대응하는 하나의 비트는 설정될 때(논리 레벨"1") 목표 DMA 디바이스가 버스상에 존재한다는 것을 지시하는 앞서 결정되어진 식별비트("IB")이다. "식별"비트는 DMA 제어기의 I/O어드레스 범위가 기록되자 마자 플러시된다. 각각의 DMA채널과 관련된 다른 비트는 명백해질때(논리레벨"0"), 목표 DMA디바이스가 PCI버스상에 존재한다는 것을 지시하는 버스비트("BB")이다.
그렇지 않고, 버스비트가 설정(논리"1")되면, 목표 DMA디바이스는 ISA버스상에 존재한다. 물론, 전원작동시, 위치레지스터(350)는 "0"에 디폴트(default)된다.
여기서, 도 5를 참조하면, 흐름도는 PCI버스에 결합된 DMA디바이스에 의해 DMA전송을 지원하는 PCI I/O디바이스의 상태머신에 의해 수행되는 작동단계를 설명하고 있다. 단계(405)에서, DMA디바이스(이하"목표 DMA 디바이스")는 DMA를 요청하는 PCI I/O디바이스에 DRQ신호를 발생한다. 다음, PCI I/O디바이스는 목표 DMA 디바이스가 DMA판독작동을 요청하는지 DMA기록작동을 요청하는지를 결정한다(단계 410). 이것은 사용되는 DMA채널의 구성을 결정함으로써 이루어진다.
목표 DMA 디바이스가 DMA메모리 기록작동을 요청하고 있으면, PCI I/O 디바이스는 시스템 제어기내에서 전형적으로 실행된 PCI버스 아비터에 전송된 요청("REQ")신호를 표명함으로써 PCI버스의 점유권을 요청한다. PCI버스 아비터가 인가("GNT")신호를 반송함으로써 PCI버스의 제어권을 PCI I/O디바이스에 인가할때, PCI I/O 디바이스는 DMA긍정응답("DACK")신호를 목표 DMA 디바이스에 전송한다(단계 420,425). 그 이후, PCI I/O 디바이스는 모조어드레스를 가진 PCI버스상에 I/O판독사이클을 발생시킨다. 모조어드레스는 디바이스가 우연히 I/O판독 사이클을 요청하는 것을 방지하기 위해, PCI버스에 결합된 임의의 디바이스에서 이용불가능한 소정의 어드레스이다. 결과적으로, 목표 DMA디바이스만이 PCI버스에 결합되어 있으면, I/O판독사이클을 요청할 수 있다.
단계(435)에서, 목표 DMA 디바이스가 3클록 주기내의 I/O판독사이클에 응답하는 지를 체크한다. 목표 DMA디바이스가 그것에 응답하여, 목표 DMA 디바이스가 PCI버스에 결합되어 있다는 것을 지시하면, 목표 DMA 디바이스는 데이터(사이클당 32비트)를 PCI I/O 디바이스의 내부기억소자로 전송한다(단계 440). 내부기억소자가 채워지거나 데이터가 DMA 기록작동과 관련된 최종 바이트인 다음에, 목표 DMA 디바이스는 PCI 메모리 기록사이클을 발생시켜 내부기억소자에 저장된 데이터를 메모리에 기록한다(단계 445). DMA판독작동과 관련된 모든 데이터가 메인메모리에 전송될 때까지 이 과정은 계속된다. 그러나, 목표 DMA 디바이스가 응답에 실패하면, PCI I/O 디바이스는 (i) 목표 DMA 디바이스가 데이터(사이클당 8비트)를 내부기억소자로 전송하는 ISA버스에 ISA I/O사이클을 발생시키고, 그 다음 (ii) 단계(440-450)를 통해 도시된 PCI 메모리 기록 사이클을 발생시킨다.
도 5에 도시된 바와같이, 목표 DMA디바이스가 DMA 메모리 판독작동을 요청하고 있다면, PCI I/O디바이스는 PCI 버스의 점유권을 요청하고 이러한 점유권을 기다린다(단계 455, 460). 다음, PCI I/O디바이스는 PCI 메모리 판독사이클을 PCI버스상에 발생시켜 메인 메모리로부터 데이터를 얻는다(단계 465). PCI I/O 디바이스는 이 데이터를 수신하고 내부기억소자내에 데이터를 일시적으로 저장한다(단계 470). 그러면, PCI I/O디바이스는 긍정응답 신호("DACK")를 목표 DMA 디바이스에 전송한다(단계 475). 내부기억소자가 채워지거나 그 데이타가 DMA 판독작동과 관련된 최종 바이트인 이후에, PCI I/O 디바이스는 I/O기록사이클을 모조어드레스를 가진 PCI 버스상에 발생시킨다(단계 480).
단계(485)에서, 목표 DMA 디바이스가 거의 3클록사이클내의 I/O기록사이클에 응답하는 지를 체크한다. 그 목표 DMA 디바이스가 그것에 의해 응답하여, 목표 DMA 디바이스가 PCI버스에 결합되어 있으면, 목표 DMA 디바이스는 내부기억소자로부터 데이터를 받고 DMA와 관련된 모든 데이터가 목표 DMA 디바이스에 전송될 때까지 계속 진행된다. 그러나, 단계(490)에서 도시된 바와같이, 목표 DMA 디바이스가 응답에 실패하면, PCI I/O 디바이스는 목표 DMA 디바이스가 동시에 데이터의 8비트를 받는 ISA 버스에서, 내부기억소자가 비어있을 때까지, ISA I/O 기록사이클을 발생시킨다.
도 6a와 6b를 참조하면, 상태머신의 작동은 위치 레지스터의 플래그비트(즉, "식별" 및 "버스"비트)가 그 위치가 앞서 결정된 후에 DMA디바이스를 신속히 위치시키는데 사용되는 것을 제외하고 도 5에서 설명된 것과 유사하다.
단계(426)에 도시된 바와같이, PCI I/O디바이스가 DACK신호를 목표 DMA디바이스에 보낸후에, 목표 DMA 디바이스의 위치가 전에 결정되었는지에 관하여 결정한다. 이것은 목표 DMA 디바이스에 의해 사용된 채널과 관련된 식별 비트가 설정되어 있는지를 체크함으로써 실행한다. 설정되어 있지 않으면, 프로세서는 단계(430)로 계속되고, 그 다음 단계(436)또는 대안으로 단계(437)에서, 적절한 식별과 버스 비트는 목표 DMA 디바이스가 각각 PCI 또는 ISA버스에 결합되어 있음을 지시하도록 설정된다.
그 반대로, 목표 DMA 디바이스가 상기 체크된 식별 비트에 대응하는 버스의 논리상태를 결정함으로써, PCI버스에 결합되어 있는지에 관하여 다른 결정이 이루어진다(단계 427). 그러하다면, 목표 DMA 디바이스는 단계(430)로 진행되지만, ISA 버스에 목표 DMA 디바이스가 결합되면, 단계(430,435)를 무시하고 연속적으로 단계(450,440,445)를 수행한다. 같은 유형의 추가 작동은 DMA 작동이 단계(476-477, 486-487)에서 도시된 메모리 판독인 경우에 발생한다는 것이 예측된다.
여기서 설명된 본 발명의 사상과 범위를 벗어남이 없이 설명된 것보다 당업자에게 명백한 다수의 상이한 실시예로 설계될 수 있다. 그러므로, 본 발명은 다음의 청구범위에서 평가될 것이다.
Claims (23)
- 주변구성요소 내부접속 버스에 연결된 전자디바이스와 메인 메모리 소자 사이의 주변구성요소 내부접속 버스상에 직접 메모리 액세스 전송을 지원하도록 구성된 장치에 있어서;직접 메모리 액세스 요청을 전자 디바이스로부터 수신하는 복수의 직접 메모리 액세스 제어기;상기 복수의 직접 메모리 액세스 제어기에 연결되어 있으며, 상기 직접 메모리 액세스 요청을 상기 복수의 직접 메모리 액세스 제어기로부터 수신하고 직접 메모리 액세스 전송을 조정하는 상태 머신; 및상기 상태 머신에 결합되어 있으며, 상기 직접 메모리 액세스 전송시 데이터를 수집하도록 구성된 내부기억소자로 구성되어 있는 것을 특징으로 하는 장치.
- 제 1 항에 있어서, 상기 상태 머신은 직접 메모리 액세스 전송을 메모리 사이클 및 입력/출력 사이클로 분할함으로써 직접 메모리 액세스 전송을 조정하는 것을 특징으로 하는 장치.
- 제 2 항에 있어서, 상기 상태 머신은 전자디바이스에 의해 요청된 직접 메모리 액세스 전송이 메모리 판독 작동인지를 초기에 결정함으로써 직접 메모리 액세스 전송을 조정하는 것을 특징으로 하는 장치.
- 제 3 항에 있어서, 직접 메모리 액세스 전송이 상기 메모리 판독동작이면, 상기 상태머신은 본장치에게 (i) 주변구성요소 내부접속 버스의 점유권을 얻는 것, (ii) 메인 메모리 소자로부터 데이터를 수집하는 것, (iii) 직접 메모리 액세스 긍정응답 신호를 전자 디바이스에 전송하는 것, 및 (iv) 상기 데이터와 모조어드레스를 주변구성요소 내부접속 버스상에 배치시킴으로써 주변구성요소 내부접속 버스상에서 기록사이클을 수행하는 것을 지시하는 것을 특징으로 하는 장치.
- 제 3 항에 있어서, 직접 메모리 액세스 전송이 메모리 기록 작동이면, 상기 상태 머신은 본 장치에게, (i) 주변구성요소 내부접속 버스의 점유권을 얻는 것, (ii) 직접 메모리 액세스 긍정응답 신호를 전자 디바이스로 전송하는 것, (iii) 전자 디바이스로부터 데이터를 수집하는 것, 및 (iv) 메인 메모리 소자에 의해 지원된 상기 데이터와 어드레스를 주변구성요소 내부접속 버스상에 배치시킴으로써 주변구성요소 내부접속 버스상에서 기록사이클을 수행하는 것을 지시하는 것을 특징으로 하는 장치.
- 제 2 항에 있어서, 상기 복수의 직접 메모리 액세스 제어기는 복수의 직접 메모리 액세스 채널중 제 1직접 메모리 액세스 채널을 통해서 전자 디바이스에 연결되어 있는 것을 특징으로 하는 장치.
- 제 6 항에 있어서, 전자 디바이스가 주변구성요소 내부접속 버스에 연결되어 있는지를 지시하도록 구성된 위치 레지스터를 더 포함하는 것을 특징으로 하는 장치.
- 제 7 항에 있어서,상기 위치 레지스터는 상기 상태 머신에 결합되어 있으며, 상기 복수의 직접 메모리 액세스 채널의 각각과 관련된 식별 비트와 버스비트를 포함하고 있는 것을 특징으로 하는 장치.
- 주변구성요소 내부접속 버스에 결합된 전자디바이스와 메인 메모리 소자 사이의 주변구성요소 내부접속 버스상에 직접 메모리 액세스 전송을 지원하도록 구성된 장치에 있어서;직접 메모리 액세스 요청을 전자 디바이스로 부터 수신하는 제어기 수단;상기 제어기 수단에 결합되어 있으며, 상기 직접 메모리 액세스 요청을 상기 복수의 제어기 수단으로 부터 수신하고 직접 메모리 액세스를 조정하는 상태 수단;상기 상태 수단에 결합되어 있으며, 상기 직접 메모리 액세스 전송시 데이터를 수집하는 기억수단; 및상기 상태 수단에 결합되어 있으며, 전자 디바이스가 주변구성요소 내부접속 버스에 결합되어 있는지를 결정하는 위치수단을 포함하는 것을 특징으로 하는 장치.
- 중앙처리장치;메인 메모리 소자;주변구성요소 내부접속 버스;상기 중앙처리장치와 상기 메인 메모리 소자에 연결되어 있으며, 상기 주변구성요소 상호접속 버스를 상기 중앙처리장치와 상기 메인 메모리 소자에 접속시키는 시스템 제어기;상기 주변구성요소 상호접속 버스에 연결되어 있으며, 직접 메모리 액세스 전송을 상기 메인 메모리 소자로 수행하도록 구성된 복수의 전자 디바이스; 및상기 시스템 제어기와 상기 복수의 전자 디비이스에 연결되어 상기 직접 메모리 액세스 전송을 지원하고,직접 메모리 액세스 요청을 상기 복수의 전자 디바이스중 목표 전자 디바이스로부터 수신하는 복수의 직접 메모리 액세스 제어기,상기 복수의 직접 메모리 액세스 제어기에 연결되어 있으며, 상기 직접 메모리 액세스 요청을 상기 복수의 직접 메모리 액세스 제어기로부터 수신하고 상기 직접 메모리 액세스 전송을 대응시키는 상태머신, 및상기 상태 머신에 연결되어 있으며, 직접 메모리 액세스 전송시 데이터를 수집하도록 구성된 내부기억소자를 포함한 브리지 디바이스를 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제 10 항에 있어서, 상기 브리지 디바이스의 상기 복수의 직접 메모리 액세스 제어기는 복수의 직접 메모리 액세스 채널중 제 1직접 메모리 액세스 채널을 통하여 상기 목표 전자 디바이스에 연결되어 있는 것을 특징으로 하는 컴퓨터 시스템.
- 제 11 항에 있어서, 상기 브리지 디바이스의 상기 상태 머신은 상기 직접 메모리 액세스 전송을 메모리 사이클과 입력/출력 사이클로 분할함으로써 상기 직접 메모리 액세스 전송을 조정하는 것을 특징으로 하는 컴퓨터 시스템.
- 제 11 항에 있어서, 상기 브리지 디바이스의 상기 상태 머신은 목표 전자 디바이스에 의해 요청된 직접 메모리 액세스 전송이 메모리 판독 작동인지를 초기에 결정함으로써 직접 메모리 액세스 전송을 조정하는 것을 특징으로 하는 컴퓨터 시스템.
- 제 13 항에 있어서, 상기 직접 메모리 액세스 전송이 상기 메모리 판독작동이면, 상기 상태 머신은 상기 브리지 디바이스에게 (i) 상기 주변구성요소 내부접속 버스의 점유권을 얻는 것, (ii) 상기 메인 메모리 소자로부터 데이터를 수집하는 것, (iii) 직접 메모리 액세스 긍정응답 신호를 상기 목표 전자 디바이스에 전송하는 것, 및 (iv) 상기 데이터와 모조 어드레스를 상기 주변구성요소 내부접속 버스상에 배치시킴으로써 상기 주변구성요소 내부접속 버스상에서 기록 사이클을 수행하는 것을 지시하는 것을 특징으로 하는 컴퓨터 시스템.
- 제 13 항에 있어서, 상기 직접 메모리 액세스 전송이 메모리 기록 작동이면, 상기 상태 머신은 상기 브리지 디바이스에게 (i) 상기 주변구성요소 내부접속 버스의 점유권을 얻는 것, (ii) 직접 메모리 액세스 긍정응답 신호를 상기 목표 전자 디바이스에 전송하는 것, (iii) 상기 목표 전자 디바이스로부터 데이터를 수집하는 것, 및 (iv) 상기 메인 메모리 소자에 의해 지원된 상기 데이터와 어드레스를 상기 주변구성요소 내부접속 버스상에 배치시킴으로써 상기 주변구성요소 내부접속 버스에서 기록 사이클을 수행하는 것을 지시하는 것을 특징으로 하는 컴퓨터 시스템.
- 제 10 항에 있어서, 상기 브리지 디바이스는 상기 목표 전자 디바이스가 상기 주변구성요소 내부접속 버스에 결합되어있는 지를 지시하도록 구성된 위치 레지스터를 더 포함하고 있는 것을 특징으로 하는 컴퓨터 시스템.
- 제 16 항에 있어서, 상기 상태머신에 결합되어 있는 상기 위치 레지스터는 각각의 상기 복수의 직접 메모리 액세스 채널과 관련된 식별 비트와 버스 비트를 포함하고 있는 것을 특징으로 하는 컴퓨터 시스템.
- 정보를 처리하는 처리수단;상기 정보를 저장하는 메모리 수단;최소한의 상기 처리수단과 상기 메모리 수단 사이에 정보를 전송하는 버스수단;상기 처리수단과 상기 메모리 수단에 연결되어 있으며, 상기 버스수단을 상기 처리수단과 상기 메모리 수단에 접속시키는 제어기 수단;상기 버스수단에 연결되어 있으며, 상기 메모리 수단으로 직접 메모리 액세스 전송을 수행하는 디바이스 수단; 및상기 제어기 수단과 상기 디바이스 수단에 연결되어 상기 직접 메모리 액세스 전송을 지원하고,직접 메모리 액세스 요청을 상기 디바이스 수단으로부터 수신하는 직접 메모리 액세스 제어기 수단,상기 직접 메모리 액세스 제어기 수단에 연결되어 있으며, 상기 직접 메모리 액세스 요청을 상기 제어기 수단으로부터 수신하고 그 직접 메모리 액세스를 조정하는 상태 수단, 및상기 상태 수단에 연결되어 있으며, 상기 직접 메모리 액세스 전송의 메모리 판독 동작동안 상기 메모리 수단으로 부터, 그리고 상기 직접 메모리 액세스 전송의 메모리 기록동작동안 상기 전자수단으로부터 교대로 데이터를 수집하는 기억수단을 포함한 브리지 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 메인 메모리 소자와 전자 디바이스 사이의 주변구성요소 내부접속 버스상에 직접 메모리 액세스 전송을 지원하는 방법에 있어서;(1) 직접 메모리 액세스 요청을 전자 디바이스로부터 검출하는 단계; 및(2) 직접 메모리 액세스 전송을 메모리 사이클과 입력/출력 사이클로 분할하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제 19 항에 있어서, 상기 분할하는 단계는 상기 직접 메모리 액세스 요청이 직접 메모리 액세스 메모리 판독에 대한 것인지를 결정하고, 여기서 상기 직접 메모리 액세스 요청이 상기 직접 메모리 액세스 메모리 판독에 대한 것이면, 그 후(a) 주변구성요소 내부접속 버스의 점유권을 얻는 단계,(b) 메인 메모리 소자에게 기억 소자로 데이터를 수집하는 단계,(c) 직접 메모리 액세스 긍정응답 신호를 전자디바이스에 전송하는 단계, 및(d) 상기 데이터와 모조 어드레스를 주변 구성요소 내부접속 버스에 배치함으로써 입력/출력 기록 사이클을 수행하는 단계를 포함하고 있는 것을 특징으로 하는 방법.
- 제 20 항에 있어서, 상기 직접 메모리 액세스 요청이 상기 결정 단계동안 직접 메모리 액세스 메모리 기록이 되도록 결정되면, 상기 결정하는 단계는(e) 주변구성요소 내부접속 버스의 점유권을 얻는 단계;(f) 직접 메모리 액세스 긍정응답 신호를 전자 디바이스에 전송하는 단계;(g) 주변구성요소 내부접속 버스상의 모조어드레스로 입력/출력 판독 사이클을 수행하는 단계;(h) 전자 디바이스로부터 데이터를 수집하여 상기 기억소자에 상기 데이터를 저장하는 단계; 및(i) 주변구성요소 내부접속 버스상의 메모리 어드레스로 기록 사이클을 수행하는 단계를 더 포함하고 있는 것을 특징으로 하는 방법.
- 제 19 항에 있어서, 단계(d)이전에;전자 디바이스의 위치가 이미 식별되었는지를 결정하는 단계, 상기 위치가 식별 되었다면,전자 디바이스가 주변구성요소 내부접속 버스에 연결되어 있는지를 결정하는 단계,전자 디바이스가 주변구성요소 내부접속 버스에 연결되어 있으면 단계(d)를 수행하고, 전자 디바이스가 주변구성요소 내부접속 버스에 연결되어 있으면 다음 직접 메모리 액세스에 대한 전자 디바이스의 위치를 기억하기 위해 위치 레지스터내에서 적절한 비트를 설정하는 단계, 및 대안으로전자 디바이스가 공업 표준 규격 버스에 연결되어 있으면, 복수의 입력/출력 기록사이클을 수행하는 단계로 구성되어 있는 것을 특징으로 하는 방법.
- 제 22 항에 있어서, 상기 직접 메모리 액세스 긍정응답 신호를 전자 디바이스에 전송한 후와 상기 입력/출력 판독 사이클을 수행하기 전에;전자 디바이스의 위치가 앞서 식별되었는지를 결정하는 단계, 상기 위치가 식별되었다면,전자 디바이스가 주변구성요소 내부접속 버스에 결합되어 있는지를 결정하는 단계,전자 디바이스가 주변구성요소 내부접속 버스에 결합되어 있으면 상기 입력/출력 사이클을 수행하고, 전자 디바이스가 주변구성요소 내부접속 버스에 결합되어 있으면, 다음 직접 메모리 액세스 전송에 대한 전자 디바이스의 위치를 저장하기 위해 위치 레지스터내에서 적절한 비트를 설정하는 단계, 및 대안으로전자 디바이스가 업계규격아키텍쳐 버스에 결합되어 있으면, 복수의 입력/출력 판독 사이클을 수행하는 단계로 구성되어 있는 것을 특징으로 하는 방법.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US8/534187 | 1995-09-26 | ||
US08/534,187 US5805842A (en) | 1995-09-26 | 1995-09-26 | Apparatus, system and method for supporting DMA transfers on a multiplexed bus |
US08/534187 | 1995-09-26 | ||
PCT/US1996/014939 WO1997014100A1 (en) | 1995-09-26 | 1996-09-18 | A system and method for increasing functionality on the peripheral component interconnect bus |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990063741A true KR19990063741A (ko) | 1999-07-26 |
KR100271336B1 KR100271336B1 (ko) | 2000-11-01 |
Family
ID=24129034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980702208A KR100271336B1 (ko) | 1995-09-26 | 1996-09-18 | 주변구성요소 내부접속 버스상의 기능을 향상시키는 장치 및방법 |
Country Status (8)
Country | Link |
---|---|
US (1) | US5805842A (ko) |
KR (1) | KR100271336B1 (ko) |
AU (1) | AU7112596A (ko) |
BR (1) | BR9610950A (ko) |
DE (1) | DE19681574T1 (ko) |
GB (1) | GB2319642B (ko) |
HK (1) | HK1011228A1 (ko) |
WO (1) | WO1997014100A1 (ko) |
Families Citing this family (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19733526A1 (de) * | 1997-08-02 | 1999-02-04 | Philips Patentverwaltung | Kommunikationssystem mit einer Schnittstelle |
US6412027B1 (en) * | 1998-02-11 | 2002-06-25 | Globespanvirata, Inc. | Direct memory access controller having on-board arbitration circuitry |
US6138183A (en) * | 1998-05-06 | 2000-10-24 | Ess Technolgoy Inc. | Transparent direct memory access |
JP4236729B2 (ja) * | 1998-05-07 | 2009-03-11 | 株式会社リコー | データ処理装置 |
US6757762B1 (en) | 1999-10-29 | 2004-06-29 | Unisys Corporation | Multi-mode processor bus bridge |
US6915356B1 (en) | 1999-12-07 | 2005-07-05 | Advanced Micro Devices, Inc. | Register addresses optimum access |
US6874039B2 (en) * | 2000-09-08 | 2005-03-29 | Intel Corporation | Method and apparatus for distributed direct memory access for systems on chip |
US6807165B2 (en) | 2000-11-08 | 2004-10-19 | Meshnetworks, Inc. | Time division protocol for an ad-hoc, peer-to-peer radio network having coordinating channel access to shared parallel data channels with separate reservation channel |
US6873839B2 (en) | 2000-11-13 | 2005-03-29 | Meshnetworks, Inc. | Prioritized-routing for an ad-hoc, peer-to-peer, mobile radio access system |
US7072650B2 (en) * | 2000-11-13 | 2006-07-04 | Meshnetworks, Inc. | Ad hoc peer-to-peer mobile radio access system interfaced to the PSTN and cellular networks |
US6948010B2 (en) * | 2000-12-20 | 2005-09-20 | Stratus Technologies Bermuda Ltd. | Method and apparatus for efficiently moving portions of a memory block |
US7151769B2 (en) * | 2001-03-22 | 2006-12-19 | Meshnetworks, Inc. | Prioritized-routing for an ad-hoc, peer-to-peer, mobile radio access system based on battery-power levels and type of service |
EP1395942A4 (en) * | 2001-06-14 | 2009-07-22 | Meshnetworks Inc | EMBEDDED ROUTING ALGORITHMS UNDER THE INTERNET PROTOCOL ROUTING LAYER OF A SOFTWARE ARCHITECTURAL LOG STACK IN A MOBILE AD HOC NETWORK |
US7047328B1 (en) * | 2001-07-13 | 2006-05-16 | Legerity, Inc. | Method and apparatus for accessing memories having a time-variant response over a PCI bus by using two-stage DMA transfers |
US7206294B2 (en) * | 2001-08-15 | 2007-04-17 | Meshnetworks, Inc. | Movable access points and repeaters for minimizing coverage and capacity constraints in a wireless communications network and a method for using the same |
US7072323B2 (en) * | 2001-08-15 | 2006-07-04 | Meshnetworks, Inc. | System and method for performing soft handoff in a wireless data network |
US7349380B2 (en) * | 2001-08-15 | 2008-03-25 | Meshnetworks, Inc. | System and method for providing an addressing and proxy scheme for facilitating mobility of wireless nodes between wired access points on a core network of a communications network |
US7613458B2 (en) * | 2001-08-28 | 2009-11-03 | Meshnetworks, Inc. | System and method for enabling a radio node to selectably function as a router in a wireless communications network |
US7145903B2 (en) * | 2001-09-06 | 2006-12-05 | Meshnetworks, Inc. | Multi-master bus architecture for system-on-chip designs |
EP1430619B1 (en) * | 2001-09-25 | 2007-05-02 | Meshnetworks, Inc. | A system and method employing algorithms and protocols for optimizing carrier sense multiple access (CSMA) protocols in wireless networks |
US7152125B2 (en) * | 2001-09-25 | 2006-12-19 | Intel Corporation | Dynamic master/slave configuration for multiple expansion modules |
US6754188B1 (en) | 2001-09-28 | 2004-06-22 | Meshnetworks, Inc. | System and method for enabling a node in an ad-hoc packet-switched wireless communications network to route packets based on packet content |
US6768730B1 (en) | 2001-10-11 | 2004-07-27 | Meshnetworks, Inc. | System and method for efficiently performing two-way ranging to determine the location of a wireless node in a communications network |
US6771666B2 (en) | 2002-03-15 | 2004-08-03 | Meshnetworks, Inc. | System and method for trans-medium address resolution on an ad-hoc network with at least one highly disconnected medium having multiple access points to other media |
US6982982B1 (en) | 2001-10-23 | 2006-01-03 | Meshnetworks, Inc. | System and method for providing a congestion optimized address resolution protocol for wireless ad-hoc networks |
WO2003037009A1 (en) | 2001-10-23 | 2003-05-01 | Meshnetworks, Inc. | System and method for providing a congestion optimized address resolution protocol for wireless ad-hoc networks |
US7181214B1 (en) | 2001-11-13 | 2007-02-20 | Meshnetworks, Inc. | System and method for determining the measure of mobility of a subscriber device in an ad-hoc wireless network with fixed wireless routers and wide area network (WAN) access points |
US7136587B1 (en) | 2001-11-15 | 2006-11-14 | Meshnetworks, Inc. | System and method for providing simulated hardware-in-the-loop testing of wireless communications networks |
US6728545B1 (en) | 2001-11-16 | 2004-04-27 | Meshnetworks, Inc. | System and method for computing the location of a mobile terminal in a wireless communications network |
US7221686B1 (en) | 2001-11-30 | 2007-05-22 | Meshnetworks, Inc. | System and method for computing the signal propagation time and the clock correction for mobile stations in a wireless network |
US7190672B1 (en) | 2001-12-19 | 2007-03-13 | Meshnetworks, Inc. | System and method for using destination-directed spreading codes in a multi-channel metropolitan area wireless communications network |
US7180875B1 (en) | 2001-12-20 | 2007-02-20 | Meshnetworks, Inc. | System and method for performing macro-diversity selection and distribution of routes for routing data packets in Ad-Hoc networks |
US7280545B1 (en) | 2001-12-20 | 2007-10-09 | Nagle Darragh J | Complex adaptive routing system and method for a nodal communication network |
US7106707B1 (en) | 2001-12-20 | 2006-09-12 | Meshnetworks, Inc. | System and method for performing code and frequency channel selection for combined CDMA/FDMA spread spectrum communication systems |
US7072618B1 (en) | 2001-12-21 | 2006-07-04 | Meshnetworks, Inc. | Adaptive threshold selection system and method for detection of a signal in the presence of interference |
US6674790B1 (en) | 2002-01-24 | 2004-01-06 | Meshnetworks, Inc. | System and method employing concatenated spreading sequences to provide data modulated spread signals having increased data rates with extended multi-path delay spread |
US6617990B1 (en) | 2002-03-06 | 2003-09-09 | Meshnetworks | Digital-to-analog converter using pseudo-random sequences and a method for using the same |
US7058018B1 (en) | 2002-03-06 | 2006-06-06 | Meshnetworks, Inc. | System and method for using per-packet receive signal strength indication and transmit power levels to compute path loss for a link for use in layer II routing in a wireless communication network |
US6904021B2 (en) | 2002-03-15 | 2005-06-07 | Meshnetworks, Inc. | System and method for providing adaptive control of transmit power and data rate in an ad-hoc communication network |
JP4199672B2 (ja) | 2002-03-15 | 2008-12-17 | メシュネットワークス、インコーポレイテッド | Ipアドレスからmacアドレスへのマッピングの自動構成およびゲートウェイの存在の発見を行うシステムおよび方法 |
US6987795B1 (en) | 2002-04-08 | 2006-01-17 | Meshnetworks, Inc. | System and method for selecting spreading codes based on multipath delay profile estimation for wireless transceivers in a communication network |
US7200149B1 (en) | 2002-04-12 | 2007-04-03 | Meshnetworks, Inc. | System and method for identifying potential hidden node problems in multi-hop wireless ad-hoc networks for the purpose of avoiding such potentially problem nodes in route selection |
US7697420B1 (en) | 2002-04-15 | 2010-04-13 | Meshnetworks, Inc. | System and method for leveraging network topology for enhanced security |
US6580981B1 (en) | 2002-04-16 | 2003-06-17 | Meshnetworks, Inc. | System and method for providing wireless telematics store and forward messaging for peer-to-peer and peer-to-peer-to-infrastructure a communication network |
US7107498B1 (en) | 2002-04-16 | 2006-09-12 | Methnetworks, Inc. | System and method for identifying and maintaining reliable infrastructure links using bit error rate data in an ad-hoc communication network |
US7142524B2 (en) * | 2002-05-01 | 2006-11-28 | Meshnetworks, Inc. | System and method for using an ad-hoc routing algorithm based on activity detection in an ad-hoc network |
US6970444B2 (en) | 2002-05-13 | 2005-11-29 | Meshnetworks, Inc. | System and method for self propagating information in ad-hoc peer-to-peer networks |
US7284268B2 (en) | 2002-05-16 | 2007-10-16 | Meshnetworks, Inc. | System and method for a routing device to securely share network data with a host utilizing a hardware firewall |
US7016306B2 (en) * | 2002-05-16 | 2006-03-21 | Meshnetworks, Inc. | System and method for performing multiple network routing and provisioning in overlapping wireless deployments |
US7167715B2 (en) * | 2002-05-17 | 2007-01-23 | Meshnetworks, Inc. | System and method for determining relative positioning in AD-HOC networks |
US7106703B1 (en) | 2002-05-28 | 2006-09-12 | Meshnetworks, Inc. | System and method for controlling pipeline delays by adjusting the power levels at which nodes in an ad-hoc network transmit data packets |
US7610027B2 (en) * | 2002-06-05 | 2009-10-27 | Meshnetworks, Inc. | Method and apparatus to maintain specification absorption rate at a wireless node |
US6744766B2 (en) | 2002-06-05 | 2004-06-01 | Meshnetworks, Inc. | Hybrid ARQ for a wireless Ad-Hoc network and a method for using the same |
US6687259B2 (en) | 2002-06-05 | 2004-02-03 | Meshnetworks, Inc. | ARQ MAC for ad-hoc communication networks and a method for using the same |
US7054126B2 (en) * | 2002-06-05 | 2006-05-30 | Meshnetworks, Inc. | System and method for improving the accuracy of time of arrival measurements in a wireless ad-hoc communications network |
AU2003238968A1 (en) * | 2002-06-11 | 2003-12-22 | Meshnetworks, Inc. | System and method for multicast media access in ad-hoc communication networks |
US7215638B1 (en) | 2002-06-19 | 2007-05-08 | Meshnetworks, Inc. | System and method to provide 911 access in voice over internet protocol systems without compromising network security |
US7072432B2 (en) * | 2002-07-05 | 2006-07-04 | Meshnetworks, Inc. | System and method for correcting the clock drift and maintaining the synchronization of low quality clocks in wireless networks |
US7796570B1 (en) | 2002-07-12 | 2010-09-14 | Meshnetworks, Inc. | Method for sparse table accounting and dissemination from a mobile subscriber device in a wireless mobile ad-hoc network |
US7046962B1 (en) | 2002-07-18 | 2006-05-16 | Meshnetworks, Inc. | System and method for improving the quality of range measurement based upon historical data |
US7042867B2 (en) * | 2002-07-29 | 2006-05-09 | Meshnetworks, Inc. | System and method for determining physical location of a node in a wireless network during an authentication check of the node |
ATE515856T1 (de) * | 2003-01-13 | 2011-07-15 | Meshnetworks Inc | System und verfahren zur erzielung kontinuierlicherkonnektivität mit einem zugangspunkt oder gateway in einem drahtlosennetzwerk |
KR20050117557A (ko) * | 2003-03-13 | 2005-12-14 | 메시네트웍스, 인코포레이티드 | 저속 중앙처리장치를 이용하는 무선 애드-혹 통신네트워크에 있어서 이동 가입자에 대한 위치계산의정확도를 향상시키기 위한 시스템 및 방법 |
US7171220B2 (en) * | 2003-03-14 | 2007-01-30 | Meshnetworks, Inc. | System and method for analyzing the precision of geo-location services in a wireless network terminal |
WO2004109476A2 (en) * | 2003-06-05 | 2004-12-16 | Meshnetworks, Inc. | System and method to maximize channel utilization in a multi-channel wireless communication network |
US7215966B2 (en) * | 2003-06-05 | 2007-05-08 | Meshnetworks, Inc. | System and method for determining location of a device in a wireless communication network |
US7116632B2 (en) * | 2003-06-05 | 2006-10-03 | Meshnetworks, Inc. | System and method for determining synchronization point in OFDM modems for accurate time of flight measurement |
WO2004114690A1 (en) * | 2003-06-05 | 2004-12-29 | Meshnetworks, Inc. | Optimal routing in ad hac wireless communication network |
ATE529962T1 (de) * | 2003-06-06 | 2011-11-15 | Meshnetworks Inc | Verfahren zur verbesserung der gesamtleistungsfähigkeit eines drahtlosen kommunikationsnetzes |
EP1632045B1 (en) | 2003-06-06 | 2013-08-21 | Meshnetworks, Inc. | System and method to provide fairness and service differentiation in ad-hoc networks |
EP1631916A1 (en) * | 2003-06-06 | 2006-03-08 | Meshnetworks, Inc. | A method to provide a measure of link reliability to a routing protocol in an ad hoc wireless network |
KR100752947B1 (ko) * | 2003-06-06 | 2007-08-30 | 메시네트웍스, 인코포레이티드 | 빌딩들 내부의 무선 디바이스들의 위치를 정확하게연산하기 위한 mac 프로토콜 |
US7370125B2 (en) * | 2003-11-25 | 2008-05-06 | Intel Corporation | Stream under-run/over-run recovery |
US7346716B2 (en) | 2003-11-25 | 2008-03-18 | Intel Corporation | Tracking progress of data streamer |
US20050143843A1 (en) * | 2003-11-25 | 2005-06-30 | Zohar Bogin | Command pacing |
JP2005221731A (ja) * | 2004-02-05 | 2005-08-18 | Konica Minolta Photo Imaging Inc | 撮像装置 |
US7167463B2 (en) * | 2004-10-07 | 2007-01-23 | Meshnetworks, Inc. | System and method for creating a spectrum agile wireless multi-hopping network |
US8145805B2 (en) * | 2008-06-09 | 2012-03-27 | Emulex Design & Manufacturing Corporation | Method for re-sequencing commands and data between a master and target devices utilizing parallel processing |
GB0811293D0 (en) * | 2008-06-19 | 2008-07-30 | Symbian Software Ltd | Memory apparatus |
KR101018080B1 (ko) | 2009-11-26 | 2011-03-02 | 주식회사 케피코 | 디엠에이를 사용한 임베디드 시스템의 메모리 데이터 수집 방법 |
US10127968B2 (en) * | 2015-08-03 | 2018-11-13 | Intel Corporation | Method and apparatus for completing pending write requests to volatile memory prior to transitioning to self-refresh mode |
US10268602B2 (en) | 2016-09-29 | 2019-04-23 | Micron Technology, Inc. | System and method for individual addressing |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4571675A (en) * | 1984-01-03 | 1986-02-18 | Texas Instruments Incorporated | Microprocessor device with integrated auto-loaded timer |
US4777591A (en) * | 1984-01-03 | 1988-10-11 | Texas Instruments Incorporated | Microprocessor with integrated CPU, RAM, timer, and bus arbiter for data communications systems |
US4577313A (en) * | 1984-06-04 | 1986-03-18 | Sy Kian Bon K | Routing mechanism with encapsulated FCS for a multi-ring local area network |
US5191657A (en) * | 1989-11-09 | 1993-03-02 | Ast Research, Inc. | Microcomputer architecture utilizing an asynchronous bus between microprocessor and industry standard synchronous bus |
JPH05114905A (ja) * | 1991-04-08 | 1993-05-07 | Digital Equip Corp <Dec> | 単一アドレス及びプロトコール・テーブル・ブリツジを使用したメツセージの処置フイルタリング |
US5396602A (en) * | 1993-05-28 | 1995-03-07 | International Business Machines Corp. | Arbitration logic for multiple bus computer system |
US5450551A (en) * | 1993-05-28 | 1995-09-12 | International Business Machines Corporation | System direct memory access (DMA) support logic for PCI based computer system |
US5446869A (en) * | 1993-12-30 | 1995-08-29 | International Business Machines Corporation | Configuration and RAM/ROM control of PCI extension card residing on MCA adapter card |
US5471590A (en) * | 1994-01-28 | 1995-11-28 | Compaq Computer Corp. | Bus master arbitration circuitry having improved prioritization |
US5448558A (en) * | 1994-04-05 | 1995-09-05 | International Business Machines Corporation | Method and apparatus for managing packet FIFOS |
US5524235A (en) * | 1994-10-14 | 1996-06-04 | Compaq Computer Corporation | System for arbitrating access to memory with dynamic priority assignment |
US5557758A (en) * | 1994-11-30 | 1996-09-17 | International Business Machines Corporation | Bridge between two buses of a computer system that determines the location of memory or accesses from bus masters on one of the buses |
US5542053A (en) * | 1994-11-30 | 1996-07-30 | International Business Machines Corporation | Bridge interface between two buses of a computer system with a direct memory access controller programmed by a scatter/gather programmer |
US5642489A (en) * | 1994-12-19 | 1997-06-24 | International Business Machines Corporation | Bridge between two buses of a computer system with a direct memory access controller with accessible registers to support power management |
US5495569A (en) * | 1994-12-30 | 1996-02-27 | Compaq Computer Corp. | Circuit for ensuring that a local interrupt controller in a microprocessor is powered up active |
US5559968A (en) * | 1995-03-03 | 1996-09-24 | Compaq Computer Corporation | Non-conforming PCI bus master timing compensation circuit |
-
1995
- 1995-09-26 US US08/534,187 patent/US5805842A/en not_active Expired - Lifetime
-
1996
- 1996-09-18 DE DE19681574T patent/DE19681574T1/de not_active Withdrawn
- 1996-09-18 GB GB9803706A patent/GB2319642B/en not_active Expired - Fee Related
- 1996-09-18 AU AU71125/96A patent/AU7112596A/en not_active Abandoned
- 1996-09-18 BR BR9610950A patent/BR9610950A/pt not_active IP Right Cessation
- 1996-09-18 KR KR1019980702208A patent/KR100271336B1/ko not_active IP Right Cessation
- 1996-09-18 WO PCT/US1996/014939 patent/WO1997014100A1/en active IP Right Grant
-
1998
- 1998-11-27 HK HK98112384A patent/HK1011228A1/xx unknown
Also Published As
Publication number | Publication date |
---|---|
GB2319642A (en) | 1998-05-27 |
HK1011228A1 (en) | 1999-07-09 |
AU7112596A (en) | 1997-04-30 |
DE19681574T1 (de) | 1998-10-01 |
BR9610950A (pt) | 1999-01-12 |
US5805842A (en) | 1998-09-08 |
GB9803706D0 (en) | 1998-04-15 |
GB2319642B (en) | 2000-09-13 |
WO1997014100A1 (en) | 1997-04-17 |
KR100271336B1 (ko) | 2000-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100271336B1 (ko) | 주변구성요소 내부접속 버스상의 기능을 향상시키는 장치 및방법 | |
USRE37980E1 (en) | Bus-to-bus bridge in computer system, with fast burst memory range | |
US5870567A (en) | Delayed transaction protocol for computer system bus | |
KR100420707B1 (ko) | 가변폭버스의동시적인액세스를이용하는다중프로세서시스템에서버스중재를위한방법및시스템 | |
US6581124B1 (en) | High performance internal bus for promoting design reuse in north bridge chips | |
US5621902A (en) | Computer system having a bridge between two buses with a direct memory access controller and an alternative memory access controller | |
US6336159B1 (en) | Method and apparatus for transferring data in source-synchronous protocol and transferring signals in common clock protocol in multiple agent processing system | |
US6085274A (en) | Computer system with bridges having posted memory write buffers | |
US6636927B1 (en) | Bridge device for transferring data using master-specific prefetch sizes | |
US20010007999A1 (en) | High-throughput interface between a system memory controller and a peripheral device | |
US6356963B1 (en) | Long latency interrupt handling and input/output write posting | |
US5774681A (en) | Method and apparatus for controlling a response timing of a target ready signal on a PCI bridge | |
JP3416021B2 (ja) | ローカルdmaコントローラによってスレーブdmaエミュレーション・モードでdma書込みを実行する方法 | |
EP1032880A1 (en) | Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple agent processing system | |
US5764996A (en) | Method and apparatus for optimizing PCI interrupt binding and associated latency in extended/bridged PCI busses | |
US5951667A (en) | Method and apparatus for connecting expansion buses to a peripheral component interconnect bus | |
US6266723B1 (en) | Method and system for optimizing of peripheral component interconnect PCI bus transfers | |
US5978869A (en) | Enhanced dual speed bus computer system | |
US6052754A (en) | Centrally controlled interface scheme for promoting design reusable circuit blocks | |
US5933613A (en) | Computer system and inter-bus control circuit | |
US6425071B1 (en) | Subsystem bridge of AMBA's ASB bus to peripheral component interconnect (PCI) bus | |
US5937206A (en) | System for converting states of DMA requests into first serial information and transmitting information to first bus whenever a state change of a request | |
TWI245222B (en) | Accessing configuration registers by automatically changing an index | |
US6327636B1 (en) | Ordering for pipelined read transfers | |
US6240474B1 (en) | Pipelined read transfers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
G170 | Re-publication after modification of scope of protection [patent] | ||
FPAY | Annual fee payment |
Payment date: 20110727 Year of fee payment: 12 |
|
LAPS | Lapse due to unpaid annual fee |