KR20040110540A - 네트워크 전자기기의 데이터 인터페이스 장치 및 방법 - Google Patents

네트워크 전자기기의 데이터 인터페이스 장치 및 방법 Download PDF

Info

Publication number
KR20040110540A
KR20040110540A KR1020030039889A KR20030039889A KR20040110540A KR 20040110540 A KR20040110540 A KR 20040110540A KR 1020030039889 A KR1020030039889 A KR 1020030039889A KR 20030039889 A KR20030039889 A KR 20030039889A KR 20040110540 A KR20040110540 A KR 20040110540A
Authority
KR
South Korea
Prior art keywords
data
electronic device
packet data
control
network
Prior art date
Application number
KR1020030039889A
Other languages
English (en)
Other versions
KR100544188B1 (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 KR1020030039889A priority Critical patent/KR100544188B1/ko
Priority to US10/873,829 priority patent/US20050038939A1/en
Priority to JP2004182816A priority patent/JP2005011357A/ja
Priority to CNA2004100597288A priority patent/CN1574845A/zh
Publication of KR20040110540A publication Critical patent/KR20040110540A/ko
Application granted granted Critical
Publication of KR100544188B1 publication Critical patent/KR100544188B1/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00209Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
    • H04N1/00222Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of image data generation or reproduction, e.g. scan-to-email or network printing
    • H04N1/00233Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of image data generation or reproduction, e.g. scan-to-email or network printing details of image data reproduction, e.g. network printing or remote image display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0034Details of the connection, e.g. connector, interface
    • H04N2201/0037Topological details of the connection
    • H04N2201/0039Connection via a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0008Connection or combination of a still picture apparatus with another apparatus
    • H04N2201/0074Arrangements for the control of a still picture apparatus by the connected apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0082Image hardcopy reproducer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0093Facsimile machine
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Communication Control (AREA)
  • Record Information Processing For Printing (AREA)
  • Information Transfer Systems (AREA)
  • Facsimiles In General (AREA)

Abstract

네트워크 전자기기의 데이터 인터페이스 장치 및 방법이 개시된다. 이 장치는 데이터 저장부에 저장된 전자기기 실행 데이터의 패킷 데이터들에 대한 전송 디스크립터들을 생성하거나, 데이터 저장부에 저장된 전자기기 제어 데이터의 패킷 데이터에 대한 제어 블록을 생성하는 네트워크 처리부 및 생성된 전송 디스크립터들에 대응하는 패킷 데이터들을 직접 메모리 액세스에 의해 네트워크 전자기기로 전송하거나, 생성된 제어 블록에 대응하는 전자기기 제어 데이터를 네트워크 전자기기로 전송하고, 네트워크 전자기기로부터 전자기기 제어 데이터에 대한 제어 응답 데이터를 수신하는 인터페이스 제어부를 구비하는 것을 특징으로 한다. 따라서, 본 발명에 따르면, 네트워크 전자기기와 네트워크 전자기기의 인터페이스 장치의 로컬 버스 대역폭의 점유율을 낮춤으로써 고속 데이터 전송이 가능하게 하고, 직접 메모리 액세스를 이용한 스트리밍 채널에 의해, 명령어 해석의 전처리 과정을 생략함으로써 코드의 간소화 및 헤더 정보의 최소화를 이룰 수 있도록 한다.

Description

네트워크 전자기기의 데이터 인터페이스 장치 및 방법{Apparatus and method interfacing a data for a network electronic device}
본 발명은 프린터, 복합기, 팩시밀리 등을 포함하는 네트워크 전자기기에 관한 것으로, 보다 상세하게는 네트워크 전자기기와 네트워크 사이에 고속의 데이터 전송을 위한 네트워크 전자기기의 데이터 인터페이스 장치 및 방법에 관한 것이다.
종래에 네트워크 전자기기와 호스트가 데이터를 교환하기 위해서는 두 가지 방식으로 데이터 인터페이스가 이루어지게 된다. 첫 번째 방식은 네트워크 전자기기의 메인 제어부의 로컬 버스 대역폭을 확보하기 위해 네트워크 전자기기 프로토콜 처리부를 포함하는 네트워크 전자기기 전용의 네트워크 카드, 전자기기 데이터와 전자기기 제어 데이터를 전송하기 위한 버퍼로 사용되는 공유 메모리 및 네트워크 전자기기의 메인 제어부로 구성된 장치를 이용하는 이중 프로세서 시스템 구성에 의한 방식이다. 두 번째 방식은 널리 통용되는 외부 버스 사양(예를 들어, PCI[ Peripheral Component Interconnect] 외부 버스)을 따르는 일반적인 네트워크 카드및 네트워크 전자기기의 메인 제어부로 구성된 장치를 이용하는 단일 프로세서 시스템 구성에 의한 방식이다. 고속 네트워크 인터페이스를 위해서 첫번째 방식으로 데이터를 인터페이스 하는 것이 대부분이다.
네트워크 전자기기 중 네트워크 프린터를 예로 들어 설명한다. 네트워크를 통해서 호스트에서 전송되는 프린팅 데이터는 프린터 네트워크 카드에 수신되어 네트워크 프로토콜의 헤더 정보가 제거된 프린팅 언어 데이터로 변환되고, 프린팅 언어 데이터는 패키타이징(packeting)되어 공유메모리에 저장된다. 이때, 공유메모리는 일반적으로 멀티프로세서의 IPC(Inter Process Communication) 버퍼로 사용하는 듀얼포트 메모리이며 각각의 프로그램 메모리에 비교하여 작은 크기를 갖는다. 프린팅 언어 데이터는 공유메모리에 한꺼번에 저장할 수 없는 큰 크기이므로, 링 버퍼(ring buffer) 구조를 이용해 송수신을 수행하게 된다.
네트워크 프린터는 프린팅 동작 외에도 호스트에서 그 상태를 확인하고 설정값을 바꾸기 위한 제어 동작도 수행해야 하는데, 이러한 제어동작은 제어 데어터을 이용하여 프린터 전용의 네트워크 카드와 네트워크 프린터 사이에서 주고받게 된다. 이 제어 데이터는 그 중요성에 따라 채널을 분리하여 전송할 수 도 있고 프린팅 데이터와 한 채널에서 멀티플렉싱을 통해 전송할 수도 있다.
종래 기술은 멀티 프로세서 구조의 IPC(Inter-Process Communication) 방법 중 가장 널리 쓰이는 공유메모리를 이용하는 방법은 구조 변경의 유연성은 크지만 고속 데이터 전송을 저해하는 요소를 포함한다. 즉, 공유메모리 채널을 사용하기 위해서 동작 코드 및 크기 정보를 갖는 헤더를 더함으로써 실제의 전자기기데이터(예를 들어 프린팅 데이터)보다 훨씬 많은 오버헤드를 가지게 된다. 또한, 스트리밍 데이터인 전자기기 데이터를 전송하기 위해 프로세서의 명령어 사이클을 필요로 하며, 이는 프로그램 메모리(예를 들어, 디램[DRAM])의 로컬버스 대역폭을 줄이고 명령어를 위한 프로세서 명령어 버스의 대역폭도 함께 감소시킨다. 또한, 패킷 데이터를 공유메모리에서 읽기/쓰기를 위해서는 프로그램 루핑이 필요한데, 명령어가 차지하는 사이클이 실제의 공유메모리 사이클의 10배 이상이 되어 전체적인 액세스 속도를 떨어뜨린다.
본 발명이 이루고자 하는 기술적 과제는, 네트워크 전자기기와 네트워크 전자기기의 인터페이스 장치의 로컬 버스 대역폭의 점유율을 낮춤으로써 고속 데이터 전송을 가능케 하는 네트워크 전자기기의 데이터 인터페이스 장치를 제공하는데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는, 전술한 네트워크 전자기기의 데이터 인터페이스 장치에 의해 수행되는 네트워크 전자기기의 데이터 인터페이스 방법을 제공하는데 있다.
본 발명이 이루고자 하는 또 다른 기술적 과제는, 전술한 네트워크 전자기기의 데이터 인터페이스 장치에 의해 수행되는 네트워크 전자기기의 데이터 인터페이스 방법의 또 다른 예를 제공하는데 있다.
도 1은 본 발명에 의한 네트워크 전자기기의 데이터 인터페이스 장치를 설명하기 위한 일실시예의 블록도이다.
도 2는 헤더가 붙은 패킷 데이터가 디스크립터의 사슬에 연결되어 있는 상태를 나타낸 블록도이다.
도 3은 데이터 저장부에 저장된 전자기기 실행 데이터의 패킷 데이터들 및 전자기기 제어 데이터의 패킷 데이터의 일 예를 나타내는 블록도이다.
도 4는 전송 디스크립터의 일 예를 나타내는 블록도이다.
도 5는 제어 블록의 일 예를 나타내는 블록도이다.
도 6은 도 1에 도시된 인터페이스 제어부를 설명하기 위한 일 실시예의 블록도이다.
도 7은 제1 채널 제어부에 의해 전송 디스크립터들이 검사되는 것을 설명하기 위한 블록도이다.
도 8은 전자기기 실행 데이터의 직렬화된 패킷 데이터들이 네트워크 전자기기로 전송되어 저장된 상태를 나타내는 블록도이다.
도 9는 직렬화된 패킷 데이터들이 네트워크 전자기기로 전송되는 것을 설명하기 위한 타이밍도이다.
도 10은 레지스터부에 저장된 다양한 데이터 블록의 일 예를 나타낸 블록도이다.
도 11은 전자기기 제어 데이터의 패킷 데이터가 네트워크 전자기기로 전송되는 것을 설명하기 위한 타이밍도이다.
도 12는 인터럽트 신호에 의해 전자기기 제어 데이터 또는 제어 응답 데이터의 패킷 데이터들이 전송되는 것을 나타내는 도면이다.
도 13은 본 발명에 의한 네트워크 전자기기의 데이터 인터페이스 방법을 설명하기 위한 일 실시예의 플로차트이다.
도 14는 도 13에 도시된 제504 단계를 설명하기 위한 일 실시예의 플로차트이다.
도 15는 본 발명에 의한 네트워크 전자기기의 데이터 인터페이스 방법을 설명하기 위한 또 다른 일 실시예의 플로차트이다.
도 16은 도 15에 도시된 제702 단계를 설명하기 위한 일 실시예의 플로차트이다.
도 17은 도 15에 도시된 제704 단계를 설명하기 위한 일 실시예의 플로차트이다.
〈도면의 주요 부호에 대한 간단한 설명〉
100: 네트워크 전자기기의 데이터 인터페이스 장치
110: 데이터 수신부 120: 데이터 저장 제어부
130: 데이터 저장부 140: 네트워크 처리부
150: 인터페이스 제어부 200: 네트워크 전자기기
300: 로컬 버스 제어부 310: 제1 채널 제어부
320: 직렬화 처리부 330: 직접 메모리 액세스 제어부
340: 제2 채널 제어부 350: 레지스터부
360: 액세스 데이터 저장부 370: 인터럽트 생성부
상기의 과제를 이루기 위해, 본 발명에 따른 네트워크 전자기기의 데이터 인터페이스 장치는 데이터 저장부에 저장된 전자기기 실행 데이터의 패킷 데이터들에 대한 전송 디스크립터들을 생성하거나, 데이터 저장부에 저장된 전자기기 제어 데이터의 제어 블록을 생성하는 네트워크 처리부 및 생성된 전송 디스크립터들에 대응하는 패킷 데이터들을 직접 메모리 액세스에 의해 네트워크 전자기기로 전송하거나, 생성된 제어 블록에 대응하는 전자기기 제어 데이터를 네트워크 전자기기로 전송하고, 네트워크 전자기기로부터 전자기기 제어 데이터에 대한 제어 응답 데이터를 수신하는 인터페이스 제어부로 구성됨이 바람직하다.
상기의 다른 과제를 이루기 위해, 본 발명에 따른 네트워크 전자기기의 데이터 인터페이스 방법은 호스트로부터 네트워크를 통해 전자기기 실행 데이터를 제공받는 단계, 제공된 전자기기 실행 데이터의 패킷 데이터들에 대한 전송 디스크립터들을 생성하는 단계 및 생성된 전송 디스크립터들에 대응하는 패킷 데이터들을 직접 메모리 액세스에 의해 네트워크 전자기기로 전송하는 단계로 이루어짐이 바람직하다.
상기의 또 다른 과제를 이루기 위해, 본 발명에 따른 네트워크 전자기기의 데이터 인터페이스 방법은 호스트로부터 네트워크를 통해 전자기기 제어 데이터를 제공받는 단계, 제공된 전자기기 제어 데이터의 제어 블록을 생성하는 단계 및 생성된 제어블록에 대응하는 전자기기 제어 데이터를 네트워크 전자기기로 전송하고, 네트워크 전자기기로부터 전자기기 제어 데이터에 대한 제어 응답 데이터를 수신하는 단계로 이루어짐이 바람직하다.
이하, 본 발명에 의한 네트워크 전자기기의 데이터 인터페이스 장치를 첨부된 도면을 참조하여 다음과 같이 설명한다.
도 1은 본 발명에 의한 네트워크 전자기기의 데이터 인터페이스 장치를 설명하기 위한 일 실시예의 블록도이다. 네트워크 전자기기의 데이터 인터페이스 장치(100)가 네트워크 전자기기(200)에 연결되어 있다.
네트워크 전자기기의 데이터 인터페이스 장치(100)는 데이터 수신부(110), 데이터 저장 제어부(120), 데이터 저장부(130), 네트워크 처리부(140) 및 인터페이스 제어부(150)로 구성된다.
데이터 수신부(110)는 호스트(미도시)로부터 네트워크를 통해 전자기기 실행 데이터 또는 전자기기 제어 데이터를 수신한다. 전자기기 실행 데이터는 네트워크 전자기기(200)의 용도를 위해 필요한 데이터이다. 예를 들어, 네트워크 전자기기(200)가 프린터인 경우에, 프린터에 대한 전자기기 실행 데이터는 인쇄 데이터가 된다. 전자기기 제어 데이터는 네트워크 전자기기(200)를 제어하기 위한 데이터이다. 예를 들어, 네트워크 전자기기(200)가 프린터인 경우에, 프린터에 대한 속성을 읽거나 설정하기 위한 제어 데이터가 전자기기 제어 데이터이다. 데이터 수신부(110)는 전자기기 실행 데이터 또는 전자기기 제어 데이터를 호스트로부터 패킷 데이터들 형태로 수신한다. 데이터 수신부(110)는 전자기기 실행 데이터의 패킷 데이터들을 수신할 때, 예컨대, 디스크립터와 패킷 버퍼(buffer)의 사슬로 연결된 체이닝 버퍼(chaining buffer)를 이용할 수 있다. 도 2는 헤더가 붙은 패킷 데이터들(DATA 0 내지 DATA n)이 사슬로 이어진 디스크립터들(DESC 0 내지 DESC n)에 연결되어 있는 상태를 나타낸 블록도이다. 또한, 데이터 수신부(110)는 전자기기 제어 데이터의 패킷 데이터를 수신할 때, 예컨대, 네트워크 전자기기의 제어를 위해 사용되는 프로토콜인 간이 망 관리 프로토콜(SNMP:Simple Network Management Protocol)을 이용해 전자기기 제어 데이터의 패킷 데이터를 수신할 수 있다.
데이터 저장 제어부(120)는 데이터 수신부(110)로부터 수신된 전자기기 실행 데이터 또는 전자기기 제어 데이터의 패킷 데이터들을 데이터 저장부(130)에 저장하도록 제어한다.
데이터 저장부(130)는 전자기기 실행 데이터 또는 전자기기 제어 데이터의 패킷 데이터들을 저장한다. 도 3은 데이터 저장부(130)에 저장된 전자기기 실행 데이터의 패킷 데이터들 및 전자기기 제어 데이터의 패킷 데이터의 일 예를 나타내는 블록도이다. 도 3의 (a)는 전자기기 실행 데이터의 패킷 데이터들을 도시한 것이고, 도 3의 (b)는 전자기기 제어 데이터의 패킷 데이터를 도시한 것이다. 네트워크 전자기기(200)가 프린터라 하면, 데이터 저장부(130)에 저장되는 전자기기 실행 데이터의 패킷 데이터들 각각은 헤더 정보와 인쇄 데이터 정보를 포함하고, 전자기기 제어 데이터의 패킷 데이터는 간이 망 관리 프로토콜의 헤더 정보와 제어 요청 데이터 정보를 포함한다. 데이터 저장부(130)는 일반적으로 디램(DRAM: Dynamic Random Access Memory)으로 구성된다. 디램은 전원이 차단될 경우 저장되어 있는 자료가 소멸되는 특성이 있는 휘발성 기억소자로서, 집적도가 매우 높아 대용량 기억장치에 많이 사용한다.
네트워크 처리부(140)는 데이터 저장부(130)에 저장된 전자기기 실행 데이터의 패킷 데이터들에 대한 전송 디스크립터들을 생성하거나, 데이터 저장부(130)에저장된 전자기기 제어 데이터의 패킷 데이터에 대한 제어 블록을 생성한다. 전송 디스크립터들은 전자기기 실행 데이터의 패킷 데이터들에 대한 다양한 정보를 갖고 있어서, 전자기기 실행 데이터의 패킷 데이터들을 데이터 저장부(130)에서 용이하게 액세스 할 수 있도록 하는 기술자 또는 기술어이다. 전송 디스크립터는 데이터 저장부(130)에 저장된 패킷 데이터들의 주소정보, 데이터 크기, 제어 정보 및 서로 연결된 소정 전송 디스크립터 정보를 갖는 것을 특징으로 한다. 도 4는 전송 디스크립터의 일 예를 나타내는 블록도이다. 도 4에 도시된 바와 같이, 주소 블록(ADDRESS)은 전자기기 실행 데이터의 패킷 데이터가 저장된 데이터 저장부(130)의 주소 정보를 갖는다. 크기 블록(SIZE)은 데이터 저장부(130)에 저장된 전자기기 실행 데이터의 패킷 데이터에 대한 데이터 크기를 정보로서 갖는다. 제어 블록(CONTROL)은 전자기기 실행 데이터의 패킷 데이터에 대해 네트워크 전자기기(200)로의 전송을 제어하기 위한 제어정보를 갖는다. 다음 디스크립터 블록(NEXT DESCRIPTOR)은 하나의 전송 디스크립터와 순차적으로 연결된 다음의 전송 디스크립터의 정보를 갖는다. 다음 디스크립터 블록에 의해 전송 디스크립터들이 사슬처럼 연결되어 있다. 즉, 네트워크 처리부(140)는 서로 연결된 전송 디스크립터들을 생성한다. 한편, 네트워크 처리부(140)는 전자기기 실행 데이터의 패킷 데이터들이 네트워크 전자기기(200)로 전송된 후에는 전송 디스크립터들에 구비된 패킷 데이터들에 대한 정보를 삭제한다.
네트워크 처리부(140)는 데이터 저장부(130)에 저장된 전자기기 제어 데이터의 패킷 데이터에 대한 주소 정보, 데이터 크기, 제어 정보 및 전송상태 정보를 갖는 읽기 제어 블록을 생성하거나, 제어 응답 데이터가 저장될 소정 저장공간의 주소정보, 소정 저장공간의 크기, 제어 정보 및 전송상태 정보를 갖는 쓰기 제어 블록을 생성하는 것을 특징으로 한다. 도 5는 제어 블록의 일 예를 나타내는 블록도이다. 도 5의 (a)는 읽기 제어 블록을 나타내는 블록도이다. SNMP 주소블록(SNMP address)은 전자기기 제어 데이터의 패킷 데이터가 저장된 데이터 저장부(130)의 주소정보를 갖는다. SNMP 크기블록(SNMP size)은 데이터 저장부(130)에 저장된 전자기기 제어 데이터의 패킷 데이터에 대한 데이터 크기를 정보로서 갖는다. SNMP 제어 블록(SNMP control)은 전자기기 제어 데이터의 패킷 데이터에 대해 네트워크 전자기기(200)로의 전송을 제어하기 위한 제어정보를 갖는다. SNMP 상태블록(SNMP status)은 전자기기 제어 데이터의 패킷 데이터가 네트워크 전자기기(200)로 전송되는가 여부에 대한 상태를 나타내는 정보를 갖는다. SNMP 주소블록 및 SNMP 크기블록의 정보는 데이터 저장부(130)에 저장된 패킷 데이터로부터 획득한다.
한편, 네트워크 처리부(140)는 전자기기 제어 데이터의 패킷 데이터를 네트워크 전자기기(200)로 전송하기 전에, 제어 응답 데이터가 저장될 소정 저장공간을 데이터 저장부(130)에 할당하는 것을 특징으로 한다. 제어 응답 데이터는 전자기기 제어 데이터의 패킷 데이터에 의해 제어되는 네트워크 전자기기(200)의 응답을 나타내는 데이터이다. 네트워크 전자기기의 데이터 인터페이스 장치(100)가 네트워크 전자기기(200)로부터 제어 응답 데이터를 전송받을 수 있도록, 네트워크 처리부(140)는 제어 응답 데이터가 저장될 소정 저장공간을 데이터 저장부(130)에 미리 할당해야 한다. 도 5의 (b)는 쓰기 제어 블록을 나타내는 블록도이다. 데이터저장부(130)에 미리 제어 응답 데이터의 소정 저장공간이 마련된다. SNMP 주소블록(SNMP address)은 제어 응답 데이터가 저장될 데이터 저장부(130)의 소정 저장공간의 주소정보를 갖는다. SNMP 크기블록(SNMP size)은 데이터 저장부(130)에 저장될 제어 응답 데이터의 소정 저장공간의 데이터 크기를 정보로서 갖는다. SNMP 제어 블록(SNMP control)은 제어 응답 데이터에 대해 네트워크 전자기기의 데이터 인터페이스 장치(100)로의 수신을 제어하기 위한 제어정보를 갖는다. SNMP 상태블록(SNMP status)은 제어 응답 데이터가 네트워크 전자기기의 데이터 인터페이스 장치(100)에 수신되는가 여부에 대한 상태를 나타내는 정보를 갖는다. SNMP 주소블록 및 SNMP 크기블록의 정보는 데이터 저장부(130)에 미리 마련된 소정 저장공간의 정보로부터 획득한다.
인터페이스 제어부(150)는 생성된 전송 디스크립터들에 대응하는 전자기기 실행 데이터의 패킷 데이터들을 직접 메모리 액세스에 의해 네트워크 전자기기(200)로 전송하거나, 생성된 제어 블록에 대응하는 전자기기 제어 데이터의 패킷 데이터를 네트워크 전자기기(200)로 전송하고, 네트워크 전자기기(200)로부터 전자기기 제어 데이터에 대한 제어 응답 데이터를 수신한다.
도 6은 도 1에 도시된 인터페이스 제어부(150)를 설명하기 위한 일 실시예(150A)의 블록도로서, 로컬 버스 제어부(300), 제1 채널 제어부(310), 직렬화 처리부(320), 직접 메모리 액세스 제어부(330), 제2 채널 제어부(340), 레지스터부(350), 전송 데이터 저장부(360) 및 인터럽트 생성부(370)로 구성된다.
로컬 버스 제어부(300)는 로컬 버스에 대한 데이터 전송을 제어한다. 로컬버스 제어부(300)는 인터페이스 제어부(150)의 각 구성 요소를 연결하는 로컬 버스를 통해 데이터의 전송을 제어한다. 예를 들어, 전자기기 실행 데이터의 패킷 데이터를 네트워크 전자기기(200)로 전송할 때, 로컬 버스 제어부(300)는 전자기기 실행 데이터의 패킷 데이터가 로컬 버스를 점유하도록 하여, 패킷 데이터들의 전송을 제어한다.
제1 채널 제어부(310)는 전송 디스크립터들을 검사하여, 전송 디스크립터들의 주소정보에 대응하는 패킷 데이터들을 데이터 저장부(130)로부터 인출하고, 인출된 패킷 데이터들을 출력한다. 도 7은 제1 채널 제어부(310)에 의해 전송 디스크립터들(전송 디스크립터 1 내지 전송 디스크립터 n)이 검사되는 것을 설명하기 위한 블록도이다. 도 7에 도시된 바와 같이, 제1 채널 제어부(310)는 네트워크 처리부(140)에서 생성된 전송 디스크립터들을 순차적으로 검사하여, 전송 디스크립터들에 전자기기 실행 데이터의 패킷 데이터들에 대한 정보가 존재하는가를 검사한다. 제1 채널 제어부(310)는 전자기기 실행 데이터의 패킷 데이터들에 대한 정보가 존재한다고 검사하면, 도 4에 도시된 주소 블록에 대응하는 패킷 데이터들을 데이터 저장부(130)로부터 인출하고, 인출된 패킷 데이터들을 직렬화 처리부(320)로 출력한다. 인출되는 패킷 데이터들은 헤더 정보가 제거된 패킷 데이터들이다. 한편, 제1 채널 제어부(310)는 네트워크 전자기기(200)로 패킷 데이터들의 전송을 요구하는 전송 요구 정보를 직접 메모리 액세스 제어부(330)로 출력한다.
직렬화 처리부(320)는 데이터 저장부(130)에서 인출된 패킷 데이터들을 직렬화한다. 직렬화 처리부(320)는 제1 채널 제어부(310)에 의해 데이터 저장부(130)에서 인출된 패킷 데이터들을 직렬화하고, 직렬화된 데이터를 직접 메모리 액세스 제어부(330)로 출력한다. 직렬화 처리부(320)의 일 예로 FIFO 메모리(First In First Out memory)가 있다. FIFO 메모리는 첫 번째로 입력된 데이터가 첫 번째로 출력??록 구성된 메모리이다. 즉, 직렬화 처리부(320)는 헤더 정보가 제거된 패킷 데이터들을 순차적으로 입력받아서, 패킷 데이터들을 직렬화한다. 이후, 직렬화 처리부(320)는 직렬화된 패킷 데이터들을 입력된 패킷 데이터들 순서에 따라 직접 메모리 액세스 제어부(330)로 출력한다.
직접 메모리 액세스 제어부(330)는 직렬화된 패킷 데이터들을 직접 메모리 액세스에 의해 네트워크 전자기기(200)로 전송한다. 직접 메모리 액세스란, 직렬화 처리부(320)와 네트워크 전자기기(200)의 사이에서 데이터를 직접 입출력하는 전송 방식을 말한다. 네트워크 전자기기(200)도 직접 메모리 액세스 제어부(미도시)를 구비하고 있어서, 네트워크 전자기기(200)에 대한 액세스를 허용할 것인가에 대한 전송 허용 정보를 직접 메모리 액세스 제어부(330)로 전송한다. 네트워크 전자기기(200)에서 액세스를 허용하는 정보를 제공받으면, 직접 메모리 액세스 제어부(330)는 직렬화된 패킷 데이터들을 직접 메모리 액세스에 의해 네트워크 전자기기(200)로 전송한다. 이때, 직접 메모리 액세스 제어부(330)에 의해 전송되는 직렬화된 패킷 데이터들은 스트리밍 채널 특성상 유효 주소가 불필요하다.
도 8은 전자기기 실행 데이터의 직렬화된 패킷 데이터들이 네트워크 전자기기(200)로 전송되어 저장된 상태를 나타내는 블록도이다. 도 8에 도시된 바와 같이, 직렬화된 패킷 데이터들은 네트워크 전자기기(200)의 소정 저장공간(미도시)에저장된다. 소정 저장공간에 저장된 직렬화된 패킷 데이터들은 네트워크 전자기기(200)의 기능 수행을 위해 이용된다.
도 9는 직렬화된 패킷 데이터들이 네트워크 전자기기(200)로 전송되는 것을 설명하기 위한 타이밍도이다. 주소 정보(ADDR)는 직렬화되 패킷 데이터들이 스트리밍 채널에 의해 전송되므로, 가치없는 주소 정보(INVALID ADDRESS)가 제공된다. 제1 채널 제어부(310)에서 전송 요구 정보(DREQ)가 생성되고, 네트워크 전자기기(200)로부터 전송 허용 정보(DASK)를 제공받아서, 읽기(RD) 실행에 의해 패킷 데이터(DATA 0)가 네트워크 전자기기(200)로 전송된다.
레지스터부(350)는 읽기 제어 블록 및 쓰기 제어 블록을 저장한다. 레지스터부(350)는 네트워크 처리부(140)에서 생성된 읽기 제어 블록 및 쓰기 제어 블록을 저장하고, 제2 채널 제어부(340)에 의한 제어블록의 액세스 요청에 응답하여, 읽기 제어 블록 및 쓰기 제어 블록을 액세스할 수 있도록 한다. 레지스터부(350)는 전자기기 제어 데이터의 신속한 읽기 또는 쓰기를 위해 동작 레지스터군 블록, 인터페이스 파라미터 블럭 또는 프로토콜 구조체 블록 등을 더 구비하는 것을 특징으로 한다. 도 10은 레지스터부(350)에 저장된 다양한 데이터 블록의 일 예를 나타낸 블록도이다. 도 10의 (a)는 동작 레지스터들의 블록이고, 도 10의 (b)는 인터페이스 파리미터들의 블록이고, 도 10의 (c)는 TCP/IP 구조체들의 블록이고, 도 10의 (d)는 제2 채널의 제어 블록이다.
액세스 데이터 저장부(360)는 데이터 저장부(130)에 저장된 전자기기 제어 데이터의 액세스를 위한 저장공간으로 사용된다.
인터럽트 생성부(370)는 인터럽트 신호를 생성하여 네트워크 전자기기(200)로 출력한다. 네트워크 전자기기(200)의 인터럽트 제어부(미도시)는 인터럽트 신호를 수신하여, 전자기기 제어 데이터의 패킷 데이터에 대한 읽기를 수행하기 위한 제어신호를 제2 채널 제어부(340)로 출력한다.
제2 채널 제어부(340)는 읽기 제어 블록에 대응하는 전자기기 제어 데이터의 패킷 데이터를 인출하여 네트워크 전자기기(200)로 전송하거나, 쓰기 제어 블록에 대응하는 제어 응답 데이터의 패킷 데이터를 수신하고, 수신된 제어 응답 데이터의 패킷 데이터를 호스트로 출력한다. 읽기 제어 블록은 전자기기 제어 데이터의 패킷 데이터가 저장된 데이터 저장부(130)의 주소 정보, 패킷 데이터의 크기 정보 등을 갖고 있다. 제2 채널 제어부(340)는 레지스터부(350)에 저장된 읽기 제어 블록을 액세스하여, 읽기 제어 블록의 주소 정보에 대응하는 패킷 데이터를 네트워크 전자기기(200)로 출력한다. 한편, 쓰기 제어블록은 제어 응답 데이터의 패킷 데이터가 저장될 데이터 저장부(130)의 소정 저장공간의 주소 정보, 소정 저장공간의 크기 정보 등을 갖고 있다. 따라서, 제2 채널 제어부(340)는 레지스터부(350)에 저장된 쓰기 제어 블록을 액세스하여, 쓰기 제어 블록의 주소 정보에 대응하는 소정 저장공간에 제어 응답 데이터의 패킷 데이터가 저장될 수 있도록 한다. 또한, 제2 채널 제어부(340)는 수신되어 데이터 저장부(130)의 소정 저장공간에 저장된 제어 응답 데이터의 패킷 데이터를 호스트로 전송하도록 제어한다.
도 11은 전자기기 제어 데이터의 패킷 데이터가 네트워크 전자기기(200)로 전송되는 것을 설명하기 위한 타이밍도이다. 전자기기 제어 데이터의 패킷 데이터는 랜덤 액세스가 가능하므로, 가치 있는 주소 정보(ADDR 1)가 제공된다. 읽기(RD)실해에 의해 전자기기 제어 데이터의 패킷 데이터(DATA 1)가 네트워크 전자기기(200)로 전송된다.
도 12는 인터럽트 신호에 의해 전자기기 제어 데이터 또는 제어 응답 데이터의 패킷 데이터들이 전송되는 것을 나타내는 도면이다. 인터럽트 신호(INTs)가 생성되면, 제2 채널 제어부(340)에 의해 전자기기 제어 데이터의 패킷 데이터들(REQ 0 및 REQ 1)이 전송되고, 그 후, 네트워크 전자기기(200)에서 제어 응답 데이터의 패킷 데이터들(REP 0 및 REP 1)이 수신되어, 데이터 저장부(130)의 소정 저장공간에 저장된다.
이하, 본 발명에 의한 네트워크 전자기기의 데이터 인터페이스 방법을 첨부된 도면을 참조하여 다음과 같이 설명한다.
도 13은 본 발명에 의한 네트워크 전자기기의 데이터 인터페이스 방법을 설명하기 위한 일 실시예의 플로차트로서, 전자기기 실행 데이터의 패킷 데이터들을직렬화하여 네트워크 전자기기(200)로 전송하는 단계(제500 ~ 제504 단계들)로 이루어진다.
먼저, 호스트로부터 네트워크를 통해 전자기기 실행 데이터의 패킷 데이터들을 제공받는다(제500 단계). 제공된 전자기기 실행 데이터의 패킷 데이터들은 전술한 데이터 수신부(110)에서 수신되어, 데이터 저장부(130)에 저장된다.
제500 단계 후에, 제공된 전자기기 실행 데이터의 패킷 데이터들에 대한 전송 디스크립터들을 생성한다(제502 단계). 전송 디스크립터들은 패킷 데이터들의주소정보, 데이터 크기, 제어 정보 및 연결된 소정 전송 디스크립터 정보를 갖는 것을 특징으로 한다. 전송 디스크립터들은 전술한 네트워크 처리부(140)에 의해 생성된다.
제502 단계 후에, 생성된 전송 디스크립터들에 대응하는 패킷 데이터들을 직접 메모리 액세스에 의해 네트워크 전자기기로 전송한다(제504 단계).
도 14는 도 13에 도시된 제504 단계를 설명하기 위한 일 실시예(504A)의 플로차트로서, 전송 디스크립터의 주소 정보에 대응하는 패킷 데이터들을 인출하여 네트워크 전자기기(200)로 전송하고, 전송 디스크립터에 저장된 패킷 데이터들의 정보를 삭제하는 단계(제600 ~ 제610 단계들)로 이루어진다.
먼저, 전송 디스크립터들을 검사하여, 패킷 데이터들의 정보가 존재하는가를 판단한다(제600 단계). 패킷 데이터들의 정보란, 전송 디스크립터들에 구비된 주소정보, 데이터 크기, 제어 정보 및 연결된 소정 전송 디스크립터 정보 등을 말한다. 만일, 패킷 데이터들의 정보가 존재하지 않는다고 판단되면, 전술한 과정을 종료한다.
그러나, 패킷 데이터들의 정보가 존재한다고 판단되면, 전송 디스크립터들의 주소정보에 대응하는 패킷 데이터들을 인출한다(제602 단계). 전술한 제1 채널 제어부(310)에 의해 데이터 저장부(130)에 저장된 패킷 데이터들을 인출한다.
제602 단계 후에, 인출된 패킷 데이터들을 직렬화한다(제604 단계). 전술한 직렬화 처리부(320)에 의해 패킷 데이터들을 직렬화한다.
제604 단계 후에, 네트워크 전자기기(200)로부터 직렬화된 패킷 데이터의 전송이 요청되는가를 판단한다(제606 단계). 만일, 네트워크 전자기기(200)로부터 직렬화된 패킷 데이터의 전송이 요청되지 않는다고 판단되면, 계속 제606 단계를 수행한다.
그러나, 네트워크 전자기기(200)로부터 직렬화된 패킷 데이터의 전송이 요청된다고 판단되면, 직렬화된 패킷 데이터들을 직접 메모리 액세스에 의해 네트워크 전자기기(200)로 전송한다(제608 단계). 직접 메모리 액세스 제어부(330)에 의해 패킷 데이터들을 직접 메모리 액세스에 의한 방식으로 네트워크 전자기기(200)로 전송한다
제608 단계 후에, 전송 디스크립터에 저장된 패킷 데이터들의 주소정보, 데이터 크기, 제어 정보 및 연결된 소정 전송 디스크립터 정보를 삭제한다(제610 단계). 새로운 전자기기 실행 데이터의 패킷 데이터에 관한 정보를 기록하기 위해, 이미 패킷 데이터들을 전송한 전송 디스크립터들의 패킷 데이터들에 대한 정보를 삭제한다.
도 15는 본 발명에 의한 네트워크 전자기기의 데이터 인터페이스 방법을 설명하기 위한 또 다른 일 실시예의 플로차트로서, 제어 블록에 따라 전자기기 제어 데이터의 패킷 데이터를 네트워크 전자기기(200)로 전송하거나, 제어 응답 데이터의 패킷 데이터를 수신하는 단계(제700 ~ 제704 단계들)로 이루어진다.
먼저, 호스트로부터 네트워크를 통해 전자기기 제어 데이터의 패킷 데이터를 제공받는다(제700 단계). 제공된 전자기기 제어 데이터의 패킷 데이터들은 전술한 데이터 수신부(110)에서 수신되어, 데이터 저장부(130)에 저장된다.
제700 단계 후에, 제공된 전자기기 제어 데이터의 패킷 데이터에 대한 제어 블록을 생성한다(제702 단계).
도 16은 도 15에 도시된 제702 단계를 설명하기 위한 일 실시예(702A)의 플로차트로서, 읽기 제어 블록 및 쓰기 제어 블록을 생성하는 단계(제800 ~ 제804 단계들)로 이루어진다.
먼저, 전자기기 제어 데이터의 패킷 데이터에 대한 주소정보, 데이터 크기, 제어 정보 및 전송상태 정보를 갖는 읽기 제어 블록을 생성한다(800 단계). 도 5의 (a)는 읽기 제어블록의 일 예를 나타낸다. 읽기 제어 블록은 전술한 네트워크 처리부(140)에 의해 생성된다.
제800 단계 후에, 제어 응답 데이터의 패킷 데이터가 저장될 소정 저장 공간을 할당한다(제802 단계). 소정 저장공간은 전술한 데이터 저장부(130)의 소정 영역에 할당된다.
제802 단계 후에, 소정 저장공간의 주소정보, 소정 저장공간의 크기, 제어 정보 및 전송상태 정보를 갖는 쓰기 제어 블록을 생성한다(제804 단계). 도 5의 (b)는 쓰기 제어블록의 일 예를 나타낸다. 쓰기 제어 블록은 전술한 네트워크 처리부(140)에 의해 생성된다.
한편, 702 단계 후에, 생성된 제어블록에 대응하는 전자기기 제어 데이터의 패킷 데이터를 네트워크 전자기기(200)로 전송하고, 네트워크 전자기기(200)로부터 전자기기 제어 데이터에 대한 제어 응답 데이터의 패킷 데이터를 수신한다(제704 단계).
도 17은 도 15에 도시된 제704 단계를 설명하기 위한 일 실시예(704A)의 플로차트로서, 인터럽트 신호에 의해 전자기기 제어 데이터의 패킷 데이터를 네트워크 전자기기(200)로 전송하고, 제어 응답 데이터의 패킷 데이터를 수신하여 호스트로 전송하는 단계(제900 ~ 제908 단계들)로 이루어진다.
먼저, 인터럽트 신호를 생성하여, 네트워크 전자기기(200)로 인터럽트 신호를 전송한다(제900 단계).
제900 단계 후에, 읽기 제어 블록에 대응하여, 전자기기 제어 데이터의 패킷 데이터에 대해 네트워크 전자기기(200)로 전송한다(제902 단계). 읽기 제어블록의 주소정보에 대응하는 전자기기 제어 데이터의 패킷 데이터를 네트워크 전자기기(200)로 전송한다
제902 단계 후에, 전자기기 제어 데이터의 패킷 데이터에 대한 전송이 완료되었는가를 판단한다(제904 단계). 만일, 전자기기 제어 데이터의 패킷 데이터가 네트워크 전자기기(200)로 전송이 완료되지 않았다고 판단되면, 제904 단계를 계속 수행한다.
그러나, 전자기기 제어 데이터의 패킷 데이터에 대한 전송이 완료되었다고 판단되면, 전자기기 제어 데이터에 대한 제어 응답 데이터의 패킷 데이터를 소정 저장공간으로 수신한다(제906 단계). 제어 응답 데이터의 패킷 데이터를 소정 저장공간으로 수신하기 위해, 전술한 쓰기 제어 블록의 주소 정보가 이용된다.
제906 단계 후에, 수신된 제어 응답 데이터의 패킷 데이터를 호스트로 전송한다.
이상에서 설명한 바와 같이, 본 발명에 의한 네트워크 전자기기의 데이터 인터페이스 장치 및 방법은 네트워크 전자기기와 네트워크 전자기기의 인터페이스 장치의 로컬 버스 대역폭의 점유율을 낮춤으로써 고속 데이터 전송이 가능하게 하고, 직접 메모리 액세스를 이용한 스트리밍 채널에 의해, 명령어 해석의 전처리 과정을 생략함으로써 코드의 간소화 및 헤더 정보의 최소화를 이룰 수 있도록 하는 효과가 있다.

Claims (12)

  1. 호스트로부터 네트워크를 통해 전자기기 실행 데이터 또는 전자기기 제어 데이터를 수신하는 데이터 수신부, 상기 수신된 데이터의 저장을 제어하는 데이터 저장 제어부 및 데이터를 저장하는 데이터 저장부를 포함하는 네트워크 전자기기의 데이터 인터페이스 장치에 있어서,
    상기 데이터 저장부에 저장된 상기 전자기기 실행 데이터의 패킷 데이터들에 대한 전송 디스크립터들을 생성하거나, 상기 데이터 저장부에 저장된 상기 전자기기 제어 데이터의 패킷 데이터에 대한 제어 블록을 생성하는 네트워크 처리부; 및
    상기 생성된 전송 디스크립터들에 대응하는 상기 패킷 데이터들을 직접 메모리 액세스에 의해 상기 네트워크 전자기기로 전송하거나, 상기 생성된 제어 블록에 대응하는 상기 전자기기 제어 데이터의 패킷 데이터를 상기 네트워크 전자기기로 전송하고, 상기 네트워크 전자기기로부터 상기 전자기기 제어 데이터에 대한 제어응답 데이터의 패킷 데이터를 수신하는 인터페이스 제어부를 구비하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 장치.
  2. 제1 항에 있어서, 상기 네트워크 처리부는
    상기 데이터 저장부에 저장된 상기 패킷 데이터들의 주소정보, 데이터 크기, 제어 정보 및 서로 연결된 소정 전송 디스크립터 정보를 갖는 상기 전송 디스크립터들을 생성하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 장치.
  3. 제2 항에 있어서, 상기 네트워크 처리부는
    상기 데이터 저장부에 저장된 상기 전자기기 제어 데이터의 패킷 데이터에 대한 주소 정보, 데이터 크기, 제어 정보 및 전송상태 정보를 갖는 읽기 제어 블록을 생성하거나, 상기 제어 응답 데이터의 패킷 데이터가 저장될 소정 저장공간의 주소 정보, 상기 소정 저장공간의 크기, 제어 정보 및 전송상태 정보를 갖는 쓰기 제어 블록을 생성하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 장치.
  4. 제3 항에 있어서, 상기 네트워크 처리부는
    상기 전자기기 제어 데이터의 패킷 데이터를 상기 네트워크 전자기기로 전송하기 전에, 상기 제어 응답 데이터가 저장될 상기 소정 저장공간을 상기 데이터 저장부에 할당하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 장치.
  5. 제4 항에 있어서, 상기 인터페이스 제어부는
    로컬 버스에 대한 데이터 전송을 제어하는 로컬 버스 제어부;
    상기 전송 디스크립터들을 검사하여, 상기 전송 디스크립터들의 주소정보에 대응하는 상기 패킷 데이터들을 상기 데이터 저장부로부터 인출하고, 상기 인출된 패킷 데이터들을 출력하는 제1 채널 제어부;
    상기 인출된 패킷 데이터들을 직렬화하는 데이터 직렬화 처리부;
    상기 직렬화된 패킷 데이터들을 직접 메모리 액세스에 의해 상기 네트워크 전자기기로 전송하는 직접 메모리 액세스 제어부;
    상기 읽기 제어 블록에 대응하는 상기 전자기기 제어 데이터의 패킷 데이터를 인출하여 상기 네트워크 전자기기로 전송하거나, 상기 쓰기 제어 블록에 대응하는 상기 제어 응답 데이터의 패킷 데이터를 수신하고, 상기 수신된 제어 응답 데이터의 패킷 데이터를 상기 호스트로 출력하는 제2 채널 제어부;
    인터럽트 신호를 생성하여, 상기 네트워크 전자기기로 출력하는 인터럽트 생성부;
    상기 읽기 제어 블록 및 상기 쓰기 제어 블록을 저장하는 레지스터부;
    상기 데이터 저장부에 저장된 상기 전자기기 제어 데이터의 액세스를 위한
    저장공간으로 사용되는 액세스 데이터 저장부를 구비하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 장치.
  6. 제5 항에 있어서, 레지스터부는
    동작 레지스터군 블록, 인터페이스 파라미터 블럭 또는 프로토콜 구조체 블럭을 더 구비하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 장치.
  7. 네트워크 전자기기의 데이터 인터페이스 장치에서 수행되는 네트워크 전자기기의 데이터 인터페이스 방법에 있어서,
    (a) 호스트로부터 네트워크를 통해 전자기기 실행 데이터의 패킷 데이터들을 제공받는 단계;
    (b) 상기 제공된 전자기기 실행 데이터의 패킷 데이터들에 대한 전송 디스크립터들을 생성하는 단계; 및
    (c) 상기 생성된 전송 디스크립터들에 대응하는 상기 패킷 데이터들을 직접 메모리 액세스에 의해 상기 네트워크 전자기기로 전송하는 단계를 구비하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 방법.
  8. 제7 항에 있어서, 상기 (b) 단계는
    상기 패킷 데이터들의 주소정보, 데이터 크기, 제어 정보 및 연결된 소정 전송 디스크립터 정보를 갖는 상기 전송 디스크립터들을 생성하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 방법.
  9. 제8 항에 있어서, 상기 (c) 단계는
    (c1) 상기 전송 디스크립터들을 검사하여, 상기 패킷 데이터들의 정보가 존재하는가를 판단하는 단계;
    (c2) 상기 패킷 데이터들의 정보가 존재한다고 판단되면, 상기 전송 디스크립터들의 주소정보에 대응하는 상기 패킷 데이터들을 인출하는 단계;
    (c3) 상기 인출된 패킷 데이터들을 직렬화하는 단계;
    (c4) 상기 네트워크 전자기기로부터 상기 직렬화된 패킷 데이터의 전송이 요청되는가를 판단하는 단계;
    (c5) 상기 네트워크 전자기기로부터 상기 직렬화된 패킷 데이터의 전송이 요청된다고 판단되면, 상기 직렬화된 패킷 데이터들을 직접 메모리 액세스에 의해 상기 네트워크 전자기기로 전송하는 단계; 및
    (c6) 상기 전송 디스크립터들에 저장된 상기 패킷 데이터들의 상기 주소정보, 상기 데이터 크기, 상기 제어 정보 및 상기 연결된 소정 전송 디스크립터 정보를 삭제하는 단계를 구비하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 방법.
  10. 네트워크 전자기기의 데이터 인터페이스 장치에서 수행되는 네트워크 전자기기의 데이터 인터페이스 방법에 있어서,
    (d) 호스트로부터 네트워크를 통해 전자기기 제어 데이터의 패킷 데이터를 제공받는 단계;
    (e) 상기 제공된 전자기기 제어 데이터의 패킷 데이터에 대한 제어 블록을 생성하는 단계; 및
    (f) 상기 생성된 제어블록에 대응하는 상기 전자기기 제어 데이터의 패킷 데이터를 상기 네트워크 전자기기로 전송하고, 상기 네트워크 전자기기로부터 상기 전자기기 제어 데이터에 대한 제어 응답 데이터의 패킷 데이터를 수신하는 단계를 구비하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 방법.
  11. 제10 항에 있어서, 상기 (e) 단계는
    (e1) 상기 전자기기 제어 데이터의 패킷 데이터에 대한 주소정보, 데이터 크기, 제어 정보 및 전송상태 정보를 갖는 읽기 제어 블록을 생성하는 단계;
    (e2) 상기 제어 응답 데이터의 패킷 데이터가 저장될 소정 저장 공간을 할당하는 단계; 및
    (e3) 상기 소정 저장공간의 주소정보, 상기 소정 저장공간의 크기, 제어 정보 및 전송상태 정보를 갖는 쓰기 제어 블록을 생성하는 단계를 구비하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 방법.
  12. 제11 항에 있어서, 상기 (f) 단계는
    (f1) 인터럽트 신호를 생성하여, 상기 네트워크 전자기기로 상기 인터럽트신호를 전송하는 단계;
    (f2) 상기 읽기 제어 블록에 대응하여, 상기 전자기기 제어 데이터의 패킷 데이터에 대해 상기 네트워크 전자기기로 전송하는 단계;
    (f3) 상기 전자기기 제어 데이터의 패킷 데이터에 대한 전송이 완료되었는가를 판단하는 단계;
    (f4) 상기 전자기기 제어 데이터의 패킷 데이터에 대한 전송이 완료되었다고 판단되면, 상기 전자기기 제어 데이터에 대한 상기 제어 응답 데이터의 패킷 데이터를 상기 소정 저장공간으로 수신하는 단계; 및
    (f5) 상기 수신된 제어 응답 데이터의 패킷 데이터를 상기 호스트로 전송하는 단계를 구비하는 것을 특징으로 하는 네트워크 전자기기의 데이터 인터페이스 방법.
KR1020030039889A 2003-06-19 2003-06-19 네트워크 전자기기의 데이터 인터페이스 장치 및 방법 KR100544188B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020030039889A KR100544188B1 (ko) 2003-06-19 2003-06-19 네트워크 전자기기의 데이터 인터페이스 장치 및 방법
US10/873,829 US20050038939A1 (en) 2003-06-19 2004-06-16 Data interfacing apparatus and method of a network electronic device
JP2004182816A JP2005011357A (ja) 2003-06-19 2004-06-21 ネットワーク電子機器のデータインターフェース装置および方法
CNA2004100597288A CN1574845A (zh) 2003-06-19 2004-06-21 网络电子设备的数据接口连接装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030039889A KR100544188B1 (ko) 2003-06-19 2003-06-19 네트워크 전자기기의 데이터 인터페이스 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20040110540A true KR20040110540A (ko) 2004-12-31
KR100544188B1 KR100544188B1 (ko) 2006-01-23

Family

ID=34101677

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030039889A KR100544188B1 (ko) 2003-06-19 2003-06-19 네트워크 전자기기의 데이터 인터페이스 장치 및 방법

Country Status (4)

Country Link
US (1) US20050038939A1 (ko)
JP (1) JP2005011357A (ko)
KR (1) KR100544188B1 (ko)
CN (1) CN1574845A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101270743B1 (ko) * 2011-11-21 2013-06-03 (주) 시스메이트 네트워크 보안 시스템의 하드웨어 부하 분산을 위한 하이브리드 버퍼 디스크립터 처리 장치 및 방법
CN111556161A (zh) * 2020-05-12 2020-08-18 青岛海信医疗设备股份有限公司 用于广告的终端控制方法和通信服务器

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI531959B (zh) * 2012-10-24 2016-05-01 金寶電子工業股份有限公司 資料列印方法及資料列印系統
US9258257B2 (en) 2013-01-10 2016-02-09 Qualcomm Incorporated Direct memory access rate limiting in a communication device
WO2017036996A1 (en) 2015-09-01 2017-03-09 Nagravision S.A. Method and device to transfer a video stream between a host device and an electronic descrambling device
CN111490910A (zh) * 2020-03-27 2020-08-04 深圳融安网络科技有限公司 设备信息的扫描方法、终端设备及计算机可读存储介质

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2650412B1 (fr) * 1989-07-27 1991-10-11 Bull Sa Dispositif passerelle de connexion d'un bus d'ordinateur a un reseau fibre optique en forme d'anneau
US5136582A (en) * 1990-05-29 1992-08-04 Advanced Micro Devices, Inc. Memory management system and method for network controller
JP2500333B2 (ja) * 1991-08-07 1996-05-29 工業技術院長 論理型プログラム処理方法
EP0653700B1 (en) * 1993-11-16 2002-01-30 Fujitsu Limited Network printer apparatus
JP3402733B2 (ja) * 1994-03-14 2003-05-06 富士通株式会社 伝送装置の制御システム
JP3501518B2 (ja) * 1994-10-21 2004-03-02 富士通株式会社 伝送装置の制御システム
JPH0974410A (ja) * 1995-09-04 1997-03-18 Sumitomo Electric Ind Ltd 通信中継装置
JPH09218780A (ja) * 1995-10-30 1997-08-19 Xerox Corp 文書処理システムのジョブチケットプログラム装置及び方法
US5760775A (en) * 1995-10-30 1998-06-02 Xerox Corporation Apparatus and method for programming a job ticket in a document processing system
DE10102202A1 (de) * 2001-01-18 2002-08-08 Infineon Technologies Ag Mikroprozessorschaltung für tragbare Datenträger
KR100403620B1 (ko) * 2001-02-28 2003-10-30 삼성전자주식회사 채널 활용율을 높이는 통신 시스템 및 그 방법
JP2003091497A (ja) * 2001-05-17 2003-03-28 Matsushita Electric Ind Co Ltd データ転送装置及びデータ転送方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101270743B1 (ko) * 2011-11-21 2013-06-03 (주) 시스메이트 네트워크 보안 시스템의 하드웨어 부하 분산을 위한 하이브리드 버퍼 디스크립터 처리 장치 및 방법
CN111556161A (zh) * 2020-05-12 2020-08-18 青岛海信医疗设备股份有限公司 用于广告的终端控制方法和通信服务器
CN111556161B (zh) * 2020-05-12 2023-05-16 青岛海信医疗设备股份有限公司 用于广告的终端控制方法和通信服务器

Also Published As

Publication number Publication date
JP2005011357A (ja) 2005-01-13
US20050038939A1 (en) 2005-02-17
KR100544188B1 (ko) 2006-01-23
CN1574845A (zh) 2005-02-02

Similar Documents

Publication Publication Date Title
EP1896965B1 (en) Dma descriptor queue read and cache write pointer arrangement
KR100775406B1 (ko) Dma 데이터 전송 장치 및 dma 데이터 전송 방법
US12086087B2 (en) Methods and apparatus for network interface fabric operations
US9330002B2 (en) Multi-core interconnect in a network processor
CN111090221B (zh) 用于直写式光刻系统中的PCIe DMA数据传输系统及其传输方法
US20040073728A1 (en) Optimizations to receive packet status from FIFO bus
US8595401B2 (en) Input output bridging
US11010165B2 (en) Buffer allocation with memory-based configuration
US6732249B1 (en) Host computer virtual memory within a network interface adapter
US9612934B2 (en) Network processor with distributed trace buffers
US11513958B1 (en) Shared mid-level data cache
US11327890B1 (en) Partitioning in a processor cache
CN113590512A (zh) 可直连外设设备的自启动dma装置及应用
WO2022156376A1 (zh) 一种目标地址的预取方法、系统、设备及介质
KR100544188B1 (ko) 네트워크 전자기기의 데이터 인터페이스 장치 및 방법
US11093405B1 (en) Shared mid-level data cache
US11036643B1 (en) Mid-level instruction cache
CN117369734A (zh) 一种存储资源管理系统、方法及存储虚拟化系统
CN118363901B (zh) PCIe设备、电子组件及电子设备
JP7363344B2 (ja) メモリ制御装置、および制御方法
JP2000137674A (ja) バースト転送メモリマップトレジスタ
KR100369363B1 (ko) 메모리를 이용한 호스트 시스템과 로컬 시스템 내부의마이크로컨트롤러 사이의 데이터 전송 및 수신 장치
JP2000137676A (ja) バッファ制御方式
JP2013130952A (ja) データ転送装置及びデータ転送方法
CN117435535A (zh) 一种存储系统、主控芯片、数据存储方法及数据读取方法

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

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20131230

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee