KR940003382B1 - 중앙 부시스템의 제어 기억 메모리에 대한 로딩 및 검증장치 - Google Patents

중앙 부시스템의 제어 기억 메모리에 대한 로딩 및 검증장치 Download PDF

Info

Publication number
KR940003382B1
KR940003382B1 KR1019870014622A KR870014622A KR940003382B1 KR 940003382 B1 KR940003382 B1 KR 940003382B1 KR 1019870014622 A KR1019870014622 A KR 1019870014622A KR 870014622 A KR870014622 A KR 870014622A KR 940003382 B1 KR940003382 B1 KR 940003382B1
Authority
KR
South Korea
Prior art keywords
signal
smf
control
address
bus
Prior art date
Application number
KR1019870014622A
Other languages
English (en)
Other versions
KR880008151A (ko
Inventor
쥬니어 체스터 엠. 니비
씨. 젤리 리차드
이. 브루스 케네쓰
제이. 바얼로우 죠오지
더블유. 킬리 제임스
Original Assignee
허니웰 뷸, 인코오포레이티드
루이스 피. 엘빈저
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 허니웰 뷸, 인코오포레이티드, 루이스 피. 엘빈저 filed Critical 허니웰 뷸, 인코오포레이티드
Publication of KR880008151A publication Critical patent/KR880008151A/ko
Application granted granted Critical
Publication of KR940003382B1 publication Critical patent/KR940003382B1/ko

Links

Images

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/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram

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)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Electric Propulsion And Braking For Vehicles (AREA)
  • Hardware Redundancy (AREA)
  • Selective Calling Equipment (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Steering-Linkage Mechanisms And Four-Wheel Steering (AREA)
  • Meter Arrangements (AREA)
  • Information Transfer Between Computers (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Automatic Analysis And Handling Materials Therefor (AREA)
  • Warehouses Or Storage Devices (AREA)
  • Fluid-Damping Devices (AREA)
  • Vehicle Body Suspensions (AREA)
  • Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)
  • Circuits Of Receivers In General (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

내용 없음.

Description

중앙 부시스템의 제어 기억 메모리에 대한 로딩 및 검증장치
제1도는 데이타 처리 시스템에 대한 블록도.
제2도는 시스템 관리 설비에 대한 블록도.
제3도는 시스템 버스 인터페이스에 대한 블록도.
제4도는 중앙 부시스템에 대한 블록도.
제5a도 및 5e도는 시스템 버스에 인가된 여러가지 명령에 대한 포맷을 도시한 도면.
제6도는 제어 기억부를 로드하는 펌웨어에 대한 순서도.
제7도는 제어 기억부에 대한 로딩 및 그 제어 기억부 로드에 대한 검증을 제어하는 중앙 부시스템 신호에 대한 타이밍도.
* 도면의 주요부분에 대한 부호의 설명
1 : 데이타 처리 유니트(DPU) 2 : 시스템버스
3~5 : 중앙 부시스템(CSS) 10~12 : 주메모리
14~16 : 주변 제어기 20 : 시스템 관리설비(SMF)
22 : 전원시스템 29 : 디스플레이 터미널 인터페이스(DTI)
30 : 콘솔 아답터 34 : 디스플레이 콘솔
42 : 원격 콘솔
본 발명은 데이타 처리 시스템에 관한 것으로서, 더욱 구체적으로 말하면 중앙 부시스템의 제어 기억부내로 펌웨어(firmware)를 로드함과 아울러 그것을 검증하는 장치에 관한 것이다.
데이타 처리 시스템은 중앙처리유니트(CPU), 주메모리 및 다수의 주변 부시스템을 포함한다. 주메모리는 명령 및 오퍼랜드를 기억한다. 명령은 그것이 실행되는 CPU로 주메모리로부터 전송된다. CPU는 오퍼랜드상의 명령에 의해 지정된 동작을 수행한다.
CPU는 명령의 순서부를 디코딩하여 다수의 소정 마이크로 단계들을 수행함으로써 명령을 실행한다. 초기의 CPU들은 고정 배선 논리로 이들 마이크로 단계를 수행하였으며, 후에 마이크로 단계들을 기억하기 위한 리드 온리 메모리 또는 현재 펌웨어로 불리는 것을 사용함으로써 시스템 용도가 더욱 다양해졌다.
이들 현재 사용되고 있는 CPU중 다소는 그들의 펌웨어를 랜덤 액세스 메모리(RAM)에 기억시켜, RAM에 상이한 펌웨어 세트을 기억시킴으로써 CPU 특성의 변화를 가져오며, RAM은 통상 제어장치로 불리워진다.
“이중 모드 동작 처리 메카니즘을 갖는 제어 기억장치”라는 제하의 미합중국 특허 제 4, 396, 981호에는, 기입가능 제어 기억부를 갖는 데이타 처리 시스템에 대하여 기재되어 있다.
프렌티스-홀사에 의해 1970년 발행된 사머 에스, 후숀에 의한 “마이크로프로그래밍 : 이론과 실제”라는 제하의 책에서는, 마이크로프로그래밍, 더욱 구체적으로 말하면 기입가능 제어 기억부에 대하여 기재되어 있다. 또한, “마이크로프로그램 데이타 처리 기술 및 장치”라는 제하의 미합중국 특허 제 4,042,972호에는, 중앙 프로세서 내부에 배치된 제어 기억부에 부가하여 기입가능 제어 기억부가 사용되는 컴퓨터 시스템에 대하여 기재되어 있다.
따라서, 본 발명의 제1목적은 개선된 데이타 처리 시스템을 제공하는 것이다.
본 발명의 제2목적은 데이타 처리 시스템의 개선된 중앙 부시스템을 제공하는 것이다.
본 발명의 제3목적은 펌웨어로 로드되는 기입가능 제어 기억부를 갖고, 펌웨어 로드에 대해 검증하는 개선된 중앙 부시스템을 제공하는 것이다.
데이타 처리 시스템의 중앙 부시스템(CSS)은 시스템버스 논리부에 의해 시스템버스에 결합된 한쌍의 중앙 프로세서/가상 메모리 관리 유니트(CPU/VMMU)를 포함한다. 시스템버스 논리부는 시스템버스에 CPU0/VMMU0을 결합시키기 위한 포트 0과, 시스템버스에 CPU1/VMMU1을 결합시키기 위한 포트 1을 포함한다.
공통 제어 기억부는 양 CPU/VMMU쌍을 제어할 펌웨어로 로드된다. 제어 기억부는 포트 0 또는 포트 1 로부터 로드될 수 있다.
시스템버스에 또한 결합된 시스템 관리 설비(SMF)는 포트를 지정하는 채널 번호와 포트가 수행할 동작을 지정하는 기능 코드를 포함하는 일련의 명령을 발생시킨다.
각 포트에서의 제어 논리부는 기능코드 비트를 디코드하고 일련의 신호를 발생시키기 위해 채널 번호에 응답한다.
제어 논리부는 로드 모드 신호를 발생시키기 위해 로드 모드 기능 코드에 응답하고, 로드 어드레스 신호 및 로드 동기화 신호를 발생시키기 위해 기입 어드레스 기능 코드에 응답한다. 이들 신호들은 104 비트의 제1제어 기어부 워드가 기입되는 제어 기억부 위치의 어드레스를 기억시키기 위해 제어 기억부 어드레스 카운터를 개시시킨다.
이어서, SMF는 시스템버스에 또한 결합된 주메모리로 일련의 메모리 참조 명령을 송출하여, 그 명령에 포함된 채널 번호로 지정된 포트로 전송하기 위해 이중 워드인 32비트를 독출한다. 이중 워드는 카운터에 의해 지정된 위치안으로 기입된다. 제어 기억부의 다른 부분들은 그 이중 워드를 수신하게끔 인에이블된다. 제어 기억부 어드레스는 제4판독 사이클마다 증분된다.
SMF는 리셋 로드 모드 기능 코드를 로드 모드 신호를 리셋시키기 위해 송출한다. 로드 및 검증신호가 로드 모드 신호에 의해 세트되어 그 상태로 유지된다. SMF가 포트 온 라인 명령을 송출할 경우, 검증신호가 발생되고 제어 기억부의 각 위치가 판독되어, 모든 위치에서의 제어 기억부 워드의 패리티를 검사함으로써 검증된다.
비지신호는 로드 모드 동작 개시시에 세트되고, 패리티 에러가 발견되지 않을 경우 리세트된다. 비지신호는 지정된 포트와 관련된 신드롬 레지스터내에 기억된다. SMF 명령에 의해 신드롬 레지스터의 내용이 SMF로 전송된다. SMF는 비지 비트의 상태를 검사하여 적절한 행위를 취한다. 비지 비트가 세트되지 않을 경우, SMF는 후속 CSS의 제어 기억부에 대한 로딩을 개시시킬 로드 모드 명령을 송출하고, 비지 비트가 세트될 경우, SMF는 재시도를 개시하거나, 다른 포트를 시도하거나 또는 그 CSS에 대한 제어 기억부 로딩을 포기할 수 있다.
제1도에는, 시스템버스 인터페이스(2-10A, 2-10B)에 각각 결합된 복수의 중앙 부시스템(CSS)(3~5)을 포함하는 밀착 결합시 다중 프로세서 데이타 처리 유니트(DPU) (1)와, 각 시스템버스 인터페이스(2-10)를 개재하여 시스템버스(2)에 공통적으로 모두 결합된 복수의 주메모리(10~12), 복수의 주변 제어기(14~16) 및 시스템 관리설비(SMF) (20)가 도시되어 있다.
복수의 디바이스 1(18)이 주변 제어기 1(14)에 결합되고, 복수의 디바이스 N(17)이 주변 제어기 N(16)에 결합된다. 복수의 주변 제어기(14~16)는 디스크 제어기, 테이프 제어기, 통신 제어기 및 유니트 레코드 제어기를 포함할 수 있으며, 그것들에는 각각 디스크 구동기, 테이프 디바이스, 통신 라인 및 유니트 레코드 디바이스가 결합된다.
복수의 CSS(3) 내지 CSS(5) 각각의 구성은 동일하다. CSS(3)는 시스템버스(2)에 결합된 캐시 1(8)과 서로 개별적으로 동작하는 중앙처리 유니트(CPU1A 4, CPU1B 6)를 포함한다. CSS(5)는 시스템버스(2)에 결합된 캐시 N(28)과 서로 개별적으로 동작하는 CPUNA(24)와 CPUNB(26)를 포함한다. CPUNA(24) 및 CPUNB(26)는 캐시 N(28)을 개재하여 주메모리(10) 내지 주메모리(12)를 액세스한다. CSS(3) 내지 CSS(5)는 밀착 결합식 다중 프로세서로서 동작하는데, 왜냐하면 공통 동작 시스템을 실행하고 공통 주메모리를 공유하기 때문이다.
이하, CPU1A(4) 및 CPU1B(6)를 CPU(4) 및 CPU(6)로 표시한다. 마찬가지로, CPUNA(24) 및 CPUNB(26)도 CPU(24) 및 CPU(26)로 표시한다. 포트 0 및 포트 1이 CPU(4) 및 CPU(6)를 인터페이스(2-10A)에 각각 결합시키고, 포트 2 및 포트 3이 CPU(24) 및 CPU(26)를 인터페이스(2-10B)에 각각 결합시킨다.
DPU(1)의 중앙식 제어를 위해 SMF(20)가 제공된다. 이 중앙식 제어는 전체 DPU(1) 시스템의 초기 설정, 품질논리검사(QLT) 동작의 중앙식 제어, 시스템 타이머 중앙화 및, 시스템버스(2)에 결합된 부시스템으로의 전원 및 캐비넷 온도 경보 공급을 포함한다. 전원 시스템(22)과 SMF(20) 사이에는, 전원 제어 인터페이스(PCI)(21)를 개재하여 다수의 제어 신호가 구성된다. 전원 시스템(22)으로부터의 제어신호는 DPU(1) 전원상태를 SMF(29)에 지시한다. SMF(20)로부터 PCI(21)를 통한 전원 시스템(22)으로의 제어신호는 전원 시스템(22)이 DPU(1)를 검사하기 위해 동작해야 하는 규정 전압 마진을 지정한다. SMF(20)는 마진 논리 소자를 분리함과 아울러 식별하기 위해 규정 전압 마진에서 QLT 동작을 작동시킨다.
디스플레이 콘솔(34)은 SMF(20)에 대한 디스플레이 터미널 인터페이스(DTI)(29)를 개재하여 오퍼레이가 DPU(1)와 통신하게끔 한다. SMF(20)는 디스플레이 콘솔(34)로부터 정보를 수신하고, 그 정보를 콘솔 아답터 인터페이스(CAI)(31)와 콘솔 아답터(30)를 개재하여 시스템버스(2)에 인가한다. DPU(1)로부터의 정보는 시스템버스(2), 콘솔 아답터(30), CAI(31), SMF(20) 및 DTI(29)를 개재하여 디스플레이 콘솔(34)에 의해 수신된다. 디스플레이 콘솔(34)은 통상적으로 수동식 키보드 및 음극선관(CRT) 디스플레이를 갖는 허니웰 VIP 7300 터미날이다. CAI(31) 및 DTI(29)는 통상적으로 RS 232 또는 RS 422 통신 인터페이스이다.
SMF(20)는 원격 유지 능력을 지지한다. 원격 콘솔(42)은 오퍼레이터 제어식 디스플레이 터미널이나 부재 컴퓨터 일수 있다. 원격 콘솔(42)은 모뎀(38), 통신 라인(40), 모뎀(36) 및 원격 유지 선택 인터페이스 (RMO)(37)를 개재하여 SMF(20)에 접속된다. 모뎀(36, 38)은 통상 릭손 모뎀으로서, 예를 들면 300 보오로 호출을 발생시키는 T113C 모뎀, 300 보오로 호출을 발생시킴과 아울러 그것에 응답하는 T103J 모뎀 및 1200 보오로 호출을 발생시킴과 아울러 그것에 응답하는 T212A 모뎀이다.
원격 유지 동작에 의해, 원격 사이트가 소프트웨어 및 동작 고장을 해결하게 되고, 하드웨어 고장을 식별하게 되며, 소프트웨어 패치와 같은 정보를 중앙 DPU(1) 시스템으로 송출하게 되고, 온 사이트(On-site) 유지 동작에 백업 원조를 제공하게 된다.
SMF(20)는 DPU(1)에 원격 사이트 액세스에 대한 액세스를 부여하여, 적당한 패스워드가 SMF(20)에 의해 수신될 경우에만 중앙식 제어를 제공한다.
통상 RS 232C 인터페이스인 보조 다바이스 인터페이스(ADI)(33)가 SMF(20)에 보조 디바이스(32)를 접속시킨다. 보조 디바이스(32)는 통상 디스플레이 콘솔(34)의 CRT 상에 디스플레이된 상태 정보를 로딩하거나 그 정보의 하드 카피를 제공하기 위한 프린터이다.
DPU(1)가 개시하는 중에 SMF(20)는 모든 부시스템이 시스템버스(2)에 결합됨과 아울러 정확히 수행하는 것을 보장하기 위해 품질논리검사(QLT)를 개시시킨다. 검사가 실패할 경우, SMF(20)는 그 상태를 지시하게끔 CPI(21)를 개재하여 전원시스템(22)에 신호를 보내고, 또한 디스플레이 콘솔(34), 원격 콘솔(42) 및 보조 디바이스(32)상에 그 에러를 디스플레이 한다.
부시스템 모두가 시스템버스(2)에 대한 액세스에 대해 비드명령을 내리며, 최상위 우선순위 부시스템이 그 액세스를 얻고자 비드명령을 내린다. SMF(20)가 전원 고장 검출과 같은 어느 실시간 시스템 상태에 신속히 반응해야 하는 필요성으로 인하여, 시스템버스(2) 액세스에 대한 최상위 우선순위 SMF(20)에 제공된다.
제2도는 시스템버스(2)에 결합된 SMF(20)를 도시한 블록도이다. 시스템버스(2)는 시스템버스(제어)(2-2), 시스템버스(데이타)(2-4) 및 시스템버스(어드레스)(2-6)로 도시되어 있다. 일반적으로, 시스템버스 인터페이스(2-10)는 죠오지 제이. 바얼 로우에 의해 발명된 “데이타 보전 기술을 갖는 데이타 처리 시스템”이라는 제하의 미합중국 특허 제 3, 995, 258호에 기재된 바와 같이 동작한다.
마이크로프로세서(20-2)는 마이크로프로세서내에 기억된 소프트웨어 루틴을 개재하여 SMF(20)/시스템버스(2) 인터페이스를 제어한다. 마이크로프로세서(20-2)는 자일로그 골드 북 1983/1984 콤포넌트 데이타북, 3권, 10판에 기재된 자일로그 Z80 CPU이다. 마이크로프로세서(20-2)는 프로그래머블 리드 온리 메모리(PROM)(20-38)에 기억된 소프트웨어에 의해 제어된다. RAM(20-44) 및 PROM(20-38)은 구동기(20-24)를 개재하여 16비트 마이크로프로세서 어드레스 버스(20-54)를 통하여 마이크로프로세서(20-2)로부터 어드레스 신호 A0 내지 A15를 수신한다. 8비트 마이크로프로세서 데이타버스(20-56)와 트랜시버(20-26)를 개재하여 PROM(20-38)으로부터 RAM(20-44)과 마이크로프로세서(29-2)간에 데이타 신호 D0 내지 D7이 전송된다.
SMF(20)가 시스템버스(2)에 대한 액세스를 가질 경우, 32데이타 신호 BSDT00-31이 수신기(20-68)에 의해 수신되어, 시스템 데이타 버스(2-4)로부터 입력 데이타 레지스터(20-16)내에 기억될 수 있다. 마이크로프로세서(20-2) 제어하에, 멀티플렉서(MUX)(20-17), 데이타 버스(20-52), 트랜시버(20-22), 트랜시버(20-26) 및 데이타 버스(20-56)를 개재하여 동시에 8비트로, 데이타가 레지스터(20-16)로부터 판독되어 RAM(20-44)내의 위치에 기억된다.
마이크로프로세서(20-2) 제어하에 동시에 8비트로, 32 어드레스 신호 BSAD A-H, 00-23이 수신기(20-70) 및 입력 어드레스 레지스터(20-36)에 의해 시스템 어드레스 버스(2-6)로부터 수신되어 RAM(20-44)내의 위치에 기억되며, 32 제어신호가 수신기(20-64) 및 입력 제어 레지스터(20-12)에 의해 시스템 제어버스(2-2)로부터 수신되어 RAM(20-44)내의 위치에 기억된다. 마이크로프로세서(20-2)는 RAM(20-44)내의 위치에 따라 입력 레지스터들(20-36, 20-16, 20-12)을 식별하여, 구동기(20-24) 및 어드레스 버스(20-54)를 개재하여 RAM(20-44)으로 적절한 어드레스를 송출한다.
마이크로프로세서(20-2)에 의해 동시에 8비트로, RAM(20-44)내의 대응 위치를 어드레스하고 데이타를 독출함으로써, 32 비트 출력 데이타 레지스터(20-14)안으로 데이타 신호 BSDT00-31의 로딩이 개시된다. 동시에 8비트로, 마이크로프로세서(20-2)가 RAM(20-44)내의 대응 위치를 어드레스하고 어드레스 신호를 독출함으로써 32비트 출력 어드레스 카운터(20-34)가 어드레스 신호 BSAD00-31로 로드된다. 마찬가지로, 동시에, 8비트로, 마이크로프로세서(20-2)가 RAM(20-44)내의 대응 위치를 어드레스하고 제어 정보를 독출함으로써 32비트 출력 제어 레지스터(20-10)가 버스 제어 정보로 로드된다.
부트 앤드(boot and) QLT ROM(20-39)은 주메모리(10~12)안으로 기입되는 소프트웨어 검사 루틴 및 검사 패턴을 기억한다. CSS(3~5)는 이들 검사 패턴 및 소프트웨어 검사 루틴을 액세스하여 그 동작에 대해 검증한다. ROM(20-39)은 마이크로프로세서(29-2) 제어하에 출력 데이타 레지스터(20-14)내로 직접 로드된다. SMF(20)가 시스템버스(2)에 대한 비드 명령을 내려서 액세스를 얻을 경우, 출력 데이타 레지스터(20-14), 출력 제어 레지스터(20-10) 및 출력 어드레스 카운터(20-34)내에 기억된 정보가 마이(my) 데이타 사이클 현재 신호 MYDCNN에 의해 인에이블된 구동기(20-66, 29-62, 20-72)에 의해 시스템버스(2)로 전송된다.
시스템 타이머(20-32)는 모든 부시스템의 중앙식 타이밍 제어를 제공하며, 실시간 클럭, 워치독 타이머 및 데이(day)클럭 시간과 다수의 타임아웃을 포함한다.
실시간 클럭은 CSS(3~5)의 CPU(4) 내지 CPU(26)중 어느 것으로부터의 명령에 의해 로드되며, 그 값은 실시간 큐의 상부에 있는 처리 개시 시간과 데이의 현재 시간과의 차이값과 같다. 데이의 현재시간이 개시 시간과 같을 경우, 실시간 클럭 인터럽트 신호가 발생된다. 이 신호로 인해, 큐 상부에서의 처리를 개시함과 아울러 후속처리를 위해 실시간 클럭을 재로드하는 것을 오퍼레이팅 시스템에 경보하기 위해 실시간 클럭이 로드되는 CPU를 인터럽트할 명령을 SMF(20)가 발생시키게 된다. 그 최대 시간 범위는 약 8.4초이다.
“너무 긴”시간동안 진행하는 처리에 의해 명백해지는 어느 소프트웨어 고장에 대하여 DPU(1)를 보호하게끔, 워치독 타이머가 사용된다. 감분하는 워치독 타이머는 CPU(4) 내지 CPU(26)중 어느 것으로부터의 명령에 의해 소정 시간으로 로드된다. 워치독 타이머가 그것이 0으로 감분하기 전에 재로드되지 않을 경우, 인터럽트 신호가 발생되어, 다소 처리가 무한 루프로 고정될 수 있다는 것을 오퍼레이팅 시스템에 경고하기 위해 SMF(20)가 CPU(4) 내지 CPU(26)에 대한 명령을 발생시키게 된다. 그 최대 시간 범위는 약 8.95분이다.
데이 클럭 시간은 배터리 백업 실시간 칼렌다(Calender)로부터 로드되며, 마이크로초마다 한번씩 증분된다. 실시간 칼렌다는 현재 해, 현재 달, 현재 날짜, 시간, 분 및 초를 12 2진화 10진수로 기억한다.
SMF(20)는 시스템버스(2)상의 마스터 또는 슬레이브 동작으로 동작할 수 있다. SMF(20)가 개시하여 시스템버스(2)에 결합된 다른 부시스템으로 명령을 송출할 경우, SMF(20)는 마스터로서 동작한다. 마스터로서, SMF는 시스템버스(2)상의 일반 명령을 어느 시스템에 대해 개시하고, 특정 명령을 CPU(4) 내지 CPU(26)에 대해 개시한다.
SMF(20)가 CPU(4) 내지 CPU(26)중 어느것으로부터 요구하지 않은 명령을 수신하고 또한 시스템버스(2)에 결합된 다른 부시스템중 어느 것으로부터 기대된 응답을 수신할 경우, SMF(20)는 슬레이브로서 동작한다.
SMF(20)는 시스템버스(2) 순환 시험 동작중에 마스터와 슬레이브 둘다로서 동작하는데, 여기서 SMF(20)는 마스터로서 시스템버스(2)상에 데이타를 송출하고, 슬레이브로서 시스템버스(2)로부터 동일 데이타를 수신한다. 제2도를 참조하면, 순환 시험 동작중에, 32비트 데이타가 RAM(20-44)에서 출력 데이타 레지스터(20-14)안으로 로드된다. 이어서, SMF(20)는 이 요구를 인식함과 아울러, 구동기(20-66), 시스템 데이타 버스(2-4) 및 수신기(20-68)를 개재하여 출력 데이타 레지스터(20-14)의 내용을 입력 데이타 레지스터(20-16)에 전송하게끔 시스템버스(2)에 접속한다. 두 레지스터(20-14, 20-16)의 내용이 정확한 동작을 위해 동일한가를 비교기(20-20)가 검사한다.
SMF(20)는 버스 제어 신호 BSYELO가 로우인 표준 명령으로서 시스템버스(2)에 결합된 다른 부시스템에 대한 명령을 발생시킨다. 또한, SMF(20)는 버스 제어 신호 BSYELO가 하이이고 제어신호 BSMREF가 로우인 특정 명령을 CPU1A(4) 내지 CPUNB(26)에 대해 발생시키며, 이것은 어드레스 신호가 CPU 채널 어드레스 및 기능 코드를 나타내고 메모리(10~12) 어드레스는 나타내지 않는다는 것을 가리킨다.
시스템버스 요구 및 응답 제어 유니트(29-18)는 세가지 타임아웃 회로를 포함한다. 마스터로서 SMF(20)가 시스템버스(2)에 대한 액세스를 요구하여 슬레이브인 요구된 부시스템으로부터 아무런 응답이 없이 3마이크로초가 경고할 경우, 시스템버스(2) 사이클이 종료된다.
마스터로서 다른 부시스템중 하나가 시스템버스(2)에 대한 액세스를 요구하여 5마이크로초 이내에 슬레이브로부터 아무런 응답이 없을 경우, 시스템버스(2) 사이클이 종료된다.
SMF(29) 판독 사이클이 개시되고 기대된 시스템버스(2) 응답 사이클(제2반 버스 사이클)이 1밀리초이내에 수신되지 않을 경우, 시스템버스(2) 동작이 종료된다.
SMF(20)가 슬레이브로서 시스템버스(2) 요구에 응답할 경우, SMF(20)는 이 요구를 인식할 버스 신호 BSACKR이나, 이 요구를 거절할 BSNAKR을 발생시킨다.
디스플레이 콘솔(34)은 DTI 인터페이스(29)를 개재하여 통신 제어기(20-8)에 결합된다. 통신 제어기(20-8)는 인터페이스 CAI(31) 및 콘솔 아답터(30)를 개재하여 시스템버스(2)에 결합된다. 이 구성으로 인해, SMF(20)가 콘솔과 DPU(1) 시스템간의 통신을 제어하게 된다.
SMF(20)는 통신 제어기(20-6)에 결합된 인터페이스 RMO(37)을 개재하여 원격 유지를 제어한다. 통신 제어기(20-6)는 또한 ADI(33) 인터페이스를 개재하여 보조 디바이스(32)를 제어한다. 통신제어기(20-6, 20-8)는 마이크로프로세서(20-2), 구동기(20-24) 및 어드레스 버스(20-60)로부터의 어드레스 신호 A14 및 A15에 의해 제어된다. 신호 A14는 채널 A나 채널 B를 선택한다. 신호 A15에 의해, 데이타 또는 제어 정보가 데이타 버스(20-58) 라인상에 실리게 된다. 데이타 또는 제어 정보가 마이크로프로세서(20-2), 통신제어기(20-6, 20-8) 및 데이타 버스(20-58)간에 전송된다.
오퍼레이터 기입가능 E PROM(20-46)은 원격 유지 인터페이스를 개재한 비규정 액세스를 방지할 패스 워드를 포함하는 정보를 기억하고, 부트 소프트웨어와 이 부트 소프트웨어가 실행을 위해 기입되는 주메모리(10~12) 위치를 기억하는 디바이스를 식별하며, DPU(1) 시스템에 의해 수행될 다른 QLT 테스크 기능을 지시할 비트를 제어하고, CSS(3~5)를 제어할 소프트웨어 및 이 소프트웨어가 기입되는 주메모리(10~12) 위치를 주변 디바이스가 기억하는가를 식별한다.
모드 레지스터(29-30)는 데이타 버스(20-52)에 결합되어 다음과 같은 기능을 수행한다.
1. 시스템버스(2) 우선순위 비트에 대한 SMF(20) 진단 제어 구성.
2. 출력 어드레스 카운터(20-34)의 업/다운 카운팅 제어.
3. 데이타 시스템버스(2-4) 비교를 수행하게끔 비교기(20-20)를 인에이블시킴.
4. CSS(3~5) 명령에 대한 SMF(20) 응답 제어.
5. QLT 및 전원 초기 설정중에 특정 시스템버스(2) 동작 제어.
모드 레지스터(20-30)는 트랠시버(20-22) 및 데이타버스(20-52)를 개재하여 마이크로프로세서(20-2)내로 기입됨과 아울러 그것에 의해 판독된다.
모드 레지스터(20-30)는 신호 ENBLIX에 의해 인에이블되며, 그 신호의 부울식은
Figure kpo00001
Figure kpo00002
MREQ이다.
모드 레지스터(20-30) 클럭신호(KMDBO-2)는 다음 부울식으로 발생된다.
Figure kpo00003
(CKMDB0 경우
Figure kpo00004
CKMDB1 경우
Figure kpo00005
CKMDB2 경우
Figure kpo00006
전원시스템(22) 인터페이스 PCI(21) 신호는 SMF(20)에 의해 수신된다. 이 신호들은 다수의 상태를 나타낸다.
전원 온/고장 신호 SYSPWN은 AC 입력 전압 및 출력 논리전압이 규정구역내에 있다는 것을 SMA(20)에게 지시한다. SMF(20)은 이어서 DPU(1) 시스템 초기 설정 동작을 개시한다. AC 전원이 제거될 경우, 전원 온/고장 신호 SYSPWN이 로우로 진행한다. 그러나, 출력 논리 전압은 데이타를 상실하지 않기 위해 순차 방식으로 일시 폐쇄된 DPU(1)시스템에 주어진 3밀리초 시간동안 규정 내역내에서 유지된다.
전원상태 신호 PWRYLO는 모든 전원 공급기가 규정 범위내에서 수행하는지를 가리킨다. 전원 상태 신호가 로우로 진행하는 것은 비동작 전원 공급기를 나타낸다.
전원 시스템(22)은 주메모리(10~12)내의 데이타를 항시 유효하게 유지하게끔 백터리 백업 전원 공급기를 포함할수 있다. 로우일 경우의 메모리 유효 신호 BBUATV는 배터리 백업 전원에도 불구하고 메모리 전압이 로우로 진행하고 주메모리(10~12)내의 정보가 유효하지 않을 수 있으며 메모리 재로드가 개시된다는 것을 나타낸다.
전원시스템(22) 제어 파넬상의 스위치로 부터의 기록 신호는 DPU(1)시스템 설비에 대한 오퍼레이터의 액세스를 제어하게끔 파넬 록 신호를 개시시킨다.
PCI(20)인터페이스로부터 SMF(20)에 의해 수신된 이들 신호는 멀티 플렉서(20-28)에 인가된다. 마이크로프로세서(20-2)는 데이타버스(20-52) 및 트랜시버(20-22)를 개재하여 이들 신호를 수신하여 적절한 행위를 취한다.
SMF(20)는 시스템버스(2)상에 전원 온 신호 BSPWON을 송출하여, 전원이 규정 내역내에 있다는 것을 시스템버스(2)에 결합된 모든 부시스템에 지시한다. 오프로 진행하는 신호 BSPWON은 모든 부시스템에게 “완전히 정리할”3밀리초를 부여한다.
또한, 전원 온 중에 하이로 진행하는 전원 온/고장 신호 SYSPWN은 시스템버스(2)를 통하여 구동기(20-63)를 개재한 마스터 클리어 신호 BSMCLR이 모든 적절한 논리 기능을 리셋시키게끔 한다.
SMF(20)는 다수의 신호를 PCI(21) 인터페이스를 통하여 전원시스템(22)으로 송출한다. 하이 전압 출력 마진 제어신호 HIMARG 및 로우 전압 출력 마진 제어 신호 LOMARG는 시험 동작중에 마이크로프로세서(20-2)에 의해 발생되어, 모든 전원 부시스템상의 출력 마진을 +-2%로 변화시킨다.
시스템버스(2)에 결합된 모든 다른 부시스템이 정확히 부착되고 전원업되며 모든 시험 프로그램(QLT)을 성공적으로 완료했다는 것을 시스템버스신호 BSQLTI가 나타낸다. QLT 논리부(19)는 버스신호 BSQLTI 및 SMF(20)가 QLT를 정확히 수행했다는 것을 가리키는 데이타버스(20-52)로 부터의 데이타 신호를 수신하고, 전원시스템(22) 및 인터페이스(21)에 송출되고 DPU(1)시스템이 완전히 검사되었다는 것을 가리키는 신호 BSQLTA를 발생시킨다. 신호 BSQLTA는 어느 유니트든 QLT를 작동하고 있거나 어느 QLT고장일때마다 참(true)이다. BSQLTA는 QLT 검사가 성공적일 때마다 거짓(false)이다.
SMF(20)는 DPU(1)시스템 캐비넷 온도를 모니터하기 위한 온도 감지 디바이스(20-40)를 포함하고, 캐비넷 온도가 38℃의 최대 온도 이상일 경우 온도 하이 신호 TMRYLO를 발생시킨다. 캐비넷 온도가 비상적으로 하이로 진행할 경우, 열 센서(도시생략)가 개방되어 전원을 일시 폐쇄한다. 이에 의해, 전온 온/고장 신호 SYSPWN이 시스템버스(2)상의 모든 부시스템이 그들의 각 전원 다운 시퀀스로 진행한다는 것을 가리키는 시스템버스(2) 신호 BSPWON을 발생시키게 된다.
온도 하이 신호 TMPYLO는 MUX(20-28)에 인가되어 그것으로 하여금 마이크로프로세서(20-2)에 대해 액세스 가능하게 한다.
통신 제어기(20-6, 20-8)로 부터의 신호가 또한 MUX(20-28)에 인가되어, 마이크로프로세서(20-2)로 하여금 전송 데이타 라인을 샘플링하게 하고, 또한 수신하는 디바이스가 데이타를 수신할 준비가 될 때를 검출하게 한다.
MUX(20-28)는 다음 부울식으로 발생되는 신호 ENBMUX에 의해 인에이블된다.
Figure kpo00007
여기서,
Figure kpo00008
신호 MREQ는 어드레스 버스(20-54)가 RMA(20-44) 어드레스를 포함하지 않는다는 것을 나타내게끔 마이크로프로세서(20-2)에 의해 발생된다. 신호 MI는 마이크로프로세서(20-2)에 의해 발생되어, OP 코드 인출동작이 아니라는 것을 가리킨다.
어드레스 버스(20-54) 신호 A14 및 A15는 네가지 MUX(20-28) 출력신호 각각을 선택한다.
SMF(20) 출력 레지스터, 출력 데이타 레지스터(20-14), 출력 제어 레지스터(20-10) 및 출력 어드레스 카운터(20-34)는 인버팅 구동기(20-66, 20-62, 20-72)를 개재하여 시스템버스(2)(2-4, 2-2, 2-6)에 각각 결합된다.
데이타버스(20-52)로부터 동시에 한 바이트로 이들 출력 레지스터안으로 데이타가 입력된다. 이들 출력 레지스터는 마이크로프로세서(20-2)에 의해 RAM(20-44)위치로서 어드레스된다. 또한, 출력 데이타 레지스터(20-14)는 시스템 타이머(20-32) 또는 부트 앤드 QLT ROM(20-39)으로부터 브로드사이드(broadside) 로드될 수 있다. 또한, 출력 어드레스 레지스터(20-41)는 주메모리(10~12)로의 데이타를 블록 전송을 위해 마이크로프로세서(20-2)에 의해 연속 어드레스로 로드된다.
출력 레지스터를 로드하기 위한 신호는 적절한 어드레스 라인을 디코드하여 마이크로프로세서(20-2)로부터의 제어 신호와 그것을 합성함으로써 발생된다. 그 발생을 보이고 패리티를 검사하는 논리는 본 발명에 관련되지 않기 때문에 본 명세서내에 포함되지 않으며, 그러나 패리티가 매번 바이트 전송후에 검사된다는 것이 본 기술분야에 숙련된 자에게는 명백하겠다.
패리티를 포함하지 않은 출력 데이타 레지스터(20-14)는 통상 8개의 74LS298 멀티플렉서 레지스터로 이루어지며, 데이타버스(20-52)에 결합된 “0”입력 및 부트 앤드 QLT ROM(20-39) 출력에 결합된 “1”입력을 갖는다. 레지스터(20-14)는 다음과 같은 부울식으로 지시되는 바와같이 어드레스 디코더(20-4)내의 논리에 의해 로드된다.
Figure kpo00009
명세서내의 모든 부울식은 어드레스 디코더(20-4)의 논리를 표현한다는 것을 주지하자. 어드레스디코더의 입력신호는 어드레스 신호 A0 내지 A15 및 마이크로프로세서(20-2) 신호 MI, MREQ, IORQ, WR 및 RD이다. 어드레스 디코더(20-4) 및 SMF(20) 논리 소자들을 제어하는 논리 제어 신호를 발생시킨다.
멀티플렉서 레지스터(20-14)는 동시에 두개로(동시에 한 바이트) 로드되는데, 왜냐하면 각 멀티플렉서 레지스터는 클럭신호 CKDTB0, CKDTB1, CKDTB2 및 CKDTB3에 의한 4비트를 기억한다.
Figure kpo00010
신호 BPTDOT는 ROM(20-39)출력이나 시스템 타이머(20-32)의 출력을 선택한다. BPTODOT에 대한 부울식은 다음과 같다 :
Figure kpo00011
마이크로프로세서(20-2) 신호들은 다음과 같은 것을 가리킨다. MREQ는 어드레스 버스가 메모리 판독이나 기입 동작에 대한 유효 어드레스를 홀드시키지 않는다는 것을 가리킨다.
Figure kpo00012
는 마이크로프로세서(20-2)가 메모리나 I/O 디바이스로부터 데이타를 판독하고자 한다는 것을 가리킨다.
Figure kpo00013
은 마이크로프로세서(20-2) 데이타 버스가 어드레싱된 메모리 위치나 I/O 위치에서의 기억에 대한 유효 데이타를 홀드시킨다는 것을 가리킨다.
IORQ.
Figure kpo00014
는 입/출력 디바이스 어드레스도 아니고 마이크로프로세서(20-2)의 OP 코드 인출 사이클도 아니라는 것을 가리킨다. 신호 TODRWT는 출력 데이타 레지스터(20-14)를 개재한 시스템버스(2)로의 데이(day)전송에 대한 시스템 타이머(20-32) 시간을 나타낸다.
출력 데이타 레지스터(20-14)의 브로드사이드 로딩의 경우, 신호 BP2MDT를 발생한 마이크로프로세서(20-2)나 데이 전송 시간을 나타내는 시스템 타이머(20-32)로 부터의 신호 MYDTCK는 클럭신호 CKDTB0 내지 CKDTB3을 나란히 발생시킨다.
신호 BP2MDT에 대한 부울식은 다음과 같다:
(A8.A9.A10.A11.A12.A13.IORQ.
Figure kpo00015
)
출력 제어 레지스터(20-10)는 8비트 데이타 버스(20-52)에 모두 결합된 통상의 2개 74LS273 레지스터, 74LS174 레지스터 및 74LS374 레지스터로 이루어진다. 제어신호는 신호 CKCMB0 내지 CKCMB3에 의해 레지스터안으로 클럭된다. 그 부울식은 다음과 같다.
Figure kpo00016
Figure kpo00017
신호 TDSHBD는 데이 클럭 전송 시간동안 신호 CKCMB0에 의해 클럭된 74LS374 레지스터의 출력을 디스에이블시킨다. 시스템 리셋신호 CLRRFLP는 나머지 세 레지스터를 리셋시킨다.
74LS374 레지스터는 제5a-5e도에 도시된 여덟가지 명령 신호를 기억한다. 그 신호들은 BSYELO, BSBYTE, BSDBPL, BSDBWD, BSSHBC, BSLOCK, BSWRIT 및 BSMREF이다. 데이타 전송 시간이 없는 동안, 세가지 버스신호가 구동기(20-62)에 직접 인가된다.
출력 어드레스 카운터(20-34)는 텍사스 인스트루먼트 ALS/AS 논리 회로 데이타 북 1983(Addvanced Low-Power Schotttky/Advanced Schottley)에 기재된 4개의 74AS869 카운터를 포함한다. 그 카운터는 클리어, 감분, 로드 및 증분의 네가지 동작 모드를 갖는다. 로드 카운터의 동작은 네 카운터에 인가된 신호 MYADUP 및 각 카운터에 인가된 신호 CKADB0 내지 CKADB3에 의해 개시된다. 그 부울식은 다음과 같다:
Figure kpo00018
신호 MYADUP는 마이크로프로세서(20-2)에 의해 모드 레지스터(20-30)내에 기억되어, 로드 또는 증분 모드 동작을 가리킨다. 부트 앤드 QLT 동작중에, 카운터는 처음에 동시에 한 바이트로 로드되고, 이어서 출력 데이타 레지스터(20-14)로 전송을 위한 ROM(20-39)으로부터 데이타를 독출하는 어드레스 레지스터(20-41)와 순차적으로 증분된다.
클럭신호 MYADCK는 각 카운터(20-34)의 클럭 입력 단자에 인가되어 카운터를 동작시킨다. 이 신호 MYADCK는 지연 인식 신호 BSACKR에 의해 발생된다.
입력 데이타 레지스터(10-16)는 4개의 74S374 레지스터로 이루어진다. 입력 어드레스 레지스터(20-36)는 4개의 74LS374 레지스터로 이루어지고, 입력 제어 레지스터(20-12)는 2개의 74LS374 레지스터, 74LS374 레지스터 및 74AS823 레지스터로 이루어진다. 74AS823 레지스터는 여덟가지 버스 신호 BSYELO, BSBYTE, BSDBPL, BSDBWD, BSSHBC, BSLOCK, BSWRIT 및 BSMREF를 수신하며, 이 신호들은 시스템 버스(2)상에 출력된 SMF(20) 명령을 제어한다.
상기 입력 레지스터(20-16, 20-36, 20-12) 모두는 세가지 조건하에서 발생된 클럭 신호 MBIPCK의 제어하로 로드된다.
1. 시스템 버스 요구 및 응답 제어부(20-18)는 슬레이브로서 동작하고, 시스템버스(2)로부터 인식 명령 신호 BSACKR 또는 제2반 버스 사이클 명령 신호 BSSHBC를 허용한다.
2. 응답 제어부(20-18)는 순환 시험중에 3마이크로초 타임아읏을 검출한다.
3. SMF(20)는 시험모드중에 자기 인식되었다.
입력 데이타 레지스터(20-16)로부터의 32출력 데이타 신호는 순화 시험 모드중에 비교기(20-20)에 인가된다. 또한, 그 데이타 신호는 마이크로프로세서(20-2) 제어하에 동시에 한 바이트로 데이타버스(20-52)로의 전송을 위해 MUX(20-17)에 인가된다. MUX(20-17)의 출력은 신호 ENBL2X에 의해 인에이블되며, 그 부울식은 다음과 같다 :
Figure kpo00019
MUX(20-17) 선택은 신호 REGSL0, REGSL1 및 REGSL2에 의해 이루어진다. 그 부울식은 다음과 같다:
Figure kpo00020
입력 어드레스 레지스터(20-36)를 구성하는 4개의 레지스터는 각각 신호 RDD024, RDD025, RDD026 및 RDD027의 제어하에 데이타버스(20-52)에 인가된다. 입력 제어 레지스터(20-12)를 구성하는 4개의 레지스터는 각각 신호 RDD020, RDD021, RDD022 및 RDD023의 제어하에 데이타버스(20-52)에 인가된 출력 신호를 갖는다. 신호 MBIPCK는 레지스터(20-36)안으로 어드레스 신호를 클럭시킨다.
RDD02X에 대한 부울식은 다음과 같으며, 여기서 X는 0에서 7까지 변한다:
ENBL2X.RD.A12.A13.A14.A15
여기서, 2진 A13.14.A15=X
마이크로프로세서(20-2)는 소프트웨어 제어하의 나중 행위를 데이타버스(20-52)상에 수신된 어드레스 바이트, 데이타 바이트 및 명령 바이트를 RMA(20-44)내의 소정 위치내에 기억시킨다.
다음 제어 신호들은 SMF(20)에 의해 시스템버스(2)를 통하여 송출되거나 시스템버스(2)로부터 수신되는 명령들중 일부분으로서 사용된다.
BSYELO(황색)
이 신호는, 제2반 버스 사이클동안 참일 경우, 수반하는 전송 정보가 정정되었다는 것을 나타낸다. 그것은 따라서 소프트 고장을 지적하고, 아마도 그 고장이 심화되기 전에 보수 행위가 고려된다는 의미로 취해진다. 이 신호는 발견되어 정정되었던 에러를 지시하게끔 판독 응답시 주메모리(10~12)에 의해 사용된다.
이 신호는, 메모리 판독 요구 기간동안 참일 경우, 판독 요구를 부여한다. 판독 요구 기간동안 참인 BSYELO에 대한 응답은 메모리 및 포함된 어드레스에 의존한다.
CSS(3~5)에 대한 SMF(20) 명령기간동안 참일 경우, BSYELO는 BSMREF 거짓을 제공하는 SMF(20) 명령이 어드레스 리드부가 채널 어드레스 및 기능 코드를 포함하는 것을 지시하는지를 식별한다.
BSBYTE(바이트)
이 신호는, 참일 경우, 현재 전송이 워드 전송이 아니라 바이트 전송인 것을 가리킨다.
BSDBWD(이중 워드)
이 신호 및 BSDBPL은, 판독 요구기간동안, 데이타 워드가 얼마나 많은지를 가르키고, 어느 포맷에서는 주메모리(10~12)로부터 기대된다. 판독 응답 사이클 동안(메모리로부터 리퀘스터로), BSDBWD는 하나 또는 두개의 데이타 워드가 시스템 버스(2)상에 있는지의 여부를 가르킨다.
기입 요구시, 이 신호는 BSAD23, BSBYTE 및 BSDBPL과 합성하여, 32비트 오퍼랜드내의 어느 합성 바이트가 메모리안으로 기입되어야 하는지를 식별하게끔 사용된다.
BSDBPL(이중 풀)
이 신호는 BSDBWD와 관련되어 사용된다. 판독응답 사이클동안, BSDBPL은 응답이 초종, 즉 요구된 최종 데이타 요소가 아닌지의 여부를 가리킨다.
BSSHBC(제2반 버스 사이클)
이 신호는 판독 요구에 대한 응답으로서, 또는 BSLOCK와 관련하여 록을 세트나 리세트시킬 정보로서 제2버스 사이클을 식별하게끔 제공될수 있다.
BSLOCK(록)
이 신호는, 참일 경우, 이 사이클이 통상 주메모리(10~12)인 슬레이브내의 록 플립플롭 상태에 대해 조건부적인 것을 나타내어, 이 사이클이 시스템 처리를 동기시키기 위해 BSSHBC와 관련하여 록 플립플롭을 시험 및 세트, 또는 리세트 시킬것을 가리킨다.
[BSWRIT(버스 기입)]
이 신호는, 참일 경우, 이 전송이 마스터로부터 슬레이브로 된다는 것을 가리킨다. 이 신호가 전송을 수반하여 거짓일 경우, 마스터는 슬레이브로부터 정보를 요구하고 있다. 이용가능하게될 경우의 그 정보를 분리 전송으로서 공급된다.
BSMREF(메모리 참조)
이 신호는, 참일 경우, 어드레스 리드부가 메모리 어드레스를 포함하는것을 가리킨다. 거짓일 경우, 이 신호는 어드레스 리드부가 채널번호 및 기능 코드를 포함한다는 것을 가리킨다.
BSREDL(적색 좌측)
이 신호는, 참일 경우, 수반하는 전송 정보에 에러가 있다는 것을 가리킨다. 이 신호는 판독 응답시 메모리에 의해 사용되어, 복귀된 최좌측 워드(두 워드가 나란히 복구된 경우)나 단일 워드내의 비정정 가능 에러를 나타낸다.
BSREDR(적색 우측)
이 신호는, 참일 경우, 수반하는 전송 정보에 에러가 있다는 것을 가리킨다. 이 신호는 판독 응답시 메모리에 의해 사용되어, 복구된 최우측 워드(두 워드가 나란히 복귀된 경우)내의 비정정가능 에러를 나타낸다.
BSLKN(록 ; 메모리 사이클 없음)
이 신호는 록된 메모리 판독 요구중에만 (BSLOCK 참) 중요성을 갖는다. 참일 경우, 그것은 메모리에게 요구된 실제 판독 동작을 금지함과 동시에 처리할 요구에 관련된 다른 동작을 허용하는 것을 지시한다. 요구에 대한 응답 BSACKR이나 BSNAKR은 BSLKNC가 참이거나 거짓인 경우에도 동일하며, 주메모리(10~12)내의 록 플립플롭에 대한 세팅, 클리어팅 및 검사를 수행한다. 메모리 모듈의 사이클링은 금지되는데, 다시 말하면 제2반 버스 사이클은 발생하지 않고, 메모리는 비지로 진행하지 않는다.
BSRINT(인터럽팅 재시도)
이 신호는, CSS가 인터럽트를 수신할 상태로 다시된 경우, CSS(3~5)에 의해 통상 발생된다(어떤 경우에는 SMF(20)에 의해 발생될수 있음). 하나 이상의 이전 인터럽트 요구에 대한 NAK된 후에, 그 인터럽트는 주변 제어기(14~16)내에 “스택”된다. BSRINT의 참된 천이를 검출할 시, 이들 제어기는 CSS(3~5)에 인터럽트를 송출하기 위해 재차 시도한다(또다른 NACK 응답을 발생시킬수도 있음).
이 신호는 수신 제어기(14)에 의해 비동기식으로 처리되지만, BSRINT의 송출기는 마이크로프로세서 시스템에서 하나이상의 구동 소스가 동시에 시스템버스(2)상에서 능동이지 못하게 하기 위해 시스템버스(2) 사이클과 동기되어야 한다.
BSRINT는 최소 100 나노초동안 유효해야하며, BSRINT의 “퍼지”하강 에지 천이로 부터의 변칙 시스템 동작을 가질수 있다.
BSPWON(버스 전원 온)
이 비동기 신호는, 모든 전원 공급기가 규정내에 있으며 내부 캐비넷 온도가 허용 가능 동작 한계점 이내에 있을 경우, 통상 참이다. 그 신호는, 시스템(즉, 전원 제어고장, 오버 로딩, “적색 레벨”과도 온도 등)일 경우, 거짓으로 된다.
이 신호 BSPWON은 전원 시스템(22)에 의해 공급된 정보를 통해 SMF(20)에 의해 통상 발생되지만, 어떤 경우에는 어느 통신 제어기(20-6, 20-8)에 의해 구동될수 있어, 업라인 호스트로 부터의 시스템 회복을 모의 실험한다. 전원 온 천이 동안, BSPWON의 포지티브 진행에지는 시스템 전원이 업 되어 안정하게 되며 시스템 초기 설정이 발생되는 것을 나타낸다. 초기 설정에 뒤이어서, 정상 전원 온상태가 시스템 동작 상태의 안정세트를 나타낸다. 고장을 감지할시나 전원 오프상태시에는, BSPWON은 오프로 천이하고, 모든 주변 제어기(14~16)는 버스상의 모든 교통량을 중단해야 하며, CSS(3~5)를 인에이블시키기 위해 자체 초기 설정을 수행하여, 시스템 상태를 기억하고 주메모리(10~12)내의 정보를 회복시킨다(메모리는 재개시 상태를 위해 비휘발성 이어야 한다). BSPWON의 거짓 진행 천이는 최소 3.0밀리초 정도 DC변동율의 실제 손실에 앞서야 하며, 메모리 제어기는 고장이 감지된후 2.5 내지 3.0밀리초에서 보호상태안으로 들어가서(허용된 버스 사이클은 없음), 시스템 상태 정보를 유지해야 한다.
BSACKR(ACK)
슬레이브는 마스터에게 이 신호를 참으로 함으로써 이 전송을 허용하고 있다는것을 신호한다.
BSNAKR(NAK)
슬레이브는 마스터에게 이 신호를 참으로 함으로써 이 전송을 거절하고 있다는것을 신호한다.
BSWAIT(대기)
슬레이브는 마스터에게 이 신호를 참으로 함으로써 이 전송을 일시적으로 거절하고 있다는것을 신호한다.
BSDCNN(현재 데이타 사이클)
이 신호는, 참일 경우, 특정 마스터가 시스템버스(2) 전송을 행하고 있으며 어느 특정 슬레이브에 의해 사용하기 위해 시스템버스(2)상에 정보를 실었다는 것을 가리킨다. 거짓일 경우, 시스템버스는 유휴상태거나 버스사이클 사이에 있다.
BSMCLR(버스 마스터 클리어)
이 비동기 신호는 통상 거짓이며, 시스템 동작이 완전히 포기되는 것을 요구하는 시스템 상태가 검출됨과 아울러 “정지”, “재개시”또는 “리부트”동작이 SMF(20)에 의해 수행될 경우, 참으로 된다. 마스터 클리어어의 소스는 전원 온 시퀀스 및 제어 파넬 클리어 푸시버튼(SMF에서 유도)으로부터 통상 유도되지만, 부착 호스트로부터의 다운 라인 로드를 수행할 능력을 갖는 어느 통신 제어기로부터 유도될수 있다.
BSMCLR이 참일 경우, 시스템버스(2)상의 모든 유니트가 초기 설정될것이다. 또한, 그렇게 행해질수 있는 유니트들은 QLT를 작동시킨다. QLT의 성공적인 완료는 SMF(20)가 BSQLTA 신호를 수신할 경우 나타내진다.
BSRESO(응답 한정)
이 신호는 BSACKR과 관련하여 동작되어, 슬레이브가 기능설비의 인보케이션(invocation)을 인식한다는 것을 요구 버스 마스터에게 지시하고, 적절하게 응답한다. 세가지 형태의 요구가 이 한정응답을 선택할수 있다.
ㆍ 2워드인 제2반 버스 사이클을 발생시킬 수 있는 판독 응답(BSDBWD-참에 의해 지시됨)
ㆍ 데이타 신호 BSDT16 내지 BSDT31을 기입하고자 하는 기입 요구(BSDBWD-참에 의해 지시됨)
ㆍ 사이클링없이 메모리를 록 또는 언록시키고자 하는 판독요구(BSLKNC-참에 의해 지시됨).
시스템 버스 요구 및 응답제어 논리부(2-18)는 SMF(20)에 대한 시스템버스(2)의 제어를 얻고자, 그리고 SMF(20) 명령 또는 시스템버스(2)를 통한 명령에 대한 응답을 슬레이브 유니트로 송출하고자 마스터 제어논리를 포함한다.
SMF(20)는 시스템버스(2)상의 최상위 우선순위 위치를 얻었으므로, SMF(20)가 시스템버스(2)에 대한 액세스를 요구할 경우 현재 버스사이클이 완료되자마자 후속 사이클이 부여된다. 논리부(20-18)는 구동기(20-66, 20-62, 20-72)에 인가된 신호 MYDCNN을 발생시켜, 시스템버스(2)상에 데이타, 어드레스 및 제어 정보를 실른다. 또한, 논리부(20-18)는 시스템버스(2)를 통하여 버스 신호 BSCNN을 송출하여, 시스템버스(2)가 “사용중에”있다는 것을 모든 부시스템에게 지시한다.
논리부(20-18)는 현재 시스템버스(2)로부터의 다수의 응답중 어느 하나를 대기하고 있다. 그 가능 응답은 다음과 같다 :
1. 3초동안 응답은 수신되지 않음.
2. 대기 응답이 수신됨(BSWAIT).
3. 비인식 응답이 수신됨(BSNAKR).
4. 비록 사이클(LKNC)이 인식됨(BSLKNC) (BSACKR).
5. 기입(1워드 기입 또는 BSRESQ 수심)이 인식됨(BSACKR).
6. 기입(BSRESQ는 수신되지 않고 이중 워드)이 인식됨(BSACKR).
7. 판독 사이클이 인식됨(BSACKR).
BSWAIT 또는 BSNAKR 응답이 수신되지 않았거나 BSACKR 응답이 기입 이중 워드 요구를 위해 수신되지 않았을 경우, 논리부(20-18)는 이 시스템버스(2)사이클을 종료하고, 시스템버스(2)에 대한 액세스를 다시 요구한다.
논리부(20-18)는 제2반 버스 사이클이 주메모리(10~12), CSS(3~5) 또는 주변제어기(14~16)로 SMF(20)에 의해 송출된 판독 명령에 응답하여 기대될 경우 행해지는 슬레이브 제어 논리를 포함한다. 또한, 버스 사이클이 SMF(20) 채널번호 16진수 OF를 포함할 경우 슬레이브 제어 논리가 행해진다. 에러 상태가 존재하지 않고 인식 응답 BSACKR이 SMF(20)에 의해 마스터로 시스템 버스(2)상에서 송출될 경우, 제2반 버스 사이클이 SMF(20)에 의해 허용된다.
제2반 버스 사이클이 허용될 경우, 모드 레지스터로부터의 신호가 버스 제어 신호 BSDBWD에 지시된 바와같이 전송되는 데이타 워드의 수에 의존하여 출력 어드레스 카운터(20-34)의 증분 또는 감분을 제어한다.
채널번호가 16진수 OF이고 패리티 에러는 없으며 제2반 버스 사이클이 아니고 (BSSHBC 거짓) 버스 어드레스 신호가 기능코드 및 채널번호를 포함하며 (BSMREF 거짓) 기능코드가 SMF(20)에 대해 적합할 경우, SMF는 요구되지 않은 명령을 허용한다. 불량 패리티 또는 부적합 기능코드가 존재할 경우, SMF(20)는 시스템 버스(2)를 통하여 인식신호 BSACKR 및 비인식신호 BSNAKR과 응답하거나 그 명령을 무시한다.
SMF(20)는 주메모리(10~12) 위치를 판독할 명령과 그 위치의 내용을 또다른 부시스템(통상 CSS 3 또는 CSS 5)으로 송출할 수 있다. 이 경우, 제2반 버스 사이클은 SMF(20)에 어드레스되지 않을 것이다. 주메모리(10~12)는 시스템 버스(2)상에 인식신호 BSACKR을 송출하고, 행선 부시스템의 채널번호를 갖는 시스템 버스(2)상에 제2반 버스 사이클 명령을 송출한다. SMF(20)가 제2반 버스 사이클을 수신하지 않기 때문에, 그것은 그 명령을 종료해야 한다.
인식신호 BSACKR은 버스시스템 종료 사이클 제어 논리부(20-19)에 의해 수신된다. 마이크로프로세서(20-2)는 어드레스디코더(20-4)에 의해 디코드되는 어드레스 신호를 발생시켜 신호 CKMD02를 발생시킨다. 또한, 마이크로프로세서(20-2)는 데이타 버스(20-52)를 통하여 데이타 신호 D00을 발생시킨다. 타임아웃을 리셋시키기 위해 시스템타이머(20-32)에 인가되는 신호 SMFCLY상의 SMF(20)사이클을 신호 BSACKR, CKMD02 및 D00이 리셋시켜 그 명령을 종료시킨다. 정상 동작중에, 타임아웃은 기대된 제2반 버스 사이클 명령이 소정시간 이내에 SMF(20)에 의해 수신되는지를 검증한다. 그 명령이 소정시간 이내에 수신되지 않을 경우, 타임아웃 신호에 의해 SMF(20)가 판독메모리 명령을 반복시키게 된다.
ADI(33) 인터페이스는 통신제어기(20-6)의 B채널을 보조 디바이스(32)에 결합시킨다. 이것은 1200 보오에 이르는 데이타 속도를 갖는 표준 EIA RS-232C형 Z 인터페이스이다. 그 인터페이스 신호는 통상 전송 데이타, 수신 데이타, 데이타 세트 준비 및 송출할 요구이다.
CAI(31) 인터페이스는 통신 제어기(20-8)의 A채널을 콘솔 아답터(30)에 결합시킨다. 이 인터페이스는 RS 422 비동기식 인터페이스에 대한 RS232C 비동기식 인터페이스 일 수 있다. RS232C 인터페이스 신호는 전송 데이타, 수신 데이타, 송신할 클리어 및 데이타 세트 준비이다. RS422 인터페이스 신호는 전송 데이타, 수신 데이타 및 데이타 스트림 제어이다.
RMO(37)는 통신 제어기(20-6)의 A채널을 원격 콘솔(42)에 결합시킨다.
RMO(37)는 제1도 기재에서 설명된 바와같은 유형의 모뎀(36)과 인터페이스한다.
DTI(29) 인터페이스는 통신 제어기(20-8)의 B채널을 결합시키고, CAI(31) 인터페이스를 매칭한다.
통신 제어기(20-6, 20-8)는 상술된 자일로그 골드 북에 기재된 자일로그 Z80 SIO/O 시리얼 입/출력 제어기이다.
통신 제어기(20-6, 20-8)는 공통 인터럽트 라인을 통하여 마이크로프로세서(20-2)를 인터럽트한다. 마이크로프로세서(20-2)는 MI 및 IORQ 신호 뿐만 아니라 신호 A14 및 A15를 송출함으로써 그 인터럽트에 응답한다. 인터럽팅 제어기(20-6, 20-8)는 데이타 버스(20-58)를 통하여 그 상태를 송출함으로써 응답한다. 이어서, 마이크로프로세서(20-2)는 그 행위를 처리할 상태에 기초를 둔 소프트웨어 루틴으로 브랜치한다. 통신 제어기(20-6, 20-8) 상태 신호에 응답함으로써, 소프트웨어에 의해 수행되는 전형적인 기능은 전송 버퍼 공백, 연장 상태 변화, 사용가능 문자 수신 및 특징 수신 조건이다.
[로드 모드]
제3도에는, 시스템 버스 인터페이스(2-10A)에 대한 블록도가 도시되어 있다. 시스템 버스(2)로부터의 명령의 수신기(2-30)를 통하여 선입선출(FIFO) 레지스터(2-34)에 인가된다. 여러가지 명령에 대한 포맷이 제5a-5e도에 도시되어 있다. 그 명령은 명령 행선 유니트를 지정하는 채널번호 및 그 수신 유니트가 수행할 동작을 지정하는 기능 코드를 포함한다.
FIFO 제어부(2-33)는 수신기(2-30)를 개재하여 시스템 버스(2)로부터 지정 명령 신호를 수신한다. 그 지정 명령 신호에 의해, FIFO 제어부(2-33)가 FIFO 레지스터(2-34)안으로 로드되는 특정 명령을 갖게끔 인에이블된다.
제5c도의 주메모리 명령에 대해 SMF가 16진수 00의 채널번호를 가질 경우, FIFO 제어부(2-33)는 데이타 신호(0-9)에 응답하여 FIFO 레지스터 안으로 명령을 도트시킬 신호를 발생시킨다. FIFO 제어부(2-33)는 또한 제2반 버스 사이클을 수신하게끔 제어된다.
FIFO 제어부(2-33)는 어드레스 신호(8-17)에 의해 지정된 CPU 명령 채널번호 16진수 00에 대한 SHBC에 응답하여, 제4도의 제어 기억부(3-2)내의 뒤이은 기억을 위해 FIFO 레지스터(2-34)안으로 주 메모리의 내용을 로드한다.
제어 논리부 CNTL0(2-15) 및 CNTL1(2-25)에 마스터 클리어 신호 BSMCLR이 인가되어, CSS(3)의 정상 동작을 제어하게끔 마스터 동기 신호 P0MSYN 및 P1MSYN을 각각 발생시킨다. 채널번호 및 기능코드를 포함하는 로드 명령을 송출하는 로드 모드가 SMF(20)에 의해 발생된다. 제어 논리부 CNTL0(2-15)은 채널번호 16진수 01에 의해 인에이블된다. 시스템 버스 인터페이스(2-10B)내의 유사한 제어 논리부는 채널번호 16진수 02 및 03에 각각 응답한다.
CNTL0(2-15)은 로드 명령 기능 코드 16진수 0D에 응답하여, 채널번호 16진수 00이 지정될 경우 신호 P0CSLD를 발생시킨다. CNTL1(2-25)은 기능 코드 16진수 0D에 응답하여, 채널번호 16진수 01 01 지정될 경우 신호 P1CSLD를 발생시킨다.
마찬가지로, CNTL0(2-15) 및 CNTL1(2-25)은 그들의 각 채널번호 및 로드 제어 기억부 어드레스 카운터 동작을 지정하는 16진수 11의 기능 코드에 응답하여, 신호 P0LADD 및 P0LSYN이나 P1LADD 및 P1LSYN을 발생시킨다.
로드 제어 기억부 데이타 전송시, 그 로드 명령이 채널번호 16진수 00을 지정할 경우, 주메모리 (10~12)로부터의 데이타는 SMF 내부 데이타(P0) 레지스터(2-12)내에 기억된다. 마찬가지로, 주메모리(10~12)로부터의 로드 제어 기억부 동작 데이타는, 그 로드 명령이 채널번호 16진수 01을 지정할 경우, SMF 데이타 인터럽트 레지스터(2-22)내에 기억된다. 레지스터(2-12, 2-22)는 수신기(2-30) 및 FIFO 레지스터(2-34)를 개재하여 시스템 버스(2)로부터 로드된다.
신드롬 레지스터(2-13)는 포트 0으로부터 수신된 정보를 기억하고, 신드롬 레지스터(2-23)는 포트 1로부터 수신된 정보를 기억한다. 신드롬 레지스터(2-13)내에 기억된 신호 P0PRES는 CPU0(4)이 시스템내에 현존하고 있는 것을 나타내고, 신호 P0LERR은 제어 기억부 로드 에러가 있다는 것을 나타내고, 신호 P0CSBY는 로드 동작이 완료되지 않았다는 것을 나타낸다. 신드롬 레지스터(2-23)내에 기억된 신호 P1PRES, P1LERR 및 P1CSBY는 CPU1(6)에 대한 이러한 상태를 나타낸다.
16진수 00의 기능코드를 갖는 판독 신드롬 레지스터 명령에 의해, CNTL0(2-25)이 16진수 00의 채널번호에 대한 신호 P0SSYE를 발생시키고, CNTL1(2-25)이 16진수 01의 채널번호에 대한 신호 PLSSYE를 발생시킨다. 신드롬 레지스터(2-13)의 내용은, 신호 P0SSYE에 의해 인에이블될 경우, 레지스터(2-14), 데이타 출력 레지스터(2-11) 및 구동기(2-32)를 개재하여 시스템 버스(2)상에 나타난다.
마찬가지로, 신드롬 레지스터(2-23)의 내용은 레지스터(2-24), 데이타 출력 레지스터(2-21) 및 구동기(2-32)를 개재하여 시스템 버스(2)상에 나타난다.
신드롬 레지스터(2-13)는 CSS(3)가 가질 특성을 나타내는 하드웨어 개정 번호를 기억한다. 하드웨어 개정번호는 로드 동작중에 제4도에 제어 기억부(3-2)안으로 로드되는 펌웨어를 선택하게끔 사용된다. 주지해야할 것은, 포트 0의 신드롬 레지스터(2-13)만이 하드웨어 개정번호를 기억한다는 것이다. 하드웨어 개정번호가 포트 0으로부터 판독되지 않을 경우, 포트 1이 사용되지 않으며 CSS(3)에 대한 펌웨어 로드가 포기된다.
SMF 데이타 인터럽트 레지스터(2-22, 2-12)는 제어 유니트 CNTL0(2-15)이 채널번호 16진수 00 및 16진수 06의 기능코드를 갖는 명령을 수신할때, 신호 CN0을 발생시킬 출력을 제공한다. CNTL1(2-25)은 신호 CN1을 발생시키기 위해 채널번호 16진수 01 및 기능코드 16진수 06을 수신한다. 신호 CN0에 의해 레지스터(2-12)가 인에이블되고, 신호 CN1에 의해 레지스터(2-22)가 인에이블된다. 로드 모드중에, 디폴트 경우는 SMF(20)가 16진수 00의 기능코드를 송출하지 않는다면 인에이블되는 신호 CN0 또는 CN1이다. 제어 기억로드 모드중에, 4버스 사이클에서 32비트 레지스터(2-12, 2-22)안으로 데이타가 로드되어, 104 데이타 비트를 제4도의 제어 기억부(3-2)로 전송한다. 각 사이클은 P0LSYNdl이나 P1LSYN 신호를 발생시킨다.
SMF(20)는 신드롬 레지스터(2-13, 2-23) 각각의 내용을 판독하기 위해 16진수 00의 기능코드를 갖는 능동포트 0 또는 포트 1에 판독명령을 송출한다.
신호 P0SSY Ehsms P1SSYE에 의해, 선택된 신드롬 레지스터(2-14, 2-24), 데이타 출력 레지스터(2-21, 2-11) 및 구동기(2-32)를 개재하여 시스템 버스(2)상에 그 내용을 실게 된다.
제4도에는, 포트 0 및 포트 1에 의해 시스템 버스 인터베이스 (2-10A)에 결합된 CSS(3)대한 블록도가 도시되어 있다. 포트 0은 제1도의 CPU1A(4)의 CPU0(4-2) 및 VMMU0(4-4)과 함께 동작한다. 포트 1은 CPPU1B(6)의 CPU1(6-2) 및 VMMU1(6-4)과 함께 동작한다. CSS(5)는 유사한 방식으로 포트 2 및 포트 3을 통하여 동작한다.
제어 기억부(3-2)는 CPU0(4-2) 및 VMMU0(4-4)과 2에 관련된 레지스터 및 논리부의 동작과 아울러 CPU1(6-2) 및 VMMU1(6-4)과 2에 관련된 레지스터 및 논리부의 동작을 제어할 펌웨어를 기억한다. 제어 기억부(3-2)는 워드당 104 비트의 16K 워드를 기억한다.
어드레스카운터(3-4)는 제어 기억부 데이타가 가입되는 제어 기억부(3-2)의 위치를 선택하는 어데릇 신호를 제공한다. 로드 레지스터 0(4-14)은 포트 0의 레지스터 P0(2-14) (제3도)에 결합되어, 그 로드 명령이 채널번호 16진수 00을 포함할 경우, 카운터(3-4)에 의해 지정된 위치에서 제어 기억부(3-2)안으로 기입되는 제어 기억부 데이타 워드 및 개시 제어 기억부 어드레스를 수신한다.
유사한 방식으로, 로드 레지스터(6-14)은 포트 1의 레지스터 P1(2-24)(제3도)에 결합되어, 그 로드 명령이 16진수 01을 포함함으로써, 카운터(3-4)에 의해 지정된 위치에서 제어 기억부(3-2)안으로 기입되는 제어 기억부 데이타 워드 및 개시 제어 기억부 어드레스를 수신한다.
타이밍 발생기(3-8)는 타이밍 신호를 공급하고, 제어 기억부 로드(3-6)는 그 타이밍 신호와 관련하여 그 로드 동작을 제어하는 제어 신호를 공급한다. 또한, 타이밍 발생기(3-8)은 신호 P0MSYN 및 P1MSYN에 응답하여, 정상 동작을 제어할 타이밍 신호를 발생시킨다.
패리티 L(3-18)은, 로드 동작중에, 레지스터 0(4-14) 또는 레지스터 1(6-14)로부터 출력된 제어 기억부 워드가 패리티 에러를 나타낼 경우, 로드 레어 신호 PXLDER을 발생시킨다.
패리티 에러 논리부(3-20)는, 제어 기억부 검증 로드 동작중에, 하나 이상의 패리티 검사회로(3-12, 13-14, 3-16), CPU0(4-2), VMMU0(4-4), CPU1(6-2) 및 VMMU1(6-4)로부터 수신된 신호가 신호 G, M, A, C0, V0 또는 신호 G, M, A, C1 및 V1을 각각 검증 로드 동작중에 발생시킴으로써 패리티 에러를 나타낼 경우, 패리티 에러 신호 PXVFER을 발생시킨다.
정상 동작중에, 제어 기억부(3-2)는 어드레스 레지스터 0(4-6)의 내용에 의해서나, 어드레스 레지스터 1(6-6)의 내용에 의해서 어드레스된다. 레지스터(4-6) 및 레지스터(6-6)는 CPU0(4-2)이나 CPU1(6-2)로부터 각각 로드된다. 로드 및 검증 동작중에, 제어 기억부(3-2)는 카운터(3-4)의 내용에 의해 어드레스된다. 정상 및 검증 동작시에, 제어 기억부(3-2)의 어드레스된 위치는 레지스터 C(3-10) 및 레지스터 P0(4-12)이나 레지스터 P1(6-12)안으로 로드된다.
CPU0(4-2), VMMU0(4-4), CPU1(6-2) 및 VMMU1(6-4)은 레지스터 C(3-10)로부터 제어 기억부 신호를 수신한다. CPU0(4-2)은 레지스터(4-12)로부터 제어 기억부 신호를 수신하고, CPU1(6-2)은 레지스터(6-12)로부터 제어 기억부 신호를 수신한다.
CPU0(4-12)은 신호 C0을 발생시키고, VMMU0(4-4)은 신호 V0을 발생시킨다. 신호 C0 및 V0은 패리티 에러 논리부(3-20)에 인가된다. 신호 C0 및 V0은 각 유니트에 의해 수신된 제어 기억부 비트들의 합성 패리티이다.
마찬가지로, CPU1(6-2)은 신호 C1을 발생시키고, VMMU1(6-4)은 신호 V1을 발생시킨다. 신호 C1 및 V1은 패리티 에러 논리부(3-20)에 인가되며, 신호 C1 및 V1은 각 유니트에 의해 수신된 제어 기억부 비트들의 합성 패리티이다.
레지스터(3-10, 4-12, 6-12)는 클럭 신호 PXADLA에 의해 로드된다. 레지스터(4-12, 6-12)의 출력은 P0TMC4 시간 및 P1TMC4 시간에서 각각 유효하다. 레지스터(3-10)의 출력은 로드될 때에 유효하다. 신호 PXADLS는 PXTME2 및 PXTME4 시간에서 유효하다. 레지스터(4-12, 6-12)는 CPU1(6-2) 및 VMMU1(6-4)에 대한 “2시간”의 선행 에지에서 로드되고, CPU0(4-2) 및 VMMU0(4-4)에 대한 “4타임”의 선행 에지에서 로드되며, CPU1(6-2) 및 VMMU1(6-4)에 대한 “2시간”의 하강 에지에서 유효하고, CPU0(4-2) 및 VMMU0(4-4)에 대한 “4시간”의 하강 에지에서 유효하다.
정상 동작중에, 데이타 출력 레지스터 F0(4-8) 및 데이타 입력 레지스터 T0(4-10)은 포트 0을 개재하여 시스템 버스 인터페이스(2-10A)에 CPU0(4-2) 및 VMMU0(4-4)을 결합시킨다. 마찬가지로, 데이타 출력 레지스터 F1(6-8) 및 데이타 입력 레지스터 T1(6-10)은 포트 1을 개재하여 시스템 버스 인터페이스 (2-10A)에 CPU1(6-2) 및 VMMU1(6-4)을 결합시킨다.
로드 명령이 채널번호 16진수 00을 포함할 경우, 신호 P0LSYN은 CNTL0(2-15)(제3도)에 의해 발생되며, 자유 작동 클럭 신호 CLK에 응답함과 아울러 클럭 신호 CST1 내지 클럭 신호 CST5를 포함하는 일련의 신호를 발생시키는 타이밍 발생기(3-8)에 인가된다.
신호 P0CSLD 또는 P1CSLD는 신호 PXCSLD를 발생시킬 논리부(3-6)에 인가된다. 신호 PXCSLD는 레지스터(4-14, 6-14)를 인에이블 시킨다. 또한, 신호 P0CSLD는 레지스터(4-14)의 출력을 인에이블시킬 신호 P0TOCS를 발생시킨다. 신호 P1CSLD는 레지스터(6-14)의 출력을 인에이블시킬 신호 P1TOCS를 발생시킨다. 클럭 신호 CST1은 개시 어드레스나 제어 기억부 데이타 워드를 레지스터(4-14, 6-14)안으로 클럭시킨다. 또한, PXCSLD는 CST5 시간에서 클럭 신호 CSACLK를 발생시킨다.
신호 P0LADD 및 P1LADD는 로드 제어부(3-6)에 인가되어, 신호 및 신호 PXCSLD가 세트될 경우 CST1 시간에서 로드 어드레스 신호 PXLADD를 발생시킨다. 카운터(3-4)는 신호 PXLADD에 의해 로드 되고 클럭 신호 CSACLK에 의해 증분된다. 기입 인에이블 신호 CSW1 내지 CSW4는 주메모리(10~12)로 부터의 연속 이중 워드 전송시에 순차적으로 각 CST4 시간에 발생된다. 그 신호들은 클럭 신호 CSACLK에 의해 CST5 시간에서 전개하는 내부 카운터에 의해 제어된다.
로드 동작은 다음과 같은 방식으로 수행된다. 먼저, SMF(20)는 시스템 클리어 동작중에 마스터 동기신호 P0MSYN 및 P1MSYN을 발생시키고 그 시스템 클리어 동작이 완료될때 그 신호들을 금지시키는 시스템 클리어 신호 BSMCLR을 발생시킨다. 이것은 CPU0(4-2) 및 VMMU0(4-4)와 CPU1(6-2) 및 VMMU1(6-4) 동작을 방지한다. 포트 0이 사용가능하다면, SMF(20)는 16진수 00의 채널번호 및 16진수 0D의 기능코드를 갖는 제어 기억부 로드 명령을 발생시킨다. 시스템 버스 인터페이스(2-10A)는 그 16진수 채널번호 및 기능코드 신호에 응답하여, 포트 0 논리를 제어하는 로드 제어 기억부 신호 P0CSLD를 발생시킨다. 로드 신호 PXCSLD와 로드 및 검증신호 PXCSLV는 차례대로 로드 제어부(3-6)에 의해 발생된다.
이어서, SMF(20)는 16진수 00의 채널번호, 16진수 11의 기능코드 및 통사 16진수 0000인 개시 제어 기억부 어드레스를 갖는 명령을 송출한다. 기능코드 신호는 CNTL0(2-15)에 인가되어, 신호 P0LADD 및 P0LSYN을 발생시킨다. 그 어드레스는 레지스터(4-14), 레지스터(2-14), 레지스터(2-12), FIFO 레지스터(2-34), 수신기(2-30) 및 시스템 버스(2)를 개재하여 카운터(3-4)내에 기억된다.
이어서, SMF(20)는 개시 부시스템으로서 포트 0 채널번호 16진수 00을 갖는 주메모리(10~12)로 일련의 판독 명령을 송출한다. 그 판독 명령은 제어 기억부(3-2) 데이타의 이중워드가 기억된 주메모리(1~12) 어드레스 위치를 포함한다.
주메모리(10~12)는 어드레스 필드에서의 16진수 00의 채널번호 및 데이타 피드에서의 32비트를 갖는 제2반 버스 사이클 명령을 송출한다. 그 데이타는 레지스터(2-14), 레지스터(2-12), FIFO 레지스터(2-34), 수신기(2-30) 및 시스템 버스(2)를 개재하여 레지스터(4-14)에 의해 수신된다. 카운터(3-4)는 이중 워드를 기억할 제어 기억부(3-2)내에 그 위치의 어드레스를 인가한다. 카운터(3-4)는 레지스터(4-14)에 의해 수신된 매 이중워드마다 한번 증분한다. 카운터(3-4)는 제1이중워드의 경우 기입 인에이블신호 CSWE1, 제2이중워드의 경우 기입 인에이블신호 CSWE2, 제3이중워드의 경우 기입 인에이블신호 CSWE3 및 제4이중워드의 경우 기입 인에이블신호 CSWE4를 발생시킨다.
제1이중워드는 제어 기억부(3-2)의 비트 위치 00-31내에 기억되고, 제2이중워드는 비트 위치 32-63내에 기억되며, 제3이중워드는 비트 위치 64-95내에 기억되고, 제4이중워드는 비트위치 96-103내에 기억된다. 각 104 비트워드는 제어 기억부(3-2)내에 기억되는 패리티 비트를 포함한다.
SMF(20)는 제어 기억부(3-2)를 요구된 제어 기억부 워드로 로드하기 위해 충분한 수효의 주메모리(1~12) 판독 명령을 송출한다.
[검증모드]
마스터 클리어 신호 BSMCLR은 사전에 사이클링으로부터 신호 P0MSYN 및 P1MSYN을 방지하여, CPU0(4-2), VMMU0(4-4) 및 CPU1(6-2), VMMU1(6-4)동작을 디스에이블 시킨다. 그러나, 제어 논리부(3-6)에 인가된 신호 P0LSYN 및 P1LSYN은 로드 모드 타이밍 신호 CST1 및 CST4와 CST5를 활성화 시킨다.
요구된 수효의 이중워드가 SMF(20) 판독메모리 명령의 제어하에 주메모리(10~12)로부터 송출된 후에, SMF(20)는 16진수 0F의 기능코드를 지정하는 리셋 로드 명령을 발생시킨다. 이것은 신호 P0CCLD가 제어부 0(2-15)내에 리셋되므로 신호 PXCSLD를 리셋시킨다. 그러나, 로드 및 검증신호 PXCSLV는 세트된 채로 유지된다. 제어부 0(2-15)이나 제어부 1(2-25)로부터의 신호 P0CSLD나 P1CSLD가 세트되었을 경우, 신호 PXCSLV는 로드 제어부(3-6)에 의해 로드 동작 개시시 세트되었다.
로드신호 PXCSLD가 리셋될 경우, 검증신호 PXCSLV가 세트된 채로 유지된다. SMF(20)는 CNTL0(2-15)이나 CNTL1(2-15) 각각에서 신호 P0MSYC나 P1MSYN을 발생시킬 포트 온 라인 명령 기능코드 16진수 0B를 발생시킨다. 타이밍 발생기(3-8)에 인가된 이들 신호들은 타이밍 신호 P0TM4 및 P1TM4를 포함하는 CPU 타이밍 체인을 개시시키고, 이어서 어드레스 카운터(3-14)가 신호 P0MSYN 또는 P1MSYN의 첫번째 발생시 로드제어부(3-6)로부터의 카운터 클리어 신호 PXACLR에 의해 16진수 0000으로 리셋된다. 이것은 신호 PXACLR이 리셋되고 클럭신호 CSACLK가 사이클링 하기 시작할때 어드레스 카운터(3-4) 리셋 동작을 종료시킬 신호 P0CSVF나 신호 P1CSVF를 발생시킨다. 검증 동작중에, 클럭신호 CSACLK는 로드신호 PXCSLD가 리셋된 후에 검증신호 PXCSLV에 의해 P0TM4 시간에서 카운터(3-4)를 증분시키기 위해 각 클럭신호에서 활성화된다.
어드레스 카운터(3-4)가 제어 기억부(3-2)의 각 위치의 내용을 판독 하였음과 아울러 각 워드의 패리티를 검증하였다는 것을 나타내는 CSDONE 신호를 그 어드레스 카운터(3-4)가 발생할때까지, 검증 모드는 계속된다. 패리티 에러가 감지될 경우, 에러 신호 PXVFER이 발생된다. 이것에 의해, 비지 신호 P0CSBY 및 P1CSBY는 포트가 비지인 것을 계속해서 나타내게 되고, 각각의 신드롬 레지스터(2-13, 2-23)내에 기억된 채 유지된다.
SMF는 검증 동작이 완료될때까지 10밀리초 대기하고, 이어서 신드롬 레지스터(2-13, 2-23)을 판독할 명령을 송출한다. 그 명령은 기능코드 16진수 00을 포함한다. 패리티 에러가 없을 경우, 어드레스된 신드롬 레지스터내의 비지 비트는 리셋되고 정상 동작은 계속된다.
검증 모드는, CSDONE 신호가 포트 0 또는 포트 1이 선택됨에 따라서 클럭신호 P0TM4 시간에서 제어 기억부 리셋신호 P0CSRT 또는 P1CSRT를 발생시킬때, 완료된다. 리셋신호 P0CSRT 또는 P1CSRT는 검증신호 PXCSLV와 신호 P0CSVF 또는 P1CSVF 및 P0CSBY 또는 P1CSBY를 리셋시킨다.
신드롬 레지스터가 판독될때 비지 비트가 아직도 세트된 것을 SMF(20)가 발견할 경우, 제6도의 직절한 펌웨어 시퀀스가 수반되는데, 다시 말하면 그 포트의 재시행이 있을 수 있거나, CSS에 대한 다른 포트가 시행될 수 있다.
[명령 포맷]
제5a도 내지 제5e도에는, 바람직한 실시예에서 사용되는 여러가지 명령에 대한 포맷이 도시되어 있다.
제5a도는 판독 포트 명령을 도시하고 있다. 행선 CPU 채널번호가 어드레스 버스(2-6) 비트 위치 8-17내에 지정된다. 기능코드는 어드레스 버스(2-6) 비트 위치(18-23)내에 지정된다. 요구하는 부시스템인 SMF(20)의 채널번호는 데이타 버스(2-4) 비트 위치 0-9에 의해 지정된다. 제어버스(2-2) 신호 BSYELO 및 BSMREF는 각각 “1”과 “0”에서, 이 명령이 SMF(20) 발생 명령이라는 것을 나타낸다. 신호 BSDBWD는, 이중워드인 32비트 데이타가 데이타 버스(2-4)상에 나타나는 것을 나타낸다. 신호 BSDBPL은, 이중 워드가 이 명령의 최종 데이타 워드인 것을 나타낸다. 이 명령을 판독 신드롬 레지스터 명령으로 사용하는 것이 제7도에 도시되어 있다. CPU 채널번호는 포트 0을 어드레스하는 16진수 00이다. 기능 코드는 판독 신드롬 레지스터 동작을 개시시키는 16진수 00이다. SMF 채널번호 16진수 OF(16진수 03CO으로 위치 설정)되는 SMF(20)로 제2반 버스 사이클(SHBC)명령으로서 송출되는 신드롬 레지스터의 내용에 대한 행선이다. SMF 채널번호 16진수 OF는 어드레스 버스(2-6) 비트 위치 8-17내에 포함되며, 포트 0의 신드롬 레지스터의 내용이 데이타 버스(2-4) 비트 위치 0-31에서 나타난다. 명령 버스(2-2) 신호 BSWRIT는 버스 기입 동작을 지정하고, BSSHBC는 이것이 요구에 대한 응답(제2반 버스 사이클)이라는 것을 지정한다.
제5b도는 기입 포트 명령을 도시하고 있다. 제7도의 타이밍도에 도시된 다수의 명령은 제5b도의 포맷으로 된다. 로드 모드 명령인 기능코드 16진수 0D는 16진수 0000 0000의 데이타 필드를 포함한다. 로드 어드레스 카운터 명령 기능코드 16진수 11은 제1 104 비트 제어 기억부 워드가 기입되는 제어 기억부(3-2)의 개시 위치 어드레스를 기억하는 데이타 필드를 포함한다. 어드레스 카운터(3-4)는 통상 16진수 0000으로 로드된다. 그러나, 주메모리(10~12)가 배터리 백업을 갖는다면, 개시 어드레스는 변할 수 있다. 이것에 의해, 시스템은 주메모리(10~12)의 딱 한페이지만을 제어 기억부(3-2)에서 복원시킬 수 있게 된다. 리셋 로드 모드 명령 기능코드 16진수 OF는 16진수 0000 0000의 데이타 필드를 포함한다. 기능 코드 0B인 포트 온 라인 명령은 16진수 0000 0000의 데이타 필드를 포함한다.
신호 BSMREF 및 BSYELO는 각각 “0”과 “1”에서, SMF(20) 발생명령을 나타낸다. 신호 BSWRIT는 “1”에서 버스 기입 명령을 나타낸다.
제5c도는 SMF의 주메모리에 대한 명령 및 그 명령에 대한 제2반 버스 사이클 응답에 대한 포맷을 도시하고 있다. 32비트 어드레스 버스(2-6) 필드 0-23, A-H는 주메모리(10~12) 어드레스 위치를 기억한다. 데이타 버스(2-4) 비트 0 내지 9는 바람직한 실시예에서는 CPU 채널번호인 행선 부시스템의 채널번호를 기억한다. 명령 버스(2-2) 신호 BSMREF는 메모리 참조 명령을 나타낸다. 제2반 버스 사이클 명령은 주메모리(10~12)내에서 개시된다. 데이타 버스(2-4) 비트 0-31은 어드레스된 위치의 내용을 포함한다. 어드레스 버스(2-6) 비트 8-17은 행선 CPU의 채널번호를 포함한다. 명령 버스(2-2) 신호 BSMREF 및 BSSHBC는 각각 논리 “0” 및 “1”에서, 이 명령이 메모리 요구 명령에 응답하여 주메모리(10~14)에 의해 발생되는 것을 나타낸다.
제5d도는 I/O 디바이스의 채널번호, 이 경우에는 디스크 구동기 또는 플로피 디스크의 채널번호 및 기능 코드를 포함하는 I/O 출력 명령에 대한 포맷을 도시하고 있다. 데이타 버스(2-4) 비트는 디스크상의 데이타 위치를 포함한다. 이 명령은 두가지 포맷을 갖는데, 즉 16진수 11의 기능코드를 갖는 구성 A 포맷과, 16진시스템 버스 13의 기능코드를 갖는 구성 B 포맷을 갖는다.
구성 A의 데이타 버스(2-4)비트는 디바이스가 하드 디스크일 경우 실린더 번호를 포함하고, 디바이스가 플로피 디스크일 경우 실린더 및 트랙 번호를 포함한다.
구성 B의 데이타 버스(2-4)비트는 하드 디스크의 경우 섹터 및 트랙번호를 포함하고, 플로피 디스크의 경우 섹터 번호 및 바이트 밀도를 포함한다.
16진수 07의 기능코드를 갖는 I/O 출력 명령은 이것이 탐색, 즉 자동 탐색 동작인지의 여부를 데이타 버스(2-4)비트에 의해 나타낸다. 자동 탐색 동작은 탐색을 호출하고, 이어서 판독한다.
명령 버스(2-2) 신호 BSWRIT는 버스 기입 동작을 나타낸다.
제5e도는 2사이클 입/출력 로드(IOLD) 출력 명령을 도시한다.
제1사이클동안, 어드레스 버스(2-6) 비트 A-H, 0-7은 16상위 어드레스 비트를 기억하고, 데이타 버스(2-4) 비트 0-15는 16하위 어드레스 비트를 기억한다. 상위 및 하위 어드레스 비트는 디스크로부터 주메모리로 전송된 제1데이타 바이트를 기억할 주메모리(10~20)내의 개시 어드레스를 나타낸다.
제2사이클 동안, 데이타 버스(2-4) 비트는 범위, 즉 주메모리(10~12)가 디스크로부터 수신할 바이트들의 전체수를 기억한다.
16진수 09의 기능코드는 IOLD 출력 명령의 제1사이클을 지정하고, 16진수 0D의 기능코드는 IOLD 출력 명령의 제2사이클을 지정한다. 또한, I/O 디바이스의 채널번호가 지정된다. 명령 버스(2-2) 신호 BSWRIT는 버스 기입 동작을 지정한다.
제6도에는, CSS(3~5)의 제어 기억부(3-2)를 로드하는 펌웨어에 대한 블록도가 도시되어 있다. 제어 기억부 펌웨어는 고정 디스크, 제어가능 디스크 또는 플로피 디스켓상에 기억되고, SMF(20) 제어하에 주메모리(10~12)로 전송된다. 주메모리의 전송후에 에러가 발견되지 않았을 경우, 제어 기억부 펌웨어는 SMF(20) 제어하에 제어 기억부(3-2)로 전송된다. CSS(3) 및 CSS(5)가 동일 펌웨어 로드를 요구할 경우, 둘다 먼저 로드되고, 이어서 그들의 각 포트 온 라인 명령을 수신한 후에 유효성 검사를 수행한다. CSS(3) 및 CSS(5)가 동일 펌웨어 로드를 갖지 않을 경우, CSS(3)의 제어 기억부가 로드 및 검증된후, CSS(5)의 제어 기억부가 로드 및 검증된다.
SMF(20)는, 제어 기억부 펌웨어의 적절한 개정본이 그것의 CSS안으로 로드되는 것을 각 CSS가 요구 및 검증하는 제어 기억부 펌웨어의 개정본에 대한 레코드를 갖는다. 따라서, 상이한 CSS가 그것이 수신하는 제어 기억부 펌웨어의 특정 개정본에 따라서 상이한 기능 설비를 가질 수 있다는 것을 볼 수 있다. SMF(20)는 각 CSS의 하드웨어 개정 번호를 기억한다. 하드웨어 개정본은 CSS의 제어 기억부를 로드하게끔 사용될 펌웨어 개정본을 결정한다.
제6도를 참조하면, 블록(100)이 SMF(20)의 ROM내에 기억되는 펌웨어 루틴을 개시시킨다.
블록(101)은, 주메모리(10~12)가 배터리 백업을 갖고 그 정보를 SMF RAM(20-44)의 위치에 기억시키는지의 여부를 검사한다.
블록(102)은, 레지스터내의 포인터를 SMF 마이크로프로세서(20-2)내에 기억시킨다. 그 포인터는 후속 사용을 위한 제어 정보를 기억하는 SMF RAM(20-44)내의 위치이다. 이어서, SMF(20)는 SMF 디스플레이 콘솔(34), 보조 프린터(32) 및/또는 원격 콘솔(42)상에 “램웨어 개시”라는 워드를 디스플레이 한다.
블록(106)은 사용 가능한 포트를 검사한다. 각 CSS의 시스템 버스 인터페이스는 2개의포트를 갖는다. 제1도에 도시된 2개의 CSS(3) 및 CSS(5)는 4개의 포트를 갖겠다. 블록(106)은 각 포트로 판독 명령을 송출하여, 신드롬 레지스터의 내용을 SMF(20)로 송출한다. 신드롬 레지스터내에 세트된 현재 비트는 CPU가 사용가능하다는 것을 나타낸다. 포트 0은 16진수 00의 채널번호에 의해 식별되고, 포트 1은 16진수 01의 채널번호로 식별되며, 포트 2는 16진수 02의 채널번호로, 포트 3은 16진수 03의 채널번호로 식별된다.
블록(106)은 또한 신드롬 레지스터의 하드웨어 개정 비트를 판독한다. 이 비트는 CSS가 구성되는 개정본을 나타낸다. 이 비트는 나중 사용을 위해 SMF RAM(20-44)내에 기억된다.
결정블록(108)은 어느 포트가 사용가능하는지의 여부를 결정하고, 사용가능하지 않을 경우 블록(110)을 통하여 그 동작을 포기한다. 오퍼레이터 간섭을 요구하는 문제가 발생하였다는 것을 나타내는 메시지가 디스플레이될 것이다.
블록(112)은 제어 기억부 펌웨어를 기억하는 디스크의 채널번호를 선택한다. SMF(20)는 그 채널 번호를 SMF RAM(20-44)의 위치에 기억시킨다. 주메모리(10~12)로부터 펌웨어 로드를 수신하게끔 CSS의 두 채널중 어느 것을 사용하는 것이 임의 선택된다. 제1채널(포트)이 사용가능하지 않을 경우, 다른 채널(포트)을 통하여 펌웨어 로드에 대한 시행이 이루어진다.
블록(114)은 SMF RAM(20-44)내에 주메모리 기새어드레스를 기억시킨다. 이것은 수신된 제1제어 기억부 펌웨어 워드가 기억되는 주메모리의 위치이다. 통상, 그 어드레스는 16진수 1000이겠다. 그러나, 어느 어드레스는 주메모리(10~12)가 배터리 백업을 가질 경우에 특히 기억될 수 있다.
블록(116)은 제어 기억부 펌웨어를 기억하는 디스크를 제어하는 디스크, 즉 디스켓 제어기로 SMF로부터의 다수 명령을 송출한다. 이들 명령은 실린더 번호, 트랙번호, 섹터 번호를 나타내는 정보 및, 그 정보가 플로피디스크상에 기억될 경우 바이트 밀도를 또한 나타내는 정보를 포함한다. 펌웨어 개정 번호는 디스크, 즉 디스켓 디바이스로부터 판독된 조사표로부터의 CSS 하드웨어 개정 번호를 사용하므로써 볼 수 있다. 이것은 그 디바이스상에 기억된 펌웨어 로드의 경로 명칭을 발생시키게끔 사용된다. 이 경로 명칭은 디스크 제어기에 의해 사용되어, 그 디바이스 표면상에 기억된 펌웨어 로드 정보를 배치시킨다.
주메모리 배터리 백업이 있을 경우, 그 명령들은 통상 페이지단 2048 바이트로 페이지 전송을 호출한다. 주메모리 배터리 백업이 없을 경우, 그 명령들은 모든 제어 기억부 펌웨어 워드 전송을 호출한다.
펌웨어 개정 번호가 발견될 경우, 제어기억부 펌웨어 워드는 통상 어드레스 16진수 1000에서 시작하여 주메모리(10~12)내에 기억된다.
배터리 백업이 존재할 경우, 어느 에러도 문제되는 페이지만을 디스크로부터 전송되게 한다. 배터리 백업이 없을 경우, 어느 에러도 발견되었다면 전체 전송이 의심된다. 블록(120)에서, 디스플레이 콘솔(34)은 주메모리(10~12)안으로 제어기억부 펌웨어가 완전히 로드되는 것을 가리킨다.
결정블록(118)은, 블록(116)에서 적당한 개정 번호를 갖는 펌웨어가 디스크상에서 발견되지 않았을 경우, 출구(110)를 통하여 포기를 발생시킨다.
블록(122)은 SMF 마이크로프로세서(20-2)에 레지스터내의 재시행 비트를 세트시켜, 이것이 제어기억부(3-2)를 포드하는 첫번째 시행인 것을 나타낸다. 이어서, 블록(122)은 사용가능한 CSS 포트를 모두의 채널번호를 디스플레이 콘솔(34)상에 디스플레이한다.
결정블록(124)은 사용가능한 포트들이 없을 경우 출구(110)를 통하여 포기한다.
블록(126)은 주메모리(10~12)로부터 제어기억부 펌웨어 바이트가 전송되는 CSS 포트의 채널번호를 선택 및 디스플레이한다. 그 우선 순위는 채널번호 16진수 00, 02, 01, 03이다. 이것은 각 제어기억부를 로드하기 위한 2개의 경로를 부여한다.
블록(128)에서, SMF(20)는 주메모리(10~12)로 그것의 상태 및 ID 레지스터를 판독 및 클리어시킬 명령을 송출한다. 따라서, 주메모리 상태 레지스터는 추가의 진단 결과를 기억하기 위해 클리어된다.
결정블록(130)은, 주메모리 상태 및 ID 레지스터가 클리어될 수 없는 경우, 출구(110)로 포기를 나타낸다. 이것은 오퍼레이터 간섭을 요구하는 주메모리 고장을 나타낸다.
블록(132)은 SMF RAM(20-44)내에 기억되는 메모리 상태 제어 워드를 셋업시킨다. 그 비트는, 새로운 형태의 메모리가 설치되는지의 여부, 그 메모리가 인터리브되는지의 여부, 주메모리(10~12)내에 비정정가능 에러가 있었는지의 여부, 이것이 펌웨어를 통한 제1경로인지의 여부, 재시행이 고장되었는지의 여부 및 이것이 주메모리 재로드 재시행인지의 여부를 나타낸다.
블록(134)는 주메모리(10~12)로부터 제어기억부 펌웨어 바이트의 선택된 포트를 통한 제어기억부(3-2)로의 전송을 개시시킨다. SMF(20)는 먼저 로드모드 시퀸스를 개시시킬 명령을 발생시킨다. 이어서, SMF는 통상 16진수 0000인 개시제어기억부 어드레스를 공급하는 명령을 발생시킨다. 그 개시 어드레스는 제어 기억부의 일부분이 막 로드된 경우의 어느 값일 수 있다.
결정블록(136)은 어드레스된 CPU로부터의 응답이 없을 경우 재시행 블록(117)으로 브랜치한다. 재시행 후에 CPU 응답이 아직도 없을 경우, 펌웨어가 후속 사용가능한 포트로 브랜치하는데, 다시말하면 포트0에서 포트1로 또는 포트2에서 포트3으로 브랜치한다.
포트 0을 통한 CPU 동작이 재시행후 응답하지 않을 경우, 그 CPU 클럭을 일시 폐쇄시키는 마스터클리어가 송출되고 재시행이 포트1을 통하여 이루어진다.
블록(138)은 주메모리(10~12)로부터의 제어기억부 바이트를 제어기억부로 전송한다. SMF(20)는 주메모리(10~12)로 CPU 채널번호를 포함하는 판독 주메모리 명령을 송출한다. 따라서, 제2반 버스 사이클동안, 4제어기억부 데이타 바이트(이중 워드 전송)를 포함하는 주메모리(10~12)로부터의 명령이 어드레스된 CPU로 송출되어 그 CPU에 의해 수신된다.
SMF(20)는 CPU가 이중 워드를 수신할 때까지 통상 7 마이크로초인 소정 시간동안 대기한다.
SMF(20)는, 그것이 메모리로부터 데이타 워드를 수신하지 않기 때문에 그 명령을 종료할, 주메모리(10~12)로부터의 인식 신호를 수신한다.
유니트가 주메모리 어드레스 및 주메모리가 인식하는 그 자체의 채널번호를 갖는, 메모리 요구 명령을 송출할 때까지 정상동작이다. 주메모리는 어드레스된 주메모리 위치의 내용 및 그 송출유니트의 채널번호를 갖는, 제2반 버스 사이클 명령을 발생시킨다. 그 수신 유니트는 데이타가 수신되었다는 것을 나타내는 주메모리에 의해 수신되는 인식신호를 송출한다.
블록(140)은 제어기억부(3-2) 전송에 대한 주메모리(10~12)상의 에러를 검사할 주메모리 상태 및 ID 레지스터를 판독한다. 주메모리 ID가 인터리브된 메모리를 나타낼 경우, 각 메모리의 상태워드가 검사된다.
결정블록(142)은 에러가 없을 경우 블록(144)으로 브랜치함으로써 재시행을 개시시킨다. 에러가 있을 경우, 결정블록(142)은 블록(110)을 통하여 포기한다.
블록(144)은 SMF RAM(20-44)내에 그 에러를 기억시키고 주메모리(10~12)로부터의 비트를 재시행한다.
결정블록(148)은 주메모리 비정정가능(적색) 에러에 대해 검사하고, 블록(146)은 디스플레이 콘솔(34)상에 적색에러의 발생을 디스플레이한다.
결정블록(160)은, 주메모리 재로드 재시행 비트가 세트되는지의 여부를 그리고 블록(168)에서 그 동작을 그래서 포기하는지의 여부를 검사한다.
블록(162)은 메모리 재로드 재시행비트가 사전에 세트되지 않았을 경우 세트시킨다.
이어서, 블록(164)은 블록(116)에서와 같이 디스크로부터 주메모리(10~12)를 재로드한다. 상술된 바와 같이 주메모리 배터리 백업이 있었을 경우, 전송은 폐쇄되며, 따라서, 개시 주메모리 어드레스는 에러가 있었던 사전 페이지의 개시 주메모리 어드레스이다. 배터리 백업이 없을 경우, 전체 제어기억부 펌웨어가 디스크로부터 주메모리(10~12)로 송출된다.
결정블록(166)은 데이타가 디스크상에서 발견되었는지를 다시 검사한다. 그렇지 않을 경우, 블록(168)은 포기 펌웨어 로드 디스플레이를 발생시키고 그 펌웨어는 블록(259)에서 방출한다. 주지할 것은, 어느 블록(110) 포기도 블록(168, 259)을 통하여 방출한다는 것이다.
결정블록(166)이 데이타가 디스크상에서 발견되었고 주메모리(10~12)내에 기억되었다는 것을 나타낼 경우, 블록(170)은 주메모리(10~12)가 로드된다는 사실을 디스플레이한다. 이어서, 블록(133)은 블록(134)으로 브랜치하고 그 동작이 반복된다.
결정블록(148)이 적색에러가 없다는 것을 나타낸 경우, 블록(150)은 세트된 경우의 주메모리 재로드 재시행 비트를 리셋시킨다.
결정블록(152)은, 주메모리(10~12)가 새로운 형태의 메모리인지의 여부를 나타내고, 그래서 데이타를 전송할 재시행 고장인지의 여부를 나타내는 결정블록(154)이 주메모리(10~12)로부터의 재시행 고장비트를 검사할 경우, 블록(177)이 재시행을 재시시킨다.
결정블록(152)이 재시행 비트를 갖지 않는 구형태의 메모리를 나타낼 경우, 블록(156)에서 SMF(20)는 로딩을 행하게끔 사용되었던 포트의 신드롬 레지스터를 판독할 명령을 송출한다.
결정블록(158)은 신드롬 레지스터의 내용이 SMF(20)에 의해 수신되었는지의 여부를 검사한다. 그 내용이 수신되지 않았다면, 블록(177)은 재시행을 개시시킨다. 그렇지 않다면, 결정블록(172)은 신드롬 레지스터 로드에러 비트를 검사한다. 그것이 세트될 경우, 블록(176)은 디스플레이 콘솔(34)상에 로드에러를 디스플레이한다.
결정블록(178)은, SMF(20-44) 위치내의 재시행 비트가 세트되었는지의 여부를 검사함으로써, 재시행 동작을 개시시킨다. 재시행 비트가 세트되지 않을 경우, 블록(180)이 그 재시행 비트를 세트시키고, 블록(182)은 “포트 재시행”을 디스플레이하며, 블록(133)이 제어기억부(3-2)에 대한 로딩을 반복하게끔 블록(134)으로 브랜치한다.
결정블록(178)이 재시행 비트가 세트된 것을 나타낼 경우, 블록(184)이 “포트 재시행 고장 및 포기”를 디스플레이 콘솔(34)상에 디스플레이한다.
이어서 블록(186)은 포트 재시행 비트를 리셋시키고, 블록(188)은 마스터글리어 신호를 CPU을 일시 폐쇄시키게끔 능동포트로 송출한다.
블록(190)은 사용가능 포트의 리스트로부터 고장 포트의 포트채널번호를 제거한다.
결정블록(192)은 CSS 제2포트가 선택되었는지의 여부를 검사한다. 그렇지 않을 경우, 블록(194)이 제2포트를 선택한다.
결정블록(196)은 제2포트가 사용가능한지의 여부를 검사한다. 그렇지 않을 경우, 결정블록(198)이 제2CSS가 사용가능 포트를 가졌는지의 여부를 검사한다. 제2CSS의 포트가 사용가능하지 않을 경우, 결정블록(208)이 어느 포트가 사용가능한지의 여부를 검사한다. 사용가능한 포트가 없다면, 블록(121)이 사용가능한 포트가 없다는 것을 디스플레이하는 블록(122)으로의 브랜치를 발생시킨다.
결정블록(123)은 사용가능한 포트가 없는 것을 검사하고, 블록(110)은 로드의 포기를 발생시킨다.
결정블록(198)이 제2CSS가 사용가능 포트를 가졌다는 것을 나타낸 경우, 결정블록(200)이 포트가 선택되었는지의 여부를 검사한다. 그 포트가 사전에 선택되었다면, 블록(207)은 후속 최하위 채널번호 포트를 선택한다.
결정블록(200)이 제2CSS로부터의 포트가 사전에 선택되지 않았다는 것을 나타낼 경우, 블록(202)은 최하위 채널번호를 갖는 제2CSS 포트를 선택한다.
결정블록(204)은 그 포트가 사용가능한지의 여부를 검사한다. 그렇지 않다면 블록(206)이 제2CSS의 다른 포트를 선택한다. 결정블록(196) 또는 결정블록(204)이 포트가 사용가능한 것을 나타내거나 블록(206)이 포트를 선택했을 경우, 블록(216)이 SMF RAM(20-44)내에 그 포트 채널번호를 기억시킨다.
결정블록(210)이 제어기억부(3-2)가 완전히 로드되지 않은 것을 발견할 경우, 주메모리(10~12)가 배터리 백업을 가졌다면 블록(212)이 데이타의 후속 페이지가 주메모리(10~12)로부터 판독되어 제어기억부(3-2)내에 기억되게끔 한다. 그렇지 않을 경우, 완전 제어기억부 펌웨어 로드가 디스크로부터 판독되어 주메모리에 기억된다.
블록(214)은 능동포트의 채널번호를 얻고, 블록(216)은 SMF RAM(20-44)내에 그 채널번호를 기억시킨다.
블록(218)은 선택된 포트의 채널번호를 프린트하고, 블록(133)은 로드 모드로 CSS를 세트시키게끔 그리고 카운터(3-4)의 제어기억부 개시 어드레스를 기억한다.
결정블록(21)은 제어기억부 검증동작에 대해 준비하게끔 SMF RAM(20-44)내에 작업채널을 셋업시킨다.
블록(222)은 두가지 명령, 즉 16진수 0F의 기능코드를 갖는 리셋 로드 모드 명령 및 16진수 0B의 기능코드를 갖는 포트 온라인 명령을 송출함으로써 검증모드를 개시시킨다. CPU는 제어기억부 데이타를 독출하고, 패리티를 검사하며, 검사합계를 행한다.
결정블록(224)은 시스템버스 인터페이스 그 명령들을 인식했다는 것을 검사한다. 에러응답이 수신되었을 경우, 블록(224)에서 발생된 에러가 없을 경우, 블록(226)은 검증동작이 CPU에 의해 완료되는 것을 보장하기 위해 10밀리초 동안 SMF(20)의 추가 동작을 보류시킨다.
블록(228)은 SMF(20)로 신드롬 레지스터의 내용을 송출할 명령을 능동 포트로 송출한다.
결정블록(230)은 신드롬 레지스터의 내용이 SMF(20)에 의해 수신되었다는 것을 검사한다. 내용이 수신되었을 경우, 결정블록(232)이 비지비트가 세트되는지의 여부를 검사한다. 신드롬 레지스터의 내용이 수신되지 않았거나 비지비트가 세트되었다면, 블록(244)은 디스플레이 콘솔(34)상에 “고장검증”을 디스플레이하고 블록(246)은 마스터 클리어 신호를 능동 포트로 송출한다. 검증동작이 성공적으로 완료되지 않았을 경우, 비지비트는 세트된채로 유지된다.
결정블록(248)은 SMF RAM(2-44)내의 에러 재시행 비트가 세트되는지의 여부를 검사한다. 이것이 제2검증고장인 것을 나타내는 에러 재시행 비트가 세트될 경우, 블록(252)이 SMF RAM(20-44)내의 포트 사용가능 비트를 리셋시키고, SMF(20)가 또 다른 포트를 찾는다. 결정블록(248)이 검증에러 재시행 비트가 세트되지 않은 것을 나타낼 경우, 블록(250)이 그것을 세트한다.
결정블록(232)이 비지비트가 세트되지 않은 것을 나타낼 경우, 블록(234)은 디스플레이 콘솔(34)상에 “포트로드”를 디스플레이한다. 블록(236)은 나중 사용을 위해 SMF RAM(20-44)내의 포트 사용 비트를 세트 시킨다.
블록(238)은 제어기억부가 성공적으로 로드된 포트의 채널번호를 리셋시킨다.
블록(240)은 SMF RAM(20-44)내에 기억된 제1포트 플래그를 리셋시킨다. 결정블록(242)은 포트 채널 번호 모두가 사용되었는지의 여부를 검사한다. 그렇지 않다면, 블록(227)은 다른 포트의 신드롬 레지스터를 검사하게끔 블록(228)으로 브랜치한다.
결정블록(242)이 SAM RAM(20-44)내에 기억된 포트 플래그들이 모두 클리어되지는 않은 것을 나타낼 경우, 블록(227)은 신드롬 레지스터를 판독하게끔 블록(228)으로 브랜치한다.
포트 플래그가 모두 클리어될 경우, 결정블록(254)이 어느 포트가 재시행을 위해 사용가능한지의 여부를 결정하게끔 SMF RAM를 검사한다. 포트가 재시행을 위해 사용가능하다면, 블록(121)은 최하위 채널번호를 갖는 재시행을 요구하는 포트의 재시행을 개시시키게끔 블록(122)으로 브랜치한다.
결정블록(254)에서 포트가 재시행을 요구하지 않을 경우, 다시말하면 제어기억부 모두가 로드될 경우, 블록(256)은 포트 채널번호가 로드되었다는 정보를 기억한다.
결정블록(258)은 2개의 CSS에 대한 시스템버스 인터페이스들의 개정번호를 기억하는 SMF RAM(20-44)내의 워드를 검사한다. 그 2가지 개정번호가 동일하다면 블록(264)은 제어기억부 모두가 로드된 것을 나타내는 정보로 콘솔디스플레이(34)를 갱신한다.
블록(266)은 CPU의 품질논리검사를 개시시키고, 블록(268)은 로드 펌웨어 루틴을 오프라인으로 설정함으로써 그것을 종결지며, 블록(270)은 로드 루틴의 종료를 지정하고 SMF는 후속동작을 위해 사용가능하다.
결정블록(258)은 두가지 개정번호가 동일하지 않다는 것을 나타낼 경우, 블록(260)은 제2CSS에 대한 새로운 하드웨어 개정번호를 판독한다. 블록(262)은 제1CSS 개정번호를 SMF RAM(20-44) 위치내의 제2CSS 개정번호로 대체시킨다. 이어서, 블록(111)은 제2CSS의 제어기억부를 새로운 개정번호에 대한 펌웨어로 로드하게끔 블록(112)으로 브랜치한다. CSS3은 제1개정번호에 대한 제어기억부 펌웨어를 갖고, CSS5은 제2개정번호에 대한 제어기억부 펌웨어를 가지며, CSS3 및 CSS5에는 상이한 특성이 부여된다.
[타이밍도]
제7도에는, 시스템버스 인터페이스(2-10A)의 채널번호 16진수 00인 포트 0을 사용하는 제어기억부(3-2) 로드 및 검증동작에 대한 타이밍도가 도시되어 있다. 포트 1을 사용할 경우의 포드 및 검증동작에 대한 타이밍도는 유사하다. 오직 다른점은, 제7도의 타이밍도에서 신호 P0XXXX가 신호 P1XXXX로 대체된다는 점이다.
SMF(20)는 모든 부시스템을 초기 설정하는 버스클리어신호 BSMCLR을 시스템버스(2)를 통하여 발생시킨다. 특히, 신호 BSMCLR의 하강에지는 타이밍 발생기(3-8)의 클럭 링카운터(동시생략)을 정지시킴으로써 CPU0(4-2)과 CPU1(6-2)을 차례대로 정지시키는 P0MSYN 신호를 금지시킨다. CPU0(4-2)은 로드 동작을 위해 금지되지만 검증동작을 위해 작동되는데, 왜냐하면 CPU0(4-2)이 그것이 수신하는 제어기억부 신호의 페리티를 검증하기 때문이다.
SMF(20)는 16진수 00의 채널번호 및 16진수 00의 기능코드를 갖는 제5b도의 기입 포트 명령을 시스템 버스(2)상에 송출한다. 16진수 00인 채널번호는 CNTL0 논리부(2-15)(제3도)를 활성화시킨다. 기능코드 16진수 0D는 제어기억부 로드신호 P0CSLD 발생시킨다. 제어기억부 로드 동작을 제어하는 신호 PXCSLD와 로드 및 검증동작을 제어하는 신호 PXCSLV를 발생시키는 제어기억부 로드제어부(3-6)에 신호 P0CSLD가 인가된다. 주지해야 할 것은, 그 신호 PXCSLD 및 PXCSLV가 채널번호가 포트 0이나 포트1을 어드레스할 경우에 발생된다는 점이다.
SMF(20)는 다음에 채널번호 16진수 00 및 기능코드 16진수 11을 포함하는 제5b도의 형태로 로드 어드 레스 카운터 명령을 송출한다. CNTL0(2-15)은 기능코드 신호에 응답하여 로드 어드레스 신호 P0LADD 및 로드 동기화 신호 P0LSYN을 발생시킨다.
카운트 신호 CST1 내지 CST5를 발생시키게끔 제어기억부 타이밍링을 개시시키기 위해 타이밍 발생기(3-8)에 로드동기화 신호 P0LSYN이 인가된다. 신호 PXCSLD 및 CST5는 카운터(3-4)에 인가되는 클럭신호 CSACLK를 발생시킨다. 신호 PXLADD는 로드제어부(3-6)에 인가되는 신호 P0LADD에 의해 발생된다. 신호 PXLADD는 카운터(3-4)에 인가되어, 이 실시예에서는 16진수 0000인 로드어드레스 명령의 데이타 필드 값으로 그 카운터를 세트시킨다. 이어서, SMF(20)는 제5c도에 도시된 바와 같은 형태로 일련의 명령을 주메모리(10~12)로 송출한다. 어드레스 필드는 제어기억부(3-2)의 각 이중워드(32비트)의 주메모리(10~12)위치를 포함한다. 데이타 필드는 이 실시예에서는 16진수 00인 수신 CPU 포트의 채널번호를 포함한다. 즉, SMF(20)는 판독메모리 명령을 발생시키고 주메모리로부터 판독된 데이타는 CPU0(4-2)으로 송출된다.
제2반 버스 사이클 명령은 어드레스 필드에서의 CPU0(4-2) 채널번호 16진수 00과, 데이타 필드에서의 어드레스된 주메모리 위치내용을 포함한다. 신호 P0LSYN은 가 제2반 버스 사이클동안 타이밍링을 개시시킨다. 수신기(2-30), FIFO 레지스터(2-34), 레지스터(2-12), 레지스터(2-14)를 개재하여 주메모리(10~12)로부터 수신된 이중 워드는 CST1 시간에서 로드 레지스터 0(4-14)내에 기억된다. 기입 인에이블 신호 CSWE1 내지 CSWE4는 레지스터(4-14)의 내용을 카운터(3-4)에 의해 지정된 어드레스에서 제어기억부(3-2)안으로 기입하기 위한 CST4에서 발생된다. 신호 CSACLK는 카운터(3-4)를 증분시키게끔 CST5 시간에서 발생된다. 제어기억부(3-2)는 신호 CSWE1에 의해 인에이블되어 제1이중 워드를 기입하고, 제2이중 워드에 대해서는 CSWE2, 제3이중 워드에 대해서는 CSWE3, 그리고 제4이중 워드에 대해서는 CSWE4에 의해 인에이블된다. 카운터(3-4)는 각 제2반 버스 사이클 명령동안 후속 4 이중 워드를 지정된 제어기억부(3-2) 위치 안으로 기입하기 위해 증분된다.
SMF(20)는, 제어기억부(3-2)가 완전히 로드된 후에 기능코드 16진수 0F 및 채널번호 16진수 00을 갖는 리셋로드모드 명령(제5b도)을 송출한다. 이에 의해, CNTL0(2-5)이 신호 P0CSLD를 리셋시키게 된다. 이것은 신호 PXCSLD를 리셋시키고, 로드제어부(3-6)내의 카운터(3-4) 클리어신호 PXACLR을 발생시킨다.
SMF(20)는 16진수 00 채널번호 및 16진수 0B의 기능코드를 포함하는 포트온라인 명령을 제5b도에 도시된 바와 같은 형태로 송출한다. 이 명령은 파스터 싱크 제어신호 P0MSYN을 재개시키고, 또한 16진수 0000으로 어드레스 카운터(3-4)를 신호 PXACLR과 관련하여 리셋시키는 클럭신호 CSACLK를 발생시킨다.
신호 P0MSYN은 카운터(3-4)를 증분시킬 신호 CSACLK를 번갈아 발생시키는 사이클신호 P0TME4를 발생시키게끔 링카운터를 개시시킨다. 전체 제어기억부(3-2)가 검증되었다는 것을 나타내는 신호 CSDONE가 발생될 때까지, 제어기억부(3-2)의 각 어드레스된 위치의 내용은 레지스터(4-12, 3-10)안으로 로드된다.
SMF(20)는 판독 신드롬 레지스터 명령을 송출할 포트 온라인 명령을 송출한 후에 10밀리초 동안 대기한다. 이것은 검증동작을 성공적으로 완료시키기에 충분한 시간이어야 한다. 판독 신드롬 레지스터 명령은 채널번호 16진수 00과 기능코드 16진수 00을 포함한다. 신드롬 레지스터(2-13)의 내용은 레지스터(2-14, 2-11) 및 구동기(2-32)를 개재하여 시스템버스(2)상에 송출된다. SMF(20)는 신호 P0CSBY에 의해 세트되는 비지비트를 검사한다. 그 비지비트가 세트될 경우, 제어기억부 로드는 성공적으로 완료되지 않았다. 이 경우에, SMF(20)는 동일 포트 0을 통하여 로드 및 검증동작을 반복할 수 있거나, 16진수 01의 채널번호를 갖는 로드명령을 송출함으로써 포트 1을 통하여 로드하고자 할 수 있다.
다음은 바람직한 실시예의 신호들에 대한 부울식이다. 제7도에 도시된 바와 같이, 포트 0 신호만이 P0XXXX와 같은 것으로서 도시된다. 포트 1에 적용되는 신호 P1XXXX 형태로의 유사한 방정식은, 포트0의 신호를 포트1논리에 결부시키는 것이 본 기술 분야에 숙련된 자에게는 명백하므로, 생략된다.
금지신호 P0INHNS는 마스터 싱크 신호 P0MSYN이 신호 BSMCLR의 하강에지후 사이클링하지 못하게 하여, 이에 의해 CPU0(4-2)이 디스에이블된다.
P0INHS=BSMCLR
신호 P0INHS는 신호 P0MSYN을 개재시키게끔 16진수 0B의 기능코드를 갖는 포트 온라인 명령에 의해 리셋된다.
Figure kpo00021
신호 P0CSLD는 16진수 0D의 기능코드를 갖는 로드모드 명령에 의해 세트된다.
Figure kpo00022
여기서, 신호 F0CMEN은 어드레스 신호
Figure kpo00023
및 신호 BSRINT를 갖는 채널번호 16진수 00으로 인식된 SMF 사이클을 가리킨다.
세트 P0CSLD는 16진수 0F의 기능코드를 갖는 리셋 로드 모드 명령에 의해 리셋된다.
Figure kpo00024
신호 P0LADD는 16진수 11의 기능코드를 갖는 로드어드레스 명령에 의해 세트된다.
Figure kpo00025
신호 P0LADD는 시스템버스(2) 사이클 종료시 리셋된다.
신호 P0LSYN은 기능코드 16진수 11에 의해 또한 세트되고, 로드모드신호 P0CSLD가 세트되는 각 시스템버스(2) 판독 SHBC 명령을 사이클링한다.
Figure kpo00026
신호 DOSHBA는 SHBC 명령에 대한 채널번호 16진수 00을 수신하는 각 FIFO 레지스터(2-34) 사이클 동안 세트된다.
신호 PXCSLV는 로드 및 검증동작동안 세트되고, 리셋신호 P0CSRT에 의해 리셋된다.
Figure kpo00027
신호 CSACLK는 다음과 같이 로드모드 동안 사이클링 된다.
Figure kpo00028
검증모드 동안
CSACLK=PXCSLD. P0TME4. PT0SEL
신호 PT0SEL은 CPU0(4-2) 선택신호이다.
신호 CSACLK는 신호 CSDONE에 의해 검증신호의 종료시 금지된다.
신호 PXACLR은 검증모드의 개시시 어드레스 카운터(3-4)의 리셋팅을 인에이블시킨다.
Figure kpo00029
신호 PXACLR은 다음과 같이 세트되는 신호 P0CSVF에 의해 리셋된다. 신호 PXMCLR은 마스터 클리어 기능을 수행한다.
Figure kpo00030
신호 P0CSRT는 신호 P0CSVF를 리셋시킨다.
Figure kpo00031
신호 PXLDER은 로드 에러를 나타내고 신호 PXVFER은 검증에러를 나타낸다.
비지 신호 P0CSBY는, 포트 0 이 기능을 수행하는지를 나타내고, 시스템버스(2) 명령에 대해서는 사용가능하지 않다.
P0CSBY=PXCSLV+P0INHS
로드 또는 검증에러를 나타내는 리셋 신호 P0CSRT가 세트되지 않을 경우, 신호 PXCSLV가 세트된채로 유지된다.
따라서, 비지신호 P0CSBY는 리셋되지 않고 신드롬 레지스터(2-13)내에 유지된다.
SMF(20)는 신호 P0SSY를 발생시킬 기능코드 16진수 00인 판독 신드롬 레지스터 명령을 송출한다.
P0SSYE=F0SHEN. 20. 21. 22
신호 P0SSYE는 신드롬 레지스터(2-13)의 출력을 인에이블시킨다.
제어기억부 기입인에이블 신호 CSWE1-4는 카운터(3-4)내에서 발생된다.
카운터(3-4)내의 내부 카운터는 네가지 상태를 갖는 신호 CSADG0 및 CSADG1(도시생략)을 발생시키고, SHBC 명령마다 증분된다. 신호
Figure kpo00032
는 로드에러가 검출되지 않았다는 것을 나타낸다.
Figure kpo00033
지금까지, 본 발명을 구체적인 실시예와 관련하여 설명하였지만, 본 기술분야에 숙련된 자에게는 상술한 기재에 비추어 많은 변형, 수정 및 변화가 가능하다는 것이 명백할 것이다. 따라서, 본 명세서의 청구범위는 이러한 개념에 속하는 여러가지 변형 수정된 변화를 모두 포함시키고자 하는 것이다.

Claims (10)

  1. 적어도 하나의 데이타 프로세서(3, 5)와 시스템버스(2)에 결합된 메모리(10, 12)를 갖는 데이타 프로세서 시스템내에서 상기 프로세서의 제어기억부(3-2)를 펌웨어로 도드하기 위한 장치에 있어서, 복수의 명령을 발생시키기 위한 관리수단(20)과 ; 상기 제어기억부는 상기 어드레스 레지스터를 초기화하기 위한 상기 수단에 의해 상기 버스(2)로 전송된 제1복수의 명령에 응답하는 어드레스 레지스터(3-4)를 포함하며 ; 상기 메모리(10, 12) 및 상기 제어기억부는 상기 메모리로부터 펌웨어를 판독하고 각각의 제2복수의 상기 명령에 대해 제1명령을 발생시키기 위한 상기 관리수단에 의해 상기 버스로 전송된 상기 제2복수의 명령에 응답하고, 각각의 상기 제1명령은 상기 펌웨어의 유니트를 제어하며 ; 상기 제어기억부는 상기 제1명령들 각각에 응답하여, 이 제1명령들 각각에 응답하여 증분되는 상기 어드레스 레지스터에 의해 지정된 상기 제어기억부 위치에서 상기 펌웨어의 유니트를 기억시키는 것을 특징으로 하는 장치.
  2. 제1항에 있어서, 상기 제어 기억수단이 제3복수의 명령에 응답하여, 상기 제어기억부내에 기억된 상기 각 펌웨어 유니트를 검증하는 것을 특징으로 하는 장치.
  3. 제1항에 있어서, 상기 명령들 각각이 부시스템을 지정하는 채널번호 및, 상기 부시스템이 수행할 동작을 지정하는 기능 코드를 포함하는 것을 특징으로 하는 장치.
  4. 제3항에 있어서, 상기 제어 기억수단이 제1의 상기 제1복수의 명령들을 수신하고 제1채널번호에 의해 인에이블 되어, 제1기능코드를 디코드하고 제1상태에서의 로드 신호, 레지스터내에 기억되는 비지 신호 및, 로드 및 검증 신호를 발생시키기 위한 디코더 수단을 구비하는 것을 특징으로 하는 장치.
  5. 제4항에 있어서, 상기 디코더 수단이 제2의 상기 제1복수의 명령들을 수신하고 상기 제1채널번호에 의해 인에이블 되어, 어드레스 신호 및 동기화 신호를 발생시키기 위한 제2기능코드를 디코드하고, 상기 제어 기억수단이 상기 동기화 신호에 응답하여 클럭신호를 발생시키기 위한 타이밍 수단을 아울러 구비하며, 상기 어드레스 레지스터 수단이 상기 제1상태의 상기 로드신호 및 상기 클럭신호에 응단하여 초기 설정하는 것을 특징으로 하는 장치.
  6. 제5항에 있어서, 상기 제2복수의 명령들 각각이 상기 제1채널번호, 메모리 판독 동작을 지정하는 제어신호 및 상기 메모리 수단에서의 위치를 지정하는 어드레스를 포함하는 것을 특징으로 하는 장치.
  7. 제6항에 있어서, 상기 메모리 수단이 상기 제2복수의 명령들 각각의 상기 제어신호에 의해 인에이블 되어, 상기 위치를 독출하고, 상기 위치의 내용 및 상기 제1채널번호를 포함하는 상기 제1명령들 각각을 발생시키는 것을 특징으로 하는 장치.
  8. 제7항에 있어서, 상기 디코딩 수단이 상기 복수의 제1명령들 각각의 상기 제1채널번호에 응답하여, 일련의 상기 동기화 신호를 발생시키는 것을 특징으로 하는 장치.
  9. 제8항에 있어서, 상기 타이밍 수단이 상기 일련의 상기 동기화 신호에 응답하여, 일련의 상기 클럭 신호를 발생시키는 것을 특징으로 하는 장치.
  10. 제9항에 있어서, 어드레스 카운터 수단이 상기 일련의 상기 제1클럭신호에 의해 증분되어, 일련의 순차 어드레스 신호를 발생시키는 것을 특징으로 하는 장치.
KR1019870014622A 1986-12-18 1987-12-18 중앙 부시스템의 제어 기억 메모리에 대한 로딩 및 검증장치 KR940003382B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US943984 1986-12-18
US06/943,984 US4910666A (en) 1986-12-18 1986-12-18 Apparatus for loading and verifying a control store memory of a central subsystem
US943,984 1986-12-18

Publications (2)

Publication Number Publication Date
KR880008151A KR880008151A (ko) 1988-08-30
KR940003382B1 true KR940003382B1 (ko) 1994-04-21

Family

ID=25480595

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019870014622A KR940003382B1 (ko) 1986-12-18 1987-12-18 중앙 부시스템의 제어 기억 메모리에 대한 로딩 및 검증장치

Country Status (23)

Country Link
US (1) US4910666A (ko)
EP (1) EP0273260B1 (ko)
JP (1) JPS63192134A (ko)
KR (1) KR940003382B1 (ko)
CN (1) CN1012597B (ko)
AT (1) ATE81410T1 (ko)
AU (1) AU601785B2 (ko)
BR (1) BR8706854A (ko)
CA (1) CA1293330C (ko)
DE (1) DE3782153T2 (ko)
DK (1) DK670287A (ko)
ES (1) ES2035845T3 (ko)
FI (1) FI93154C (ko)
GR (1) GR3006708T3 (ko)
IL (1) IL84709A (ko)
MX (1) MX168284B (ko)
MY (1) MY102649A (ko)
NO (1) NO875228L (ko)
NZ (1) NZ222779A (ko)
PH (1) PH25627A (ko)
PT (1) PT86392B (ko)
YU (1) YU232987A (ko)
ZA (1) ZA879281B (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0235524A (ja) * 1988-03-14 1990-02-06 Advanced Micro Devicds Inc バスコンパチブルプログラマブルシーケンサ
JPH021773U (ko) * 1988-06-17 1990-01-08
JP2664950B2 (ja) * 1988-08-31 1997-10-22 日本電気株式会社 入出力処理装置
US6092153A (en) * 1988-11-14 2000-07-18 Lass; Stanley Edwin Subsettable top level cache
DE3917715A1 (de) * 1989-05-31 1990-12-06 Teldix Gmbh Rechnersystem
US5319770A (en) * 1989-10-03 1994-06-07 International Business Machines Corporation Data processing method and apparatus for verifying adapter description file choices
US5243702A (en) * 1990-10-05 1993-09-07 Bull Hn Information Systems Inc. Minimum contention processor and system bus system
US5210757A (en) * 1990-10-05 1993-05-11 Bull Hn Information Systems Inc. Method and apparatus for performing health tests of units of a data processing system
US5117430A (en) * 1991-02-08 1992-05-26 International Business Machines Corporation Apparatus and method for communicating between nodes in a network
US6230286B1 (en) * 1993-01-28 2001-05-08 Siemens Information And Communication Products Llc Computer system failure reporting mechanism
US5485572A (en) * 1994-04-26 1996-01-16 Unisys Corporation Response stack state validation check
US5659614A (en) * 1994-11-28 1997-08-19 Bailey, Iii; John E. Method and system for creating and storing a backup copy of file data stored on a computer
US5717887A (en) * 1995-07-28 1998-02-10 Nomai Sa System for the automatic substitution of control firmware embedded in a removable disk drive
KR100387077B1 (ko) * 1995-12-23 2003-08-14 삼성전자주식회사 온 라인 상태에서 시스템의 기능 정정방법
US5794254A (en) * 1996-12-03 1998-08-11 Fairbanks Systems Group Incremental computer file backup using a two-step comparison of first two characters in the block and a signature with pre-stored character and signature sets
US5826090A (en) * 1997-03-17 1998-10-20 International Business Machines Corporation Loadable hardware support
GB2332541B (en) 1997-12-20 2002-12-04 Ibm Boot failure recovery system and method
KR100295055B1 (ko) * 1998-09-25 2001-07-12 윤종용 전압조정이가능한내부전원회로를갖는반도체메모리장치
US6496900B1 (en) * 2000-09-12 2002-12-17 3Ware, Inc. Disk array system, controller, and method for verifying command data written to disk drives
US20030056033A1 (en) * 2001-09-17 2003-03-20 Atto Technology, Inc. Method of ensuring the integrity of a command instruction exchanged between a host device and an ATA device
US7594135B2 (en) * 2003-12-31 2009-09-22 Sandisk Corporation Flash memory system startup operation

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51114040A (en) * 1975-03-31 1976-10-07 Mitsubishi Electric Corp A micro-program writing system
US4084229A (en) * 1975-12-29 1978-04-11 Honeywell Information Systems Inc. Control store system and method for storing selectively microinstructions and scratchpad information
US4204252A (en) * 1978-03-03 1980-05-20 Digital Equipment Corporation Writeable control store for use in a data processing system
US4432050A (en) * 1978-10-02 1984-02-14 Honeywell Information Systems, Inc. Data processing system write protection mechanism
US4335426A (en) * 1980-03-10 1982-06-15 International Business Machines Corporation Remote processor initialization in a multi-station peer-to-peer intercommunication system
US4511967A (en) * 1983-02-15 1985-04-16 Sperry Corporation Simultaneous load and verify of a device control store from a support processor via a scan loop
JPS60193047A (ja) * 1984-03-14 1985-10-01 Nec Corp マイクロプログラムのロ−ドチエツク方式
US4763243A (en) * 1984-06-21 1988-08-09 Honeywell Bull Inc. Resilient bus system
JPS6159531A (ja) * 1984-08-31 1986-03-27 Hitachi Ltd マイクロプログラムロ−ド装置

Also Published As

Publication number Publication date
ES2035845T3 (es) 1993-05-01
ZA879281B (en) 1988-06-09
NO875228D0 (no) 1987-12-15
DK670287A (da) 1988-08-26
CA1293330C (en) 1991-12-17
CN87108350A (zh) 1988-08-17
PT86392B (pt) 1993-12-31
FI93154B (fi) 1994-11-15
IL84709A (en) 1991-03-10
DE3782153D1 (de) 1992-11-12
EP0273260A1 (en) 1988-07-06
US4910666A (en) 1990-03-20
MY102649A (en) 1992-08-17
AU8214687A (en) 1988-06-23
FI93154C (fi) 1995-02-27
DK670287D0 (da) 1987-12-18
GR3006708T3 (ko) 1993-06-30
EP0273260B1 (en) 1992-10-07
CN1012597B (zh) 1991-05-08
MX168284B (es) 1993-05-14
PT86392A (pt) 1989-01-17
ATE81410T1 (de) 1992-10-15
NO875228L (no) 1988-06-20
AU601785B2 (en) 1990-09-20
FI875513A0 (fi) 1987-12-16
BR8706854A (pt) 1988-07-26
PH25627A (en) 1991-08-08
JPH0528852B2 (ko) 1993-04-27
IL84709A0 (en) 1988-05-31
KR880008151A (ko) 1988-08-30
DE3782153T2 (de) 1993-02-11
JPS63192134A (ja) 1988-08-09
FI875513A (fi) 1988-06-19
YU232987A (en) 1990-12-31
NZ222779A (en) 1990-07-26

Similar Documents

Publication Publication Date Title
KR940003382B1 (ko) 중앙 부시스템의 제어 기억 메모리에 대한 로딩 및 검증장치
US4914576A (en) Apparatus and method of loading a control store memory of a central subsystem
US5274797A (en) Multiprocessor system with centralized initialization, testing and monitoring of the system and providing centralized timing
US5068851A (en) Apparatus and method for documenting faults in computing modules
EP0676696B1 (en) Parallel port circuits in computer systems
RU2137182C1 (ru) Выполнение инструкции обработки данных
CA1081853A (en) Control store checking system and method
JPS61180355A (ja) ユ−ザインタ−フエイスプロセツサ
JPH0423292B2 (ko)
US6304984B1 (en) Method and system for injecting errors to a device within a computer system
US4231089A (en) Data processing system with apparatus for correcting microinstruction errors
EP0415546A2 (en) Memory device
EP0247605B1 (en) System management apparatus for a multiprocessor system
EP0382894B1 (en) Apparatus for the programmed suspension of processor operation for retry recovery and debug
KR930004946B1 (ko) 한 부시스템에 의해 발생된 또다른 부시스템을 위한 버스 명령을 갖는 데이타 처리 시스템
US4628445A (en) Apparatus and method for synchronization of peripheral devices via bus cycle alteration in a microprocessor implemented data processing system
US6101600A (en) Resetting a CPU
EP0416732B1 (en) Targeted resets in a data processor
EP0138045A2 (en) Apparatus and method for synchronization of peripheral devices via bus cycle alteration in a microprocessor implemented data processing system
JPH10293743A (ja) バス転送処理システム

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20070402

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee