KR0140451B1 - 가상무선 인터페이스 - Google Patents

가상무선 인터페이스

Info

Publication number
KR0140451B1
KR0140451B1 KR1019940704682A KR19940704682A KR0140451B1 KR 0140451 B1 KR0140451 B1 KR 0140451B1 KR 1019940704682 A KR1019940704682 A KR 1019940704682A KR 19940704682 A KR19940704682 A KR 19940704682A KR 0140451 B1 KR0140451 B1 KR 0140451B1
Authority
KR
South Korea
Prior art keywords
hardware
protocol
interface
function
predetermined
Prior art date
Application number
KR1019940704682A
Other languages
English (en)
Other versions
KR950702317A (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 KR950702317A publication Critical patent/KR950702317A/ko
Application granted granted Critical
Publication of KR0140451B1 publication Critical patent/KR0140451B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03JTUNING RESONANT CIRCUITS; SELECTING RESONANT CIRCUITS
    • H03J7/00Automatic frequency control; Automatic scanning over a band of frequencies
    • H03J7/18Automatic scanning over a band of frequencies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Transceivers (AREA)
  • Communication Control (AREA)

Abstract

통신장치(100)는 3개의 레벨과 적어도 하나의 기능과 적어도 하나의 프로토콜 포함하여 타 통신 장치들과 통신한다. 3개의 레벨은 상위 레벨인 사용자 인간 공학(302), 공통 레벨인 기능/프로토콜 레벨(310)과 하위 레벨인 하드웨어 플랫폼(318)이다. 기능/프로토콜 레벨(310)은 적어도 하나의 기능과 적어도 하나의 프로토콜을 제어한다. 사용자 인간 공학(302)은 기능/프로토콜 레벨(310)에 접속된 제1인터페이스(304)를 포함하여 사용자 인간 공학 레벨(302)이 기능/프로토콜 레벨에 영향을 미치지 않고 변화할 수 있게 한다. 하드웨어 플랫폼(318)은 기능/프로토콜 레벨(310)에 접속된 제2 인터페이스를 포함하여 하드웨어 플랫폼(318)이 기능/프로토콜 레벨(310) 또는 사용자 인간 공학 레벨(302) 영향을 미치지 않고 변화할 수 있게 한다.

Description

가상 무선 인터페이스가상 무선 인터페이스
[기술 분야]
본 발명은 일반적으로 마이크로 프로세서가 장착된 무선 통신 장치에 관한 것으로 특히 이 장치에 사용된 마이크로 프로세서의 아키텍쳐 및 운영 체제에 관한 것이다.
[발명의 배경]
컴퓨터는 통상적으로 특정 응용에 적합한 일련의 태스크를 실행한다. 태스크(task)는 데이터와, 그데이터를 처리하고 논리 기능을 실행하며 공지 시스템에서의 프로세스(process)에 필적하는 실행 절차의 자체 내장된 패키지로서 정의된다. 운영 체제 환경에서, 운영 체제는 소프트웨어 패키지내의 프로세스나 태스크들의 보조 관리(housekeeping)나 직접 제어를 제공한다. 이러한 프로세스 또는 태스크는 통상 하나 이상의 서브 루틴으로 구성된다.
프로세스내에서 데이터는 단지 그 프로세스만이 접근할 수 있고 외부로부터 즉 다른 프로세스가 접근하지 못하는 것이 바람직ㅎ. 프로세스는 오브젝트(objects), 모듈(modules) 또는 다른 상위 레벨 데이터 추상화의 구현에 이용된다. 통신 장치내에서, 기능, 제어와 하드웨어 플랫폼이 통상 하나의 프로덕트(product) 패밀리로부터 다른 패밀리로 변화하는 경우 상당한 디자인 오버헤드 없이 오브젝느, 모듈, 상위 레벨 데이터 추상화가 한 설계에서 다른 설계로 이전될 수 있는 완전한 이식성 프로세스(portable process0를 갖는 것이 바람직하다.
종래 기술의 한 공지 시스템은 시간 무감지 태스크를 처리하게 하는 백그라운드(background0 실행을 제공하는 다중 3레벨 마이크로 프로세서 무선 운영 체제를 구비한다. 포어 그라운드(foreground0 루틴에 의해 실시간 감지 태스크가 처리될 수 있다. 마지막으로 미드그라운드(midground) 실행이 이용되어 시간 감지 태스크의 처리를 가능케 한다. 이러한 시스템의 문제점은 모든 세그먼트가 상호 의존적이어서 한 세그먼트가 변화될 때마다 다른 세그먼트를 역시 변화할 수 밖에 없다는 점이다. 따라서, 세그먼트들 각각이 상호 동작하게 하기 위하여는 무관한 영역을 재설계해야만 한다는 점과 관련한 상당한 비용상의 불이익을 감안하여 이러한 변화들은 연기되는 경향이 있다. 게다가, 이러한 시스템들은 태스크의 시간 감도에 상당히 의존하므로 그 시간 감도에 기초하여 장치의 전체 동작을 지원할 것이다.
인터럽트에 의한 시간 감도에 기초하는 대신에 메시지 패싱(message passing)에 기초한 운영 체제가 개발되었다. 이러한 운영 체제에서 두 개의 프로세스가 메시지를 이용하여 데이터를 교환하거나 그렇지 않으면 통신한다. 또한 메시지는 하드웨어 투명성(transparency)이 달성되는 메커니즘을 제공한다. 시스템내의 임의 위치에 있는 프로세스는 시스템내의 다른 프로세스가 어떤 위치에 있든 그 프로세스의 명칭을 알고 있다면 그 프로세스로 메시지를 전송할 수 있다. 이런 방법은 아키텍처의 몇가지 문제점을 해결하지만 아키텍처의 이식성(portability)을 제공하지는 못한다.
따라서, 모든 새로운 무선 프로덕트에 대해 다양한 플랫품과 인간공학 수단을 갖는 공통 아키텍처를 이용함으로써 설계 시간을 감소시키고 설계 효율을 증대시키는 다양한 통신 장치용 아키텍처의 필요성이 대두된다.
[발명의 개요]
개략적으로 말하면 본 발명에 따라 적어도 하나의 기능(feature)과 적어도 하나의 프로토콜을 포함하여 다른 통신 장치와 통신하는 통신 장치가 개시된다.
이 통신 장치는 3개의 수단 즉, 기능/프로토콜 수단, 사용자 인간 공학 수단 및, 하드웨어 플랫폼을 포함한다. 기능/프로토콜 수단은 상기 적어도 하나의 기능과 적어도 하나의 프로토콜을 제어한다. 사용자 인간 공학 수단은 상기 기능/프로토콜 수단에 결합되어 상기 기능/프로토콜 수단에 영향을 미치지 않고 상기 사용자 인간 공학 수단이 변화될 수 있게 하는 제1인터페이스를 포함한다. 상기 하드웨어 플랫폼은 상기 기능/프로토콜 수단에 결합되어 기능/프로토콜 수단이나 사용자 인간 공학 수단에 영향을 미치지 않고 상기 하드웨어 플랫폼이 변화될 수 있게 하는 제2인터페이스를 포함한다.
[도면의 간단한 설명]
제1도는 본 발명에 다라 마이크로 프로세서로 제어되는 양 방향 무선 통신장치의 블록도이다.
제2도는 본 발명에 따라 제1도의 무선 통신 장치를 제어하는 제어 아키텍처를 도시한다.
제3도는 제2도의 제어 아키텍처의 대안적인 예시도이다.
쩨4도는 본 발명에 따른 기능 및 프로토콜 레벨 요소의 블록도이다.
제5도는 본 발명에 따른 하드웨어 플랫폼 요소의 블록도이다.
[바람직한 실시예의 상세한 설명]
제1도에는 본 발명에 따른 양 방향 무선 장치와 같은 무선 통신 장치(100)가 도시되어 있다. 장치(100)는 다양한 무선 하드웨어 소자 또는 하드웨어(220) 및 다른 논리 장치에 접속된 모토로라사의 MC 68HC11과 같은 마이크로 프로세서나 마이크로 컴퓨터(11)를 포함한다. 이 마이크로 컴퓨터(11)는 ROM(280) 및 RAM(210)을 포함한 내부 메모리 소자들, 입출력(I/O) 인터페이스(218), 직렬 통신 인터페이스(serial communications interface: SCI) 또는 하위 레벨 직렬 버스 조정기(24)를 구비하고 있다. 다른 논리 소자들로는 본 발명의 분야에서 공지되 ㄴ외부 메모리(12)와 지원 논리 회로(support logic)(13)가 있다. 바람직한 실시예에서는 최소 32 킬로 바이트의 rom(280)과 최소 8 킬로 바이트의 RAM(210)이 요구된다. 마이크로 컴퓨터(11)의 메모리 매핑이 이용가능하므로 사용 가능한 가상 ROM공간은 64킬로 바이트 이상이 될 수 있다.
본원 명세서에는 본 발명의 원리를 용이하게 이해할 수 있도록 가상 무선 인터페이스 표준(virtual radio interface standard; VRIS)을 개괄적으로 제시하고 있다. 이 표준의 여러 요소ㅔ 대한 상세한 설명은 이하에 기술한다. 일반적으로 VRIS는 무선 통신 장치내의 하드웨어와 소프트웨어 사이에 표준 인터페이스를 정의한다. VRIS는 서비스라 불리는 한 세트의 절차(procedure), 방법(method0 및 규칙9rule0을 정의하고 이런 서비스는 다양한 무선 통신 기능 및/또는 사용자 요건이 개발되면, 이 기능 및/또는 사용자 요건을 새로운 플랫폼(하드웨어)으로 이전시키려는 노력은 단지 정의된 표준과 호환 가능한 방식으로 새로운 하드웨어에 접근하는 서비스의 개발에만 제한된다. 무선 통신 장치들중에서 사용자 인터페이스의 유일성을 인식하면, VRIS는 또한 사용자 인터페이스 유일 코드와 플랫폼에서 공통인 코드를 분할하는 인간 공학 인터페이스를 정의한다. 제2도 및 3도는 VRIS의 기능과 그 다양한 레벨 및 인터페이스에 관한 도면이다.
양호한 실시예에서 VRIS는 실제 메모리 맵 및/또는 모델의 사양을 지정하지 않으나, 가능한 선택에 약간의 제한을 기한다. 가장 중요한 것은 계속적으로 이용가능하고 맵되는 ROM(280)의 공통 섹션이 존재해야 한다는 점이다. 성능의 관점에서 이 ROM(280)의 공통 섹션은 16킬로 바이트 바람직하게는 32킬로 바이트 이상인 대용량 블록이 되어야 한다. 이는 커널(230)과 적어도 무선 인터페이스 표준에서 정의된 각 서비스 호출에 대한 엔트리 어드레스 및 맵 루틴을 지원하기 위해 필요하다.
또한 통신 장치(100)는 안테너(82)로부터의 무선 주파수 신호를 수신하고 그 신호를 재생을 위해 RF 복조기(16)에 결합시키기 수신기(84)를 포함한다. 안테너(82)와 수신기(84)의 결합은 도시되지 않은 안테너 스위치르 ㄹ통해 이루어질 수도 있다. 보통 안테너 스위치들이 통신 장치에 사용되어 안테너를 송신기 또는 수신기에 선택적으로 결합시킨다. 복조기(16)의 재생 신호는 마이크로 컴퓨터(11)와 디코더(10)에 입력된다. 디코더(10)는 중계 아웃바운드 신호 워드(outbound signaling word : OSW) 정보와 같은 디지털 변조 데이터 또는 이중 톤 다중 주파수(Dual Tone MUltiple Frequency : DTMF)와 같은 아날로그 데이터를 복호화할 수 있다. 또한, 이러한 복호 기능은 마이크로 컴퓨터로 직접 수행될 수 있다. 복조기(16)로부터의 신호는 마이크로 컴퓨터(11)에 반송파 검출 정보(carrier detect information)를 제공하는 스위치 회로(60)에 결합된다.
복조기(16)의 복조 신호는 제3도의 기능/프로토콜 레벨(310)에 의해 조절되는 프로토콜중의 임의의 한 프로토콜에 속하는 제1표준 포맷을 포함한다. 복조기(16)의 출력은 디코더(10)를 거쳐 기능/프로토콜 수단 레벨(310)과 관련한 마이크로 컴퓨터(11)의 한 세그먼트와 결합한다. 기능/프로토콜 레벨(310)에서 복조 정보신호의 표준화된 포맷이 처리되어 제어 신호와 제2표준 포맷을 갖는 제2신호를 발생한다. 이 제2신호는 제2인터페이스(304) 및 상위 레벨 인터페이스 표준(306)을 거쳐 인간 공학/제어 레벨(302)에 결합된다. 인간 공학/제어 레벨(302)에서 이 제2신호의 제2표준 포맷이 처리되어 제2통신 장치에 의해 전송된 정보신호를 생성한다.
송신측에서, 송신기(80)는 안테너 스위치나 다른 공지의 결합기를 거쳐 안테너(82)에 결합된다. 송신기(80)로의 입력은 두 소스 즉, 마이크로폰(90) 또는 데치너 인코더(102)로부터 도달될 수 있다. 송신기(80)는 이러한 입력 신호를 이용하여 반송파 신호를 변조하고 그것으로 무선 주파수 통신 채널을 통한 전송을 준비한다. 대안으로서, 신호화 필터(19)를 포함하고 있는 인코더(102)는 직렬 주변 인터페이스(18)는 마이크로 컴퓨터(11)로부터의 Tx 인에이블 신호에 의해 인에이블된다. 송신 경로에서, 마이크로 컴퓨터(11)에 의해 국지적으로 발생된 정보 신호는 직렬 주변 장치 인터페이스(18)의 제어하에서 인코더(102)에 접속된다. 인간 공학/제어 레벨(302)은 인터페이스 레벨(304)과 상위 레벨 인터페이스 표준(306)을 사용하여 기능/프로토콜 레벨(310)에 결합된다. 기능/프로토콜 레벨(310)에서 정보신호의 프로토콜은 송신기(80)를 통한 전송을 위해 하드웨어 플랫폼(318)에 인터페이스되기 전에 변환된다.
또한, 마이크로 컴퓨터(11)는 직렬 주변 장치 인터페이스(18)를 거쳐 데이터 인코더(102)에 인에이블 신호를 제공함으로써 데이터 인코더(102)를 제어한다. 양호한 실시예에서, 통상 푸쉬 투 토크(Push-to-Talk: PTT)라 불리는 정상 접지 순간 스위치(120)가 전송 요청에 이용된다. 이 ㅣ스위치(120)르 ㄹ동작시켜 DC 공급원(130)에 의해 생성된 논리 하이를 마이크로 컴퓨터(11)의 I/O 포트(218)에 접속시키고 차례로 송신기(80)에 송신 인에이블 신호를 공급한다. 비록 디코더(10)와 인코더(102)가 무선 하드웨어 플랫폼(318)에 두 개의 분리된 블록으로 도시되어 있으나, 본 기술 분야에서 이들은 서로 결합되어 복조된 신호 및 정보 신호의 디코딩 및 인코딩 기능을 제공할 수 있는 인터페이스를 생성할 수 있음이 알려져 있다.
게다가, 조정기 전력 제어부(17)가 DC 공급원(130)에 결합되어 무선 통신 장치(100)의 다양한 소자들에 적절한 전력 레벨을 공급한다. 조정기 전력 제어부(17)는 D/A 변환기(22)로부터 제어 신호를수신한다. D/A 변환기(22)로의 디지털 신호는 직렬 주변 장치 인터페이스(Serial Peripheral Interface: SPI)(18)를 거쳐 신호 라인(51)을 통해 공급된다. 전술한 바와 같이 SPI(18)로의 입력은 마이크로 컴퓨터(11)로부터 라인(230)을 거쳐 공급된다.
기본적으로, 직렬 주변 장치 버스(230)는, 정보 표시용 디스플레이(160) 및 데이터와 제어 정보 입력용 키보드 또는 키패드(170)와 같은 주변 장치와, 무선 하드웨어 사이에 통신을 설정하는데 사용된다. 또한, 직렬 주변 장치 버스(230)는 무선 통신 장치(100) 외부의 접속기를 거쳐 외부 통신에 사용된다. 무선 통신 장치(100)는 이 외부 직렬 버스(230)를 통해 접근할 수 있는 오든 오퍼레이터 및 보조 선택 제어부를 포함하고 있어 장래의 확장이 용이하다. 이 직렬 버스(230)는 데이터가 송신되고 외부로부터 수신되는 물리적 매체이다. 직렬 통신 인터페이스(24)의 기능은 직렬 버스 정보와의 물리적 인터페이스를 제공하는 것이다.
마이크로 컴퓨터(11)는 무선 하드웨어(220)와 직접 인터페이스하고 특정 무선 장치와 관련한 많은 하위 레벨 태스크를 실행한다. 이러한 태스크는 합성기 제어(synthesizer control)(21), 전송 전력 레벨 제어(17), 음성 소거(audio muting)(40), 채널 주사 논리(26), 수신/송신 및 송신/수신 시퀀스 타이밍(260)과 하위 음성 신호 발생 및 검출(250)을 포함할 수 있다.
위와 같이 구성되는 마이크로 컴퓨터(11)는 무선 장치의 기능에 관한 정보를 수신하고 무선 장치의 동작 모드에 상당한 영향을 미친다. 예컨대, 트렁크된 통신 응용이나 모드에 있어서 마이크로 컴퓨터(11)는 필요한 소프트웨어 자원을 제공하여 다른 시그널링과 함께 트렁크된 제어국의 채널 할당과 채널 유지 정보와의 상호작용을 가능케한다. 한편, 종래 무선 동작으로 마이크로 컴퓨터(11)는 채널 주사 액티비티(activity), 우선 채널 주사 액티비티, 다른 신호화 동작을 지원할 것이다.
무선 소프트웨어내의 태스크는 마이크로 컴퓨터(11)내의 운영 체제에 의해 제어되거나 계획된다. 본 발명에 따른 소프트웨어 운영 환경에서 소프트웨어 운영체제는 모토롤라 마이크로 프로세서 mc68hc11용으로 개발되고 최적화된 무선 운영체제(Radio Operating System: ROS)이다. 이 운영 체제는 특히 양호한 모듈성을 달성하고 재이용을 증대시키는 무선 응용을 위해 설계되었다. 이 운영 체제는 본 발명의 제어 아키텍처를 포괄(overlie0하고, 일반적으로 이 운영 체제 태스크의 매니저 또는 스케줄러로서 역할한다. ROS 물리적 코드 오브젝트 모델에서, 이 시스템 구성은 태스크에 기초하고, 태스크 통신은 단순 메시지 모델을 통해 달성된다.
메시지(message)는 프로세스를 제어하거나 또는 그 프로세스에 동작 실행에 필요한 정보를 공급하는 데이터를 포함하는 일정 길이 버퍼이다. 그러므로, 이 버퍼는 프로세스 또는 태스크사이에서 정보, 파라미터 데이터, 또는 인수(argument)를 운반한다. 메시지에서, 헤더(header)는 송출부의 식별(ID)을 포함하여 수신 태스크에 메시지의 지향점을 통보하고 수시 태스크가 메시지내의 데이터를 적절히 해석하도록 한다.
프로세스 또는 태스크로 보내지는 메시지는 선입 선출(first-in first-out: FIFO) 형태 메시지 대기 행렬(queue)로 배열된다. 우선 순위 메시지가 수신기의 메시지 대기 형렬의 전면에 자동적으로 배치되는 우선 순위 대기 행렬 메커니즘이 존재한다.
모든 프로세스나 태스크는 참조될 수 있는 태스크 ID로 알려진 유일한 식별자를 갖는다. ID는 프로세스가 발생할 때 운영 체제에 의해 할당되고 이 운영체제에 의해 프로세스를 물리적으로 위치시키는데 이용된다. 이 체제에서 모든 프로세스 또는 태스크는 유일한 태스크 ID를 가진다. 메시즌 태스크 ID를 참조함으로써 태스크에 관련된다. 특히, 태스크 ID는 태스크 노드 또는 RAM(210)내의 태스크 제어 블록에 대한 포인터이다. 또한, 각 태스크마다 태스크나 프로세스를 유일하게 식별하는 유일한 태스크 명칭이 존재한다. 운영 체제는 태스크 ID 변환에 태스크 명칭을 제공한다.
제2도에는 본 발명에 따른 VRIS 기능에 기초한 3개의 계층 표준이 예시되어 있다. 파선은 VRIS 계층들 사이의 분할 즉 하위(270), 상위(390) 및 공통(290) 계층을 의미한다. 한 계층은 단순히 관련 프로세스 또는 태스크의 집합(예컨대 272, 282, 392)이다.
원은 이 체제의 계층 표현을 가능케하는 ROS 태스크 또는 한 세트의 ROS 태스크를 의미한다. 그래서,이 계층들은 태스크를 더 작고, 더 많은 운영가능한 서브 시스템으로 분할한다. 관련 태스크는 추상성 또는 기능성 레벨의 관점에서 유사한 기능을 수행한다.
VRIS의 기능성에 기초한 3계층 표준에서는 합성기 프로그래밍(21)과 같은 하드웨어 루틴, 인코더(102), 디코더(10)와 직렬 버스 조정기(24) 각각에 대한 하드웨어 인터페이싱(274, 276, 278)과 같은 시간 임계 기능이 하위 레벨 VRIS(270)를 형성한다. 따라서, 하위 레벨 태스크의 예로는 직렬 버스 명령 해석(278), 키패드 주사(170)와 같은 하드웨어 플랫폼(220)을 인터페이스하는 다른 태스크, 음성루팅(40)과 합성기 프로그래밍(21)이 있다.
무선 프로덕트들중에서 사용자 인터페이스의 유일성을 인지하면, VRIS 표준은 제어 또는 모델 유일 인간 공학 레벨을 상위 레벨 VRIS(390)로 정의한다. 상위 레벨 VRIS 계층은 키보드 기능, 볼륨 제어, 긴급키등과 같은 무선 장치의 사용자 인간 공학의 역할을 한다.
무선 장치와 무관한 또는 이력적으로 안정된 태스크(292)의 나머지 즉, 다양한 무선 기능, 사용자 요구, 통신 프로토콜은 공통 레벨 VRIS(290)내에서 그룹화된다. 따라서, 공통 레벨 태스크의 예로는 신호 인코딩(294) 및 신호 디코딩(296)에 대한 소프트웨어 인터페이스와 톤 생성 요구(299)가 있다. 이러한 요구들은 그들이 생성되는 하위 레벨(270)내의 톤 생성기(231)로 루트된다.
오퍼레이터 입력에 응답하는 태스크들은, 오퍼레이터에 의한 스위치 접 속의 감지와 같은 하위 레벨(270)내의 하드웨어에 의존하는 데이터 소스 태스크(272)와, 프레스된 스위치 정보의 수신에 응답하여 동작에 의해 선택된 무선 동작의 실행과 같은 상위 레벨(390)내의 하드웨어에 무관한 데이터 수신 태스크(392)로 한 번 더 분리된다.
일반적으로 소스(source)와 싱크(sink)는 각각 무선 소프트웨어 동작중에 생성되는 비동기 데이터의 생성부와 소모부이다. 특히, vris는, 비동기 방식으로 발생된 데이터를 수집 및 분배하는 방법으로, 가상 소스 또는 하드웨어에 의존하는 플랫폼(220)에 의해 포획된다.
다음에 가상 소스는 무선 플랫폼에 존재하는 실제 하드웨어에 무관한 하위 레벨 정보를 수신하는 메커니즘을 제공한다. 더욱이, 가상 소스는 하위 레벨 정보의 복사를 수신하고 요구에 따라 이 복사의 수신을 중단하는 다른 태스크용 수단을 제공한다. 이러한 복사 수신 메커니즘은 가상 소스에의 가입 (subscribing)으로 불린다. 하위 레벨 정보의복사는 ROS 메시지를 통해 가입자 리스트의 모든태스크로 전송된다. 가상 소스는 비동기적으로 수신된 데이터의 수집을 수행한다. 몇몇 경우에, 하위 레벨 VRIS는 데이터가 분배되기전에 데이터를 더 유용한 형태로 한 번 더 처리할 것이다. 따라서, 다른 형태의 데이터가 한 세트의 가상 소스에 논리적으로 수집된다.
VRIS 표준에 따라서, 공통 또는 상위 레벨의 프로세스 또는 태스크는 하위 레벨의 태스크와 직접적으로 통신할 수 없다. 하위 레벨 태스크와의 모든 통신은 나머지 소프트웨어로부터 하위 레벨의 실제 구현을 은폐하는 논리 인터페이스를 제공하는 하위 레벨 VRIS 정의내에서 이루어진다. 따라서, 하위 레벨로부터 상위 레벨 (390) 및 공통 레벨 (290)의 분리하는 것은 하위 레벨 인터페이스 (228)이다.
계층간의 분리를 확장하기 위하여 공통 레벨(290)로부터 상위 레벨(390)을 분리하는 상위 레벨 인터페이스(238)가 예시되어 있다. 다중 인터페이스의 이점은 코드의 재사용도(reusability)를 증대시키는 개선된 분할에 있다.
인터페이스 (228, 238)는 시스템내에서 한 태스크가 다른 태스크와 무관하게 설계되고 기록되게 하는 사전 정의된 기능 및/또는 메시지 포맷의 세트이다. 상위 레벨 인터페이스(238)의 구성은 사전 정의된 ROS 메시지(239)이며 이에 의해 인터페이스 양측에서 태스크들이 서로 통신할 수 있다. 태스크들을 연결하는 화살표를 갖는 실선(239)은 ROS 메시지가 한태스크로부터 다른 태스크로 전송됨을 의미한다.
하위 레벨 인터페이스(228)는 각 가상 소스 각각에 의해 정의되는 사전 정의된 ROS 메시지 포맷(229)을 포함한다. 부가적으로, 또한 하위 레벨 인터페이스 (228)는 인터페이스의 상위 및 공통 레벨측의 태스크들이 하위 레벨과 정보를 통신 할 수 있도록 하는 사전 정의된 VRIS 기능 호츨(227)을 포함한다. 기능 호출(227)은 하이픈 선으로 표시된다.
인터페이스 정의를 표준화하고 형식화함으로써 상위 레벨이나 공통 레벨의 태스크는 기존 하드웨어 플랫포에 무관한 인터페이스 정의를 사용하여 기록될 수 있다. 새로 설계된 태스크는 하위 레벨이 구현되는 정확한 방법과 무관하게 도니다.
이 고도의 독립성에 의해 인터페이스의 각 측면상의 소프트웨어의 재사용성이 향상된다.
하위 레벨 하드웨어 인터페이스(228)는 인간 공학(상위 레벨)(390)과 기능(공통레벨)(290) 레벨 또는 계층에 의해 사용된 소프트웨어 서비스 세트를 제공하여 하드웨어 플랫폼(220)과 통신하고 이를 제어한다. 표준 절차, 방법 및 규칙, 즉 하위 레벨 VRIS 서비스를 사용하여 다양한 무선 기능과 사용자 요구가 개발되는 경우, 새로운 무선 프로덕트를 수용하기 위해 이 기능이나 사용자 요구를 변화시키려는 노력은 정의된 표준과 양립할 수 있는 방식으로 새로운 하드웨어에 접근하는 서비스 예컨대 하위 레벨 호출의 개발로 제한될 것이다. 형태 및 인터페이스에 대한 VRIS 표준을 유지하는 기능 호출(227)은 ISR/구동기(440)(또는 스위치 센서) 및 /또는 서비스(222)와 함께 사용가능한 무선 장치에 무관한 소프트웨어의 사용을 통해 특정 무선 기능을 수행할 수 있는 소프트웨어 루틴이다.
흑색 수직바는 하위 레벨 인터페이스(228)의일부인 하위 레벨(LL-VRIS) 서비스를 표시한다. 하위 레벨 ㅍ갼 인터페이스의 하이픈 선이 향하는 부분은 싱크 (sink)이다. LL-VRIS 서비스는 싱크(222)가 될 수 있으며 이는 대응 LL-VRIS 기능중의 하나가 상위 레벨(390 또는 공통 레벨(290)의 태스크에 의해 호출되었음을 의미한다. 특정 무선 태스크를 포함하는 하위 레벨(270)은 공통 및/또는 상위 레벨 호출(227)로 제어된다. 명백하게 하위 레벨 서비스들은 공통 및 상위 레벨로부터의 다른 모든 호출 기능에 대해 가시적이어야 한다. 싱크에 의한 기능 호출에 응답하여, ROS 메시지(232)를 생성하는 하위 레벨 가상 소스 서비스는 싱크로부터의 실선 화살표의 검은 수직바로 표현된다.
본 발명의 원리를 더 잘 이해하기 위하여, 무선 통신 장치(100)의 다양한 레벨 사이의 인터페이스 메커니즘의 바람직한 실시예의 설명에 있어서 다른 접근법이 취해진다. 이 접근법은 통신 장치(100)의 다중 계층이 도시된 제3도에 제시되어 있다. 이러한 계층들은 중첩 영역에서의 혼란을 방지하기 위하여 서로 다른 참조 번호로 식별된다. 일반적으로 제2도 및 3도는 본 발며에 따른 VRIS 인터페이스를 도시한다. 이 도면들은 인터페이스 및 인터페이스 표준과 함께 다중 계층을 포함한다. 본 발명을 더 쉽게 이해할 수 있도록 두 도면들 사이의 정의 방식은 상이하다.
제3도의 아키텍처는 3개 레벨 즉, 하드웨어 플랫폼(318), 기능/프로토콜 레벨(310), 인간 공학/제어 레벨(302)을 도시한다. 이 레벨들은 전술한 하위, 공통, 상위 레벨에 대응한다. 이 아키텍처는 3개의 인터페이스 또는 데이터 번역기
(304,314,316)를 포함한다. 이 3개의 인터페이스의 상호 접속은 인터페이스간의 통신을 표준화하는두 인터페이스 표준(306,320)이며 따라서 3개의 레벨(302,310,318)이 된다. 상위 레벨 인터페이스(304)는 인간 공학/제어 레벨(302)과 기능/프로토콜 레벨(310) 사이에 제1표준 인터페이스(306)를 제공한다. 하위 레벨 인터페이스(314)는 기능/프로토콜 레벨(310)을 하드웨어 플랫폼(318)에 인터페이스하는 하위/중간 레벨 인터페이스 표준(320)을 제공한다. 인터페이스 표준(320)은 중간 인터페이스(316)에 의해 사용되어 하드웨어 플랫폼(318)과 인간 공학/제어 레벨(302)사이에 인터페이스를 제공한다. 이러한 다양한 인터페이스와 인터페이스표준에 의해 3 레벨(302,310,318)이 호환성 있게 된다. 즉, 인터페이스들이 유지되고 고정되는 한, 임의 레벨(302,310,318)은 이 레벨에서 다른 레벨로 대체될 수 있다. 이러한 호환성(portability)에의해 통신 장치(100)는 다른 레벨로의 변화를 요구하지 않고 다양한 레벨중의임의레벨을 변화시킬 수 있다. 한 레벨 즉 하드웨어 플랫폼(318)이 변화되어 새로운 운영 요구에 부합될 수도 있다. 새로운 하드웨어 플랫폼은 하위 및 중간 레벨(314,316)에 대한 적절한 인터페이스를 포함하여, 두 레벨(310,302)의 유사한 변화를 요구하지 않고 기능/프로토콜 레벨(310) 및 인간 공학/제어 레벨(302)과 통신할 수 있다.
기능/프로토콜 레벨(310)의 몇몇 기능은 단일 신호 기구내의 신호화 기능과 무선 장치와 무관한 기능 세트와의 상호 작용을 포함한다. 예컨대, 긴급 모드 (emergency mode)동안에는 무선 장치는 전달된 호출 경고 (Call alerts)에 응답하지 않는 것이 바람직하다. 이러한 기능은 기능/프로토콜 레벨(310)을 통해 제공된다.
기능 프로토콜 레벨(310)의 다른 기능은 신호화 사상 (signaling event0의 이력적으로 안정된 인간 공학에 대한 순간 톤 (momentary tone)을 생성하는 것이다.
상위 레벨 (302)은 부가적인 무선 특정 인간 공학적 피드백이 요구될 지라도, 공통 레벨(310)에 의해 처리되는 순간 신호들을 인식할 것이다. 예컨대, 주사중에 무선 장치가 우선 순위 채널상에서 뮤트되지 않을 때, 이 공통 레벨(310)은 신호음 (beep)을 발생할 것이다.
기능/프로토콜 레벨(310)은 상위 레벨(302)에 고정 인터페이스를 제시하는 충분한 실행 시간 구성 선택, 제어 및 출력을 제공하는 또 다른 기능을 갖는다.
이력적으로 이 기능은 상이한 무선 인간 공학 및 예기된 신규한 무선 인간 공학이 유일하지만 유사한 인간 공학적 요구를 실행할 수 있게 한다. 예컨대 전화 기능은, DTMF의 실제 다이얼 (live dial)이 수반되는 기능 등록에 대한 자동 전화 채널 접근을 허여하는 인터페이스, 또는 사용자가 전화걸 번호를 준비하는 인간 공학의 예비 다이얼 (pre-dial)형태를 제공해야 하며, 채널 접근과 다이얼링은 사용자가 번호를 입력한후 자동적으로 처리된다.
인터페이스 (304,314,316)와 인터페이스 표준(306,320)을 사용함으로써 통신 시스템(100)내에서 다양한 레벨을 변화시키는 태스크가 상당히 용이하게 된다.
아키텍처의 일부가 특정 동작 요구나 특성에 부합하도록 변화되어야 하는 경우 통신 장치의 전체 아키텍처를 더이상 변경시킬 필요가 없다.
인간 공학/제어 레벨(302)이 수행하는 몇몇 기능에는 무선 장치(100)의 디스플레이, 시각 표시기, 기계적 스위치 및 가청 톤의 인간 공학이 포함된다. 레벨(302)은 인간 공학적 입력에 기초하여 사용자가 요구한 사항을 완수하도록 기능/프로토콜 레벨(310)을 제어하는 또 다른 기능이 있다.
또한, 인간 공학/제어 레벨(302)에는 기능/프로토콜 계층(310)으로부터의 조건 및 사상(event)과 인간 공학적 상태 정보 및 다른 상위 레벨 인간 공학적 규칙 또는 조건의 결합에 기초하여 가시 및/또는 가청 피드백을 제공하는 기능이 있다.
본래 무선 특정 인간 공학적 정의에 의존하는 한 신호화 프로토콜 기능 세트내에서 또는 여러 신호화 프로토콜 기능 세트들에 걸쳐 기능들의 상호 작용을 정의하는 인간 공학적 규칙 또는 조건들도 레벨(302)에서 처리된다.
상위 레벨 인터페이스 표준(306)은 인간 공학/제어 레벨과 기능/프로토콜 레벨 각각의 인터페이스(304)에 의해 사용되는 통신 표준을 제공한다. 이 인터페이스 표준(306)은 레벨(302)과 레벨(310)사이의 중간 단계로 볼 수 있다. 이 두 레벨(302,310)중의 하나에 변화가 필요한 경우에 인터페이스 표준(306)은 레벨(302,310) 각각의 인터페이스 레벨(304)에서 유지되어야 한다. 인터페이스 표준(306)의 완전성 (integrity)을 유지함으로써 기능/프로토콜 레벨에 어떠한 영향도 미치지 않고 인간 공학/제어 레벨(302)의 변화가 실현될 수 있으며 그역도 가능하다.
유사하게, 인터페이스 표준(320)은 하드웨어 플랫폼(318)과 기능/프로토콜레벨(310) 및 인간 공학/제어 레벨(302)사이에서 각 인터페이스를 통해 중간 단계의 역할을 한다. 역시, 인터페이스 표준(302)이 유지되고 인터페이스(314,3160가 변화되지 않는 한, 3 레벨(302,310,318)중의 임의 레벨의 변화는 타 레벨을 변화시키지 않고 구현될 수 있다. 이는 단지 일부의 변화가 필요한 경우 여러 소자를 재설계할 때의 불필요한 시간과 자원을 감소시키므로 상당히 중요하다.
도시된 바와 같이 인간 공학/제어 레벨(302)은 키 해석(3022), 기능 제어(3024), 디스플레이 메시지(3026), 무선 모드(3028)와 번역기(3030)를 포함한다.
이 블럭들은 인간 공학/제어 레벨(302)의 다양한 기능을 제공한다. 키 해석(3022)에서는 디코더가 사용되어 사용자에 의한 키 입력이 판단된다. 양호한 실시예에서 마이크로 컴퓨터(11)는 키패드 입력을 디코딩한다. 키패드(170)는 직렬 부변장치 인터페이스(18) 및 버스(230)르 ㄹ거쳐 마이크로 컴퓨터(11)에 결합된다.
기능/제어(3024)에서, 특별한 통신 장치내에서 구현되는 특정 기능이 제어된다. 기능/제어(3024)는 사용자에게 기능/프로토콜 레벨(310)이 부여한 기능을 사용하는 인간 공학을 제공한다. 디스플레이 메시지 블럭(3026)은 디스플레이(160)상에 정보를 표시하는 수단을 제공한다. 데이터 입력시에 디스플레이를 요구하는 키패드 입력과 경고는 표시 요구 정보의 일부이다. 무선 모드(3028)는 무선 장치가 통상(conventional) 또는 중계 (trunking) 모드와 같이 여러 모드중의 한 모드로 동작할 수 있게 한다. 이러한 무선 모드들은 무선 통신 장치(100)의 실제 동작 모드이며 장치마다 상이하다. 번역기(30330)는 인터페이스(304)를 거쳐 기능/프로토콜 레벨(310)과 통신하기 적합한 상위 레벨 인터페이스 표준(306)으로 국지 생성정보를 번역 또는 해석하는데 이용된다. 또한 번역기(3030)를 사용하여 인터페이스(316)를 거쳐 하드웨어 플랫폼(318)으로 인터페이스시키는 하위 레벨 인터페이스 표준(320)으로 인간 공학/제어 레벨 정보를 번역한다.
블럭(3022,3024,3026,3028)은 인간 공학/제어 레벨(302)을 통해 사용자가 이용할 수 있는 몇가지 선택임에 유의한다. 인간 공학/제어 레벨(302)에 관련된 태스크는 블럭(3022,3024,3028)을 통해 실행된다. 본 발명의 양호한 실시예를 논의하기 위하여 이러한 블럭을 도입한 것이며 이에 의해 제한적으로 해석되어서는 안된다. 본 발명의 정신에서 벗어나지 않고 필요에 따라 추가적인 선택이 부가될 수 있음을 알 수 있다. 게다가, 유의할 것은 하드웨어 플랫폼(318)이 본 발명의 트랜스포터블 (transportable )디코더 수단을 제공한다는 점이다.
제4도에는 본 발명에 따른 기능/프로토콜 레벨(310)의 내부 요소가 도시되어 있다. 일반적으로, 2개의 서브레벨 즉 기능 레벨(402)과 프로토콜 레벨(410)이 도시된다. 제3인터페이스 표준(406)과 함께 제2중간 인터페이스(404)가 사용되어 서브레벨(402,410)사이를 인터페이스하고 통신을 제공한다. 다시 한번 제2표준 인터페이스(404)는 다른 레벨에 영향을 미치지 않고 프로토콜 레벨(410) 또는 기능 레벨(402)을 변화시킬 수 있다. 기능 레벨(4020은 하나 또는 그 이상의 내부 블럭을 사용하여 실현되는 복수의 태스크를 포함한다. 이러한 블럭들은 디스패치(4022), 호출 경고(4024), 전용 호출(4026)과 전화 상호 접속(4028)을 포함한다. 추가적인 태스크에 필요한 다른 요소들은 필요에 따라 기능 레벨(402)에 부가 될 수 있다.
전화 상호 접속(4028)에 의해 실행되는 태스크는 명칭이 암시하듯이 사용자로 하여금 전화 시스템과 상호 접속할 수 있도록 함으로써 무선 통신 장치(100)상에서 무선 주파수 통신 채널을 사용하여 전화 통신이 수행될 수 있도록 한다. 전용 호출(4026)은 무선 통신 장치(100)와 타 유사 프로덕트 사이에 전용 호출 통신을 가능케 한다. 한편, 호출 경고(4024)는 제2통신 장치가 통신 장치(100)를 페이지할 수 있게 한다. 이 기능은 전용 호출 기능의 경우 수신 호출에 즉시 응답해야 하는 것과 대조적으로 사용자로 하여금 편의대로 페이지에 응답할 수 있게 한다.
프로토콜 레벨(410)은 유사하게 MDC 프로토콜 블럭(4102), 통상 (conventional) 블럭(4104), 중계(trunking)블럭(4106) 및 보안(secure) 블럭 (4108)의 조합 또는 그중 하나에 의해 실행되는 복수의 태스크를 포함한다. 프로토콜 레벨(410)은 그 명칭이 암시하듯이 통신 장치(100)와 타 장치와의 통신에 이용되는 프로토콜을 공식화하는 역할을 한다. 보안 블럭(4108)은 통신 장치들과 무선 통신 장치(100)사이의 보안 통신을 제공한다. MDC 프로토콜은 이동 장치와 휴대용 무선 프로덕트 사이의 데이터 통신용으로 모토롤라가 개발한 프로토콜이다.
통산 및 중계 프로토콜은 본 기술 분야에 공지되어 있다. 통상 프로토콜은 중앙제어기를 사용하지 않는 통신 장치에 이용된다. 그러나, 중계 프로토콜은 중앙 제어기를 이용하여 장치사이의 호출을 제어하고 처리한다.
요약하면, 기능/프로토콜 레벨(310)은 기능 레벨과 프로토콜 레벨을 선택적으로 포함할 수도 있으며 이 두 레벨은 제3표준 인터페이스를 제공하는 제2중간 레벨 인터페이스를 거쳐 상호 접속된다. 이 표준 인터페이스에 의해 다른 레벨의 변화를 요구하지 않고 기능 또는 프로토콜 레벨의 변화가 가능케 된다.
제5도는 본 발명에 따른 하드웨어 플랫폼(318)의 내부 요소를 도시한다.
하드웨어 플랫폼(318)은 4개의 일반 세그먼트 즉, 무선 운영 체제(502), 하위 레벨 지원부(504), 인터럽트 조정기(506) 및, 커널(508)을 포함한다. 이러한 요소들은 집합적으로 동작하여 하드웨어 플랫폼(318)의 작동을 가능케한다. 커널(508)은 커널과 하드웨어 인터페이스를 제공하는데 사용된다. 커널(508)은 메모리 소자들(210,280)을 분할하여 다수의 버퍼나 ROM 뱅크를 생성하는 기능을 수행한다. 이러한 버퍼들은 마이크로 컴퓨터(11)를 포함한 다양한 요소에 사용되어 그 기능을 수행한다. 또한 커널(508)은 인간 공학/제어 수단(302)과 기능/프로토콜 수단(310)에 의해 실행되는 태스크를 스캐쥴링한다. 이 하드웨어 플랫폼(318)이 실행하는 태스크들은 또한 커널(508)에 의해 처리되고 스케쥴링된다. 인간 공학/제어레벨(302), 기능/프로토콜 레벨(310) 및, 하드웨어 플랫폼(318)에서 실행되는 태스크사이의 메시지 처리 역시 커널(508)의 역할에 포함된다. 커널(508)은 분할 메모리 장치로부터 3 레벨(302,310,318)에 의해 실행되는 태스크들 각각에 버퍼를 할당하는 버퍼 풀 관리자 (buffer pool manager)를 포함한다. 또한, 커널(508)에는 하드웨어 인터럽트가 발생할때 그 인터럽트를 조정하도록 되어 있는 제어 조정기가 포함된다. 또한, 커널은 하드웨어 플랫폼(318)을 표준 인터페이스(320)에 인터페이스시키는 하드웨어 인터페이스를 제공하는 역할을 한다. 말하자면, 하드웨어 플랫폼(318)과 두 레벨(302,310)간의 하드웨어 인터페이스는 커널(508)에 의해 수행된다. 설명한 바와 같이 커널(508)의 기능의 정의는 넓은 범위를 포괄한다. 커널환경과 그외 환경에서 이러한 기능의 정의는 하드웨어 플랫폼(318)의 동작을 이해할 수 있게 한다. 커널(508)외부의 태스크 처리에서 이러한 정의로부터의 작은 편차는 본 발명의 사상에서 벗어나지 않으며 따라서 한정적으로 해석되어서는 안도니다.
무선 운영 소프트웨어 (radio operation software: ROS)(502)는 태스크 스케쥴링 메시징, 버퍼 풀 관리, 태스크 타이밍과 메모리 할당을 지원한다. ROS(502)는 레벨(302,310,318)에서 실행되는 다양한 태스크의 스케쥴링을 결정한다. 내부 및 상기 3 레벨(302,310,318)사이의 통신 메시지 역시 ROS(502)가 처리한다.
버퍼 풀 관리자는 ROS(502)내에 위치하여 버퍼 풀 관리 태스크를 처리하는 커널(508)을 지원한다. 하위 레벨 지원(504)은 인코더, 디코더 및 번역기를 포함한다.
인코더는 하드웨어 플랫폼(318)으로부터 하위/중간 레벨 인터페이스 표준(320)으로 전송되는 메시지를 부호화한다. 디코더는 인터페이스 표준(320)으로부터 정보를 수신하고, 수신된 정보를 하드웨어 플랫폼(318)이 이해할 수 있는 언어로 변환시킨다. 인터럽트 조정기(506)는 통신 장치(100)의 동작에 공통된 모든 인터럽트를 조정한다.
본 기술분야에 숙련된 자는 커널(508)이 ROS(502)의 서브 섹션일 수 있다는 것을 이해할 수 있을 것이다. ROS(502)가 실행하는 많은 기능은 커널(508)에 의해 유사하게 실행될 수 있으며 그 역도 가능하다. 커널(508)의 기능을 식별하기 위한 분리 블럭을 이용하면 본 발명을 더 잘 이해할 수 있다.
유의할 것은 무선 통신 장치(100)의 다양한 요소와 관련하여 다양한 레벨(302,310,318)의 동작을 정의하려는 시도가 있어 왔지만, 몇몇 요소들은 다수의 동작에 사용되고 임의의 하나의 특정 레벨로 기능이 제한되지는 않는다는 점이다.
본 발명의 양호한 실시예의 설명을 통해 레벨(302,310,318) 각각의 기능이 무선 장치(100)의 하나 또는 그 이상의 요소로 이루어짐을 기술하고 있다. 핵심적인 기능 특성으로부터의 의도되지 않은 작은 차이가 있을 수 있다. 이하의 내용은 다양한 계층과 각 하드웨어 요소사이의 상호 의존성을 보다 명백히 이해할 수 있도록 제시된다.
일반적으로 디스플레이(160), 키패드(170), 예컨대 PTT(120)와 같은 임의 제어부와 관련한 기능 호출은 인간 공학/제어 레벨(302)의 일부로 볼 수 있다. 이니코더(102), 디코더(10), 합성기 프로그래밍(21)과 직렬 주변 장치 인터페이스와 관련한 이러한 기능 호출은 기능/프로토콜 레벨(310)의 경계에 포함된다. 다른 요소들은 임의의 한 레벨에 속하지 않는 일반적 기능을 제공한다. 요약하면, 각 레벨이 실행하는 태스크 및 기능호출은 장치(100)의 임의 요소를 이용할 수 있다. 이러한 요소들 각각의 동작이 계층들과 요소들 사이의 궁극적 관계를 정의한다. 이는 요소들, 프로토콜, 기능들 중의 어느 것이 다른 것의 변화를 요구하지 않고 변화될 수 있기 때문이다.
직렬 주변 장치 인터페이스(18)와 SCI(24)의 동작 프로그램을 단순히 변경함으로써 MC68HC11을 대신하여 다른 마이크로 컴퓨터가 사용될 수도 있다. 통신 장치(100)의 나머지 요소들은 인터페이스(304,314,316)와 인터페이스 표준(306,320)이 유지되는 한, 이 새로운 마이크로 컴퓨터와 인터페이스할 수 있다. 유사하게, 통신 장치(100)의 인간 공학 및 기능은 장치(100)의 다양한 요소들을 재설계하지 않고도 변화할 수 있다. 이러한 구성으로 새로운 프로덕트의 요구에 부응하기 위하여 전체 통신 장치(100)를 더 이상 재설계할 필요가 없다. 본 발명의 중요한 이점은 여러 요소들중에서 단지 한 요소의 변화를 수용하기 위한 여러 다른 소자들의 재설계의 필요성을 제거하여 설계 및 개발 시간을 감소시킨다는 점이다. 따라서, 본 발명의 교시에서 설명된 방식으로 통신 장치(100)의 아키텍처를 구성함으로써 다른 레벨에 영향을 미치지 않고 한 레벨상의 변화가 가능하게 된다.
요약하면, 본 발명의 한 특징으로 하드웨어 플랫폼을 포함하는 무선 통신 장치의 여러 부분 사이의 다수의 표준 인터페이스가 정의되어 현재 무선 통신 장치에 공통인 설계의 중복을 방지한다. 서비스라 불리는 한 세트의 절차, 방법 및 규칙이 이러한 인터페이스에 부가하여 정의되었다. 이러한 절차, 방법과 규칙은 무선장치 설계자에 의해 사용되어 여러 무선 기능 및/또는 사용자 요구를 개발한다.
이러한 인터페이스를 사용하여 무선 기능 및/또는 사용자 요구가 개발되면 이 기능 및/또는 사용자 요구를 새로운 플랫폼으로 이전하려는 노력은 정의된 인터페이스 표준과 양립하는 방식으로 새로운 하드웨어에 접근하는 서비스만을 개발하는 것으로 제한된다. 무선 통신 프로덕트 사이의 사용자 인터페이스의 유일성을 인지하기 위해, 이러한 인터페이스 표준은 플랫폼에 공통인 코드로부터 사용자 인터페이스 유일 코드를 분할하는 인간 공학 인터페이스를 정의한다.
아키텍처를 계층화할 경우, 한 레벨에서 다음 레벨로의 경계는 인터페이스 표준으로 정의된 서비스와 규칙의 세트이다. 이러한 인터페이스 표준이 정의하는 소프트웨어 환경은 우선 순위 태스킹 커널에 기초한다. 이 커널은 무선 운영 체제 (Radio Operation System: ROS)이다. 이 모델은 기능의 실시간 우선순위와 이 커널이 태스크 대 태스크 통신 메커니즘으 ㄹ지우너하는 방식의 엄격히 정의된 인터페이스의 모듈성을 지원한다. 이에 의해 다양한 플랫폼과 인간 공학에 이용될 수 있고 고도의 설계 효율성을 갖는 공통 아키텍처가 제공된다. 즉, 다른 계층에 영향을 미치지 않고 한 계층을 변화시키는 능력은 설계의 단순성과 효율성에 상당히 기여한다.

Claims (10)

  1. 복수의 동작 모드, 적어도 하나의 기능, 적어도 하나의 프로토콜 및, 키패드를 갖는 무선 주파수 통신 장치에 있어서, 적어도 하나의 마이크로 프로세서 및, 소정의 메모리 공간을 가지며 상기 마이크로 프로세서에 결합된 적어도 하나의 메모리 장치를 포함한 하드웨어 플랫폼과; 동적으로 변경될 수 없으며 각각이 소정의 일정 우선 순위를 갖는 소정의 제1복수 태스크를 가지되, i)키패드로 입력한 정보를 해석하는 해석기와, ii)상기 기능과 상기 복수의 동작 모드를 제어하는 제1제어기를 포함하는 인간 공학/제어 수단과; 동적으로 변경될 수 없으며 각각이 소정의 일정 우선 순위를 갖는 소정의 제2복수 태스크를 가지되, i)상기 인간 공학/제어 수단이 지시하는 대로 상기 기능을 실행하는 수단과, ii)원하는 프로토콜 메시지를 공식화하는 수단을 갖는 상기 적어도 하나의 프로토콜을 실행하는 수단을 포함하는 기능/프로토콜 수단과; 커널 및 동적으로 변경될 수 없으며 각각이 소정의 일정 우선 순위를 갖는 소정의 제3복수 태스크를 갖는 하드웨어 인터페이스를 제공하되, i)상기 메모리장치를 분할하여 복수의 버퍼를 발생하는 수단과, ii)상기 복수의 버퍼중 한 버퍼를 사용하여 상기 제1, 제2 및 제3복수 태스크들 사이의 메시지를 처리하는 메시지 조정기 수단과, iv)상기 복수의 버퍼들중 한 버퍼를 상기 제1, 제2 및 제3 복수 태스크들중 한 태스크에 할당하는 버퍼 풀 관리자와, v)하드웨어 인터럽트를 조정하는 인터럽트 조정기 수단과, vi)상기 하드웨어 플랫폼에 결합되어 상기 하드웨어 플랫폼으로부터의 신호를 표준 포맷을 갖는 신호로 변환시키는 하드웨어 인터페이스 수단을 포함하는 하드웨어 수단과; 상기 기능/프로토콜 수단과 상기 인간 공학/제어 수단중 어느 한 수단이 다른 한 수단의 변화를 요구하지 않고 선제(preemptive0 변화될 수 있도록 상기 기능/프로토콜 수단과 상기 인간 공학/제어 수단간에 제1표준 인터페이스를 제공하는 상위 레벨 인터페이스 수단과; 상기 기능/프로토콜 수단과 상기 하드웨어 수단중 어느 한 수단이 다른 한 수단의 변화를 요구하지 않고 선제 변화될 수 있도록 상기 기능/프로토콜 수단과 상기 하드웨어 수단간에 제2표준 인터페이스를 제공하는 하위 레벨 인터페이스수단과; 상기 제2표준 인터페이스를 사용하여 상기 인간 공학/제어 수단과 상기 하드웨어 수단간에 선제 통신을 제공하는 중간 레벨 인터페이스 수단;을 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
  2. 복수의 동작 모드, 적어도 하나의 기능, 적어도 하나의 프로토콜 및, 키패드를 가즌 무선 주파수 통신 장치에 있어서, 적어도 하나의 마이크로 프로세서를 포함하는 하드웨어 플랫폼과; 동적으로 변경될 수 없으며 각각이 소정의 일정 우선 순위를 갖는 소정의 제2복수 태스크를 가지되, i)상기 인간 공학/제어 수단이 지시하는 대로 상기 기능을 실행하는 수단과, ii)원하는 프로토콜 메시지를 공식화하는 수단을 갖는 적어도 하나의 프로토콜을 실행하는 수단을 포함하는 기능/프로토콜 수단과; 커널 및 동적으로 변경될 수 없으며 각각이 소정의 일정 우선 순위를 갖는 소정의 제3복수 태스크를 하드웨어 인터페이스를 제공하되, i)하드웨어 인터럽트를 조정하는 인터럽트 조정기 수단과, ii)상기 하드웨어 플랫폼에 결합되어 상기 하드웨어 플랫폼으로부터의 신호를 표준 포맷을 갖는 신호로 변환시키는 하드웨어 인터페이스 수단을 포함하는 하드웨어 수단과; 상기 기능/프로토콜 수단과 상기 인간 공학/제어 수단중 어느 한 수단이 다른 한 수단의 변화를 요구하지 않고 선제(preemptive0 변화될 수 있도록 상기 기능/프로토콜 수단과 상기 인간 공학/제어 수단간에 제1표준 인터페이스를 제공하는 상위 레벨 인터페이스 수단과; 상기 기능/프로토콜 수단과 상기 하드웨어 수단중 어느 한 수단이 다른 한 수단의 변화를 요구하지 않고 선제 변화될 수 있도록 상기 기능/프로토콜 수단과 상기 하드웨어 수단간에 제2표준 인터페이스를 제공하는 하위 레벨 인터페이스수단과; 상기 제2표준 인터페이스를 사용하여 상기 인간 공학/제어 수단과 상기 하드웨어 수단간에 선제 통신을 제공하는 중간 인터페이스 수단; 을 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
  3. 제2항에 있어서, 상기 적어도 하나의 마이크로 프로세서는 적어도 하나의 메모리 장치를 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
  4. 제3항에 있어서, 상기 하드웨어 수단은 상기 메모리 장치를 분할하여 복수의 버퍼를 발생하는 수단을 더 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
  5. 제4항에 있어서, 상기 하드웨어 수단은 상기 제1, 제2 및 제3 복수 태스크들을 스케쥴링하는 스케쥴링 수단을 더 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
  6. 복수의 동작 모드, 적어도 하나의 기능, 적어도 하나의 프로토콜 및 키패드를 갖는 무선 주파수 통신 장치에 있어서, 적어도 하나의 마이크로 프로 세서를 포함한 하드웨어 플랫폼과; 동적으로 변경될 수 없으며 각각이 소정의 일정 우선 순위를 갖는 소정의 제1복수 태스크를 갖는 인간 공학/제어 수단과; 동적으로 변경될 수 없으며 각각이 소정의 일정 우선 순위를 갖는 소정의 제2복수 태스크를 갖는기능/프로트콜 수단과; 커널 및, 동적으로 변경될 수 없으며 각각이 소정의 일정 우선 순위를 갖는 소정의 제3 복수 태스크를 갖는 하드웨어 인터페이스를 제공하는 하드웨어 수단과; 상기 기능/프로토콜 수단과 상기 인간 공학/제어 수단중 어느 한 수단이 다른 한 수단의 변화를 요구하지 않고 선제(preemptive0 변화될 수 있도록 상기 기능/프로토콜 수단과 상기 인간 공학/제어 수단간에 제1표준 인터페이스를 제공하는 상위 레벨 인터페이스 수단과; 상기 기능/프로토콜 수단과 상기 하드웨어 수단중 어느 한 수단이 다른 한 수단의 변화를 요구하지 않고 선제 변화될 수 있도록 상기 기능/프로토콜 수단과 상기 하드웨어 수단간에 제2표준 인터페이스를 제공하는 하위 레벨 인터페이스 수단과; 상기 제2표준 인터페이스를 사용하여 상기 인간 공학/제어 수단과 하드웨어 수단 사이에 선제 통신을 제공하는 중간 인터페이스 수단;을 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
  7. 제6항에 있어서, 상기 인간 공학/제어 수단은, i) 키패드로 입력한 정보를 해석하는 해석기와, ii) 상기 기능과 복수 동작 모드를 제어하는 제1제어기를 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
  8. 제6항에 있어서, 상기 기능/프포토콜 수단은, i) 상기 인간 공학/제어 수단이 지시하는 대로 상기 기능을 실행하는 수단과, ii) 원하는 프로토콜 메시지를 공식화하는 수단을 갖는 상기 적어도 하나의 프로토콜을 실행하는 수단을 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
  9. 제6항에 있어서, 상기 하드웨어 수단은, 상기 메모리 장치를 분할하여 복수의 버퍼를 생성하는 수단과; 상기 제1, 제2 및 제3 복수 태스크들을 스케쥴링하는 스케쥴링 수단과; 상기 복수의 버퍼중 하나의 버퍼를 이용하여 상기 제1, 제2 및 제3 봇수 태스크들 사이의 메시지를 조정하는 메시지 조정기 수단과; 상기 복수의버퍼중 한 버퍼를 상기 제1, 제2 및 제3 복수 태스크들중 하나에 할당하는 버퍼 풀 관리자와; 하드웨어 인터럽트를 조정하는 메시지 조정기 수단과; 상기 복수의 버퍼중 한 버퍼를 상기 제1, 제2 및 제3 복수 태스크들중 하나에 할당하는 버퍼 풀 관리자와; 하드웨어 인터럽트를 조정하는 인터럽트 조정기 수단과; 상기 하드웨어 플랫폼에 접속되어 하드웨어 플랫폼으로부터의 신호를 표준 포맷을 갖는 신호로 변환하는 하드웨어 인터페이스 수단을 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
  10. 복수의 동작 모드, 적어도 하나의 기능, 적어도 하나의 프로토콜 및, 키패드를 갖는 무선 주파수 통신 장치에 있어서, 적어도 하나의 마이크로 프로세서를 포함하는 하드웨어 플랫폼과; 동적으로 변경될 수 없으며 소정의 일정 우선 순위를 갖는 소정의 제1 복수 태스크를 갖는 인간 공학/제어 수단과; 동적으로 변경될 수 없으며 소정의 일정 우선 순위를 갖는 소정의 제2 복수 태스크를 갖는 기능 수단과; 동적으로 변경될 수 없으며 소정의 일정 우선 순위를 갖는 소정의 제3 복수 태스크를 갖는 프로토콜 수단과; 커널 및, 제4 복수 태스크를 갖는 하드웨어 인터페이스를 제공하는 하드웨어 수단과; 상기 기능 수단과 상기 인간 공학/제어 수단중 어느 한 수단이 다른 한 수단의 변화를 요구하지 않고 변화될 수 있도록 상기 기능 수단과 인간 공학/제어 수단사이에 제1표준 인터페이스를 제공하는 상위 레벨 인터페이스 수단과; 상기 프로토콜 수단과 상기 기능 수단중 어느 한 수단이 다른 한 수단의 변화를 요구하지 않고 선제 (preemptive) 변화될 수 있도록 상기 프로토콜 수단과 상기 기능 수단 사이에 제2 표준 인터페이스를 제공하는 제1 중간 레벨 인터페이스 수단과; 상기 프로토콜 수단과 상기 하드웨어 수단중 어느 한 수단이 다른 한 수단의 변화를 요구하지 않고 선제 변화될 수 있도록 상기 프로토콜 수단과 상기 하드웨어 수단 사이에 제3 표준 인터페이스를 제공하는 하위 레벨 인터페이스 수단과; 상기 제3 표준 인터페이스를 사용하여 상기 인간 공학/제어 수단과 상기 하드웨어 수단간에 통신을 제공하는 제2중간 레벨 인터페이스 수단;을 포함하는 것을 특징으로 하는 무선 주파수 통신 장치.
KR1019940704682A 1992-06-30 1993-06-02 가상무선 인터페이스 KR0140451B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US90696992A 1992-06-30 1992-06-30
US906969 1992-06-30
PCT/US1993/005306 WO1994000815A1 (en) 1992-06-30 1993-06-02 Virtual radio interface

Publications (2)

Publication Number Publication Date
KR950702317A KR950702317A (ko) 1995-06-19
KR0140451B1 true KR0140451B1 (ko) 1998-07-01

Family

ID=25423320

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940704682A KR0140451B1 (ko) 1992-06-30 1993-06-02 가상무선 인터페이스

Country Status (9)

Country Link
US (1) US5490275A (ko)
EP (1) EP0649545B1 (ko)
JP (1) JP3340740B2 (ko)
KR (1) KR0140451B1 (ko)
CN (1) CN1115804C (ko)
DE (1) DE69328865T2 (ko)
FI (1) FI946214A (ko)
TW (1) TW278291B (ko)
WO (1) WO1994000815A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6083270A (en) * 1995-03-24 2000-07-04 The Board Of Trustees Of The Leland Stanford Junior University Devices and methods for interfacing human users with electronic devices
US6064660A (en) * 1996-12-12 2000-05-16 Optimay Corporation GSM transceiver with portable protocol stack
US6212576B1 (en) 1997-01-27 2001-04-03 Optimay Corporation Operating system interface for use with multitasking GSM protocol stacks
SE512927C2 (sv) * 1997-01-30 2000-06-05 Ericsson Telefon Ab L M Trådlös terminal arbetande enligt fler än ett luftgränssnittsprotokoll
US6324588B1 (en) 1997-04-02 2001-11-27 Motorola, Inc. User interface control software for a communication device
US6256679B1 (en) 1997-12-23 2001-07-03 Simmonds Precision Products, Inc. Blackboard-centric layered software architecture for an embedded airborne fuel gauging subsystem
FI108478B (fi) * 1998-01-21 2002-01-31 Nokia Corp Sulautettu jõrjestelmõ
US6388561B1 (en) * 1998-04-30 2002-05-14 Micron Technology, Inc. Method and apparatus for remote data telemetry and point of sale method and apparatus
US6463089B1 (en) 1998-08-19 2002-10-08 Interair Wireless, Inc. Hybrid spread spectrum method and system for wirelessly transmitting and receiving wideband digital data
US6636899B1 (en) * 1998-09-24 2003-10-21 Xerox Corporation Architecture for software for remote maintenance of a machine such as a copier
US6920479B2 (en) * 1999-06-16 2005-07-19 Im Networks, Inc. Internet radio receiver with linear tuning interface
US7584291B2 (en) * 2000-05-12 2009-09-01 Mosi Media, Llc System and method for limiting dead air time in internet streaming media delivery
AU2001258671A1 (en) * 2000-05-17 2001-11-26 Adc Telecommunications Israel Ltd. Methods for modularizing network software
AU2001283579A1 (en) * 2000-08-21 2002-03-04 Yahoo, Inc. Method and system of interpreting and presenting web content using a voice browser
US7631088B2 (en) * 2001-02-27 2009-12-08 Jonathan Logan System and method for minimizing perceived dead air time in internet streaming media delivery
JP4218336B2 (ja) 2002-12-12 2009-02-04 ソニー株式会社 情報処理システム、サービス提供装置および方法、情報処理装置および方法、並びにプログラム
US9401822B2 (en) * 2005-06-09 2016-07-26 Whirlpool Corporation Software architecture system and method for operating an appliance exposing key press functionality to a network
US8886259B2 (en) 2007-06-20 2014-11-11 Qualcomm Incorporated System and method for user profiling from gathering user data through interaction with a wireless communication device
US8892171B2 (en) 2007-06-20 2014-11-18 Qualcomm Incorporated System and method for user profiling from gathering user data through interaction with a wireless communication device
US20110252423A1 (en) 2010-04-07 2011-10-13 Apple Inc. Opportunistic Multitasking
US8995966B2 (en) 2012-12-05 2015-03-31 Google Technology Holdings LLC Radio interface layer design for smartphones
US9336068B2 (en) 2013-06-07 2016-05-10 Apple Inc. Throttling of application access to resources

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4475156A (en) * 1982-09-21 1984-10-02 Xerox Corporation Virtual machine control
US4637022A (en) * 1984-12-21 1987-01-13 Motorola, Inc. Internally register-modelled, serially-bussed radio system
US5060140A (en) * 1986-01-16 1991-10-22 Jupiter Technology Inc. Universal programmable data communication connection system
US5060150A (en) * 1987-01-05 1991-10-22 Motorola, Inc. Process creation and termination monitors for use in a distributed message-based operating system
US5001666A (en) * 1987-10-19 1991-03-19 Motorola, Inc. Multiple interrupt tri-level microprocessor operating system
US5249270A (en) * 1991-03-29 1993-09-28 Echelon Corporation Development system protocol

Also Published As

Publication number Publication date
TW278291B (ko) 1996-06-11
CN1082278A (zh) 1994-02-16
EP0649545A4 (en) 1996-05-29
JP3340740B2 (ja) 2002-11-05
FI946214A (fi) 1995-01-23
KR950702317A (ko) 1995-06-19
EP0649545B1 (en) 2000-06-14
JPH07508607A (ja) 1995-09-21
EP0649545A1 (en) 1995-04-26
CN1115804C (zh) 2003-07-23
WO1994000815A1 (en) 1994-01-06
FI946214A0 (fi) 1994-12-30
DE69328865D1 (de) 2000-07-20
DE69328865T2 (de) 2000-12-07
US5490275A (en) 1996-02-06

Similar Documents

Publication Publication Date Title
KR0140451B1 (ko) 가상무선 인터페이스
AU575447B2 (en) Internally register-modelled, serially-bussed radio system
US4684941A (en) Method of communications between register-modelled radio devices
US5974136A (en) Apparatus for electronic exchange having a general-purpose bus separating the exchange unit and control unit
EP0649544B1 (en) Virtual data source for radio transceiver
WO1999066415A1 (en) Communication system and method for interfacing differing communication standards
WO1995026088A1 (en) Multi-media interface
JPH04167040A (ja) ネットワーク通信システム
KR19980063450A (ko) 데이터 통신 장치
US5363315A (en) Method of communications between and within virtual radio interface standard layers
KR100830532B1 (ko) 듀얼 모드를 지원하는 이동통신단말기 및 그 호 처리 방법
US5408661A (en) Communication processor
US5729601A (en) Electronic exchange apparatus having separated exchange unit and general-purpose control unit
EP1293893A2 (en) State-Transition-Matrix based generation of a computer program
JPH0918906A (ja) 交換システムの仮想端末制御装置
JPH06125357A (ja) 情報サービスシステム
CN211846747U (zh) 一种电梯终端
US5446679A (en) Method for an operator station to perform requested functions when a functions processor is unable
JPS615361A (ja) 通信インタフエイス回路
JP2825259B2 (ja) ファクシミリ装置及びファクシミリ蓄積交換装置
JP2874503B2 (ja) ユーザー・ユーザー情報のシステム内同報方式
Matteson Computer Processing for Data Communications
KR100241781B1 (ko) 맨머신인터페이스 공유형 이중모드 이동통신 단말기
KR0122450B1 (ko) 무선호출시스템에서 호처리능력 향상 방법
JPH04246754A (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: 20040113

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee