KR20030072573A - 통신 버스에 접속되는 복수의 프로세싱 유닛을 구비하며그들의 각각의 기능에 의해 어드레스되는 병렬 전자 장치 - Google Patents

통신 버스에 접속되는 복수의 프로세싱 유닛을 구비하며그들의 각각의 기능에 의해 어드레스되는 병렬 전자 장치 Download PDF

Info

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
Application number
KR10-2003-7008448A
Other languages
English (en)
Inventor
라바렉에르왕
트레멜로렁
Original Assignee
와니 소시에떼아노님
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 와니 소시에떼아노님 filed Critical 와니 소시에떼아노님
Publication of KR20030072573A publication Critical patent/KR20030072573A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming 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

통신 버스에 접속되는 복수의 프로세싱 유닛을 구비하며 그들의 각각의 기능에 의해 어드레스되는 병렬 전자 장치 {A PARALLEL ELECTRONIC ARCHITECTURE COMPRISING A PLURALITY OF PROCESSING UNITS CONNECTED TO A COMMUNICATION BUS, AND ADDRESSABLE BY THEIR FUNCTIONAL CAPABILITIES}
본 명세서에서, "프로세서 유닛 (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)

  1. 통신 버스에 접속되며 각각이 하나 이상의 소정의 태스크를 자동적으로 실행하는 복수의 프로세서 유닛 (1a, 1b,…, 1n) 을 구비하는 병렬 전자 장치로서,
    각각의 프로세서 유닛은 각각의 태스크가 헤더와 관련되도록 구성되며,
    각각의 프로세서 유닛은, 기능을 특징으로 하는 헤더 및 하나 이상의 워드로 이루어진 프레임으로 구비하는 메시지를 버스상에서 전송하는 프로토콜을 사용하여, 다른 프로세서 유닛들과 통신하도록 구성되고,
    각각의 유닛은 버스상의 각각의 헤더를 디코드하고, 상기 헤더값의 기능에 따라, 버스상의 메시지를 무시하거나 또는 상기 메시지의 헤더에 관련된 태스크를 실행하도록 구성되는 것을 특징으로 하는 장치.
  2. 제 1 항에 있어서,
    프로세서 유닛은 태스크를 실행하기 전에 버스상의 메시지를 메모리로 로딩하도록 구성되는 것을 특징으로 하는 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    2 이상의 프로세서 유닛은 동일한 헤더를 갖는 것을 특징으로 하는 장치.
  4. 제 1 항 또는 제 2 항에 있어서,
    프로세서 유닛은 복수의 태스크를 실행하도록 구성되며,
    각각의 태스크는 서로 다른 헤더에 관련되는 것을 특징으로 하는 장치.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 통신 버스는 q 개의 병렬 컨덕터 (여기서, q 는 1 이상의 정수) 로 이루어진 데이터 버스이며,
    각각의 프로세서 유닛은, 상기 통신 버스의 n 개의 제 1 컨덕터에 병렬로 접속되는 n-비트 (여기서, n 은 q 이하인 정수) 의 데이터 버스를 구비하는 것을 특징으로 하는 장치.
  6. 제 9 항에 있어서,
    프로세서 유닛은 버스상으로 직렬 포맷을 전송하도록 구성되며,
    상기 직렬 포맷은 헤더상에 대응하는 제 1 워드를 버스상에 기입하며, 그 후 메시지의 프레임을 구성하는 연속적인 각각의 워드를 기입하는 것을 특징으로 하는 장치.
  7. 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
    프로세서 유닛은, 하나 이상의 개별 태스크를 실행하도록 프로그램된 프로세서 (2), 및 메모리 (4) 를 구비하고,
    디코딩 수단은 프로세서 (2) 에 대한 통신 버스상의 전송시에 헤더를 유효화하거나 무효화하도록 구성되며,
    상기 메모리는, 통신 버스에 접속되며, 상기 프로세서 (2) 에 의해 판독 모드로 접근 가능하며, 상기 프로세서 (2) 의 제어하에 통신 버스상의 메시지를 로딩하는 것을 특징으로 하는 장치.
  8. 제 7 항에 있어서,
    상기 디코딩 수단은 어드레스 포트가 통신 버스에 접속되는 유효 메모리 (3) 를 구비하며,
    통신 버스상의 각각의 헤더값은 상기 유효 메모리 (3) 의 어드레스에 대응하며,
    헤더에 대응하는 상기 유효 메모리의 각각의 어드레스는 유효 헤더 또는 무효 데이터를 저장하는 것을 특징으로 하는 장치.
  9. 제 8 항에 있어서,
    유효 메모리 (3) 의 출력 포트는 인터럽트 프로세싱에 전용되는 프로세서 (2) 의 포토에 접속되는 것을 특징으로 하는 장치.
  10. 제 1 항 내지 제 9 항 중 어느 한 항에 있어서,
    멀티마스터/멀티슬레이브 유형 및 통신 버스상의 데이터의 교환은 메시지를 전송하는 마스터 프로세서 유닛에 의해 조절되는 것을 특징으로 하는 장치.
KR10-2003-7008448A 2000-12-22 2001-12-21 통신 버스에 접속되는 복수의 프로세싱 유닛을 구비하며그들의 각각의 기능에 의해 어드레스되는 병렬 전자 장치 KR20030072573A (ko)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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