[go: up one dir, main page]

KR970001902B1 - 프로그램 가능한 제어기 - Google Patents

프로그램 가능한 제어기 Download PDF

Info

Publication number
KR970001902B1
KR970001902B1 KR1019920012562A KR920012562A KR970001902B1 KR 970001902 B1 KR970001902 B1 KR 970001902B1 KR 1019920012562 A KR1019920012562 A KR 1019920012562A KR 920012562 A KR920012562 A KR 920012562A KR 970001902 B1 KR970001902 B1 KR 970001902B1
Authority
KR
South Korea
Prior art keywords
controller
bus
unit
units
common
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1019920012562A
Other languages
English (en)
Other versions
KR930002962A (ko
Inventor
죠지 다께라
다이 나까이
고우시 사까이
Original Assignee
마쯔시다 덴꼬 가부시끼가이샤
미요시 도시오
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP3172896A external-priority patent/JPH04363751A/ja
Priority claimed from JP3340450A external-priority patent/JPH05173986A/ja
Priority claimed from JP01251492A external-priority patent/JP3314948B2/ja
Application filed by 마쯔시다 덴꼬 가부시끼가이샤, 미요시 도시오 filed Critical 마쯔시다 덴꼬 가부시끼가이샤
Publication of KR930002962A publication Critical patent/KR930002962A/ko
Application granted granted Critical
Publication of KR970001902B1 publication Critical patent/KR970001902B1/ko
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Programmable Controllers (AREA)
  • Bus Control (AREA)

Abstract

내용 없음.

Description

프로그램 가능한 제어기
제1도는 본 발명의 양호한 실시예에 따른 멀티-CPU 프로그램 가능 제어기 시스템을 도시하는 블럭도.
제2도는 기판과, 그위체 장착된 2개의 제어기 유니트 및 8개의 I/O 인터페이스 유니트를 갖는 프로그램 가능 제어기의 개략적인 투시도.
제3도는 상기 프로그램 가능 제어기내에서 이용되는 버스 조정기의 개략도.
제4도는 상기 버스 조정기를 구성하는 버스 선택기의 논리 회로도.
제5도는 상기 버스 조정기의 동작을 도시하는 타이밍도.
제6도는 상기 제어기 시스템내에서 이용될 수 있는 다른 버스 조정기의 논리 회로도.
제7도는 제6도의 버스 조정기의 동작을 설명하기 위한 타이밍도.
제8도는 개별 CPU를 갖는 3개의 제어기 유니트를 가지고 있는 프로그램 가능 제어기 시스템에서 이용될 수 있는 다른 버스 제어기의 논리 회로도.
제9도는 제8도의 버스 조정기의 동작을 설명하기 위한 타이밍도.
제10a도는 내지 제10d도는 제1도의 상기 제어기 시스템에서 이용되는 I/O 인터페이스 유니트 할당기에 포함된 몇몇 레지스터의 도시도.
제11도는 I/O 인터페이스 유니트 할당기의 동작을 설명하기 위한 흐름도.
제12도는 제1도의 상기 제어기 시스템의 개별 내부 메모리 및 공통 메모리를 갖는 제어기 유니트를 사이의 관계를 설명하기 위한 매우 간략화된 블록도.
제13a도 및 제13b도는 각각 상기 제어기 유니트의 내부 메모리 및 공통 메모리의 내용을 설명하기 위한 개략도.
제14도는 공통 메모리를 통하여 제어기 유니트들의 내부 메모리들 사이의 데이타 전송을 설명하기 위한 개략도.
제15도 및 제16도는 상기 공통 메모리를 통하여 상기 제어기 유니트의 내무 메모리사이의 데이터 전송 동작을 설명하기 위한 흐름도.
제17a도 및 제17b도는 상기 실시예의 변형에 따라서 데이터 전송 명령의 사용에 의해 2개의 제어기 유니트의 내부 메모리 사이에서 데이타를 교환하기 위해 하나의 제어기 유니트이 내부 메모리의 데이타를 다른 제어기 유니트의 내부 메모리에 기록 및 판독하기 위한 데이터 전송 명령을 설명하기 위한 개략도.
제18a도 및 제18b도는 제17a도 및 제17b도의 데이터 전송 명령의 사용에 의해 2개의 제어기 유니트의 내부 메모리 사이에서 데이터를 교환하기 위해 제어기 유니트의 내부 메모리 및 공통 메모리 각각의 내용을 설명하기 위한 개략도.
제19도는 내지 제22도는 2개의 제어기 유니트의 내부 메모리 사이에서 데이터를 전송하는 동작을 설명하기 위한 흐름도.
* 도면의 주요부분에 대한 부호의 설명
10-1,10-2 : 제어기 유니트 20 : 공통 I/O 버스
W1,W2 : 대기 제어기 M1,M2 : 내부 메모리
40 : 기판 B1,B2 : 비퍼
50,50a : 버스 조정기 CM : 공통 메모리
51 : 내지 54 : 플립플롭
60 : 버스 선택기 63 : 논리 회로
64,65 : 플립플롭 70 : 대기 제어기
80 : I/O 인터페이스 유니트 할당기 81 : 상태 레지스터
82 : 전용 레지스터 83 : 공용 레지스터
84 : 기록 레지스터 150 : 버스 조정기
151 내지 159 : 플립플롭 161 내지 166 : 논리 회로
본 발명은 멀티-CPU프로그램 가능한 제어기에 관한 것으로, 특히 I/O 인터페이스 유니트에 각각 연결된 설비중 관련된 한 설비를 제어하기 위해 공통 I/O 버스를 통하여 복수개의 I/O 인터페이스 유니트들중 어느 하나를 액세스 하기 위해 서로에 대해서 독립적으로 동작하는 개별 CPU를 포함하는 2개 또는 그 이상의 제어기 유니트를 갖는 프로그램 가능 제어기에 관한 것이다.
이미 기술적으로 공지된 2개 또는 그 이상의 CPU를 갖는 멀티-CPU 프로그램 가능한 제어기는 주 CPU를 갖는 주 제어기 유니트(주 CPU 유니트로 지칭됨) 및 개별 종속 CPU를 갖는 한개 또는 그 이상의 종속 CPU 제어기 유니트(종속 CPU 유니트라함)를 포함하도록 제안되어 있다. 이 종래 기술의 시스템에서, 주 CPU 유니트는 각각 I/O 인터페이스 유니트에 연결된 설비 또는 제어 디바이스를 제어하기 위한 종속 CPU 유니트 및 유니트들을 거쳐 복수개의 I/O 인터페이스 유니트를 동작시키도록 관리하는 책임이 있도록 만들어진다.
예를들면, 설비를 작동시킬 때, 주 CPU 유니트는 공통 메모리를 통하여 종CPU 유니트 및 유니트들로부터 데이터를 모아 이렇게 모아진 데이터를 근거로하여 I/O 인터페이스 유니트를 동작시키도록 한다. 한편, 주 및 종속 CPU 유니트에 대해 데이터-입력을 형성할 때, 주 CPU 유니트는 I/O 인터페이스 유니트를 통하여 개별 설비로부터 각각 데이터를 모으고 공통 메모리를 통하여 종속 CPU 유니트에 데이타를 분배하는 책임도 진다. 따라서, 이 종래 시스템에서, 상기 종속 CPU 유니트는 주 CPU 유니트에 무관하게 I/O 인터페이스 유니트 또는 관련 설비를 제어할 수 없다.
결과적으로, 종래 시스템은 다음의 결점을 갖는다.
1) 주 CPU 유니트는 I/O 인터페이스 유니트의 제어를 위해 책임이 가증되도록 요구된다.
2) 종속 CPU는 주 CPU가 멈추었을때는 디스에이블된다.
더욱이, 개별 CPU를 갖는 2개의 제어기 다른 프로그램 가능한 제어기를 제공하는 것이 가능하며, 이때 상기 2개의 제어기 유니트는 공통 I/O 버스를 통하여 그것에 연결된 복수개의 I/O 인터페이스 유니트 및 대응 설비 또는 제어 디바이스를 제어하기 위한 주 CPU 유니트 및 종속 CPU 유니트로서 교대로 동작한다. 그러나, 이 시스템에서 종속 CPU 유니트는 그 대신에 공통 I/O 버스를 통하여 대응하는 I/O 인터페이스 유니트를 인도받고 액세스하기 위하여 I/O 인터페이스 유니트에 액세스하는 주 CPU 유니트는 모니터 하도록 요구된다. 이것은 CPU 유니트의 상태를 소프트웨어 모니터하는 것으로만 가능하므로 상기 CPU 유니트 사이의 조정에서 손실 시간이 있게 된다.
상기 문제점 및 결점은 본 발명의 멀티-CPU 프로그램 가능한 제어기에서는 제거된다. 본 발명에 따른 멀티-CPU 프로그램 가능 제어기는 I/O 인터페이스 유니트에 연결된 복수개의 장비 또는 제어 디바이스 중 하나를 제어하기 위해 공통 I/O 버스를 통하여 복수개의 I/O 인터페이스 유니트중 하나에 액세스하도록 동작한다. 이 시스템은 한 버스 사이클내에 관련된 설비를 제어하기 위해 I/O 유니트중 하나에 액세스하기 위한 액세스 신호를 각 제어기 유니트가 발생시키도록 서로에 대해서 독립하여 특정 프로그램에 따라 동작하는 개별 CPU를 갖는 한쌍의 제어기 유니트를 구비하다. 상기 제어기 유니트, I/O 버스 및 I/O 유니트는 단일 기판위에 장착되어 있다. 상기 기판은 샘플링 클럭을 가지며 이 샘플링 클럭의 타이밍을 근거에 의거하여 액세스 신호가 2개이 제어기 유니트로부터 한 버스 사이클내에 수신될 때 어느 제어기 유니트가 가장 먼저 액서스 신호를 발생시키는지를 결정하기 위해 2개의 제어기 유니트로부터 액세스 신호를 관리하고, 그에 따라 2개의 제어기 유니트중 하나에 다른 것에 의하여 우선순위를 주고 이 하나의 제어기 유니트를 선행 제어기 유니트(prior controller unit) 및 나머지 제어기 유니트를 후속 제어기 유니트(posterior controller unit)로 가정하는 버스 조정기를 포함하고 있다. 상기 버스 조정기는 선행 제어기 유니트가 공통 I/O 버스를 사용하여 I/O 인터페이스 유니트중 대응하는 한 유니트에 액세스할 수 있도록 하는 반면, 선행 제어기 유니트가 당해 I/O 인터페이스 유니트를 계속하여 액세스하고 있는 버스 사이클내에 당해 I/O 인터페이스 유니트를 계속하여 액세스하고 있는 버스 사이클내에 후속 제어기 유니트가 액세스 신호를 발생시키는 한, 후속 제어기 유니트를 저지하기 위하여 하드웨어 대기 신호(hardware-wait signal)를 부여하고, 후속 제어기 유니트는 선행 제어기 유니트로부터 대응하는 I/O 인터페이스 유니트로의 액세스의 완료에 따라 공통 I/O 버스를 사용하여 대응하는 I/O 인터페이스 유니트에 액세스할 수 있게 한다.
이러한 시스템 구성으로, 2개의 제어기 유니트는 제어기 유니트중 하나가 다른 제어기 유니트와 상호 동작하도록 요구하지 않고 단지 버스 조정기에 의해 결정된 시퀀스 순서를 따른다는 의미에서 사실상 서로에 독립하여 동작할 수 있다.
따라서, 본 발명의 제1의 목적은 개별 CPU를 갖는 제어기 유니트가 제어기 유니트의 각각에서 나머지 제어기 유니트를 모니터 하기 위해 필요할지도 므르는 어떤 특정 사용자 프로그램을 요구하지 않고 서로 독립적으로 대응 I/O 인터페이스 유니트를 제어할 수 있는 독특한 구성을 갖는 멀티-CPU 프로그램 가능한 제어기를 제공하는 것이다.
양호한 실시예에 있어서, 상기 버스 조정기는 위상이 다른 샘플링 클럭에 의해 정의된 다른 타이밍에서 각각 2개의 제어기 유니트로부터 인입하는 액세스 신호를 판단하기 위해 다른 위상을 갖는 2개의 샘플링 클럭을 발생시키도록 제안되어 있다. 이러한 구성으로, 상기 버스 조정기가 한 버스 사이클내에 2개의 제어기 유니트로부터 동시에 액세스 신호를 인식할 수 없으며, 그로므로, 이들 2개의 제어기 유니트 사이에서 우선 순위를 판단하는데 있어 이들 사이에서의 충돌을 성공적으로 피할 수는 없다.
그러므로, 본 발명의 다른 목적은 상기 2개의 제어기 유니트 사이의 충돌을 용이하고도 효과적으로 피할수 있고 그들 사이의 우선순위를 판정할 수 있는 멀티-CPU 프로그램 가능 제어기를 제공하는 것이다.
상기 기판은 그 내부에 제어기 유니트를 각각 받아들이기 위해 각각 제1 및 제2슬롯으로 형성되고 또한 I/O 인터페이스 유니트 할당기가 갖추어져 있다. 상기 할당기는 제1 및 제2슬롯 각각을 두개의 제어기 유니트와 상호 관련시키기 위한 수단 및 상기 I/O 인터페이스 유니트의 각각에 대한 공용 및 전용 데이터를 설명하기 위한 수단을 포함한다.
공용 데이타(common use data)는, 대응하는 I/O 인터페이스 유니트가 2개의 제어기 유니트에 의해 공통으로 제어됨을 의미하고, 전용 데이터(exclusive use date)는, 대응하는 I/O 인터페이스 유니트가 슬롯 중 특정한 한 슬롯과 관련하여 상호 관련된 제어기 유니트중 하나에 의해 독점적으로 제어됨을 의마한다. I/O 인터페이스 유니트 할당기를 포함하여, I/O 인터페이스 유니트를 상기 제어기 유니트에 대해 인터로킹(interlocking) 하기 위하여 사용자 프로그램 또는 소프트웨어에 의지할 필요가 없다. 그 대신, 이러한 인터로킹은 시스템이 비교적 복잡하 사용자 정의 소프트웨어 또는 프로그램으로부터 자유로우 수 있도록 하드웨어 조직에 의해서 간단히 이루어진다. 더욱이, I/O 인터페이스 유니트 및 제어기 유니트 사이의 이러한 하드웨어 인터로킹 때문에, 하나의 제어기 유니트에 독점저긍로 인터로킹된 I/O 인터페이스 유니트는 에러 신호, 예를들면, 다른 I/O 인터페이스 유니트 및 유니트들로 향해야 될 초기화 신호를 수신하는 것을 잘막을 수 없게 되어 I/O 인터페이스 유니트는 안전하게 제어될 수 있다.
그러므로, 본 발명의 또 다른 목적은 개별 I/O 인터페이스 유니트가 하드웨어 조직에서 I/O 인터페이스 유니트의 효과적으로 안전한 제어를 위해 2개의 제어기 유니트에 인터로킹 될 수 있는 멀티-CPU 프로그램 가능 제어기를 제공하는 것이다.
상기 제어기 유니트 사이에 데이터를 교환하기 위하여, 본 시스템은 제어기 유니트의 외부에 별개로 제공되어 제어기 유니트내의 내부 메모리에 각각 상호 연결되는 듀얼-포트(dual-port) RAM 형태의 공통 메모리를 이용한다. 하나의 조직에서, 각 제어기 유니트의 내부 메모리는 제어기 유니트의 제어하에서 듀얼-포토 RAM을 통하여 제어기 유니트 사이에서 교환될 데이터를 저장하기 위한 특정 교환 데이터 영역을 갖도록 구성되며, 그에 따라 각각의 제어기 유니트의 내부 메모리내의 특정 교환 데이터 영역에 저장된 데이터가 공통 메모리, 즉 듀얼-포토 RAM을 통하여 듀얼-포토 RAM의 제어를 위해 어떤 추가된 사용자 정의 프로그램을 전혀 요구하지 않고도 다른 제어기 유니트의 내부 메모리내의 교환 데이터 영역으로 자공적으로 전송될 수 있다.
대안으로, 각 제어기 유니트는 듀얼-포토 RAM을 통하여 내부 메모리 사이의 당해 위치에 의해 지정된 데이터를 전송하기 위해 각 제어기 유니트의 내부 메모리에 지정 위치를 나타내는 명령을 가지도록 제안된다. 또한, 이 구성에서, 이러한 명령은 듀얼-포토 RAM의 제어를 위해 추가의 특정 사용자 프로그램을 전혀 요구하지 않고 상기 I/O 인터페이스 유니트의 제어를 위해 사용자 정의 프로그램에 따라서 내부적으로 실행되도록 만들어질 수 있다.
그러므로, 본 발명의 또다른 목적은 듀얼-포토 RAM의 제어를 위한 사용자 정의 프로그램의 사용을 제거함으로써 상기 I/O 인터페이스 유니트의 제어를 위해 사용자 프로그램을 단순화 할 수 있는 멀티-CPU 프로그램 가능 제어기를 제공하는 것이다.
본 발명은 각각 CPU를 포함하는 3개 또는 그 이상의 제어기 유니트가 공통 I/O 버스를 통하여 복수개의 I/O 인터페이스 유니트를 제어하기 위해 협력하는 시스템 구성에 대한 다른 유용한 특성을 포함한다.
이하, 첨부된 도면을 참조하여 본원 명세서를 보다 상세히 기술하겠다.
제1도에 대해 언급하건데, 본 발명의 양호한 실시예의 따른 멀티-CPU 프로그램 기능 제어기는 각각 CPU, 제어기(W1, W2), 내부 메모리(M1, M2), 및 버퍼(B1, B2)를 포함하는 한쌍의 제어기 유니트(10-1 및 10-2)를 포함한다. 상기 제어기 유니트(10-1 및 10-2)는 공통 I/O 버스(20)를 통하여 각각 I/O 인터페이스 유니트(30-0 내지 30-7)에 연결된 (wired) 설비 또는 제어 디바이스를 제어하기 위하여 복수개의 I/O 인터페이스 유니트(30-1 내지 30-7)에 연결되어 있다. 상기 제어기 유니트(10-1 및 10-2)에 의한 제어는 개별 CPU에 대한 특정 프로그램에 따라 사실상 서로에서 독립적으로 이루러진다. 상기 제어기 유니트(10-1 및 10-2)는 제2도에 도시한 바와 같이, I/O 인터페이스 유니트(30-1 내지 30-7) 및 제어기 시스템의 에너지 공급을 위한 전원 유니트(41)와 함께 기판(40)상에 장착된 모듈러 패키지(modular package)로 제공된다. 상기 기판(40)은 제어기 유니트(10-1 및 10-2)의 내부 메모리(M1 및 M2) 사이에서 데이타를 교환하기 위해 제어기 유니트의 외부에 배치된 공통 메모리(CM)가 갖추어져 있다. 상기 기판(40)은 또한 버스 조정기(50) 및 I/O 인터페이스 유니트 할당기(80)가 갖추어져 있다.
상기 I/O 인터페이스 유니트 할당기(80)는 이후에 상세하게 기술되는 각각의 I/O 인터페이스 유니트가 상기 제어기 유니트중 하나에 의해 독점적으로 또는 상기 2개의 제어기 유니트에 의해 공통으로 제어되도록 설정되도록 상기 개별 I/O 인터페이스 유니트(30-0 내지 30-7)를 제어기 유니트(10-1 및 10-2)와 상기 호 연관시키도록 제공되어 있다. 각각의 CPU는 당해 I/O 인터페이스 유니트의 제어의 실행동안 또는 상기 실행기간 동안 대기 제어기(W1, W2)에서 결정된 한 버스 사이클 동안 버스 액새스 신호를 버퍼(B1 및 B2)중 대응하는 하나와 국부 I/O 버스(1-1, 1-2)를 통하여 버스 조정기(50)로 발생시킨다. 상기 버스 조정기(50)는 상기 제어기 유니트(10-1 및 10-2)중 하나가 다른 제어기 유니트가 버스 액세스 신호를 발생시키는 동안 또는 I/O 인터페이스 유니트 및 유니트들의 제어 동작을 실행하는 다른 제어기 유니트의 버스 사이클 동안 버스 액세스 신호를 발생시키는 것을 인식하였을 때, 상기 I/O 인터페이스 유니트(30-0 내지 30-7)를 제어함에 있어서 상기 제어기 유니트(10-1 및 10-2)또는 그것의 CPU 사이의 우선 순위를 결정하도록 제공된다.
제3도에 도시한 바와 같이, 상기 버스 조정기(50)는 버스 선택기(60) 및 대기 제어기(70)로 구성되어 있다. 상기 버스 선택기(60)는 상기 제어기 유니트(10-1 및 10-2)의 CPU로부터의 각각의 버스 액세스 신호(I/O CS1 및 I/O CS2)를 관리하여 상기 제어기 유니트(10-1 및 10-2) 사이의 우선 순위를 결정하고 상기 제어기 유니트(10-1 및 10-2)가 공통 I/O 버스(20)를 통하여 대응하는 I/O 인터페이스 유니트를 액세스 할 수 있는 것을 나타내는 버스 선택 신호(BUSEN1 및 BUSEN2)를 제공한다. 상기 대기 제어기(70)가 제어기 유니트(10-1 및 10-2) 각각의 대기 제어기(W1 및 W2)로 대기 신호(WAIT1 및 WAIT2)를 출력하기 위해 제공된다. 상기 대기 신호(WAIT1 및 WAIT2)는 공통 I/O 버스(20)로 상기 제어기 유니트(10-1 및 10-2)의 액세스를 연기시키는 원인이 되고, 2개의 제어기 유니트중 단지 하나만이 I/O 버스(20)를 액세스할 수 있는 반면, 상기 버스 액세스 신호(I/O CS1 및 I/O CS2)가 상기 제어기 유니트(10-1 또는 10-2)의 한 버스 사이클내에서 인식될때 다른 제어기 유니트가 I/O 버스(20)에 액세스하지 못하도록 하기 위하여 공통 I/O 버스(20) 액세스시 상기 제어기 유니트의 CPU에 대해 충분한 시간 프레임을 주기 위해서 상기 버스 선택기(60)로부터 버스 선택 신호(BUSEN1 및 BUSEN2) 각각과 협력하게 된다.
상기 버스 조정기(50)에는 상기 조정기(50)에서의 우선순위, 대기 신호의 폭 및 상기 제어기 유니트의 CPU가 I/O 버스(20)에 액세스할 수 있는 시간 프레임의 결정을 위한 근거를 제공하는 샘플링 클럭(CLK)과 함께 버스 액세스 신호(I/O CS1 및 I/O CS2)의 입력을 각각 수신하는 한쌍의 D-형 플립플롭, 우선순위 결정을 위한 논리 회로(63), 및 상기 버스 선택 신호(BUSEN1 및 BUSEN2)를 각각 출력하는 한쌍의 D-형 프로그램(64 및 65)을 포함하는 버스 선택기(60)의 개략적인 회로도이다. 상기 논리 회로(63)는 이하에 열거된 논리표를 만족하도록 고안된다.
상기 버스 선택기(60)에서, 상기 샘플링 클럭(CLK)은 버스 액세스 신호(I/O CS1 와 I/O CS2)의 우선순위 결정에 대한 근거를 제공한다. 즉, 샘플링 클럭(CLK)의 선행 사이클에 수신되는 I/OCS1 및 I/OCS2중 어느 하나는 CLK의 후속 사이클에 수신되는 다른 것에 비해 우선 순위가 주어진다. I/OCS1 과 I/OCS2 모두가 CLK이 한 사이클내에 수신될때, 상기 버스 선택기(60)는 상기 신호의 동시 발생에 응답하여 제어기 유니트 중 하나, 이 경우에선, 다른 것에 비해 우선순위가 주어지도록 앞서 선택된 선행 유니트로서 유니트(10-1)중 하나를 선택한다. 이와 같은 동시 발생에 따른 상기 표에 있어서 조건 번호 4. 그러므로, 이 조건에서, 버스 선택기(60)는 제어기 유니트(10-1)로 하여금 대응하는 I/O 인터페이스 유니트 또는 유니트들을 공통 I/O 버스(20)를 통하여 액세스할 수 있게 해 주는 버스 선택 신호(BUSEN1)를 발생시킨다. 조건번호 4, 5 및 6은 제어기 유니트(10-1 및 10-2)중 대응하는 하나로부터 버스 액세스 신호((I/OCS1 과 I/OCS2)중 하나가 다른 제어기 유니트의 버스 사이클동안 수신되는 충돌(contention)을 표시한다. 이와 같은 조건에서, 대기 제어기(70)는 다른 제어기 유니트, 즉 선행 제어기 유니트가 공통 I/O 버스(20)로 그것의 액세스를 완성하기 위한 자체 버스 사이클을 완성할 때까지 공동 I/O버스(20)에 대한 액세스를 연기 하기 위해 상기 제어기 유니트(10-1과 10-2)중 대응하는 한 유니트에 대해 대기신호(WAIT1 및 WAIT2)를 발생하도록 응답한다. 선행 제어기 유니트에 의한 제어의 완성시, 다른 제어기 유니트는 대응하는 I/O 인터페이스 유니트 또는 유니트들을 제어하기 위해 공통 I/O 버스(20)에 액세스 할 수 있도록 인에이블된다.
버스 선택 신호(BUSEN1 및 BUSEN2)는 다른 관계가 만족될때 버스 선택기(60)로부터 발생된다.
BUSEN1=(I/O CS1 ∩ I/O CS2) No. 2
∪(I/O CS1 ∩ I/O CS2) ∩ (BUSEN1T-1∩ BUSEN1T-1) No. 4
∪(I/O CS1 ∩ I/O CS2) ∩ (BUSEN1T-1) No. 5
BUSEN2=(I/O CS1 ∪ I/O CS2) No. 3
∪(I/O CS1 ∩ I/O CS2) ∩ (BUSEN1T-1) No. 6
상기 버스 조정기(50)의 대기 제어기(70)는 대기 신호 (WAIT1 및 WAIT2)를 발생시키도록 동작한다. 상기 대기 신호(WAIT1 및 WAIT2)가, 상기 제어기 유니트(10-1 및 10-2)에서의 대기 제어기(11-1 및 11-2)가 상기 대기 제어기(11-1 및 11-2)에 대한 대기 신호(WAIT1 및 WAIT2)가 고 레벨에 있을 때 공통 I/O 버스(20)에 액세스하기 위한 개별 CPU의 버스 사이클을 결정할 수 있는 권한이 부여되며 버스 조정기(50)의 대기 제어기(70)는 대기 신호(WAIT1 및 WAIT2)가 저레벨[WAIT1 및 WAIT2]에 있을 때 각 제어기 유니트(10-1과 10-2)의 CPU 버스 사이클을 결정하기 위해 인수한다. 이와 관련하여, WAIT1 및 WAIT2는 I/OCS1과 I/OCS2 사이에 충돌이 인식되는 결과로서 낮아진다 것을 주지해야 한다. 상기 버스 액세스 신호[WAIT1 및 WAIT2]의 저 레벨 주기내, 상기 버스 조정기(50)는 BUSEN1 또는 BUSEN2에 의해 상기 버스 조정(50)의 측면에서 인식되는 다른 제어기 유니트의 CPU가 I/O 버스에 액세스하는 것을 완료할 때 까지 나중에 버스 액세스 신호를 발생시키는 제어기 유니트(10-1 및 10-2)중 하나에서 상기 CPU를 제지시키도록 응답한다. 그후, 버스 제어기(50)는 I/O 버스에의 액세스를 완료하기에 충분한 대기 제어기(70)에 의해 결정되는 어떤 주기동안 계속 저레벨(WAIT1 및 WAIT2)을 발생시킨다. 다음에, 상기 버스 조정기(50)는 대기 제어기(11-1 및 11-2)가 인수하도록 다시 고레벨(WAIT1 및 WAIT2)을 발생시키도록 반응한다.
대기 신호(WAIT1 및 WAIT2)는 다음 관계가 만족될 때 발생된다.
WAIT1=I/OCS1 ∩ I/OCS2 ∪ BUSEN2T-1
WAIT2=(I/OCS1 ∩ I/OCS2) ∩ (BUSEN1T-1 ∩ BUSEN2T-1)
∪ (BUSEN1T-1)
버스 조정기(50)의 동작을 이제부터 연속적인 다음 세 단계를 포함하는 하나의 예를 도시하는 제5도의 타이밍도와 관련하여 설명된다.
1) 제어기 유니트(10-1)가 다른 유니트(10-2)로부터 I/OCS2의 부재시 버스 액세스 신호(I/OCDI)를 발생시키는 제1단계.[제1단계]
2 ) 제어기 유니트(10-2)가 I/OCS2가 액티브인 동안 I/OCS1을 발생시키는 상기 다른 제어 유니트(10-1)에 이어 I/OCS2을 발생시키는 제2단계.
3) 상기 제어 유니트(10-2)가 I/OCS1이 액티브인 동안 I/OCS1을 발생시키는 상기 제어 유니트(10-1)에 의해 이어 I/OCS2를 발생시키는 제3단계.
상기 제어기중 단지 한 제어기가 액세싱 하도록 요청되는 제1단계동안, 버스 조정기(50)가 WAIT1과 WAIT2를 고레벨로 유지시키면서 BUSEN1과 BUSEN2를 발생시키며, 그에 따라 단지 제어기 유니트(10-1)만이 내부 대기 제어기(11-1)에 의해 결정되는 하나의 버스 사이클 내에서 관련된 I/O 인터페이스 유니트 또는 유니트들에 대한 제어를 완료하기 위해 I/O버스를 액세스할 수 있게 된다. I/O 버스로 상기 제어기 유니트(10-2)를 지속적으로 액세스하도록 I/OCS2가 여전히 액트브인 동안 I/OCS1이 발생되는 제2단계에서, 상기 버스 조정기(50)는 I/OCS1과 I/OCS2 사이의 충돌을 인식하고 제어기 유니트(10-2)를 선행 유니트로 그리고 다른 제어기 유니트(10-1)를 후속 유니트로서 결정한다. 이것에 발생할 때, 상기 버스 조정기(50)는 후속 유니트(10-1)에 대기 신호(WAIT1)를 발생시켜, 선행 유니트(10-2)에 의해 I/O 버스가 해제될때까지 I/O 버스에 액세스하는 것을 금지한다. 상기 I/O 버스가 해제되자 마자, 상기 조정기(50)는 BUSEN2 대신 BUSEN1을 발생시키며, 그것에 의해 제어기 유니트(10-1)는 I/O 버스로 액세스 할 수 있게 된다. 이것이 발생하자 마자 버스 조정기(50) 또는 그것의 대기 제어기(70)는 충분한 시간 동안 상기 버스 조정기(50)의 제어하에 저레벨 상태(WAIT1)를 연장하기 위하여, WANT1이 일정 시간 동안 유지되게하며, 그에 따라 상기 제어 유니트(10-1)가 I/O 버스(20)에 액세스할 수 있도록 허용되는 상기 시간 프레임이 부여된다. 이같은 위미에서, 상기 충돌에 의해 초래되며, 상기 제어기 유니트(10-1)에 부여되는 WAIT1의 저레벨 상태는 기능적으로 제5도에 표시된 것과 같이 CPU STALL 간격과 액세스 인에이블 ACENAL 간격 순서로 나뉘어질 수 있다. 상기 CPU STALL 간격은 I/OCS1의 초기로부터 약간의 지연과 함께 시작하는 I/O 버스(20)에의 액세스를 완료하는 선행 제어기 유니트(10-2)의 타이밍 즉, BUSEN1을 발생시키는 타이밍에서 사실상 종료한다. 액세스 인에이블(ACENA1) 간격은 액세스 대기 CPU STALL의 종료로부터 시작하여 관련된 I/O 인터페이스 유니트 또는 유니트들에 대한 제어를 완료하기 이해 제어기 유니트(10-1)의 CPU가 I/O 버스(20)에 액세스하도록 허용되는 시간 간격을 정의 하기에 충분한 시간 간격 동안 계속된다. 상기 제3단계에서, 상기 버스 조정기(50)는 반대로 동작하지만 제2단계에서와 같은 방법으로 CPU STALL과 액세스 인에이브 ACENA2 간격으로 구성된 WAIT2 주기를 공급하도록 동작한다.
대안으로, 상기 두 개의 제어기 유니트(10-1 및 10-2)로부터의 버스 액세스 신호(I/OCS1 및 I/OCS2)를 동시 인식하거나 또는 동시 충돌하는 것을 피하기 위해 대신에 다른 버스 조정기(50A)가 사용될 수 있다. 블럭 회로도와 타이밍도를 나타내는 제6도 및 제7도에 도시된 것과 같이, 상기 버스 조정기(50A)는 각 클럭(φ1 및 φ2)의 상승 시간(the rise time)에 I/OCS1 및 I/OCS2가 인식되도록 서로다른 위상을 가진 두 샘플링 클럭(φ1 및 φ2)에 의해서 공급된다. I/OCS1 과 I/OCS2는 플립-플롭(51 및 52)에서 각각 랫치(latch)된다. 다른 쌍의 플립-플롭(53 및 54)은 I/OCS1을 랫치하는 플립-플롭(51)의 타이밍에서 플립-플롭(53)이 플립-플롭(52)의 출력을 랫칭하고, I/OCS2을 랫치하는 플립-플롭(52)의 타이밍에서 플립-플롭(54)이 플립-플롭(51)의 출력을 랫치하는 방법으로 I/OCS1 과 I/OCS2 사이의 우선순위를 결정하도록 포함된다. 또한 대기 신호(WAIT1 및 WAIT2)는 물론 버스 액세스 신호(BUSEN1 및 BUSEN2)를 발생시키는 논리 회로(55)도 포함된다.
상기 버스 조정기(50A)의 동작을 제7도의 타이밍에 도시된다. 제7도에 도시된 것과 같이, 상기 조정기(50A)는 I/OCS1 및 I/OCS2가 클릭(φ1과 φ2)에 의해서 각각 정의된 다른 타이밍에서 인식되는 것을 제외하면 상술된 조정기(50)와 같은 똑같은 방법으로 동작한다. 그러므로, 중복 설명을 불필요한 것으로 생각된다.
비록 상기 실시예가 각각 개개의 CPU를 포함하는 한싸의 제어기 유니트를 갖는 이중CPU 시스템과 관련하여 서술되지만, 본 발명은 여기에 한정되지 않고 서로 독립적으로 관련된 I/O 인터페이스 유니트를 제어하기 위해 각각의 개개의 CPU를 포함하는 세 개의 제어기 유니트를 갖는 세개의 CPU 시스템에 균등하게 적용될 수 있다. 상기 시스템은 제6도의 버스 조정기(52A)에 도시된 것과 같은 동시 충돌을 피하기 위해 세개의 제어기 유니트로부터의 I/OCS1M I/OCS2 및 I/OCS3를 인식하도록 세개의 샘플링 클럭(φ1, φ2 및 φ3)이 사용되는 제9도의 변형된 버스 조정기(150)를 포함한다. 이 목적을 위하여, 상기 버스 조정기(150)는 I/OCS1, I/OCS2 및 I/OCS3 사이에서의 우선 순위 결정을 위한 플립-플롭(151 내지 159)과 또한 대기신호는(WAIT1, WAIT2 및 WAIT3)는 물론 버스 액세스 신호(BUSEN1, BUSEN2 및 BUSEN3)를 발생시키기 위한 논리 회로(161 내지 166)로 구성되어 잇다. 제9도의 타이밍에 도시된 것과 같이, 상기 버스 조정기(150)의 동작을 상술된 버스 조정기(50A)의 원리와 동일하다. 그리하여, 추가적인 설명은 필요하지 않는 것을 생각된다.
이제, 각각의 I/O 인터페이스 유니트가 제어기 유니트중 하나에 의해서만 도점적으로 또는 두 개의 제어기 유니트(10-1 및 10-2)에 의해서 공통으로 제어되도록 세트되게 하기 위해여 개별 I/O 인터페이스 유니트(30-0 내지 30-7)를 제어기 유니트(10-1과 10-2)와 상호 연관시키도록 시스템내에 포함되는 I/O 인터페이스 유니트 할당기(80)에 대해 논의된다. 이 목적을 위하여, 상기 할당기(80)는 8-비트 구조의 레지스터(81 내지 84)를 포함한다.
레지스터(81)는 제어기 유니트(10-1 및 10-2)가 그들 스스로 기판(40) 상의 위치에 대해, 즉 기판(40)내의 번호 1과 번호 2 슬롯중 어느것으로 어떤 유니트가 장착될 것인가를 식별할 수 있다. 레지스터(81)의 제1비트(D0)는 1이 입력되었을 때 번호 1 슬롯으로 그리고 0이 입력되었을 때 번호 2슬롯으로 제어기 유니트중 어느 것이 장착될 것인가를 표시하도록 사용된다. 즉, 상기 시스템은 번호 1 슬롯에 장착될때 제어기 유니트를 유니트(10-1)로서 그리고 번호 2 슬롯에 장착될때 유니트(10-2)로서 식별할 수 있다. 네 번째 비트(D3)는 추가적인 제어기 유니트가 장착되는지 혹은 아닌지를 보기 위해 사용된다. 즉, 비트(D3)내의 1은 추가적인 유니트의 존재를 나타내고 반면에 비트(D3)내의 0은 그것이 존재하지 않음을 나타낸다. 나머지 비트는 동작기 불가능하거나 동작이 없는 명령을 나타낸다.
레지스터(82)는 제어기 유니트(10-1 및 10-2)중 하나에 의해서만 독점적으로 제어되는 것으로 개별I/O 인터페이스 유니트를 세트하기 위하여 I/O 인터페이스 유니트(30-0 내지 30-7)에 대응하는 D0 내지 D7비트를 갖는 전용 레지스터로 제공된다. 즉, 비트내로 1이 입력될 때, 해당 I/O 인터페이스 유니트는 제어기ㅐ 유니트(10-1)에 의해서 독점적으로 제어될 예정이며, 한편 비트내로 0이 입력될땐 다른 제어기 유니트(10-2)에 의해 독점적으로 제어될 예정이다.
비록 제어기 유니트가 비-지정된 I/O 인터페이스 유니트중 어느 것을 제어할지라도 상기로부터 제어기 유니트로의 입력을 위해서는 물론 상기 I/O 인터페이스 유니트의 출력을 위해 아무런 데이터 갱신도 이루어지지 않는다.
레지스터(83)는 두 개의 제어기 유니트(10-1 및 10-2)에 의해 공통을 제어되는 것으로 개별 I/O 인터페이스 유니트를 세트하기 위해 I/O 인터페이스 유니트(30-0 내지 30-7)에 해당하는 D0 내지 D7 비트를 갖는 공용(a common-use) 레지스터로서 제공된다. 소정의 비트내로 1이 입력될 때, 해당 I/O 인터페이스 유니트는 두개의 제어기 유니트에 의해서 공통으로 제어되도록 세트된다. 이 세팅은 전용 레지스터(82)에서의 세팅을 무효로 한다.
그렇지 않으며, 0가 주어진 비트에 들어가고, 대응하는 I/O 인터페이스 유니트가 전용 레지스터(82)에서의 세팅에 따라서 독점접으로 제어되도록 세트된다.
레지스터(84)는, 당해 레지스터(84)의 D0 비트에 1이 들어갔을 때, 상기 제어기 유니트(10-1 또는 10-2)중 하나가 나머지 제어기 유니트가 기판(40)상에 장착되는지의 여부를 검사하도록 그것의 제1비트 D0가 상태 레지스터(81)의 D3 비트에 연결되는 기록 레지스터로써 제공된다. 따라서, D0 비트에서 1은 상기 검사를 위해 부가적인 CPU 검색 플래그로서 동작한다.
제11도는 이와 같이 구성된 I/O 인터페이스 유니트 할당기(80)의 동작을 위한 흐름도를 도시한다. 본 시스템의 에너지 공급에 따라서, 상기 CPU 검색 플래그는 본 시스템이 하나의 추가적인 제어기 유니트를 포함하는지의 여부를 검사할 수 있도록 기록 레지스터(84)에 세트된다[단계 1]. 그 다음 상태 레지스터(81)의 내용이 판독되고[단계 2], 상기 할당기(80)가 슬롯 변호에 의거하여 기판(40)상에서 제어기 유니트 혹은 유니트들의 위치를 표시하는 것에 의거하고 있다. 그 다음, 두개 또는 단일 제어기 유니트가 장착되는지[단계4]의 여부가 판정된다. 만약 단지 단일 제어기 유니트가 단계 4에서 기판(40)상에 확인 된다면, 그 다음 루틴은 단계 6으로 건너뛴다.
그렇지 않으면, 두 개의 제어기 유니트가 기판(40)상에 확인되고, 상기 할당기(80)는 번호 1슬롯에서 제어기 유니트(10-1)가 처리되어 지는지의 여부를 검사한다[단계 5]. 만약 아니라면, 루틴은 본 시스템의 다른 초기 설정 시퀀스로 진행된다. 만약 제어기 유니트(10-1)가 처리되는 것으로 인식될 경우, 상기 할당기(80)는 상기 I/O 인터페이스 유니트(30-0 내지 제30-7)중 어느 것이 당해 I/O 인터페이스 유니트(30-0 내지 30-7)중 어느 것이 상기 두 개의 제어기 유니트(10-1 및 10-2)에 의해 공동으로 제어되는지를 나타내는(단계 7)공용 레지스터로 기록되는 공용 데이터에 의해 이러지는 상기 제어기 유니트중 하나에 의해 제어되거나 독접적으로 제어되는 것을 나타내는 전용 데이터를 전용 레지스터(82)에 기록하도록 허용하며 [단계 6], 그후 상기 루틴은 다른 초기 설정 시퀀스로 진행한다.
상기 흐름도에 도시된 바와 같이, 두개의 제어기 유니트가 기판상에 인지될 때 번호 1 슬롯에서 제어기 유니트(10-1)는 전용 및 공용 데이터를 레지스터(82 및 83)에 기록하는 것을 책임질 수 있다. 한편, 반면에 단지 하나의 제어기 유니트가 인지될때, 기판상의 제어기 유니트는 데이터를 레지스터로 기록하기 위해 신뢰할 수 있게 만들어진다. 상기 시퀀스의 완료에 의해, 상기 제어기 유니트(10-1 및 10-2)는 서로 관련된 I/O 인터페이스 유니트로부터 자유니트유롭게 제어할 수 있다.
이제, 제12도 내지 제14도를 참조로하여 공통 메모리(CM)의 사용에 의해 제어기 유니트(10-1 및 10-2)의 내부 메모리(M1 및 M2) 사이의 데이터 전송에 의해 논의된다. 상기 공통 메모리(CM)는 당해 이중-포트가 내부 메모리(M1 및 M2)에 각각 연결되는 듀얼-포트 RAM이다. 데이터 전송의 일예는 내부 메모리(M1 및 M2) 각각이 공통 메모리(CM)를 통해 교환 될 데이터를 저장하기 위해 그 안에 특정 교환 데이터 영역을 갖도록 형성 되는 데이터 영역 의존 방법이다. 즉, 제13A도에 개략적으로 도시된 바와 같이, 각각의 내부 메모리(M1 및 M2)는 제어기 유니트(10-1)에 의해 각각 기록된 어드레스의 시작과 워드의 수에 대해 전송-목적 데이타(A 및 D)를 공통으로 저장하고, 전송될 데이터에 부가하여 상기 제어기 유니트(10-2)에 의해 각각 기록된 워드의 수와 어드레스의 시작에 대한 전송-목적지 데이터(C 및 D)를 전송하도록 구성된다. 상기 전송-목적 데이타(A 내지 B)는 사용자 정의 프로그램으로부터 별도로 처리하는 내부 시스템으로써 제어기 유니트의 CPU의 제어하에 CM을 통해 M1 및 M2 사이에 실제 데이터와 함께 전송된다. 상기 공통 메모리(CM)는 전송될 실제 데이터에 더하여 데이터가 각각 제어기 유니트(10-1 및 10-2)의 내부 메모리(M1 및 M2)로부터 공통 메모리(CM)로 전송되는지 여부를 나타내는 기록 플래그(F1 및 F2)를 저장하도록 구성된다. 1이 F1 및 F2에 할당될 때, 이것은 데이터가 공통 메모리(CM)로 전송되어진 것을 나타낸다.
그렇지 않을 경우, 혹은 F1 및 F2에서 0는 데이터가 전송되지 않는 것을 나타낸다. 상기 데이터 전송은 제15도 및 제16도의 흐름도에 따라 수행된다. 제15도는 제어기 유니트(10-1)의 내부 메모리(M1)와 공통 메모리(CM) 사이의 데이터 전송을 도시하고, 이때 내부 메모리(M1) 내의 영역(X1)에서의 데이터 제14도는 개략적으로 도시된 바와 같이 공통 메모리(CM)에서 영역(X2)으로 전송되고, CM의 영역(X5)에서의 데이터는 M1의 영역(X6)으로 전송된다. 제16도는 제어기 유니트(10-2)의 내부 메모리(M2)와 공통 메모리(CM) 사이의 데이터 전송을 도시하며, 이때 상기 공통 메모리(CM)의 영역(X2)에서의 데이터는 내부 메모리(M2)의 영역(X3)으로 전송되고 M2의 영역(X4)에서 데이터는 CM의 영역(X5)으로 전송된다.
교대로, 그것은 사용자 정의 프로그램에 사용된 명령에 대응하여 실행된 특정 명령의 사용에 의해 공통 메모리(CM)를 통해 내부 메모리(M1 및 M2) 사이에서의 데이터 전송을 가능하게 한다. 상기 명령은 각각 제17A도 및 제17B도에 개략적을 도시된 기록 명령과 판독 명령을 포함한다. 제17a도의 기록 명령은 제어기 유니트중 하나의 내부 메모리로부터 나머지의 내부 메모리로 데이터를 전송하는 것을 책임진다.
즉, 기록 명려이 제어기 유니트(10-1)의 CPU를 위해 프로그램될 때 데이터 전송은 M1에서부터 M2로 이루어지고, 그것이 제어기 유니트(10-2)의 CPU를 위해 프로그램될때, 데이터 전송은 M2으로부터 M1으로 이우러진다. 제18b도의 판독 명령은 M1 및 M2 사이에서 비슷한 그러나 방향은 반대인 데이터 전송은 책임진다. 도면에 있어서 W 및 R은 각각의 실행 조건을 위한 명령을 나타낸다.
제17a도에 도시된 바와 같이, 사이 기록 명령은 연산 코드(FNO), 내부 메모리(M1 또는 M2)에서 소오스 어드레스의 시작을 나타내는 소오스 어드레스(SRC), M1 또는 M2로부터 전송될 데이터의 워드수(WRD), 및 내부 메모리(M1 또는 M2)에서 목적 어드레스의 시작을 나타내는 목적 어드레스(DST)를 구비한다.
상기 판독 명령은, 제17b도에 도시된 바와 같이, 연산 코드(FN1), 내부 메모리(M1 및 M2)에서 소오스 어드레스의 시작을 나타내는 소오스 어드레스(SRC), M1 또는 M2로부터 전송될 데이터의 워드수(WRD), 및 내부 메모리(M1 및 M2)에서의 목적 어드레스의 시작을 나타내는 목적 어드레스(DST)를 구비한다.
상기 기록 및 판독 명령은 제18a도에 개략적을 도시된 바와 같이 내부 메모리(M1 및 M2)에 저장된다. 공통 메모리(CM)는 데이터가 내부 메모리(M1 및 M2) 각각으로부터 공통 메모리(CM)로 지정 어드레스(DST)와 함께 기록 또는 전송되는지를 나타내는 기록 플래그(FW1 및 FW2), 데이터를 공통 메모리(CM)로부터 메모리(M1 및 M2) 각각으로 판독 및 전송하도록 요구되어 있다는 것을 나타내기 위한 판독 플래그(FR1 및 FR2)와, 소오스 어드레스(SRC)와, 워드의 수(WRD), 및 M1 및 M2 각각을 위한 목적 어드레스(DST)를 저장하도록 대응적으로 구성된다. 1이 FW1 및 FW2에 주어질때, 이것은 데이터가 공통 메모리(CM)에 기록되거나 전송되는 것을 나타낸다. 반면에, 또는 0가 주어질 때, 상기 FW1 및 FW2는 데이터가 CM으로 기록되지 않거나 전송되지 않는 것을 나타낸다. 마찬가지로, FR1 및 FR2는 데이터가 1이 주어질 때 CM으로부터 M1 및 M2로 각각 판독되고, 0가 주어질 때 판독되지 않은 것을 나타낸다.
FW1 또는 FW2가 공통 메모리(CM)에서 1로 주어질 때, 내부 메모리(M2 또는 M1) 데이터가 예정되는 대응 제어기 유니트(10-2 또는 10-1)의 CPU, 즉 예정된 제어기 유니트(10-2 또는 10-1)의 CPU는 데이터를 판독하고, 자체 내부 메모리(M2 또는 M1)에 기록하며, 그후 상기 CPU는 플래그(FW1 또는 FW2)를 0으로 리세트한다. 한편, FR1 또는 FR2가 CM에서 1로 주어질 때, 데이터를 나머지 제어기 유니트(10-1 또는 10-2)의 CPU에 의해 판독된 공통 메모리(CM)로 전송하도록 요구되는 해당 제어기 유니트(10-2 또는 10-1)의 CPU는 소오스 어드레스(SRC)와 워드의 수(WRD)를 판독하고, 자체 내부 메모리(M2 또는 M1)로부터 공통 메모리(CM)로 위와 같이 지정된 데이터를 전송하며, 그후 상기 CPU는 FR1 또는 FR1를 0으로 리세틀한다.
상기 동작은 제19도 내지 제22도의 흐름도에 도시된다. 제19도 및 제20도는 예를들면 제어기 유니트(10-1)의 내부 메모리(M1)로부터 나머지 제어기 유니트(10-2)의 내부 메모리(M2)로 공통 메모리(CM)를 통해 데아타를 전송하기 위한 기록 명령의 실행을 도시한다. 즉, 상기 기록 명은 제어기 유니트(10-1)의 CPU가 기정된 소오스 어드레스(S1) 및 워드수(WRD)에 대응하는 데이터를 내부 메모리(M1)로부터 공통 메모리(CM)로 전송하고, FW1을 1로 리세트함에 이어 지정 어드레스(DST)를 공통 메모리로 기록하는 단계를 포함하는 제19도의 흐름도에 따라 실행된다. 그후, 상기 시퀀스는 제어기 유니트(10-2)의 예정된 CPU가 데이터와 함께 목적 어드레스(DST)를 공통 메모리(CM)로부터 판독하고, FW1을 0로 리세트함에 따라 지정된 어드레스(DST)에서 데이터를 내부 메모리(M2)로 전송하는 단계를 포함하는 제20도의 흐름도에 따라 진행된다. 제21도 및 제22도는 예를들면 공통 메모리(CM)를 통해 내부 메모리(M2)으로부터 내부 메모리(M1)로 데이터를 판독하기 위해 판독 명령의 실행을 도시한다. 상기 판독 명령은 제어기 유니트(10-1)의 CPU가 내부 메모리(M2)로부터 판독될 데이터를 나타내는 소오스 어드레스(SRC) 및 워드의 수(WRD)를 공통 메모리(CM)로 기록하는 단계를 포함하는 제21도의 흐름도를 따라 먼저 실행되고, FR=1로 세트하며, 제어기 유니트(10-2)의 CPU가 내부 메모리(M2)로부터 공통 메모리(CM)로 이와 같이 지정된 데이터를 전송하도록 응답할때까지 대기하고, FR=0로 리세트되며 그후 상기 CPU는 공통 메모리(CM)로부터 내부 메모리(M1)로 위와 같이 지정된 데이터를 판독한다. 제22도는 제어기 유니트(10-2)의 CPU가, FR=1에 응답하여, 제어기 유니트(10-1)의 CPU에 의해 요구된 소오스 어드레스(SRC)와 워드의수(WRD)를 판독하도록 작동하고, SRC 및 WRD에 의해 지정된 데이터를 내부 메모리(M2)로부터 공통 메모리(CM)로 전송하는 단계를 도시한다.
비록 제19도 내지 제22도의 흐름도가 제어기 유니트(10-1)의 CPU로부터 기록 및 판독 명령을 도시한다 하더라도, 나머지 제어기 유니트(10-2)의 CPU로부터의 이들 명령은 같은 방법으로 실행될 수 있다.

Claims (7)

  1. I/O 인터페이스 유니트중 각각 관련된 한 유니트에 연결된 다수의 설비중 하나를 제어하기 위해 공통 I/O 버스를 통해 다수의 I/O 인터페이스 유니트 중 하나를 액세스하도록 동작하는 멀티-CPU 프로그램 가능 제어기에 있어서, 한 버스 사이클내에서 자체 제어를 위해 상기 공통 I/O 버스를 통해 상기 I/O 인터페이스 유니트중 하나를 선택적으로 액세싱하기 위한 액세스 신호를 발생시키기 위한 개별적인 CPU를 포함하며, 각각 서로 독립적으로 특징으로 프로그램에 따라 동작하는 한쌍의 제어기 수단, 상기 I/O 인터페이스 유니트 뿐만 아니라 상기 공통 I/O 버스와 함께 상기 제어기 수단을 장착한 기판 수단, 상기 기판 수단상에 제공되어 단일 샘플링 클럭을 발생시키고, 상기 제어기 수단으로부터의 2개의 액세스 신호가 상기 한 버스 사이클에서 동일한 타이밍에서 각각 검출될 때 상기 제어기 수단 쌍중 하나의 우선순위를 다른 하나의 우선 순위에 대해 소정의 우선 순위에 따라 제공할지 여부를 결정하고 상기 제어기 수단 쌍중 상기 한 제어기를 선행 제어기로 하고 다른 제어기 수단을 후속 제어기 수단으로 하도록 상기 제어기 수단쌍으로부터 상기 액세스 신호를 관리하고, 그렇지 않을 경우, 상기 제어기 수단 쌍 중 하나가 상기 제어기 수단 쌍으로부터 2개의 액세스 신호가 각각 상기 한 버스 사이클 내에서 각각 검출될 때, 상기 제어기 수단 쌍중 어떤 제어기 수단이 가장 먼저 액세스 신호를 발생시키는지 판정하므로써 상기 제어기 수단 쌍중 어느 하나에 대한 우선순위를 다른 하나의 제어기 수단에 대해 제공하며, 다른 한 제어기 수단을 다음 우선순위가 제공된 제2제어기로 하는 버스 조정기 수단을 구비하며, 상기 버스 조정 수단은 상기 제1제어 수단으로 하여금 상기 공통 I/O 버스를 사용하게 하고 상기 I/O 인터페이스 유니트중 대응하는 한 유니트를 액세스하게 하는 반면, 상기 제2제어기 수단이 상기 제1제어기수단이 대응하는 I/O 인터페이스 유니트를 액세싱하고 상기 제1제어기 수단이 상기 I/O 인터페이스 유니트중 대응하는 한 인터페이스를 여전히 액세싱하는 동안 상기 버스 사이클내에서 계속해서 액세스 신호를 발생시키도록 상기 제2제어기 수단을 정지시키기 위해 하드웨어-대기 발생시키도록 상기 제2제어기 수단을 정지시키기 위해 하드웨어-대기 신호를 발생시키며, 제2제어기로 하여금 상기 제1제어기 수단으로부터 상기 대응하는 I/O 인터페이스 유니트로의 액세스 완성시 상기 I/O 인터페이스 유니트중 대응하는 한 인터페이스를 액세싱 하게 하고 상기 공통 I/O 버스를 사용하게 하는 것을 특징으로 하는 다중-CPU 프로그램 가능 제어기.
  2. I/O인터페이스 유니트중 각각 관련된 한 유니트에 연결된 다수의 설비중 하나를 제어하기 위해 공통 I/O 버스를 통해 다수의 I/O 인터페이스 유니트중 하나를 액세스하도록 동작하는 멀티-CPU 프로그램 가능 제어기에 있어서, 한 버스 사이클내에서 자체 제어를 위해 상기 공통 I/O 버스를 통해 상기 I/O 인터페이스 유니트중 하나를 선택적으로 액세싱하기 위한 액세스 신호를 발생시키기 위해 개별적인 CPU를 포함하며, 각각 서로 독립적으로 특정 프로그램에 따라 동작하는 한쌍의 제어기 수단, 상기 I/O 인터페이스 유니트 뿐만 아니라 상기 공통 I/O 버스와 함께 상기 제어기 수단을 장착한 기판 수단, 상기 기판 수단상에 제공되어 상이한 타이밍을 정의하는 서로 다른 위상을 가진 2개의 샘플링 클릭을 발생시키며, 상기 제어기 수단으로부터의 2개의 액세스 신호가 상기 한 버스 사이클에서 각각 검출될 때 상기 2개의 제어기 유니트중 어떤 유니트가 상기 액세스 신호를 가장 먼저 발생시키는지 판정하기 위해 상기 서로 다른 타이밍에서 각각 상기 제어기 수단쌍으로부터 액세스 신호를 수신하며, 그에 따라 상기 2개의 제어기 수단 중 하나에 대한 우선순위를 다른 하나에 대해 제공하며, 상기한 제어기 수단을 우선순위가 제공된 재1제어기 수단으로 하고 다른 한 제어기 수단을 그다음 우선 순위가 주어진 제2제어기 수단으로 하게 되는 버스 조정기 수단을 구비하며, 상기 버스 조정 수단은 상기 제1제어 수단으로 하여금 상기 공통 I/O 버스를 사용하게 하고 상기 I/O 인터페이스 유니트중 대응하는 한 유니트를 액세스하게 하는 반면, 상기 제2제어기 수단이 상기 제1제어기 수단이 대응하는 I/O 인터페이스 유니트를 액세싱하고 상기 제1제어기 수단이 상기 I/O 인터페이스 유니트중 대응하는 한 인터페이스를 여전히 액세싱하는 동안 상기 버스 사이클내에서 계속해서 액세스 신호를 발생시키도록 상기 제2제어기 수단을 정지시키기 위해 하드웨어-대기 신호를 발생시키며, 제2제어기로 하여금 상기 제1제어기 수단으로부터 상기 대응하는 I/O 인터페이스 유니트로의 액세스 완성시 상기 I/O 인터페이스 유니트중 대응하는 한 인터페이스를 액세싱하게 하고 상기 공통 I/O 버스를 사용하게 하는 것을 특징으로 하는 것을 특징으로 하는 다중-CPU 프로그램 가능 제어기.
  3. 제1항에 있어서, 상기 기판은 상기 제어기 유니트 내부에 수신하기 위한 제1 및 제2슬롯을 각각 가지며, 상기 기판에는 상기 두 제어기 유니트와 제1 및 제2슬롯을 각각 상관시키는 수단과, 상기 I/O 인터페이스 유니트 각각에 대한 공용 및 전용 데이터를 설정하기 위한 수단을 포함하는 I/O 인터페이스 유니트 할당기가 제공되고, 상기 공용 데이터는 해당하는 I/O 인터페이스 유니트가 상기 두 제어기 유니트에 의해 공통으로 제어되는지를 나타내며, 상기 전용 데이타는 상기 슬롯중 특정 솔롯과 상관 관계있는 상기 제어기 유니트중 한 유니트에 의해 해당하는 I/O 인터페이스 유니트가 독점적으로 제어되는지를 나타내는 것을 특징으로 하는 다중-CPU 프로그램 가능 제어기.
  4. 제3항에 있어서, 상기 제어기 수단은 당해 제어기 수단 사이에서 데이터를 교환하기 위해 상기 제어기 수단의 외부에 제공된 한 공통 메모리를 통해 각각 상호 접속된 내부 메모리를 포함하고, 상기 공통 메모리는 더블-포토 RAM 형태로 되어 있으며, 상기 내부 메모리 각각은 상기 제어기 유니트의 제어에 따라 상기 더블-포토 RAM을 통해 상기 제어기 유니트 사이에서 교환될 데이터를 기억하기 위한 특정 교환 데이터 영역을 내부에 포함하는 것을 특징으로 다중-CPU 프로그램 가능 제어기.
  5. 제3항에 있어서, 상기 제어기 수단은 당해 제어기 수단 사이에서 데이터를 교환하기 위해 상기 제어기 수단의 외부에 제공된 한 공통 메모리를 통해 각각 상호 접속된 내부 메모리를 포함하고, 상기 공통 메모리를 더블-포토 RAM 형태로 되어 있으며, 상기 제어기 수단 각각은 상기 더블-포토 RAM을 통해 상기 내부 메모리 사에이서의 상기 특정 위치에 의해 지정된 데이터를 전송하기 위한 상기 내부 메모리의 각각의 명령 표시 지정 위치를 갖는 다중-CPU 프로그램 가능한 제어기.
  6. I/O 인터페이스 유니트중 각각 관련된 것에 각각 연결된 다수의 장비중 하나를 제어하기 위해 공통 I/O 버스를 통해 다수의 I/O 인터페이스 유니트중 하나를 액세스하도록 동작하는 멀티-CPU 프로그램 가능한 제어기에 있어서, 상기 장비중 관련된 한 장비를 제어하기 위한 상기 공통 I/O 버스를 통해 상기 I/O 인터페이스 유니트중 하나를 선택적으로 액세스하기 위한 액세스 신호를 발생하기 위해 서로 독립적으로 특정 프로그램에 따라 동작하는 각각의 CPU를 각각 포함하는 한쌍의 제어기 유니트, 상기 I/O 인터페이스 유니트 뿐만 아니라 상기 공통 I/O 버스와 함께 상기 제어기 유니트를 장착한 기판, 상이한 타이밍을 한정하는 상이한 위상을 제외한 동일한 버스 사이클의 다수의 샘플링 클러을 발생하기 위한 상기 기판 상에 제공된 버스 조정 수단으로, 두 액게스 신호가 상기 한 버스 사이클내에 인식될 때, 상기 제어 유니트로부터 각각 발생된 상기 액세스 신호의 발생 순위를 판단하기 위해 상기 상이한 타이밍에서 각각 상기 두 제어기 유니트로부터 액세스 신호를 수신하여, 상기 제어기 유니트에 우선 순위를 제공하는 버스 조정 수단과, 제1우선순위 제어기 유니트가 상기 공통 I/O 버스를 이용하도록 하여, 상기 제1우선순위 제어기 유니트가 해당하는 I/O 인터페이스 유니트르로 액세스하는 버스 사이클내의 액세스 신호를 상기 다른 제어기 유니트가 발생하는 동안 상기 다른 제어기 유니트를 정지시키기 위해 하드웨어-대기 신호를 제공하면서 상기 I/O 인터페이스 유니트에 해당하는 한 유니트를 액세스하고, 상기 다른 제어기 유니트중 하나 상기 공통 I/O 버스를 이용하도록 하여 상기 제1우선순위 제어기 유니트로부터 해당하는 I/O 인터페이스 유니트까지 액세스의 왼료에 따라 상기 I/O 인터페이스 유니트에 해당하는 하나를 액세스하는 상기 버스 조정 수단을 포함하는 프로그램 가능한 제어기.
  7. 제2항에 있어서, 상기 기판은 상기 제어기 유니트 내부에 수신하기 위한 제1 및 제2슬롯을 각각 가지며, 상기 기판에는 상기 두 제어기 유니트와 제1 및 제2슬롯을 각각 상관시키는 수단과, 상기 I/O 인터페이스 유니트 각각에 대한 공용 및 전용 데이터를 설정하기 위한 수단을 포함하는 I/O 인터페이스 유니트 할당기가 제공되고, 상기 공용 데이터를 해당하는 I/O 인터페이스 유니트가 상기 두 제어가 유니트에 의해 공통으로 제어되는지를 나타내며, 상기 전용 데이터는 상기 슬롯중 특정 슬롯과 상관 관계있는 상기 제어기 유니트중 한 유니트에 의해 해당하는 I/O 인터페이스 유니트가 독점적으로 제어되는지를 나타내는 것을 특징으로 하는 다중-CPU 프로그램 가능 제어기.
KR1019920012562A 1991-07-15 1992-07-15 프로그램 가능한 제어기 Expired - Fee Related KR970001902B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP91-172896 1991-07-15
JP3172896A JPH04363751A (ja) 1991-02-25 1991-07-15 マルチcpuシステム
JP3340450A JPH05173986A (ja) 1991-12-24 1991-12-24 プログラマブルコントローラ
JP91-340450 1991-12-24
JP92-12514 1992-01-28
JP01251492A JP3314948B2 (ja) 1992-01-28 1992-01-28 マルチcpu構成のプログラマブルコントローラにおけるデータ交換方式

Publications (2)

Publication Number Publication Date
KR930002962A KR930002962A (ko) 1993-02-23
KR970001902B1 true KR970001902B1 (ko) 1997-02-18

Family

ID=27279860

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019920012562A Expired - Fee Related KR970001902B1 (ko) 1991-07-15 1992-07-15 프로그램 가능한 제어기

Country Status (3)

Country Link
US (1) US5432911A (ko)
EP (1) EP0523627A3 (ko)
KR (1) KR970001902B1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2098791T3 (es) * 1992-11-04 1997-05-01 Siemens Ag Disposicion con varios usuarios activos y pasivos del bus.
US5669009A (en) * 1994-06-30 1997-09-16 Hughes Electronics Signal processing array
US6434638B1 (en) 1994-12-09 2002-08-13 International Business Machines Corporation Arbitration protocol for peer-to-peer communication in synchronous systems
KR0155269B1 (ko) * 1995-01-16 1998-11-16 김광호 버스 중재방법 및 그 장치
US5687091A (en) * 1995-06-08 1997-11-11 Automatic Control Technologies Integrated arrangement for monitoring without interrupt process flow by novel sensor arrangement with unique data processing system
US5874931A (en) * 1996-06-28 1999-02-23 Microchip Technology Incorporated Microcontroller with dual port ram for LCD display and sharing of slave ports
JP2001508214A (ja) * 1997-10-29 2001-06-19 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ブロック編制データ転送同期化方法及びシステム
US6523076B1 (en) * 1999-11-08 2003-02-18 International Business Machines Corporation Method and apparatus for synchronizing multiple bus arbiters on separate chips to give simultaneous grants for the purpose of breaking livelocks
BR0309856B1 (pt) * 2002-05-08 2012-03-20 método para produzir um aço elétrico não-orientado
KR20050023699A (ko) * 2003-09-02 2005-03-10 삼성전자주식회사 복수의 cpu 시스템에서 디바이스를 공유하는 방법 및장치
TWI277877B (en) * 2005-03-08 2007-04-01 Via Tech Inc Method and related apparatus for monitoring system bus
US8706262B2 (en) 2011-03-15 2014-04-22 Omron Corporation CPU unit of PLC, system program for PLC, and recording medium storing system program for PLC
US9563590B2 (en) * 2014-03-17 2017-02-07 Nxp Usa, Inc. Devices with arbitrated interface busses, and methods of their operation

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3959775A (en) * 1974-08-05 1976-05-25 Gte Automatic Electric Laboratories Incorporated Multiprocessing system implemented with microprocessors
US4442504A (en) * 1981-03-09 1984-04-10 Allen-Bradley Company Modular programmable controller
US4549273A (en) * 1982-12-10 1985-10-22 Ael Microtel Limited Memory access control circuit
US5019966A (en) * 1986-09-01 1991-05-28 Nec Corporation Dual processors using busy signal for controlling transfer for predetermined length data when receiving processor is processing previously received data
US4858101A (en) * 1987-08-26 1989-08-15 Allen-Bradley Company, Inc. Programmable controller with parallel processors
US4937777A (en) * 1987-10-07 1990-06-26 Allen-Bradley Company, Inc. Programmable controller with multiple task processors
US5003463A (en) * 1988-06-30 1991-03-26 Wang Laboratories, Inc. Interface controller with first and second buffer storage area for receiving and transmitting data between I/O bus and high speed system bus
IT1229667B (it) * 1989-04-24 1991-09-06 Bull Hn Information Syst Sistema di elaborazione dati con arbitratore duale di accesso a bus di sistema.
US5301330A (en) * 1990-10-12 1994-04-05 Advanced Micro Devices, Inc. Contention handling apparatus for generating user busy signal by logically summing wait output of next higher priority user and access requests of higher priority users

Also Published As

Publication number Publication date
KR930002962A (ko) 1993-02-23
US5432911A (en) 1995-07-11
EP0523627A2 (en) 1993-01-20
EP0523627A3 (en) 1993-08-25

Similar Documents

Publication Publication Date Title
US6014729A (en) Shared memory arbitration apparatus and method
EP0318221B1 (en) Controlling responding by users of an intercommunications bus
US6081851A (en) Method and apparatus for programming a remote DMA engine residing on a first bus from a destination residing on a second bus
EP0450233B1 (en) Bus access for digital computer system
US4449183A (en) Arbitration scheme for a multiported shared functional device for use in multiprocessing systems
US6247100B1 (en) Method and system for transmitting address commands in a multiprocessor system
US4737932A (en) Processor
KR970001902B1 (ko) 프로그램 가능한 제어기
EP0872799A2 (en) PCI bus System
US4417303A (en) Multi-processor data communication bus structure
KR100708096B1 (ko) 버스 시스템 및 그 실행 순서 조정방법
US7802038B2 (en) Communication steering for use in a multi-master shared resource system
US20070088889A1 (en) Communication steering for use in a multi-master shared resource system
US5089953A (en) Control and arbitration unit
US5038274A (en) Interrupt servicing and command acknowledgement system using distributed arbitration apparatus and shared bus
US7203781B2 (en) Bus architecture with primary bus and secondary or slave bus wherein transfer via DMA is in single transfer phase engagement of primary bus
EP0700540B1 (en) Pipelined data ordering system
JPH05173985A (ja) プログラマブルコントローラ
US5446847A (en) Programmable system bus priority network
JP2007172112A (ja) メモリコントローラ
JP2522412B2 (ja) プログラマブルコントロ―ラと入出力装置の間の通信方法
JPS5975354A (ja) プロセッサ装置
JPH03181093A (ja) マルチポートメモリ装置
KR100604569B1 (ko) 멀티 프로세서간 데이터 통신장치와 그 장치를 포함하는이동 통신 단말기
JPH08221106A (ja) プログラマブルコントローラ

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

T11-X000 Administrative time limit extension requested

St.27 status event code: U-3-3-T10-T11-oth-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

G160 Decision to publish patent application
PG1605 Publication of application before grant of patent

St.27 status event code: A-2-2-Q10-Q13-nap-PG1605

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

FPAY Annual fee payment

Payment date: 20080205

Year of fee payment: 12

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 12

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20090219

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20090219

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301