KR950004240B1 - 실시간 처리 제어 시스템 - Google Patents

실시간 처리 제어 시스템 Download PDF

Info

Publication number
KR950004240B1
KR950004240B1 KR1019860011123A KR860011123A KR950004240B1 KR 950004240 B1 KR950004240 B1 KR 950004240B1 KR 1019860011123 A KR1019860011123 A KR 1019860011123A KR 860011123 A KR860011123 A KR 860011123A KR 950004240 B1 KR950004240 B1 KR 950004240B1
Authority
KR
South Korea
Prior art keywords
signal
program
group
document
original
Prior art date
Application number
KR1019860011123A
Other languages
English (en)
Other versions
KR870006446A (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 KR870006446A publication Critical patent/KR870006446A/ko
Application granted granted Critical
Publication of KR950004240B1 publication Critical patent/KR950004240B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54575Software application
    • H04Q3/54583Software development, e.g. procedural, object oriented, software generation, software testing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13056Routines, finite state machines

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Exchange Systems With Centralized Control (AREA)
  • Devices For Executing Special Programs (AREA)
  • Telephonic Communication Services (AREA)
  • Multi Processors (AREA)

Abstract

내용 없음.

Description

실시간 처리 제어 시스템
제1도는 본 발명의 주세인 통신 시스템의 블럭 다이어그램도
제2도는 제1도의 통신 시스템의 가입자 유니트의 상태에 대한 상태 다이어그램 형태도
제3 및 4도는 제1도의 통신 시스템에 대한 기본 전화 서비스를 제공하는 소스 코드 형태의 프로그램 원고의 도시도
제5도는 제1도의 통신 시스템에 대한 활성/비활성화 서비스를 보내는 호출을 가진 호출 송부 및 호출측확인 서비스를 제공하는 프로그램 원고의 도시도.
제6도는 제1도의 통신 시스템에 대한 기본 전화 서비스와 호출측 확인 및, 호출 송부의 수행을 가진 논리 신호 테이블의 도시도
제7도는 비활성화된 호출 송부 서비스에 따라 제6도의 논리 신호 테이블을 도시한 도시도
제8,9도는 제1도의 통신 시스템에 대한 데이타 서비스를 제공하는 프로그램 원고의 도시도
제10도는 제1도의 가입자 유니트의 컴퓨터의 제어에 사용되는 상호 처리 통신과 소프트웨어 처리의 블럭다이어그램도
제11,12,l3도는 제6,7도의 논리 신호 테이블을 수행하기 위해 사용되는 소프트웨어 구조도
제14도는 제12도의 블럭(1206)의 상세도
제15도는 제3도에 도시된 것과 같은 트리플에 대한 소스 코드의 콤파일로부터의 결과되는 콤파일된 트리플의 포맷 도시도
제16도 내지 21도는 제15도에 사용된 여러 명령 포맷의 도시도
제22도는 제12도에 도시된 콤파일된 트리플에 함유된 정보를 근거로 하여 관련된 테이블의 가변 및 문자값의 억세스를 상세히 도시한 도면
제23.24도는 제10도의 FSM(1005) 처리를 플로우챠트 형태로 도시한 도면
제25도는 제24도의 블럭(2314)의 플로우챠트
제26,27,28도는 제25도의 블럭 2505의 상세도
제29,30,31도는 제23도의 블럭(2315)의 부가적인 세부에 의해 프로그램 원고의 활성화의 상세도
제32,33도는 제31도의 블럭(2920)의 상세도
제24 내지 37도는 제10도의 번역기(1006)의 플로우챠트
제38도는, 출발 및 입력신호의 처리를 도시하는 "다음상태" 초기치를 플로우챠트로 도시한 도면
제39도는 어떻게 유리하게 제11,12,13도가 결합되어 있는가를 도시하는 도시도
* 도면의 주요부분에 대한 부호의 설명
100 : 버스 101,104 : 컴퓨터
102 : 가입자 유니트 105 : 송수화기
본 발명은 실시간 처리의 제어에 관한 것으로, 특히, 시스템 상태 및 신호의 관점에서 제어 작동을 직접 한정하는 비순차 프로그래밍 언어의 사용을 통하여 통신 시스템을 제어하는 것에 관한 것이다.
실시간 처리를 제어하는 디지탈 컴퓨터를 사용하는 데의 주 원가는 프로그램의 개선 자격에 있다는 것이 인지되어 왔다. 예를 들어 파스칼 및 베이식과 같은 대부분의 프로그래밍 언어는 원래 순차이다. 컴퓨터 시스템의 초기 프로그래밍 동안에, 이러한 언어는 프로그램 명령의 순차에 의하여 실시간 처리로부터의 신호또는 자극에 응답하여 취급될 작동을 결정하도록 프로그래머에게 요구한다. 통상적으로 이러한 언어는 제어되는 처리와 거의 유사하지 않은 진술을 프로그래머가 기입하도록 요구한다. 그후에, 프로그램 변환이 요구될때, 프로그래머는 변환을 삽입하기 위하여 프로그램내에 정확한 위치를 찾아야 한다. 명백하게, 이러한 변환 과정의 수행은 그 프로그램에 변환을 가하기 위하여 프로그램에 정통한 지식을 가진 전문가가 아니면 어려우므로 프로그램의 연장 지식을 요구한다. 전문 프로그래머만이 변환을 가할 수 있는 요구 조건은 극히 비싸고 복잡하여 개별 소비자를 위해 프로그램의 다른 특징을 상업화하는 것이 바람직하다. 개인 소비자에 의한 프로그램 가능성은 실제적으로 순차 언어를 사용하여서는 불가능하다.
데이타 및 음성 호출에 대한 정보의 실시간 스위칭에 사용되는 프로그램 제어 시스템은 상술한 단점을 가진 요구 조건에 의해 성가신 것이었다. 이 스위칭 스스템에서, 개인 전화-전화 베이시스상에 잇는 시스템에 의하여 고객에게 서비스가 제공되는 것이 바람직하다. 순차형 언어에 사용되었던 종래의 전화 스위칭 시스템은 "AT & T 기술저절, 1985.1. 제64권 No.1의 에이취. 케이. 우드랜드, 지.에이.라이스너, 에이.에스.멜레미드에 의한 "시스템 관리"에 기재된 바와 같이 특징-특징 베이시스상에서만 할 수 있을 뿐이다.
순차 언어에 관련된 문제를 극복하기 위한 제안은 IEEE 통신지 1982년 6월판 권 COM-30, No.6에 제이 엠. 진스파그 및 알. 디 고든의 "비순서 설명을 경유한 통신 소프트웨어의 자동 프로그레밍"에 기재되어 있다. 이 논문은 전화 스위칭 시스템을 제어하기 위하여 프로그램을 기입하는 프로그래밍 언어에 대해 기재한다. 이러한 프로그램은 시스템의 가능 상태, 시스템내의 이벤트의 발생, 한정된 이벤트 및 상태가 발생할때 취급될 작동에 대아여 기입된다. 프로그램 진술이 그 언어에 기입된 후에, 이들은 C 프로그래밍 언어로 번역되고 전화 스위칭 시스템을 제어하는 컴퓨터내에 콤파일되어 저장된다. 반면에, 이 언어는 주어진 상태에서 이벤트에 응답하여 취급될 작동을 진술이 명백히 지정하게 하며, 시스템의 실시간 요구 조건, 기능의 변화에 부응하기 위하여 작동 시스템의 특성의 활성 또는 비활성화 또는 상호 작용 특성의 구조적 제어를 위한 설비는 만들어지지 않는다.
다른 시도는 명세 및 기술 언어, 즉, CCITT 위원회에 의해 설정된 SDL이다. SDL 언어는 IEEE 통신회보 1982년도 6월판 통권 30, 번호 6에 에이. 록스트롱, 알. 사라고에 의한 논문 "SDL-CCITT 명세 및 기술 언어"에 있고, CCITT 명세는 1981년 스위스, 제네바의 국제 통신 연합의 CCITT 옐로우북의 101-104에 기재되어 있다. SDL 언어는 통신 신호 정보와 상대에서의 서비스 및 특징의 공식 기술을 인정한다.
통신 시스템의 제조업자는 예를들면 CHILL 또는 C와 같은 선택된 언어에서 공식 기술을 수행한다. SDL 진술 자체는 콤파일되지 않는다. 부가하여, SDL은 충분단 상호 작동 세어 메카니즘 특성을 가지지 않는다.
이러한 종래의 기술은 비순서 언어를 설명하지만, 이들 언어는 다른 특성의 제어하에 시스템의 작동안에 활성화 또는 비활성화 되는 특징 또는 잘 한정된 기능으로 명령을 그룹화할 수 없는 문제로부터 어러움을 겪으며, 또한 실시간 시스템내의 다른 유사한 작동에 관련된 다른 특징 가운데서 상호 작용을 제어하는 수단을 제공하지 않기 때문이다. 특히 이 언어는 그 특징을 살리고 죽이는 능력 또는 특징사이의 선행의 명백한 설명이 필요하지 않다.
상술한 문제가 해결되며 이 기술적 진보는 도식적인 방법 및 구조적인 실시예와 협동하는 본 발명의 원리에 따라 성취되며 여기에서 명령의 원고는 수행되는 기능에 관련되어 비순서로 기입되고 그룹지어지며, 이들을 활성 또는 비활성화 하며 또는 변하는 기능적 요구 조건에 부합하기 위하여 시스템의 작동동안에 다른원고에 의해 활성 또는 비활성화 된다.
유리하게도, 원고사이의 상호 작용은 낮은 순서의 원고가 주어진 신호에 응답할때를 지정하기 위하여 높은 순서를 가진 원고를 허락하여 한정된다. 더 낮은 순서의 원고의 상태 수행적 제어는 어떤 상태에서도 발생하는 이벤트의 입자화에서 수행된다.
유리하게도, 실시간 처리는 복수의 상태를 가정할 수 있고 복수의 신호를 발생할 수 있다. 한 컴퓨터 시스템은 처리로부터 제1신호에 응답하여 저장된 프로그램의 원고의 최초의 것을 수행하여 처리에서 제1작동을 제어하는, 원고는 제1신호에 응답하는 제2원고의 봉쇄 수행을 하도록 컴퓨터 시스템이 다음 신호에 응답하게 한다. 제2신호가 발생될때, 컴퓨터 시스템은 제2작동을 제어하도록 제1원고를 수행하도록 제2신호에 응답하며, 제2신호에 대하여 제2원고 작동을 수행하기 위하여 컴퓨터 시스템을 제어하기 위하여 제2원고를 가능화 하도록 제2원고에 제2신호의 통신을 허락한다.
또한, 컴퓨터 시스템은 제1원고를 비활성화시키기 위하여 제3원고의 수행에 응답한다. 제1신호를 재발생하는 처리와 제1원고의 비활성화에 의해, 컴퓨터 시스템은 제1신호에 대한 처리내에서 제3작동을 수행하기 위하여 제2원고를 수행하도록 제1신호에 응답한다. 또한, 제1원고는 실시간 클럭에서의 타이밍 신호와 같은 제3 신호에 응답하어 제4원고를 수행하는 컴퓨터 시스템에 의하여 재활성화 된다.
유리하게도, 컴퓨터 시스템은 처리 상태의 하나에 관련된 각 구조를 가지는 제어 구조를 유지한다. 차례로, 각 제어 구조는 한 처리 신호에 관련된 각 테이블을 가진 복수의 테이블을 가진다. 이들 그룹 명령의 참조는 각 그룹을 가동시키는 예정된 상태 및 신호에 의해서 한정된 바와 같이 테이블에 저장된다. 더구나, 컴퓨터 시스템은 현재 상태에 관련된 제어 구조와 제어 신호에 관련된 다음 구조대의 테이블을 결정하도록 제1신호에 응답하는 유한 상태 머신 프로그램 루틴을 수행한다. 유한 상태 머신 프로그램 루틴은 이 테이블내의 명령의 제1원고 그룹을 결정하고 수행되는 제 1작동에서 초래하는 명령의 그룹을 수행한다. 명령의 후자 그룹의 명령은 유한 상태 기계 프로그램의 결정 처리를 종결시키고 따라서, 제1신호에 대하여 제2원고의 수행을 봉쇄하도록 다음 신호에 응답하도록 유한 상태 머신 프로그램을 지시한다. 제2신호에 응답하여, 유산 상태 머신 프로그램 루틴은 현 상태에 관련된 제어 구조와, 제2신호에 관련된 그 구조내의 테이블을 결정한다. 유한 상태 머신 프로그램 루틴은 제2작동을 수행하는 명령의 제1원고 그룹의 다른 하나의 수행을 가능하게 한다. 명령의 다른 그룹의 한 명령은 제2원고내에 함유된 명령의 그룹을 찾고, 명령의 제2원고내의 그룹을 수행하기 위하여 결정된 제2테이블에서 탐색하기 위하여 유한 상태의 기계를 가능화시키도륵 제2원고에 제2신호의 통신은 허락받거나 계속된다.
부가하여, 제1원고의 비활성화는 명령의 제1원고 그룹에 참조되는 것을 모두 제거하는 컴퓨터 시스템에 의해 유지되는 테이블의 모든 것을 탐색하는 유한 상태 머신을 초래한다. 마찬가지로, 제1원고의 활성화처리는, 다른 모든 원고의 참조에 대한 관계의 순서에서 적절한 테이블에서 명령의 제1원고의 그룹에 대한 참조를 위치시키기 위하여 컴퓨터 시스템을 제어하는 유한 상태 머신 프로그램을 포함한다.
예증적인 방법은 실시간 처리에 의해 수행되는 작동을 한정하고 각 원고를 가진 비순서 언어로 기입된 프로그램 원고를 수행하는 컴퓨터 시스템을 사용하여 실시간 처리를 제어하며, 이 방법은 제1처리 신호에 응답하여 처리에서 제1작동을 제어하기 위해 제1원고를 수행하고, 제1원고의 수행에 의하여 다음 처리 제어신호에 응답하기 위하여 컴퓨터 시스템을 지시하며, 제2처리 작동을 제어하기 위하여 제2처리 신호에 응답하여 제1원고를 재수행하는 단계와, 제1원고의 수행에 의하여 제2신호에 응답하여 제2원고를 허락하는 단계를 포함한다.
특히, 이 방법은 비순서 방법으로 기입된 프로그램을 수행하는 컴퓨터에 의해 신호 및 시스템 상태의 복수에 응답하여 음성 및 데이타 통신 시스템에 대한 상호 작용 특성을 제어한다. 각 특성의 수행은 작동 셋트의 수행을 요구하고, 프로그램은 각 특성을 수행하는 명령의 셋트를 갖는다. 이 명령 셋트는 예정된 상태 및 신호에 의해 수행이 제어되는 명령의 그룹을 포함한다. 부가하여, 제어특성의 복수는 컴퓨터에 의해 수행된다. 이 방법은, 상호 작용 특성의 예정된 선취권에 따라 신호 자극 및 동일한 신호 상태에 응답하는 명령어 제어 구조 그룹을 관련시키고, 제1 신호의 발생과 현 시스템 상태에 응답하여 제어 구조의 하나를 확인하고, 통신 시스템에서 제1특성 작동을 수행하기 위해 확인된 제어 구조에 의해 참조되는 가장 높은 선취권을 갖는 명령의 그룹을 수행하고, 명령의 가장 높은 선취권 그룹의 한 명령을 수행한 결과로서 수행될 확인된 제저 구조에 의해 참조되는 명령의 제2고 선취권 그룹을 허락하고, 명령의 제2고 선취권 그룹의 한 명령을 수행하여 확인된 제어 구조에 의해 참조되는 명령이 제3고 선취권 그룹의 수행을 봉쇄하도록 다음 신호에 응답하도록 컴퓨터로 지시하는 단계로 포함한다.
유리하게도, 각 제어 구조는 시스템 상태의 하나에 관련되고, 제어 구조는 특별한 시스템 상태에서 발생할 수 있는 시스템 신호의 하나에 관련되는 각 테이블의 복수를 포함한다. 관련된 이전 단계는 상태 및 신호의 명세된 규정에 대응한 테이블을 결정하고, 동일 조합에 의해 수행되는 각 명령 그룹에 대한 참조를 예정된 테이블에 저장하는 단계를 포함한다.
부가하여, 명령의 셋트는, 명령 그룹의 수행에 의해 비활성화 신호를 발생시키고, 비활성화 신호에 응답하여 명령의 그룹에 대한 현재 상태의 제어 구조의 테이블을 탐색하고, 정화 명령을 포함하는 다른 명령 그룹의 수행에 의하여 비활성화되는 명령의 그룹 셋트를 표시하는 다양한 신호의 명령의 후자 그룹의 수행에 의해 저장하며, 명령의 후자 그룹의 수행에서 비활성화 신호의 처리를 정지시키는 단계를 포함한다. 정화명령을 포함하는 명령의 다른 그룹이 한번 수행되면, 비활성된 명령 셋트는 테이블의 명령의 셋트 그룹에 대한 모든 참조를 제거하여 정화된다.
본 발명의 주인 소프트웨어 시스템은 제1도에 도시된 하드웨어 시스템에 으해 적절히 수행된다. 하지만, 이 분야의 숙련자는 다른 소프트웨어의 시스템에 의해 하드웨어 시스템이 제어될 수 있다는 것을 알 수 있다. 제1도의 하드웨어는 가입자 유니트(102) 내지 (103)의 복수를 포함한다. 각 가입자 유니트는 컴퓨터, 전화 송수화기, 데이타 단자를 가진다. 음성 및 데이타 정부는 버스(100)를 경유하여 패킷 형태로 통신된다. 버스(100)는 에테르네트 형태이거나, 미국 특허 제4,494,230호의 패킷 스위칭 시스템일 수 있다. 가입자 유니트(l02)는 컴퓨터(104) 및 단자(106)를 포함한다. 컴퓨터(104)는 버스(100)를 통한 송수화기(105)에 대한 음성 정보 전송에 사용되는 아날로그-디지탈 변환을 수행하고, 버스(100), 전화기(105), 단자(106)를 인터페이싱하는 도시되지 않는 유니트를 포함한다.
가입자 유니트의 작동에서 수행 변화를 요구하며 시스템의 초기화 동안에, 비순서 언어로 기록되는 원고는 단자를 경유하여 컴퓨터(101)에 입력된다. 컴퓨터(101)는 유니트 처리기를 경유하여 지정된 가입자 유니트 메모리로 버스(110)를 경유하여 이들을 표시하는 적재와 원고를 콤파일한다. 각 원고는 작동 한정, 이벤트 한정, 상태 한정을 포함하는 각 트리플을 가장 복수의 트리플을 포함한다. 이벤트 한정은 트리플을 활성화시키는 신호는 한정하고 작동 한정은 트리플 가동에 따라 취해질 작동에 한정한다. 작동 한정은 명령의 그룹으로 이루어진다. 평판 구식 전화, POT, 서비스 등에 대한 트리플을 활성화시키는 신호는 한정하고 작동 한정은 트리플 가동에 따라 취해질 작동을 한정한다. 작동 한정은 명령의 그룹으로 이루어진다. 평판 구식 전화, POT, 서비스 등에 대한 트리플을 가동시키는 상태 및 신호는 제2도에 도시된다.
제2도는 라인-라인 호출동안에 시간내에서는 어느 점에서든지 가입자 유니트(102) 내지 (103)가 있는 다양한 상태(201) 내지 (208)를 상태 그래픽 형태로 도시한다. 신호는 한 상태에서 다른 상태로 전이를 발생시키는 개인 발생을 갖는 이벤트를 나타낸다. 새로운 시스템 요구 조건에 부합하기 위하여 도시된 다수의 상태를 이 분야의 숙련자는 연장 가능하다는 것을 알 수 있다. 다시, 새로운 시스템 요구 조건을 부합하기 위하여 신호의 수가 연장될 수 있다는 것을 숙련자는 알 수 있다.
예를들면, 호출을 배치시키기 위하여, 가입자 유니트는 아이들 상태(201)로 초기에 되었다가 오프-후크된다. 오프-후크되는 이벤트는 오프-후크 신호(210)를 경유하여 다이얼링 상태(202)에 가입자 유니트를 위치시킨다. 디지트가 단자로부터 수집된 후에, 디지트 신호(211)를 경유하여 다이얼링 상태(202)에서 출력펄스 상태(203)로 상태가 변한다.
출력 펄스 상태(203)에서, 호출되는 가입자 유니트는 호출 종료를 위해 요청을 송박 받는다. 호출된 가입자 유니트가 통화중이면, 통화중 상태(207)는 통화중 신호(217)를 경유하여 입력된다. 호출 가입자 유니트가 온-후크가 되면, 출력 펄스 상태(203)에서, 또는 다이얼링 상태(202) 또는 통화중 상태(207)에서, 호출 가입자 유니트는 온 -후크신호(216), (215) 또는 (218)를 경유하여 아이들 상태(201)로 복귀된다.
호출된 가입자 유니트가 통화중이 아니면, 호출 가입자 유니트는 링킹 신호(212)를 경유하여 가청 상태(204)로 들어간다. 가청 상태에서, 호출 가입자 유니트는 링백 톤을 청취한다. 호출 가입자 유니트가 가청상태(204) 동안에 온-후크 상태로 되면, 온-후크 신호(224)를 경유하여 아이들 상태(201)로 복귀된다. 호출된 가입자 유니트가 호출을 한번 응답하면, 호출 가입자 유니트는 응답 신호(213)를 경유하여 통화 상태(205)로 정송된다.
통화상태(205)로 들어가면, 호출 및 피호출축은 버스(100)를 경유하여 음성 패킷을 교환한다. 피호출축이 먼저 끊어지면, 호출측은 분리 신호(219)를 통하여 분리 상태(206)로 통화 상태(205)에서 전송된다. 호출측이 먼저 끊으면, 호출측은 온-후크 신호(214)를 통하여 통화 상태(205)에서 아이들 상태(201)로 전송된다.
피호출 국의 입장에서 상기의 예를 고려해 보면 다음과 같다. 다른 가입자 유니트가 음성 접속 설정을 원한다는 것을 표시하는 버스(100)를 경유하는 메세지(223)의 수신에 따라, 호출된 가입자 유니트는 아이들 상태(201)에서 링킹 상태(108)로 원래 신호(213)를 경유하여 전송된다. 링킹 상태(208)에서, 피호출 가입자는 가청 링킹 표시를 수힌한다. 피호출 가입자 유니트가 호프-후크되면, 오프-후크 신호(221)을 통하여 통화 상태(205)로 전송된다. 그 대신에, 호출 유니트가 온-후크되면, 피호출 유니트는 링킹 상태(208)로 되며, 버스(100)을 경유하여 전송된 메세지에 포함된 분리 신호를 전송한다. 분리 신호에 응답하여, 피호출 유니트는 분리 신호(222)를 통하여 링킹 상태(208)에서 아이들 상태(201)로 전송된다.
이제 본 발명으로 돌아오면, 제2도에 도시된 여러 상태로부터의 전이를 수행하는 원고는 제3 및 4도에 도시된다. 이 원고는 평판 구형 전화(POT) 서비스 또는 트리플의 베이식 전화 서비스를 수행한다. 한번 콤파일된 후자는 메모리(108)에서 저장되고 처러기(107)에 의해 수행된다. 제3 및 4도에 사용된 언어의 상세는 부록 A에 있다. 숙련시는 제3,4도에서 트리플을 지시하는데 아무 조건이 없다는 것을 알 수 있다. 수행의 수서는 트리플의 수행동안에 원고의 활성화 및 하향부하 동안에 수행되는 상호 원고 제어 메카니즘과 상태 및 이벤트 정보에 의해 지정된다.
가입자 유니트(1013)가 호출 가입자 유니트(102)인 경우를 고려해 보면 다음과 같다. 가입자 유니트(102)는 제2도의 아이들 상태(201)에 있다. 설정될 호출을 지정하는 원래 신호(223)를 함유하는 가입자 유니트(103)로부터의 메세지의 수신에 따라 트리플(303)의 원래 이벤트는 정합되어 트리플이 가동된다. S소스 변수는 이벤트 한정에 대한 콤파일된 코드에 의하여 가입자 유니트(103)의 전화 번호와 동일하게 셋트된다. 수행될 작동은 트리플(303)의 작동 설정에 의해 규정된다. 먼저, S소스 변수의 정보는 나중의 사용을 위해 S오리지네이터 변수로 전송된다. 그리고 링킹 신호(212)를 포함하는 메세지는 가입자(102)가 링킹 상태로 들어가는 가입자 유니트(103)에 통보하기 위해 샌드 초기치의 수행에 의해 버스(100)를 경유하여 가입자 유니트.(103)에 전송된다. S소스 변수의 정보는 나중 사용을 위해 S아더파티 변수로 전송된다. 최종 수행될작동은 링킹이 가입자 유니트(102)의 다음 상태가 되는 것을 지정하는 넥스트 스레이트 초기치의 수행이다. 상태가 링으로 변하면, 입력 신호가 링킹 상태(208)에 대하여 발생된다. 입력 신호가 나중 상태의 내부에 대하여 발생되므로, 제2도에 도시되지는 않으나 제38도에 대하여 상세히 설명된다. 입력 신호의 발생은 트리플(305)이 수행되게 한다. 트리플(305)의 가동 한정은 가청 링킹 "톤" 또는 "표식"을 송수화기(105)에 인가한다. 제2도에 도시된 바와 같이, 가입자 유니트(102)는 버스(100)를 경유하여 가입자 유니트(103)로부터의 분리 신호(222)의 수취 또는 오프-후크 신호(221)가 발생되도록 오프-후크가 되게 함에 의해 링킹상태(208)로 된다. 가입자 유니트(103)의 분리 신호(222)는 유니트(103)가 온-후크 되었다는 것을 표시한다.
가입자 유니트(102)가 오프-후크 되면, 오프-후크 신호(221)가 발생되고, 트리플(308)이 수행된다. 트리플(308)은 가입자 유니트(102)가 응답했다는 것을 응답 신호(213)를 포함하는 메세시를 가지는 가입자 유니트(103)에 통보한다. 부가하여, 상태는 넥스트 스테이트 초기치에 의해 통화 상태(205)로 변한다. 상태가변하면, 출발 신호가 발생되고, 트러플(306)이 수행되며 그의 작동 한정은 가청 링깅 "톤" 또는 "표식"이송수화기(105)로부터 제거되게 한다. 출발 신호가 링킹 상대(208) 내부에 발생되며, 이것은 제2도에 없으나, 제38도에서 상세히 도시된다.
가입자 유니트(102)가 링킹 상태(208)로 되고 분리 신호(222)를 수신하면, 트리플(307)이 수행된다. 트리플은 호출 가입자 유니트(103)가 온-후크로 될때 가입자 유니트(l02)에 의해 작동이 수행된다는 것을 표시한다. 하지만, 이 지점에는 어떤 접속도 설정되지 않는다. 메세지가 호출 가입자 유니트에서 온것이 아니면, 가입자 유니트(102)는 링킹 상태(208)를 계속한다. 분리 신호(222)가 가입자 유니트(103)에 의해 송부되면, 트리플(307)의 가동 한정이 수행되고 넥스트 스데이트 초기치는 아이들 스테이트(201)로 시스템을 복귀시킨다.
가입자 유니트(102)를 링킹 상태(208)에서 떠나게 하는 신호가 오프-후크 신호(221)였다면, 트리플(308)은 응답 신호(213)가 가입자 유니트(103)로 송신되게 하는 가입자(102)가 통화 상태(205)로 들어가게 된다. 통화 상태(205)로 들어감에 따라, 제4도의 트리플(320)은 수행된다. 후장의 트리플은 가입자 유니트(103)에 버스(100)를 통하여 음성 통로를 설정하도록 컴퓨터(104)에서 필요한 일이 수행되게 한다.
가입가 유니트(102)가 온-후크되면 트리플(322)은 가입자 유니트(102)가 분리되었다는 것을 표시하는 가입자 유니트(l03)로 분리 신호(219)를 송부하게 한다. 부가하여, 넥스트 스테이트 초기치는 가입자 유니트(102)가 아이들 상태(201)로 가도록 수행된다. 넥스트 스테이트 초기치의 수행은 트리플(321)의 수행에서 초래되는 출발 신호를 발생한다. 트리플(32l)의 작동 한정은 디스인게이지 초기치의 수행에 의해 가입자 유니트(102)에 대해 버스(100)에 대한 음성 접속을 제거한다.
가입자 유니트의 환경을 제어하고 원고의 활성 및 비활성과 상호 원고 제어 메카니즘을 좀더 상세히 연구하기 위하여, 제5도에 도시된 윈고를 조사한다. 도시된 원고는 호출 송부(CF 원고), 호출측 확인(CP1 원고), 호출 송부(CFA 원고) 특성의 활성 및 비활성화를 제공한다. 이들 원고는 컴퓨터(101)에 의해 콤파일되고 가입자 유니트(102)의 컴퓨터에 적재된다. 컴퓨터(l04)는 이 원고를 저장하여 다른 원고내의 이벤트가 발생할때, CF 원고는 CPI와 CFA 원고보다 앞선다.
호출 송부 특성은 단자(106)를 통하여 데이타를 가입자가 입력시켜셔 먼저 확인된 가입자 -유니트(102)에 대해 의도된 호출을 다른 가입자 유니트에 전송시킴에 의해 기능한다. 호출측 확인 특성은 가입자 유니트가 가입자 유니트(102)에 호출을 배치시키도록 시도하는 단자(106)상에 표시된다. 이 예에서, 호출 송부 특성은 호출측 확인보다 앞선다. 따라서, 호출 송부 특성이 활성화되면, 호출측 확인 특성은 이것이 수행되지않으므로 호출 가입자 유니트의 확인을 표시하지 않는다. 호출 송부가 활성화되지 않으면, 호출측 확인 특성은 후자가 아이들 상태에 있지 않을지라도 가입자 유니트(102)에 배치되었던 모든 호출을 확인한다.
호출 송부 특성에 대한 CF 원고는 제5도에 도시된 바와 같이 트리플(501) 및 (502)로 이루어지며 스톱 및 컨티뉴 초기치를 사용하는 상호 원고 선행 메카니즘을 시위한다. 트리플(501)은 제2도에 도시된 상태에서 수행된다. 트리플(501)은 단자(106)상에 타이프된 "#"를 지정하는 입력 신호에 의해 가동된다. 이러한 입력 신호가 발생되면, 트리플(501)의 이벤트 한정은 단자(106)상에 "#" 다음에 가입자가 타이프하는 문자의 스트링과 동일한 SCF 넘버 변수를 셋트한다. 트리플(501)의 작동 한정은 어느 상태 어느 원고에서의 어느 트리플에 의해서도 입력 신호의 다른 처리가 행해지지 않는 스톱 초기치를 수행한다. 여기서 스톱 초기치를 수행하는 목적은 상호 원고 선행을 제어하기 보다는 입력 신호의 처리를 정지시키기 위한 것이다.
트리플(501)이 가동되고 SCF 넘버가 확인된 가입자 유니트(103)에 대한 번호와 동일하게 셋트된다고 가정하면, 어느 상태에서든지 수신된 원래 신호(223)는 트리플(502)이 수행되게 한다. 트리플(502)의 수행은 이벤트 확인에 의해 호출 가입자 유니트 번호와 동일하게 셋트되는 S소스 변수를 초래한다. 트리플(502)의 작동 한정은 SCF 넘버 변수가 비 제로 값과 동일하게 셋트되고 이 값이 호출 가입자 유니트의 번호와 동일하지 않은지를 결정하기 위하여 체크한다. 이들 상태가 사실이면, 트리플(502)의 작동 한정의 "그러면" 진술이 포워드, 프런트, 스톱 초기치가 수행되도록 한다. 포워드 초기치는 호-출 근원이 시도되는 것을 표시하는 원래 신호(223)를 따라 확인된 가입자 유니트에 S소스 변수의 값을 전송한다. 부가하여, 프린트 초기치는 확인된 가입자에 호출이 전송되는 시간을 지시하는 단가(106)에 메세지를 프린트한다. 끝으로, 스톱 초기치는 가입자 유니트(102)의 현 상태에서의 원래 신호에 응답하는 POT 및 CPI 원고에서 트리플의 수행을 금지하는 수행을 한다. 스톱 초기치의 수행은 호출을 설정하기 위하여 만들어진 시도에 따라 발생하는 정상작동을 금지하기 위해 CF 원고를 허용한다 스톱 초기치는 상호 원고 제어 메카니즘의 부분이다.
트리플(502)의 "만약" 진술에 의해 한정된 상태가 만나지 못하면, 컨티뉴 초기치가 수행된다. 후자의 수행은 낮은 선행 원고의 다른 트리플에 대해 통고될 제어를 초래한다. 이 경우에는, 원래 신호(223)는 CPI및 POT 원고에 의해 취급된다. CPI 원고가 어느 상태의 원래 신호(223)를 수신하면, 트리플(504)의 작동한정은 호출을 설정하기 위해 POT 원고의 작동을 기원하도륵 컨티뉴 초기치를 수행하고 원래 메시지에서 확인된 가입자 유니트로부터 수신된 호출을 표시한다. 제어가 POT 원고로 통과되면, 접속이 제3, 4도에 대하여 상술된 바와 같이 설정된다.
이제, 제5도에 도시된 CFA 원고가 어떻게 CF 원고를 활성 또는 비활성하는지를 고려해 본다. 시간이 8.00 a.m에 도달할때, 타임 신호가 발생되고, 트리플(506)이, "1" 내지 "5"로 지정된 먼데이 내지 프라이데이인 일주일의 날에 따라 활성화되는 CF 원고에서 수행된다. 5.00 p.m에서, 다른 타임 신호가 발생하며, 그 응답으로, 트리플(507)은 주일의 날이 새터데이 또는 선데이인가에 따라 CF 원고를 수행하여 비할성화 시킨다. 정싱적으로 CF 원고는 새터데이 또는 선데이이면, 프라이데이 5:00 pm에서 비활성화 된다.
콤파일러는 컴퓨터(101)에 의해 수행되며, 컴퓨터(104)에 콤파일된 트리플 코드를 전송하기 전에 이들 원고를 콤파일하기 위하여, 제3.4,5도에 도시된 원고에 응답한다 후에 기술되는 바와 같이, 콤파일된 원고가 적재되면, 컴퓨터(l04)에서 수행되는 활성 작동은 가장 높은 선취권을 가지는 CFA, CPl. 및 CFA 원고를 가진 CF 등인 원고사이의 순서를 설정한다. 부가하여, CFA, CPI, CF 원고는 시간적으로 다음 지점에 콤파일 될 수 있고 적재될 수 있다. 컴퓨터(104)의 프로그램은 제6도에 도시된 아이들, 링킹, 통화 상태 등에 대한 트리플을 저장하고, 이 트리플을 수행하는 방법을 제공하기 위하여 이 원고의 콤파일된 트리플에 응답한다. 다른 상태에 관련된 트리플도 유사하게 저장된다. 이 트리들은 각 상태에 대한 이벤트 한정에 의해 그룹지어진다.
제11,12,13도에 도시된 바와 같이. 인덱싱이 제공되어 현재 상태가 상대 한정에 응답할때 특별한 이벤트 한정에 응답하는 신호에 응답하여 트리플의 수행을 허용한다. 예를들면, 아이들 상태(201)에서 수신될때, 원래 신호(223)는 CF 윈고의 트리플(502), CP1 원고의 트리플(504), POT 원고의 트리플(303)을 순차적으로 활성화시킨다.
제15도에 도시된 논리 방식으로 이들 정보를 활성화시키고 저장하며, 수행하기 위해, 또 컴퓨터(101)로부터의 콤파일된 코드를 수신하기 위하여 컴퓨터(104)에서 수행되는 다른 처리는 제10도에 도시된다.
다음 도면에 도시된, 것은 가입자 유니트에서 다양한 처리사이에서 통신되는 신호이다. 예를들면, 상술된내용에서, 가입자 유니트(103)에서 가입자 유니트(102)로 전송되는 원래 신호(223)는 V__ RCV 처리(1002)에 의해 버스(100)를 경유하여 컴퓨터에 의해 수신된다. 다음의 처리는 작동 시스템 호출을 경유하여 특성제어 처리(1000)에 원래 신호(223)를 통신한다. 이 처리의 수행은 컴퓨터(104)의 작동을 제어하는 작동 시스템에 의하여 제어된다. 작동 시스템용 소스 코드는 부록 E에 기재된다.
예를들면, 가입자가 전화기를 들때(즉, 오프-후크가 되면), 하드웨어 방해는 V__ IN 처리(1002)에 방해메세지를 보내기 위해 작동 시스템을 지시한다. 다음의 처리는 방해에 응답하는 가입자가 오프-후크한 것을 결정하며 특성 제어 처리(1000)에 작동 시스템 호출을 경유하여 오프-후크 신호를 전송한다. 작동 시스템 호출의 수행은 특성 제어 처리(1000)를 수행하는 작동 시스템에서 초래되는 특성 제어 처리(1000)에 오프-후크 신호를 전송하기 위한 것이다.
특성 제어(1000)가 한번 기원되면, 처음에 어느 신호가 수신되었는지를 결정하고, 가입자 유니트의 현재상태를 결정하며, 수신된 신호를 정합하는 이벤트 한정을 가진 상태에서 트리플을 수행한다. 이 정합이 어떻게 성취되는가를 설명하기 위해, 가입자 유니트(103)로부터 가입자 유니트(102)로 가는 버스(100)를 경유하여 원래 메세지(223)의 전송을 연구해 본다. V__ RCV 처리(1001)는 이 메세지를 수신하고 특성 제어(1000)의 유한 상테 머신(FSM)에 원래 신호를 전송한다. FSM(1005)는 아이들 상태(201)에 관련된 논리신호 테이블(601)-(606)에 인덱스시키기 위바여 원래 신호에 응답한다. FSM(1005)는 그러면 원래 논리신호 테이블((602)을 확인하는 번역기(1006)에 의해 반역된 테이블(602)에 의해 확인된 트리플을 가진다. 주어진 상태 및 신호에 대하여 수행될 트리플의 확인과, 인덱싱이 실제 테이블에서 수행되는 방식은 제11,12및 l3도에 도시되어 있다.
논리 신호 테이블(602)을 확인한 후에. FSM(1005)은 테이블(602)의 엔트리 CF(502)에 저장된 지시기를 번역기(1006)에 통과시켜 수행될 콤파일된 트리플 코-드의 위치를 확인시키게 한다. 확인된 트리플 코드에 의해 수행되는 작동은 제5도상에 도시된 바와 겉이 트리플(502)에 의해 한정된다.
2개의 다른 작동 셋트는 트리플(502)의 수행을 초래한다. 제1셋트는 SCF 넘버 변수가 번호를 포함하고, 호출 가입자 유니트는 그의 호출을 전송하는 가입자 유니트(102)에 대ㅎ나 가입자 유니트가 아니다. 제1셋트 작동에 대한 상태가 부합되면, 원래 신호 및 호출 가입자 유니트의번호가 포워드 초기치의 수행에 의하여 가입자 유니트를 송부하는 지정된 호출에 전송된다. 또한 주의 메세지가 데이타 단자(106) 상에 프린트되고 스톱 초기치가 수행된다. 스톱 초기치의 영향은 논리 신호 테이블(602)에서 FSM(1005)가 처리기를 종료시키게 한다.
작동의 제2셋트는 트리플(502)의 "만약" 진술의 상태 부분이 거짓일때, "기타" 부분이 수행되게 한다. "만약" 진술의 "기타"부분이 컨티뉴 초기치를 수행하게 하여 이것은 논리 신호 테이블(602)에 나머지 트리플을 수행하는 FSM(1005)를 초래한다.
컨티뉴 초기치가 수행되면, 테이블(602)에서 수행될 다음 트리플은 CPI, (504) 엔트리에 의해 지시하는 제5도의 트리플(504)이다. 트리플(504)의 수행은 호출 가입자 유니트를 확인하는 단자(106)상에 프린트되는 메세지를 초래한다. 다음에, 컨티뉴 초기치가 수행되어 테이블(602)에서 POT, (303)에 의해 확인된 바와 같이 트리플(303)의 수행을 초래한다.
트리플(303)의 수행은 호출 가입자가 유니트의 확인 번호가 S오리지네이터 및 S아더파티에 저장되게 하고, 피호출 가입자 유니트가 링킹상태(208)에 들어가는 것을 표시하는 호출 가입자 유니트에 메세지가 전송되게 한다. 부가하여. 넥스트 스레이트 초기치가 수행되면, 출발 신호는 내부적으로 발생되고, 상태로 링킹상태로 변하며, 입력신호는 FSM(1005)에 의해 특성 제어(1000)내에 발생된다. FSM(1005)은 V__ RCV
처리(1001)와 같은 다른 처리로부터 수신된 신호와 유사한 방법으로 출발 및 입력 신호를 처리한다. 출발 및 입력 신호의 처리에 대한 상세는 넥스트 스테이트 초기치를 설명하는 제38도에 상세히 기재된다.
출발 신호는 본 예에서 아이들 상태(201)에 관련된다. 아이들 상태에 관련된 출발 신호에 대한 논리 신호테이블에 입력이 전혀 없으므르, 이 예에서 신호에 의한 작동도 없다. 새로운 상태, 즉, 링킹 상태(208)에 관련된 입력 신호는 논리 신호 테이블(614)의 엔트리 POT, (305)에 의해 지시된 콤파일된 코드가 수행되게 한다. 이 콤파일된 코드는 제3도에 도시된 트리플(305)에 적용한다. 트리플(305)의 작동 한정은 송수화기(105)에 인가되는 가청 깅링 톤에 초래된다. 부가하여, 작동 한정은 컨티뉴 초기치가 수행되게 하고 논리신호 테이블(614)에서 수행될 트리플이 없으므로, 입력 신호에 의하여 수행될 트리플이 없다.
링킹 상태(208)동안, 송수화기(105)나 오프-후크되면, 이 사실은 V __IN 처리(1002)에 의해 검출되고 오프-후크 신호(221)는 FSM(1005)에 전송된다. 후자의 처리는 오프-후크신호를 수신했으며, 링킹 상태에 있고, 논리 신호 테이블(608)에 인덱스하는 것을 확인한다. FSM(l005)는 POT,(308)에 저장된 지시기를 억세스하고 제3도에 도시된 바와 같이 트리플(308)에 대하여 콤마일된 코드를 수행하는 번역기(1006)에 이 지시기를 통과시킨다. 후자의 트리플은 센드 초기치의 수행에 의해 호출 가입자에게 응답 신호를 전송하고, 넥스트 스테이트 초기치가 상태를 통화 상태(205)로 교환하게 한다. 넥스트 스테이트 초기치의 교환은 링킹 상태를 위해 출발 신호를 발생하게 하고. 통화 상태를 위해 입력 신호를 발생하게 한다. FSM(1005)은 논리 신호 테이블(615)의 엔트리 POT(306)에 의해 지정된 트리플을 수행하기 위하여 번역기(1006)를 지시하도록 출발 신호에 응답한다. 제3도에 도시된 트리플(306)에 대한 콤파일된 코드의 수행은 제l도의 송수화기(105)로부터 링킹 톤 신호를 제거시킨다.
입력 신호에 응답하여, FSM(1005)은 입력 논리 신호 테이블(626)용 POT(320) 엔트리의 내용에 의해 지시된 트리플을 확인하고 통화 상태에 관련된 논리 신호 테이블(62l) 내지 (628)를 인덱스한다. 이 지시기는 제4도의 트리플(320)을 수행하는 번역기(1006)에 통과된다. 후자의 트리플은 인게이지 초기치의 수행에 의해 호출 가입자 유니트 및 가입자 유니트(102)사이에 음성 통신 통로가 설정되게 한다.
통화 상태(205)동안에, 가입자 유니트(102)가 온-후크되면, 이 사실은 V __IN(1002) 처리에 의해 검출되며, 온-후크 신호는 FSM(l005)에 전송된다. 후자는 논리 신호 테이블(628)의 POT(322)에 포함된 번역기(l006)에 지시기를 확인하고 통과시키기 위하여 온-후크 신호에 응답한다. 후자 지시기는 제4도에 도시된 바와 같이 트리플(322)에 대해 콤파일된 코드를 지시한다. 이 콤파일된 코드의 수행은 호출 가입자 유니트에 분리 신호(219)를 전송하고 넥스트 스테이트 초기치의 수행이 상대를 아이들(201)로 바꾸도록 전송하는 센트 초기치의 수행을 한다.
넥스트 스테이트 초기치의 수행은 통화 상태(205)에 대해 출발 신호를 발생하고 아이들 상태(201)에 대하여 입력 신호를 발생한다. FSM(1005)은 논리 신호 테이블(627)에 포함된 번역기(1006)내 지시기를 확인하고 통과시키기 위해 출발 신호에 응답한다. 후자 지시기는 제4도에 도시된 바와 같이 트리플(321)에 대한 콤파일된 코드를 지시한다. 후에 콤파일된 코드의 수행은 가입자 유니트(102)에서 호출측에 대한 음성 통신통로가 파괴되게 한다. 아이들 상태에 관련된 입력 논리 신호 테이블이 없으므로 입력 신호의 발생은 없다. 활성 및 비활성화의 영향을 설명하기 위하여 다음의 예를 연구해 본다. 가입자 유니트(102)는 실시간 클럭이 5.00 p.m을 나타낼때 통화 상태가 된다.5:00 p.m이라는 것이 FSM(1005)에 타임 신호를 전송한다는 사실에 토네겐 처리(1004)가 응답한다. 후자의 처리는 통화 상태에 관련된 타임 논리 신호 테이블(625)를 확인하기 위하여 타임 신호에 응답한다. 제23,24도를 참조하여 더 상세히 설명되는 바아 같이, FSM(1005)는 먼저 트리플(506)의 콤파일된 코드를 지시하는 지시기를 번역기(1006)에 통과시키고, 그 후에 번역기(1006)는 트리플(506)을 처리하는 것을 종료하고, FSM(1005)은 수행을 위해 번역기(1006)에 트리플(507)에 대한 논리 신호 테이블(625)의 지시기를 통과시킨다. 트리플(506)에 대한 콤파일된 코드의 제1작동은 이벤트 타임(8:00)이 발생되었는가를 증명하는 시간이 8:00 a.m이 되었는가의 여부를 체크한다. 본 예에서는, 시간이 5:00 p.m이고 이벤트는 정합되지 않은 트리플(506)의 작동 한정은 수행되지 않는다.
번역기(1006)는 제5도 도시된 바와 같이 트리플(507)에 지시하는 논리 신호 테이블(625)의 CFA(507)엔트리에 포함된 지시기를 통과시키는 FSM(1005)에 대한 제어를 복귀한다. 후자는 트리플(507)에 대한 콤파일된 코드의 수행을 개시하기 위하여 이 지시기에 응답한다. 제5도에 도시된 바와 같이, 트리플(507)에 대하여 콤파일된 코드의 제1부분은 트리플의 작동 한정 부분을 수행하기 위하여 선행되기 전에 명세된 시간(17:00) 이벤트에 상기 이벤트가 정합되는지의 여부를 증명한다. 시간이 5.00 p.m이거나, 또는 24시간제로 17:00이므로, 그리고 요일은 월요일에서 금요일까지라고 가정하면, 트리플(507)의 디엑티베이트 초기치와 프린트 초기치가 수행된다. 디엑티베이트 초기치는 CF 원고가 비활성화 된다는 것을 표시하는 FSM(1005)에 비활성화 신호가 전송되게 한다. 이 지점에서 실제 비활성화는 일어나지 않는다.
FSM(1005)이 비활성화 신호를 수신할때, 제5도에 도시된 바와 같이 CF 원고(500)의 부분인 모든 트리플을 제거하기 위해 모두 상대를 통하여 처리한다. 이 처리는 제23-28도에 상세히 기술된다. 본 예에서, CF 원고(500)는 비활성화 신호에 응답하는 이벤트 한정을 가지는 트리플을 가지지 않으므로 트리플은 FSM(l005)에 의해 간단히 제거되고, 그에 의해 CF 원고의 실제 비활성화가 완료된다. CF 원고(500)에 관련된 트리플의 제거후에, 아이들, 링킹, 통화 상태의 논리 신호 테이블은, 제7도에 도시된 바와 같이 트리플에 대한 지시기를 포함한다. 예를 들면, 아이들 상태에서, CF 트리플에 대한 참조가 제거되므로, 호출측 확인 트리플은 원래 신호 아이들 상태에서 수신될때 논리 신호 테이블(702)에서 제1트리플이 수행된다. 숙련자는 제6도의 논리 신호 테이블에 서장된 트리플에 참조되는 방식으로 교번시켜 내부 특성 선행이 바뀔 수 있다는 것을 잘 알 수 있다. 예를들면 호출 송부에 앞서도록 호출측 확인을 허용하기 위하여, CPl트리플은 논리 신호 테이블에 호출 송부 트리플의 상부에 배치된다. 예를들어, 원래 논리 신호 테이블(602)에서, 순서는 CPI(504), CF(502), POT(303)가 된다. 유사하게, 원래 논리 신호 테이블(621)과 원래 논리신호 테이블(609)의 엔트리는 변한다.
제8도의 PODS 원고는 자체 비활성화를 제어하는 원고를 가지는 방식으로 상세히 설명된다. 후자 원고는 데네이타 서비스를 제공하도록 사용된다. 부가하여, PODS 원고는 제l도에 도시된 시스템용 데이타 서비스의 제공을 설명한다. POT, PODS, CPI, CFA, CF 원고가 콤파일 되고 적재될때, 이들은 제6도에 도시된 바와 같이 논리 신호 테이블에 삽입되어 각 원고에 대한 트리플을 포함하는 논리 신호 테이블이 CFA트리플에 의해 수반되는 상부의 CF 트리플, CPI 트리플, PODS 트리플, 그리고 POT 트리플을 가진다.PODS 원고가 초기에 활성화되면, 트리플(801)는 S데이타 및 S디엑티베이트 변수가 거짓으로 셋트된다. S데이타 변수는 데이다 호출의 진행 여부를 표시하며, S디엑티메이트 변수는 아이들 상태에 들어갈때 원고가 정화되는지를 표시한다.
POD 데이타 호출의 목적은 가입자 데이타 단자에서 다른 가입자 데이타 단자로 되는 패킷의 복수로 이루어지는 메세지를 가입자가 송부하게 한다. 하지만, 이 분야의 숙련자는 이 원고를 연장할 수 있어서 전송이 가입자 유니트의 컴퓨터에서 다른 가입자 유니트의 컴퓨터인 것을 안다. 가입자 유니트가 한번 다른 가입자 데이타 단자에 데이타 호출을 설정하면, 이 데이타 호출은 가입자가 "분배" 단어를 삽입시켜 데이타호출을 분리할때까지 작동 상태로 있다.
이제 데이타 호출을 제공하는 상술된 제8도의 PODS 원고의 작동을 고려해 본다. 예를들면, 가입자 유니트(102)를 사용하는 가입자는 호출되는 가입자 유니트를 지정하는 디지트의 순차를 타이핑하여 초기 설정한다. 아이들 상태 동안에 디지트의 엔트리에 응답하여, 트리플(814)이 수행되어 S데이타 변수는 진리가 되고, S오리지네이터 빈수는 S디스 변수로 셋트된다. 샌드 메시지 초기치는 메세지 스프링 형태로 호출되는 측에 원래 신호를 송부하는데 사용되고, 넥스트 스테이트 초기치는 출력 펄스 상태로 들어가는데 사용된다.
음성 호출의 설정동안에, 가입자는 아이들 상태로 오프-후크되고 다이얼링 상태로 대체된다. 음성 호출에 대한 다이얼링 상태동안에, 가입자는 디지트의 순차를 입력시키고, 이것은 음성 코일만이 설정되게 한다. 따라서, 시스템은 아이들 상태동안 피호출측을 지정하는 디지트를 데이타 호출이 수신한다는 사실에 의해 데이타 호출 및 음성 호출사이에서 구별하며, 음성 호출은 다이얼링 상태동안 디지트를 수신한다. 피호출측은 데이타 호출에 대한 메세지에 "원래" 스트링을 송부하도록 센드 메세지가 사용된다는 사실에 의해 데이타 호출 및 음성 호출의 근원을 구별하고, 반면에 센드 초기치는 음성 호출에 대한 근원 신호(223)를 송부하는데 사용된다. 피호출측은 원래 이벤트와 수신 메세지의 가동에 의한 사실을 인정한다.
출력 펄스 상태에서, 가입자 유니트(102)가 아이들 상태의 엔트리, 아이들 상태, 또는 가청 상태를 초래하는 링킹 메세지의 수취 또는 통화중 신호, 입력 신호의 발생에 의해 출발한다. 트리플(817), (813)은 통화중 또는 입력 신호의 발생에 따라 수행되는 작동 한정을 설명한다. 제3도에 도시된 바와 같이 트리플(311)은 링킹 메세지 신호의 수신에 따라 취해진 작동을 한정한다. 이것이 발생되면, 넥스트 스테이트 초기치는 가입자 유니트를 가청 상태로 옮기도록 수행된다.
가청 상태로 들어감에 따라. 트리플(816)는 다른 측이 경보를 울렸다는 것을 표시하는 단자(106)상에 메세지가 프린트되게 한다. 가청 상태에서, 가입자 유니트는 트리플(812),(817)의 수행을 유발하는 피호출가입자 유니트로부터의 통화중 신호의 발생 또는, 스트링 "분리"를 입력 신호의 발생에 의하여 아이들 상태에 전송한다. 피호출 유니트가 데이타 호출을 수신할때, 후자 유니트는 응답 메세지를 전송하기 위해 센드초기치를 사용하는 호출 가입가 유니트에 메세지를 전송한다. 호출 유니트에 의해 수신되는 응답 메세지의 이벤트에 응답하여, 제3도의 트리플은 가입자 유니트(102)가 통화 상태로 전송된다.
통화 상태로 들어가면 트리플(8l0)은 확인된 피호출 가입자 유니트에 대하여 접속이 만들어졌다는 것은 메세지가 프린트되게 한다. 트리플(810)의 작동 한정을 종료히는 컨티뉴 초기치가 있으므로, 제4도에 도시된 바와 같이 POT 원고의 트리플(320)에 제어가 통과된다. 트리플(320)의 수행은 호출 및 기호출 가입가 유니트사이의 데이타 통로에 부가하여 음성 통로가 설정되게 한다. 통화 상태는 트리플(811), 또는 (812)의 수행에 의하여 출구된다. 이들 트리플은 통화 상대에서 아이들 상태로 호출 가입자 유니트를 전송한다. 음성 통로는 디스인게이지 초기치를 수행하기 위하여 통화 상태에 있는 출발 이벤트에 응답하는 제4도에 도시된 바와 같이 트리플(321)에 의해 제거된다.
피호출 가입자 유니트의 관점에서 데이타 호출의 설정을 고려한다. 근원 스트링을 가지는 수신 메세지 이벤트의 발생에 따라, 트리플(806)은 피호출 가입자 유니트가 아이들 상태에 있다고 가정하는 수행을 한다. 그렇지 않으면, 트리플(805)은 수행되어 통화중 신호가 호출 가입자 유니트로 복귀된다. 트리플(806)의 작동 한정은 피호출 가입자 유니트가 링킹 상태로 들어가고 S데이타, S오리지네이트, S아더파티 변수를 초기화시키는 것을 표시하는 호출 가입자 유니트에 링킹 신호를 복귀 송부시키도록 센드 초기치를 사용한다.
링킹 상태에 들어감에 따라, 트리플(807)는 피호출 가입자 유니트로 수행되고 메세지는 누가 호출하는지를 표시하는 관련된 단자상에 프린트된다. 이 상태는 트리플(808)의 수행을 초래하는 분리신호에 의해 표시되는 호출 설정 호출측이 종결시키면, 아이들 상태로 변한다. 피호출 가입자 유니트에서의 가입가는 작동한정이 응답 신호를 호출 가입자 유니트에 송부하고 상태를 통화로 바꾸게 하는 트리플(809)의 수행을 유발하는 단어 "접속"을 가진 입력 이벤트를 발생시겨 호출을 설정한다. 통화상태에 들어감에 따라, 트리플(210)은 제9도에 도시된 바와 같이 수행되고, 부가하여, 제4도에 도시된 바와 같이 트리플(320)은 데이타통로 뿐만 아니라 음성 통로로 설정되게 수행된다. 통화 상태는 호출 가입자 유니트의 관점으로 기술된 바와 같이 동일한 방법으로 피호출 가입자 유니트에서 종결된다.
이제 제8도에 도시된 바와 같이 PODS 윈고가 비활성화되는 것을 명세화하는 제1도에서의 단자(106)와 같이 단자로부터 디엑티베이트 명령이 수행된 후에 그의 비활성화를 PODS 원고는 지연하는 것을 더 상세히 연구한다. 이 지연후 데이타 호출이 종료되게 하고 진행중인 데이타 호출이 있으면 비활성화를 지연시키는데 필요하다. 그러므로, 상태는 아이들 상태에 있지 않는다. 비활성화 이벤트의 발생과 상태가 아이들 상태로 되지 않는 것에 따라서, 트리플(802)은 수행되어 S디엑티베이트 변수가 진이되어 스톱 초기치의 수행과 같게 한다. 제23, 24도와 함께 기술되는 바와 같이 스톱 초기치의 수행에 의해 비활성화를 취급하는 것을 FSM(1005)에 원고가 표시한다. 데이타 호출이 한번 완성되면, 그리고 상태가 아이들 상태로 전이되면, 트리플(803)이 수행된다. S디엑티베이트 변수가 진이므로, "만약" 진술의 "그러면" 부분이 수행되면, 제6,7도에 도시된 바와 같이 논리 신호 테이블로부터 PODS 원고를 제거하는 퍼지 초기치가 수행된다.
주어진 신호에 응답하여 트리플이 수행되는 것을 확인하는 특성 제어 처리(1000)에 의해 사용되는 데이타구조는 제11,12,13도에 도시된다. 후자의 도면은 제6,7도에 나타단 논리 신호 테이블의 상세한 수행을 도시한다.
유한 상태 머신, 즉, 제10도에 도시된 FSM(l005)가 처리(100l) 내지 (1004)의 하나로부터 신호를 수신할때, FSM(1005)은 통로(1103)를 경유하여 상태 테이블(1104)에 위치를 결정하기 위하여 1102에 저장된 태대 지시기와 위치(1101)에 저장된 한 상태 인덱스를 먼저 사용한다. 상태 테이블(1104)에의 위치에서 저장된 값은 통로(1105), FSM 신호 PTR 위치(1107), 통로(1108)를 경유하여 FSM 신호 테이블(1110)의 위치를 직접 지적하는 지시기이다. 상태 테이블(1104)은 가능한 가입자 유니트 상태의 각각에 대하여 하나의 직접 지시기를 포함한다. 마찬가지로 각 가능한 상태에 대하여 1107 및 1l20을 통하여 1106에서 FSM 신호 PTR 지시기가 존재한다. FSM 신호 테이블에서의 엔트리는 그 테이블에 관련된 상태에서 발생하는 신호에 대한 이벤트 한정에 관련된다. 예를들면, FSM(1005)이 FSAI 신호 테이블(1110)을 한번 인덱스하면 FSM(1005)는 후자 테이블내의 교정 위치에 대한 인덱스를 하기 위하여 처리되는 신호를 확인하는 신호 변호를 사용한다. FSM 신호 테이블(1110)에 인덱스되는 위치는 통로(1111), 트리플 리스트(1113), 통로(1114)를 경유하여 프로그램 lD 테이블(1116)을 직접 지시한다. 1113과 같은 트리플 리스트는 FSM 신호위치로서 참조된다 1110 및 1121을 통하여 응답할 수 있는 FSM 신호 테이블(1109)에 의해 표시되는 상태의 가능 신호에 대하여, FSM 신호 위치(1112), (1113)인 신호가 존재한다.
프로그램 ID 테이블(1116)은 제12도에 도시된다. 1116과 같은 프로그램 ID 테이블은 제6,7도의 대응 논리 테이블에 포함된 모든 트리플에 대한 참조를 포함하고 현재 처리되는 FSM(1065)에 대한 신호에 응답하는 모든 트리플에 대한 참조를 포함한다.
FSM(1005)이 신호를 충분히 처리하기 위하여, 스톱 초기치가 다른 트리플에 의해 수행될때까지 또는 프로그램 ID 테이블(1116)과 같은 테이블에서 엔트리에 관련된 각 트리플을 수행할 필요가 있다. 테이블(1116)의 엔트리에 의해 표시된 모든 트리플을 처리하기 위하여, FSM(1005)은 현 인덱스 변수를 처리하고 가장 최근에 활성화된 트리플로 이 엔트리를 처리하기 시작한다. 테이블(1116)의 각 엔트리는 120l과 같은 원고 테이블 및 1208과 같은 트리플 테이블에의 인댁스로 이루어진다. 원고 테이블(1201)은 스크립트 변수에 의해 지적되는 테이블(1201)의 바닥으로부터의 인덱스인 통로(1202)를 경유하여 지적된다. 원고 테이블(120l)에서의 확인된 위치는 통로(1203)를 경유하여 원고 리스트(1206)를 지적한다.
원고 리스트(1206)에서 확인된 정보를 처리하기 전에, FSM(1005)은 커렌트 스크립트 변수에서 원고 테이블(120l)에서 확인된 지시기를 저장한다. 스크립트 리스트(1205) 내지 (1207)는 그 원고에 대한 트리플에 공통인 특별한 원고에 대한 트리플에 관련된 모든 정보를 포함한다. 원고 리스트(1206)내에서, 제14도에 도시된 바와 같이, 이름(1220)으로 지정된 메모리 위치는 원고의 이름을 포함한다. 번호 리터럴(1221)로 지정된 위치는 이 원고에서 모든 트리플에 의해 사용되는 구변 문자의 번호를 포함한다. 문자(1222)로 지정된 영역은 그 세그덴트를 포함한다. 제1세그멘트는 영역(1222)의 제2세그멘트에 포함된 실제 문자 스트링을 지정하는 문자 논쟁 명령의 문자 ID 필드에 의해 인덱스되는 지시기의 테이블이다. 제2세그멘트는 문자스트링을 포함한다. 번호 변수(1223)를 지정한 영역은 원고에서 트리플에 의해 사용되는 구별 변수의 수를 포함한다. 변수(1224)를 지적하는 영역은 변수 논쟁 명령이 ID 필드에 의해 인덱스되는 스트링 변수로서 변수 이름을 포함한다. 변수(1224)는 시스템의 초기 적재동안 사용된다. 영역 상호 투엑스트(l225)는 트리플의 변수 논쟁 명령의 변수 ID 필드에 의해 인덱스되는 지시기의 테이블이며 변수값의 원형 테이블에 대한 인덱스를 포함한다. 번호 트리플(1226)을 지정하는 영역은 변수(1227)에 의해 지적되는 트리플 어레이(1208)에 포함된 트리플의 전체 수를 한정한다. 변수 id(1228)는 원고 어레이(1201)에 인덱스시키기 위하여 사용되는 인덱스를 저장하기 위하여 사용된다. 변수(1229)는 원고가 현재 활성 또는 비활성인가를 지정한다. 끝으로, 삭제 스크립트(1230)를 지정하는 변수는 원고가 메모리로부터 완전히 제거될때 사용된다.
제12 또는 14도의 원고 리스트(1206)의 트리플(1227)은 트리플 테이블(1208)에 대한 지시기를 포함한다. 후자 테이블은 원고의 트리플에 대한 콤파일된 코드를 직접 지시하는 지시기를 포함한다. 트리플 테이블(1208)은 경로(1204)를 경유하여 프로그램 ID 테이블(1116)로부터 트리플 필드를 사용하도륵 인덱스된다. 통로(1204)에 의해 트리플 테이블(1208)에 인덱스되는 위치는 트리플의 실제 코드된 수행에의 정보의 여러가지를 차례로 지적하는 일련의 메모리를 포함하는 트리플(1210)을 지적한다. 예를들어 트리플(1209) 내지(1211)과 같은 대응 트리플과 트리플 테이블(1208)에 각 엔트리에 대한 트리플의 코드화된 수행이 존재한다.
트리셜(1210)에 의해 지적된 콤파일된 트리플 코드가 한번 수행되면, 제10도에 도시된 번역기(1006)는 FSM(1005)을 다시 한번 제어한다. 프로그램 ID 테이블(1116)에의 다음 위치를 후자가 인덱스하고, 다음 트리플에 대한 새로운 코드가 트리플(1209)의 하나에 의해 확인될때까지 상술된 바와 유사하게 통로를 통하여 인덱스하며, FSM(1005)은 번역기(1006)를 다시 한번 제어한다. 이 처리는 프로그램 ID 테이블(1116)에의 모든 트리플이 수행될때까지 또는 하나의 트러플이 스톱 초기치를 수행할때까지 계속된다.
트리플의 콤파일된 코드 포맷은 제15도에 도시되며, 숫자 코드(ASCII)를 사용하여 엔코드된다. 위치(1500)는 콤파일된 코드의 바이트 수를 한정한다. 트리플의 상태 한정에 명세된 상태의 번호는 위치(1501)에 저장되며(즉, 트리플이 인가되는 상태의 번호), 이 상태의 수 IDS는 위치(1503)에 저장된다. 마찬가지로, 이름지어진 이벤트의 ID는 위치(1504)에 저장된다. 소스 코드 트리플의 이벤트 한정에서 명세된 각 이벤트에 대한 하나의 콤파일된 트리플이 존재한다. 1501 내지 l504에 저장된 정보는 원고의 활성화동안 사용된다. 콤파일된 코드의 작동 또는 명령 부분은 위치(1505) 및 (1506)에 포함된다. 영역(1505)은 정상적으로 2개의 구별 부분을 포함한다. 이벤트 한정에 명세된 이벤트 파라메터가 없으면, 다음에 기술된 바와 같이 제2부분이다.
영역(1505)의 제1부분은 다음 부분이 수행되는가의 여부 및 트리플의 이벤트 한정이 충분히 만족하는가에 대한 결정을 위해 신호 발생에 의해 콤파일된 트리플 코드로 통과되는 값을 재생하기 위하여 사용된다. 영역(1505)의 제2부분은 초기치 및 명령을 포함한다. 위치(1506)는 스톱 또는 컨티뉴가 영역(1505)의 수행에서 먼저 만났다면 FSM(1005)에 제어를 반역기(1006)가 복귀시키도록 하는 홀트 초기치를 포함한다. 초기치는 표시된 작동을 수행하도록 C++ 기능에 대한 서브 루틴 호출이다.
영역(1505)에서 코드의 전체 순차는 선행 논쟁을 사용하는 초기치 호출 또는 명령 코드에 의해 수반되는 논쟁 코드로 이루어진다. 이 논쟁, 명령 및 초기치의 정규 흐름의 예외는 제17, l8도에 도시된다. 제17도는 할당을 수신하기 위하여 변수의 내부 확인 코드에 의해 수반되는 명령이 처음 나오는 할당 명령을 도시한다. 제18도는 명령의 제2필드에 표시된 전송될 파라메터의 적절한 수를 가지는 센드 메세지 명령을 도시한다.
일반적으로, 논쟁 코드는 신호 논쟁, 브랜치대 어드레스 논쟁, 변수, 문자의 등급으로 된다. 제19 및 20도는 문자, 변수 또는 신호 논쟁에 대한 이들 명령의 형태를 도시한다. 이 논쟁의 하나가 번역기(1006)에 의해 만나면, ID 표식이 붙은 내부 확인 코드를 수반하며, 테이블에 대한 인덱스로서 lD를 사용하는 실제값에 대한 지시기를 얻으며, 이 지시기를 번역기 스택에 밀어넣는다. 제19 및 20도는 문자, 변수 및 신호논쟁에 대한 명령의 포맷을 도시한다. 이 논쟁이 번역기(1006)에 의해 만나게 될때, ID로 라벨이 붙은 수반되는 내부 확인 코드를 취하며, 테이블의 인덱스로서 ID를 사용하는 실제값에 대한 지시기를 얻는다. 그논쟁을 사용하는 명령 또는 초기치가 수행될때, 이것은 지시기를 얻기 위하여 스택을 띄며, 실제값을 통과시키도록 이 지시기를 사용한다.
신호는 검사되고 관련된 값은 다음 방법으로 재생된다. 트리플의 이벤트 파라메터는 트리플이 수행된다. 시간에 콤파일된 트리플에 정보를 전송한다. 이 정보는 변수에 대한 재생된 값으로 이루어지거나 예를들어 "입력" 이벤트 값으로 이루어진다. FSM(1005)은 시그널-어레인지 배열의 이벤트 파라메터에 통과된 값을 저장한다. 트리플에 대한 콤파일된 코드의 제1명령은 이 값을 재생한다. 예를들면 "근원(S소스)"와 같은 이벤트 한정에 대해서는, 값 재생 코드가 시그널 어레인지 배열의 제1위치를 억세스하고 재생된 값과 S소스 변수가 동일하게 셋트한다 "입력"과 같은 이벤트의 경우에, 단자로부터 수신된 제1입력 스트링을 재생하고, 트리플내에 한정된 바와 같이 정확히 입력 이벤트가 정합되는가를 결정하기 위해 문자 테이블에 콤파일된 트리플로 트리플로부터 저장된 데이타에 대하여 이 스트링을 비교할 필요가 있다. 콤파일된 트리플로부터 저장되었던 것과 입력 이벤트 문자 정보가 정합되지 않으면, 다음 트리플의 수행을 위해 FSM(1005)에 체어가 복귀된다. 단자로부터 수신된 제1입력 스트링이 입력 이벤트 한정의 제 1논쟁과 정합되면, 트리플 코드의 나머지가 수행된다. 수신된 메세지, 응답, 시간 이벤트는 입력 이벤트의 그것과 유사한 방법으로 기능한다. 부가하여, 입력, 수신 메세지, 응답 이벤트로 트리플이 수행되어 적절한 가변 위치에 저장되는 시간에 위치 대응에 의해 시그널-어레인지 배열로부터 얻어지는 값을 갖는 변수 논쟁의 가변수를 가진다. 이 값이 재생된 후에, 트리플 코드가 수행된다.
브랜치 명령의 포맷은 제21도에 도시된다. 상태 브랜치의 경우에, 번역기는 브랜치를 유무를 결정하는 시험 값을 스택으로부터 꺼낸다. 표 1,2,3은 이벤트, 상태, 명령 코드에 대한 십진수 코드를 나타낸다.
Figure kpo00002
Figure kpo00003
Figure kpo00004
Figure kpo00005
제22도는 트리플의 문자 및 가변 코드가 변수 및 문자 종보에 대한 억세스를 얻기 위하여 사용되는 방법을 설명한다. 음성 가변 테이블(220l), 문자 테이블(2204), 제14도의 문자(1225), 문자의 리스트(2205)는 관련 원고 리스트 예를들어, 제14도의 원고 리스트(1206)에서 유지된다. 문자(2205)의 리스트는 콤파일된 원고의 부분이다. 가변 경우에, 가변 코드는 전체 가변 길이 테이블(2202)에서 얻어진 인덱스로부터 제14도에서 예를들어 (1225)인 상호 ToExt로 불리우는 국부 가변 테이블(2201)을 억세스하기 위해 사용된다. 전체 변수 테이블(2202)은 주어진 가입자 유니트내의 모든 원고에 공통이다. 전체 가변 테이블(2202)로부터, 변수의 실제 문자 스트링 값을 포함하는 가변 값(2203)에서 지시기가 얻어진다. 마찬가지로, 문자 코드는 지시기가 문자 값(2205)으로부터 얻어진 것에서 문자 테이블이블(2204)(1222)를 억세스하기 위해 사용된다. 관련 리스트에 있는 모든 문자 및 변수는 정보의 각 아이템의 종료를 지정하기 위하여 영문자로 종료된다.
시스템 작동의 적재동안에, 즉각-사용자 처리(1003)내의 코드는 컴퓨터(101)로부터 수신된 데이타에 응답하여 제11.12,13도에 도시된 테이블에 저장된다.
제23,24도는 FSM(1005)을 수행하는 프로그램을 플로우챠트 형식으로 도시한다. 제23,24도는 비 스트라우 스트립에 의해 C++ 프로그래밍 언어라 명칭된 착내에 상세히 기술된 프로그램의 논리 흐름을 상세히 도시한다. 제23,24도의 프로그램이 한번 블럭(2301)에 의해 초기화되면, 반복적으로 블럭(2302) 내지(23l5)은 수행한다. 비활성화 신호가 수신될때 블럭(2313) 및 (2314)은 원고의 비활성화를 수행하여(즉, 제11,12,13도에서 테이블 및 지시기의 수정), 블럭(2315)은 활성화 신호가 수신될때 원고의 활성화를 수행한다. 블럭(2301)은 FSM(1005)의 내부에 어떤 변수를 초기화시킨다. S디스 변수는 가입자 유니트의 호출번호와 동일하게 셋트되며, i__ arg 변수는 파라메터가 다른 작동 시스템 메세지로 통과되는 것을 확인하는 지시기 테이블의 인덱스와 동일하게 셋트된다, 파라메터는 신호에 관련된 스트링 정보를 포함한다.
메세지가 FSM(1005)에 의하여 수신될때, 1p 지시기는 작동 시스템으로부터 처리될 다음 메세지의 위치와 동일하게 셋트된다. 공지된 바와 같이, 작동 시스템은 메세지가 처리되는 한 FSM(1005)의 수행을 기원하며, 어느 위치에서나 FSM(1005)에 의해 처리되는 메세지 대기의 복수를 가진다. 블럭(2303)은 작동 시스템에 의해 지정된 영역에 저장된 메세지 형태에 대한 지점은 지시하는 IP 지시기를 사용하여 메세지내의 메시지 형태와 MSG 형태 변수를 동일하게 셋트시킨다. 블럭(2304)은 각 신호 형태에 대한 숫자 확인을 포함하는 신호 "#" 테이블의 인덱스에 MSG 형태 인덱스를 사용한다. 이 십진 값은 표4에 기술된다. 신호용 숫자 코드가 블럭(2304)에서 한번 정해지면, 결정 블럭(2305)은 신호의 활성화 여부를 결정한다. 신호가 활성화이면, 블럭(2315)이 수행된다. 블럭(2315)의 상세는 제29, 30, 31도에 주어진다.
Figure kpo00006
Figure kpo00007
블럭(2306)은 S이벤트 변수에서 이벤트용 이름스트링을 저장하기 위하여 또 처리되는 현 신호에 대응하는 이벤트를 확인하기 위하여 SIG 변수를 테이블 FC 시그널네임에서 억세스하기 위해 사용된다. 블럭(2307),(2308)은 작동 시스템 메세지의 파라메터를 억세스하어 ARG로 불리우는 어레이에 이 파라메터를 저장한다.
블럭(2309a)을 FSM 시그널(1113)과 같이 사용하기 위하여 FSM 시그널 구조를 결정하도록 제11 및 12도에 도시된 통로를 수행한다. 후자 블럭은 1110과 같은 FSM시그널 테이블, 1117과 같은 FSM 시그널 PTR 변수, 변수(1101),(1102) 내지 상태 테이블(1l04)로부터 논리 통로를 수행한다. 블럭(2309b)은 현재 인덱스를 영으로 한다. 현재 인덱스는 프로그램 ID 테이블(예로서 1116)에 인덱스하기 위해 사용된다. 부가하여, 블럭(2309b)은 컨티뉴와 동일한 복귀 코드로 셋트된다. 콤파일된 코드의 번역동안에, 주어진 트리플용 코드는 스톱에 대한 복귀코드를 변화시킨다. 부가하여, 블럭(2309a)은 디스 시그널 변수를 시그널 변수와 동일하게 셋트한다.
예를들면 1113과 같은 FSM 시그널 구조에서 엔트리가 한번 억세스되면, 이 엔트리는 예를들어 1113과 같은 트리플리스트를 경유하여 프로그램 ID 테이블을 지시한다. 블럭(2310),(2311)은 지정된 프로그램 ID테이블에 확인된 모든 트리플에 대한 콤파일된 코드를 수행하기 위해 진행한다. 지정된 프로그램 ID는 처리되는 신호에 응답하는 모든 트리플을 가입자 유니트의 현 상태에 대하여 확인하는 지시기를 포함한다.
블럭(231la)은 1201과 같은 원고 테이블을 경유하여 프로그램 ID 테이블(1116)에 있는 엔트리의 원고 부분을 경유하여 제12도의 1206과 같이 원고 구조를 확인하기 위해 사용된다. 통로(1202)에 의해 도시된 바와같이 확인된 원고 테이블의 엔트리는 현재 처리되는 트리플을 포함하는 원고를 결정한다. 원고 테이블의 확인된 엔트리는 커렌트 스크립트 변수에 저장된다. 블럭(2311b)은 통로(1212), 통로(1204), 트리플 테이블(1208), 통로(1215)의 제12,13도에 도시된 통로를 경유하여 수행되는 콤파일된 트리플 코드(1210)을 확인한다. 변수 IP는 확인된 트리플 예를들어(1210)와 동일하게 셋트된다. 블럭(2311c)은 제34, 35, 36 및 37도에 상세히 도시된 번역기(1006)를 가동시키는 기능 "수행"의 수행을 행하게 한다. 블럭(2311c)은 수행될 콤파일된 트리플 코드에 트리플(1210)을 경유하여 지시하는 TP변수를 반역기에 통과시킨다. 반역기는 스톱 또는 컨티뉴인 복귀된 코드의 값을 복귀시킨다. 블럭(2311d)은 현 인덱스를 증분시켜서 지정된 프로그램 ID테이를(1l16)의 다음 트리플에 대한 콤파일된 코드가 수행되게 한다.
블럭(2311)이 수행된 후에, 결정 블럭(2310)은 다음 상태가 진실이면 블럭(2312)을 제어하도록 한다. 처음은 정지와 동일한 복귀 코드이다. 복귀 코드가 컨티뉴와 동일하면, 블럭(2311)이 재 수행된다. 복귀 코드가 스톱과 동일하면, 현 신호의 처리가 끝나고 블럭(2312)이 수행된다. 체크되는 제2상태는 지정된 프로그램 ID 루틴을 수행한 블럭(2311c) 에 의해 트리플이 번역되는지의 여부이다.
후자 루틴의 수행은 프로그램 ID 테이블로부더의 수행 트리플을 제거하며, 동일 원고에서 수행되지 않은 다른 트리플로 제거한다. 부가하여, 이 최종 상태는 현 상태에서 현 신호에 응답하는 트리플이 초기에 없다면 부압된다. 다른 트리플을 초래하지 않은 수행되지 않은 트리플의 제거가 지정된 프로그램 ID 테이블에 남아 있다면, 프로그램 ID테이블(1116)은 제거되며, 1113의 트리플 리스트 지시기는 영으로 셋트된다. 선행의 3조건이 부합되면 블럭(2312)는 블럭(2308)에 의한 차후 수행에 대하여 교정 값에 어레인지 테이블을 인덱스시키도록 초기 상태를 셋팅한다.
블럭(2313),(2314)은 비활성화 신호의 취급을 싱세히 설명한다. 비활성화 신호는 비활성화되는 원고내의 대응 비활성화 이벤트를 가지며, 원고는 비활성화 이벤트를 사용하여, 시간으로 후점에서 원고의 물리적 비활성화 또는 정화를 연기한다. 이 능력은 그 일이 임의로 끝날 수 없고 반드시 완성되어야 하는 원고에 주어진다. 이리한 원고는 제8, 9도에 도시된다. 원고는 비횔성화 신호에 응답하는 원고의 트리플내의 스톱 초기치를 수행하여 시간적으로 후점에 그의 비활성화를 연기한다. 결정 블럭(2313)은 원고의 정화를 수행하는 블럭(2314)을 수행하지 않고 스톱 초기치의 수행을 검출한다. 블럭(2314)은 모든 프로그램 ID 테이블에서 원고내에 포함된 모든 트리플에 대한 참조를 제거시켜 원고의 정화를 수행한다.
제24도의 블럭(2314)은 제25도에 더 상세히 도시된다. 퍼지 스그립트 ID 과정은 그 상태의 신호에 대응하는 프로그램 ID 테이블로부터 삭제되는 원고에 관련된 모든 트리플을 제거시키기 위하여 상태내의 각 신호와 상태를 통한 사이클링에 의해 기능한다. 이것은 이 트리플을 제거하기 위해 블럭(2505)에 참조되는 필스크립트 기능을 사용한다. 변수 i 및 j 는 상태 및 신호를 인덱스하기 위하여 사용된다. 초기적으로 i는 블럭(2501)에 의해 영으로 셋트된다. 모든 상태는 디스스크립트 논쟁 또는 파라메터의 내용에 의해 지정되는 바와 같이 삭제되는 원고에 관련된 트리플이 있는지를 알기 위해 체크된다. 결정 블럭(2502)은 변수 FC 스테이트에서 함유된 바와 같이 상태의 전체 숫자와 i를 비교하여 모든 상태가 체크될때를 결정한다. i가 상태의 전 숫자보다 작은 한, 블럭(2503) 및 (2507)이 수행된다. 블럭(1503) 내지 (2507)을 통한 반복에서, 블럭(2503)은 j 변수를 영으로 셋트시킨다. 결정 블럭(2504)은 모든 신호가 삭제될때까지 딜 스크립트 기능의 수행을 제어한다.
딜 스크립트 기능은 비활성화되는 원고에 관련된 모든 트리플을 삭제하기 위하여 프로그램 ID 테이블을 확인하는 지시기를 통과시킨다. 딜 스크립트 기능은 비활성화되는 원고에 관련된 트리플을 제거하는 지정된 프로그램 ID 어레이의 모든 엔트리를 통하여 반복된다. i변수는 제11도의 상태 테이블(1104)을 통하여 스테핑된다. 테이블(1104)의 각 엔트리에 대하여는, 예를들어 1110과 같은 FSM 신호 테이블이 확인된다. j변수는 1113과 같은 트리플 리스트/FSM 신호 변수를 경유하여 프로그램 ID 테이블을 확인하는 각 엔트리를 가진 확인된 FSM 신호 테이블의 엔트리를 통하여 스텝된다.
제25도의 블럭(2505)의 딜 스그립트 기능은 제26,27,28도에 플로우챠트로 상세히 도시된다. 스크립에 관련된 트리플은 2단계로 삭제된다. 제1단계는 인덱스에 저장된 현 인덱스 변수에 대한 새 값과 긋 트리플에 저장된 프로그램 ID 어레이(1116)에 확인된 새트리플의 수를 결정하기 위하여 블럭(2604) 내지 (2609)에 대한 것이다. 현 원고 및 신호에 관련된 트리플의 실제 제거는 블럭(2611) 내지 (2619)에 의해 수행된다. 이 과정은 임시 프로그램 ID 테이블은 발생하고, 구식 테이블로 부터 보존되는 모든 트리플을 전송하고, 예를들어 1113인 트리플 리스트 변수에서 확인하고 임시 테이블을 새로운 프로그램 ID으로 만든다.
블럭(2601)의 수행에 따라 뉴 인덱스 변수는 커렌트 인댁스 변수와 동일하게 셋트된다. 커렌트 인덱스 변수는 제24도의 블릭(2310) 내지 (2311)에서 처리되는 트리플의 인덱스와 동일하다. 변수 굿 트리플은 영으로 초기화 된다. 제25도의 블럭(2503) 내지 (2507)이 모든 신호가 각 상태에서 대응 프로그램 ID 테이블을 가진다고 가정하면, 처리되는 특정 신호를 증명할 필요가 있으며, 사실 특별한 상태에 대하여 대응 프로그램 ID 테이블을 가진다. 이 결정은 결정 블럭(2602)에 의해 수행된다.
제11도에 도시된 바와같이 FSM 시그널 테이블은 트리플 리스트(1112) 내지 (1113)에 대한 지시기를 가진다. 각 FSM 시그널 테이블에는 각 기능 신호에 대한 엔트리가 존재하며, 각 엔트리에 대한 대응 FSM 시그널 구조/트리플 리스트가 존재한다.주어진 상태에 대한 특별 신호에 응답하는 트리플이 없다면, 그 신호에 대한 트리플 리스트는 영 값을 포함한다. 퍼지 스크립트 ID 기능이 처리되는 현 FSM 시그널에서 특별한 엔트리에 의해 확인된 트리플 리스트가 영 값을 포함한다면, 결정 블럭(2602)은 퍼지 스크립트기능의 제어를 복귀시킨다. 트리플 리스트가 영 값을 가지지 않으면, 이것은 신호가 이 상태에서 대응 트리플의 셋트를 가지며 제어가 블럭(2603)으로 전송되는 것을 의미한다.
이제, 어떻게 변수 굿 트리플에 저장된 유효 트리플의 수가 결정되는지를 연구해 본다. 결정 블럭(2604)은 현 프로그램 ID에서 확인된 트리플의 수가 최대 수보다 큰지의 여부를 결정한다. 프로그램 ID에서 트리플의 최대 수는 제12도에 도시된 1116인 위치 k에 저장된다. i가 트리플의 최대 수보다 작다면, 결정 블럭(2605)은 삭제되는 원고에 프로그램 ID 블럭의 센트리가 관련되는가를 결정한다. 원고 인덱스가 지금 처리되며, 디스 스크립트 변수에서 엔트리에 의해 확인되는 원고와 다르면, 블럭(2609)이 굿 트리플 변수를 l씩 증분시켜 수행된다. i에 의해 지시되는 트리플 엔트리에 대한 원고가 디스스크립트 변수와 정합되면. 블럭(2606)은 블럭(2611) 내지 (2619)에 의해 후에 처리되는 i변수에 의해 지적된다. 프로그램 ID 테이블에서 엔트리를 표시하는 방법으로 수행된다.
그러면 제어가 결정 블럭(2607)으로 통과된다. 추후 결정 블럭은 수행되고 딜 스크립트 기능을 활성화시키는 현 트리플보다 프로그램 ID에서 제거되는 트리플이 더 낮은가를 결정한다. 현재 처리되는 프로그램 ID 테이블이 트리플의 그것이면 그것은 딜 스크립트 기능을 수행하게 하고 수행되는 트리플을 지적하는 현 인덱스보다 i가 작으면, 블럭(2608)은 뉴 인덱스 변수가 1씩 감소되게 수행된다. 이것은 뉴 인덱스 변수가 블럭(2601)의 커렌트 인덱스 변수였기 때문에 완료된다. 뉴 인덱스 변수의 내용은 커렌트 인덱스를 조정하기 위하여 블럭(2619)에 사용되어 현 트리플이 변역 완료된 후에 수행이 프로그램 ID 테이블을 계속한다.
프로그램 ID 테이블의 모든 엔트리가 보유될 트리플에 대하여 한번 체크되면, 결정 블럭(2601)은 모든 트리플이 떠났는가 또는 정화되는 원고에 프로그램 lD 어레이에서 모든 트리플이 관련되었는가를 결정한다. 후자 상태가 사실이면, 블럭(2620)이 수행되고 트리플 리스트가 특별한 상태에 대하여 이 특별한 신호에 응답하는 트리플이 없다는 것을 표시하는 연 값으로 셋트된다. 그러면, 커렌트 인댁스는 영으로 셋트되어 제어가 FSM(1005)으로 복귀될때 이 프로그램 ID 테이블로부터 다른 트리플을 수행하도록 시도가 만들어지지 않는다.
정화되는 원고가 관련되지 않은 트리플이 있다면, 제28도의 블럭(2611) 내지 (2619)이 수행된다. 블럭(2611)은 굿 트리플 변수에 포함된 숫자와 동일한 엔트리의 숫자를 가지는 새로운 테이블과 지시기 TMP리스트가 동일 하도록 셋트한다. 블럭(2615),(2617)은 무효로 표시되지 않은 엔트리를 찾는 프로그램 ID 테이블을 통하여 인덱스한다. 무효로 표시되지 않은 어떤 엔트리도 원고 및 트리플 확인을 삽입하는 블럭(2615),(2616)에 의해 새로운 어레이 테이블로 전송된다. 프로그램 ID의 모든 엔트리가 체크된 후에, 제어는 TMP 리스트 변수와 동일한 FSM 시그널 테이블로부터의 트리플 리스트 지시기를 셋트하는 2618로 전송된다. 이것은 예를들어 1113인 지정된 FSM 시그널 테이블에 의해 지시되는 프로그램 lD 테이블에 새로운 어레이 테이블의 영향을 준다. 블럭(2619)은 굿 트리플 면수에 포함된 수와 동일하도록 k 위치에서의 프로그램 ID 테이블에 저장되는 바와 같이 트리플의 수를 셋트한다. 그리고 커렌트 인엑스를 뉴 인덱스 변수와 동일하게 셋트한다.
제23도의 블럭(2315)에 의해 한정된 바와 같이 활성 신호에 응답하여 FSM(1005)에 의해 수행되는 작동은 제29, 30, 31도의 블럭(2917), 내지 (2923)과 블럭(2906)-(2911)으로 더욱 상세히 도시된다. 블럭(2901)-(2905)는 엑티베이트 초기치의 상세를 도시한다. 블럭(2901) 내지 (2905)의 목적은 활성하되는 원고에 대한 숫자 코드를 결정하고, 처리 제어(1000)에 파라메터로서 이 숫자 코드를 포함하는 작동 시스템 메세지를 송부하는 것이다. 처리 제어(1000)가 이 메세지를 수신할때, FSM(1005)을 원한다.
FSM(1005)가 원하여지고 이 신호가 활성화 신호인 것을 결정한 후에 제어가 결정 블럭(2305)에서 블럭(2906)에 전송된다. 후자 블럭은 작동 시스템에 의해 통과될 메세지에서 파라메터의 리스트로부터의 후자를 얻음에 의해 원고에 대하여 i를 초기화시킨다. 결정 블럭(2907)은 원고 코드가 유효한가를 결정하고, 그러면, 결정 블럭(2908)으로 제어를 넘긴다. 후자 결정 블럭은 후자 테이블에 대한 인덱스로서 변수 1를 사용하여 원고 테이블(1201)로부터 지시기를 먼저 얻어서 1206과 같은 원고 구조 또는 위치에서 현재의 원고가 활성화로서 이미 표시되었는가를 결정한다. 그러면 블럭(2908)이 l206의 액티브 변수(1229)의 값을 체크한다. 현 원고가 비활성으로 표시되면, 블럭(2909)이 수행된다.
코드(2909)-(2911)과 블럭(2917)(2923)의 목적은 활성화되는 원고의 트리플에 프로그램 ID 테이블 참조를 삽입하기 위한 것이다. 이 참조는 원고의 각 트리플의 이벤트 한정이 활성화되고 상태 한정에서 지정된바와 같이 상태 및 신호에 대응하는 프로그램 ID 테이블에 삽입된다. 제12도에 드시된 바와 같이, 원고 테이블(1201)의 어드레스는 공지이며, 숫자 코드에 의해 원고의 관계는 테이블(1201)에 인덱스되도록 사용된다 후자 테이블의 정보는 예를들어, 통로(1203), 원고(1206), 통로(1212), (1204), 트리플 테이블(1208),통로(1215) 미 트리플(1210)을 따라 처리하여 원고의 트리플을 확인하도록 사용된다. 트리플이 한번 확인되면, 블럭(29l8)에 도시된 코드는 프로그램 ID 테이블이 트리플에 대한 참조를 수신해야 하는 것에 대한 결정을 하기 위하여 콤파일된 트리플 코드내에 코드된 상태와 신호 정보를 사용한다.
블럭(2909)에서, 디스 지시기는 변수 i에 의해 인덱스된 원고 테이블(1201)의 내용과 동일하게 셋트되고, 원고(1206)에 대한 변수를 지시하도록 사용된다. 이 디스지시기는 예를들어 액티브 변수를 트루로 셋트하도록 사용된다. 변수 t는 원고 리스트에 저장된 넘버 트리를 변수에 포함된 숫자보다 하나가 작도록 셋트된다. 이 디스 스크립트 변수는 변수 1의 내용과 동일하게 셋트된다. 이 방법으로 셋팅하는 이유는 원고의 제1트리플이 최상위 선취권을 가져야 하기 때문이며, 특정한 프로그램 ID 테이블에 최종 트리플을 밀어 넣어야 하기 때문이다.
지시기 TP는 l210과 같은 트리플을 지시한다. 제13도에 도시된 바와 같이, 트리플은 그 자체의 상태 및 이벤트 한정을 가진 트리플 리스트에 관련된 트리플이라는 신호와 상태의 수를 확인하는 지시기를 포함한다. 이 정보는 얼마나 많은 상태가 콤파일된 코드에 존재하는가를 결정하기 위해 블럭(2918)과 결정 블럭(2917),(2919)에 의해 사용된다. 블럭(2917) 내지 (2923)에 도시된 프로그램은 각 트리플에 대한 콤파일된 코드를 취하고 콤파일된 트리플 자체의 신호와 코드된 상태에 의해 지시되는 프로그램 ID 테이블에 블럭(2920)의 푸쉬 트리플 기능의 사용에 의해 그 코드에 참조를 삽입한다. 변수 i는 트리플 상태 한정에서 확인된 상태에 인덱스하기 위해 사용된다. 이 처리의 상태는 푸쉬 트리플 기능을 설명하는 제32, 33도에 대하여 주어진다.
모든 상태가 주어진 콤파일된 트리플에 대하여 처리된 후에, 블럭(2923)은 수행되고 t는 1씩 증분되며, 수행은 블럭(2910),(2911)으로 간다. 이 처리는 소정의 프로그램 ID 테이블에서 직절히 확인되는 트리플테이블의 위치에 의해 간접적으로 지시되는 콤파일된 트리플을 통하여 순차적으로 인덱스되는 예를들면(1208)과 같은 트리플 테이블을 초래한다. 트리플 테이블의 모든 엔트리가 한번 처리되면, 결정 블럭(2910)은 제어를 블럭(2912)에 통과시킨다. 블럭(2912)은 제23, 24도의 블럭(2306) 내지 (2314)에 의해 도시된 것과 유사한 코드를 수행한다. 이것은 활성화 이벤트를 포함하는 최근에 활성화된 원고의 트리플에 의해 활성화 신호가 처리되게 한다.
활성화 신호가 처리된 후에, i는 영으로 재 초기화되고 블럭(2914) 내지 (2916)은 제26, 27, 28도에 관하여 기술된 딜 스크립트 기능의 사용에 의하여 프로그램 ID 테이블로부터 특별한 원고에 대한 "엑티베이트"인 이벤트를 가지는 트리플에 대한 모든 참조를 제거한다. 현 원고에 대한 활성화인 이벤트를 가지는 모든 트리플을 제거하는 목적은 추후 활성화 신호는 활성화 이벤트가 각 원고에 대하여 한번씩 만 발생하므로 어떤 작동을 수행하기 위하여 이 트리플을 유발하지 않는다.
이 푸쉬 트리플 기능은 제32, 33도에 더 상세히 도시된다. 푸쉬 트리플 기능이 호출될때, 2개의 상태가 존재한다. 제1상대는 대체딜 트리플이 이미 존재하는 프로그램 ID 테이블이고, 제2상대는 프로그램 ID 테이블이 존재하지 않는 것이다. 결정 블럭(3201)은 프로그램 ID 테이블이 존재하지 않는 것을 표시하는 영값을, 예를들면 1113과 같은 지정된 트리플 리스트 위치가 포함하는가를 알아보기 위해 체트하여서 상태가 존재히는 것을 결정한다. 프로그램 ID 테이블이 존재하지 않으면, 블럭(3202)은 새로운 어레이의 위치를 확인하기 위하여 TMP 리스트 지시기를 셋트하고 새로운 어레이를 발생시키도록 수행된다. 블럭 (3203)이 원고 및 트리플 확인을 새 어레이의 제1엔트리 삽입하도록 수행되어 이 새 어레이에 콤파일된 트리플 코드를 확인한다. 블럭(3204)은 변수 i의 초기 값을 설정한다.
블럭(3205) 내지 (3207)은 원래 프로그램 1D 테이블에서 새 어레이 테이블로 가는 원고 및 트리플 확인정보를 복사한다. 블럭(3206)은 원고 확인 정보를 복사하고 블럭(3207)은 트리플 확인 정보를 복사한다 프로그램 1D 테이블의 내용에 한번 완전히 새로운 어레이 테이블로 복사되면, 블럭(3208)은 예로서 1113과 같은 트리플 리스트 위치에 TMP 리스트 지시기에 포함된 지시기를 삽입하도록 수행되어 예로서 1110과 같은 FSM 시그널 테이블의 엔트리에 의해 지시되는 프로그램 ID 테이블로 새 어레이를 만든다. 부가하여, 블럭(3208)은 프로그램 lD 테이블에서 k로 지정된 위치로 새 프로그램 lD 테이블에 의해 확인되는 트리플의 수를 삽입한다.
제34, 35, 36, 37도는 제10도의 번역기(1006)의 흐름도이다. 제어가 FSM(1005)에서 번역기(1006)로 처음 통과될때, 번역기(1006)는 리턴 코드 변수를 인디파인드와 동일하게 셋트고, 블럭(3401)을 수행하여 번역되는 제1명령의 위치를 얻는다. 이 초기 기능을 수행한 후에, 번역기(1006)는 홀트, 스톱, 컨티뉴 명령이 다시 시작될때까지 블럭(3402),(3405) 내지 (3434)를 계속하여 수행한다, 홀트, 스톱 또는 컨티뉴 명령이 나타나면, 리턴 코드가 스톱 또는 컨티뉴(홀트 및 컨티뉴 명령 후자)로 셋트되며, 블럭(3403),(3404)이 수행되고 제어는 리턴 코드 값을 따라 FSM(1005)로 복귀된다. 상술한 바와 같이, 홀드, 스톱 또는 컨티뉴명령은 리턴 코드 변수를 리세팅시켜서 코드화된 명령의 수행을 종결하고 제10도의 FSM(1005)으로 제어를 복귀시킨다.
리턴 코드가 언디파인드 상태로 남아 있으면, 명령블럭(3405)은 비상태 브랜치 명령이 수행될 다음 명령인가를 결정하기 위하여 수행된다. 비상태 브랜치 명령이 존재하면, 번역기 스택이 나타나고, 그 값은 PC변수에 저장되어 번역기 브랜칭이 나타난 값에 의해 결정되는 코드에서 새로운 위치가 되게 한다. 나타난 어드레스는 결정 블럭(3417)에 의해 검출되는 브랜치 논쟁 명령에 의해 스택상에 원래 놓여있다. 블럭(3418)은 제21도에 도시된 점프 인덱스를 얻으며 이 인덱스를 코드의 제1명령 어드레스의 위치에 가산하고 결과를 스택으로 밀어넣는다.
상태 브랜치 명령의 수행은 블럭(3406)(3410)에 도시된다. 상태 브랜치의 수행전에, 브랜치 논쟁 명령이 브렌치가 발생되는 인덱스에 스택을 위치시키도록 수행된다. 상태 브랜치 명령이 결정 블럭(3406)에 의해 한번 결정되면, "P"로 지정된 국부 변수로 나타난 브랜치 어드레스 인덱스를 저장하는 블럭(3407)으로 제어가 전송된다. 다음, 결정 블럭(3408)은 블럭(3419), (3420).(3425),(3426),(3427),(3428)에 의해 도시된 바와 같이 비교 명령 및 논리 작동자 명령의 수행에 의해 스택상에 대체되는 비교 및 논리 작동의 결과를 포함하는 TEMP 변수의 어드레스를 스택으로부터 꺼낸다. 비교 및 논리 작동의 결과가 진실(비제로)이면, 블럭(3409)은 블럭(3438)에 의해 수행되는 것과 비슷한 방법으로 코드내에 지정된 위치에 브렌치가 발생하도록 수행된다. 비교 및 논리 작동의 결과가 거짓(영)이면, 블럭(3410)은 수행되어 콤파일된 코드의 다음명령이 수행된다.
문자 논쟁 명령이 나타나면, 결정 블럭(3411)은 제어를 블럭(3412)으로 전송한다. 후자 블럭은 제l9도에 포맷이 도시된 명령의 문자 ID 필드를 얻는다. 문자 ID는 제12도의 원고 리스트(1206)와 같은, 원고 리스트에 포함된 문자 스트링의 리스트에 대한 지시기를 포함하는 문자 테이블을 억세스하기 위해 사용된다. 지시기가 한번 얻어지면, 번역기 스택으로 밀려 들어간다. 마찬가지로, 변수 논쟁 명령이 나나타면, 결정 블럭(3413)은 블럭(3414)에 기어를 전송한다. 블럭(3414)은 전체 변수 테이블에 대한 지시기를 얻기 위하여 국부 변수 테이블이 인덱스하기 위하여 ID 필드가 사용되는 경우를 제외하고 3412의 비슷하게 기능한다. 전체 변수 테이블에 대한 후자 지시기는 블럭(3414)에 의해 스택상에 밀려진다. 또한, 블럭(3415),(3416)는 전체 기본에서 유지되는 신호 논쟁의 리스트로부터 신호 논쟁에 대한 지시기를 얻도록 블럭(3411).(3412)이 유사하게 기능한다.
블럭(34l9),(3420)은 스택에서 비교될 그 값을 먼저 나타내고 이 비교의 결과를 임시 변수에 저장하여 다양한 비교 작동을 수행한다. 이 임시 변수에 대한 지시기는 블럭(3420)에 의해 스택에 들어간다. 기능은 동일, 비동일, 더 큼, 저 작음, 그 이상, 그 이하등에 기초하여 비교로서 제공된다. 번역기가 블럭(3403)을 수행할때 자유로운 임시 변수의 수를 번역기가 사용할 수 있다는 것을 알 수 있다.
마찬가지로, 블럭(3421),(3422)는 가산, 감산, 증배, 배분의 연산을 수행한다. 블럭(3423),(3424)은 1변수로 수행되는 l진수 부극성 기능을 제어하고 연산 명령과 유사하게 기능한다. 또한, 블럭(3425),(3426)에 도시된 바와 같이 논리 OP 코드 명령은 블럭(3421),(3422)의 연산 명령의 그것과 유사한 방법으로 수행된다. 마찬가지로 낫 명령은 니게이트 명령과 유사하게 주행되고 블럭(3427),(3428)에서 도시된다.
센드와 같은 초기치의 수행은 블럭(3429),(3430)에 의해 설명된다. 초기치가 한번 검출되면, 블럭(3430)에 도시된 작동이 수행된다. 대부분의 초기치는 파라메터나 파라메터의 고정된 숫자가 없다. 이 파라메터에 대한 지시기는 논쟁 명령에 의해 스택상에 대체되고 스택에 나타나며, 초기치 기능으로 통과한다. 하지만 초기치 명령의 2형태 즉, 어사인 및 센트 메세지는 다른 형태를 갖는다. 어사인 초기치 포맷은 제17도에 도시된다. 어사인 명령이 나타나면, 블럭(3430)은 스택상의 최상값과 동일하게 2변수를틀 셋트시키도록 콤파일된 코드에서 변수의 ID를 얻기 위하여 명령의 제2필드를 어세스한다. 센드 메세지 포맷은 제18도에 도시된다. 먼저 센드 메세지 명령이 나타나면 블럭(3430)이 형상 이 명령에 의해 수행되는 2파라메터에 부가하여 통과될 선택적 파라메터의 숫자를 얻기 위하여 제18도에 도시된 명령의 제2필드를 억세스한다. 블럭(3430)은 스택에서 얼마나 많은 부가 논쟁을 꺼내야 하는가를 결정하기 위하여 선택 파라메터의 수를 사용한다.
홀트 및 컨티뉴 초기치가 블럭(3431),(3432)에 의해 수행된다. 홀트 또는 컨티뉴가 검출되면, 제어는 컨티뉴와 동일하게 리턴 코드를 셋트하는 블럭(3432)에 통과된다. 마찬가지르, 스톱 명령이 결정 블럭(3433)에 의해 검출되면, 리턴 코드를 스톱과 동일하게 셋트하는 3434에 통과된다.
넥스트 스테이트 초기치는 제38도에 프로우챠트로 상세히 도시된다. 넥스트 스테이트 초기치를 기원하여, 블럭(3801)은 먼저 상태가 수정되는지를 증명하고 그러하다면, 블럭(3802)이 수행된다. 후자 블럭은 스트링 "리브"와 같게 S이벤트 변수를 셋트하며, 제23, 24도의 블럭(2309)-(2312)에 도시된 바와같이 코드를 수행한다. 이것은 정규 방식에서 출발 신호가 처리되게 한다. 이것이 성취된 후에, 블럭(3803)은 상태 테이블(1104)에서의 새로운 상태에 대한 엔트리를 인덱스하기 위하여 커렌트 변수(1101)를 변화시키기 위하여, 또한, 새로운 스테이트 논쟁에 포함된 숫자 상태 코드에 대한 스트링 표시와 S 스테이트 변수를 동일히게 변화시키도록 수행된다. 최종적으로, 블럭(3804)은 제23, 24도의 블럭(2309)-(2312)에 도시된 바와 유사하게 코드와 스트링 "엔터"와 동일하게 S 이벤트 변수를 셋트하도록 수행되고, 새로운 상태에 대하여 입력 신호가 처리되게 수행된다.
상기 실시예가 본 발명의 예중에 대한 것으로 이 분야의 숙련자는 다양한 변형이 가능하다. 특히 숙련자에게는 공지의 소프트웨어 기술을 사용하여 가입자 유니트에 대하여 각 가입자 유니트에 의해 수행되는 컴퓨터(101)에 의해 수행되는 기능은 공지되어 있다. 부가하여, 공지의 소프트웨어 기술을 사용하는 한 컴퓨터에 의하여 수행되는 제1도에 도시된 컴퓨터에 의하여 수행되는 모든 기능은 숙련자에게 명백하다.

Claims (32)

  1. 실시간 처리에 의해 수행되는 작동을 한정하는 각 원고를 가진 비순서 언어로 기입된 프로그램 원고에 의해 제어되는 컴퓨터 시스템을 사용하는 실시간 처리를 제어하는 방법이, 상기 처리의 제1신호에 응답하여 상기 처리의 제1작동을 제어하기 위해 상기 원고의 제1원고를 수행하는 단계와, 상기 제1신호에 응답하여 상기 원고의 제2원고의 수행을 봉쇄하기 위해 상기 제1원고의 수행에서 다음 순차 신호에 응답하여 상기 컴퓨터 시스템을 지시하는 단계와, 상기 처리의 제2신호에 응답하여 상기 처리에서의 제2작동을 제어하기 위해 상기 제1원고를 재수행하는 단계와, 상기 제2신호에 응답하기 위해 상기 제2원고의 수행을 인가하여 상기 처리에서 다른 작동을 수행하게 하는 단계를 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  2. 제1항에 있어서, 상기 컴퓨터 시스템에서 상기 원고의 제3원고에 의해 제1원고에 응답하는 상기 제2원고에 의해 상기 처리에서 제3작동을 제어하는 단계를 더 포함하는 것을 특징으로 하는 실시간 처리제어방법.
  3. 제2항에 있어서, 상기 실시간 처리가 실시간 처리의 한 신호와 한 처리 상태에 의해 수행이 결정되는 명령 그룹의 복수를 포함하는 각 프로그램 원고와 복수의 상태를 가정하여, 상기 제l작동의 제어를 수행하는 단계와: 상기 한 상태에 있는 처리에 의해 상기 제1원고의 명령의 상기 그룹의 하나에 의해 상기 제1명령에 응답하는 단계와. 상기 제1원고의 명령 그룹의 한 프로그램 명령의 수행에 의해 상기 제1작동의 제어를 수행하는 단계를 포함하고, 상기 지시단계가 상기 제1원고 명령 그룹의 제2명령의 수행에 의해 상기 제1신호에 명령 그룹이 응답하는 것을 정지시키는 단계를 포함하는 것을 특징으로 하는 실시간처리 제어방법.
  4. 제3항에 있어서, 상기 제4원고의 수행에 의해 상기 컴퓨터 시스템의 제2원고를 비활성화 시키는 단계와, 상기 제2원고의 비활성화 단계의 수행에 따라 비활성화 신호를 발생하는 단계와 다른 처리 상태에서 제2원고가 비활성화 되는 것을 표시하는 신호를 저장하는 단계와; 제2원고의 비활성화를 금지시키도록 비활성화 신호에 응답하여 제2원고의 명령의 다른 그룹에 의해 비활성화 신호의 처리를 정지시키는 단계를 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  5. 제4항에 있어서, 상기 제2원고의 비활성화 단계가 다른 상태로 들어가는 상기 처리와 저장된 신호에 응답하여 제2원고의 명령 그룹의 다른 그룹에 의해 상기 제2원고를 정화하는 단계를 더 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  6. 제5항에 있어서, 상기 컴퓨터 시스템이 유한 상태 머신 제어 프로그램에 의해 제어되고, 상기 방법이 유한 상태 머신프로그램에 의해 상기 처리의 현재 상태를 한정하는 신호 셋트를 유지하는 단계와, 상기 처리의 제1신호와 상태 신호의 현 셋트를 정합시키는 상태 및 신호 정보의 셋트를 가지는 상기 원고내의 명령 그룹을 확인하기 위하여 모든 원고를 탐색하는 단계와, 제1원고를 찾음에 따라 제1원고에 의한 원고 탐색을 금지시키는 단계를 더 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  7. 제6항에 있어서, 제2원고의 비활성화 신호의 추후 처리를 정지시키는 단계와, 비활성화 신호에 응답하고 상태 신호의 현셋트를 정합시키는 상태 정보를 가지는 제2원고의 명령 그룹을 탐색하는 단계와, 비활성화 신호와 현 상태 신호를 정합시키는 신호 정보와 명령 상태의 후자 그룹에 따라 제2원고의 명령그룹을 찾는 단계와, 비활성화 신호와 현 상태 신호의 정합에 근거하여 상기 탐색 작동을 종결시키는 단계를 더 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  8. 제7항에 있어서, 상기 정화 단계가, 상기 유한 상태 머신 프로그램의 수행에 의하여 상기 원고의 제2원고의 명령의 모든 그룹을 확인하는 단계와, 상기 유한 상태 머신 프로그램에 의하여 사용된 상기 확인된 명령 그룹에 대한 참조를 제거하는 단계를 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  9. 실시간 처리에 의하여 수행된 작동은 한정하는 상기 각 원고로 비순서 언어로 기입된 프로그램 원고를 수행하는 컴퓨터 시스템에 의하여 제어되는 복수의 신호를 발생하며 복수의 상태를 가지는 실시간 처리를 제어하는 방법에서, 상기 각 프로그램 원고는 유한 상태 머신 프로그램 루틴에 의하여 제어되는 상기 컴퓨터 시스템과 예정된 처리 신호를 발생시키는 예정된 상태인 실시간 처리에 의하여 단독적으로 결정되는 수행을 가지는 복수의 명령 그룹을 포함하며 상기 방법이 상기 유한상태 머신루틴의 수행에 의하여 상기 각 처리 상태에 대한 복수의 확인 테이블을 유지하는 단계와, 개별 처리 신호에 의하여 활성화된 명령의 그룹을 확인하는 상호 원고 제어 선취 참고를 각 개별 테이블에 저장하는 단계와, 상기 유한 상태 머신프로그램 루틴에 의하여 상기 처리의 현재 상태를 나타내는 현재 상태 신호를 유지하는 단계와, 상기 처리신호의 제1신호의 발생을 검출하는 단계와, 현재 상태 신호에 의하여 결정되는 바와 같이 현재 상태에 관련된 확인 테이블의 셋트를 확인하는 단계와, 상기 제 1 처리 신호에 관련된 상기 확인 테이블의 셋트내의 상기 확인 테이블의 제1 테이블을 찾는 단계와. 상기 상호 원고 선취를 사용하여 수행될 제1프로그램 원고의 프로그램 명령의 제1그룹을 결정하는 단계와, 상기 처리의 제1작동을 수행하도록 프로그램 명령의 결정된 그룹을 수행하는 단계와, 상기 상호 원고 선취에 따라 결정된 프로그램 명령의 다음 그룹의 수행을 봉쇄하기 위하여 프로그램 명령의 제1그룹의 상기 명령의 하나의 수행에 의하여 순차 다음 신호를 처리하도록 상기 유한 상태 머신 프로그램을 지시하는 단계와, 상기 처리 신호의 제2신호의 발생을 검출하는 단계와: 상기 현재 상태의 신호에 의하여 지정된 바와같이 상기 현재 상태에 관련된 상기 확인 테이블 셋트를 재확인하는 단계와, 상기 제2처리 신호에 관련된 확인 신호 확인 테이블의 셋트내에서 제2테이블을 찾는 단계와, 상기 상호 원고 선취를 사용하는 다른 확인 테이블내에서 수행하도륵 프로그램 명령의 제 3그룹을 결정하는 단계와, 상기 처리에서 제2작동을 수행하도록 프로그램 명령의 제3그룹을 수행하는 단계와, 상기 제3프로그램 명령 그룹의 하나의 수행에 의하여 상기 상호 원고 선취에 의해 확인된 바와같이 프로그램 명령의 다음 그룹의 수행을 허용하는 단계를 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  10. 제9항에 있어서, 상기 처리 신호의 제3신호의 발생을 검출하는 단계와, 상기 제3처리 신호에 관련된 확인 테이블 셋트내에서 제3테이블을 찾는 단계와. 상기 상호 원고 선취를 사용하여 수행하도록 명령의 제4그룹을 결정하는 단계와 상기 제4프로그램 명령 그룹의 프로그램 명령의 수행에 의해 상기 원고의 제1원고를 비활성화시키는 단계와, 상기 원고의 제1원고의 비활성화에 따라 제1처리 신호에 응답하여 상기 확인 테이블의 프로그램 명령의 다음 그룹에 의하여 상기 처리해서 제3작동을 제어하는 단계를 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  11. 제10항에 있어서 비활성화 신호를 발생하는 단계는, 상기 비활성화 신호에 관련된 상기 현 상태의 테이블 셋트내의 제4테이블을 찾는 단계와: 상기 제4테이블로부터 수행될 프로그램 명령의 제5 그룹은 결정하는 단계와, 상기 프로그램 명령의 제5그룹의 제1프로그램 명령에 응답하여 상기 처리해서 제4작동을 수행하는 단계와, 상기 프로그램 명령의 제5그룹의 제2명령의 수행에 의하여 상기 비활성화 신호의 처리의 계속을 허용하는 단계와. 상기 비활성화 신호의 처리 계속을 허용함에 따라 프로그램 명령의 제1원고를 정화시키는 단계를 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  12. 제11항에 있어서, 상기 정화 단계가, 상기 유한 상태 머신 프로그램에 의하여 상기 확인 테이블이 각 셋트를 확인하는 단계의; 상기 제1프로그램 원고의 셋트의 명령 그룹에 대한 참조의 발생에 대하여 확인 테이블이 확인된 셋트내에서 각 테이블을 체크하는 단계와, 상기 확인된 테이블 셋트의 각각으로부터 프로그램 원고의 제1셋트의 명령의 확인된 그룹의 참조를 제거하는 단계를 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  13. 제10항에 있어서, 상기 비활성화 단계가 비활성화 신호를 발생하는 단계와 : 상기 비활성화 신호에 관련된 테이블의 현재 상태 셋트내에서 제5테이블을 찾는 단계와, 상기 상호 원고 선취를 사용하여 수행되는 제5테이블 내에 프로그램 명령의 제6그룹을 결정하는 단계와, 상기 처리내의 제5작동을 수행하도록 명령의 제6그룹을 수행하는 단계와, 상기 제6명령 그룹의 제2명령 그룹의 수행에 의하여 상기 상호 원고 선취에 따라 결정되는 바와같이 프로그램 명령의 다음 그룹의 수행을 금지하는 단계를 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  14. 제9항에 있어서, 상기 상호 원고 선취가 : 대응 원고와 테이블에 의하여 참조되는 프로그램 명령의 그룹에 대하여 확인 테이블의 각각을 확인하는 단계와 ; 원고가 선취를 가지는 순서대로 상기 확인된 테이블에서 상기 명령 그룹의 각각의 참조를 하는 단계를 포함하는 것을 특징으로 하는 실시간 처리 제어방법.
  15. 일련의 작동에 의해 예정된 음성 및 데이타 써비스를 수행하는 특성의 복수를 제공하는 비순서 언어프로그램에 의해 제어되는 컴퓨터에 의해 복수의 시스템 신호 및 복수의 시스템상태에 응답하여 음성 및 데이타 통신 시스템에서 특성 상호 작용을 제어하는 방법으로서 상기 프로그램은 개별 시스템 상태에 의해 제어되는 명령의 수행의 상기 그룹의 각각과 개별 작동을 수행하도록 독립된 명령 그룹을 가지는 상기 셋트의 각각으로 상기 특성의 각각을 수행하도록 명령의 셋트를 가기며 개별 시스템 신호 및 복수의 제어 구조는 상기 컴퓨터에 의해 유지되는 방법에 있어서, 예정된 특성 상호 작용의 선취권에 따라 시스템 신호 자극 및 동일한 시스템 상태에 응답하는 명령의 그룹에 제어 구조의 복수의 각각을 개별적으로 관련시키는 단계와, 상기 시스템의 제l시스템의 발생 및 현 시스템 상태에 응답하여 상기 제어 구조의 하나를 확인하는 단계와 상기 통신 시스템에서 제1특성 작동을 수행하도록 확인된 제어 구조에 의해 참조되는 고선취권을 가지는 명령 그룹을 수행하는 단계와, 고선취권 명령 그룹의 수행에 의하여 수행되도록 확인된 제어 구조에 의해 참조되는 제2선취권을 가지는 명령 그룹을 허용하는 단계와, 제3 고선취권을 가지는 명령 그룹의 수행을 봉쇄하기 위하여 제2선취권 명령 그룹의 한 명령의 수행에 의해 다음 순차 신호를 처리하도록 상기컴퓨터를 지시하는 단계를 포함하는 것을 특징으로 하는 특성 상호 작용 제어방법.
  16. 제15항에 있어서, 상기 제2선취권 명령 그룹을 포함하는 프로그램 명령의 셋트를 비활성화 시키는 단계와, 비활성화 되는 프로그램 명령의 상기 셋트에 따라 또한 상기 시스템 신호의 제1 신호에 응답하여 상기 통신 시스템에서 다른 특성 작동을 수행하기 위하여 확인된 제어 구조에 의해 참조되는 제3명령 그룹의 선취권을 수행하는 단계를 포함하는 것을 특징으로 하는 특성 상호 작용 제어방법.
  17. 제16항에 있어서, 상기 비활성화 단계가 상기 제2선취권 명령 그룹을 포함하는 상기 명령의 셋트를 설정하는 명령의 그룹에 대한 모든 참조를 상기 명령 구조의 복수로부터 제거하는 단계를 특징으로 하는 특성 상호 작용 제어방법.
  18. 제16항에 있어서, 상기 제어 구조는 상기 시스템의 하나에 관련되며 상기 제어 구조의 각각은 관련된 제어 구조의 시스템 상태에서 발생하는 상기 시스템 신호의 하나에 각각 관련되는 복수의 테이블을 포함하며, 상기 관련 단계는; 개별 명령 그룹이 응답하는 시스템 신호 및 상태에 대응하는 상기 테이블의 하나를 결정하는 단계와 ; 수행된 결정에 대하여 명령의 각 그룹에 대한 참조를 상기 테이블의 결정된 하나에 저장하는 단계를 포함하는 것을 특징으로 하는 특성 상호 작용 제어방법.
  19. 제18항에 있어서, 상기 비활성화 단계가 ; 비활성화 ㅅ니호를 발생시키는 단계와 ; 상기 비활성화 신호에 응답하는 명령 그룹을 포함하는 상기 명령 그룹내에 포함된 상기 테이블의 다른 하나를 탐색하는 단계와 ; 상기 한 시스템의 상태에서 비활성화 되는 명령의 제2 선취권 그룹을 포함하는 상기 명령 셋트를 표시하는 변수 신호를 저장하는 단계와 ; 상기 제2 선취권 명령 그룹에 의해 상기 비활성화 신호의 추후 처리를 정지시키는 단계를 포함하는 것을 특징으로 하는 특성 상호 작용 제어방법.
  20. 제19항에 있어서, 상기 비활성화 단계가 ; 현 시스템 상태에서 새로운 시스템 상태로 상기 시스템의 상태를 변원시키는 단계와 ; 상기 변수 신호의 존재에 따라 또한 상기 시스템 상태로 들어감에 따라 명령의 제2 선취권 그룹을 포함하는 명령의 ㅅ아기 셋트를 정화하는 단계를 포함하는 것을 특징으로 하는 특성 상호 작용 제어방법.
  21. 제15항에 있어서, 상기 제어 구조는 상기 시스템 상태의 하나에 관련되며 상기 제어 구조의 각각은 관련된 제어 구조의 시스템 상태에서 발생하는 상기 시스템 신호의 하나에 각각 관련되는 복수의 테이블을 포함하며, 상기 관련 단계가 ; 각 개별 그룹의 명령에 응답하는 시스템 신호 및 상태에 대응하는 상기 테이블의 하나를 결정하는 단계와 ; 수행된 결정에 대하여 명령의 그룹에 대한 참조는 상기 테이블의 결정된 하나의 저장하는 단계를 포함하는 것을 특징으로 하는 특성 상호 작용 제어방법.
  22. 제21항에 잇어서, 상기 허용 단계가 현 시스템 상태의 제어에서 포함된 명령의 제1 선취권 그룹을 포함하는 테이블로 부터 제2 선취권 명령 그룹에 대한 참조를 얻어내는 단계를 포함하며 ; 상기 제 2 선취권 명령그룹을 수행하는 단계를 포함하는 것을 특징으로 하는 특성 상호 작용 제어방법.
  23. 제22항에 있어서, 상기 지시단계가 상기 테이블이 제3선취권 명령 그룹에 대한 참조의 결정을 금지시키도록 상기 시스템 신호의 처리를 정지시키는 단계를 포함하는 것을 특징으로 하는 특성 상호 작용 제어방법.
  24. 저장된 프로그램을 수행하여 실시간 처리를 제어하는 컴퓨터 시스템에서 상기 처리는 복수의 상태의 하나를 가정하고 복수의 신호를 발생하며; 상기 프로그램은 예정된 시스템 상태 및 신호에 응답하여 상기 실시간 처리에 의해 수행되는 명령을 한정하는 상기 원고의 각각을 비순서 언어로 기입한 프로그램 원고를 포함하며 ; 상기 컴퓨터 시스템은 상기 처리로부터의 제1신호에 응답하여 상기 원고의 제1원고를 수행하여 상기 처리의 제1작동을 제어하며 ; 상기 컴퓨터 시스템은 상기 프로그램 원고의 제2원고의 수행을 금지시키도록 또한 상기 원고의 제2원고에 상기 신호의 통신을 봉쇄하도록 다음 순차 신호의 처리를 위해 상기 원고의 응답의 수행에 응답하며 ; 상기 컴퓨터 시스템은 상기 제1원고의 수행에 의해 상기 처리해서 제2작동을 제어하도록 상기 처리로부터 제2신호에 응답하며 ; 상기 컴퓨터 시스렘은 상기 제2신호에 응답하기 위하여 상기 원고의 제2원고를 가능화 하도륵 상기 제2원고에 제2신호의 통신을 허용하도록 제2신호에 응답하는 상기 제1원고에 의해 제어되는 것을 특징으로 하는 컴퓨터 시스템.
  25. 제24항에 있어서, 상기 프로그램은 상기 제1원고를 비활성화 시키는 상기 제3원고의 수행에 따라 상기 컴퓨터 시스템 및 상기 제3원고를 포함하며 ; 상기 컴퓨터 시스템은 상기 제1원고의 비활성화에 따라 상기 처리해서 제3작동을 제어하모록 상기 제2원고에 후자 신호를 통신하도록 상기 제1신호에 응답하는 것을 특징으로 하는 컴퓨터 시스템.
  26. 제25항에 있어서, 상기 프로그램은 상기 제4원고의 수행에 의하여 상기 시스템 컴퓨터 시스템에서 상기 제1원고의 원고를 활성화시키도록 제3신호에 응답하는 상기 컴퓨터 시스템 및 상기 제4원고를 포함하며 ; 상기 컴퓨터 시스템은 상기 제1원고의 활성화에 따라 상기 신호에 응답하여 상기 제2원고의 수행을 금지시키도록 제1신호에 응답하는 것을 특징으로 하는 컴퓨터 시스템.
  27. 제26항에 있어서, 상기 신호의 하나를 확인하는 복수의 테이블을 포함하며 상기 상태의 하나에 확인된 제어 구조의 복수를 저장하는 메모리리 수단을 포함하며 ; 상기 각 원고는 예정된 작동을 수행하도륵 예정된 상태 및 신호의 발생에 따라 가동되는 복수의 명령 그룹을 포함하며 ; 상기 프로그램은 상기 명령 그룹의 각 신호와 예정된 상태에 의해 한정된 바와같이 테이블의 각각에서 참조를 저장하도록 상기 원고의 모든 명령 그룹에 응답하는 관련 프로그램 루틴을 포함하며 ; 상기 프로그램은 상기 처리로부터 신호를 처리하도록 유한 상태 머신 프로그램을 포함하며 ; 상기 컴퓨터 시스템은 제1신호에 따라 확인된 후자 구조에서 현상태 및 테이블에 관련된 제1 제5구조를 결정하도록 상기 제1신호의 발생 및 상기 유한 상태 머신 프로그램 루틴의 수행에 응답하며 ; 상기 컴퓨터 시스템은 상기 제1작동을 수행하도록 상기 테이블내에 참조된 제l원고의 명령 그룹을 수행하도록 확인된 테이블의 상기 결정 및 상기 유한 상태 머신 프로그램 루틴에응답하며 ; 상기 컴퓨터 시스템은 상기 제2원고에 대한 제1신호의 통신을 방해하도록 상기 제l확인된 구조내에 테이블의 결정을 종결시키도록 상기 명령 그룹에서 명령의 하나의 수행에 응답하는 것을 특징으로 하는 컴퓨터 시스템.
  28. 제27항에 있어서 상기 컴퓨터는 상기 제 2 신호로 확인된 구조애에 제 2 테이블 및 상기 현 상태에 따라 확인된 제2 제5구조를 결정하도록 상기 제2원고 및 상기 유한 상태 머신 프로그램 루틴의 수행에 응답하며 ; 상기 컴퓨터 시스템은 상기 제 2 작동을 수행하도록 제 1원고의 명령 그룹의 다른 하나를 수행하도록 상기 제2테이블 및 상기 제2확인된 제5구조의 결정과 상기 유한 상태 어신 프로그램 루틴의 수행에 응답하며 ; 상기 컴퓨터 시스템은 상기 제2원고의 명령 그룹에 대한 참조를 찾도록 상기 제2테이블에서 추후탐색하기 위하여 유한 상태 머신 프로그램을 가능화시킴에 의하여 상기 제2원고에 상기 신호의 통신을 계속하도록 상기 제1원고의 명령의 다른 그룹의 명령의 하나를 수행하는 것에 응답하며 ; 상기 컴퓨터 시스템은 명령의 추후 그룹에 한정된 처리를 제어하도록 명령의 후자 그룹을 수행하도록 상기 제1원고의 명령그룹에 응답하는 것을 특징으로 하는 컴퓨터 시스템.
  29. 제28항에 있어서, 상기 프로그램은 상기 정화 프로그램 루틴의 수행을 가능화 하도록 상기 제3원고의 명령 그룹 및 상기 유한 상태 머신 프로그램 루틴의 수행에 응답하여 또한 정화 프로그램을 포함하며 ; 상기 컴퓨터 시스템을 상기 제1원고의 명령 그룹에 대한 참조를 상기 모든 테이블로부터 제거하도록 상기 정화 프로그램 루틴의 수행에 응답하는 것을 특징으로 하는 컴퓨터 시스템.
  30. 저장된 프로그램을 수행함에 의하여 통신 시스템에서 복수의 특성을 제어하는 컴퓨터로서 상기 시스템은 복수의 상태를 가지며 복수의 신호를 발생하며, 상기의 프로그램은 예정된 시스템 상태 및 신호에 응답하여 상기 시스템에서 수행되는 특성의 하나를 한정하는 상기 각 명령을 비순서 언어로 기재된 프로그램 원고를 포함하며 ; 상기 컴퓨터는 상기 시스템으로부터의 제1신호에 응답하여 상기 제1원고를 수행함에 의하여 상기 시스템에서 제1특성을 제어하며 ; 상기 컴퓨터는 상기 제2원고에 의해 한정된 특성의 제공을 금지하도록 또한, 제2원고에 대한 제2신호의 통신을 봉쇄하도록 다시 순차 신호를 처리하도록 상기 제1 원고의 수행에 응답하여 상기 컴퓨터 시스템은 상기 제1원고의 수행에 의해 상기 시스템에서 제2특성을 제어하도록 상기 시스템에서의 제2신호에 응답하며 ; 상기 컴퓨터는 제3특성을 제공하기 위하여 상기 제2신호에 응답하기 위하여 상기 제2원고를 가능화하도록 상기 제2원고에 대하여 제2신호의 통신을 허락하도록 제2신호에 응답하는 제1원고에 의해 제어되는 것을 특징으로 하는 컴퓨터 시스템.
  31. 제30항에 있어서, 상기 프로그램은 제3원고를 포함하여 상기 컴퓨터는 상기 제1원고를 비활성화 시키는 상기 제3원고에 의해 수행되며 ; 상기 컴퓨터는 상기 제1원고의 비활성화에 따라 상기 시스템에서 제4특성을 제어하도록 상기 제2명령에 후자 신호를 통신시키기 위하여 상기 제1신호에 응답하는 것을 특징으로 하는 컴퓨터.
  32. 제31항에 있어서, 상기 프로그램은 상기 제4원고를 포함하며 상기 컴퓨터는 상기 제1원고를 가동시키는 상기 제4원고를 수행하는 것을 특징으로 하는 컴퓨터.
KR1019860011123A 1985-12-23 1986-12-23 실시간 처리 제어 시스템 KR950004240B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US06/812,940 US4695977A (en) 1985-12-23 1985-12-23 Control of real-time systems utilizing a nonprocedural language
US85-812940 1985-12-23
US812940 1985-12-23

Publications (2)

Publication Number Publication Date
KR870006446A KR870006446A (ko) 1987-07-11
KR950004240B1 true KR950004240B1 (ko) 1995-04-27

Family

ID=25211040

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019860011123A KR950004240B1 (ko) 1985-12-23 1986-12-23 실시간 처리 제어 시스템

Country Status (6)

Country Link
US (1) US4695977A (ko)
EP (1) EP0228053B1 (ko)
JP (1) JP2674621B2 (ko)
KR (1) KR950004240B1 (ko)
CA (1) CA1253986A (ko)
DE (1) DE3688521T2 (ko)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5247693A (en) * 1985-10-08 1993-09-21 The Foxboro Company Computer language structure for process control applications and method of translating same into program code to operate the computer
US5371895A (en) * 1985-10-08 1994-12-06 The Foxboro Company Local equipment controller for computerized process control applications utilizing language structure templates in a hierarchical organization and method of operating the same
US4736320A (en) * 1985-10-08 1988-04-05 Foxboro Company Computer language structure for process control applications, and translator therefor
US4987492A (en) * 1987-09-28 1991-01-22 Stults Robert A User interface control for communication system
US4866763A (en) * 1988-08-17 1989-09-12 American Telephone And Telegraph Company, At&T Bell Laboratories Interexchange carrier automatic route selection system
US5054054A (en) * 1989-02-07 1991-10-01 International Business Machines Corporation Voice applications generator
US5036539A (en) * 1989-07-06 1991-07-30 Itt Corporation Real-time speech processing development system
FR2662278B1 (fr) * 1990-05-16 1992-07-24 Cit Alcatel Struture d'automate de traitement de donnees.
DE69133025T2 (de) * 1990-08-31 2002-11-21 Texas Instruments Inc Multiprozessorsystem
US5323452A (en) * 1990-12-18 1994-06-21 Bell Communications Research, Inc. Visual programming of telephone network call processing logic
US5311586A (en) * 1991-10-31 1994-05-10 At&T Bell Laboratories Dynamic routing-administration
DE69230905T2 (de) * 1991-06-28 2000-08-17 Ericsson Telefon Ab L M Anwendermodule in fernmeldevermittlungsanlagen
US5329582A (en) * 1991-10-31 1994-07-12 At&T Bell Laboratories Dynamic tone-administration
US5289535A (en) * 1991-10-31 1994-02-22 At&T Bell Laboratories Context-dependent call-feature selection
US5333188A (en) * 1991-10-31 1994-07-26 At&T Bell Laboratories Dialed number recognition arrangement
US5311584A (en) * 1991-10-31 1994-05-10 At&T Bell Laboratories Telecommunications call-processing arrangement
US5343517A (en) * 1991-10-31 1994-08-30 At&T Bell Laboratories Use-code based call-treatment selection
US5386464A (en) * 1991-12-19 1995-01-31 Telefonaktiebolaget L M Ericsson Feature control system utilizing design oriented state table language
US5317757A (en) * 1992-02-06 1994-05-31 International Business Machines Corporation System and method for finite state machine processing using action vectors
ES2145752T3 (es) * 1992-02-14 2000-07-16 Siemens Ag Procedimiento para ejecutar programas en un ordenador central conectado con un sistema de comunicacion.
US5412714A (en) * 1992-02-24 1995-05-02 At&T Corp. Mnemonic and synonymic addressing in a telecommunications system
US5404395A (en) * 1992-02-24 1995-04-04 At&T Corp. External-to-internal numbering plan aliasing
US5321743A (en) * 1992-02-24 1994-06-14 At&T Bell Laboratories Shared-tenant services arrangement providing numbering-plan independence and cross-plan access to tenant groups
US5299261A (en) * 1992-02-24 1994-03-29 At&T Bell Laboratories Arrangement for effecting segmentation of a dialed number
US5337351A (en) * 1992-02-28 1994-08-09 Nec America, Inc. Feature interaction arbitrator
EP0576864B1 (en) * 1992-06-30 2002-12-18 Siemens Information and Communication Networks, Inc. A call processing system
DE69332632T2 (de) * 1992-06-30 2003-06-26 Siemens Inf & Comm Networks Anrufverarbeitungssystem
WO1994005112A1 (en) * 1992-08-25 1994-03-03 Bell Communications Research, Inc. System and method for creating, transferring, and monitoring services in a telecommunication system
US5511116A (en) * 1992-08-25 1996-04-23 Bell Communications Research Inc. Method of creating and accessing value tables in a telecommunication service creation and execution environment
US5455853A (en) * 1992-08-25 1995-10-03 Bell Communications Research, Inc. Method of creating a telecommunication service template
US5463682A (en) * 1992-08-25 1995-10-31 Bell Communications Research, Inc. Method of creating user-defined call processing procedures
US5442690A (en) * 1992-08-25 1995-08-15 Bell Communications Research, Inc. Telecommunication service record structure and method of execution
US5781797A (en) * 1992-09-30 1998-07-14 Microsoft Corporation Method and system for configuring device driver by selecting a plurality of component drivers to be included in the device driver
US5448631A (en) * 1992-10-13 1995-09-05 U S West Advanced Technologies, Inc. Apparatus for handling features in a telephone network
CA2102868C (en) * 1992-11-11 1999-10-26 Joseph E. Bloom Device for programming script sets in a telephone system
CN1113302C (zh) * 1993-07-30 2003-07-02 佳能株式会社 通过通信线路控制设备的控制器和方法
US5657451A (en) * 1994-01-24 1997-08-12 Telefonaktiebolaget Lm Ericsson System for determining whether to accept new supplementary services based upon identified types of supplementary service interactions and identified supplementary service interaction criteria
SE502423C2 (sv) * 1994-02-15 1995-10-16 Ellemtel Utvecklings Ab System för hantering av interaktion mellan tilläggstjänster i ett telekommunikationssystem
US5588044A (en) * 1994-11-22 1996-12-24 Voysys Corporation Voice response system with programming language extension
US5852825A (en) * 1994-12-05 1998-12-22 Trimble Navigation Limited Form data message formatting method, program and system
US5740236A (en) * 1995-12-21 1998-04-14 Ericsson, Inc. System for providing feature services in a telecommunications system
US5717747A (en) * 1996-05-31 1998-02-10 Lucent Technologies Inc. Arrangement for facilitating plug-and-play call features
US6038309A (en) * 1996-06-13 2000-03-14 Northern Telecom Limited Apparatus and method for externally controlling processing of a service call
JP2001506028A (ja) * 1996-12-13 2001-05-08 メイヴス インターナショナル ソフトウェア,インコーポレイテッド コンピュータソフトウェアアプリケーションの開発および実行のための方法、システムおよびデータ構造
US6792600B1 (en) * 1998-05-14 2004-09-14 International Business Machines Corporation Method and apparatus for just in time compilation of instructions
US6424934B2 (en) 1998-05-18 2002-07-23 Solidum Systems Corp. Packet classification state machine having reduced memory storage requirements
CA2299639C (en) * 1999-03-05 2005-11-01 Mitel Corporation Adaptive rule-based mechanism and method for feature interaction resolution
DE19918506A1 (de) * 1999-04-23 2000-10-26 Bosch Gmbh Robert Verfahren zur Steuerung einer Datenverarbeitungsanlage und Datenverarbeitungsanlage
IL146539A0 (en) * 1999-05-18 2002-07-25 Solidum Systems Corp Packet classification state machine
US6349405B1 (en) 1999-05-18 2002-02-19 Solidum Systems Corp. Packet classification state machine
US7350202B2 (en) * 1999-05-18 2008-03-25 Welfeld Feliks J Method for re-programming a firmware state machine during execution
EP1250643A2 (en) * 1999-08-23 2002-10-23 Koninklijke Philips Electronics N.V. Generic interface for a software module
US20020157041A1 (en) * 2001-04-23 2002-10-24 Bennett David Charles Protocol parser-code generator
FR2841014B1 (fr) * 2002-06-18 2005-02-11 Canon Kk Procede et dispositif d'optimisation d'un programme informatique
US6889147B2 (en) * 2002-09-17 2005-05-03 Hydrogenics Corporation System, computer program product and method for controlling a fuel cell testing device
US6978224B2 (en) * 2002-09-17 2005-12-20 Hydrogenics Corporation Alarm recovery system and method for fuel cell testing systems
US7238079B2 (en) 2003-01-14 2007-07-03 Disney Enterprise, Inc. Animatronic supported walking system
US20040229954A1 (en) * 2003-05-16 2004-11-18 Macdougall Diane Elaine Selective manipulation of triglyceride, HDL and LDL parameters with 6-(5-carboxy-5-methyl-hexyloxy)-2,2-dimethylhexanoic acid monocalcium salt
WO2005028714A1 (en) * 2003-09-22 2005-03-31 Hydrogenics Corporation Apparatus and method for reducing instances of pump de-priming
US7373361B2 (en) * 2004-09-23 2008-05-13 Airclic, Inc. Mobile process automation method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2438536C2 (de) * 1974-08-10 1985-12-12 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V., 8000 München Multiprozessoranordnung mit räumlich verteilten Mikroprozessorstationen
BE876025A (nl) * 1979-05-04 1979-11-05 Bell Telephone Mfg Signaleringsstelsel
JPS5793449A (en) * 1980-12-02 1982-06-10 Fujitsu Ltd Program forming device
JPS58109941A (ja) * 1981-12-23 1983-06-30 Mitsubishi Electric Corp 手順監視制御装置
US4486830A (en) * 1982-03-30 1984-12-04 Cincinnati Milacron Inc. Programmable control apparatus and method
US4506346A (en) * 1982-12-01 1985-03-19 At&T Bell Laboratories Programmable cartridge telephone communication system
US4517637A (en) * 1983-04-21 1985-05-14 Inconix Corporation Distributed measurement and control system for industrial processes

Also Published As

Publication number Publication date
KR870006446A (ko) 1987-07-11
DE3688521T2 (de) 1994-01-13
JPS62221735A (ja) 1987-09-29
EP0228053A3 (en) 1988-06-22
DE3688521D1 (de) 1993-07-08
EP0228053B1 (en) 1993-06-02
CA1253986A (en) 1989-05-09
US4695977A (en) 1987-09-22
JP2674621B2 (ja) 1997-11-12
EP0228053A2 (en) 1987-07-08

Similar Documents

Publication Publication Date Title
KR950004240B1 (ko) 실시간 처리 제어 시스템
KR940009986B1 (ko) 실시간 시스템 제어
CA1254980A (en) Customer programmable real-time system
US4878240A (en) Multi-service telephone switching system
US5737403A (en) Interaction of routing features in a telephone system
JPH09509807A (ja) 電気通信ネットワークにおける鍵と錠を用いた追跡
JPH07321924A (ja) 呼カバー装置における暗黙主電話機アドレス方式
CA2055170A1 (en) Call forwarding system
US6243697B1 (en) Detecting service interactions in a telecommunications network
Ginsparg et al. Automatic Programming of Communications Software Via Nonprocedural Descriptions
JPS5821959A (ja) 自動ダイヤル方式
JPS61150557A (ja) 指定時間転送方式
JP4054294B2 (ja) 高度インテリジェントネットワーク及びサービス制御モジュール
JPH03106290A (ja) 電話システム
JP3280676B2 (ja) 提供目的別呼処理タスク取り出し方法
US20020067817A1 (en) Method and apparatusfor use with an intelligent network
JPS61208955A (ja) 不在転送方式
KR880012066A (ko) 전자교환기의 일제지령 통화방법
JPH0314395A (ja) 電話装置
JPH08204825A (ja) インテリジェントネットワークにおけるサービス競合制御方式
JPH04152743A (ja) 可変ダイヤル自動変更方式
JPS6179349A (ja) 指定時刻接続方式
JPH05219243A (ja) ボタン電話装置
KR19990034379A (ko) 사설 교환기의 호 대기 서비스 방법
JPH01311666A (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: 20020408

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee