KR100275069B1 - 에취에스비인터페이스프로그램을이용한노드간메시지전송방법 - Google Patents

에취에스비인터페이스프로그램을이용한노드간메시지전송방법 Download PDF

Info

Publication number
KR100275069B1
KR100275069B1 KR1019970079031A KR19970079031A KR100275069B1 KR 100275069 B1 KR100275069 B1 KR 100275069B1 KR 1019970079031 A KR1019970079031 A KR 1019970079031A KR 19970079031 A KR19970079031 A KR 19970079031A KR 100275069 B1 KR100275069 B1 KR 100275069B1
Authority
KR
South Korea
Prior art keywords
hsb
task
data
node
interface
Prior art date
Application number
KR1019970079031A
Other languages
English (en)
Other versions
KR19990058857A (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 KR1019970079031A priority Critical patent/KR100275069B1/ko
Publication of KR19990058857A publication Critical patent/KR19990058857A/ko
Application granted granted Critical
Publication of KR100275069B1 publication Critical patent/KR100275069B1/ko

Links

Images

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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명은, 각각의 버퍼 및 DMA(Direct Memory Access) 채널을 가지고 HSB에 연결된 송신 및 수신 타스크를 포함하는 HSB 인터페이스와, 상기 HSB 인터페이스를 통해 데이터를 송수신하는 메인 타스크로 구성되는 노드들간의 데이터 전송 방법에 있어서, 임의의 노드내의 메인 타스크로부터 이웃하는 특정 노드로 데이터를 전송시에 응답하여 상기 HSB 송신 타스크내의 송신 버퍼에 저장하는 단계와, 상기 HSB버스의 사용상태를 점검하여 HSB버스 사용권을 요구하고, HSB버스 점유시 HSB 송신 타스크내의 송신 버퍼에 저장된 데이터를 상기 DMA채널을 통하여 이웃하는 특정 노드내 HSB인터페이스의 수신 타스크로 전송하는 단계와, 상기 HSB를 통해 데이터가 수신시에 상기 임의의 노드로부터 전송되는 데이터를 수신 타스크의 수신 버퍼에 저장하여 메인 타스크로 전송하는 단계로 이루어짐을 특징으로 한다.

Description

에취에스비 인터페이스를 이용한 노드간 메시지 전송 방법{A METHOD SENDING MESSAGE BETWEEN NODES BY USING HSB INTERFACE}
본 발명은 노드간 메시지를 전달하는 방법에 관한 것으로서, 특히 HSB(high Speed Bus) 인터페이스를 이용하여 노드간 메시지를 전송하는 방법에 관한 것이다.
다중 프로세서(Multi Processor)간의 메시지 전송을 위해서 커널 인터페이스(Kernel Interface)를 이용하는데, 커널 인터페이스는 각 노드와 노드사이에 메시지를 전송해 주는 역할을 한다. 이런 기존의 커널 인터페이스는 미리 프로그래밍된 프로그램들로서 LAN 이나 VME Bus를 이용하여 커널 인터페이싱을 하였다.
도 1은 종래의 LAN 또는 VME Bus 또는 이더넷을 이용한 메시지 전송방법을 설명하기 위한 도면이다. 종래에는 이미 상용화된 VME Bus 이나 이더넷 등의 전송 네트워크를 이용한 구성이었다. 이런 하드웨어 구성은 그 특성에 맞는 디바이스 드라이버 및 구동 프로그램으로 구성되어있으며, 이런 종래의 기술은 범용 디바이스를 기준으로 만들어졌기 때문에 프로토콜(protocol)의 송수신에 의해 메시지를 송수신하도록 되어 있어 리던던시(Redundancy)가 많고, 이로 인하여 메시지의 전송속도가 느려지는 문제가 야기된다.
상기와 같은 LAN이나 VME Bus의 메시지 흐름(Message Flow)은 동일한 절차에 의해 수행되나, 이러한 방법은 특정 시스템에서 좋은 효율을 내지는 못하는 문제점이 있었다. 예를 들면, LAN이나 VME Bus를 이용한 메시지 전송 방법은 복잡한 절차를 갖는 프로토콜을 수수하므로써, 에러정정, 데이터 압축 등의 처리가 여러번 행하여져 리던던시가 증가하여 데이터 전송을 고속으로 하기에 다소 곤란하다.
뿐만 아니라 기존에는 여러 형태의 백본(Backbone)을 사용하였고, 이런 백본은 범용 시스템을 위하여 구성되어 있으므로 어느 특정 시스템에 적용하기에는 너무 많은 리던던시와 너무도 다양한 기능을 갖고 있으며 이런 다양한 기능들이 오히려 데이터 전송을 저하시킨다. 여기서, 백본은 메시지등의 데이터를 전송하기 위한 버스를 의미하는 것으로, 노드간을 연결하는 물리적인 와이어들이다.
본 발명은 상기된 바와 같은 문제점을 해결하기 위한 것으로, HSB를 이용하여 노드간의 데이터 전송 속도를 고속으로 할 수 있는 HSB 인터페이스를 이용한 노드간 메시지 전송 방법을 제공함에 있다.
본 발명의 다른 목적은 데이터 전송 형태가 패킷 형태로 이루어지므로 버스 이용 효율을 높이는 HSB 인터페이스를 이용한 노드간 메시지 전송 방법을 제공함에 있다.
본 발명의 다른 목적과 장점은 아래의 발명의 상세한 설명을 읽고 아래의 도면을 참조하면 보다 명백해질 것이다.
상기와 같은 목적을 달성하기 본 발명은, 각각의 버퍼 및 DMA(Direct Memory Access) 채널을 가지고 HSB에 연결된 송신 및 수신 타스크를 포함하는 HSB 인터페이스와, 상기 HSB 인터페이스를 통해 데이터를 송수신하는 메인 타스크로 구성되는 노드들간의 데이터 전송 방법에 있어서, 임의의 노드내의 메인 타스크로부터 이웃하는 특정 노드로 데이터를 전송시에 응답하여 상기 HSB 송신 타스크내의 송신 버퍼에 저장하는 단계와, 상기 HSB버스의 사용상태를 점검하여 HSB버스 사용권을 요구하고, HSB버스 점유시 HSB 송신 타스크내의 송신 버퍼에 저장된 데이터를 상기 DMA채널을 통하여 이웃하는 특정 노드내 HSB인터페이스의 수신 타스크로 전송하는 단계와, 상기 HSB를 통해 데이터가 수신시에 상기 임의의 노드로부터 전송되는 데이터를 수신 타스크의 수신 버퍼에 저장하여 메인 타스크로 전송하는 단계로 이루어짐을 특징으로 한다.
본 발명에 있어서, 상기 데이터 전송 형태는 패킷 형태로 이루어지는 것이 바람직하며, 상기 패킷 형태는 소프트웨어 로직을 근간으로 하는 것이 가능한 것이 바람직하고, 상기 소프트웨어 로직은 간단한 하드웨어 로직을 바탕으로 하는 것이 가능한 것이 바람직하다. 그리고 상기 버스 사용권을 얻었으면 패킷 크기만큼 데이터를 전송하는 것이 바람직하며, 상기 패킷 크기는 버스 사용권을 위해 너무 길지 않도록 하는 것이 요구된다. 또한, 상기 패킷 크기를 버스 사용권을 위해서 385 바이트로 일정하게 유지하는 것이 바람직하고, 상기 전송에 있어서, 하드웨어 전기적 용량만 된다면 많은 하드웨어 노드도 사용이 가능한 것이 바람직하다.
또한 하드웨어의 백본이 수정되더라도 응용 프로그램은 수정할 필요가 없는 것이 바람직하며, 필요에 따른 상기 프로그램의 수정으로 원래의 응용 레벨의 프로그램을 사용할 수 있는 것이 바람직하다.
본 발명은 다양하게 변형될 수 있고, 여러 가지 형태를 취할 수 있지만, 그에 따른 특별한 실시예만 상기 도면에 도시되어 있고, 그에 대해서는 상세하게 기술될 것이다. 하지만, 본 발명은 명세서에서 언급된 특별한 형태로 한정되는 것이 아닌 것으로 이해되어야 하며, 오히려 본 발명은 첨부된 청구범위에 의해 정의된, 본 발명의 정신과 범위 내에 있는 모든 변형물, 균등물 및 대체물을 포함하는 것으로 이해되어야 한다.
도 1은 종래의 LAN 또는 VME Bus 또는 이더넷 등을 이용한 메시지 전송 방법을 설명하기 위한 도면.
도 2는 본 발명의 실시예에 의한 HSB 인터페이스를 이용하여 노드간 메시지를 전송하는 장치의 구성을 도시한 도면.
도 3은 본 발명의 실시예에 의한 HSB 인터페이스를 이용하여 노드간 메시지를 전송하는 방법을 나타내는 도면.
이하 본 발명에 따른 HSB인터페이스를 이용하여 메시지를 전송하는 실시예의 동작을 첨부한 도 2 및 도 3를 참조하여 설명한다.
도 2는 본 발명의 실시예에 의한 HSB 인터페이스를 이용하여 노드간 메시지를 전송하는 장치의 구성을 도시한 도면이다. 도 2을 참조하면, 각 노드를 구성하는 모듈 CPM, RIM, LIM, VPM 및 TCM 등은 본 발명에 따른 HSB 인터페이스에 의해 인터페이싱된다.
도 3 은 본 발명의 실시예에 의한 HSB 인터페이스를 이용하여 임의의 노드와 이웃하는 특정 노드간 메시지를 전송하는 방법을 나타낸다. 예를 들면, 노드 1과 이에 이웃하는 노드 2간의 데이터 전송을 나타낸다. 도 3에서 각 노드내의 HSB 인터페이스는 송신 타스크 HSBi(여기서 i는 정수) TX Task와 수신 타스크 HSBi RX Task로 구성된다. 이들 송신 타스크 HSBi TX Task와 수신 타스크 HSBi RX Task는 각각 내부에 버퍼들 및 DMA 채널을 가지고 있으며, 각 노드들내의 메인 제어 장치인 프로세서, 예를 들면, 중앙처리장치(CPU) 혹은 마이크로프로세서(MPU)내에 위치한 소프트웨어 모듈이다. 그리고, 도 3에서 노드 1과 노드 2 사이에 연결된 HSB는 하드웨어의 연결을 의미한다. 따라서, 노드들로 구성된 하드웨어 매체가 변경되는 경우에는 상기 HSB 인터페이스만을 어플리케이션 프로그램을 변경하면 노드간의 메시지 전송이 가능하게 된다.
임의의 노드, 예컨대 노드 1에서 이웃하는 특정노드, 예를 들면 노드 2로 데이터를 전송하는 과정을 도 3을 참조하여 설명하면 다음과 같다.
지금, 노드 1내의 메인 타스크 Task_A에서 노드 2로 데이터를 전송하여 노드 2내의 메인 타스크 Task_B가 데이터를 수신하는 예를 설명한다.
먼저, 노드 1내의 메인 타스크 Task_A에서 노드 2로 데이터를 전송하면, 상기 전송되는 데이터는 노드 1내의 HSB 인터페이스의 송신 타스크 HSBi_TX Task로 제공된다. 이때, 상기 노드 1내 송신 타스크 HSBi_TX Task는 입력되는 데이터를 내부 송신 버퍼에 저장하고, 노드 2내의 HSB 인터페이스로 HSB버스 사용을 요구한다. 상기 노드 2내의 HSB 인터페이스로 HSB 버스 사용을 허락 메시지가 전송되지 않으면 HSB 버스 사용을 대기하고 HSB 사용권을 얻었다면, 노드 1내의 송신 타스크 HSBi_TX Task는 송신 버퍼에 저장된 데이터를 DMA채널을 통해 노드 2의 수신 타스크 HSBi_RX Task로 전송한다. 이때, 상기 노드 2내의 수신 타스크 HSBi_RX Task는 HSB를 통해 전송되는 데이터를 수신 버퍼에 저장한 후, 데이터의 수신이 완료되면 노드 2의 메인 타스크 Task_B로 전달한다.
상기와 같은 단계로 데이터 전송이 이루어지는 HSB를 이용한 본 발명의 데이터 통신은 패킷 통신을 기본 구조로 하며, 이 패킷 통신은 버스 사용권을 버스에 요구하고, 버스 사용권을 얻으면 정해진 노드로 정해진 패킷 크기만큼 데이터를 전송한다.
상기 패킷 크기는 버스 사용권을 위해 너무 길지 않도록 하였으며 상기 버스 사용권을 위해서 패킷 크기도 385 바이트로 일정하게 유지하여 버스 사용 시간이나 데이터 전송 효율 등을 고려하였다.
그리고 자체적으로 설계한 하드웨어 버스, 즉 HSB를 사용하게 되었으며, 상기 버스는 본 시스템을 위하여 설계된 하드웨어로서 노드간의 데이터 전송 속도를 올리는데 주안점을 두었으며, 하드웨어 로직을 단순화하여 본 소프트웨어에 제어할 하드웨어 핀을 단순화하여 디바이스 드라이버의 HSB 제어 로직이 매우 단순하며, HSB 시작 로직도 매우 단순하여 디바이스 드라이브 프로그램이 단순하다.
상기와 같이 동작하는 본 발명은, 버스 인터페이스를 할 수 있는 디바이스 드라이버 프로그램의 변경으로 하드웨어와 독립적인 소프트웨어를 구현할 수 있다는 장점을 갖고 있으며, 데이터의 패킷 크기도 데이터의 포맷에 따라 변경이 가능하다. 그리고 데이터 전송 형태가 패킷 형태로 이루어지므로 간단한 하드웨어 로직을 바탕으로 소프트웨어 로직을 패킷 통신을 근간으로 하여 버스 이용 효율을 높였다. 또한 패킷 크기도 384 바이트로 고정하여 속도를 향상시키고 버스 점유시간도 지나치게 길지 않게 하여 버스의 사용권 속도도 높이고 시간도 조정하였다. 그리고 하드웨어 전기적 용량만 된다면 많은 하드웨어 노드를 붙일 수 있다는 장점과 응용 프로그램은 하드웨어 백본이 수정되더라도 응용은 수정이 없이 레벨의 프로그램을 사용할수 있다는 장점이 있다.

Claims (2)

  1. 각각의 버퍼 및 DMA(Direct Memory Access) 채널을 가지고 HSB에 연결된 송신 및 수신 타스크를 포함하는 HSB 인터페이스와, 상기 HSB 인터페이스를 통해 데이터를 송수신하는 메인 타스크로 구성되는 노드들간의 데이터 전송 방법에 있어서,
    임의의 노드내의 메인 타스크로부터 이웃하는 특정 노드로 데이터를 전송시에 응답하여 상기 HSB 송신 타스크내의 송신 버퍼에 저장하는 단계와,
    상기 HSB 버스의 사용상태를 점검하여 HSB버스 사용권을 요구하고, HSB 버스 점유시 HSB 송신 타스크내의 송신 버퍼에 저장된 데이터를 상기 DMA채널을 통하여 이웃하는 특정 노드내 HSB인터페이스의 수신 타스크로 전송하는 단계와,
    상기 HSB를 통해 데이터가 수신시에 상기 임의의 노드로부터 전송되는 데이터를 수신 타스크의 수신 버퍼에 저장하여 메인타스크로 전송하는 단계로 이루어짐을 특징으로 에취에스비 인터페이스를 이용한 노드간 메시지 전송 방법.
  2. 제1항에 있어서, 상기 DMA채널을 통해 전송되는 데이터의 형태는 패킷 형태임을 특징으로 하는 에취에스비 인터페이스를 이용한 노드간 메시지 전송 방법.
KR1019970079031A 1997-12-30 1997-12-30 에취에스비인터페이스프로그램을이용한노드간메시지전송방법 KR100275069B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970079031A KR100275069B1 (ko) 1997-12-30 1997-12-30 에취에스비인터페이스프로그램을이용한노드간메시지전송방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970079031A KR100275069B1 (ko) 1997-12-30 1997-12-30 에취에스비인터페이스프로그램을이용한노드간메시지전송방법

Publications (2)

Publication Number Publication Date
KR19990058857A KR19990058857A (ko) 1999-07-26
KR100275069B1 true KR100275069B1 (ko) 2000-12-15

Family

ID=19530008

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970079031A KR100275069B1 (ko) 1997-12-30 1997-12-30 에취에스비인터페이스프로그램을이용한노드간메시지전송방법

Country Status (1)

Country Link
KR (1) KR100275069B1 (ko)

Also Published As

Publication number Publication date
KR19990058857A (ko) 1999-07-26

Similar Documents

Publication Publication Date Title
US5764895A (en) Method and apparatus for directing data packets in a local area network device having a plurality of ports interconnected by a high-speed communication bus
JP3279487B2 (ja) 高速データ通信モデム
JP3577393B2 (ja) 高速データ通信モデム
US6035360A (en) Multi-port SRAM access control using time division multiplexed arbitration
US4652874A (en) Serial communication interface for a local network controller
US4700185A (en) Request with response mechanism and method for a local area network controller
US5774461A (en) Medium access control and air interface subsystem for an indoor wireless ATM network
KR950002712B1 (ko) 네트워크 인터페이스 장치
EP1750401B1 (en) USB 1.1 over a high speed link
US6185607B1 (en) Method for managing network data transfers with minimal host processor involvement
GB2226737A (en) Local area network with an active star topology
US4593281A (en) Local area network interframe delay controller
KR20040012876A (ko) 호스트 컴퓨터 시스템과 이더넷 어댑터 사이의 데이터 이송
JP2825140B2 (ja) 複数チャネルを備えたトークン・リング
EP1433071B1 (en) Bus system and bus interface for connection to a bus
US5856921A (en) Apparatus and method for intermodular communications using system bus controllers
KR100257712B1 (ko) 인터넷을 이용한 프로세스 간의 정보교환 장치
US6195334B1 (en) Apparatus and method for terminating a data transfer in a network switch in response to a detected collision
US6061748A (en) Method and apparatus for moving data packets between networks while minimizing CPU intervention using a multi-bus architecture having DMA bus
US6219353B1 (en) Message hub
JPH02228854A (ja) データ通信システムおよびデータ通信方法
US5666485A (en) Software driver for a system bus
CN116644010A (zh) 一种数据处理方法、装置、设备及介质
KR100275069B1 (ko) 에취에스비인터페이스프로그램을이용한노드간메시지전송방법
JP2002521942A (ja) メモリ装置およびメモリ装置の作動方法

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

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee