KR100194264B1 - Direct interface between high speed CPU and LAN controller - Google Patents

Direct interface between high speed CPU and LAN controller Download PDF

Info

Publication number
KR100194264B1
KR100194264B1 KR1019910015173A KR910015173A KR100194264B1 KR 100194264 B1 KR100194264 B1 KR 100194264B1 KR 1019910015173 A KR1019910015173 A KR 1019910015173A KR 910015173 A KR910015173 A KR 910015173A KR 100194264 B1 KR100194264 B1 KR 100194264B1
Authority
KR
South Korea
Prior art keywords
cpu
lan controller
main memory
lan
interface
Prior art date
Application number
KR1019910015173A
Other languages
Korean (ko)
Other versions
KR930005403A (en
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 KR1019910015173A priority Critical patent/KR100194264B1/en
Publication of KR930005403A publication Critical patent/KR930005403A/en
Application granted granted Critical
Publication of KR100194264B1 publication Critical patent/KR100194264B1/en

Links

Landscapes

  • Communication Control (AREA)
  • Bus Control (AREA)

Abstract

본 발명은 워크스테이션(work station)과 같은 고속 데이타 처리시스템에 관한 것으로 특히, 고속의 CPU(10)와 상대적으로 저속인 LAN컨트롤러(20)간의 직접인터페이스(direct interface)시 발생되는 타이밍(timing) 문제를 해결하기 위한 인터페이스 보완방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a high speed data processing system such as a work station, and in particular, timing that occurs during a direct interface between a high speed CPU 10 and a relatively slow LAN controller 20. The present invention relates to an interface complementary method for solving a problem.

본 발명은 주기억장치 기입사이클(main memory write cycle)동안 LAN컨트롤러(20)에 제공되는 레디신호(제3도의 (d))는 CPU(10)에 제공되는 레디신호(제3도의 (c))보다 1사이클 늦고 2사이클동안 액티브 상태가 지속되게 하여 타이밍 문제를 해결한다.The present invention provides a ready signal provided to the LAN controller 20 during a main memory write cycle. (D) of FIG. 3 is a ready signal provided to the CPU 10. The timing problem is solved by keeping the active state one cycle later than (c) of FIG. 3 and continuing for two cycles.

Description

고속 CPU와 LAN 컨트롤러간의 직접 인터페이스 방법Direct interface method between high speed CPU and LAN controller

제1도는 고속 CPU와 LAN컨트롤러에 대한 종래의 인터페이스 방법을 설명하기 위한 도면.1 is a diagram for explaining a conventional interface method for a high speed CPU and a LAN controller.

제2도는 본 발명의 인터페이스 보완회로.2 is an interface complementary circuit of the present invention.

제3도는 본 발명에 의한 직접 인터페이스시 기입사이클의 타이밍도.3 is a timing diagram of a write cycle at the direct interface according to the present invention.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

10 : CPU 20 : LAN 컨트롤러10: CPU 20: LAN Controller

30 : 주기억장치 40 : DMA 컨트롤러30: main memory 40: DMA controller

50 : DMA 버퍼 60 : 메모리 제어로직50: DMA buffer 60: memory control logic

70 : LAN 제어로직70: LAN control logic

본 발명은 워크스테이션(workstation)과 같은 고속데이타 처리시스템(high speed data processing system)의 인터페이스 방법에 관한 것으로, 특히 주기억장치를 통하여 고속의 중앙처리장치(CPU)와 근거리 통신망(LAN) 컨트롤러를 직접 인터페이스(direct interface)시키는 방법에 관한 것이다. 고속 RISC(Reduced Instruction Set Computer)의 CPU로 사용되는 인텔(Intel)사의 80860 마이크로프로세서(micro-processor)와 LAN 컨트롤러인 82596DX 간의 데이타처리의 효율을 높이기 위해 그들 상호간의 직접 인터페이스가 요구되고 있다.The present invention relates to an interface method of a high speed data processing system such as a workstation, and in particular, a high speed central processing unit (CPU) and a local area network (LAN) controller directly through a main memory. A method of making an interface (direct interface). Direct interfaces between them are required to improve data processing efficiency between Intel's 80860 micro-processor, which is used as a high-speed reduced instruction set computer (RISC) CPU, and the 82596DX, a LAN controller.

제1도는 종래의 인터페이스방법을 설명하기 위한 도면이다.1 is a view for explaining a conventional interface method.

도면에서, 10은 RISC의 중앙처리장치(CPU)로 사용되는 80860 마이크로프로세서를 나타낸 것이며, 20은 LAN컨트롤러, 30은 주기억장치(Main Memory), 40은 DMA(Direct Memory Access)컨트롤러, 50은 DAM 버퍼를 나타낸 것이다. CPU(10)와 LAN컨트롤러(20)가 인터페이스하는 경우로서 CPU(10)가 LAN컨트롤러(20)로 명령(command)을 전달하고자 하는 경우를 예를들어 설명하면 다음과 같다. 먼저, CPU(10)는 주기억장치(30)내의 소정의 영역에 상기 LAN컨트롤러(20)로 전달할 명령을 기입(write)한다.In the figure, 10 represents an 80860 microprocessor used as a central processing unit (CPU) of RISC, 20 is a LAN controller, 30 is a main memory, 40 is a direct memory access (DMA) controller, and 50 is a DAM. Represents a buffer. A case where the CPU 10 and the LAN controller 20 interface with each other and the CPU 10 wants to transfer a command to the LAN controller 20 will be described below. First, the CPU 10 writes a command to be transmitted to the LAN controller 20 in a predetermined area in the main memory device 30.

이어서 LAN컨트롤러(20)로 전달될 명령이 주기억장치(30)에 기입되었음을 DMA컨트롤러(20)에게 알림괴 동시에 상기 명령을 LAN컨트롤러(20)에 전달할 것을 지시한다. 따라서 상기 DMA컨트롤러(40)는 CPU(10)의 지시에 응답하여 LAN컨트롤러(20)에게 CPU(10)가 전달하는 명령이 주기억장치(30)에 저장되어 있음을 알리고 상기 명령을 수령하여 소정의 동작을 수행하라는 지시를 함과 아울러 상기 LAN컨트롤러(20)의 버스 사용을 허락한다.Subsequently, the DMA controller 20 notifies that the command to be transmitted to the LAN controller 20 has been written to the main memory 30, and instructs the LAN controller 20 to deliver the command. Therefore, the DMA controller 40 notifies the LAN controller 20 that the command transmitted by the CPU 10 is stored in the main memory device 30 in response to the instruction of the CPU 10, and receives the command to receive the predetermined command. In addition to instructing to perform the operation allows the use of the bus of the LAN controller 20.

따라서, LAN컨트롤러(20)는 DMA버스와 DMA버퍼(50)를 사용하여 주기억장치(30)를 액세스하여 명령을 수행한다. CPU(10)로부터 지시된 모든 명령수행동작이 완료된 후 LAN컨트롤러(20)는 명령수행시 사용했던 DMA버스를 해제(release)시키고 DMA컨트롤러(40)를 통하여 CPU(10)에게 인터럽트(interupt) 신호를 전달하여 명령수행이 완료되었음을 알린다.Accordingly, the LAN controller 20 accesses the main memory device 30 using the DMA bus and the DMA buffer 50 to execute a command. After all the instruction execution operations instructed by the CPU 10 are completed, the LAN controller 20 releases the DMA bus used when the instruction is executed, and sends an interrupt signal to the CPU 10 through the DMA controller 40. Inform that the command execution is complete.

이때 CPU(10)는 DMA버스를 통하여 상기 LAN컨트롤러(20)로부터 전송된 명령수행결과의 스테터스(statue)를 해석하여 인터페이스를 종료한다.At this time, the CPU 10 interprets the status of the command execution result transmitted from the LAN controller 20 through the DMA bus and terminates the interface.

상기한 바와 같이 종래의 인터페이스 방법은 CPU와 LAN컨트롤러 사이에 직접 인터페이스가 되지 않기 때문에 DMA컨트롤러와 DMA버퍼가 반드시 필요하며, 인터페이스시간(interface time)이 길어지게 되어 시스템의 효율이 떨어지는 문제가 있었다.As described above, since the conventional interface method does not directly interface between the CPU and the LAN controller, the DMA controller and the DMA buffer are required, and the interface time becomes long, resulting in a problem of inefficient system efficiency.

따라서, 시스템의 효율을 높이기 위해 CPU(10)와 LAN컨트롤러(20)가 주기억장치(30)를 통하여 직접 인터페이스되도록 하는 것이 요구된다.Therefore, it is required to allow the CPU 10 and the LAN controller 20 to directly interface with the main memory device 30 in order to increase the efficiency of the system.

그러나, 고속의 CPU(10)와 상대적으로 저속인 LAN컨트롤러(20)를 주기억장치(main memory)를 통하여 직접인터페이스 시키는 데는 상당한 주의가 필요하다.However, great care must be taken to interface the high speed CPU 10 and the relatively slow LAN controller 20 directly through the main memory.

즉, 80860 마이크로프로세서의 경우 메인 클럭(main clock)이 40MHz이나 LAN컨트롤러로 사용되는 82596DX의 경우에는 상기 메인클럭 입력을 내부에서 2분주하여 사용하므로 주기억장치에 단위정보를 독출하거나 기입하는 메모리 사이클(memory cycle)에서 CPU보다 훨씬 불리하게 된다.That is, in the case of the 80860 microprocessor, the main clock is 40 MHz or the 82596DX, which is used as a LAN controller, uses two main clock inputs internally. memory cycle) is much more disadvantageous than CPU.

또한, 주기억장치 독출사이클(main memory read cycle)은 동일하나 주기억장치 기입사이클은 각각 다르다.In addition, the main memory read cycles are the same, but the main memory write cycles are different.

즉, 기입사이클의 경우 메인클럭의 상승에지(rising edge)에서 트리거(trigger)되는 CPU에 대한 레디신호(READY signal)에 있어서 셋업시간(set-up time) ts1는 8나노초(ns)이고 호울드시간(hold time) th1은 3나노초이나, LAN컨트롤러에 대한 레디신호에 있어서 셋업시간 ts2는 19나노초이고 호울드시간 th2는 4나노초이다.That is, in the write cycle, the set-up time t s1 is 8 nanoseconds (ns) in the ready signal for the CPU triggered at the rising edge of the main clock. Hold time t h1 is 3 nanoseconds, but for ready signals for LAN controllers, setup time t s2 is 19 nanoseconds and hold time t h2 is 4 nanoseconds.

상기한 바와 같이 CPU와 LAN컨트롤러가 주기억장치를 통하여 직접인터페이스하는데는 기입사이클시 생기는 타이밍(timing) 문제의 해결이 중요한 과제이다.As described above, it is important to solve the timing problem that occurs during the write cycle when the CPU and the LAN controller directly interface with the main memory.

그와같은 직접 인터페이스에서의 타이밍 문제는 처리속도가 다른 CPU와 LAN컨트롤러가 주기억장치를 공동으로 사용함으로 인하여 메모리사이클(memory cycle)에 차이가 생기는 것이다.The timing problem in such a direct interface is that the memory cycle is different because CPU and LAN controllers with different processing speeds share the main memory.

좀더 구체적으로 설명하면 CPU는 포스티드 기입(posted write)이 가능하여 1사이클이면 기입동작을 완료하므로 레디신호가 액티브되어야 하나 LAN컨트롤러는 포스티드기입이 되지 않으므로 긴 사이클이 요구된다.More specifically, the CPU is capable of posted write and completes the write operation in one cycle. Must be active, but the LAN controller does not write posted, so a long cycle is required.

본 발명의 목적은 고속의 CPU와 상대적으로 저속인 LAN컨트롤러 사이의 직접 인터페이스시 발생되는 타이밍문제를 해결하는 방법을 제공하는 것이다.It is an object of the present invention to provide a method for solving the timing problem that occurs during the direct interface between a high speed CPU and a relatively low speed LAN controller.

상기한 목적을 달성하기 위하여 본 발명은, 고속의 CPU와, 상기 CPU에 비해 상대적으로 처리속도가 느린 LAN컨트롤러와, 주기억장치 및 버스들을 포함하는 고속데이타 처리시스템에 있어서, 상기 CPU와 상기 LAN컨트롤러가 상기 주기억장치를 통하여 직접인터페이스의 주기억장치 기입사이클 수행시 상기 LAN컨트롤러에 데이타처리준비가 완료되었음을 알리는 제어신호인 레디신호는 상기 CPU에 데이타처리준비가 완료되었음을 알리는 레디신호보다 1사이클 늦고 2사이클동안 액티브(active) 상태가 지속되도록 한다.In order to achieve the above object, the present invention is a high-speed data processing system including a high-speed CPU, a LAN controller having a relatively slow processing speed compared to the CPU, a main memory and buses, the CPU and the LAN controller Signal is a control signal indicating that the LAN controller completes data processing preparation when the main memory write cycle of the direct interface is performed through the main memory. The processor maintains an active state one cycle later and two cycles longer than a ready signal indicating that the CPU is ready for data processing.

이하 제2도 및 제3도를 참조하여 본 발명에 대해 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to FIGS. 2 and 3.

제2도는 본 발명을 설명하기 위한 데이타처리시스템의 블럭도이며, 제3도는 본 발명에 의한 직접인터페이스의 기입사이클의 타이밍도이다.2 is a block diagram of a data processing system for explaining the present invention, and FIG. 3 is a timing diagram of a write cycle of a direct interface according to the present invention.

제3도에서 (a)는 CPU(제2도의 10)의 메인클럭이며, (b)는 LAN컨트롤러(제2도의 20)의 클럭으로서 상기 메인클럭(a)을 2분주한 클럭이다.In Fig. 3, (a) is the main clock of the CPU (10 in Fig. 2), and (b) is the clock of the LAN controller (20 in Fig. 2) divided by the main clock a.

고속의 CPU와 상대적으로 처리속도가 트린 LAN컨트롤러가 직접 인터페이스 될 때 발생되는 타이밍문제를 해결하기 위해서는 메모리제어로직(제2도의 60)으로부터 상기 CPU(제2도의 10)와 상기 LAN컨트롤러(제2도의 20)와 제공되는 레디신호는 상호 분리된다.In order to solve the timing problem that occurs when a LAN controller having a relatively high processing speed is directly interfaced with a high-speed CPU, the CPU (10 in FIG. 2) and the LAN controller (second in FIG. 20) and ready signal provided Are separated from each other.

도면에서 (c)는 메모리제어로직(60)으로부터 CPU(10)에 제공되는 레디신호이고, (d)는 LAN컨트롤러(20)에 제공되는 레디신호이다.In the drawing, (c) is a ready signal provided from the memory control logic 60 to the CPU 10. (D) is a ready signal provided to the LAN controller 20 to be.

CPU(10)와 LAN컨트롤러(20)의 레디신호의 셋업시간(ts1, ts2)은 각각 8나노초와 19나노초이고 호울드시간(th1, th2)은 각각 3나노초와 4나노초이다.The setup times t s1 and t s2 of the ready signals of the CPU 10 and the LAN controller 20 are 8 nanoseconds and 19 nanoseconds, respectively, and the hold times t h1 and t h2 are 3 nanoseconds and 4 nanoseconds, respectively.

그와같은 조건을 만족시켜주기 위해서는 반드시 레디신호의 논리함수는 다음과 같이 되도록 하여야 한다.In order to satisfy such conditions, the ready signal must be The logical function of is to be

여기서, WC2 내지 WC4는 CPU(제2도의 10) 나 LAN컨트롤러(제2도의 20)의 주기억장치 기입사이클이며, LAN_HOLDA는 CPU가 LAN컨트롤러에 대한 버스의 사용을 허락하는 제어신호(액티브 하이)이며, #는 논리합(OR), 는 논리곱(AND), !는 부정(NOT), '. . .'는 다른 용도의 논리식을 나타낸 것이다.Here, WC2 to WC4 are main memory write cycles of the CPU (10 in FIG. 2) or the LAN controller (20 in FIG. 2), and LAN_HOLDA is a control signal (active high) that allows the CPU to use the bus for the LAN controller. , # Is OR, OR is AND,! Is NOT, '. . . 'Represents a logical expression for other purposes.

상기한 논리함수를 갖는 회로는 PAL(programmable array logic), TTL 등을 사용하여 구성된다.The circuit having the above logic function is configured using PAL (programmable array logic), TTL or the like.

주기억장치 기입사이클동안 LAN컨트롤러(20)에 데이타처리 준비가 완료되었음을 알리는 레디신호(d)는 CPU(10)에 제공되는 레디신호(c)보다 1사이클 늦고, 2사이클동안 액티브상태가 지속된다.The ready signal d informing the LAN controller 20 that the data processing preparation is completed during the main memory write cycle is one cycle later than the ready signal c provided to the CPU 10 and remains active for two cycles.

이상에서 설명한 바와같이 본 발명은 고속의 CPU와 상대적으로 저속인 LAN컨트롤러를 주기억장치를 통하여 직접 인터페이스 시킬때 발생되는 타이밍차이를 해결하므로 시스템의 성능을 향상시킨다.As described above, the present invention improves the performance of the system by resolving the timing difference generated when the high speed CPU and the relatively low speed LAN controller are directly interfaced through the main memory.

Claims (3)

고속의 CPU(10)와 상기 CPU(10)에 비해 상대적으로 처리속도가 느린 LAN컨트롤러(20)와 주기억장치(30)를 구비한 시스템의 상기 CPU(10)와 상기 LAN컨트롤러(20)를 인터페이스하는 방법에 있어서, 상기 주기억장치(30)의 기입사이클 수행시 상기 CPU(10)와 상기 LAN컨트롤러(20)에 각각 데이타처리준비가 완료준비되었음을 알리는 제어신호인 레디신호를 발생하는 메모리제어신호 발생수단(60)을 구비하여 상기 메모리제어신호 발생수단(60)으로부터 발생하는 제어신호를 상호분리하여 상기 CPU(10)와 상기 LAN컨트롤러(20)에 제공함에 의해 인터페이스하는 것을 특징으로 하는 고속 CPU와 LAN컨트롤러간의 직접인터페이스방법.Interfaces the CPU 10 and the LAN controller 20 of a system having a LAN controller 20 and a main memory device 30 having a slower processing speed compared to the high-speed CPU 10 and the CPU 10. In the method, the CPU 10 and the LAN controller 20 when the write cycle of the main memory device 30 is a control signal indicating that the data processing is ready for each ready ready A control signal generated from the memory control signal generating means 60 by having a memory control signal generating means 60 for generating a signal The interface between the high speed CPU and the LAN controller, characterized in that the interface by providing the CPU (10) and the LAN controller (20) separated from each other. 제1항에 있어서, 상기 메모리제어신호발생수단(60)에서 발생되는 제어신호(d)를 상기 CPU(10)에 제공되는 레디신호(C)보다 1사이클 늦고 2사이클동안 액티브상태가 지속되게 하는 것을 특징으로 하는 고속 CPU와 LAN컨트롤러간의 직접인터페이스방법.The control signal generated by the memory control signal generating means (60) according to claim 1 (d) to the ready signal provided to the CPU (10) A direct interface method between a high-speed CPU and a LAN controller, characterized by one cycle later than (C) and an active state for two cycles. 제1항에 있어서, 상기 레디신호들의 논리함수는The method of claim 1, wherein the ready signals The logical function of (여기서, WC 내지 W4는 CPU(10) 나 LAN컨트롤러(20)의 주기억장치 기입사이클이며, LAN_HOLDA는 상기 CPU(10)가 상기 LAN컨트롤러(20)에 대한 버스의 사용을 허락하는 신호이고, #는 논리합(OR), !는 부정(NOT), 는 논리곱(AND), . . . 는 기타 논리함수를 나타낸다)인 것을 특징으로 하는 CPU와 LAN컨트롤러간의 직접인터페이스방법.(WC to W4 are main memory write cycles of the CPU 10 or the LAN controller 20, and LAN_HOLDA is a signal for allowing the CPU 10 to use the bus to the LAN controller 20. Is an OR,! Is negative, AND is AND, and other logical functions.) A direct interface method between a CPU and a LAN controller.
KR1019910015173A 1991-08-31 1991-08-31 Direct interface between high speed CPU and LAN controller KR100194264B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019910015173A KR100194264B1 (en) 1991-08-31 1991-08-31 Direct interface between high speed CPU and LAN controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019910015173A KR100194264B1 (en) 1991-08-31 1991-08-31 Direct interface between high speed CPU and LAN controller

Publications (2)

Publication Number Publication Date
KR930005403A KR930005403A (en) 1993-03-23
KR100194264B1 true KR100194264B1 (en) 1999-06-15

Family

ID=67433312

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019910015173A KR100194264B1 (en) 1991-08-31 1991-08-31 Direct interface between high speed CPU and LAN controller

Country Status (1)

Country Link
KR (1) KR100194264B1 (en)

Also Published As

Publication number Publication date
KR930005403A (en) 1993-03-23

Similar Documents

Publication Publication Date Title
US4257095A (en) System bus arbitration, circuitry and methodology
US5014247A (en) System for accessing the same memory location by two different devices
JPS63115260A (en) Interleave type access for global memory by high preference source
US5345562A (en) Data bus arbitration for split transaction computer bus
KR100609623B1 (en) Multi memory chip capable of directly data transferring between internal memories and data transferring method
KR950009455A (en) Digital signal processor
JPH11238030A (en) Pci-pci bridge and its fast-in fast-out memory
EP0422967B1 (en) Dual domain memory controller
US5287486A (en) DMA controller using a programmable timer, a transfer counter and an or logic gate to control data transfer interrupts
CN108829373A (en) A kind of asynchronous fifo realization circuit
KR100194264B1 (en) Direct interface between high speed CPU and LAN controller
US6122699A (en) Data processing apparatus with bus intervention means for controlling interconnection of plural busses
EP0426156B1 (en) Floppy disk controller with DMA verify operations
KR0137841Y1 (en) Data transfer control device in multiprocessor system
KR0144535B1 (en) High speed data transfer method of hipi + bus
JP2963696B2 (en) Data transfer control system
KR100243868B1 (en) Arbiter logic in main computer system
KR930000670B1 (en) Interface circuit of common ram between main cpu and sub-cpu
JPS61224063A (en) Data transfer controller
JPS61250758A (en) Communication controller
JPS63155254A (en) Information processor
JPH0320849A (en) Data output device
JPH05334234A (en) High speed dma transferring device
JPH03282667A (en) Computer device
KR19990050224A (en) Board-to-Board Interface Device Using Shared Memory

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

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee