KR100703450B1 - 씨.피.유의 로드를 줄이는 무선 단말기의 범용 입/출력부제어장치 및 방법 - Google Patents
씨.피.유의 로드를 줄이는 무선 단말기의 범용 입/출력부제어장치 및 방법 Download PDFInfo
- Publication number
- KR100703450B1 KR100703450B1 KR1020000054199A KR20000054199A KR100703450B1 KR 100703450 B1 KR100703450 B1 KR 100703450B1 KR 1020000054199 A KR1020000054199 A KR 1020000054199A KR 20000054199 A KR20000054199 A KR 20000054199A KR 100703450 B1 KR100703450 B1 KR 100703450B1
- Authority
- KR
- South Korea
- Prior art keywords
- fifo
- data
- uart
- terminal
- control unit
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
본 발명은 무선 단말기의 UART내 RX FIFO 데이터를 제어함에 있어서, 상기 RX FIFO 데이터의 저장상태를 가리키는 포인터값이 상기 RX FIFO 데이터의 출력을 요구하는 미리 설정된 기준값을 초과하는지 여부를 검사하는 과정과, 상기 포인터값이 상기 기준값을 초과하는 경우 상기 RX FIFO 데이터가 리드되도록 상기 단말기 제어부로 인터럽트 신호를 발생시켜는 과정과, 상기 RX FIFO의 상태를 표시하는 레지스터값 및 상기 RX FIFO 데이터를 16비트 데이터 버스에 실어 상기 단말기 제어부를 전송시키는 과정을 포함하여 구성함을 특징으로 한다.
무선 단말기, UART, RX FIFO,
Description
도 1은 종래 UART 제어장치의 회로 구성도,
도 2는 종래 UART에서 RX FIFO 데이터 처리 흐름도,
도 3은 본 발명의 실시 예에 따른 UART 제어장치의 회로 구성도,
도 4는 본 발명의 실시 예에 따른 UART에서 RX FIFO 데이터 처리 흐름도.
본 발명은 무선단말기에 구비되어 외부와 데이터를 송수신할 수 있는 범용 입/출력부(Universal Asynchronous Receiver Transmitter: 이하 "UART"라 함)에 관한 것으로, 특히 무선단말기 CPU의 로드를 줄이기 위한 16비트 데이터 버스 구조의 UART 제어장치 및 방법에 관한 것이다.
통상적으로, 무선단말기는 외부 장치와의 데이터 송/수신을 위하여 UART를 구비하고 있다. 상기 UART는 물리계층에서 시리얼 데이터 통신에 사용되며, 내부에 TX, RX FIFO(First Input First Output)를 구비하고 있어 송/수신 데이터량의 증가에 따라 내부 FIFO의 용량도 늘려서 설계되고 있다. 그런데 종래 UART에서는 FIFO의 크기가 증가함에 따라 인터럽트(Interrupt) 처리시간이 증가하는 문제점이 있었다.
도 1은 종래 무선 단말기의 UART 제어장치의 회로 구성을 도시한 것으로, UART 수신단으로 들어온 시리얼 데이터는 직렬/병렬 전환되어 병렬 데이터 형태로 RX FIFO(100)에 저장된다. 이때 RX FIFO 제어부(102)에는 저장된 데이터량을 나타내는 포인터가 있어서 포인터가 가리키는 수치가 RX FIFO(100)내 데이터 량을 나타내게 된다. RX FIFO제어부(102)는 상기 포인터값을 근거로하여 S/W(Software)에 의해 미리 설정된 값과 비교한 후, RX FIFO(100)의 상태를 알리는 신호를 출력시킨다. 즉 RX FIFO 제어부(102)는 상기 포인터의 수치가 미리 설정된 S/W설정값보다 커지면, 인터럽트를 발생시켜 상기 무선 단말기의 CPU(Central Processing Unit: 도시하지 않았슴)가 RX FIFO(100)의 데이터를 읽어갈 수 있도록 한다. 또한 상기 포인터값에 따라 현재 RX FIFO(100)내에 데이터의 존재를 알리는 식별자(RX_RDY)와 데이터의 부재를 알리는 식별자(RX_EMPTY)를 RX FIFO 상태 레지스터에 표시하여 CPU가 이를 알 수 있도록 한다.
도 2는 상기 종래 UART 제어장치에서의 RX FIFO 데이터 리드 처리 흐름을 도시한 것이다. 이하 상기 도 1 및 도 2를 참조하여 종래 UART 제어장치에서의 RX FIFO 데이터 리드 동작을 좀더 상세히 살펴보기로 한다. 먼저 상기한 바와 같이 RX FIFO 제어부(102)는 주기적으로 RX FIFO 포인터값과 미리 설정된 S/W 설정값을 비교하는데, 이때 만일 상기 포인터값이 상기 S/W 설정값보다 커지게 되는 경우 RX FIFO 제어부(102)는 상기 도 2의 (200)단계에서 이에 응답하여 (202)단계로 진행해서 인터럽트 신호를 발생시키게 된다. 그러면 단말기 CPU는 (204)단계에서 RX FIFO상태 레지스터값을 리드하여 RX_RDY가 "1"로 셋팅되어 있는 경우 RX FIFO(100)에 데이터 존재함을 인식한다. 이에 따라 CPU는 (206)단계에서 이에 응답하여 (208)단계로 진행해서 RX FIFO(100)로부터 데이터를 리드하게된다.
즉, 상기한 바와 같은 종래 UART 제어장치에서의 RX FIFO 데이터 리드 동작은 RX FIFO에 있는 하나의 데이터를 리드하기 위해서는 RX FIFO 상태 레지스터와 RX FIFO의 데이터를 모두 리드하여야 하였다. 따라서 RX FIFO용량이 증가함에 따른 인터럽트 처리시 RX FIFO를 리드하는 것은 다른 시스템에 대한 처리지연을 유발시키게 되는 문제점이 있었다.
따라서 본 발명의 목적은 무선 단말기의 UART에서의 데이터 처리를 16비트 데이터 버스로 처리하도록 함으로써 RX FIFO 데이터 리드 시간을 줄이도록 하여 단말기 CPU의 로드를 줄이기 위한 UART 제어장치 및 방법을 제공함에 있다.
상술한 목적을 달성하기 위한 본 발명은 본 발명은 무선 단말기의 UART내 RX FIFO 데이터를 제어함에 있어서, 상기 RX FIFO 데이터의 저장상태를 가리키는 포인터값이 상기 RX FIFO 데이터의 출력을 요구하는 미리 설정된 기준값을 초과하는지 여부를 검사하는 과정과, 상기 포인터값이 상기 기준값을 초과하는 경우 상기 RX FIFO 데이터가 리드되도록 상기 단말기 제어부로 인터럽트 신호를 발생시켜는 과정과, 상기 RX FIFO의 상태를 표시하는 레지스터값 및 상기 RX FIFO 데이터를 16비트 데이터 버스에 실어 상기 단말기 제어부를 전송시키는 과정을 포함하여 구성함을 특징으로 한다.
이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 상기 첨부 도면의 구성 요소들에 참조부호를 부가함에 있어서는 동일한 구성요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의하여야 한다. 또한 하기 설명 및 첨부 도면에서 구체적인 처리 흐름과 같은 많은 특정 상세들이 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있다. 이들 특정 상세들없이 본 발명이 실시될 수 있다는 것은 이 기술분야에서 통상의 지식을 가진 자에게 자명할 것이다. 그리고 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
도 3은 본 발명의 실시 예에 따른 무선 단말기의 UART 제어장치의 회로 구성을 도시한 것이다. 이하 상기 도 3을 참조하여 상기 UART 제어장치의 동작을 상세히 살펴보기로 한다. 먼저 상기 도 1에 도시된 바와 같이 종래 RX FIFO의 레지스터 비트가 8비트였던것에 반해 본 발명에서는 RX FIFO의 리드되는 레지스터 비트를 16비트로 확장한 버스구조를 구현하였다. 즉 하위 8비트에는 RX FIFO데이터 정보가 실리고, 상위 8비트에는 RX FIFO 제어부(300)에 의한 RX FIFO 상태 정보가 실리도록 구현하였다. 따라서 단말기 CPU에서는 UART 인터럽트 처리시 RX FIFO 상태 레지스터 및 RX FIFO 데이터를 한 번에 모두 읽어들일 수 있게 되어 인터럽트 처리시간을 종래보다 반으로 줄일 수 있게 된다.
이제 동작을 살펴보면, UART 수신단으로 들어온 시리얼 데이터는 직렬/병렬 전환되어 병렬 데이터 형태로 RX FIFO(306)에 저장된다. 이때 RX FIFO제어부(300)에는 저장된 데이터량을 나타내는 포인터가 있어서 포인터가 가리키는 수치가 RX FIFO(306)내 데이터 량을 나타내게 된다. RX FIFO제어부(300)는 상기 포인터값을 근거로하여 S/W에 의해 미리 설정된 값과 비교한 후, RX FIFO(306)의 상태를 알리는 신호를 출력시킨다. 즉 RX FIFO 제어부(300)는 상기 포인터값의 수치가 미리 설정된 S/W설정값보다 커지면, 인터럽트를 발생시켜 단말기의 CPU가 RX FIFO(306)의 데이터를 읽어갈 수 있도록 한다. 또한 상기 포인터값에 따라 현재 RX FIFO(306)내에 데이터의 존재를 알리는 식별자(RX_RDY)와 데이터의 부재를 알리는 식별자(RX_EMPTY)를 RX FIFO 상태 레지스터에 표시하여 CPU가 이를 알 수 있도록 한다. 특히, 이때 본 발명의 실시 예에서는 상기 RX FIFO 상태 레지스터내 RX_RDY와 RX_EMPTY의 레지스터값과 RX FIFO 데이터가 함께 16비트 데이터 버스 실려 무선 단말기 CPU로 제공됨으로써 CPU에서의 인터럽트 처리시간을 줄일 수 있게 된다.
도 4는 본 발명의 실시 예에 따른 UART 제어장치에서의 RX FIFO 데이터 리드 처리 흐름을 도시한 것이다. 이하 상기 도 3 및 도 4를 참조하여 본 발명의 실시 예를 상세히 설명한다.
먼저 RX FIFO 제어부(300)는 주기적으로 RX FIFO 포인터값과 미리 설정된 S/W설정값을 비교하게 되는데, 이때 만일 상기 포인터값이 상기 S/W설정값보다 커지게 되는 경우 RX FIFO 제어부(300)는 상기 도 4의 (400)단계에서 이에 응답하여 (402)단계로 진행해서 인터럽트 신호를 발생시키게 된다. 그러면 무선 단말기 CPU는 (404)단계에서 16비트로 인가되는 RX FIFO 상태 레지스터값과 RX FIFO 데이터를 동시에 리드하며, 이와 달리 RX FIFO 상태 레지스터의 RX_RDY 레지스터값이 "0"으로 될 때 즉, RX FIFO에 데이터가 존재하지 않게 될 때 인터럽트 처리루틴을 종료하게 된다.
따라서 상기한 바와 같이 본 발명에서는 UART 제어회로의 리드 레지스터 비트를 16비트로 확장함으로써 단말기 CPU가 RX FIFO 상태 레지스터값 및 RX FIFO 데이터를 동시에 읽어들일 수 있어서 RX FIFO에 대한 데이터 리드 시간을 줄일 수 있게 된다.
상술한 바와 같이 본 발명은 UART 제어회로의 리드 레지스터 비트를 16비트로 확장함으로써 단말기 CPU가 RX FIFO 상태 레지스터값 및 RX FIFO 데이터를 동시에 읽어들일 수 있도록 하여 RX FIFO에 대한 데이터 리드시간을 줄이며, 전체 시스템에서의 CPU 로드를 줄일 수 있게 되는 이점이 있다.
Claims (5)
- CPU 로드를 줄이는 무선 단말기의 UART 제어장치에 있어서,상기 무선 단말기와 외부 장치간에 송수신되는 데이터를 저장하는 RX FIFO 메모리부와,상기 RX FIFO 메모리부의 현재 데이터 저장상태를 가리키는 포인터값이 미리 설정된 기준값을 초과하는 경우 상기 단말기 제어부로 인터럽트 신호를 발생시켜, 상기 RX FIFO 메모리부의 저장 데이터가 단말기 제어부로 출력되도록 하는 RX FIFO 제어부로 구성됨을 특징으로 하는 CPU 로드를 줄이는 무선 단말기의 UART 제어장치.
- 제1항에 있어서, 상기 RX FIFO 제어부는,상기 인터럽트 신호 발생후 상기 RX FIFO 메모리부의 상태를 표시하는 레지시터값 및 상기 RX FIFO의 저장데이터를 16비트 데이터 버스에 실어 상기 단말기 제어부를 전송시킴을 특징으로 하는 CPU 로드를 줄이는 무선 단말기의 UART 제어장치.
- 제2항에 있어서, 상기 RX FIFO 제어부는,상기 RX FIFO 메모리부의 상태 레지스터값은 상기 16비트 데이터 버스의 하위 8비트에, 상기 RX FIFO의 저장데이터는 하위 8비트에 포함되도록 데이터 버스를 구성함을 특징으로 하는 CPU 로드를 줄이는 무선 단말기의 UART 제어장치.
- CPU 로드를 줄이는 무선 단말기의 UART 제어장치에서의 RX FIFO 데이터 제어 방법에 있어서,상기 RX FIFO 데이터의 저장상태를 가리키는 포인터값이 상기 RX FIFO 데이터의 출력을 요구하는 미리 설정된 기준값을 초과하는지 여부를 검사하는 과정과,상기 포인터값이 상기 기준값을 초과하는 경우 상기 RX FIFO 데이터가 리드되도록 상기 단말기 제어부로 인터럽트 신호를 발생시키는 과정과,상기 RX FIFO의 상태를 표시하는 레지스터값 및 상기 RX FIFO 데이터를 16비트 데이터 버스에 실어 단말기 제어부를 전송시키는 과정으로 구성됨을 특징으로 하는 방법.
- 제4항에 있어서,상기 16비트 데이터 버스의 상위 8비트에는 상기 RX FIFO 메모리부의 상태 레지스터값이 포함되며, 하위 8비트에는 상기 RX FIFO의 저장데이터가 포함되도록 구성함을 특징으로 하는 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000054199A KR100703450B1 (ko) | 2000-09-15 | 2000-09-15 | 씨.피.유의 로드를 줄이는 무선 단말기의 범용 입/출력부제어장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000054199A KR100703450B1 (ko) | 2000-09-15 | 2000-09-15 | 씨.피.유의 로드를 줄이는 무선 단말기의 범용 입/출력부제어장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20020021475A KR20020021475A (ko) | 2002-03-21 |
KR100703450B1 true KR100703450B1 (ko) | 2007-04-03 |
Family
ID=19688763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000054199A KR100703450B1 (ko) | 2000-09-15 | 2000-09-15 | 씨.피.유의 로드를 줄이는 무선 단말기의 범용 입/출력부제어장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100703450B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113419985A (zh) * | 2021-06-15 | 2021-09-21 | 珠海市一微半导体有限公司 | Spi系统自动读取数据的控制方法及spi系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5199105A (en) * | 1988-09-14 | 1993-03-30 | National Semiconductor Corporation | Universal asynchronous receiver/transmitter |
JPH05334230A (ja) * | 1992-05-29 | 1993-12-17 | Matsushita Electric Ind Co Ltd | デュアルポートメモリアクセス制御回路 |
EP0634722A2 (en) * | 1988-09-14 | 1995-01-18 | National Semiconductor Corporation | Universal asynchronous receiver/transmitter |
KR19990058634A (ko) * | 1997-12-30 | 1999-07-15 | 구본준 | 범용비동기송수신기의 인터페이스 장치 |
-
2000
- 2000-09-15 KR KR1020000054199A patent/KR100703450B1/ko not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5199105A (en) * | 1988-09-14 | 1993-03-30 | National Semiconductor Corporation | Universal asynchronous receiver/transmitter |
EP0634722A2 (en) * | 1988-09-14 | 1995-01-18 | National Semiconductor Corporation | Universal asynchronous receiver/transmitter |
JPH05334230A (ja) * | 1992-05-29 | 1993-12-17 | Matsushita Electric Ind Co Ltd | デュアルポートメモリアクセス制御回路 |
KR19990058634A (ko) * | 1997-12-30 | 1999-07-15 | 구본준 | 범용비동기송수신기의 인터페이스 장치 |
Non-Patent Citations (2)
Title |
---|
공개특허 제1999-58634호(1999.07.15) * |
일본공개특허공보 평05-334230호(1993.12.17) * |
Also Published As
Publication number | Publication date |
---|---|
KR20020021475A (ko) | 2002-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5978865A (en) | System for performing DMA transfers where an interrupt request signal is generated based on the value of the last of a plurality of data bits transmitted | |
KR20010041588A (ko) | 무선 통신용 오디오 장치 선택기 | |
US5367644A (en) | Communication system | |
US8230137B2 (en) | Network processor, reception controller and data reception processing method performing direct memory access transfer | |
JP2019197598A (ja) | 低電圧セキュアデジタル(sd)インターフェースのためのシステムおよび方法 | |
US5311510A (en) | Data storing system for a communication control circuit | |
KR100703450B1 (ko) | 씨.피.유의 로드를 줄이는 무선 단말기의 범용 입/출력부제어장치 및 방법 | |
US5737633A (en) | Serial data receiving device having a memory for storing a reception permit signal which enable or disable the device from hand-shaking with the transmitting device | |
JP2003023469A (ja) | 通信端末装置およびそのデータ送信方法 | |
KR20030033005A (ko) | 회로 장치 및 데이터 전달 방법 | |
US9274986B2 (en) | Data transmission circuit and data transmission method using configurable threshold and related universal serial bus system | |
KR100251747B1 (ko) | 휴대용 무선 단말기의 비휘발성 메모리 데이터 다운로드 장치 | |
EP1130859B1 (en) | Communication control device and method | |
WO2014016885A1 (ja) | 通信装置 | |
JPH09331370A (ja) | データ通信装置 | |
WO2002009405A2 (en) | Universal serial bus datapump command interpreter | |
US7873747B2 (en) | Device and method for transmitting data | |
JP7312022B2 (ja) | 通信装置、及び、通信方法 | |
US6885217B2 (en) | Data transfer control circuitry including FIFO buffers | |
US7890728B2 (en) | Memory interface device, memory interface method and modem device | |
JP2546218B2 (ja) | データ通信装置 | |
KR100290426B1 (ko) | 페이징송신기의 비동기직렬데이타 수신방법 | |
US20010029562A1 (en) | Inter-processor communication apparatus and method of mobile communication system | |
KR101065588B1 (ko) | 하드웨어 기반의 객체 교환(obex) 모듈, 그 모듈을 포함한 송수신 장치 및 그 프로토콜 모듈을 이용한 송수신 방법 | |
KR920000388B1 (ko) | 송·수신 데이타 충돌 감지회로 |
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: 20130227 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20140227 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20150226 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20160226 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |