KR100227781B1 - 이동통신 시스템 기지국에서의 트래픽 데이터의 실시간 처리 방법 - Google Patents
이동통신 시스템 기지국에서의 트래픽 데이터의 실시간 처리 방법 Download PDFInfo
- Publication number
- KR100227781B1 KR100227781B1 KR1019960065724A KR19960065724A KR100227781B1 KR 100227781 B1 KR100227781 B1 KR 100227781B1 KR 1019960065724 A KR1019960065724 A KR 1019960065724A KR 19960065724 A KR19960065724 A KR 19960065724A KR 100227781 B1 KR100227781 B1 KR 100227781B1
- Authority
- KR
- South Korea
- Prior art keywords
- selector
- transcoder
- traffic
- board
- shared memory
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/12—Wireless traffic scheduling
- H04W72/1263—Mapping of traffic onto schedule, e.g. scheduled allocation or multiplexing of flows
- H04W72/1268—Mapping of traffic onto schedule, e.g. scheduled allocation or multiplexing of flows of uplink data flows
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 HDLC 기반의 고속 패킷망을 통해 패킷화된 제어 데이터와 트래픽 데이터가 혼합된 형태로 트랜스코더-셀렉터 뱅크 로 수신되는 경우 특히 시간에 매우 종속적인 역방향 트래픽 데이터 패킷들을 셀렉터부에서 실시간으로 처리할 수 있도록 하는 방법에 관한 것이다. 트랜스코더-셀렉터 뱅크에서 셀렉터부는 셀렉터-트렌스코더 정합보드와 4매의 셀렉터-트랜스코더 보드로 구성되며, 이들 보드들은 셀렉터-트랜스코더 보드에 있는 공유메모리를 통해 정합된다. 본 발명은 공유메모리를 통해 셀렉터-트랜스코더 정합보드가 해당 셀렉터-트랜스코더 보드들에 역방향 트래픽 데이터들을 송신하고 부하가 많이 인가되는 셀렉터-트랜스코더 보드에서 수신된 역방향 트래픽 데이터들을 실시간으로 처리하는 방법을 창출하는 것이며, 주된 요지는 셀렉터-트랜스코더 보드들에서 패킷의 유형에 따라 공유메모리의 수신버퍼를 분리하여 운용하는 것, 트래픽 데이터들을 태스크로 처리하여 인터럽트 서비스 루틴의 수행 시간을 최소화함으로써 다음에 수신되는 역방향 패킷들에 대해 신속히 대응하게 하는 것 그리고 트래픽 처리 태스크, 인터럽트 서비스 루틴, 트래픽패킷 송신부의 상호 작용을 위해 이벤트 및 여러 가지 소프트웨어 플래그들을 구비하는 것을 특징으로 한다.
Description
본 발명은 트래픽 데이터 처리 방법에 관한 것으로, 특히 이동국으로부터 기지국 트랜스코더-셀렉터 뱅크의 셀렉터부로 전송되는 패킷화된 역 방향 트래픽 데이터들을 실시간으로 처리할 수 있도록 한 트래픽 데이터 처리 방법에 관한 것이다.
일반적으로 셀렉터 측면에서 패킷이라 함은 시그널링과 관련된 제어 데이터들과 패킷화된 역방향/순방향 음성 트래픽 데이터들을 통합하여 말한다. 그러므로 패킷화된 데이터는 그 유형에 관계없이 소프트웨어적으로 보면 단순히 패킷망을 통해 투명하게 송수신되는 데이터에 불과하다. 상기 제어 데이터들은 기지국 내부의 프로세서들간에 태스크 통신에 사용되며 트래픽 데이터들은 이동국에서 기지국 트랜스코더-셀렉터 뱅크로 수신되는 역방향 트래픽 데이터와 기지국 트랜스코더-셀렉터 뱅크에서 이동국으로 보내지는 순방향 트래픽 데이터로 정의된다. 특히 음성 데이터는 전달 과정에서 패킷화된 트래픽으로 고속 패킷망을 통해 호당 20 밀리초(msec) 단위의 일정 주기로 송수신되므로 셀렉터에 최대 호가 인가될 경우 셀렉터는 트래픽 데이터들을 실시간으로 처리할 수 있어야 하며 동시에 호 설정 및 해제에 관련된 제어 데이터들도 효율적으로 처리할 수 있어야 한다. 그러면 제1도를 통해 일반적인 트랜스코더-셀렉터 뱅크의 하드웨어 구조를 설명하면 다음과 같다.
제1도는 일반적인 트랜스코더-셀렉터 뱅크의 하드웨어 구조를 설명하기 위한 블록도로서, 펄스 코드 변조(Pulse Code Modulation: PCM) 기능에 관련된 트랜스코더부는 본 발명의 범위를 벗어나므로 설명을 생략하기로 한다.
트랜스코더-셀렉터 뱅크(1)는 셀렉터-트랜스코더 정합보드(Selector & Transcoder Interface Board Assembly: SXIA)(2)와 4매의 셀렉터-트랜스코더 보드(Selector & Transcoder Board Assembly: SXOA)(3)로 구성된다. 상기 셀렉터-트랜스코더 정합보드(2)와 셀렉터-트랜스코더 보드(3)는 공유메모리(22)와 관련 정합부(14 및 23)를 통해 정합된다. 외부적으로 상기 트랜스코더-셀렉터 뱅크(1)는 고속 패킷망(4)에 정합된다.
상기 셀렉터-트랜스코더 정합보드(2)는 프로세서부(10), Static Random Access Memory(SRAM), Dynamic Random Access Memory(DRAM) 등으로 구성되는 메모리부(11), HDLC 프레임 처리를 수행하는 HDLC 프로토콜 처리기(13)와 직접 메모리접근 제어기(12) 그리고 상기 셀렉터-트랜스코더 보드(3)에서 전송되는 순방향 트래픽 패킷들과 제어 패킷들의 수신 처리를 위한 인터럽트 처리기(15) 및 셀렉터-트랜스코더 보드 정합부(14)로 구성되며, 이들은 시스템 버스(16)에 정합된다.
상기 셀렉터-트랜스코더 보드(3)는 프로세서부(20), Static Random Access Memory(SRAM), Dynamic Random Access Memory(DRAM)으로 구성되는 메모리부(21), 그리고 상기 셀렉터-트랜스코더 정합보드(2)에서 전송되는 역방향 트래픽 패킷들과 제어 패킷들의 수신 처리를 위한 인터럽트 처리기(24) 및 셀렉터-트랜스코더 정합보드 정합부(23)로 구성되며, 이들은 시스템 버스(25)에 정합되어 최대 15호를 동시에 처리할 수 있다. 따라서 4매의 상기 셀렉터-트랜스코더 보드(3)와, 셀렉터-트랜스코더 정합보드(2)는 최대 60호를 동시에 수용 처리할 수 있다.
상기한 바와 같이 역방향의 경우 1호당 트래픽 데이터들이 20 밀리초 단위로 고속 패킷망을 거쳐 상기 셀렉터-트랜스코더 정합보드(2)로 수신된 다음 상기 공유 메모리(22)를 통해 해당 셀렉터-트랜스코더 보드(3)로 수신되므로 하나의 셀렉터-트랜스코더 보드(3)는 최대 15호를 처리하기 위해서 한 트래픽 패킷당 평균 1.3 밀리초 이내의 실시간 처리를 완료하여 트랜스코더로 전송할 수 있어야 한다. 또한 제어 데이터들도 동일한 경로를 통해 상기 셀렉터-트랜스코더 보드(3)로 수신되므로 제어 데이터들의 처리가 실시간 트래픽 데이터 처리 과정을 크게 방해할 수 있다. 프로세서에 걸리는 부하 측면에서 볼 때 트래픽 데이터에 대한 모든 처리는 상기 셀렉터-트랜스코더 보드(3)에서 수행되므로 상기 셀렉터-트랜스코더 보드(3)의 프로세서부(20)에 인가되는 부하가 상기 셀렉터-트랜스코더 정합보드(2)에 인가되는 부하보다 훨씬 크게 된다. 그 이유는 상기 셀렉터-트랜스코더 정합보드(2)는 수신된 패킷들을 분석하여 자체의 제어 데이터 패킷 처리를 수행시키거나 해당 셀렉터-트랜스코더 보드(3)로 제어 및 트래픽 데이터 패킷들을 전송하는 단순한 라우터 역할을 담당하기 때문이며 역방향 트래픽 패킷들에 대한 특별한 실시간 처리를 요구하지 않는다. 반면에 상기 공유 메모리(22)를 통해 수신된 제어 및 트래픽의 모든 처리를 담당하는 상기 셀렉터-트랜스코더 보드(3)는 하부의 트랜스코더부와도 공유메모리(22)를 통해 정합되므로 그 만큼 부하가 클 수 밖에 없다.
따라서 본 발명은 공유 메모리를 통해 수신되는 역방향 트래픽 패킷들이 부하가 많이 인가되는 셀렉터-트랜스코더 보드에 의해 실시간으로 처리되도록 하므로써 상기한 단점을 해소할 수 있는 트래픽 데이터 처리 방법을 제공하는데 그 목적이 있다.
상기한 목적을 달성하기 위한 본 발명에 따른 트래픽 데이터 처리 방법은 ...한다.
또한, 본 발명에 따른 또 다른 트래픽 데이터 처리 방법은 프로세서부, 메모리부, 직접메모리 접근제어기, HDLC 프로토콜 처리기, 셀렉터-트랜스코더 보드 정합부 및 인터럽트 처리기로 구성된 셀렉터-트랜스코더 정합보드는 고속 패킷망에 정합되며 프로세서부, 메모리부, 인터럽트 처리기, 셀렉터-트랜스코더 정합보드 정합부 및 공유메모리로 구성된 셀렉터-트랜스코더 보드는 상기 공유메모리를 통해 상기 셀렉터-트랜스코더 정합보드와 정합되는 트랜스코더-셀렉터 뱅크의 트래픽 데이터 처리 방법에 있어서, 인터럽트의 발생 횟수를 감소시키기 위하여 상기 공유메모리의 특정 영역에 트래픽 버퍼 처리 플래그를 두고 트래픽 버퍼 처리 플래그 값이 이전의 패킷들을 처리하는 상태에 있을 경우 공유메모리 트래픽 패킷 송신부가 트래픽 패킷 수신 버퍼에 패킷을 송신할 수 있는 공간이 있으면 패킷을 저장한 후 인터럽트를 발생시키지 않도록 하는 것을 특징으로 하며, 본 발명에 따른 또 다른 트래픽 데이터 처리 방법은 프로세서부, 메모리부, 직접 메모리 접근제어기, HDLC 프로토콜 처리기, 셀렉터-트랜스코더 보드정합부 및 인터럽트 처리기로 구성된 셀렉터-트랜스코더 정합보드는 고속 패킷망에 정합되며 프로세서부, 메모리부, 인터럽트 처리기, 셀렉터-트랜스코더 정합보드 정합부 및 공유메모리로 구성된 셀렉터-트랜스코더 보드는 상기 공유메모리를 통해 상기 셀렉터-트랜스코더 정합보드와 정합되는 트랜스코더-셀렉터 뱅크의 트래픽 데이터 처리 방법에 있어서, 역방향 인터럽트 영역을 통해 발생한 인터럽트들을 처리하는 공유메모리 인터럽트 서비스 루틴의 수행 시간을 최소화하기 위해 트래픽 데이터들의 처리를 트래픽 처리 태스크에게 전담시켜 연속적으로 수신되는 트래픽 패킷들에 신속히 대응할 수 있도록 하는 것을 특징으로 한다.
제1도는 일반적인 트랜스코더-셀렉터 뱅크의 하이웨어 구조를 설명하기 위한 블록도.
제2도는 트랜스코더-셀렉터 뱅크의 공유메모리를 통한 역방향 패킷 송수신부의 구조를 설명하기 위한 블록도.
제3도는 공유메모리 역방향 트래픽 패킷 송신부의 동작을 설명하기 위한 흐름도.
제4도는 공유메모리 역방향 트래픽 패킷 수신 인터럽트 서비스 루틴을 설명하기 위한 흐름도.
제5도는 공유메모리 역방향 트래픽 패킷 수신 처리 태스크를 설명하기 위한 흐름도.
제6도는 역방향 트래픽 패킷들을 실시간으로 처리하기 위해 필요한 초기화 과정을 설명하기 위한 흐름도.
* 도면의 주요부분에 대한 부호의 설명
1 : 트랜스코더-트랜스 뱅크
2 및 31 : 셀렉트-트랜스 코더 정합 보드
3 및 32 : 셀렉터-트랜스코더 보드
4 : 고속 패킷망 10 ; 프로세서부
11 : 메모리부 12 : 직접 메모리 접근
13 : HDLC 프로토콜 14 : 셀렉터-트랜스코더 보드 정합부
15 : 인터럽트 처리기 16 : 시스템 버스
20 : 프로세서부 21 : 메모리부
22 : 공유 메모리 23 : 셀렉터-트랜스코더 정합보드 정합부
24 : 인터럽트 처리기 25 : 시스템 버스
30 : 고속 패킷망 34 : HDLC 라우터
40 : 공유메모리 트래픽 패킷 송신부
41 : 공유메모리 인터롭트 서비스 루틴
42 : 응용 태스크 43 : 트래픽 패킷 수신 버퍼
44 : 역방향 인터럽트 영역 45 : 트래픽 이벤트
50 : 트래픽 버퍼 처리 플래그 51 : 트래픽 버퍼 종료 플래그
60 : 공유메모리 제어 패킷 송신부 61 : 제어 패킷 수신 버퍼
62 : 제어 패킷 처리 태스크
본 발명은 HDLC 기반의 고속 패킷망을 통해 제어 데이터와 트래픽 데이터가 혼합된 형태로 셀렉터부로 수신되는 경우, 특히 시간에 매우 종속적인 역방향 트래픽 데이터 패킷들이 셀렉터부에서 실시간으로 처리될 수 있도록 하는데, 상기 셀렉터부에서 역방향 음성 트래픽 데이터는 통화중 상태에서 1호당 매 20 밀리초(msec) 주기로 이동국에서 고속 패킷망을 통해 기지국 셀렉터부로 패킷화된 트래픽 데이터들이 전송된다. 그러면 이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명하기로 한다.
본 발명의 요지는 제2도에 도시된 바와 같이 셀렉터-트랜스코더 보드(32)의 공유메모리로 수신되는 패킷들의 특성들을 분석하고 공유메모리의 역방향 인터럽트 영역(44)을 통해 발생한 인터럽트에 대한 지연 시간을 최소화하는 데 있다. 이미 언급되었듯이 역방향 트래픽 데이터들은 실시간 특성을 갖고 있다. 그러나 제어 데이터는 시그널링에 관계되므로 실시간 처리를 요구하지 않으면서도 실시간 운영체계에 의한 응용 태스크의 스케쥴링과 패킷 저장 작업으로 인해 상당한 처리 시간을 요한다. 그러므로 본 발명의 첫 번째 요지는 패킷 특성에 따라 공유메모리의 수신 버퍼 영역을 분리하여 트래픽 패킷 수신 버퍼(43)와 제어 패킷 수신 버퍼(61)로 구성한다. 상기 공유메모리 수신 버퍼의 분리 운용 방법은 셀렉터-트랜스코더 보드(32)로 하여금 트래픽 패킷 처리 태스크(42)와 제어 패킷 처리 태스크(62)에 대해 우선 순위에 의한 태스크 스케쥴링을 가능하게 한다. 우선순위에 의한 태스크 스케쥴링은 실시간 상용 운영체계에서 제공되는 라이브러리를 사용한다. 트래픽 패킷처리 태스크나 제어 패킷 처리 태스크를 병행적으로 실행시키기 위해서는 먼저 태스크의 생성이 필수적이다. 이들 태스크들의 생성을 태스크 고유의 기능 이름과 우선순위를 매개 변수를 필요로 하는 태스크 생성 라이브러리를 호출하여 생성시킨다. 우선순위 결정은 응용 프로그램 개발자가 결정하여야 하는데, 통상 상용 실시간 운영 체계들은 1~255 사이의 정수 중 하나를 선택하며, 통상 작은 숫자를 가진 태스크는 큰 숫자를 가진 태스크에 비해 티스크 실행에서 더 높은 우선순위를 갖게 된다. 즉, 현재 낮은 순위를 가진 태스크는 수행 중 시간 상으로 불특정 시점에서 높은 우순순위를 가진 태스크에 의한 처리 요구가 있을 경우 수행이 중단되고 실시간 운영체계의 스케쥴링에 의해 높은 우선순위를 가진 태스크로 제어가 넘어간다.
따라서 역방향 트래픽 데이터들은 처리하는 트래픽 패킷 처리 태스크의 태스크 스케쥴링을 위한 우선 순위를 높게 하면 실시간성을 높일 수 있다. 상기한 공유 메모리 수신 버퍼 운용 방법을 기반으로 고속 패킹망을 통해 셀렉터-트랜스코더 정합보드(31)의 HDLC 라우터(34)로 수신되는 패킷들은 패킷 유형에 따라 공유메모리 트래픽 패킷 송신부(40)와 공유메모리 제어 패킷 송신부(60)로 분리되어 공유메모리의 해당 수신 버퍼를 통해 셀렉터-트랜스코더 보드(32)로 송신된다. 여기서 상기 역방향 인터럽트 영역(44)을 통한 인터럽트의 운용 방법은 2가지 유형이 가능하다. 첫 번째 방법은 셀렉터-트랜스코더 정합보드(31)에서 패킷들을 수신 버퍼 영역으로 쓸때마다 패킷 단위로 셀렉터-트랜스코더 보드(32)로 인터럽트를 발생시키는 것이고, 두 번째 방법은 셀렉터-트랜스코더 보드(32)의 트래픽 패킷 처리 태스크가 인터럽트 발생 횟수를 최소화시킬 수 있는 방법을 셀렉터-트랜스코더 정합보드(31)의 트래픽 패킷 송신부에 제공하는 것이다. 상기 제1도는 셀렉터-트랜스코더 보드(32)의 상기 인터럽트 처리기(24)는 미처리 인터럽트에 대해서 하드웨어적으로 우선 순위에 의한 체인 형태의 인터럽트를 제공하지만 상기 첫 번째 방법의 경우 현재 수행중인 인터럽트 서비스 루틴 종료후에 체인된 여러 인터럽트가 매 패킷 단위로 순차적으로 발생하므로 인터럽트 발생 횟수가 많아져 인터럽트로 인한 서비스 루틴의 처리 부하가 증가한다. 따라서 본 발명의 두 번재 요지는 두 번째 방법을 채택하는 것이다. 이 방법은 셀렉터-트랜스코더 보드(32)에서 공유메모리의 특정 영역에 소프트웨어적으로 고안된 트래픽 버퍼 처리 플래그(50)를 두고, 만약 트래픽 버퍼 처리 플래그 값이 이전의 패킷들을 처리하는 상태에 있을 경우에는 셀렉터-트랜스코더 정합보드(31)의 공유메모리 트래픽 패킷 송신부는 트래픽 패킷 수신 버퍼(43)에 패킷을 송신할 수 있는 공간이 있으면 패킷을 저장한 후 인터럽트를 발생시키지 않게 함으로써 트래픽 데이터 양이 많아질수록 발생시킬 인터럽트 발생 횟수를 현저히 감소시켜 보자는 것이다. 역방향 트래픽 데이터들을 실시간으로 처리하기 위한 본 발명의 세 번째 요지는 셀렉터-트랜스코더 보드(32)에 역방향 인터럽트 영역을 통해 발생한 인터럽트를 처리하는 공유메모리 인터럽트 서비스 루틴(41)의 수행 시간을 최소화하여 다음 인터럽트 발생에 신속히 대처할 수 있는 방법을 고안하는 것이다. 이 방법은 트래픽 데이터들의 모든 처리를 트래픽 패킷 태스크가 수행하게 하는 것이다. 따라서 공유메모리 인터럽트 서비스 루틴은 트래픽 패킷 태스크에게 처리할 트래픽 패킷들이 상기 트래픽 패킷 수신 버퍼(43)에 있다는 사실을 어떤 형태로든 알려야 한다. 이를 위해 본 발명에서는 대부분의 실시간 운영체계에서 지원하는 동기화 수단을 응용한 트래픽 이벤트(45)를 공유메모리 인터럽트 서비스 루틴과 트래픽 패킷 처리 태스크간의 상호 작용을 위해 사용하며 불필요한 트래픽 이벤트를 발생시키지 않도록 소프트웨어적인 트래픽 이벤트 종료 플래그(51)를 고안한다.
역방향 트래픽 데이터들의 실시간 처리를 위한 본 발명의 작용은 상기한 구성하에 첨부된 흐름도들을 중심으로 설명한다.
제3도는 공유메모리 트래픽 패킷 송신부(제2도의 40)의 처리 동작을 설명하기 위한 흐름도로서, 상기 제2도를 참조하여 설명하면 다음과 같다.
상기 셀렉터-트랜스코더 정합보드(31)에서 동작하는 상기 HDLC 라우터(34)는 상기 고속 패킷망(30)으로부터 수신한 트래픽 데이터들을 상기 셀렉터-트랜스코더 보드(32)로 송신하기 위해 공유메모리 트래픽 패킷 송신부(40)를 호출한다. 상기 공유메모리 트래픽 패킷 송신부(40)는 현재 공유메모리 트래픽 패킷 수신 버퍼(43)의 쓰기 포인터의 상태 플래그 값을 읽고, 그 영역이 사용 가능한 가를 판단한다(단계 100). 현재 쓰기 포인터의 상태 플래그가 사용 가능함을 나타내면 그 영역에 트래픽 패킷을 복사한다(단계 101). 상기 트래픽 패킷이 상기 트래픽 패킷 버퍼에 저장되면 상기 셀렉터-트랜스코더 보드(32)에 수신 처리 요구 준비가 끝난 상태이므로 인터럽트를 발생시킬 수 있는 가를 판단한다. 판단 절차는 인터럽트 발생 횟수를 줄이기 위해 두 단계로 구성하는데 역방향 인터럽트 영역(44)과 트래픽 버퍼 처리 플래그(50)를 참조한다. 이들 값은 상기 셀렉터-트랜스코더 보드(32)의 공유 메모리 인터럽트 서비스 루틴과 트래픽 패킷 처리 태스크의 상호 작용에 의해 변경된다. 먼저 이전에 발생시킨 인터럽트 응답 여부를 나타내는 역방향 인터럽트 영역 값(44)을 읽어 처리 완료 상태인 가를 검사한다(단계 102). 상기 검사 결과가 처리 완료 상태이면 트래픽 패킷 처리 태스크(42)가 이전에 발생된 수신 처리 인터럽트에 대해 트래픽 패킷 수신 버퍼(43)를 현재 처리하고 있는 가를 트래픽 버퍼 처리 플래그(50)의 값을 읽어 판단한다(단계 103). 만약 그 값이 종료 상태이면 최근에 상기 트래픽 패킷 수신 버퍼(43)에 저장시킨 트래픽 데이터들을 처리하도록 요구하기 위해 공유메모리 트래픽 수신 인터럽트를 역방향 인터럽트 영역을 통해 발생시킨다(단계 104). 상기 공유메모리 트래픽 패킷 인터럽트 값은 상기 패킷 수신 버퍼의 유형을 나타낸다. 인터럽트를 발생시킨 후 상기 공유 메모리 트래픽 패킷 송신부(40)는 상기 HDLC 라우터(34)에 의해 다음에 처리 요구될 트래픽 패킷을 저장하기 위해 트래픽 패킷 수신 버퍼 포인터를 조정(단계 105)한 후 복귀한다(단계 106). 이때 만약 상기 역방향 인터럽트 영역 값이 처리 완료 상태가 아니면 공유 메모리 인터럽트 서비스 루틴이 수행중이므로 복귀한다(단계 106). 또한 트래픽 버퍼 처리 플래그 값이 종료 상태를 나타내지 않을 경우 트래픽 패킷 처리 태스크가 현재 트래픽 패킷 수신 버퍼를 처리중이므로 복귀한다. 상기 HDLC 라우터(34)에 의해 송신 요구된 패킷이 상기 트래픽 패킷 수신 버퍼(43)에 저장된 경우 트래픽 패킷 처리 태스크에 의해 인터럽트 발생없이 이전의 트래픽 패킷 처리후 즉시 처리된다. 만약 트래픽 패킷 수신 버퍼 쓰기 포인터가 가르키는 저장 영역의 상태 플래그의 검사(단계 100) 결과가 사용 가능하지 않는 상태이면 송신 요구된 트래픽 패킷은 유실된다. 그러나 본 발명에서 상기 트래픽 패킷 수신 버퍼(43)는 충분히 크기 때문에 트래픽 패킷의 유실 가능성은 거의 없다.
제4도는 공유메모리 역방향 트래픽 패킷 수신 인터럽트 서비스 루틴(제2도의 41)을 설명하기 위한 흐름도로서, 상기 제2도를 참조하여 설명하면 다음과 같다.
인터럽트 서비스 루틴은 항상 공유메모리 인터럽트 대기 상태에 있다(단계 200). 상기 인터럽트 대기 상태는 상기 셀렉터-트랜스코더 정합보드(31)의 트래픽 패킷 송신부(40)로부터 역방향 인터럽트 영역(44)을 통해 발생된 인터럽트에 의해 깨어난다(단계 201). 상기 인터럽트 서비스 루틴은 역방향 인터럽트 영역 값을 읽어낸다(단계 202). 이 값은 수신 버퍼의 유형을 나타내므로 어떤 수신 버퍼인 가를 검사한다(단계 203). 만약 상기 검사 결과가 상기 트래픽 패킷 수신 버퍼(43)를 나타내면 상기 트래픽 이벤트 종료 플래그(51)을 검사한다(단계 204). 상기 트래픽 이벤트 종료 플래그(51)가 종료 상태를 나타내면 상기 트래픽 패킷 처리 태스크(42)가 이전의 인터럽트에 의한 트래픽 패킷들의 처리를 종료한 상태이므로 새로 수신된 트래픽 패킷들을 트래픽 처리 태스크에게 처리할 것을 요구하기 위해 다시 트래픽 이벤트 종료 플래그를 요구 상태로 변경한다(단계 205). 상기 과정을 끝낸 후 상기 인터럽트 서비스 루틴은 상기 트래픽 패킷 처리 태스크로 하여금 상기 트래픽 패킷 수신 버퍼(43)를 처리하도록 트래픽 이벤트(45)를 발생(단계 206) 시킨 후 역방향 인터럽트 영역 값을 인터럽트 처리 완료 상태로 천이시킨다(단계 207). 모든 작업을 끝낸 상기 인터럽트 서비스 루틴은 다시 공유메모리 인터럽트 대기 상태로 간다(단계 200). 만약 트래픽 이벤트 종료 플래그가 종료 상태가 아니면 트래픽 패킷 처리 태스크가 상기 트래픽 패킷 처리 버퍼를 처리하는 과정에 있으므로 새로 송신된 트래픽 패킷들은 트래픽 패킷 처리 태스크의 수행 과정에서 처리되므로 역방향 인터럽트 영역 값을 인터럽트 처리 완료 상태로 변경(단계 207)한 후 공유메모리 인터럽트 대기 상태로 간다(단계 200). 본 발명은 트래픽 패킷들에 대한 실시간 처리에 관한 것으로 제어 패킷에 대한 처리는 구체적으로 설명하지 않는다. 그러나 제어 패킷들의 처리 과정도 트래픽 패킷 버퍼 처리와 유사한 작업들을 수행한 후 공유메모리 인터럽트 대기 상태로 간다(단계 208 및 200).
제5도는 공유메모리 역방향 트래픽 패킷 수신 처리 태스크(제2도의 42)를 설명하기 위한 흐름도로서, 상기 제2도를 참조하여 설명하면 다음과 같다.
상기 트래픽 패킷 태스크(42)는 공유메모리 인터럽트 서비스 루틴(41)이 트래픽 패킷 버퍼 처리를 요구하는 상기 트래픽 이벤트(45)에 대해 대기하고 있다(단계 300). 상기 공유메모리 인터럽트 서비스 루틴에 의해 발생된 상기 트래픽 이벤트(45)에 의해서 스케쥴링된 트래픽 패킷 처리 태스크는 수행된다(단계 301). 상기 트래픽 패킷 처리 태스크는 상기 트래픽 패킷 수신 버퍼(43)의 현재 읽기 포인터의 상태 플래그가 종료 상태인 가를 검사한다(단계 302). 상기 검사 결과가 거짓이면 처리해야 할 트래픽 패킷이므로 해당 상기 응용 태스크(42)의 특정 프로시져를 호출한다(단계 303). 응용 프로세져는 트래픽 데이터에 대한 세부 처리를 한다. 상기 응용 프로시져에서 복귀되면 상기 트래픽 패킷 수신 버퍼(43)의 읽기 포인터 장소의 상태 플래그를 종료 상태로 변경한다(단계 304). 종료 상태로 변경된 상기 트래픽 패킷 수신 버퍼 영역은 상기 트래픽 패킷 송신부(40)에게 상기 HDLC 라우터(34)에서 송신 요구된 새로운 패킷들을 저장할 수 있도록 해준다. 다음 패킷 처리를 위해 트래픽 패킷 수신 버퍼 읽기 포인터를 조정한다(단계 305). 상기 과정(단계 302 내지 단계 305)은 트래픽 버퍼 읽기 포인터의 상태 플래그가 종료 상태인 버퍼 위치를 만날 때까지 반복된다. 만약 검사 결과(단계 302)가 참이면 상기 공유 메모리 트래픽 패킷 송신부(40)에게 인터럽트를 발생시켜도 되는 상황임을 알리기 위해 트래픽 버퍼 처리 플래그(50)를 종료 상태로 변경한다(단계 306). 다음으로 수행할 단계는 공유메모리 인터럽트 서비스 루틴에게 트래픽 패킷 처리 태스크가 처리 요구된 트래픽 패킷 버퍼의 모든 트래픽 패킷들을 처리 완료했으므로 다음에 트래픽 패킷 버퍼에 저장되는 트래픽 데이터들에 대해서 인터럽트가 발생되었을 경우 트래픽 이벤트를 발생시켜도 좋다는 사실을 알리는 트래픽 이벤트 플래그(51) 값을 완료 상태로 변경한다(단계 307). 상기 모든 처리 과정후 다음 트래픽 이벤트에 대해 대기하는 상태로 간다(단계 300).
제6도는 역방향 트래픽 패킷들을 실시간으로 처리하기 위해 필요한 초기화 과정을 설명하기 위한 흐름도이다.
초기화는 제1도의 셀렉터-트랜스코더 보드(3)에 전원이 인가된 후 최초로 수행하여야 할 작업으로 역방향 인터럽트 불가능 설정 상태로 설정하는 것(400)으로 시작된다. 셀렉터-트랜스코더 정합보드(2, 31)에서 수행되는 공유메모리 트래픽 패킷 송신부(40)는 제3도에서 보여주는 것처럼 역방향 인터럽트 영역이 불가능 상태일 경우 트래픽 수신 버퍼에 패킷을 쓰지 않고 복귀하므로 문제가 없다. 상기 작업이 완료되면 트래픽 패킷 수신 버퍼의 전 영역을 0으로 초기화한 후(401), 제2도의 공유메모리 트래픽 패킷 송신부(40)에서 발생시킨 공유메모리 트래픽 수신 인터럽트(제3도의 104)를 처리하기 위한 공유메모리 인터럽트 서비스 루틴(41)을 실시간 운영체계가 관리하는 인터럽트 벡터 테이블에 등록하기 위한 라이브러리를 호출하고(402), 공유메모리 인터럽트 서비스 루틴과 트래픽 패킷 처리 태스크(42)와의 작업 동기화를 위한 트래픽 이벤트 세마포어 생성을 요구(403)하며, 트래픽 버퍼 처리 플래그(50)를 초기화(404) 한다. 상기 과정을 수행한 후 실시간 운영체계의 태스크 생성 라이브러리를 호출하여 트래픽 패킷 처리 태스크를 생성(405)한다. 이때부터 트래픽 패킷 처리 태스크는 활성화되므로 역방향 인터럽트 영역(44)을 사용 가능 상태로 설정(406)한다.
상술한 바와 같이 본 발명에 의하면 고속 패킷망과 공유메모리를 채택하고 이들 사이를 패킷화된 역방향 트래픽 데이터와 시그널링 제어 데이터가 혼합된 구조로 송수신되는 통신 시스템에서 패킷 유형에 따른 버퍼 운용과 인터럽트와 관련된 제반 요인들을 최적화시키는 방법으로 실시간 처리를 충족시키는 효과를 창출할 수 있다.
Claims (4)
- 프로세서부, 메모리부, 직접메모리 접근제어기, HDLC 프로토콜 처리기, 셀렉터-트랜스코더 보드 정합부 및 인터럽트 처리기로 구성된 셀렉터-트랜스코더 정합보드는 고속 패킷망에 정합되며 프로세서부, 메모리부, 인터럽트 처리기, 셀렉터-트랜스코더 정합보드 정합부 및 공유메모리로 구성된 셀렉터-트랜스코더 보드는 상기 공유메모리를 통해 상기 셀렉터-트랜스코더 정합보드와 정합되는 트랜스코더-셀렉터 뱅크의 트래픽 데이터 처리 방법에 있어서, 상기 고속 패킷망을 통해 HDLC 라우터로 수신되는 트래픽 패킷들이 공유메모리 패킷 송신부에 의해 트래픽 패킷 수신 버퍼에 쓰여지고, 공유 메모리 트래픽 패킷 송신부는 역방향 인터럽트 영역에 하드웨어 인터럽트를 인가시켜 공유메모리 인터럽트 서비스 루틴이 실행되게 하며, 공유메모리 인터럽트 서비스 루틴은 트래픽 이벤트를 발생시켜 대기중인 트래픽 패킷 처리 태스크가 신속히 반응하여 트래픽 패킷들이 실시간으로 처리되도록 하는 것을 특징으로 하는 이동통신 시스템 기지국에서의 트래픽 데이터 처리 방법.
- 프로세서부, 메모리부, 직접메모리 접근제어기, HDLC 프로토콜 처리기, 셀렉터-트랜스코더 보드 정합부 및 인터럽트 처리기로 구성된 셀렉터-트랜스코더 정합보드는 고속 패킷망에 정합되며 프로세서부, 메모리부, 인터럽트 처리기, 셀렉터-트랜스코더 정합보드 정합부 및 공유메모리로 구성된 셀렉터-트랜스코더 보드는 상기 공유메모리를 통해 상기 셀렉터-트랜스코더 정합보드와 정합되는 트랜스코더-셀렉터 뱅크의 트래픽 데이터 처리 방법에 있어서, 인터럽트의 발생 횟수를 감소시키기 위하여 상기 공유메모리의 특정 영역에 트래픽 버퍼 처리 플래그를 두고 트래픽 버퍼 처리 플래그 값이 이전의 패킷들을 처리하는 상태에 있을 경우 공유메모리 트래픽 패킷 송신부가 트래픽 패킷 수신 버퍼에 패킷을 송신할 수 있는 공간이 있으면 패킷을 저장한 후 인터럽트를 발생시키지 않도록 하는 것을 특징으로 하는 트래픽 데이터 처리 방법.
- 프로세서부, 메모리부, 직접메모리 접근제어기, HDLC 프로토콜 처리기, 셀렉터-트랜스코더 보드 정합부 및 인터럽트 처리기로 구성된 셀렉터-트랜스코더 정합보드는 고속 패킷망에 정합되며 프로세서부, 메모리부, 인터럽트 처리기, 셀렉터-트랜스코더 정합보드 정합부 및 공유메모리로 구성된 셀렉터-트랜스코더 보드는 상기 공유메모리를 통해 상기 셀렉터-트랜스코더 정합보드와 정합되는 트랜스코더-셀렉터 뱅크의 트래픽 데이터 처리 방법에 있어서, 역방향 인터럽트 영역을 통해 발생한 인터럽트들을 처리하는 공유메모리 인터럽트 서비스 루틴의 수행 시간을 최소화하기 위해 트래픽 데이터들의 처리를 트래픽 처리 태스크에서 전담시켜 연속적으로 수신되는 트래픽 패킷들에 신속히 대응할 수 있도록 하는 것을 특징으로 하는 트래픽 데이터 처리 방법.
- 프로세서부, 메모리부, 직접메모리 접근제어기, HDLC 프로토콜 처리기, 셀렉터-트랜스코더 보드 정합부 및 인터럽트 처리기로 구성된 셀렉터-트랜스코더 정합보드는 고속 패킷망에 정합되며 프로세서부, 메모리부, 인터럽트 처리기, 셀렉터-트랜스코더 정합보드 정합부 및 공유메모리로 구성된 셀렉터-트랜스코더 보드는 상기 공유메모리를 통해 상기 셀렉터-트랜스코더 정합보드와 정합되는 트랜스코더-셀렉터 뱅크의 트래픽 데이터 처리 방법에 있어서, 공유메모리 인터럽트 서비스 루틴과 트래픽 처리 태스크간 상호 작용을 위해 실시간 운영체계에서 제공하는 동기화 수단을 응용한 트래픽 이벤트를 사용하고 불필요한 트래픽 이벤트 발생을 방지하기 위하여 소프트웨어적으로 고안된 트래픽 이벤트 종료 플래그를 운영하는 것을 특징으로 하는 트래픽 데이터 처리 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960065724A KR100227781B1 (ko) | 1996-12-14 | 1996-12-14 | 이동통신 시스템 기지국에서의 트래픽 데이터의 실시간 처리 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960065724A KR100227781B1 (ko) | 1996-12-14 | 1996-12-14 | 이동통신 시스템 기지국에서의 트래픽 데이터의 실시간 처리 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980047248A KR19980047248A (ko) | 1998-09-15 |
KR100227781B1 true KR100227781B1 (ko) | 1999-11-01 |
Family
ID=19487843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960065724A KR100227781B1 (ko) | 1996-12-14 | 1996-12-14 | 이동통신 시스템 기지국에서의 트래픽 데이터의 실시간 처리 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100227781B1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100551158B1 (ko) * | 1998-12-31 | 2006-05-25 | 유티스타콤코리아 유한회사 | 이동통신 시스템의 기지국내 hdlc 통신장치 및 그 통신방법 |
KR100324281B1 (ko) * | 1999-08-31 | 2002-02-25 | 서평원 | 중앙 집중식 고속 데이터 전송 장치 |
KR100445331B1 (ko) * | 2001-08-31 | 2004-08-18 | 유티스타콤코리아 유한회사 | 이동통신 제어국의 셀렉터 |
-
1996
- 1996-12-14 KR KR1019960065724A patent/KR100227781B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19980047248A (ko) | 1998-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5428781A (en) | Distributed mechanism for the fast scheduling of shared objects and apparatus | |
EP0097674B1 (en) | Interface processor unit | |
JP3676827B2 (ja) | マルチプロセッサシステム用のスケジューリング方法 | |
JPH04215158A (ja) | データ転送制御方法及びインタフェース・システム | |
US7007157B2 (en) | Network interface sharing methods and apparatuses that support kernel mode data traffic and user mode data traffic | |
US7640549B2 (en) | System and method for efficiently exchanging data among processes | |
US6466963B1 (en) | Agent system with prioritized processing of mobile agents | |
KR100227781B1 (ko) | 이동통신 시스템 기지국에서의 트래픽 데이터의 실시간 처리 방법 | |
US6615279B1 (en) | Central and distributed script servers in an object oriented processor array | |
US4930103A (en) | Data transmission method in a digital transmission network and apparatus for implimenting same | |
US7320044B1 (en) | System, method, and computer program product for interrupt scheduling in processing communication | |
US20030145129A1 (en) | Protocol driver application programming interface for operating systems | |
Zhao et al. | A multi-access window protocol for transmission of time constrained messages | |
JPS61195439A (ja) | リモ−トフアイルアクセス方式 | |
JPH09269936A (ja) | リモートリード処理方法およびその装置 | |
JPH02158840A (ja) | タスク間通信用メッセージ領域制御方式 | |
KR920001073B1 (ko) | CCITT No.7 공통선 신호 방식의 신호 접속 제어부 기능 구현 방법 | |
KR100212450B1 (ko) | 이동 통신 시스템 기지국 제어계의 메시지 수신부 최적 처리 방법 | |
AU670874B2 (en) | Inter-process communication | |
KR950003680B1 (ko) | 전전자 교환기의 공통선 신호방식을 위한 메세지 큐 관리방법 | |
JPH10143486A (ja) | 並列計算機におけるデータ送受信方法 | |
JP3023339B2 (ja) | メッセージ着信通知方法及びシステム | |
KR19990039779A (ko) | 프로세서간 통신에 의한 파일 로딩방법 | |
JP2671655B2 (ja) | 通信装置 | |
JP2002542524A (ja) | オブジェクト指向プロセッサ・アレイ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20080805 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |