KR100338626B1 - The Duplication Method for Communication system - Google Patents

The Duplication Method for Communication system Download PDF

Info

Publication number
KR100338626B1
KR100338626B1 KR1020000050497A KR20000050497A KR100338626B1 KR 100338626 B1 KR100338626 B1 KR 100338626B1 KR 1020000050497 A KR1020000050497 A KR 1020000050497A KR 20000050497 A KR20000050497 A KR 20000050497A KR 100338626 B1 KR100338626 B1 KR 100338626B1
Authority
KR
South Korea
Prior art keywords
processor
processor board
board
cpu
active mode
Prior art date
Application number
KR1020000050497A
Other languages
Korean (ko)
Other versions
KR20020017283A (en
Inventor
임환주
Original Assignee
윤종용
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 윤종용, 삼성전자 주식회사 filed Critical 윤종용
Priority to KR1020000050497A priority Critical patent/KR100338626B1/en
Publication of KR20020017283A publication Critical patent/KR20020017283A/en
Application granted granted Critical
Publication of KR100338626B1 publication Critical patent/KR100338626B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/22Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/74Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for increasing reliability, e.g. using redundant or spare channels or apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure

Abstract

본 발명은 통신프로세서 모듈들을 각각 포함하는 제 1 및 제 2 프로세서 보드들을 구비하는 이중화구조의 통신시스템에서, 상기 제 1 프로세서 보드와 제 2 프로세서 보드간의 이중화 절체방법에 관한 것이다. 이를 위해 상기 제 1 및 제 2 프로세서 보드들을 각각 액티브 및 스탠바이모드로 결정하는 단계와, 상기 결정된 액티브 및 스탠바이모드에서 상기 제 1 및 제 2 프로세서 보드들내의 상기 통신 프로세서 모듈들을 초기화하는 단계와, 상기 액티브모드에 있는 상기 제 1 프로세서 보드내의 CPU가 프로그램의 수행시 발생되는 데이터를 상기 스탠바이 모드에 있는 상기 제 2 프로세서보드내의 메모리에 저장하는 단계와, 상기 액티브 모드에 있는 상기 제 1 프로세서 보드에서 상기 스탠바이 모드에 있는 상기 제 2 프로세서 보드로 절체조건이 발생하는지를 판단하는 단계와, 상기 절체조건발생시, 상기 액티브모드에 있는 상기 제 1 프로세서보드 내의 CPU가 절체조건발생 플래그 를 세팅하는 단계와, 상기 절체조건발생 플래그 세팅후, 상기 제 1 프로세서 보드 내의 상기 통신프로세서 모듈들이 수행중인 기능을 완료하고 디스에이블하는 단계 와, 상기 액티브모드에 있는 상기 제 1 프로세서보드내의 CPU가 절체 인터럽트명령 비트를 세팅하는 단계와, 상기 액티브모드에 있는 상기 제 1 프로세서보드내의 CPU가 프로그램 카운터를 나타내는 코어 레지스터값을 상기 스탠바이모드에 있는 상기 제 2 프로세서 보드로 전달하는 단계로 이루어짐을 특징으로 하고 있다.The present invention relates to a redundancy switching method between a first processor board and a second processor board in a communication system of a redundant structure including first and second processor boards each including communication processor modules. To this end, determining the first and second processor boards in an active and standby mode, respectively, initializing the communication processor modules in the first and second processor boards in the determined active and standby modes, and Storing, by the CPU in the first processor board in the active mode, data generated when the program is executed in a memory in the second processor board in the standby mode; and in the first processor board in the active mode, Determining whether a transfer condition occurs to the second processor board in the standby mode; when the transfer condition occurs, setting a transfer condition generation flag by a CPU in the first processor board in the active mode; After setting the condition flag, the first processor board Completing and disabling the functions being performed by the communication processor modules of the processor; setting a transfer interrupt instruction bit by a CPU in the first processor board in the active mode; and setting the first interrupt processor bit in the active mode. And a CPU in a board transferring a core register value indicating a program counter to the second processor board in the standby mode.

Description

통신시스템의 이중화 방법 {The Duplication Method for Communication system}Duplication Method for Communication System

본 발명은 이중화된 프로세서장치를 갖는 통신시스템에 관한 것이다. 특히 상기 프로세서장치가 성능이 향상됨에 따라 다양한 통신프로세서 모듈들을 포함하고 있는 경우, 상기 프로세서장치가 리셋, 탈장 또는 경보가 발생시 신속하고 안정적으로 동작하도록 하기 위하여 액티브모드로 동작하는 프로세서보드내의 상기 통신프로세서 모듈들이 수행중인 기능을 완료하고 디스에이블된 후, 스탠바이모드로동작하는 프로세서보드로 절체함으로써 상기 통신시스템에서 호의 절단없이 정상동작하도록 하는 방법에 관한 것이다.The present invention relates to a communication system having a redundant processor device. In particular, when the processor device includes various communication processor modules as the performance is improved, the communication device in the processor board operating in an active mode in order to enable the processor device to operate quickly and stably when a reset, hernia, or alarm occurs. The present invention relates to a method for allowing modules to operate normally without disconnection of a call by switching to a processor board operating in a standby mode after completing and disabling a function being performed.

통상적으로 통신시스템을 구성하는 일반 보드 한 장에 문제가 생길 경우에는 서비스에 큰 문제가 발생하지 않지만, 상기 통신시스템을 전반적으로 제어하는 메인 프로세서 보드장치에 문제가 발생하면 전체 서비스에 마비가 생긴다. 이에 따라 통신시스템의 안정성을 높이기 위하여 메인 프로세서 보드장치는 이중화 구조를 채택하고 있다. 이러한 이중화는 액티브모드로 동작하는 프로세서보드에서 경보나 할트(HALT)가 발생될 경우에 액티브모드로 동작하는 프로세서보드에서 스탠바이모드로 동작하는 프로세서보드로 이중화 절체를 수행함으로써 계속하여 통신시스템의 제어를 수행할 수 있도록 하는 것이다.In general, when a problem occurs in one general board constituting a communication system, a great problem does not occur in service, but when a problem occurs in a main processor board device that controls the communication system as a whole, paralysis occurs in the whole service. Accordingly, in order to increase the stability of the communication system, the main processor board device adopts a redundant structure. This redundancy continues control of the communication system by performing redundancy switching from the active processor board to the standby board in the standby mode when an alarm or HALT occurs in the active board. To make it work.

도 1 은 일반적인 통신시스템에서 이중화된 프로세서 보드의 블록구성도를 도시한 도면이다. 도 1을 참조하면, 상기 이중화된 프로세서 보드들은 제 1프로세서 보드(100)와 제 2프로세서 보드(200)로 구성된다. 상기 제 1프로세서 보드(100)는 CPU(102)와 어드레스 버퍼(104)와 데이타 버퍼(106)와 듀얼포트램(DUAL PORT RAM;이하 DPRAM이라 칭함)(108)으로 구성되며, 상기 제 2프로세서 보드(200)는 CPU(202)와 어드레스 버퍼(204)와 데이타 버퍼(206)와 DPRAM(208)으로 구성된다.1 is a block diagram of a redundant processor board in a general communication system. Referring to FIG. 1, the redundant processor boards include a first processor board 100 and a second processor board 200. The first processor board 100 includes a CPU 102, an address buffer 104, a data buffer 106, a dual port RAM (hereinafter referred to as DPRAM) 108, and the second processor. The board 200 is composed of a CPU 202, an address buffer 204, a data buffer 206, and a DPRAM 208.

상기 제 1프로세서 보드(100) 및 제 2프로세서 보드(200)는 각 보드의 상태 등에 따라 액티브모드 또는 스탠바이모드로 설정되며, 이는 이중화 절체되기도 한다. 상기 이중화 절체시 액티브모드에 있는 상기 제 1 프로세서 보드(100)는 커뮤니케이션 메모리를 이용하여 수행중이던 어플리케이션 정보등을 버스를 이용하여스탠바이모드로 동작하는 상기 제 2 프로세서 보드(200)에 저장한다. 상기 커뮤니케이션 메모리는 상기 제 1프로세서 보드(100)가 액티브모드로 설정될 경우에 제 2프로세서 보드(200)의 DRAM(208)이 되고, 제 2프로세서 보드(200)가 액티브모드로 설정될 경우에는 제 1프로세서 보드(100)의 DRAM(108)이 된다. 상기 DRAM (108,208)를 엑세스하기 위한 어드레스 버퍼(104,204)와 데이타 버퍼(106,206)는 액티브모드로 동작하는 상기 제 1 프로세서 보드(100)에 의해 점유된다. 그리고 스탠바이모드로 동작하는 상기 제 2 프로세서 보드(200)의 DRAM의 버스는 액티브모드로 동작하는 상기 제 1프로세서 보드(100)의 선택신호(STAND-BY DPRAM CS)에 따라 결정된다. 즉 상기 DRAM(108,208)은 액티브와 스탠바이모드로 동작하는 각각의 프로세서 보드가 엑세스할 수 있도록 패스를 열어 상기 각각의 프로세서 보드간의 통신을 가능하게 한다. 또한, 도면에는 도시되지 않았지만 최근에는 상기 프로세서 보드들의 성능이 향상됨에 따라 별도의 보드로 구성되어 통신기능을 수행하던 통신프로세서모듈(Communication Processor Module; 이하 CPM이라 칭함)들의 기능을 상기 프로세서 보드들이 수행하고 있다.The first processor board 100 and the second processor board 200 are set to an active mode or a standby mode according to the state of each board, etc., which may be redundantly switched. The first processor board 100 in the active mode during the redundancy switching stores application information, which is being performed using a communication memory, in the second processor board 200 operating in the standby mode using a bus. The communication memory becomes the DRAM 208 of the second processor board 200 when the first processor board 100 is set to the active mode, and the communication memory is set to the active mode when the second processor board 200 is set to the active mode. It becomes the DRAM 108 of the first processor board 100. Address buffers 104 and 204 and data buffers 106 and 206 for accessing the DRAMs 108 and 208 are occupied by the first processor board 100 operating in an active mode. The bus of the DRAM of the second processor board 200 operating in the standby mode is determined according to the selection signal STAND-BY DPRAM CS of the first processor board 100 operating in the active mode. That is, the DRAMs 108 and 208 open a path for each processor board operating in the active and standby modes to access the communication boards. In addition, although not shown in the drawings, in recent years, as the performance of the processor boards is improved, the processor boards perform functions of a communication processor module (hereinafter referred to as CPM), which is configured as a separate board and performs a communication function. Doing.

상기 CPM에 해당하는 기능들로는 직렬포트(Serial Port)를 통하여 데이터를 전송하는 HDLC와 어써넷(Ethernet)을 통하여 데이터를 전송하는 랜(LAN)과 시분할다중방식(TDM)을 이용하여 E1/T1 프레임을 직렬포트를 통하여 전송하는 QMC(QUICC Multichannel Controller)와 비동기전송모드(Asynchronous Transfer Mode; 이하 ATM이라 칭함)방식에서 데이터 유니트를 셀 단위로 분해 또는 조립하는 SAR (Segmentation and Reassembly)기능등이 포함된다.Functions corresponding to the CPM include an HD1 frame transmitting data through a serial port and an E1 / T1 frame using a local area network (LAN) and a time division multiplex (TDM) transmitting data through an Ethernet. Includes the QUICC Multichannel Controller (QMC), which transmits data through the serial port, and the SAR (Segmentation and Reassembly) function, which disassembles or assembles data units into cells in the asynchronous transfer mode (hereinafter referred to as ATM). .

그러나 상기 프로세서 보드들이 상기 CPM기능들을 추가적으로 수행함에 따라, 기존과 같이 액티브모드로 동작하는 상기 제 1 프로세서 보드의 코어 레지스터값만을 스탠바이모드로 동작하는 제 2 프로세서 보드에 전달해서는 이중화 절체가 원활하게 이루어지지 않는다. 즉, 상기 액티브모드에 있는 상기 제 1 프로세서 보드에서 절체조건이 발생하면, 상기 제 1 프로세서 보드내의 상기 CPM 영역에서 수행중이던 기능들을 상기 스탠바이모드에 있는 상기 제2 프로세서 보드에서 절체하여 처리하지 못하는 문제점이 발생하고 있다.However, as the processor boards additionally perform the CPM functions, redundancy switching is smoothly performed by transferring only the core register value of the first processor board operating in the active mode to the second processor board operating in the standby mode. I do not lose. That is, when a switching condition occurs in the first processor board in the active mode, the second processor board in the standby mode may not be able to process functions that were being performed in the CPM region in the first processor board. This is happening.

따라서 본 발명의 목적은 통신시스템의 이중화된 프로세서 보드들이 통신프로세서 모듈기능들을 포함하고 있는 경우, 이중화 절체시 액티브모드로 동작하는 제 1 프로세서 보드내의 상기 통신프로 세서 모듈에서 수행중인 기능을 완료하고 디스에이블한 후, 스탠바이모드로 동작하는 제 2 프로세서보드로 이중화 절체를 수행하는 방법을 제공함에 있다.Accordingly, an object of the present invention is to complete and perform a function being performed by the communication processor module in a first processor board operating in an active mode in a redundant switching, when the redundant processor boards of the communication system include communication processor module functions. After enabling, the present invention provides a method for performing redundant switching to a second processor board operating in a standby mode.

본 발명에 따른 상기 목적을 달성하기 위하여, 통신프로세서 모듈들을 각각 포함하는 제 1 및 제 2 프로세서 보드들을 구비하는 이중화구조의 통신시스템에서, 상기 제 1 프로세서 보드와 제 2 프로세서 보드간의 이중화 절체방법에 있어서,In order to achieve the above object according to the present invention, in a redundant communication system having first and second processor boards each comprising a communication processor module, in the redundant switching method between the first processor board and the second processor board In

상기 제 1 및 제 2 프로세서 보드들을 각각 액티브 및 스탠바이모드로 결정하는 단계와,Determining the first and second processor boards in an active and standby mode, respectively;

상기 결정된 액티브 및 스탠바이모드에서 상기 제 1 및 제 2 프로세서 보드들내의 상기 통신프로세서 모듈들을 초기화하는 단계와,Initializing the communication processor modules in the first and second processor boards in the determined active and standby modes;

상기 액티브모드에 있는 상기 제 1 프로세서 보드내의 CPU가 프로그램의 수행시 발생되는 데이터를 상기 스탠바이모드에 있는 상기 제 2 프로세서보드내의 메모리에 저장하는 단계와,Storing, by the CPU in the first processor board in the active mode, data generated when the program is executed in a memory in the second processor board in the standby mode;

상기 액티브모드에 있는 상기 제 1 프로세서 보드에서 상기 스탠바이 모드에 있는 상기 제 2 프로세서 보드로 절체조건이 발생하는지를 판단하는 단계 와,Determining whether a switching condition occurs from the first processor board in the active mode to the second processor board in the standby mode;

상기 절체조건발생시, 상기 액티브모드에 있는 상기 제 1 프로세서보드 내의 CPU가 절체조건발생 플래그를 세팅하는 단계와,Setting a transfer condition occurrence flag by a CPU in the first processor board in the active mode when the transfer condition occurs;

상기 절체조건발생 플래그 세팅후, 상기 제 1프로세서보드내의 상기 통신프로세서 모듈들이 수행중인 기능을 완료하고 디스에이블하는 단계와,After setting the switching condition occurrence flag, completing and disabling a function that the communication processor modules in the first processor board are performing;

상기 액티브모드에 있는 상기 제 1 프로세서보드내의 CPU가 절체 인터럽트명령비트를 세팅하는 단계와,Setting a transfer interrupt command bit by a CPU in the first processor board in the active mode;

상기 액티브모드에 있는 상기 제 1 프로세서보드내의 CPU가 프로그램 카운터를 나타내는 코어 레지스터값을 상기 스탠바이모드에 있는 상기 제 2 프로세서 보드로 전달하는 단계로 이루어짐을 특징으로 하고 있다.And transmitting, by the CPU in the first processor board in the active mode, the core register value representing the program counter to the second processor board in the standby mode.

도 1은 종래의 이중화된 프로세서 장치의 구성도1 is a block diagram of a conventional dual processor device

도 2는 통신프로세서모듈을 구비한 이중화된 프로세서장치의 블록을 도시한 도면2 is a block diagram of a redundant processor device having a communication processor module;

도 3a와 도 3b는 본 발명에 따른 액티브 및 스탠바이보드의 이중화 절체운영방법을 도시한 도면3A and 3B are diagrams illustrating a method of operating a redundant switching operation of an active and standby board according to the present invention.

이하 본 발명의 바람직한 실시예의 상세한 설명이 첨부된 도면들을 참조하여 설명될 것이다. 도면들 중 참조번호들 및 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조번호들 및 부호들로 나타내고 있음에유의해야 한다. 하기에서 본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.DETAILED DESCRIPTION A detailed description of preferred embodiments of the present invention will now be described with reference to the accompanying drawings. It should be noted that the same reference numerals and the same elements among the drawings are represented by the same reference numerals and symbols as much as possible even though they are shown in different drawings. In the following description of the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.

도면 2는 본 발명의 바람직한 일 실시예에 따른 이중화된 프로세서 보드들의 구성을 도시한 도면이다. 도 2를 참조하면, 상기 이중화된 프로세서 보드들은 제 1프로세서 보드(300)와 제 2프로세서 보드(400)로 구성된다. 상기 제 1프로세서 보드(300)와 제 2프로세서 보드(400)의 구성과 동작은 동일하므로, 이하 제 1프로세서 보드(300)의 구성과 동작만을 설명한다. 먼저 상기 제 1프로세서 보드(300)의 구성을 설명한다. 상기 제 1프로세서 보드(300)내의 CPU(302)는 통신시스템을 전반적으로 제어한다. ROM(304)에는 상기 CPU(302)의 부팅 프로그램이 저장되며, 상기 CPU(302)는 그 부팅 프로그램 수행시 발생된 데이타를 DRAM(310)에 저장한다. 이를 위해 셀프 경로가 인에이블되며, 상기 셀프 경로는 데이타 경로와 어드레스 경로로 이루어지며, 상기 셀프 경로의 데이타 경로는 'CPU(302)→제1셀프 버퍼(306)→DRAM(310)'으로 이루어지고, 상기 셀프 경로의 어드레스 경로는 'CPU(302)→제2셀프 버퍼(308)→DRAM(310)'으로 이루어진다. 이러한 셀프 경로의 인에이블을 위해 CPU(302)는 부팅 프로그램이 수행되는 동안 제1셀프버퍼(306)와 제2셀프버퍼(308)를 인에이블하는 버퍼제어신호를 버퍼제어신호 발생부(312)가 발생하도록 제어한다.2 is a diagram illustrating a configuration of redundant processor boards according to an exemplary embodiment of the present invention. Referring to FIG. 2, the redundant processor boards may include a first processor board 300 and a second processor board 400. Since the configuration and operation of the first processor board 300 and the second processor board 400 are the same, only the configuration and operation of the first processor board 300 will be described below. First, the configuration of the first processor board 300 will be described. The CPU 302 in the first processor board 300 controls the overall communication system. The ROM 304 stores a boot program of the CPU 302, and the CPU 302 stores data generated when the boot program is executed in the DRAM 310. To this end, a self path is enabled, and the self path is composed of a data path and an address path, and the data path of the self path is composed of 'CPU 302-> first self buffer 306-> DRAM 310. The address path of the self path consists of 'CPU 302 → second self buffer 308 → DRAM 310'. In order to enable the self path, the CPU 302 outputs a buffer control signal for enabling the first self buffer 306 and the second self buffer 308 while the booting program is executed. Control to occur.

그리고 상기 CPU(302)는 부팅 프로그램의 수행이 완료되면 제 1프로세서 보드(300)가 초기에 액티브모드의 프로세서 보드로서 동작하도록 정해졌는지를 검색하여 그럴 경우에 OS 부팅 및 어플리케이션 프로그램을 수행하고, 그 수행시 발생되는 데이타가 DRAM(310)과 제 2프로세서 보드(400)내의 DRAM(410)에 컨커런트(concurrent)하게 저장된다. 이를 위해 로컬 경로와 리모트 경로가 인에이블되며, 상기 로컬 경로는 데이타 경로와 어드레스 경로로 이루어지며, 상기 로컬 경로의 데이타 경로는 'CPU(302)→제1로컬 버퍼(314)→제1리모트 버퍼(318)→DPRAM(310)'으로 이루어지고, 상기 로컬 경로의 어드레스 경로는 'CPU(302)→제2로컬 버퍼(316)→제2리모트 버퍼(320)→DPRAM(310)'으로 이루어진다. 이러한 로컬 경로의 인에이블을 위해 CPU(302)는 상기 제 1 프로세서가 액티브모드로 동작하는 동안 제1, 제 2리모트 버퍼(318,320), 제1, 제 2로컬버퍼(314,316)를 인에이블하는 버퍼제어신호를 버퍼제어신호 발생부(312)가 발생하도록 제어한다. 그리고 상기 리모트 경로는 데이타 경로와 어드레스 경로로 이루어지며, 상기 리모트 경로의 데이타 경로는 'CPU(302)→제1로컬 버퍼(314)→제2프로세서 장치(400)의 제1리모트 버퍼(418)→제2프로세서 장치(400)의 DPRAM(410)'으로 이루어지고, 상기 리모트 경로의 어드레스 경로는 'CPU(302)→제2로컬 버퍼(316)→제2프로세서 장치(400)의 제2리모트 버퍼(420)→제2프로세서 장치(400)의 DPRAM(410)'으로 이루어진다. 이러한 리모트 경로의 인에이블을 위해 스탠바이모드로 동작하는 제 2 프로세서 보드(400)내의 CPU(402)는 리모트 버퍼들을 인에이블하는 버퍼제어신호를 버퍼제어신호 발생부가 발생하도록 제어한다.When the execution of the boot program is completed, the CPU 302 searches whether the first processor board 300 is initially determined to operate as an active mode processor board, and if so, performs an OS boot and application program. Data generated during execution is concurrently stored in the DRAM 310 and the DRAM 410 in the second processor board 400. For this purpose, a local path and a remote path are enabled, and the local path is composed of a data path and an address path, and the data path of the local path is' CPU 302 → first local buffer 314 → first remote buffer. 318? DPRAM 310, and the address path of the local path consists of the CPU 302, the second local buffer 316, the second remote buffer 320, and the DPRAM 310. To enable this local path, the CPU 302 buffers to enable the first and second remote buffers 318 and 320 and the first and second local buffers 314 and 316 while the first processor is operating in active mode. The control signal is controlled to generate the buffer control signal generator 312. The remote path includes a data path and an address path, and the data path of the remote path is' CPU 302 → first local buffer 314 → first remote buffer 418 of the second processor device 400. DPRAM 410 of the second processor device 400, and the address path of the remote path is' CPU 302 '→ the second local buffer 316 → the second remote of the second processor device 400'. Buffer 420 → DPRAM 410 'of the second processor device 400'. The CPU 402 in the second processor board 400 operating in the standby mode for enabling the remote path controls the buffer control signal generator to generate a buffer control signal for enabling the remote buffers.

한편, 상기 프로세서 보드(300,400)내의 CPM영역(337,437)은 상기 통신시스템의 데이터를 처리하는 기능을 수행한다. 상기 CPM영역(337,437)은 일반적으로 직렬포트(Serial Port)를 통하여 데이터를 전송하는 HDLC(333)와 어써넷(Ethernet)을 통하여 데이터를 전송하는 랜(334)과 시분할다중(TDM)방식을 이용하여 E1/T1 프레임정보를 직렬포트를 통하여 전송하는 QMC(335)와 비동기전송모드(ATM)방식에서 데이터 유니트를 셀단위로 분해 또는 조립하는 SAR(336)등으로 구성되어 있다.Meanwhile, the CPM areas 337 and 437 in the processor boards 300 and 400 perform a function of processing data of the communication system. The CPM regions 337 and 437 generally use a HDLC 333 for transmitting data through a serial port and a LAN 334 for transmitting data through an Ethernet and a time division multiplexing (TDM) scheme. QMC 335 for transmitting E1 / T1 frame information through the serial port, and SAR 336 for disassembling or assembling data units in cell units in an asynchronous transmission mode (ATM) system.

상기와 같이 액티브모드로 동작하던 제 1 프로세서 보드(300)가 후술하는 표 2 의 절체조건이 발생할 경우 상기 CPU(302)는 상기 절체조건상태를 읽어서, 상기 자기보드 리셋 인터럽트와 자기보드 경보 인터럽트일 경우에만 절체조건으로 간주하여 절체조건발생 플래그를 세팅하고, 인터럽트에서 리턴한다. 상기 절체조건발생 플래그가 세팅되면, 리턴된 상기 액티브모드로 동작하는 제 1 프로세서보드의 이중화 타스크에서는 상기 CPM이 수행중인 기능을 완료한다. 이후, 각 CPM을 디스에이블하고 후술하는 표 1의 절체조건 상태표의 절체 인터럽트 명령비트를 세팅하여 절체 인터럽트를 다시 발생시킨다. 그 후 상기 인터럽트상태에서 액티브모드로 동작하던 제 1프로세서 보드(300)내의 상기 CPU(302)는 코어(core) 레지스터 값을 DRAM(310,410)에 컨커런트하게 저장한 후에 IPC(Inter Processor Communication)를 통해 스탠바이모드로 동작하는 상기 제 2프로세서 보드(400)내의 상기 CPU(402)에 코어 레지스터 값을 리드해가도록 하는 절체준비완료신호를 제공한다. 상기 코어 레지스터값은 현재의 동작상태를 나타내는 각종 플래그와 프로그램 카운터, 각종 포인터 등이 될 수 있다. 상기 신호의 제공후에 상기 제 1 프로세서 보드(300)내의 상기 CPU(302)는 로컬 경로를 디스에이블 시키기 위하여 제1로컬 버퍼(314) 및 제2로컬 버퍼(316)를 디스에이블하도록 하는 버퍼제어신호를 발생하도록 버퍼제어신호발생부(312)를 제어한다.When the first processor board 300 operating in the active mode as described above occurs in the following switching conditions of Table 2, the CPU 302 reads the switching condition state, and the magnetic board reset interrupt and the magnetic board alarm interrupt. Only when it is regarded as a transfer condition, the transfer condition occurrence flag is set and returned from the interrupt. When the transfer condition occurrence flag is set, the CPM completes the function that the CPM is performing in the redundant task of the first processor board operating in the returned active mode. Thereafter, each CPM is disabled and the transfer interrupt is generated again by setting the transfer interrupt command bit of the transfer condition state table of Table 1 described later. After that, the CPU 302 in the first processor board 300 operating in the active state in the interrupt state concurrently stores a core register value in the DRAMs 310 and 410 and then executes an interprocessor communication (IPC). A readiness ready signal is provided to read a core register value to the CPU 402 in the second processor board 400 operating in the standby mode. The core register value may be various flags indicating a current operation state, a program counter, various pointers, and the like. After providing the signal, the CPU 302 in the first processor board 300 disables the first local buffer 314 and the second local buffer 316 to disable the local path. Control the buffer control signal generation unit 312 to generate a.

한편, 상기 CPU(302)가 부팅 프로그램의 수행을 완료한 후 상기 제 1프로세서 보드(300)가 초기에 스탠바이모드로 동작하도록 정해졌을 경우 상기 제 2프로세서 보드(400)내의 상기 CPU(402)는 리모트 경로를 통해 DRAM(410)의 OS 및 어플리케이션 프로그램 수행도중에 발생된 데이타를 저장할 수 있도록 제 2프로세서 보드(400)의 리모트 경로를 인에이블시킨다. 상기 제 2프로세서 보드(400)의 리모트 경로의 인에이블을 위해 상기 CPU(302)는 제 1리모트 버퍼(318)와 제 2리모트 버퍼(320)를 인에이블하는 버퍼제어신호를 버퍼제어신호 발생부(312)가 발생하도록 제어한다. 여기서 스탠바이모드로 동작하는 상기 제 1 프로세서 보드(300)내의 CPU (302)는 OS 구동없이 단순히 IPC를 통한 통신만이 가능한 상태로 동작한다.On the other hand, when the first processor board 300 is initially set to operate in the standby mode after the CPU 302 completes the execution of the boot program, the CPU 402 in the second processor board 400 The remote path of the second processor board 400 is enabled to store data generated during the OS and application program execution of the DRAM 410 through the remote path. In order to enable the remote path of the second processor board 400, the CPU 302 may include a buffer control signal for enabling the first remote buffer 318 and the second remote buffer 320. 312 is controlled to occur. Here, the CPU 302 in the first processor board 300 operating in the standby mode operates in a state where only communication through IPC is possible without operating the OS.

상기와 같이 스탠바이모드로 동작하던 제 1 프로세서 보드(300)내의 상기 CPU(302)는 상기 제 2프로세서 보드(400)가 이중화 절체조건이 발생하면 IPC를 통해 절체조건원인에 대한 정보를 동시에 확인한다. 이후 상기 CPU(302)는 상기 IPC를 통해 절체준비완료신호 수신여부를 체크한다. 상기 제 2 프로세서 보드(400)로부터 IPC를 통해 컨커런트하게 저장된 제 2프로세서 보드(400)내의 CPU(402)의 코어 레지스터 값을 리드해 가라는 절체준비완료신호가 수신되면, 상기 제 1프로세서 보드(300)의 CPU(302)는 상기 신호에 따라 제 2프로세서 보드(400)내의 CPU(402)가 DRAM(301)에 저장해둔 코어 레지스터 값과, 제 2프로세서 보드(400)내의 CPU(402)가 저장해둔 OS 및 어플리케이션 프로그램 수행중 발생된 데이타를 이용하여 이전에 제 2프로세서 보드(400)내의 CPU(402)가 수행하던 OS 및 어플리케이션 프로그램을 계속하여 수행한다. 또한 CPM을 초기화하여 통신기능도 수행할 수 있도록 한다. 이와 같이 OS 및 어플리케이션 프로그램을 수행하면서 발생된 각종 데이타를 컨커런트하게 저장하고, CPM 기능을 처음부터 다시 수행한다.The CPU 302 in the first processor board 300 operating in the standby mode as described above simultaneously checks information on the cause of the switching condition through the IPC when the redundant processor condition occurs in the second processor board 400. . Thereafter, the CPU 302 checks whether the transfer preparation completion signal is received through the IPC. When the transfer preparation completion signal for reading the core register value of the CPU 402 in the second processor board 400 stored concurrently from the second processor board 400 through the IPC is received, the first processor board ( According to the signal, the CPU 302 of the 300 includes the core register values stored in the DRAM 301 by the CPU 402 in the second processor board 400 and the CPU 402 in the second processor board 400. By using the data generated during the execution of the stored OS and application programs, the OS and application programs previously executed by the CPU 402 in the second processor board 400 are continuously executed. It also initializes the CPM so that it can also perform communication functions. As such, various data generated while executing the OS and application programs are concurrently stored, and the CPM function is executed again from the beginning.

상기와 같이 CPU(302)는 제 1프로세서 보드(300)의 상태에 따라 셀프 경로, 로컬 경로, 리모트 경로를 인에이블하기 위해 버퍼제어신호 발생부(312)를 제어한다. 즉, CPU(302)는 부팅시에는 셀프 경로를 인에이블하기 위해 제1,제2셀프 버퍼(306,308)를 인에이블하도록 하는 신호를 발생시키도록 버퍼제어신호 발생부(312)를 제어하고, 액티브모드로 동작할 때에는 로컬 경로를 인에이블하기 위해 제1,제2로컬 버퍼(314,316)와 제1,제2리모트 버퍼(318,320)를 인에이블하도록 하는 신호를 발생시키도록 버퍼제어신호 발생부(312)를 제어하고, 스탠바이모드로 동작할 때에는 상대 장치에 의한 리모트 경로가 인에이블되도록 하기 위해 제1,제2리모트 버퍼(318,320)만이 인에이블되도록 하는 신호는 발생시키도록 버퍼제어신호 발생부(312)를 제어한다.As described above, the CPU 302 controls the buffer control signal generator 312 to enable the self path, the local path, and the remote path according to the state of the first processor board 300. That is, the CPU 302 controls the buffer control signal generator 312 to generate a signal for enabling the first and second self buffers 306 and 308 to enable the self path at boot time and to activate the self path. When operating in the mode, the buffer control signal generator 312 generates a signal for enabling the first and second local buffers 314 and 316 and the first and second remote buffers 318 and 320 to enable the local path. ), And when operating in the standby mode, the buffer control signal generator 312 generates a signal to enable only the first and second remote buffers 318 and 320 to enable the remote path by the counterpart device. ).

그리고 시그널 체크로직부(322)는 하드웨어적으로 시그널의 주기적인 파형의 형태를 체크하는 것에 의해 경보를 검출하여 경보로직부(324)에 제공하며, 상기 경보로직부(324)가 시그널 체크로직부(322)로부터 경보검출을 수신하면, 상기 경보로직부(324)는 소프트웨어적으로도 에러상태인지를 체크할 수 있다. 그럴 경우에는 경보를 나타내는 인터럽트를 상기 경보로직부(324)는 CPU(302)로 제공한다. 상기 CPU(302)는 제 1 프로세서 보드(300)가 액티브모드로 동작중에 상기 시그널 체크로직부(322)로부터 인터럽트를 통보받으면, 절체조건발생 플래그를 세팅하고 인터럽트상태에서 리턴한다. 이후 상기 CPU(302)는 상기 CPM이 수행중인 기능을 완료하고, 상기 CPM을 디스에이블한다. 그리고 상기 CPU(302)는 절체 인터럽트 명령비트를 세팅하면 DRAM(310)과 DRAM(410)에 코어 레지스터 값을 저장한 후에 IPC를 통해 제 2프로세서 보드(400)가 상기 코어 레지스터 값을 리드해가도록 하는 절체준비완료신호를 제공한다. 그후 CPU(302)는 OS 및 어플리케이션 프로그램의 수행에 따라 발생된 데이타의 저장을 중단한다. 그리고나서 타스크를 정리하고 재부팅한 후에 스탠바이모드의 프로세서로 동작한다. 한편 상기 CPU(302)는 제 1프로세서 보드(300)가 스탠바이모드로 동작중에 IPC를 통해 액티브모드로 동작하는 상기 제 2 프로세서 보드(400)에서 절체조건이 발생하였음을 확인하면, 이후 상기 제 2 프로세서 보드(400)내의 CPU(402)로부터 절체준비완료신호가 수신되는지를 검색한다. 상기 CPU(302)가 상기 절체준비완료신호를 수신하면, 상기 제 1 프로세서 보드(300)는 상기 제 2 프로세서 보드(400)로부터 코어 레지스터 값을 전달받고, 이를 자신의 레지스터에 저장한다.The signal check logic unit 322 detects and provides an alarm to the alarm logic unit 324 by checking the shape of a periodic waveform of a signal in hardware, and the alarm logic unit 324 provides a signal check logic unit. Upon receiving the alarm detection from 322, the alarm logic unit 324 may check whether it is an error state in software. In such a case, the alarm logic unit 324 provides the CPU 302 with an interrupt indicating an alarm. When the first processor board 300 is notified of an interrupt from the signal check logic unit 322 while the first processor board 300 is operating in an active mode, the CPU 302 sets a switching condition occurrence flag and returns from the interrupt state. The CPU 302 then completes the function that the CPM is performing and disables the CPM. When the CPU 302 sets the transfer interrupt command bit, the CPU 302 stores the core register values in the DRAM 310 and the DRAM 410 so that the second processor board 400 reads the core register values through the IPC. It provides a transfer ready signal. The CPU 302 then stops storing data generated in accordance with the execution of the OS and application programs. It then cleans up the task, reboots, and then runs as a standby mode processor. On the other hand, when the CPU 302 confirms that a switching condition has occurred in the second processor board 400 operating in the active mode through the IPC while the first processor board 300 operates in the standby mode, the second processor board 300 thereafter operates in the standby mode. It is checked whether the transfer preparation completion signal is received from the CPU 402 in the processor board 400. When the CPU 302 receives the transfer preparation completion signal, the first processor board 300 receives a core register value from the second processor board 400 and stores it in its register.

리플래쉬 제어부(330)는 버퍼(328)를 통해 제 2프로세서 보드(400)의 상태정보를 제공받아, 제 2프로세서 보드(400)가 액티브모드로 동작하는 동안 DRAM (310)의 리플래쉬를 담당한다. 또한 제 2프로세서 보드(400)내의 리플래쉬 제어부(430)의 DRAM(410) 리플래쉬 동작을 위해 CPU(302)는 초기 및 이중화 절체가 일어날 때마다 자신의 상태정보를 버퍼(326,428)를 통해 제 2프로세서 보드(400)내의 리플래쉬 제어부(430)에 제공한다.The refresh controller 330 receives the state information of the second processor board 400 through the buffer 328 and is responsible for refreshing the DRAM 310 while the second processor board 400 operates in the active mode. do. In addition, for the refresh operation of the DRAM 410 of the refresh control unit 430 in the second processor board 400, the CPU 302 stores its state information through the buffers 326 and 428 whenever an initial and redundant switching occurs. The refresh control unit 430 in the processor board 400 is provided.

상기 실시예에서는 액티브모드로 프로세서로 동작할 때에는 CPU가 직접 DRAM의 리플래쉬를 담당하고, 스탠바이모드로 프로세서로 동작할 때에는 리플래쉬 제어부가 DRAM의 리플래쉬를 담당하게 하였다. 또한 프로세서가 스탠바이로 동작할 때를 리플래쉬 제어부가 판단할 수 있도록 상대장치의 CPU가 리플래쉬 제어부에 상태정보를 제공하도록 하였다. 그러나 이와 달리 CPU가 표 1에 나타낸 플래그에 상태정보를 실어 상대장치의 CPU에 제공하여, 그 CPU가 제공받은 상태정보에 따라 DRAM의 리플래쉬 방식을 선택할 수 있게 할 수도 있다. 즉 CPU가 상대장치의 상태정보를 제공받아 상대장치의 상태가 액티브모드이면 리플래쉬 제어부를 통해 DRAM을 리플래쉬하고, 상대장치의 상태가 스탠바이모드이면 직접 DRAM을 리플래쉬하게 할 수 있다.In the above embodiment, the CPU directly handles the refresh of the DRAM when the processor operates in the active mode, and the refresh controller controls the refresh of the DRAM when the processor operates in the standby mode. In addition, the CPU of the partner device provides status information to the refresh controller so that the refresh controller can determine when the processor operates in standby mode. Alternatively, however, the CPU may load status information on the flag shown in Table 1 and provide the status information to the CPU of the counterpart device so that the refresh method of the DRAM can be selected according to the status information provided by the CPU. That is, when the CPU receives the state information of the counterpart device and the partner device is in the active mode, the CPU may refresh the DRAM through the refresh control unit. If the counterpart device is in the standby mode, the DRAM may directly refresh the DRAM.

아울러 상기 DRAM의 리플래쉬의 시기와 이중화 절체시기가 비동기적이므로, 이중화 절체를 수행할 때에도 DRAM을 리플래쉬하여 리플래쉬가 필요한 시점을 얼마 안 남기고 이중화 절체를 수행하는 경우에도 정보가 유실되지 않도록 하는 것이 바람직하다.In addition, since the timing of the refresh and the redundancy of the DRAM are asynchronous, it is necessary to refresh the DRAM even when performing the redundancy switchover so that information is not lost even when the redundancy is performed while leaving the time required for the refresh. desirable.

또한 상기 실시예에서는 DRAM을 사용함에 따라 리플래쉬 절차가 요구되었으나, DRAM 대신 SRAM을 채용하는 경우에는 리플래쉬를 수행하지 않아도 된다.In addition, in the above embodiment, a refresh procedure is required as the DRAM is used. However, when the SRAM is used instead of the DRAM, the refresh may not be performed.

비트beat 의 미meaning 1One 액티브 보드로 동작하는 상태Active board status 22 스탠바이 보드로 동작하는 상태Standby board status 33 컨커런트 라이트 인에이블Concurrent Light Enable 44 컨커런트 라이트 인에이블 상태Current Light Enable Status 55 전송 종료신호Transmission end signal 66 전송 종료신호의 상태Status of transmission end signal 77 보드위치식별정보Board Position Identification Information 88 상대보드 탈실장정보Relative board mounting information 99 상대보드의 액티브상태정보Active state information of counterpart board 1010 상대보드의 스탠바이상태정보Standby status information of opponent's board 1111 절체 인터럽트 명령Alternate Interrupt Command

이제 제 1프로세서 보드(300)의 동작을 도 3a와 도 3b에 도시한 처리 흐름도를 참조하여 설명한다. 도 3a의 (500)단계에서 통신시스템에 전원이 공급되면 제 1 프로세서 보드(300)의 CPU(302)는 초기화를 수행한다. 즉 상기 CPU(302)는 롬(304)에 저장된 부팅 프로그램을 리드하여 수행함과 아울러 그 부팅 프로그램 수행시 발생되는 데이타를 셀프경로를 통해 DRAM(310)에 저장한다. 또한 상기 CPU(302)는 상기 초기화시에 제 1프로세서 보드(300)와 제 2프로세서 보드(400)간의 통신채널인 IPC의 초기화를 수행할 수 있다. 또한 상기 CPU(302)는 제 1프로세서 보드(300)의 DRAM (310)과 제 2프로세서 보드(400)의 DRAM(410)에서 컨커런트하게 데이타가 라이트되는 영역에 대해 일치화를 수행할 수 있다. 이후 CPU(302)는 (502)단계에서 제 1프로세서 보드(300)가 초기화 후에 액티브모드로 동작하도록 설정되었는지를 검색한다. 이러한 설정은 상기 표 1에 나타낸 레지스터에서 보드위치식별정보(7번 비트), 상대보드 탈실장정보(8번 비트), 상대보드의 액티브상태정보(9번 비트)를 이용하여 액티브와 스탠바이모드를 결정한 후, 액티브보드 동작상태(1번 비트)와 스탠바이보드 동작상태(2번 비트)를 각각 세팅한다. 먼저 상대보드 탈실장정보(8번 비트)를 이용할 경우를 설명한다. 상대보드가 없으면, 즉 제 2프로세서 보드(400)가 없을 경우에는 상기 제 1프로세서 보드(300)를 액티브모드로 결정한다. 여기서 보드위치식별정보(7번 비트)는 제 1 프로세서 보드(300)가 "0"으로, 제 2 프로세서 보드(400)가 "1"로 각각 표시하도록 하드웨어에 의해 결정된다. 상대보드가 있으면, 즉 제 2 프로세서 보드(400)가 있을 경우에는 후술하는 표 3의 상태표에 따라 결정한다. 표 3을 참조하면, 제 2 프로세서 보드(400)가 넌(None)상태이고, 보드위치식별정보값이 "0"이면, 상기 제 1 프로세서 보드(300)는 액티브모드로 결정한다. 제 2 프로세서 보드(400)가 넌(None)상태이고, 보드위치식별정보값이 "1"이면 일정시간, 예를 들면 약 1초 후에 다시 제 2 프로세서 보드(400)의 상태를 읽어서 여전히 넌(None)상태이면, 상기 제 1 프로세서 보드(300)를 액티브모드로 결정한다. 그러나 일정시간 후에 상기 제 2 프로세서 보드(400)의 상태가 액티브모드이면 제 1 프로세서 보드(300)는 스탠바이모드로 결정된다. 이때 CPU(302)는 제 1프로세서 보드(300)가 초기화 후에 액티브모드로 동작하도록 결정되어 있으면 (504)단계에서 CPM을 초기화하고, OS 및 어플리케이션 프로그램을 수행함과 아울러 그 OS 및 어플리케이션 프로그램 수행중 발생되는 데이타를 로컬경로와 리모트경로를 통해 DRAM(310,410)에 컨커런트하게 저장한다. 또한 CPU(302)는 DRAM(310)의 리플래쉬를 담당한다. CPU(302)는 (506)단계에서 제 1프로세서 보드(300)의 상태정보를 버퍼(326,428)를 통해 상대장치인 제2프로세서 보드(400)내의 리플래쉬 제어부(430)에 제공한다. 여기서 상기 상태정보는 제 1프로세서 보드(300)가 액티브모드로 동작하는지, 스탠바이모드로 동작하는지를 나타내는 정보가 포함된다.The operation of the first processor board 300 will now be described with reference to the process flow diagram shown in FIGS. 3A and 3B. When power is supplied to the communication system in operation 500 of FIG. 3A, the CPU 302 of the first processor board 300 performs initialization. That is, the CPU 302 reads and executes a boot program stored in the ROM 304 and stores data generated when the boot program is executed in the DRAM 310 through self-path. In addition, the CPU 302 may initialize IPC, which is a communication channel between the first processor board 300 and the second processor board 400 at the time of initialization. In addition, the CPU 302 may perform matching on a region where data is concurrently written in the DRAM 310 of the first processor board 300 and the DRAM 410 of the second processor board 400. . In operation 502, the CPU 302 searches whether the first processor board 300 is set to operate in an active mode after initialization. This setting uses the board position identification information (bit 7), the partner board unmounting information (bit 8), and the active state information (bit 9) of the counterpart board in the register shown in Table 1 to set the active and standby modes. After the determination, the active board operation state (bit 1) and the standby board operation state (bit 2) are set respectively. First, the case of using the opponent board mounting information (bit 8) will be described. When there is no partner board, that is, when there is no second processor board 400, the first processor board 300 is determined as an active mode. Here, the board position identification information (bit 7) is determined by the hardware so that the first processor board 300 is displayed as "0" and the second processor board 400 is displayed as "1", respectively. If there is a partner board, that is, if there is a second processor board 400, it is determined according to the state table of Table 3 described later. Referring to Table 3, when the second processor board 400 is in a non-none state and the board position identification information value is "0", the first processor board 300 determines an active mode. When the second processor board 400 is non-none and the board position identification information value is "1", the state of the second processor board 400 is read again after a predetermined time, for example, about 1 second, and is still non- None), the first processor board 300 is determined to be an active mode. However, if the state of the second processor board 400 is in an active mode after a certain time, the first processor board 300 is determined to be in a standby mode. At this time, if the first processor board 300 is determined to operate in the active mode after initialization, the CPU 302 initializes the CPM in step 504, performs an OS and an application program, and occurs during execution of the OS and an application program. The data is concurrently stored in the DRAMs 310 and 410 through the local path and the remote path. The CPU 302 is also responsible for refreshing the DRAM 310. The CPU 302 provides status information of the first processor board 300 to the refresh control unit 430 in the second processor board 400 as a counterpart device through the buffers 326 and 428 in step 506. The state information includes information indicating whether the first processor board 300 operates in an active mode or a standby mode.

이후 CPU(302)는 (508)단계에서 시그널 체크로직부(322)가 경보를 검출하여경보로직부(324)가 그에 따라 경보를 나타내는 인터럽트를 발생하는지를 검색한다. 즉, 표 2의 절체 인터럽트가 발생하였는지를 판단한다.The CPU 302 then detects in step 508 whether the signal check logic unit 322 detects an alarm and the alarm logic unit 324 generates an interrupt indicative of the alarm. That is, it is determined whether the switching interrupt of Table 2 has occurred.

여기서 인터럽트의 종류는 표 2와 같다.Interrupt types are shown in Table 2.

절체 인터럽트 종류Alternate Interrupt Type 설 명Explanation 상대보드 탈장 인터럽트Relative Board Hernia Interrupt 상대보드가 쉘프에서 탈장되었을 때When the opponent board is dismounted from the shelf 상대보드 실장 인터럽트Relative Board Mount Interrupt 상대보드가 쉘프에 실장되었을 때When the opponent board is mounted on the shelf 상대보드 리셋 인터럽트Partner Board Reset Interrupt 상대보드가 리셋되었을 때When the opponent board is reset 상대보드 경보 인터럽트Partner Board Alarm Interrupt 상대보드가 경보가 발생하였을 때When the partner board has an alarm 자기보드 리셋 인터럽트Magnetic Board Reset Interrupt 자기보드가 리셋되었을 때When the magnetic board is reset 자기보드 경보 인터럽트Magnetic Board Alarm Interrupt 자기보드가 경보가 발생하였을 때When magnetic board alarm 절체 명령 인터럽트Alternate Command Interrupt 자기보드의 절체 인터럽트 명령비트가세팅되었을 때When the transfer interrupt command bit of the magnetic board is set

상대보드 액티브상태정보Partner board active status information 상대보드 스탠바이상태정보Partner board standby status information 상태condition 00 00 넌(None)You 00 1One 스탠바이Standby 1One 00 액티브active 1One 1One 넌(None)You

이러한 인터럽트들은 상기 경보로직부(324)를 통해 CPU(302)로 통보될 수 있다. 상기와 같은 표 2의 인터럽트들중 상기 경보로직부(324)가 자기보드 경보 또는 리셋 인터럽트를 발생하면 CPU(302)는 상기 제 1 프로세서 보드가 액티브모드에서 스탠바이모드로 이중화 절체를 수행하여야 할 때로 판단한다. 이렇게 이중화 절체를 수행하여야 할 때로 판단되면 CPU(302)는 (510)단계에서 절체조건발생 플래그를 세팅하고 인터럽트에서 리턴한다. 한편 그 이외의 상대보드 리셋이나 탈실장 인터럽트에서는 상대보드에 대한 상태를 관리하고 인터럽트를 나온다. 상기 (510)단계에서 절체조건발생 플래그가 세팅되면 (512)단계에서 액티브모드로 동작하는 상기 제 1 프로세서 보드의 이중화 타스크는 CPM이 수행하고 있는 기능을 완료하고, OS에서 메모리에 할당된 것을 반납한 후, 각각의 CPM을 디스에이블한다. 이후 (514)단계에서 액티브모드로 동작하는 상기 제 1 프로세서 보드는 상기 표 1의 절체 인터럽트 명령비트를 세팅하고 (516)단계에서 상기 절체 인터럽트 명령비트의 세팅여부를 판단한다. 상기 (516)단계에서 상기 절체 인터럽트 명령비트가 세팅되면 (518)단계에서 액티브모드로 동작하는 상기 제 1 프로세서 보드내의 CPU(302)는 코어 레지스터 값을 컨커런트하게 저장한 후에 (520)단계에서 그 코어 레지스터 값을 리드하도록 하는 절체준비완료신호는 IPC를 통해 스탠바이모드로 동작하는 상기 제 2 프로세서 보드에 제공한다. 이후 CPU(302)는 (522)단계에서 상기 제 1 프로세서 보드는 컨커런트하게 저장하던 것을 중단하기 위하여 제 1 및 제 2 로컬버퍼를 디스에이블하고, 제 1 및 제 2 셀프버퍼를 인에이블한다. (524)단계에서 상기 CPU (302)는 제 1프로세서 보드(300)를 재부팅한다.These interrupts may be notified to the CPU 302 via the alarm logic unit 324. If the alarm logic unit 324 generates a magnetic board alarm or reset interrupt among the interrupts in Table 2, the CPU 302 may perform a redundancy transfer from the active mode to the standby mode. To judge. When it is determined that duplication transfer is to be performed, the CPU 302 sets the transfer condition occurrence flag in step 510 and returns from the interrupt. On the other hand, other partner reset or unmounted interrupt manages the status of the partner board and exits the interrupt. When the transfer condition occurrence flag is set in step 510, the redundancy task of the first processor board operating in the active mode in step 512 completes the function performed by the CPM, and returns that allocated to the memory in the OS. Then, disable each CPM. In operation 514, the first processor board operating in the active mode sets the transfer interrupt command bits of Table 1 and determines whether the transfer interrupt command bits are set in operation 516. If the transfer interrupt command bit is set in step 516, the CPU 302 in the first processor board operating in the active mode in step 518 concurrently stores core register values in step 520. The transfer ready signal for reading the core register value is provided to the second processor board operating in the standby mode via IPC. In operation 522, the CPU 302 disables the first and second local buffers and enables the first and second self buffers to stop the concurrent storage. In step 524, the CPU 302 reboots the first processor board 300.

한편, (502)단계에서 상기 제 1 프로세서 보드(300)가 스탠바이모드로 설정되면, 상기 보드를 초기화하는 (526)단계를 수행한다. 스탠바이모드로 설정된 상기 제 1 프로세서 보드(300)는 IPC를 통해 액티브모드로 동작하는 상기 제 2 프로세서 보(400)내의 CPU(402)가 절체조건이 발생하였는지를 검색하는 (528)단계를 수행한다. 상기 절체조건이 발생하면, 스탠바이모드로 동작하는 상기 제 1 프로세서 보드(300)는 액티브모드로 동작하는 상기 제 2 프로세서 보드(400)로부터 절체준비완료신호가 수신되었는지를 검색하는 (530)과정을 수행한다. 상기 단계에서 상기 제 1 프로세서 보드(300)가 상기 절체준비완료신호가 수신되면, 상기 제 1 프로세서 보드(300)내의 CPU(302)는 상기 제 2 프로세서 보드(400)로부터 전송된 코어 레지스터값을 자신의 레지스터에 저장하는 (532)과정을 수행한다. 이어 상기 CPU(302)는 CPM을 초기화하도록 제어하는 (534)단계를 수행한 후, 상기 제 1 프로세서 보드(300)를 액티브모드로 전환하는 (536)과정을 수행한다. Meanwhile, when the first processor board 300 is set to the standby mode in step 502, step 526 of initializing the board is performed. The first processor board 300 set in the standby mode performs a step 528 of searching for a transfer condition by the CPU 402 in the second processor beam 400 operating in the active mode through the IPC. When the transfer condition occurs, the first processor board 300 operating in the standby mode searches for a transfer preparation completion signal received from the second processor board 400 operating in the active mode (530). Perform. When the first processor board 300 receives the transfer preparation completion signal in this step, the CPU 302 in the first processor board 300 receives the core register value transmitted from the second processor board 400. In step 532, the program stores the register in its register. Subsequently, the CPU 302 performs a control to initialize the CPM (534), and then performs a process (536) of switching the first processor board 300 to an active mode.

상기와 같이 본 발명은 특징은 이중화된 프로세서 보드들중 액티브모드로 동작하는 프로세서 보드가 리셋이나 경보등에 의한 이중화 절체조건이 발생하면 액티브모드로 동작하는 상기 프로세서 보드내의 CPU는 절체조건발생 플래그를 세팅하고, 인터럽트에서 리턴한다. 이후 상기 CPU는 CPM이 수행중인 기능을 완료하고, 상기 각 CPM을 디스에이블한 후, 절체 인터럽트 명령비트를 세팅한다. 그런 다음 프로그램 시작점에 관련된 각종 포인터나 플래그, 프로그램 카운터등의 코어 레지스터 값을 스탠바이모드로 동작하는 프로세서 보드에 제공하여, 상기 스탠바이모드로 동작하는 상기 프로세서 보드가 부팅 프로그램이나, OS 부팅이나 어플리케이션 프로그램의 재시작등의 과정없이도 액티브모드로 동작하는 프로세서 보드가 수행하던 OS와 어플리케이션 프로그램을 계속하여 수행할 수 있도록 한다. 또한 상기 액티브모드로 동작하는 프로세서 보드에서 통신기능을 담당하는 CPM이 수행중인 기능을 완료하고 디스에이블된 후, 스탠바이모드로 동작하는 프로세서 보드로 이중화 절체된다. 따라서 이러한 방식으로 이중화 절체를 수행함에 따라 이중화 절체시에 소요되는 시간이 매우 줄어들 뿐만 아니라, 통신시스템에서 호의 절단없이 데이터송수신이 정상동작할 수 있다.As described above, the present invention is characterized in that the CPU in the processor board operating in the active mode sets a switching condition occurrence flag when the processor board operating in the active mode among the redundant processor boards generates a redundancy switching condition due to a reset or an alarm. And return from the interrupt. The CPU then completes the function that the CPM is performing, disables each CPM, and then sets the transfer interrupt command bit. Then, the processor board operating in the standby mode is provided to the processor board operating in the standby mode by providing the core register values such as various pointers, flags, and program counters related to the program starting point. Allows the processor board running in active mode to continue running the operating system and application programs without restarting. In addition, after the CPM, which is in charge of the communication function, completes the function being performed and is disabled in the processor board operating in the active mode, the processor board in the standby mode is redundantly transferred. Therefore, by performing the redundancy switchover in this manner, the time required for the redundancy switchover is greatly reduced, and data transmission and reception can operate normally without disconnection of the call in the communication system.

한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 예를 들면 통신프로세서모듈은 상기에서 언급한 모듈이외의 모듈들이 추가될 수 있다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐 만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.Meanwhile, in the detailed description of the present invention, specific embodiments have been described, but various modifications are possible without departing from the scope of the present invention. For example, the communication processor module may include modules other than those mentioned above. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the scope of the following claims, but also by the equivalents of the claims.

상술한 바와 같이, 본 발명은 통신프로세서모듈을 포함한 이중화구조의 통신시스템에 있어서, 통신장비보드의 집적화 추세에 따라 종래의 프로세서보드와는 다르게 현재의 프로세서보드에 다양하고 복잡한 기능등을 포함하고, 특히 HDLC, LAN, QMC, SAR등과 같은 CPM 모듈을을 사용하는 경우에도 이중화 라이트방식이 가능한 방법을 제공하고 있다. 따라서 데이터의 손실이나 인터럽트가 발생할 경우에도 리셋이나 장애에 의하여 절체시 서비스지연의 최소화와 가입자의 호 절단없이 절체할 수 있는 장점이 있다.As described above, the present invention, in the communication system of a redundant structure including a communication processor module, in accordance with the trend of integration of communication equipment board includes a variety of complex functions and the like in the current processor board, unlike the conventional processor board, In particular, CPM modules such as HDLC, LAN, QMC, and SAR are used to provide a redundant light method. Therefore, in case of data loss or interruption, there is an advantage of minimizing service delay when switching by reset or failure and switching without call disconnection of subscriber.

Claims (8)

통신프로세서 모듈들을 각각 포함하는 제 1 및 제 2 프로세서 보드들을 구비하는 이중화구조의 통신시스템에서, 상기 제 1 프로세서 보드와 제 2 프로세서 보드간의 이중화 절체방법에 있어서,In a redundant communication system including first and second processor boards each including a communication processor module, in the redundant switching method between the first processor board and the second processor board, 상기 제 1 및 제 2 프로세서 보드들을 각각 액티브 및 스탠바이모드로 결정하는 단계와,Determining the first and second processor boards in an active and standby mode, respectively; 상기 결정된 액티브 및 스탠바이모드에서 상기 제 1 및 제 2 프로세서 보드들내의 상기 통신프로세서 모듈들을 초기화하는 단계와,Initializing the communication processor modules in the first and second processor boards in the determined active and standby modes; 상기 액티브모드에 있는 상기 제 1 프로세서 보드내의 CPU가 프로그램의 수행시 발생되는 데이터를 상기 스탠바이모드에 있는 상기 제 2 프로세서보드내의 메모리에 저장하는 단계와,Storing, by the CPU in the first processor board in the active mode, data generated when the program is executed in a memory in the second processor board in the standby mode; 상기 액티브모드에 있는 상기 제 1 프로세서 보드에서 상기 스탠바이 모드에 있는 상기 제 2 프로세서 보드로 절체조건이 발생하는지를 판단하는 단계 와,Determining whether a switching condition occurs from the first processor board in the active mode to the second processor board in the standby mode; 상기 절체조건발생시, 상기 액티브모드에 있는 상기 제 1 프로세서보드 내의 CPU가 절체조건발생 플래그를 세팅하는 단계와,Setting a transfer condition occurrence flag by a CPU in the first processor board in the active mode when the transfer condition occurs; 상기 절체조건발생 플래그 세팅후, 상기 제 1프로세서보드내의 상기 통신프로세서 모듈들이 수행중인 기능을 완료하고 디스에이블하는 단계와,After setting the switching condition occurrence flag, completing and disabling a function that the communication processor modules in the first processor board are performing; 상기 액티브모드에 있는 상기 제 1 프로세서보드내의 CPU가 절체 인터럽트명령비트를 세팅하는 단계와,Setting a transfer interrupt command bit by a CPU in the first processor board in the active mode; 상기 액티브모드에 있는 상기 제 1 프로세서보드내의 CPU가 프로그램 카운터등을 나타내는 코어 레지스터값을 상기 스탠바이모드에 있는 상기 제 2 프로세서 보드로 전달하는 단계로 이루어짐을 특징으로 하는 상기 방법The CPU in the first processor board in the active mode transferring a core register value indicating a program counter to the second processor board in the standby mode. 제 1항에 있어서, 상기 액티브모드에 있는 상기 제 1 프로세서보드가 상기 코어 레지스터값을 상기 스탠바이모드에 있는 상기 제 2프로세서보드에 전달하고, 상기 제 2 프로세서보드에 절체준비완료신호를 통보하는 과정을 더 구비함을 특징으로 하는 상기 방법The process of claim 1, wherein the first processor board in the active mode transmits the core register value to the second processor board in the standby mode, and notifies the second processor board of the transfer preparation completion signal. The method characterized in that it further comprises 제 1항에 있어서, 상기 통신프로세서 모듈은 직렬포트를 통하여 데이터를 전송하는 HDLC와, 어써넷을 통해 데이터를 전송하는 랜과, 시분할방식을 이용하여 E1/T1 프레임정보를 직렬포트를 통하여 전송하는 QMC와, 비동기전송방식에서 데이터 유니트를 셀단위로 분해 또는 조립하는 SAR을 포함함을 특징으로 하는 상기 방법2. The communication processor module of claim 1, wherein the communication processor module transmits E1 / T1 frame information through a serial port by using an HDLC for transmitting data through a serial port, a LAN for transmitting data through an Ethernet, and a time division scheme. The method comprising a QMC and a SAR for disassembling or assembling a data unit by cell in an asynchronous transmission method. 제 1항에 있어서, 상기 절체조건은 상기 액티브모드에 있는 상기 제 1 프로세서보드가 리셋이나 장애에 의하여 상기 보드가 정상적으로 동작하지 않는 조건임을 특징으로 하는 상기 방법The method as claimed in claim 1, wherein the transfer condition is a condition in which the board does not operate normally due to a reset or a failure of the first processor board in the active mode. 제 1항에 있어서, 상기 액티브모드에 있는 상기 제 1 프로세서보드의 상기 코어 레지스터 값은 버스를 통하여 상기 스탠바이모드에 있는 상기 제 2 프로세서 보드에 전달됨을 특징으로 하는 상기 방법2. The method of claim 1, wherein the core register value of the first processor board in the active mode is transferred to the second processor board in the standby mode via a bus. 제 1항에 있어서, 상기 제 1 프로세서보드가 전원이 공급되면 상기 CPU가 부팅되고, 상시 액티브모드에 있는 상기 제 1 프로세서보드가 상기 코어 레지스터 값을 상기 스탠바이모드에 있는 상기 제 2 프로세서보드에 전달후 , 상기 제 1 프로세서보드가 재부팅되는 단계를 더 구비함을 특징으로 하는 상기 방법The CPU of claim 1, wherein the CPU is booted when the first processor board is powered on, and the first processor board in the always active mode transfers the core register value to the second processor board in the standby mode. And further comprising the step of rebooting the first processor board. 제 1항에 있어서, 상기 액티브모드에 있는 상기 제 1 프로세서내의 CPU가 프로그램수행시 발생되는 데이터를 상기 제 1 프로세서보드내의 메모리와 상기 스탠바이모드에 있는 상기 제 2 프로세서보드내의 메모리에 컨커런트하게 저장하는 것을 특징으로 하는 상기 방법2. The method of claim 1, wherein data generated when a CPU in the first processor in the active mode executes a program is stored concurrently in memory in the first processor board and in memory in the second processor board in the standby mode. The method characterized in that 제 1항에 있어서, 상기 통신프로세서 모듈은 비동기전송방식에서 데이터 유니트를 셀단위로 분해 또는 조립하는 기능을 포함함을 특징으로 하는 상기 방법The method as claimed in claim 1, wherein the communication processor module includes a function of disassembling or assembling data units into cells in an asynchronous transmission method.
KR1020000050497A 2000-08-29 2000-08-29 The Duplication Method for Communication system KR100338626B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000050497A KR100338626B1 (en) 2000-08-29 2000-08-29 The Duplication Method for Communication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000050497A KR100338626B1 (en) 2000-08-29 2000-08-29 The Duplication Method for Communication system

Publications (2)

Publication Number Publication Date
KR20020017283A KR20020017283A (en) 2002-03-07
KR100338626B1 true KR100338626B1 (en) 2002-05-30

Family

ID=19685916

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000050497A KR100338626B1 (en) 2000-08-29 2000-08-29 The Duplication Method for Communication system

Country Status (1)

Country Link
KR (1) KR100338626B1 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100431467B1 (en) * 2000-12-26 2004-05-14 엘지전자 주식회사 System of Duplicating between Two Processors and Managing Method thereof
KR100429899B1 (en) * 2001-12-22 2004-05-03 한국전자통신연구원 Fault tolerant control apparatus and method by FUDCOM
KR100448218B1 (en) * 2001-12-27 2004-09-10 한국전자통신연구원 Duplication board system and active/standby decision method and thereof
KR20040020514A (en) * 2002-08-30 2004-03-09 주식회사 현대시스콤 Method for matching of PLD to processor duplexing
KR100542123B1 (en) * 2002-12-11 2006-01-11 한국전자통신연구원 Ethernet Channel Dualizing Apparatus of Dualizing Ethernet Switch Board
KR100805773B1 (en) * 2006-05-03 2008-02-21 에이스콘트롤(주) Do communication control duplex module device between Electric power watch protection machinery with Electric power host system
KR100825359B1 (en) * 2006-06-14 2008-05-06 대웅전기공업(주) Master CPU structure

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5473771A (en) * 1993-09-01 1995-12-05 At&T Corp. Fault-tolerant processing system architecture
KR19980028374A (en) * 1996-10-22 1998-07-15 김영환 Call processing module (CPM) of ATM switch
KR100195064B1 (en) * 1996-06-20 1999-06-15 유기범 Data network matching device
JPH11355392A (en) * 1998-06-12 1999-12-24 Nec Software Ltd Duplicate system changeover system and its program recording medium
KR20000033935A (en) * 1998-11-26 2000-06-15 이계철 Method for overcoming ethernet communication fault in duplicated switching system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5473771A (en) * 1993-09-01 1995-12-05 At&T Corp. Fault-tolerant processing system architecture
KR100195064B1 (en) * 1996-06-20 1999-06-15 유기범 Data network matching device
KR19980028374A (en) * 1996-10-22 1998-07-15 김영환 Call processing module (CPM) of ATM switch
JPH11355392A (en) * 1998-06-12 1999-12-24 Nec Software Ltd Duplicate system changeover system and its program recording medium
KR20000033935A (en) * 1998-11-26 2000-06-15 이계철 Method for overcoming ethernet communication fault in duplicated switching system

Also Published As

Publication number Publication date
KR20020017283A (en) 2002-03-07

Similar Documents

Publication Publication Date Title
US6378021B1 (en) Switch control method and apparatus in a system having a plurality of processors
EP0330475B1 (en) Configuration control system
JPH08161279A (en) Multiprocessor system
US20080040552A1 (en) Duplex system and processor switching method
AU2005244590A1 (en) A fault tolerant computer system and a synchronization method for the same
KR100338626B1 (en) The Duplication Method for Communication system
KR100258079B1 (en) The duplicated device by extention of memory bus in a tightly coupled fault tolerance system
US20110320683A1 (en) Information processing system, resynchronization method and storage medium storing firmware program
US20090089787A1 (en) Method and System for Migrating Critical Resources Within Computer Systems
US20030027562A1 (en) Radio communication device, method of and program for rewriting boot program therefor
US6594778B1 (en) Duplexing structure of switching system processor and method for maintaining memory coherency
US20020120816A1 (en) Multi-processor system
JP2002215473A (en) Information processor and multiplex system
KR100214122B1 (en) Communication system with dual structure capable of prohibiting the dataon\\ on communication between processors
JPH06175788A (en) Method and device for backup
KR100236937B1 (en) Control method of duplicated system with cache memory
JPH0157560B2 (en)
KR100431467B1 (en) System of Duplicating between Two Processors and Managing Method thereof
JPS625759A (en) Information remedy system
KR100258756B1 (en) Method for booting of duplicated exchange system
WO2004079573A1 (en) Multi-processor system
JP3051043B2 (en) Data processing device
KR0168947B1 (en) Method for booting node without disk in real-time distributing system
KR100377931B1 (en) Control apparatus and method of duplex system
JPH04360242A (en) Device and method for switching systems in duplexed system

Legal Events

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

Payment date: 20070409

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee