KR0169607B1 - 인터페이스 - Google Patents

인터페이스 Download PDF

Info

Publication number
KR0169607B1
KR0169607B1 KR1019950064357A KR19950064357A KR0169607B1 KR 0169607 B1 KR0169607 B1 KR 0169607B1 KR 1019950064357 A KR1019950064357 A KR 1019950064357A KR 19950064357 A KR19950064357 A KR 19950064357A KR 0169607 B1 KR0169607 B1 KR 0169607B1
Authority
KR
South Korea
Prior art keywords
signal
output
data
control logic
microprocessor
Prior art date
Application number
KR1019950064357A
Other languages
English (en)
Other versions
KR970049619A (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 KR1019950064357A priority Critical patent/KR0169607B1/ko
Publication of KR970049619A publication Critical patent/KR970049619A/ko
Application granted granted Critical
Publication of KR0169607B1 publication Critical patent/KR0169607B1/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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • 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/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0044Versatile modular eurobus [VME]

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)

Abstract

본 발명은 인터페이스에 관한 것으로, 더욱 상세하게는 80960마이크로프로세서(Intel 사)와 VME(Versa Module Europe)버스의 인터페이스에 관한 것이다. 이 인터페이스는, 데이터를 저장하거나 처리하는 방법이 서로 상반된 마이크로프로세서와 VME 버스 간에 타이밍 조절을 위한 인터페이스에 있어서; 상기 마이크로프로세서에서 출력된 바이트 단위의 데이터를 입력해서, 2비트의 데이터 크기신호(SIZ)에 따른 데이터와 2비트의 위치결정신호(LA)에 따른 데이터를 출력하는 제어로직부와; 상기 제어로직부의 출력신호를 입력해서 원하는 데이터 크기신호와 위치결정신호를 생성하기 위해 필요한 시간 동안 래치시켜서 출력하는 래치회로부로 구성한 것을 특징으로 한다.

Description

인터페이스
제1도는 본 발명에 따른 인터페이스의 회로도.
제2도는 제1도에 도시된 제어로직부의 상세 로직회로도.
제3도는 제2도의 진리표.
제4도는 제2도의 동작 타이밍도.
* 도면의 주요부분에 대한 부호의 설명
1 -21 : 앤드게이트 4, 9, 15, 22 : 오아게이트
100 : 제어로직부 200, 400 : D 플립플롭
300 : 멀티플렉서
본 발명은 인터페이스에 관한 것으로, 더욱 상세하게는 80960마이크로프로세서(Intel 사)와 VME(Versa Module Europe)버스의 인터페이스에 관한 것이다.
일반적으로 VME 버스는 마이크로프로세서 분야에서 가장 널리 쓰이는 버스 구조로, IEEE나 ICO(유럽)에서도 표준화되어 사용되고 있다. 상기 VME 버스의 특징은 크게 8비트, 16비트 32비트의 세가지 크기의 데이터버스와, 16비트 24비트 32비트 세가지 크기의 어드레스 버스를 가지고 있으며, 비동기 Interlock 방식의 데이터 전송방식을 채택하고 있으며, 디바이스간에 고속의 데이터 통신이 가능하고, 또한 멀티마스터 기능을 특징으로 들 수 있다.
그러나 이와 같이 마이크로프로세서 분야에서 사용되기에 적정하게 구현된 VME버스라 하더라도 상기 80960 마이크로프로세서와의 사이에는 하나의 문제점이 노출되었다.
그것은 상기 VME 버스가 데이터를 왼쪽에서 오른쪽으로 분류하는 Big Endian 구조를 가지고 있는 반면, 인텔(Intel)사에서 개발한 80960 마이크로프로세서는 데이터를 저장하거나 처리하는 방법에 있어서, 일반적으로 데이터를 오른쪽에서 왼쪽으로 분류하는 Little Endian 구조를 지니고 있다.
그래서 상기 80960 마이크로프로세서에서 상기 VME 버스 사용을 하고자 할 때, 상기 VME 버스에서 요구하는 타이밍 신호를 생성해 줄 수 있는 VME 버스 컨트롤러(VIC068A)와 상기 80960 마이크로프로세서 사이에 인터페이스가 필요하였다.
따라서 본 발명의 목적은 80960 마이크로프로세서와 VME 버스 컨트롤러 사이에 인터페이스를 제공함에 있다.
상기 목적을 달성하기 위한 본 발명에 따른 인터페이스는, 데이터를 저장하거나 처리하는 방법이 서로 상반된 마이크로프로세서와 VME 버스 간에 타이밍 조절을 위한 인터페이스에 있어서; 상기 마이크로프로세서에서 출력된 바이트 단위의 데이터를 입력해서, 2비트의 데이터 크기신호(SIZ)에 따른 데이터와 2비트의 위치결정신호(LA)에 따른 데이터를 출력하는 제어로직부와; 상기 제어로직부의 출력신호를 입력해서 원하는 데이터 크기신호와 위치결정신호를 생성하기 위해 필요한 시간 동안 래치시켜서 출력하는 래치회로부로 구성한 것을 특징으로 한다.
이하 첨부한 도면을 참조하여 본 발명에 의한 인터페이스를 상세히 설명한다.
제1도는 본 발명에 따른 인터페이스 회로도를 도시하고 있다.
도시된 제1도를 참조하여 본 발명의 구성을 설명한다. 80960 마이크로프로세서에서 출력되는 바이트(Byte) 단위로 데이터가 실리는 위치를 지시하는 4비트의 신호가 제어로직부(100)로 입력되고, 상기 제어로직부(100)에서 2비트의 데이터의 크기와(SIZ), 2비트의 데이터가 실리는 버스 상의 위치를 결정해 주는 신호(LA)로 생성되어 출력된다.
상기 제어로직부(100)에서 출력되는 2비트씩의 두신호는 VME 버스 상에 필요한 데이터 크기신호(SIZ)와 위치결정신호(LA)로 만들어 주기 위해서 필요한 시간 만큼 래치해 두기 위한 제 1 D 플립플롭(200)으로 입력됨과 동시에 멀티플렉서(300)로 입력된다. 그리고 상기 멀티플렉서(300)에서 출력되는 신호는 제 2 플립플롭(400)을 통해서 출력된다. 따라서 상기 제어로직부(100)에서 출력되는 신호는 두 개의 플리플롭을 거치면서 래치하도록 되어 있다.
제2도는 제1도에 도시된 제어로직부의 상세 로직회로의 일실시예를 도시하고 있다. 즉, 상기 제어로직부(100)로 입력된 4비트의 신호는 2비트의 데이터의 크기신호와(SIZ), 2비트의 데이터가 실리는 버스 상의 위치를 결정해 주는 신호(LA)로 생성되는데, 그 생성을 위한 로직 회로도의 일실시예이다.
그리고 제3도는 제2도의 진리표를 도시하고 있다. 따라서 상기 제2도의 로직 회로는 제3도의 진리표에 의해 구현되며, 상기 제2도외 다른 여러 방법에 의해서도 상기 진리표를 벗어나지 않는한 구현 가능하다.
즉, 2비트의 데이터의 크기신호(SIZ)는 제2도 (a)와 제2도 (b)에 의해 각각 생성되고, 2비트의 데이터가 실리는 버스 상의 위치를 결정해 주는 신호(LA)는 제2도 (c)와 제2도 (d)에 의해 생성된다.
구성은 도시되고 있는 바와 같이 80960 마이크로프로세서에서 출력되는 각각 4비트의 신호를 입력하는 앤드게이트(AND GATE)와, 상기 앤드게이트의 출력신호를 논리합 연산하는 오아게이트(OR GATE)로 구성된다. 각 로직의 상세한 입출력 구성은 이하 생략한다.
제4도는 제2도의 동작 타이밍도를 도시하고 있다.
이하 상기 구성으로 이루어진 본 발명의 인터페이스의 동작을 첨부한 타이밍도를 참조하여 상세히 설명한다.
80960 마이크로프로세서(도시하지 않음)로부터 로칼(Local) 버스(도시하지 않음) 상에 바이트 단위로 데이터가 실리는 위치를 지시하는 신호(BE)가 제어로직부(100)로 입력되면서 본 발명의 인터페이스가 동작하는데, 상기 인터페이스의 동작과 동시에 제4도의 (a)(b)에 도시된 로우(LOW) 상태의 신호가 상기 마이크로프로세서(도시하지 않음)에서 출력되어 본 발명의 인터페이스로 입력된다. 상기 제4도의 (b) 신호는 제어로직부(100)의 출력시점을 조절한다.
상기 신호(BE)를 입력한 제어로직부(100)는 제2도의 로직회로에 의해서 2비트의 데이터의 크기신호(SIZ)에 따른 데이터와 2비트의 데이터가 실리는 버스 상의 위치를 결정해 주는 신호(LA)에 따른 데이터를 생성한다. 즉, 상기 제어로직부(100)에서 출력되는 두 개의 데이터는 단지 데이터의 크기와 우치결정신호에 따른 데이터일뿐, VME 버스 컨트롤러(도시하지 않음)에서 원하는 크기의 신호는 아직 아니다.
그럼 여기서 상기 제2도의 (a)와 제2도의 (b)를 참조하여 상기 2비트의 데이터의 크기신호(SIZ)가 생성되는 과정을 설명한다.
제3도 진리표 상에서 첫행에 의한 신호(BE) 1110가 제어로직부(100)로 입력되면, 제2도의 (a)의 제 1 앤드게이트(1)의 출력은 로우(LOW ; 0)이 되고, 제 2 앤드게이트(2)의 출력도 로우(0), 제 3 앤드게이트(3)의 출력은 하이(HIGH ; 1)이 된다. 상기 제 3 개의 출력신호는 오아게이트(4)로 입력되어서, 논리합연산되어 하이(1)를 출력해서, 2비트 데이터의 크기신호(SIZ)의 첫 번째 비트 신호는 하이(1)가 출력한다.
그리고 제2도의 (b)로 신호(BE) 1110이 입력되면, 제 1 앤드게이트(5)는 로우(0)를 출력하고, 제 2 앤드게이트(6)는 하이(1), 그리고 제 3 앤드게이트(7)는 로우(0), 마지막으로 제 4 앤드게이트(8)는 로우(0)를 출력한다. 상기 4개의 출력신호는 오아게이트(9)로 입력되어서, 논리합 연산되어 하이(1)를 출력해서 2비트의 데이터 크기신호(SIZ)의 두 번째 비트 신호도 하이(1)가 출력한다.
이렇게 해서 상기 데이터의 크기신호(SIZ)는 (1 : 1)을 출력한다.
다음, 제2도의 (c)와 (d)를 참조해서, 2비트의 데이터가 실리는 버스 상의 위치를 결정해 주는 신호(LA)가 생성되는 과정을 설명한다.
신호(BE) 1110가 제어로직부(100)로 입력되면, 제2도의 (c)의 모든 앤드게이트(10, . . . , 14)는 로우(0)를 출력한다. 따라서 오아게이트(15)의 출력도 로우(0)가 된다. 그러므로 데이터가 실리는 버스상의 위치를 결정해 주는 신호(LA)의 첫 번째 비트는 로우(0)가 출력한다.
그리고 제2도의 (d)로 신호(BE) 1110이 입력되면, 제 1 앤드게이트(16)와 제 4 앤드게이트(19)는 하이(1)를, 나머지 네 개의 앤드게이트(17, 18, 20, 21)는 로우(0)를 출력한다. 이때 상기 6개의 앤드게이트의 출력신호를 논리합 연산하는 오아게이트(22)는 하이(1)를 출력해서 상기 위치 결정신호(LA)의 두번째 비트는 하이(1)를 출력한다.
이와 같이 해서 상기 위치 결정신호(LA)는 (0 : 1)을 출력한다.
더불어 제3도 진리표 상의 나머지 입력신호에 대해서도 제2도 상의 로직회로는 동작해서 적정신호를 출력하며, 그 과정에 대한 설명은 이하 생략한다.
한편, 상기 두 신호를 생성해 내는 로직회로(100)로 입력되는 신호(BE)는 80960 마이크로프로세서에서 나오는데 아주 짧은 시간 존재하기 때문에, VME 버스 컨트롤러로 보내서 VME 버스에 맞게 타이밍을 조절하기 위해서는 상기 제어로직부(100)에서 생성되어 출력되는 신호를 필요한 시간 만큼 래치시킬 필요가 있다. 즉, 상기 제어로직부(100)에서 출력된 데이터를 필요한 시간 만큼 래치시킨 후에 결정되는 신호가 VME 버스 컨트롤러에서 원하는 크기의 신호가 된다. 이 과정을 이하 설명한다.
상기 제어로직부(100)에서 출력되는 데이터는 멀티플렉서(300)로 출력됨과 동시에 제 1 D 플립플롭(200)으로 입력된다[제4도의 (e)]. 상기 제 1 D 플립플롭(200)은 외부에서 인가되는 제4도의 (c)에 도시된 /READY 신호를 클럭신호로 입력해서 동작하므로, 상기 /READY 신호가 입력될 때 입력되는 데이터를 출력한다.[제4도의 (g)] 상기 /READY 신호는 외부에서 사용자가 적절하게 사이클을 조작해서 입력되는 신호이다.
상기 멀티플렉서(300)는 상기 제어로직부(100)에서 출력되는 데이터와, 상기 제 1 D 플립플롭(200)에서 출력되는 데이터를 하나의 신호로 출력한다.[제4도의 (j)] 이때 상기 멀티플렉서(300)의 출력은 제4도의 (h)신호에 의해 제어되는데, 상기 제4도의 (h)에 도시된 신호가 하이상태 일때 제어로직부(100)의 출력신호를 선택하고, 로우상태 일 때 제 1 D 플립플롭(200)의 출력신호를 선택해서 출력한다. 그리고 상기 제4도의 (h)신호는 상기 (b)신호 첫 번째 로우신호의 라이징에지에서 로우신호로 변환되고, 제4도 (c)신호의 마지막 로우신호의 라이징에지에서 하이신호로 변환되도록 구성된다.
상기 멀티플렉서(300)에서 출력되는 신호는 제 2 D 플립플롭(400)으로 입력되고, 상기 제 2 D 플립플롭(400)은 제4도의 (a) 도시된 /ALE 신호와 (c)에 도시된 /READY 신호를 오아(OR) 연산된 신호를 클럭신호로 입력해서[제4도의 (k)] 클럭신호의 라이징에지에서 데이터를 출력한다.[제4도의 (l)]
상기와 같이 해서 출력되는 데이터의 크기신호(SIZ)와 위치결정신호(LA)는 VME 버스 컨트롤러(도시하지 않음)로 출력된다. 상기 VME 버스는 상기 데이터를 입력해서 스와핑 버퍼(Swapping Beffer), 아이솔레이션 버퍼(Isolation Buffer), VME버스 인터페이스버퍼 등을 적절히 제어하여 VME 버스 상에 데이터를 전송한다.
이상 설명한 바와 같이 본 발명에 따른 인터페이스는 80960 마이크로프로세서에서 VME 버스를 사용하고자 할때 두 장치 간에 엇갈린 환경을 일치시켜 주기 위한 타이밍을 조절하는 회로이다.
더불어 본 발명의 설명에는 첨부하지 않았지만, LITTLE ENDIAN 구조를 사용하는 인텔 계열사의 다른 68000, 68020 CPU에서도 본 발명과 같은 제어로직을 이용한 인터페이스를 사용해서 VME 버스 방식을 채택할 수 있는 효과가 있다.
상술한 바와 같이 본 발명에 따른 인터페이스는 서로 다른 환경의 마이크로프로세서와 VME 버스의 타이밍을 조절해 줄 수 있으므로서, 데이터의 정확한 전송을 위한 통신 분야에 매우 이로운 발명이다.

Claims (4)

  1. 데이터를 저장하거나 처리하는 방법이 서로 상반된 마이크로프로세서와 VME 버스 간에 타이밍 조절을 위한 인터페이스에 있어서; 상기 마이크로프로세서에서 출력된 바이트 단위의 데이터를 입력해서, 2비트의 데이터 크기신호(SIZ)에 따른 데이터와 2비트의 위치결정신호(LA)에 따른 데이터를 출력하는 제어로직부와; 상기 제어로직부의 출력신호를 입력해서 원하는 데이터 크기신호와 위치결정신호를 생성하기 위해 필요한 시간 동안 래치시켜서 출력하는 래치회로부로 구성한 것을 특징으로 하는 인터페이스.
  2. 제1항에 있어서; 상기 래치회로부는, 상기 제어로직부에서 출력되는 두 신호를 소정시간 래치시켜서 출력하는 제 1 래치수단과; 상기 제어로직부의 출력신호와 상기 제 1 래치수단의 출력신호를 입력해서 하나의 신호로 출력하는 멀티플렉서와; 상기 멀티플렉서의 출력을 입력해서 다시 소정시간 래치시켜서 출력하는 제 2 래치수단으로 구성된 것을 특징으로 하는 인터페이스.
  3. 제2항에 있어서; 상기 제 1, 2 래치수단은 D 플립플롭으로 구성한 것을 특징으로 하는 인터페이스.
  4. 제3항에 있어서; 상기 제어로직부는 상기 마이크로프로세서에서 출력하는 바이트 단위의 신호를 입력하는 다수개의 앤드게이트와, 상기 앤드게이트의 출력을 논리합 연산하는 오아게이트로 구성한 것을 특징으로 하는 인터페이스.
KR1019950064357A 1995-12-29 1995-12-29 인터페이스 KR0169607B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019950064357A KR0169607B1 (ko) 1995-12-29 1995-12-29 인터페이스

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019950064357A KR0169607B1 (ko) 1995-12-29 1995-12-29 인터페이스

Publications (2)

Publication Number Publication Date
KR970049619A KR970049619A (ko) 1997-07-29
KR0169607B1 true KR0169607B1 (ko) 1999-01-15

Family

ID=19446874

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950064357A KR0169607B1 (ko) 1995-12-29 1995-12-29 인터페이스

Country Status (1)

Country Link
KR (1) KR0169607B1 (ko)

Also Published As

Publication number Publication date
KR970049619A (ko) 1997-07-29

Similar Documents

Publication Publication Date Title
EP0666541A1 (en) Apparatus and method for operating chips synchronously at speeds exceeding the bus speed
EP0238090A2 (en) Microcomputer capable of accessing internal memory at a desired variable access time
US4835414A (en) Flexible, reconfigurable terminal pin
US4641308A (en) Method of internal self-test of microprocessor using microcode
JPS61292747A (ja) バツフアレジスタ
KR970076820A (ko) 반도체집적회로
US7051194B2 (en) Self-synchronous transfer control circuit and data driven information processing device using the same
KR20040063283A (ko) 제어신호 발생회로 및 상기 제어신호 발생회로를 구비하는데이터 전송회로
KR0138327B1 (ko) 데이타 전송장치
US4571675A (en) Microprocessor device with integrated auto-loaded timer
US5043935A (en) Data transfer system for rearranging data units using intermediate temporary registers
KR0169607B1 (ko) 인터페이스
EP0150084A2 (en) Architecture for intelligent control of data communication adapters
JP2008198218A (ja) コンピュータシステム及びデータ転送方法
KR100313945B1 (ko) 다단 인터럽트 제어 장치
US5828872A (en) Implementation of high speed synchronous state machines with short setup and hold time signals
KR0176087B1 (ko) 시스템 제어기의 프로세서 데이타 처리회로
KR0135008B1 (ko) 펄스속도가 다른 두 프로세서 간에 제어신호조절장치
US5274775A (en) Process control apparatus for executing program instructions
KR930007593Y1 (ko) 장치간 데이타 입출력 인터페이스 회로
KR100244885B1 (ko) 다중인터럽트통신회로
KR0164128B1 (ko) 저속의 외부 주변 장치를 위한 다수의 대기 상태 생성 장치
KR0135006B1 (ko) 펄스속도가 다른 두 프로세서 간에 제어신호조절장치
KR0157153B1 (ko) 난수발생 장치
KR920006274B1 (ko) 마이크로 프로세서

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: 20010307

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee