KR20030072573A - 통신 버스에 접속되는 복수의 프로세싱 유닛을 구비하며그들의 각각의 기능에 의해 어드레스되는 병렬 전자 장치 - Google Patents
통신 버스에 접속되는 복수의 프로세싱 유닛을 구비하며그들의 각각의 기능에 의해 어드레스되는 병렬 전자 장치 Download PDFInfo
- Publication number
- KR20030072573A KR20030072573A KR10-2003-7008448A KR20037008448A KR20030072573A KR 20030072573 A KR20030072573 A KR 20030072573A KR 20037008448 A KR20037008448 A KR 20037008448A KR 20030072573 A KR20030072573 A KR 20030072573A
- Authority
- KR
- South Korea
- Prior art keywords
- bus
- header
- processor unit
- processor
- message
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 22
- 238000012545 processing Methods 0.000 title claims description 4
- 230000006870 function Effects 0.000 claims description 55
- 239000004020 conductor Substances 0.000 claims description 9
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000000034 method Methods 0.000 claims 9
- 238000010586 diagram Methods 0.000 description 16
- 230000008901 benefit Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 239000011532 electronic conductor Substances 0.000 description 5
- 230000001276 controlling effect Effects 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
본 발명은, 통신 버스에 접속되며 하나 이상의 소정의 태스크를 자동적으로 실행하는 복수의 프로세서 유닛 (1a, 1b,…, 1n) 을 구비하는 병렬 전자 장치에 관한 것이다. 각각의 프로세서 유닛은 각각의 태스크가 기능키에 관련되도록 구성되며, 각각의 프로세서 유닛은, 기능적인 성능을 특징으로 하는 하나 이상의 기능키 및 하나 이상의 워드로 이루어진 프레임으로 이루어진 메시지를 버스상에서 전송하는, 프로토콜을 사용하여 다른 프로세서 유닛들과 통신하도록 구성된다. 각각의 프로세서 유닛은 버스를 통해 각각의 헤더를 디코딩하도록 구성되며, 상기 기능키의 값에 기초하여, 버스로 전송되는 메시지를 무시하거나 또는 상기 메시지 기능키 관련된 태스크를 실행하도록 구성된다.
Description
본 명세서에서, "프로세서 유닛 (processor unit)" 이라는 용어는 자동적으로 하나 이상의 독특한 태스크를 실행할 수 있는 기기를 칭한다. 그것은 하드-와이어드 (hard-wired) 프로세서 유닛이 될 수 있다. 그것은 자동적으로 하나 이상의 독특한 태스크를 실행하도록 프로그램된 프로세서를 구비하는 프로그램 가능 프로세서 (마이크로프로세서, 마이크로 제어기) 유닛인 것이 바람직하다. 프로세서 유닛은 마이크로컴퓨터, 예를 들어 주변 기기, 백플레인 마더 카드 (backplane mother card) 상에 장착된 도터 카드 (daughter card) 와 같은 프로그램 가능 기기일 수 있다. 이러한 리스트가 완전한 것은 아니다.
종래에는, 통신 버스를 통해 접속된 복수의 프로세서 유닛으로 이루어진 전자 장치에서, 각각의 프로세서 유닛은 버스에 고유한 물리적 어드레스에 의해 버스상에서 식별된다. 종래의 통신 프로토콜에서는 제 1 프로세서 유닛 (이하, 전송 유닛이라함) 과 제 2 프로세서 유닛 (이하, 타킷 유닛이라함) 간의 통신이 가능하다. 따라서, 전송 유닛이 타깃 유닛에 메시지를 전송할 때, 예를 들어 타깃 유닛에 의해 소정의 태스크의 실행을 트리거하도록 메시지를 전송할 때, 전송 유닛은 버스상으로 타깃 유닛의 어드레스를 전송한다. 각각의 프로세서는 버스상으로 전송된 어드레스를 디코드할 수 있으며, 타깃 유닛이 그 자신의 어드레스를 인식하면, 타깃 유닛은 관련 메시지를 로컬 메모리로 로드하며 프로그램된 태스크를 실행한다. 일반적으로, 타깃 유닛과 전송 유닛은 유사한 고정된 크기의 어드레스 및 데이터 버스를 갖는다.
상기 유형의 종래의 장치 및 통신 프로토콜에 있어서, 프로세서 유닛의 병렬 작업 형태는 프로세서 유닛을 어드레스하는 복잡한 처리를 필요로 하기 때문에, 복수의 프로세서 유닛이 병렬적으로 동일한 태스크 (또는 기능) 를 실행하는 멀티태스킹 시스템을 구현하기는 어렵다.
본 발명의 목적은, 이러한 단점을 경감시키기 위해 신규한 프로세서 유닛을 부가하거나 프로세서 유닛을 대체 또는 제거함으로써 변형하기 쉬운, 모듈러 설계 (modular design) 인 신규한 병렬 장치를 제안하는 것이다.
상술한 목적은 본 발명의 병렬 장치에 의해 달성되며, 병렬 장치가 통신 버스에 접속되며 각각 자동적으로 하나 이상의 소정의 태스크를 실행하는 복수의 프로세서 유닛을 구비하는 병렬 전자 장치로 이루어진다는 점은 당업자에게 자명하다.
신규한 방법으로, 각각의 프로세서 유닛은 유닛 각각의 태스크가 헤더에 관련되도록 구성되며, 각각의 프로세서 유닛은 기능을 특징으로 하는 헤더 및 하나 이상의 워드를 포함하는 프레임으로 이루어진 메시지를 버스상에서 전송하는 프로토콜을 사용하여 다른 프로세서와 통신하도록 설계되며, 각각의 유닛은 버스상의 각각의 헤더를 디코드하거나, 상기 헤더값의 기능에 따라 버스상의 메시지를 무시 또는 상기 메시지의 헤더에 관련된 태스크를 실행하도록 설계된다.
따라서, 본 발명의 장치의 동작은 소정의 타깃 프로세서 유닛의 어드레스보다 통신 버스상의 기능의 어드레스를 전송하는 새로운 원리에 기초한다. 따라서, 본 발명에 따르면, 기능적인 성능을 특징으로 하는 헤더는 기능을 인식하는 모든 접속된 프로세서 유닛을 활성화시켜, 이들 프로세서 유닛이 기능과 관련된 태스크를 병렬로 실행하도록 한다.
본 발명은 병렬 (멀티프로세서 또는 멀티태스킹) 전자 장치에 관한 것이다. 이것은 통신 버스에 접속된 복수의 프로세서 유닛을 구비하며 신규한 프로토콜을 사용하여 서로 통신하는 장치로 구성된다.
본 발명의 다른 특징 및 이점은, 비제한적인 예와 첨부한 도면을 참조하여, 본 발명의 바람직한 실시형태의 하기 설명을 통해 명확해진다.
도 1 은 16-비트 (D0 내지 D15) 병렬 버스 α에 접속되는 복수의 프로세서 유닛을 갖는 발명의 멀티마스터/멀티슬레이브 (multimaster/multislave) 장치의 예의 일반적인 블록도이다.
도 2 은 프로세서 유닛의 FIFO 메모리 및 유효 메모리의 상세한 전자회로도이다.
도 3 은 버스 α상에 헤더를 기입하는 마스터 프로세서 유닛에 관련된 메인 신호의 타이밍도이다.
도 4 은 버스 α상에 워드 프레임을 기입하는 마스터 프로세서 유닛에 관련된 메인 신호의 타이밍도이다.
도 5 은 버스 α상에 존재하는 유효 헤더를 판독하는 슬레이브 (slave) 프로세서 유닛에 관련된 메인 신호의 타이밍도이다.
도 6 은 슬레이브 프로세서 유닛이 유효 헤더를 수신한 후 동작하고 버스 α상에 워드 프레임을 기입하는 마스터 프로세서 유닛에 관련된, 메인 신호의 타이밍도이다.
도 7 은 슬레이브 프로세서 유닛이 무효 헤더를 수신한 후 동작하며, 버스 α상에 워드 프레임을 기입하는 마스터 프로세서 유닛에 관련된 메인 신호의 타이밍도이다.
도 1 의 일반적인 블록도를 참조하면, 본 발명의 장치는 병렬 데이터 버스 α에 접속된 복수의 마이크로 유닛 (1a, 1b, …, 1n) 을 구비한다.
도 1 의 장치는 멀티마스터/멀티슬레이브 장치인 것이 바람직하다. 프로세서 유닛들 (1a, 1b, …, 1n) 중 하나가 버스 α상에서 메시지를 전송하고자 하면, 그것은 버스를 제어하는 마스터 유닛이 되며, 다른 유닛들은 슬레이브 유닛들이 된다. 그러한 메시지가 버스상에서 전송될 때, 마스터 프로세서 유닛은 다른 프로세서 유닛이 버스 α를 제어하여 메시지를 전송하도록 버스를 해제(release) 한다. 이러한 동작 모드는 기입 모드에서 버스에 대한 엑세스를 조정하는 수단의 사용을 의미하며, 이러한 조정 수단은 기입 모드에서 버스에 대한 엑세스를 요청하는 각각의 프로세서 유닛 신호로부터 그들의 입력에서 수신하며, 기입 모드에서 버스에 대한 엑세스를 부여하는 각각의 프로세서 유닛 신호에 대해 그들의 출력에서 전달한다. 조정 수단은 당업자에게 자명하기 때문에, 도 1 에서 나타내지 않았으며, 본 명세서에서 더 이상 설명하지 않는다.
본 발명은 멀티마스터/멀티슬레이브 유형의 장치에 제한되지 않으며, 버스상에서 기입할 수 있는 단지 하나의 마스터 프로세서 유닛, 및 단지 버스를 판독할 수 있는 슬레이브 유닛이 되는 다른 프로세서 유닛들을 갖는 장치에 동일하게 적용될 수 있다.
주요 용어의 정의
버스 α
버스 α은 q 개의 병렬 전자 컨덕터를 구비하는 데이터 버스이며, 여기서 q 은 1 이상의 정수이다. 도 1 및 도 2 에 나타낸 예에서, 버스 α은 16-비트 버스이며, 16 개의 전자 컨덕터 (D0 내지 D15) 를 구비한다.
AG (Atom of granularity)
AG 는 버스 α상에서 통신할 수 있는 가장 작은 크기의 프로세서에 대응한다(또한, 하기에서 정의하는 용어 "컬러 (color) 참조). 일반적으로 버스 α은 1 이상의 정수인 q 개의 병렬 전자 컨덕터로 이루어지기 때문에, q 은 AG·2p가 된다. AG 의 값은 반드시 2 가 된다.
프로세서 유닛의 컬러
프로세서 유닛의 "컬러" 는 데이터 버스의 크기 (비트수로 표현) 에 의해 정의된다. 예를 들어, 도 1 에 나타낸 바와 같이, 프로세서 유닛 (1a) 은 16-비트 기기 (데이터 버스 D0 내지 D15) 이며, 프로세서 유닛 (1b) 은 4-비트 기기 (데이터 버스 D0 내지 D3) 이며, 프로세서 유닛 (1n) 은 8-비트 기기 (데이터 버스 D0 내지 D7) 이다.
이하, 단지 하나의 AG 상에서 통신할 수 있는 프로세서 유닛은 컬러 A 로, 최대 2 개의 AG 상에서 통신할 수 있는 프로세서 유닛은 컬러 B 로, 최대 4 개의 AG 상에서 통신할 수 있는 프로세서 유닛은 컬러 C 로, 최대 8 개의 AG 상에서 통신할 수 있는 프로세서 유닛은 컬러 D 로 나타내는 방법과 같이, 프로세서 유닛의 "컬러" 는 A, B, C, D 와 같이 표시된다.
워드 (Word)
워드는 소정의 시간에서 버스 α상의 값에 대응한다. 워드의 최대 크기는 버스 α의 병렬 컨덕터 수에 의해 제한된다.
메시지 (Message)
메시지는 프로세서 유닛에 의해 버스 α상에서 직렬로 기입되는 연속적인 워드에 대응한다. 메시지는 헤더 (기능키) 를 구성하는 제 1 워드, 직렬 포맷에 사용되는 하나 이상의 연속적인 워드로 이루어지는 프레임으로 이루어진다.
직렬 포맷 (Serial format; FS)
직렬 포맷은 버스상에서 전송되는 메시지를 구성하는 모든 워드로 정의된다. 서로 다른 직렬 포맷들이 버스 α상에서 사용될 수 있으며, 반드시 메시지의 제 1 워드는 헤더인 공통적인 특징을 가져야 한다.
본 발명의 제한이 아닌 표준 직렬 포맷의 일예를 하기에서 나타낸다.
기능에 따르면, 헤더에 의해 코드될 때, 다른 직렬 포맷은 상술한 표준 포맷, 및 전송을 모니터링 (헤더/센티넬 (header/sentinel)) 하는 가장 간단한 직렬 포맷으로부터 파생될 수 있다. (전송되는 데이터의 완전성에 대한 체크도 없이) 고려될 수 있는 간단한 실시형태에서, 메시지는 단지 헤더로만 구성될 수 있다.
병렬 포맷 (Parallel format; FP)
버스 α상의 전송에서, 각각의 프로세서 유닛 컬러 (A, B, C, D 등등) 는 특정 메시지 포맷과 관련이 있다.
병렬 포맷 (FP) 을 코딩하는 일예는 하기의 표에서 나타낸다.
XXXX 은 AG 가 이용가능한 값을 가질수 있음을 나타낸다. A 0 은 AG 의 모든 컨덕터가 0 에 있음을 나타낸다.
각각의 FP 의 형태
FP - A : 버스의 제 1 컨덕터의 AG 은 메시지의 프레임을 구성하는 다른 모든 워드에 대해 사용된다. 따라서, 정의에 의하면, 심지어 가장 작은 프로세서 유닛도 하나의 AG 상에서 통신할 수 있기 때문에, 버스에 접속되어 필요한 기능을 갖는 모든 프로세서 유닛들은 어드레스된다.
FP-B : 버스의 제 1 컨덕터의 2AG 은 메시지의 프레임을 구성하는 다른 모든 워드에 대해 사용된다. 정의에 의하면, 프로세서 유닛이 제 2 AG 상에 XXXX 를 디코드할 수 없기 때문에, 이것은 버스를 엑세스할 수 없는 프로세서 유닛을 제외한다. 반드시, 2 개의 AG 상에서 통신할 수 있는 기기만이 어드레스된다.
FP-C : 버스의 제 1 컨덕터의 4AG 은 메시지의 프레임을 구성하는 다른 모든워드에 대해 사용된다.
FP-D : 버스의 제 1 컨덕터의 8AG 은 메시지의 프레임을 구성하는 다른 모든 워드에 대해 사용된다.
조합된 포맷 (FP-AB, FP-AC, FP-AD, FP-ACD, 등등) 은 관련된 프로세서가 하나 이상의 AG 상에서 판독할 수 있다면 더욱 정확한 (더욱 상세한) 데이터를 제공한다.
이하, 혼합된 포맷 (FP-AB 및 FP-AD) 의 사용에 대한 예를 들어본다.
FP-AB 포맷은 하나의 AG 상에서 판독할 수 있는 프로세서 유닛, 및 2 개의 AG 상에서 판독할 수 있는 프로세서 유닛을 어드레스한다. 하나의 AG 상에서 판독하는 유닛은 기능을 실행하기에 충분한 정보를 갖고 있지만, 반드시 모든 정보를 갖고 있는 것은 아니다. 2 개의 AG 상에서 판독하는 유닛은, 제 1 AG 에서 정보를 입증하는 오차 보정 코드를 제 2 AG 상에 갖는다.
예를 들어, FP-AD 포맷은 버스 α상에서 작은 이미지를 전송하는데 유용할 수 있다. 제 1 AG 은 9 개의 화소로 이루어진 블록의 평균 그레이 (컬러) 레벨을 코드하는데 사용될 수 있다. 그럼에도 불구하고, 이러한 정보에 대한 엑세스를 갖는 프로세서 유닛은 데이터, 즉 3 배 작은 이미지로부터 이득을 얻는다. 또한, FP-D 포맷에 대한 엑세스를 갖는 프로세서 유닛은 총 8 개의 AG 의 판독으로부터 이득을 얻을 수 있으며, 다른 AG 는 블록의 화소값을 결정하기 위해 평균에 대한 차를 부가하도록 할 수 있다 (이것은 하라 웨이블렛 원칙 (Haar wavelet principle) 이라 한다).
헤더 (기능키)
본 발명의 본질적인 특징에 따르면, 헤더는 버스 α상의 메시지의 제 1 워드이며, 주로 어드레스되는 기능을 정의한다. 필수적인 것은 아니지만, 이러한 헤더가, 메시지의 병렬 포맷, 메시지의 직렬 포맷, 메시지가 발생되는 프로세서 유닛 (마스터 프로세서 유닛) 의 컬러, 및 메시지의 길이에 대한 질적인 정보를 정의하는 것이 바람직하다.
기능
"기능" 이라는 용어는 버스 α에 접속된 프로세서 유닛에 의해 자동적으로 실행될 수 있는 어떠한 기능 또는 태스크를 말한다.
기능표
각각의 프로세서 유닛은, 특정 헤더값을 갖는 프로세서 유닛에 의해 실행될 수 있는 각각의 태스크에 관련하는 기능표를 포함하도록 구성된다. 또한, 이 표는 각각의 기능에 관련된 직렬 포맷 (FS) 및 그러한 기능에 관련된 메시지의 길이를 정의하는 것이 바람직하다. 소정의 프로세서 유닛에 있어서, 이용가능한 기능수는 단지 버스 및 AG 값에 이를 수 있는 AG 의 수에 의존한다.
본 발명에 따른 통신 프로토콜에 대한 일반적인 설명
버스를 제어할 수 있으며 그에 따라서 버스 α상에 데이터를 기입하도록 부여되는 마스터 프로세서 유닛과, 버스 α상에서 단지 판독할 수 있는 다른 슬레이브 프로세서 유닛사이의 버스 α상에 메시지를 교환한다.
프로세서 유닛 (1a, 1b,…, 1n) 이 버스 α을 제어할 때, 사용되는 직렬 포맷 (FS) 에 따라서, 프로세서는 버스상에서 헤더 (기능키) 를 기입하며, 후속하여 하나 이상의 워드로 이루어진 프레임을 기입한다.
각각의 슬레이브 프로세서 유닛이 헤더를 판독하여, 각각의 슬레이브 프로세서 유닛으로 하여금 버스 α상에서 전송되는 프레임이 유닛에 어드레스 되는지 여부를 결정하도록 하며, 만약 그렇다면, 그러한 태스크를 실행해야 한다.
버스 α상에서 전송되는 헤더가 슬레이브 프로세서 유닛의 기능표에 있지 않다면, 슬레이브 프로세서 유닛은 헤더에 후속하여 버스상에서 전송되는 프레임을 무시한다. 한편, 슬레이브 프로세서 유닛은 헤더에 후속하여 버스상에서 전송되는 프레임을 판독하여, 기능표의 헤더에 관련되는 태스크를 자동적으로 실행한다.
따라서, 본 발명의 통신 프로토콜의 새로운 점은, 마스터 프로세서 유닛이 버스상에서 메시지를 기입할 때, 버스상의 소정의 슬레이브 유닛의 위치는 슬레이브 프로세서 유닛의 기능 (태스크) 보다 (물리적 또는 논리적) 어드레스에 의해 식별된다는 점이며, 상기 메시지는 버스상에서 전송되는 헤더에 관련된 기능을 갖는 모든 프로세서 유닛에 의해 병렬로 프로세스된다.
프로세서 유닛 (1a,…, 1n) 의 구조의 예
도 1 을 참조하면, 프로세서 유닛 (1a, 1b,…, 1n) 은, 마이크로프로세서 (2), 유효 메모리 (Validation memory; 3), FIFO 메모리 (4), 클록 신호 (CLKA 및 CLKD) 를 사용하는 FIFO 메모리 (4) 및 유효 메모리 (3) 의 동작을 시퀀싱하는 논리 유닛 (5), 데이터 버스 (6) (이하, 인터페이스 버스라 함), 마이크로 프로세서(2) 가 데이터를 판독 및 기입할 수 있는 내부 버스 (7), 및 마이크로프로세서 (2) 의 제어 (신호 8) 하에서 내부 버스 (7) 및 인터페이스 버스 (6; D0 내지 D15) 상에 존재하는 데이터를 기입하는 3-상태 레지스터 (6a) 를 필수적으로 구비한다.
인터페이스 버스 (6)
인터페이스 버스는 일반적으로 n 개의 병렬 전자 컨덕터로 이루어진 n-비트 데이터 버스 (D0 내지 Dn-1) 이며, 여기서 n 은 q (버스 α의 크기) 이하인 정수이며, 버스 α의 n 개의 제 1 컨덕터에 병렬로 접속된다.
마이크로프로세서 (2)/ 내부 버스 (7)
통상적으로, 마이크로프로세서는 무작위 엑세스 메모리 (RAM) 과 관련되며, RAM 은 간략화를 위해 도 1 에서 나타내지 않으며, 마이크로프로세서 (2) 는 판독 및 기입할 수 있다. RAM 은 프로세서 유닛의 기능표 및 마이크로프로세서의 동작 프로그램을 포함하며, 이하에서 상세하게 설명한다.
통상적으로, 내부 버스 (7) 는, 데이터 버스 (16-비트 프로세서 유닛 (1a) 의 경우에서 16-비트 (D_ISA0 내지 D_ISA15) 데이터 버스), 어드레스 버스 (도 1 의 일반적인 블록도에 나타내지 않으며, 2 개의 LSB 어드레스 비트는 도 3 및 도 4 의 타이밍도에서 각각 A0_ISA 및 A1_ISA 라 칭함), 및 마이크로프로세서 (2) 에 의해 파생되는 기입 신호 (Wr_ISA) 및 판독 신호 (Rd_ISA) 와 판독 신호 및 기입 신호를 디코딩함으로써 얻어지는 선택 신호 (Cs_ISA) 를 전송하는 제어 버스를 포함하는 ISA 버스이며, 이들 신호 (Wr_ISA, Rd_ISA, 및 Cs_ISA) 는 도 1 에 나타내지 않으며, 단지 도 3 및 도 4 의 타이밍도에서 나타낸다.
유효 메모리 (3)
유효 메모리 (3) 는 RAM 또는 ROM (Read Only Memory) 일 수 있다. 그러나, EEPROM 인 것이 바람직하다. 유효 메모리는 유효 헤더를 열거하는 응답표로서 기능하며, 유효 메모리 (3) 의 어드레스 부분은 버스 α에 접속된다. 유효 메모리 (3) 의 출력 부분은 인터럽트를 처리에 사용되는 마이크로프로세서 부분 (2) 에 접속된다 (신호 9).
유효 메모리 (3) 의 판독은 논리 유닛 (5) 에 의해 클록 신호 (CLKA 및 CLKD) 로부터 파생되는 신호 (5a) 에 의해 시퀀스된다.
이하의 설명에서 더욱 상세하게 나타내는 바와 같이, 유효 메모리 (3) 의 기능은 마이크로프로세서 (2) 에 대한 버스 α상에 존재하는 헤더를 유효화하거나 유효화 하지 않거나 (신호 9) 하는 것이다. 결국, 유효 메모리의 어드레스에서, 프로세서 유닛에 의해 버스 α상에서 전송될 수 있는 헤더에 대응하는 값은 헤더 유효 데이터 아이템 또는 헤더 무효 데이터 아이템으로서 마이크로프로세서 (2) 에 의해 인식되는 데이터 아이템에 저장된다. 유효 메모리 (3) 의 출력 (신호 9) 에 전송되는 데이터 아이템이 유효 데이터 아이템이면, 유효화된 헤더에 후속하여 버스 α상에 전송되는 프레임을 로드하도록 마이크로프로세서 (2) 에 알린다. 반대로, 유효 메모리로부터의 데이터 아이템이 헤더를 유효화하지 않으면, 마이크로프로세서 (2) 는 헤더에 후속하여 버스 α상에 전송되는 프레임을 무시한다.
메모리 (3) 의 각각의 어드레스에 대한 유효 또는 무효는 각각의 프로세서 유닛 (1a, 1b,…, 1n) 에 특정되며, 프로세서 유닛의 동작을 맞추는데 사용된다.
도 2 를 참조하면, 일 특정 실시형태에서, 유효 메모리 (3) 은 집적 회로 (CI1, 예를 들어 AM29F010) 를 이용한다. 이 실시형태에서, 메모리의 어드레스 부분은 버스 α의 전자 컨덕터 (D0 내지 D15) 에 병렬로 접속된 입력 (A0 내지 A15) 각각에 대응한다. 신호 "Write_Ad" 는 도 1 의 신호 (5a) 에 대응하며, 메모리의 출력부의 신호 "Rejected_Address", "IRQ#5", "IRQ#4", "IRQ#3", "IRQ#2", 및 "IRQ#P" 는 도 1 의 블록도에서 언급한 신호 9 에 대응한다. 이 실시형태에서, 메모리의 유효화는 복수의 레벨로 분포되지만, 유용한 유효화는 신호 "IRQ#P" 상에서 코드된다. 이러한 신호 ("IRQ#P") 가 로우 상태 (각각 하이 상태) 에 있으면, 버스 α상에 존재하는 헤더는 마이크로프로세서 (2) 에 대해 유효화 (각각 무효화) 된다.
FIFO 메모리 (4)
도 1 을 참조하면, FIFO 메모리 (4) 의 입력은 인터페이스 버스 (6) 를 통해 버스 α에 접속되며, FIFO 메모리의 출력은 내부 버스 (7) 의 데이터 버스에 접속된다. 마이크로프로세서 (2) 는, 기입 신호 (10) 에 의해 버스 α상에 존재하는 워드를 FIFO 메모리로 로딩하도록 명령할 수 있으며, 판독 신호 (11) 에 의해 내부 버스 (7) 의 데이터 버스상에 기입 및 FIFO 메모리 (4) 에 저장된 워드의 추출을 명령할 수 있다. FIFO 메모리 (4) 로의 워드 기입 또는 FIFO 메모리 (4) 에서의 워드 판독의 시퀀싱은 클록 신호 (CLKA 및 CLKD) 로부터 논리 유닛 (5) 에 의해 파생되는 타이밍 신호 (5b) 에 의해 동기화된다. 또한, FIFO 메모리 (4) 의 출력에서는 마이크로프로세서 (2) 에 얼마나 충진되어 있는지 나타내는 마이크로프로세서 (2) 상태 신호 (12) 를 전송한다.
도 2 을 참조하면, 하나의 특정 실시형태에서, FIFO 메모리 (4) 는 8-비트 집적 회로 (CI2 및 CI3, 예를 들어 IDT7200 집적 회로) 로부터 구성되며, 각각은 버스 α의 더 중요한 비트 (D8 내지 D15) 및 덜 중요한 비트 (D0 내지 D7) 를 저장하는데 사용된다.
이러한 실시형태에서, 도 2 의 신호 ("Empty_flag_H", "Full_flag_H", "Half_flag_H", "Empty_flag_B", "Full_flag_B", 및 "Half_flag_B") 는 도 1 의 블록도에서 언급한 상태 신호 (12) 에 대응하며, 각각의 FIFO 레지스터 (CI2 및 CI3) 의 완전 상태를 코드하는데 사용된다. 신호 "Write_FIFO_OK" 는 도 1 의 접속에서 언급한 기입 신호 (10) 에 대응한다. 신호 "Read_FIFO_B" 및 "Read_FIFO_H" 는 도 1 의 접속에서 언급한 판독 신호 (11) 에 대응한다. 신호 "Reset_FIFO" 는 FIFO 메모리를 0 으로 리셋하는 신호이며, 마이크로프로세서 (2) 에 의해 전송되며, 메모리 (4) 를 초기화하는데 사용된다.
3-상태 레지스터 (6a)
프로세서 유닛의 내부 버스 (7) 의 데이터 버스는 하나 이상의 3-상태 레지스터 (6a) 를 통해 인터페이스 버스 (6) 에 병렬로 접속된다. 예를 들어, 하나의 16-비트 내부 버스 (D_ISA0 내지 D_ISA15), 기입에 전용되는 2 개의 8-비트 레지스터가, 내부 버스 (7) 의 데이터 버스의 8 개의 덜 중요한 비트 (D_ISA0 내지 D_ISA7) 및 8 개의 더 중요한 비트 (D_ISA8 내지 D_ISA15) 각각에 대해, 인터페이스 버스 (6) 또는 버스 α상에서 병렬로 사용될 수 있다. 내부 버스 (7) 의 데이터 버스 (D_ISA0 내지 D_ISA15) 상에 존재하는 데이터의 버스 α상의 전송은 기입 신호 8 (도 1 참조) 로 마이크로프로세서에 의해 명령된다.
클록 신호 (CLKA 및 CLKD)
도 1 을 참조하면, 프로세서 유닛의 각각의 마이크로프로세서 (2) 는 개방-컬렉터 포트 (13) 를 통해 클록 버스 (모든 프로세서 유닛에 공통인 CLKA, CLKD) 에 접속되는 2 개의 클록 신호 (2a, 2b) 를 마이크로프로세서의 출력에서 전송한다. 마스터 프로세서 유닛인 프로세서 유닛이 버스 α를 제어할 때, 클록 신호 (CLKA 및 CLKD) 각각은 마스터 프로세서 유닛의 마이크로프로세서 (2) 의 클록 신호 (2a 및 2b) 에 대응하며, 다른 슬레이브 프로세서 유닛의 클록 신호 (2a 및 2b) 는 부동상태로 되거나 클록 버스 (CLKA 및 CLKD) 로부터 분리된다. 따라서, 버스 α상의 데이터 교환은 마스터 프로세서 유닛에 의해 조절되며, 슬레이브 프로세서 유닛은 그들 자신의 클록 속도 (마이크로프로세서 (2) 자신의 동작 주파수) 에 관계없이 버스 α상에 기입된 메시지의 로딩 (유효 메모리 (3) / 신호 (5a), FIFO 메모리 (4) / 신호 (5b))을 다룬다. 이것은 다른 클록 속도를 갖는 프로세서 유닛이 서로 통신할 수 있는 이점을 갖는다.
프로세서 유닛의 마이크로프로세서 (2) 의 동작
메인 프로그램
프로세서 유닛의 마이크로프로세서 (2) 는, a) FIFO 메모리 (4) 에서 메시지 (헤더 및 프레임) 를 판독, b) 기능표에서 헤더에 관련된 기능을 디코딩, 및 c) 상기 기능에 대응하는 루틴 (태스크) 를 자동적으로 실행하는 메인 프로그램 루프를실행하도록 프로그램된다.
버스 α상에 메시지 기입 (도 3 및 도 4)
단계 c) 의 루틴의 실행동안, 마이크로프로세서 (2) 가 버스 α에 접속된 하나 이상의 다른 프로세서 유닛에 의해 처리되는 기능을 활성화시키기 위해 버스 α상에 메시지를 기입하도록 요청되는 경우가 발생할 수도 있다. 이러한 경우에, 버스 α를 제어한 후, 프로세서 유닛은 기능 및 메시지의 워드 프레임을 코딩하는 헤더를 버스상에 기입하며, 그 후 버스를 해제한다. 도 3 및 도 4 은 이러한 종류의 기입 동작에서 사용되는 메인 신호에 대한 타이밍도이다.
도 3 및 도 4 에서, 신호 "Data_Isa" 는 내부 버스 (7) 의 데이터 버스, 예를 들어 프로세서 유닛 (1) 의 내부 버스 (7) 의 비트 (D_ISA0 내지 D_ISA15; 도 2) 에 대응한다. 신호 "Com_CLKA" 및 "Com_CLKB" 는 이전에 언급한 신호 (2a 및 2b) 에 대응한다. 헤더는 베이스 어드레스 + 오프셋 2 에서 내부 버스 (7) 의 데이터 버스상에 기입되며, 그 후 데이터는 베이스 어드레스 + 오프셋 3 (예를 들어, 신호 A0_ISA 및 A1_ISA) 에서 내부 버스 (7) 의 데이터 버스상에 기입된다.
버스 α상에 존재하는 메시지를 로딩 (도 5 및 도 6)
유효 헤더가 버스 α상에 존재하면, 이전에 언급된 메인 프로그램의 실행이 유효 메모리 (신호 "IRQ#P" 는 상태를 변화시킴) 로부터 전송된 유효 데이터에 의해 인터럽트된다. 그 후, 마이크로프로세서는 헤더 및 헤더에 후속하여 버스 α상에 전송된 워드 프레임을 FIFO 메모리로 로딩하기 위한 제 2 루틴을 실행하며, 대응하는 프로세서 유닛이 슬레이브 모드에서 동작한다.
도 5 은 슬레이브 프로세서 유닛에 의해 버스 α상에 유효 헤더를 기입하는 동안 사용되는 메인 신호의 타이밍도를 나타낸다. 도 6 은 마스터 프로세서 유닛에 의해 버스상에 기입된 워드 프레임 (도 6 / "Data n, Data n+1") 을 슬레이브 프로세서 유닛에 의해 버스상에서 판독하는 동안 사용되는 메인 신호의 타이밍도를 나타낸다.
도 5 을 참조하면, 슬레이브 프로세서 유닛에 대한 유효 헤더의 경우에, 유효 메모리 (3) 의 출력에서, 인터럽트 (IRQ#P) 는 순간적으로 상태를 변화시킨다. 유효 헤더는 신호 (CLKA 및 CLKD) 의 동시 동작에 의해 FIFO 메모리 (4; 신호 10 / Write_FIFO_OK) 에서 캡처된다.
도 6 을 참조하면, FIFO 메모리 (4) 에서의 데이터 캡처는 단지 신호 (CLKD) 에 의해 조절된다.
무효 헤더의 수신 / 도 7
도 7 을 참조하면, 버스 α상에 존재하는 헤더가 슬레이브 프로세서 유닛에 대해 유효하지 않다면, 인터럽트 신호 (IRQ#P) 는 상태를 변화시키지 않고, 마이크로프로세서 (2) 의 메인 프로그램은 인터럽트되지 않는다. 마이크로프로세서 (2) 는 버스 α상에 존재하는 헤더를 FIFO 메모리 (4) 로 로딩하도록 명령하지 않거나, 버스상에 헤더후의 워드 프레임을 FIFO 메모리 (4) 로 후속하여 로딩하도록 명령하지 않는다. 따라서, 슬레이브 프로세서 유닛은 버스 α상의 메시지를 무시한다.
도 1 내지 도 7 을 참조하여 설명한 마이크로프로세서 장치는 하기와 같은이점을 갖는다.
- 헤더 (기능키) 를 사용하여 프로세서 유닛을 그들의 기능에 의해 어드레스하는 원리는 프로세서 유닛으로 하여금 태스크의 병렬 실행 처리를 간략하게 만들고, 그에 따라서 프로세서 유닛의 프로그래밍을 간략하게 하며, 또한 저전력 프로세서 유닛을 사용하여 저비용의 강력한 장치를 제조한다.
- 본 장치는, 모듈러 및 변형하기 쉬운 이점이 있고; 매우 로버스트 (robust) 하며; 장치의 일반적인 동작 시스템의 실행을 방해하지 않으면서 프로세서 유닛을 부가, 제거, 및 교체함으로써 형태를 변화시킬 수 있으며; 장치가 고장났을때 전체적으로 장치의 동작을 정지시킬 필요없는 구성으로 일부 프로세서 유닛은 구성된다.
- 이러한 병렬 장치는 "보편적" 이며, 그 장치는 다른 크기의 데이터 버스 (인터페이스 버스 (6)) 를 갖는 특정 프로세서 유닛들에서 다른 프로세서 유닛들 간의 통신을 제공하며; 접속될 수 있는 프로세서 유닛의 크기에 대한 제한은 버스 α상에서 병렬인 비트수이며; 이 장치는 하나의 데이터 포맷에 제한되지 않으며, AG 의 크기와 동일하거나 초과하는 어떤 데이터 포맷으로 작업한다.
- 통신 버스 (버스 α) 상에서 데이터의 교환이 버스 (신호 CLKA 및 CLKD) 를 조절하는 마스터 프로세서 유닛에 의해 조절되기 때문에, 프로세서 유닛은 그들의 프로세서의 클록 레이트에 관계없이 서로 통신할 수 있다.
애플리케이션 예
로버트는, 프로세서 유닛에 각각 대응하는 5 개의 도터 카드, 즉 로버트의움직임을 제어하는 추진 카드, 사운드 카드, 비디오 카메라 카드, 로버트의 행동을 제어하는 행동 (컴퓨터) 카드, 및 백플레인 마더 카드가 장착되도록 제조된다.
표 1, 표 2, 표 3, 및 표 4 은 헤더와 이에 관련된 기능의 예를 나타낸다.
표 1
표 2
표 3
표 4
: 버스 α상에 헤더를 기입하는 카드의 성능.
: 버스 α상에 존재하는 헤더를 FIFO 메모리 (유효 헤더) 로 로딩하는 카드의 성능.
이 애플리케이션에서, 2 이상의 프로세서 유닛 (도터 카드) 은 동일한 헤더, 즉 기능표 (하기의 기능 "긴급 정지" 참조 : 추진 카드, 사운드 카드, 및 행동 결정 카드는 동일한 헤더값 '1' 을 갖도록 구성됨) 에서 동일한 헤더값을 갖도록 구성된다. 또한, 이 애플리케이션에서, 하나 이상의 유닛은 복수의 태스크를 실행하며, 각각의 태스크는 다른 헤더에 관련된다. 예를 들어, 기능표에서, 추진 카드 (propulsion card) 는 "긴급 정지", "전방으로 이동 요청", "후방으로 이동요청", "인류의 인식 (recognition)", "카드 존재의 식별 요청 (request for identification of cards present)" 기능 각각에 관련되어 '1', '2', '3', '6', 및 '10' 의 헤더값을 갖는다. 상기 표를 설명하기 위해, "긴급 정지" 기능에 대해 상세히 설명한다.
"긴급 정지" 기능
"긴급 정지" 기능을 코딩하는 헤더값 '1' 은 추진 카드, 사운드 카드, 및 행동 결정 카드에 대해 항상 유효하다. 추진 카드의 기능표에서, 이 카드값은 "긴급 정지" 기능에 관련되며, 이 관련된 루틴 (태스크) 은 로버트의 구동 모터를 정지시킨다.
사운드 카드의 기능표에서, 이 헤더값 '1' 은 "긴급 정지" 기능에 관련되며, 이 관련된 루틴은 카드에 의한 사운드의 방출에 관련된다. 행동 카드의 기능표에서, 이 헤더값은 "긴급 정지" 기능에 관련되며, 이 관련된 루틴은 이벤트 날짜를 저장하며, 비디오 카메라가 정지 이미지를 관찰하고 있다는 것을 확인한다. 헤더값 '1'이 버스 α상에 있을 때, 이 기능에 대응하는 각각의 카드의 루틴 (태스크) 은 병렬로 활성화된다.
반대로, "긴급 정지"를 로딩하는 헤더값 '1' 은 비디오 카메라 카드에 대해 무효이다. 이 헤더가 버스 α상에 존재하면, 비디오 카메라 카드는 대응 메시지를 무시하며, 통상적인 기능을 지속한다.
버스 α상에 헤더값 '1' 을 기입함으로써 "긴급 정지" 기능을 활성화시키는 것은 추진 카드 (모터의 과열을 검출하는 경우), 비디오 카메라 카드 (장애를 검출하는 경우), 또는 행동 결정 카드의 초기화에 영향을 미친다. "긴급 정지" 기능은 음성 카드의 초기화에서 트리거되지 않는다.
상술한 표는 당업자가 헤더를 디코드하는 유효 메모리 (3) 의 각각의 카드 및 콘텐트 (content) 에 대한 기능표를 정의하도록 한다.
도 1 에 나타낸 특정한 실시형태에서, 유효 헤더를 인식한 후, 메시지 헤더에 관련된 태스크를 실행하기 전에, 프로세서 유닛은 버스 α상의 메시지를 FIFO 메모리 (4) 로 로딩한다. 그러나, 간단한 실시형태에서, 로컬 메모리에 메시지를 로딩하지 않고 버스 α상에 헤더를 인식한 후 헤더에 관련된 태스크를 실행하는 프로세서 유닛이 고려될 수 있다. 이 경우, 프로세서 유닛이 FIFO 메모리 (4) 를 반드시 구비하는 것은 아니다. 동일하게, 다른 실시형태에서, 유효 메모리 (3) 는 버스상의 헤더를 디코딩하는 다른 수단, 예를 들어 조합 논리에서 구현되는 디코딩표로 교체될 수 있다.
Claims (10)
- 통신 버스에 접속되며 각각이 하나 이상의 소정의 태스크를 자동적으로 실행하는 복수의 프로세서 유닛 (1a, 1b,…, 1n) 을 구비하는 병렬 전자 장치로서,각각의 프로세서 유닛은 각각의 태스크가 헤더와 관련되도록 구성되며,각각의 프로세서 유닛은, 기능을 특징으로 하는 헤더 및 하나 이상의 워드로 이루어진 프레임으로 구비하는 메시지를 버스상에서 전송하는 프로토콜을 사용하여, 다른 프로세서 유닛들과 통신하도록 구성되고,각각의 유닛은 버스상의 각각의 헤더를 디코드하고, 상기 헤더값의 기능에 따라, 버스상의 메시지를 무시하거나 또는 상기 메시지의 헤더에 관련된 태스크를 실행하도록 구성되는 것을 특징으로 하는 장치.
- 제 1 항에 있어서,프로세서 유닛은 태스크를 실행하기 전에 버스상의 메시지를 메모리로 로딩하도록 구성되는 것을 특징으로 하는 장치.
- 제 1 항 또는 제 2 항에 있어서,2 이상의 프로세서 유닛은 동일한 헤더를 갖는 것을 특징으로 하는 장치.
- 제 1 항 또는 제 2 항에 있어서,프로세서 유닛은 복수의 태스크를 실행하도록 구성되며,각각의 태스크는 서로 다른 헤더에 관련되는 것을 특징으로 하는 장치.
- 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,상기 통신 버스는 q 개의 병렬 컨덕터 (여기서, q 는 1 이상의 정수) 로 이루어진 데이터 버스이며,각각의 프로세서 유닛은, 상기 통신 버스의 n 개의 제 1 컨덕터에 병렬로 접속되는 n-비트 (여기서, n 은 q 이하인 정수) 의 데이터 버스를 구비하는 것을 특징으로 하는 장치.
- 제 9 항에 있어서,프로세서 유닛은 버스상으로 직렬 포맷을 전송하도록 구성되며,상기 직렬 포맷은 헤더상에 대응하는 제 1 워드를 버스상에 기입하며, 그 후 메시지의 프레임을 구성하는 연속적인 각각의 워드를 기입하는 것을 특징으로 하는 장치.
- 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,프로세서 유닛은, 하나 이상의 개별 태스크를 실행하도록 프로그램된 프로세서 (2), 및 메모리 (4) 를 구비하고,디코딩 수단은 프로세서 (2) 에 대한 통신 버스상의 전송시에 헤더를 유효화하거나 무효화하도록 구성되며,상기 메모리는, 통신 버스에 접속되며, 상기 프로세서 (2) 에 의해 판독 모드로 접근 가능하며, 상기 프로세서 (2) 의 제어하에 통신 버스상의 메시지를 로딩하는 것을 특징으로 하는 장치.
- 제 7 항에 있어서,상기 디코딩 수단은 어드레스 포트가 통신 버스에 접속되는 유효 메모리 (3) 를 구비하며,통신 버스상의 각각의 헤더값은 상기 유효 메모리 (3) 의 어드레스에 대응하며,헤더에 대응하는 상기 유효 메모리의 각각의 어드레스는 유효 헤더 또는 무효 데이터를 저장하는 것을 특징으로 하는 장치.
- 제 8 항에 있어서,유효 메모리 (3) 의 출력 포트는 인터럽트 프로세싱에 전용되는 프로세서 (2) 의 포토에 접속되는 것을 특징으로 하는 장치.
- 제 1 항 내지 제 9 항 중 어느 한 항에 있어서,멀티마스터/멀티슬레이브 유형 및 통신 버스상의 데이터의 교환은 메시지를 전송하는 마스터 프로세서 유닛에 의해 조절되는 것을 특징으로 하는 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0016858A FR2818774B1 (fr) | 2000-12-22 | 2000-12-22 | Architecture electronique parallele comportant une pluralite d'unites de traitement connectees a un bus de communication, et adressables par leurs fonctionnalites |
FR00/16858 | 2000-12-22 | ||
PCT/FR2001/004176 WO2002052414A1 (fr) | 2000-12-22 | 2001-12-21 | Architecture electronique parallele comportant une pluralite d'unites de traitement connectees a un bus de communication, et adressables par leurs fonctionnalites |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20030072573A true KR20030072573A (ko) | 2003-09-15 |
Family
ID=8858068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2003-7008448A KR20030072573A (ko) | 2000-12-22 | 2001-12-21 | 통신 버스에 접속되는 복수의 프로세싱 유닛을 구비하며그들의 각각의 기능에 의해 어드레스되는 병렬 전자 장치 |
Country Status (10)
Country | Link |
---|---|
US (1) | US6859847B2 (ko) |
EP (1) | EP1344131A1 (ko) |
JP (1) | JP2004521412A (ko) |
KR (1) | KR20030072573A (ko) |
CN (1) | CN1230745C (ko) |
CA (1) | CA2432384A1 (ko) |
FR (1) | FR2818774B1 (ko) |
HK (1) | HK1063228A1 (ko) |
IL (1) | IL156482A0 (ko) |
WO (1) | WO2002052414A1 (ko) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004075582A1 (en) | 2003-02-21 | 2004-09-02 | Nortel Networks Limited | Data communication apparatus and method for establishing a codec-bypass connection |
US7990865B2 (en) | 2004-03-19 | 2011-08-02 | Genband Us Llc | Communicating processing capabilities along a communications path |
GB0622408D0 (en) * | 2006-11-10 | 2006-12-20 | Ibm | Device and method for detection and processing of stalled data request |
CN101622711B (zh) | 2006-12-28 | 2012-07-18 | 杰恩邦德公司 | 用于无声插入描述符(sid)转换的方法、系统 |
US8908541B2 (en) | 2009-08-04 | 2014-12-09 | Genband Us Llc | Methods, systems, and computer readable media for intelligent optimization of digital signal processor (DSP) resource utilization in a media gateway |
US9292409B2 (en) * | 2013-06-03 | 2016-03-22 | Infineon Technologies Ag | Sensor interfaces |
CN104360904A (zh) * | 2014-10-16 | 2015-02-18 | 四川长虹电器股份有限公司 | 基于事件总线的模块间消息传递机制 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8510973D0 (en) * | 1985-04-30 | 1985-06-05 | Emi Ltd | Data transmission system |
IL96808A (en) * | 1990-04-18 | 1996-03-31 | Rambus Inc | Introductory / Origin Circuit Agreed Using High-Performance Brokerage |
US5898845A (en) * | 1996-10-29 | 1999-04-27 | Intervoice Limited Partnership | Assigning and utilizing overlapping address space for multiple cards on a common computer bus |
US6157955A (en) * | 1998-06-15 | 2000-12-05 | Intel Corporation | Packet processing system including a policy engine having a classification unit |
US6185631B1 (en) * | 1998-10-14 | 2001-02-06 | International Business Machines Corporation | Program for transferring execution of certain channel functions to a control unit and having means for combining certain commands and data packets in one sequence |
US6690676B1 (en) * | 1998-11-23 | 2004-02-10 | Advanced Micro Devices, Inc. | Non-addressed packet structure connecting dedicated end points on a multi-pipe computer interconnect bus |
US6529504B1 (en) * | 1999-06-02 | 2003-03-04 | Sprint Communications Company, L.P. | Telecommunications service control point interface |
US6725281B1 (en) * | 1999-06-11 | 2004-04-20 | Microsoft Corporation | Synchronization of controlled device state using state table and eventing in data-driven remote device control model |
-
2000
- 2000-12-22 FR FR0016858A patent/FR2818774B1/fr not_active Expired - Fee Related
-
2001
- 2001-12-21 WO PCT/FR2001/004176 patent/WO2002052414A1/fr not_active Application Discontinuation
- 2001-12-21 IL IL15648201A patent/IL156482A0/xx unknown
- 2001-12-21 KR KR10-2003-7008448A patent/KR20030072573A/ko not_active Application Discontinuation
- 2001-12-21 CN CNB018220886A patent/CN1230745C/zh not_active Expired - Fee Related
- 2001-12-21 JP JP2002553647A patent/JP2004521412A/ja active Pending
- 2001-12-21 US US10/451,032 patent/US6859847B2/en not_active Expired - Fee Related
- 2001-12-21 CA CA002432384A patent/CA2432384A1/fr not_active Abandoned
- 2001-12-21 EP EP01995776A patent/EP1344131A1/fr not_active Withdrawn
-
2004
- 2004-08-09 HK HK04105915A patent/HK1063228A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
IL156482A0 (en) | 2004-01-04 |
JP2004521412A (ja) | 2004-07-15 |
CN1230745C (zh) | 2005-12-07 |
FR2818774A1 (fr) | 2002-06-28 |
HK1063228A1 (en) | 2004-12-17 |
WO2002052414A1 (fr) | 2002-07-04 |
US6859847B2 (en) | 2005-02-22 |
CN1486460A (zh) | 2004-03-31 |
FR2818774B1 (fr) | 2003-03-21 |
EP1344131A1 (fr) | 2003-09-17 |
CA2432384A1 (fr) | 2002-07-04 |
US20040059888A1 (en) | 2004-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA1196108A (en) | Special instruction processing unit for data processing system | |
US4609995A (en) | Priority controller | |
US5446869A (en) | Configuration and RAM/ROM control of PCI extension card residing on MCA adapter card | |
US5115499A (en) | Shared computer resource allocation system having apparatus for informing a requesting computer of the identity and busy/idle status of shared resources by command code | |
US4041472A (en) | Data processing internal communications system having plural time-shared intercommunication buses and inter-bus communication means | |
US6088701A (en) | Command data transport to a graphics processing device from a CPU performing write reordering operations | |
CN1085864C (zh) | 用于pci总线计算机具有有效/无效扩充rom的内插式板卡 | |
US4695944A (en) | Computer system comprising a data, address and control signal bus which comprises a left bus and a right bus | |
EP0241129A2 (en) | Addressing arrangement for a RAM buffer controller | |
EP0375946A2 (en) | I/O system of a data processing system | |
US6907480B2 (en) | Data processing apparatus and data input/output apparatus and data input/output method | |
US4760461A (en) | Binary data compression and expansion processing apparatus | |
KR20030072573A (ko) | 통신 버스에 접속되는 복수의 프로세싱 유닛을 구비하며그들의 각각의 기능에 의해 어드레스되는 병렬 전자 장치 | |
US5634013A (en) | Bus bridge address translator | |
US6052729A (en) | Event-reaction communication protocol in an object oriented processor array | |
US4380065A (en) | Communication multiplexer variable priority scheme | |
JPH07160626A (ja) | 短いワード長のメモリを長いワード長のマルチプレクスされたバスに接続する装置及び方法 | |
AU721230B2 (en) | Universal operator station module for a distributed process control system | |
US3812471A (en) | I/o device reserve system for a data processor | |
JP2509569B2 (ja) | 情報処理システム用i/o構造 | |
US6907503B2 (en) | Dual port RAM communication protocol | |
EP0640925B1 (en) | Data processing system having serial interface | |
US4405981A (en) | Communication multiplexer having an apparatus for establishing a single line priority | |
JP2695790B2 (ja) | イメージ処理システム | |
JPH03142588A (ja) | 文書認識システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |