KR0176674B1 - Cpu의 주변장치로의 데이타전송 제어방법 및 제어장치 - Google Patents

Cpu의 주변장치로의 데이타전송 제어방법 및 제어장치 Download PDF

Info

Publication number
KR0176674B1
KR0176674B1 KR1019960003759A KR19960003759A KR0176674B1 KR 0176674 B1 KR0176674 B1 KR 0176674B1 KR 1019960003759 A KR1019960003759 A KR 1019960003759A KR 19960003759 A KR19960003759 A KR 19960003759A KR 0176674 B1 KR0176674 B1 KR 0176674B1
Authority
KR
South Korea
Prior art keywords
bits
peripheral device
data
address
data bits
Prior art date
Application number
KR1019960003759A
Other languages
English (en)
Other versions
KR970062920A (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 김광호
Priority to KR1019960003759A priority Critical patent/KR0176674B1/ko
Publication of KR970062920A publication Critical patent/KR970062920A/ko
Application granted granted Critical
Publication of KR0176674B1 publication Critical patent/KR0176674B1/ko

Links

Classifications

    • 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/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/063Address space extension for I/O modules, e.g. memory mapped I/O

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)

Abstract

본 발명은 CPU의 데이타 비트의 갯수를 초과하는 갯수의 입력데이타 비트를 필요로 하는 주변장치로의 데이타전송 제어방법 및 제어장치에 관한 것으로서, 입력데이타 비트의 갯수의 부족분에 해당하는 추가 데이타 비트를, CPU가 상기 주변장치를 제어하기 위해 사용하는 어드레스 비트 중에서 취하여 구성하는 단계와; 추가 데이타 비트를 제외한 어드레스 비트를 통해 주변장치를 선택적으로 구동하기 위한 칩선택신호를 송출하여 주변장치를 구동시키는 단계와; 구성된 데이타 비트와 추가 데이타 비트를 통해 원하는 데이타를 송출하여 주변장치에 입력하는 단계를 포함하는 제어방법 및 이러한 방법을 수행하는 제어장치에 관한 것이다. 이에 의해, 처리시간의 지체가 일어나지 않고, 어드레스 관리가 크게 난해하지 않으며, 주변장치 제어상의 제한을 받지 않게 된다.

Description

CPU의 주변장치로의 데이타전송 제어방법 및 제어장치
제1도는 본 발명에 따른 데이타전송 제어장치에 대한 도면.
제2도는 2개의 랫치를 이용한 종래의 데이타전송 제어장치에 대한 도면.
제3도는 어드레스 비트를 이용한 종래의 데이타전송 제어장치에 대한 도면이다.
본 발명은 CPU의 주변장치로의 데이타전송 제어방법 및 제어장치에 관한 것이다.
CPU는 주로 I/O 디바이스에 해당하는 외부의 주변장치들과 데이타를 주고 받기 위해서 어드레스 비트와 데이타 비트를 사용한다. 어드레스 비트는 다수의 주변장치들 중 구동할 주변장치에 대한 선택 정보 및 주변장치가 메모리일 경우 메모리 내의 어드레스 정보 등을 가지고 있고, 데이타 비트는 해당하는 주변장치에 입력할 데이타를 송출한다. 이 경우, CPU가 송출하는 데이타 비트의 갯수와 주변장치가 받아들이는 입력데이타 비트의 갯수가 같을 때에는 별다른 문제가 발생하지 않으나, 다를 경우에는 이 갯수가 같도록 조절하는 것이 필요하다.
데이타 비트의 갯수가 입력데이타 비트의 갯수보다 많은 경우는, 데이타 비트 중 필요한 갯수의 데이타 비트만 사용하고 나머지 비트는 데이타로 사용하지 않는 방법에 의해 간단하게 조절이 된다. 그러나, 데이타 비트의 갯수가 입력데이타 비트의 갯수보다 작은 경우에는 조절이 난해하게 되므로, 이를 위한 종래의 제어장치가 제2도 및 제3도에 도시되어 있다.
제2도는 2개의 랫치를 이용한 종래의 데이타전송 제어장치에 대한 도면으로서, CPU(21)의 데이타 비트(D0∼D7)는 8비트이고, 어드레스 비트(A0∼A15)는 16비트이며, 주변장치(23)는 AD7545 D/A 컨버터를 예로 든 것으로서 주변장치(23)로의 입력데이타 비트(DB0∼DB11)가 12비트이다.
CPU(21)와 주변장치(23) 사이에는 두 개의 랫치(25,27)가 개재되어 있다. 상측 랫치(25)는 8비트 버퍼의 역할을 하고, 하측 랫치(27)는 4비트 버퍼의 역할을 한다. 8비트의 데이타 비트(D0∼D7)는 8비트 랫치(25)에 연결되고, 데이타 비트(D0∼D7) 중 하위 4비트(D0∼D3)는 4비트 랫치(27)에 중복되어 연결되어 있다. 16비트의 어드레스 비트(A0∼A15)는 어드레스디코더(22)를 거쳐 각 주변장치에 연결되어 있다.
어드레스 데이타가 어드레스디코더(22)에 입력되어 디코우딩이 되면, 그에 해당하는 주변장치의 칩선택단자가 ON되어 구동을 시작한다. AD7545(23)에 해당하는 어드레스 데이타가 송출되면 AD7545(23)의 칩선택단자(CS)가 ON되어 구동되기 시작하고, 어드레스디코더(22)의 Q출력은 8비트 랫치(25)를 구동하여 8비트의 데이타(D0∼D7)는 AD7545(23)의 하위비트(DB0∼DB7)로 입력된다. 한 클럭펄스 후에는 어드레스디코더(22)의출력에 의해 4비트 랫치(27)가 구동되어 데이타 비트(D0∼D7) 중 4비트 랫치(27)에 연결된 4개의 데이타 비트(D0∼D3)가 나타내는 데이타가 AD7545(23)의 상위비트(DB8∼DB11)로 입력되어 총 12비트의 데이타가 입력된다.
그런데, 이러한 방법은, 2회에 걸쳐 한 개의 데이타를 송출하고, 또 이를 위해서 별도의 랫치를 사용하며 각 랫치를 분리제어하여야 하므로, 프로그램적으로 비효율적이고 처리속도가 반으로 떨어지게 된다는 단점이 있다.
제3도는 어드레스 비트를 이용한 종래의 데이타전송 제어장치에 대한 도면으로서, 상대적으로 비트수가 많은 어드레스 비트(A0∼A15)를 입력데이타 비트로 사용하여 직접적으로 주변장치에 입력시키는 것이다. 어드레스 비트(A0∼A15)의 상위 4비트(A12∼A15)가 AD7545(33)를 구동하는 어드레스 데이타를 가지면, 어드레스디코더(32)에 의해 AD7545(33)가 구동되고, 16비트의 어드레스 데이타 중 AD7545(33)에 중복 연결되어 있는 12비트(A0∼A11)는 AD7545(33)의 입력데이타로 사용된다. 이러한 경우에는 한 번에 12비트의 데이타를 전송하므로, 시간적으로 제2도에서 설명한 장치보다 빠르게 된다.
그러나, 이러한 방법은 어드레스의 제어가 난해하다는 단점이 있다. 즉, 16비트가 표현할 수 있는 65536개의 어드레스 중 데이타 비트로 할당된 12비트에 해당하는 4096개의 어드레스를 별도로 관리해야 하는 것은 프로그래밍에 있어서 상당한 주의를 요하는 것이며, 또 이로 인해 프로그래밍상의 각종 모드를 적용함에 있어서 에러를 유발할 가능성이 높아져 사용할 수 있는 프로그래밍 모드에 제약을 받게 된다. 이로 인해, 다른 데이타의 관리나 I/O의 제어 기능이 포함된 시스템인 경우에는 프로그램이 복잡해져, 현실적으로 적용하기가 힘든 방법이다.
따라서, 본 발명의 목적은, 데이타 비트 전체와 어드레스 비트의 일부를 주변장치의 입력데이타 비트로 사용함으로써, 처리시간의 지체가 일어나지 않고, 어드레스 관리가 크게 난해하지 않으며, 어드레스 비트를 입력데이타 비트로 전용함에 따른 주변장치 제어상의 제한을 받지 않는, CPU의 주변장치로의 데이타전송 제어방법 및 제어장치를 제공하는 것이다.
상기 목적은, 본 발명에 따라, CPU의 데이타 비트의 갯수를 초과하는 갯수의 입력데이타 비트를 필요로 하는 주변장치로의 데이타전송 제어방법에 있어서, 상기 데이타 비트에 의한 상기 입력데이타 비트의 갯수의 부족분에 해당하는 추가 데이타 비트를, CPU가 상기 주변장치를 제어하기 위해 사용하는 어드레스 비트 중에서 취하여 구성하는 단계와; 상기 추가 데이타 비트를 제외한 상기 어드레스 비트를 통해 상기 주변장치를 선택적으로 구동하기 위한 칩선택신호를 송출하여 상기 주변장치를 구동시키는 단계와; 상기 구성된 데이타 비트와 상기 추가 데이타 비트를 통해 원하는 데이타를 송출하여 상기 주변장치에 입력하는 단계를 포함하는 것을 특징으로 하는 데이타전송 제어방법에 의해 달성된다.
또한, 본 발명에 따르면, CPU의 데이타 비트의 갯수를 초과하는 갯수의 입력데이타 비트를 필요로 하는 주변장치로의 데이타전송 제어장치에 있어서, 상기 데이타 비트로부터의 신호를 상기 주변장치에 입력시키는 데이타 버스와; CPU가 상기 주변장치를 제어하기 위해 사용하는 어드레스 비트 중의 일부를, 상기 데이타 비트에 의한 상기 입력데이타 비트의 갯수의 부족분에 해당하는 추가 데이타 비트에 입력시키는 추가 데이타 버스와; 상기 추가 데이타 비트를 제외한 상기 어드레스 비트로부터의 신호를 디코우딩하여 상기 주변장치의 칩선택단자에 입력시키는 어드레스디코더를 포함하는 것을 특징으로 하는 데이타전송 제어장치가 제공된다.
이하에서는 도면을 참조하여 본 발명을 상세히 설명한다.
제1도는 본 발명에 따른 데이타전송 제어장치에 대한 도면으로서, CPU(11)의 데이타 비트(D0∼D7)는 8비트이고, 어드레스 비트(A0∼A15)는 16비트이며, 주변장치(13)는 AD7545 D/A 컨버터를 예로 든 것으로서 주변장치(13)로의 입력데이타 비트(DB0∼DB11)가 12비트이다.
8비트의 데이타 비트(D0∼D7)는 AD7545(13)로의 입력데이타 비트로 사용되어 입력데이타 비트(DB0∼DB11)의 하위비트(DB0∼DB7)로 입력된다. 16비트의 어드레스 비트(A0∼A15)는 어드레스디코더(12)에 입력되어 주변장치(13)를 선택하여 구동하는 어드레스 및 주변장치가 메모리일 경우 메모리 내에서 억세스할 주소 등의 제어신호로 사용하며, 그 중 하위의 4비트(A0∼A3)는 입력데이타 비트(DB0∼DB11)의 상위비트(DB8∼DB11)로 중복 입력된다. 어드레스 데이타가 어드레스디코더(12)에 입력되어 디코우딩이 되면, 그에 해당하는 주변장치의 칩선택단자가 ON되어 구동을 시작한다.
AD7545(13)에 해당하는 어드레스 데이타가 송출되면 AD7545(13)의 칩선택단자(CS)가 ON되어 구동되기 시작하고, 8개의 데이타 비트(D0∼D7)와 4개의 어드레스 비트(A0∼A3)를 통해 12비트의 데이타가 입력데이타로서 AD7545(13)에 입력된다. 8개의 데이타 비트(D0∼D7)와 4개의 어드레스 비트(A0∼A3)에는 AD7545(13)에 입력할 데이타가 CPU(11)에 의해 미리 계산되어 있다.
예컨데, 16진법으로 표현된 세자리 숫자 123h를 입력하기 위해서는 12비트의 데이타 비트가 필요한데, 본 발명에서는 데이타 비트(D0∼D7)를 이용해서 23h를 나타내는 8비트 수를 구성하고, 어드레스 비트(A0∼A15)의 하위 4비트(A0∼A3)를 이용해서 1h를 나타내는 4비트 수를 구성하여, 각각 입력데이타의 하위비트(DB0∼DB7)와 상위비트(DB8∼DB11)로 사용하여 12진수를 구성한다.
이때, 어드레스 비트(A0∼A15)의 상위 12비트(A4∼A11)는 AD7545(13)의 칩선택단자(CS)를 ON시키도록 하는 어드레스 데이타를 어드레스디코더(12)에 송출한다. 만약, 어드레스 비트(A0∼A15)의 상위 12비트(A4∼A15)가 100h를 가리킬 경우에 AD7545(13)가 구동되도록 어드레스디코더(12)가 구성되어 있다면, 위의 경우 16비트의 어드레스 비트(A0∼A15)는 1001h를 나타내고 8비트의 데이타 비트(D0∼D7)는 23h를 나타내면 된다.
이러한 방법을 사용하면 어드레스 비트 중 4비트에 해당하는 16개의 어드레스만 별도로 관리하면 되므로, 프로그래밍상의 오류가 발생할 가능성이 적어 프로그래밍 모드의 제약을 덜 받게 된다.
본 발명에 따르는 상기와 같은 방법 및 장치는, 주변장치에서 요하는 입력데이타 비트의 비트수가 데이타 비트의 비트수보다 많은 경우, 에컨데 데이타 비트는 16비트이고 주변장치의 입력데이타 비트는 24비트인 경우 등에 광범위하게 적용할 수 있다. 이러한 방법은, 입력데이타 비트의 비트수가 데이타 비트의 비트수의 1.5배에 이를 경우가 가장 효율적으로 적용되며, 2배에 이를 경우에는 데이타 비트를 2번 송출하는 제1도와 같은 방법이 바람직할 수도 있다.
상기와 같은 CPU의 주변장치로의 데이타전송 제어방법 및 제어장치는, 데이타 비트 전체와 어드레스 비트의 일부를 주변장치의 입력데이타 비트로 사용함으로써, 처리시간의 지체가 일어나지 않고, 어드레스 관리가 크게 난해하지 않으며, 어드레스 비트를 입력데이타 비트로 전용함에 따른 주변장치 제어상의 제한을 받지 않는다는 장점을 가진다.

Claims (2)

  1. CPU의 데이타 비트의 갯수를 초과하는 갯수의 입력데이타 비트를 필요로 하는 주변장치로의 데이타전송 제어방법에 있어서, 상기 데이타 비트에 의한 상기 입력데이타 비트의 갯수의 부족분에 해당하는 추가 데이타 비트를, CPU가 상기 주변장치를 제어하기 위해 사용하는 어드레스 비트 중에서 취하여 구성하는 단계와; 상기 추가 데이타 비트를 제외한 상기 어드레스 비트를 통해 상기 주변장치를 선택적으로 구동하기 위한 칩선택신호를 송출하여 상기 주변장치를 구동시키는 단계와; 상기 구성된 데이타 비트와 상기 추가 데이타 비트를 통해 원하는 데이타를 송출하여 상기 주변장치에 입력하는 단계를 포함하는 것을 특징으로 하는 데이타전송 제어방법.
  2. CPU의 데이타 비트의 갯수를 초과하는 갯수의 입력데이타 비트를 필요로 하는 주변장치로의 데이타전송 제어장치에 있어서, 상기 데이타 비트로부터의 신호를 상기 주변장치에 입력시키는 데이타 버스와; CPU가 상기 주변장치를 제어하기 위해 사용하는 어드레스 비트 중의 일부를, 상기 데이타 비트에 의한 상기 입력데이타 비트의 갯수의 부족분에 해당하는 추가 데이타 비트에 입력시키는 추가 데이타 버스와; 상기 추가 데이타 비트를 제외한 상기 어드레스 비트로부터의 신호를 디코우딩하여 상기 주변장치의 칩선택단자에 입력시키는 어드레스디코더를 포함하는 것을 특징으로 하는 데이타전송 제어장치.
KR1019960003759A 1996-02-15 1996-02-15 Cpu의 주변장치로의 데이타전송 제어방법 및 제어장치 KR0176674B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019960003759A KR0176674B1 (ko) 1996-02-15 1996-02-15 Cpu의 주변장치로의 데이타전송 제어방법 및 제어장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019960003759A KR0176674B1 (ko) 1996-02-15 1996-02-15 Cpu의 주변장치로의 데이타전송 제어방법 및 제어장치

Publications (2)

Publication Number Publication Date
KR970062920A KR970062920A (ko) 1997-09-12
KR0176674B1 true KR0176674B1 (ko) 1999-05-15

Family

ID=19451343

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960003759A KR0176674B1 (ko) 1996-02-15 1996-02-15 Cpu의 주변장치로의 데이타전송 제어방법 및 제어장치

Country Status (1)

Country Link
KR (1) KR0176674B1 (ko)

Also Published As

Publication number Publication date
KR970062920A (ko) 1997-09-12

Similar Documents

Publication Publication Date Title
JPS5831431A (ja) インタ−フエ−ス回路
EP0120889A1 (en) Peripheral control device with direct memory access.
WO2002079971A1 (en) Programmable cpu/interface buffer structure using dual port ram
EP0306962A2 (en) Single-chip microcomputer
JPH07182277A (ja) コンピュータシステム、およびその中での直接メモリアクセス動作を制御するための方法
US4459662A (en) Microcomputer having ROM mass memory for downloading main RAM memory with microcomputer instructions
JPH0440734B2 (ko)
KR0176674B1 (ko) Cpu의 주변장치로의 데이타전송 제어방법 및 제어장치
KR920002831B1 (ko) 데이타 전송 제어 시스템
US5430844A (en) Communication control system for transmitting, from one data processing device to another, data along with an identification of the address at which the data is to be stored upon reception
KR900005547B1 (ko) 시퀀스 콘트로울러
US5588120A (en) Communication control system for transmitting, from one data processing device to another, data of different formats along with an identification of the format and its corresponding DMA controller
JPS6111873A (ja) 16ビツトマイクロプロセツサによる8ビツトおよび16ビツトの各周辺装置へのアクセス方法
KR0167644B1 (ko) 다수의 통신 전송 방식을 선택적으로 사용하기 위한 통신시스템
JPH0227696B2 (ja) Johoshorisochi
US5823871A (en) Interface control device for use with TV game equipment
US5301300A (en) Floppy disk drive controller with improved density select
KR100496479B1 (ko) 어드레스 신호 디코딩 회로
KR0119130B1 (ko) 12비트 아날로그/디지탈 변환장치를 이용한 데이타 처리장치
KR900005421B1 (ko) 데이터의 선택적 통신을 위한 버스시스템
CA1253257A (en) Microprocessor control system with a bit/byte memory array
KR20000065450A (ko) 버스 인터페이스 시스템과 이를 이용한 버스 인터페이스 방법
JP2905989B2 (ja) 入出力制御装置
KR19980083459A (ko) 데이터버스 사이즈 조정 장치
KR940004729B1 (ko) 8비트 및 16비트 공용의 인터페이스 장치

Legal Events

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

Payment date: 20091116

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee