KR100577148B1 - 이더넷 컨트롤러의 어드레스검출장치 및 검출방법 - Google Patents

이더넷 컨트롤러의 어드레스검출장치 및 검출방법 Download PDF

Info

Publication number
KR100577148B1
KR100577148B1 KR1019980051500A KR19980051500A KR100577148B1 KR 100577148 B1 KR100577148 B1 KR 100577148B1 KR 1019980051500 A KR1019980051500 A KR 1019980051500A KR 19980051500 A KR19980051500 A KR 19980051500A KR 100577148 B1 KR100577148 B1 KR 100577148B1
Authority
KR
South Korea
Prior art keywords
address
bytes
group
unit
packet
Prior art date
Application number
KR1019980051500A
Other languages
English (en)
Other versions
KR20000034224A (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 KR1019980051500A priority Critical patent/KR100577148B1/ko
Publication of KR20000034224A publication Critical patent/KR20000034224A/ko
Application granted granted Critical
Publication of KR100577148B1 publication Critical patent/KR100577148B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40032Details regarding a bus interface enhancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller

Abstract

본 발명은 그룹 어드레스(Group Address)가 SRAM의 인터널(Interal)CAM(Contents Address Memory)에서 앞, 중간, 마지막으로 파징(Parsing)하여 저장된 후, 목적지 어드레스와 2바이트씩 비교하므로 신속한 비교동작을 통해 패킷(Packet)의 처리능력을 향상시키기 위한 이더넷 컨트롤러의 어드레스 검출장치 및 어드레스 검출방법에 관한 것이다.
본 발명의 이더넷 컨트롤러의 어드레스 검출장치 및 어드레스 검출방법은 네트워크에서 복수개의 그룹 어드레스를 갖는 디바이스들간의 패킷전송에 있어서, 상기 네트위크와 패킷단위의 데이터를 입출력하는 PLS, 상기 PLS를 통해 목적지 어드레스를 입력받는 FIFO부와 상기 그룹 어드레스들이 각각 2바이트씩 앞, 중간, 마지막으로 파징하여 저장된 인터널 CAM을 갖는 SRAM 그리고 상기 FIFO부와 SRAM에 연결되어 그룹 어드레스와 목적지 어드레스를 2바이트씩 비교하는 어드레스 비교 및 제어부를 포함하여 구성되는 MAC부와, 상기 MAC부와 외부의 시스템 버스 사이에 배치되어 인터페이싱을 담당하는 시스템 버스 인터페이스부를 포함함을 특징으로 한다.

Description

이더넷 컨트롤러의 어드레스검출장치 및 검출방법
본 발명은 이더넷 프로토콜(Ethernet Protocol)에 관한 것으로 특히, 근거리 통신(LAN:Local Area Network)에 연결된 네트워크 인터페이스 카드(NIC:Network Interface Card)로부터 입력되는 패킷 어드레스(Packet Address)를 검출하는데 적당한 이더넷 컨트롤러의 어드레스검출장치 및 검출방법에 관한 것이다.
일반적으로 컴퓨터, 워드프로세서 등과 같은 데이터 단말장치간의 상호접속에 따른 근거리 통신망(LAN)의 사용은 잘 알려져 있다.
근거리 통신망에서 각 디바이스들은 고유의 어드레스를 가짐과 동시에 그 밖의 여러개의 그룹 어드레스(Group Address)를 가지고 있다.
따라서 각 디바이스 내부에 위치한 네트워크 인터페이스 카드로 전달되는 어드레스와 자신의 어드레스 및 그룹 어드레스를 비교하여 그 결과에 따라 데이터를 수신하거나 수신하지 않게된다.
일반적으로 네트워크상에서 각 디바이스들간의 데이터 송수신은 패킷단위로 이루어진다.
따라서 디바이스는 패킷단위로 입력되는 데이터중 목적지 어드레스를 검출하여 자신이 목적지 어드레스에 해당하면 현재 전송되어 오는 패킷을 받아들이고 목적지 어드레스에 해당되지 않으면 패킷을 받아들이지 않게된다.
이하, 첨부된 도면을 참조하여 종래 이더넷 컨트롤러의 어드레스 검출장치 를 설명하기로 한다.
도 1은 종래 이더넷 컨트롤러의 어드레스검출장치의 구성블록도이고, 도 2는 도 1의 부분적 상세구성도이다.
그리고, 도 3은 종래 다른 실시예에 따른 이더넷 컨트롤러의 어드레스검출장치의 구성블록도이고, 도 4는 종래 또다른 실시예의 소프트웨어 해쉬 방법에 따른 멀티캐스트 테이블을 나타낸 도면이다.
도 1에 도시한 바와같이 시스템 버스 인터페이스(System Bus Interface)부(13)와, MAC(Media Access Controller)부(15), 그리고 PLS(Physical Layer Signaling)(17)로 구성된다.
상기 시스템 버스 인터페이스부(13)는 시스템 버스(11)와 MAC부(15)사이에 배치된다.
상기 PLS(17)는 각 네트워크로부터 패킷단위의 데이터를 받는다.
또한, 상기 PLS(17)는 네트워크로부터 데이터를 수신하고 네트워크로 데이터를 송신하기 위한 인코더(Encoder) 및 디코더(Decoder)의 기능을 수행한다.
상기 MAC부(15)는 도 2에서와 같이, 에스램(SRAM)(15a), FIFO(First In First Out)메모리부(15b) 그리고 비교부(15c)를 포함한다.
상기 비교부(15c)는 상기 SRAM(15a)과 FIFO메모리부(15b)와 연결되어 상기 SRAM(15a)에 저장되어 있는 그룹어드레스와 상기 FIFO메모리부(15b)로부터 출력되는 어드레스를 비교한다.
상기 SRAM(15a)은 복수개의 그룹 어드레스를 저장하고 있고 상기 FIFO메모리부(15b)는 패킷단위로 전송되어오는 데이터의 목적지 어드레스를 받은 후 상기 비교부(15c)에 순차적으로 출력한다.
이와같이 구성된 종래 이더넷 컨트롤러의 어드레스 검출장치의 어드레스 검출방법은 다음과 같다.
시리얼(Serial)로 입력되는 목적지 어드레스가 상기 MAC부(15)내의 FIFO메모리부(15b)에 순차적으로 입력되고 최초에 입력된 어드레스부터 순차적으로 출력된다.
이때, 상기 SRAM(15a)에는 복수개의 그룹 어드레스가 저장되어 있는데 상기 비교부(15c)는 상기 SRAM(15a)에 저장된 그룹 어드레스들과 상기 FIFO메모리부(15b)로부터 출력되는 목적지 어드레스를 비교한다.
이와같이 비교과정을 통해 상기 SRAM(15a)에 저장되어 있던 그룹 어드레스와 상기 FIFO메모리부(15b)로부터 출력되는 목적지 어드레스가 서로 동일하면 동일함을 알리는 신호(hit신호)를 출력하고 비교결과 동일하지 않으면 상기 FIFO메모리부(15b)와 SRAM(15a)에 저장된 데이터를 리셋(reset)시킨다.
도 1에 도시된 어드레스 검출장치에 따른 어드레스 검출방법에 의하면 어드레스를 검출하는 블록이 상기 MAC부(15)내에 위치하고 있다는 것이다.
이와같이 어드레스를 검출하는 블록이 상기 MAC부(15)내가 아니라 상기 MAC부(15)외부에 위치하는 경우에 대해서 설명하기로 한다.
도 3과 같이, 시스템 버스 인터페이스부(13), MAC부(15), PLS(17) 그리고 어드레스 검출부(19)로 구성된다.
상기 어드레스 검출부(19)는 상기 MAC부(15)와 PLS(17)에 각각 연결된다.
상기 시스템 버스 인터페이스부(13)는 시스템 버스(11)와 상기 MAC(15)사이에 배치되며 이들을 인터페이싱 시킨다.
상기 어드레스 검출부(19)는 상기 MAC(15)에 저장된 그룹 어드레스와 상기 PLS(17)로부터 출력되는 목적지 어드레스를 비교하여 두 어드레스의 동일여부를 검출한다.
여기서 상기 MAC부(15)내에는 SRAM(도면에 도시하지 않음)이 구성되어 그룹 어드레스를 저장하고 있다.
이와같이 종래 다른실시예에 따른 어드레스 검출장치는 어드레스를 비교검출하는 블록이 상기 MAC(15)의 외부에 위치하여 상기 MAC(15)에 저장된 그룹 어드레스와 상기 PLS(17)에서 출력하는 목적지 어드레스를 비교하고 그 결과를 다시 상기 MAC(15)로 전달한다.
지금까지는 어드레스를 검출하는 블록이 MAC 내부 또는 외부에 존재하여 입력되는 어드레스와 저장하고 있던 어드레스를 비교하는 경우에 대해서 설명하였다.
어드레스를 검출방법에 따른 종래 또다른 실시예로서는 소프트웨어 해쉬(software hash)방법이 있다.
이러한 소프트웨어 해쉬방법은 네트워크 인터페이스 카드가 로딩(Loading)될 때까지 각각의 그룹 어드레스들과 약속된 폴리노미얼로 CRC(Cyclic Redundancy Check)알고리즘을 거친다.
그리고 그 결과에 따라 8byte의 멀티케스트 테이블(multicast table)를 작성한다.
상기 CRC알고리즘을 이용해서 정해진 내부의 멀티케스트 어드레스 레지스터(multicast address register)의 위치에 한 비트(bit)을 셋팅(setting)시킨다.
이와같은 방법으로 도 4에서와 같이, 멀티케스트 테이블을 작성하게 된다.
멀티케스트 테이블을 작성한 후 패킷이 들어오면 상기 패킷에 대해 CRC알고리즘을 거친다음, 그 결과값을 가지고 멀티케스트 테이블을 참고하여 해당 위치에 비트가 셋팅되어 있는지를 확인한다.
만일 해당위치에 비트가 셋팅되어 있으면 패킷을 받아들이고 그렇지 않으면 패킷을 받아들이지 않는다.
그러나 상기와 같은 종래 이더넷 컨트롤러의 어드레스 검출장치 및 어드레스 검출방법은 다음과 같은 문제점이 있었다.
첫째, 소프트웨어 해쉬방법은 속도가 매우 느리므로 패킷의 처리능력이 현저히 떨어진다.
둘째, MAC내부에서 어드레스를 검출하는 방식은 모든 그룹 어드레스를 저장하기 위해 많은 저장영역을 필요로 하고 패킷이 수신될 때마다 어드레스가 일치할 때까지 모든 그룹 어드레스를 비교하여야 하므로 패킷의 처리능력을 감소시킨다.
본 발명은 상기한 문제점을 해결하기 위해 안출한 것으로서 그룹 어드레스가 SRAM의 인터널 CAM에서 앞, 중간, 마지막으로 파징하여 저장된 후, 목적지 어드레스와 2바이트씩 비교하므로 신속한 비교동작을 통해 패킷의 처리능력을 향상시키는 이더넷 컨트롤러의 어드레스 검출장치 및 어드레스 검출방법을 제공하는데 그 목적이 있다.
본 발명의 이더넷 컨트롤러의 어드레스 검출장치는 네트워크에서 복수개의 그룹 어드레스를 갖는 디바이스들간의 패킷전송에 있어서, 상기 네트위크와 패킷단위의 데이터를 입출력하는 PLS, 상기 PLS를 통해 목적지 어드레스를 입력받는 FIFO부와 상기 그룹 어드레스들이 각각 2바이트씩 앞, 중간, 마지막으로 파징하여 저장된 인터널 CAM을 갖는 SRAM 그리고 상기 FIFO부와 SRAM에 연결되어 그룹 어드레스와 목적지 어드레스를 2바이트씩 비교하는 어드레스 비교 및 제어부를 포함하여 구성되는 MAC부와, 상기 MAC부와 외부의 시스템 버스 사이에 배치되어 인터페이싱을 담당하는 시스템 버스 인터페이스부를 포함하여 구성되는 것을 특징으로 한다.
그리고, 본 발명의 이더넷 컨트롤러의 어드레스 검출방법은 네트워크에서 복수개의 그룹 어드레스를 갖는 디바이스들간의 패킷전송에 있어서, MAC부의 인터널 CAM에 그룹 어드레스들을 각각 2바이트씩 앞, 중간, 마지막으로 파징하여 저장시키는 스텝, 상기 MAC부에서 상기 네트워크로부터 패킷 전송시 스타트 프레임 딜리미터를 검출하는 스텝, 상기 네트워크로부터 패킷단위의 데이터를 입출력하는 PLS를 통해 FIFO부에 목적지 어드레스를 저장시키는 스텝, 상기 그룹 어드레스 앞의 2바이트와 상기 목적지 어드레스 앞의 2바이트를 비교하는 스텝, 상기 비교결과 목적지 어드레스 앞의 2바이트와 그룹 어드레스 앞의 2바이트가 동일한 경우에만 상기 그룹 어드레스 중간 2바이트와 상기 목적지 어드레스 중간 2바이트를 비교하고 그 반대 경우에는 상기 패킷단위의 데이터를 리셋시키는 스텝, 상기 비교결과 목적지 어드레스 중간 2바이트와 그룹 어드레스 중간 2바이트가 동일한 경우에만 상기 그룹 어드레스 마지막 2바이트와 상기 목적지 어드레스 마지막 2바이트를 비교하고 그 반대 경우에는 상기 패킷단위의 데이터를 리셋시키는 스텝과, 상기 비교결과 목적지 어드레스 마지막 2바이트와 그룹 어드레스 마지막 2바이트가 동일한 경우에만 상기 패킷단위의 데이터를 수신하고 그 반대 경우에는 상기 패킷단위의 데이터를 리셋시키는 스텝을 포함하여 이루어지는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 이더넷 컨트롤러의 어드레스 검출장치 및 검출방법을 설명하기로 한다.
도 5는 본 발명 실시예에 따른 이더넷 컨트롤러의 어드레스검출장치에 따른 구성블록도이고, 도 6은 본 발명 실시예에 따른 MAC부의 상세구성도이다.
그리고, 도 7은 본 발명 실시예에 따른 인터널 CAM에 저장된 그룹 어드레스를 나타낸 도면이고, 도 8는 본 발명 실시예에 따른 인터널 CAM의 그룹 어드레스중 앞의 4바이트를 나타낸 도면이고, 도 9은 본 발명 실시예에 따른 인터널 CAM의 그룹 어드레스중 중간 4바이트를 나타낸 도면이며, 도 10은 본 발명 실시예에 따른 인터널 CAM의 그룹 어드레스중 마지막 2바이트를 나타낸 도면이다.
이어, 도 11은 대표적인 이더넷 패킷을 나타낸 도면이다.
그리고, 도 12는 목적지 어드레스의 구체적인 예를 나타낸 도면이고, 도 13은 본 발명 실시예에 따른 인터널 CAM에 저장된 그룹 어드레스의 구체적인 예를 나타낸 도면이다.
본 발명 실시예에 따른 이더넷 컨트롤러의 어드레스 검출장치는 네트워크에서 복수개의 그룹 어드레스를 갖는 디바이스들간의 패킷전송에 있어서 도 5에서와 같이, 시스템 버스 인터페이스부(33)와, MAC부(35), 그리고 PLS(37)로 구성된다.
상기 시스템 버스 인터페이스부(33)는 시스템 버스(31)와 상기 MAC부(35)사이에 배치되어 이들간에 인터페이싱을 담당하고, 상기 PLS(37)는 네트워크로부터 패킷단위의 데이터를 수신하고 또한 네트워크로 데이터를 송신하기 위한 인코더 및 디코더의 기능을 수행한다.
그리고 상기 MAC부(35)는 도 6에서와같이, SRAM(41), 상기 PLS(37)를 통해 목적지 어드레스를 입력받는 FIFO부(42)와, 상기 SRAM(41)과 FIFO부(42)와 연결된 어드레스 비교 및 제어부(43)를 포함한다.
상기 SRAM(41)은 인터널(Interal)CAM(Contents Address Memory)(51)과 데이터 송수신에 따른 버퍼(52)의 두 부분으로 구분된다.
상기 인터널 CAM(51)은 검출할 그룹 어드레스를 셋업 프로그램(Set up program)이나 드라이버(Driver)에 의해 도 7의 구조(Ⅰ,Ⅱ,Ⅲ)로 파징(Parsing)하여 저장한다.
즉, 6바이트(Byte)의 그룹 어드레스중 앞의 4바이트(ABC)는 도 8의 구조로 저장하고 중간 4바이트(A´B´C´)는 도 9의 구조로 저장하고 마지막 2바이트(A″)는 도 10에서와 같은 구조로 저장한다.
여기서 도 8에서와 같이, A는 그룹 어드레스중 앞의 2바이트이고 B는 그룹 어드레스중 중간 2바이트의 어드레스이며 C는 카운트이다.
그리고 도 9에서와 같이, A´는 그룹 어드레스중 중간 2바이트이고 B´는 그룹 어드레스중 마지막 2바이트의 어드레스이며 C´는 카운트이다.
따라서 상기 MAC부(35)내의 어드레스 비교 및 제어부(43)는 상기 인터널 캠(51)에 저장된 그룹 어드레스를 2바이트씩 차례로 읽어서 상기 FIFO부(42)의 목적지 어드레스와 비교한다.
이와같이 구성된 본 발명의 실시예에 따른 이더넷 컨트롤러의 어드레스 검출방법을 설명하면 다음과 같다.
도 11는 대표적인 이더넷 패킷(Ethernet packet)을 나타낸 것이다.
하나의 패킷은 7byte로 이루어진 프리엠블(preamble)로 시작되고, 상기 프리엠블 다음에는 스타트 프레임 딜리미터(SFD : Start Frame Delimeter)가 뒤따르고 그 다음에는 6byte의 목적지 어드레스, 소오스 어드레스, 데이터의 길이에 대한 정보가 뒤따른다.
이어, 데이터(data), 패드, 에러체킹을 위한 프레임 체크 시퀀스(FCS : Frame Check Sequence)가 뒤따른다.
본 발명에 따른 어드레스 검출방법은 도 11에서와 같이 상기 어드레스 비교 및 제어부(43)에서 패킷이 들어올 때 상기 인터널 CAM(51)에 저장되어 있는 그룹 어드레스를 2바이트씩 차례로 읽어서 비교한다.
첨부도면을 참조하여 보다 상세히 설명하면 다음과 같다.
네트워크에서 복수개의 그룹 어드레스를 갖는 디바이스들간의 패킷전송에 있어서, 상기 인터널 CAM(51)은 검출할 그룹 어드레스를 셋업 프로그램이나 드라이버에 의해 도 7의 구조로 파징하여 저장한 상태에서, 네트워크로부터 패킷이 전송되어 오면 상기 MAC부(35)에서는 스타트 프레임 딜리미터(SFD)를 검출한다.
그리고 상기 FIFO부(42)는 상기 PLS(37)를 통해 목적지 어드레스를 저장한다.
상기 FIFO(42)는 저장된 목적지 어드레스의 앞의 2바이트를 상기 어드레스 비교 및 제어부(43)로 출력하고, 상기 어드레스 비교 및 제어부(43)는 상기 도 7과 같은 구조를 갖는 인터널 CAM(51)에서 처음부분에 저장되어 있는 그룹 어드레스 앞의 2바이트를 입력받아 비교한다.
이때, 매치(Match)가 일어나지 않으면 그 패킷은 리셋시키고, 매치가 되면 상기 FIFO(42)는 목적지 어드레스의 중간 2바이트를 상기 어드레스 비교 및 제어부(43)로 출력한다.
그리고, 상기 인터널 CAM(51)은 매치가된 그룹 어드레스 앞의 2바이트의 다음 2바이트에 의해 나타내어진 어드레스와 카운터를 통해 그룹 어드레스의 중간 2바이트를 상기 어드레스 비교 및 제어부(43)로 출력한다.
이어, 상기 어드레스 비교 및 제어부(43)는 목적지 어드레스의 중간 2바이트와 그룹 어드레스의 중간 2바이트를 비교한다.
이때, 매치가 일어나지 않으면 그 패킷은 리셋시키고, 매치가 되면 상기 FIFO(42)는 목적지 어드레스의 마지막 2바이트를 상기 어드레스 비교 및 제어부(43)로 출력한다.
그리고, 상기 인터널 CAM(51)은 매치가된 그룹 어드레스의 중간 2바이트의 다음 2바이트에 의해 나타내어진 어드레스와 카운터를 통해 그룹 어드레스의 마지막 2바이트를 상기 어드레스 비교 및 제어부(43)로 출력한다.
이어, 상기 어드레스 비교 및 제어부(43)는 목적지 어드레스의 마지막 2바이트와 그룹 어드레스의 마지막 2바이트를 비교한다.
이때, 매치가 일어나지 않으면 그 패킷은 리셋시키고, 매치가 되면 그 패킷을 받아 들인다.
이와같이 본 발명의 실시예에 따른 이더넷 컨트롤러의 어드레스 검출방법을 도 12 및 도 13을 참조하여 예를 들어 설명하면 다음과 같다.
도 12에서의 목적지 어드레스중 수신한 패킷의 목적지 어드레스가“ABABABABCDEF”라 가정하면,
상기 FIFO(42)는 저장된 목적지 어드레스 앞의 2바이트인“ABAB”를 상기 어드레스 비교 및 제어부(43)로 출력하고, 상기 어드레스 비교 및 제어부(43)는 상기 도 13과 같은 구조를 갖는 인터널 CAM(51)에서 처음부분에 저장되어 있는 그룹 어드레스 앞의 2바이트인“00”번지의 “ABAB”를 입력받아 비교한다.
이때, 매치가 되어 상기 FIFO(42)는 목적지 어드레스의 중간 2바이트인“ABAB”를 상기 어드레스 비교 및 제어부(43)로 출력한다.
그리고, 상기 인터널 CAM(51)은 매치가된 그룹 어드레스 앞의 2바이트의 다음 2바이트인“0522”에 의해 나타내어진 어드레스와 카운터를 통해 그룹 어드레스의 중간 2바이트인“29”번지의“ABAB”를 상기 어드레스 비교 및 제어부(43)로 출력한다.
이때, 그룹 어드레스 앞의 2바이트인“ABAB”의 다음 2바이트인“0522”에 의해 “29”번지의“ABAB”가 정해진 방법은 0522(0000010100100010)에서 도 8과 같이 어드레스는 00000101001의 11비트에 의해“29”번지가 정해지고 카운터는 나머지 00010의 5비트에 의해 2가 된다.
이어, 상기 어드레스 비교 및 제어부(43)는 목적지 어드레스의 중간 2바이트인“ABAB”와 그룹 어드레스의 중간 2바이트인“ABAB”를 비교한다.
이때, 매치가 되어 상기 FIFO(42)는 목적지 어드레스의 마지막 2바이트인“CDEF”를 상기 어드레스 비교 및 제어부(43)로 출력한다.
그리고, 상기 인터널 CAM(51)은 매치가된 그룹 어드레스의 중간 2바이트의 다음 2바이트인“0842”에 의해 나타내어진 어드레스와 카운터를 통해 그룹 어드레스의 마지막 2바이트인“42”번지의“CDEF”를 상기 어드레스 비교 및 제어부(43)로 출력한다.
이어, 상기 어드레스 비교 및 제어부(43)는 목적지 어드레스의 마지막 2바이트인“CDEF”와 그룹 어드레스의 마지막 2바이트인“CDEF”를 비교한다.
이때, 매치가 되어 그 패킷을 받아 들인다.
본 발명의 이더넷 컨트롤러의 어드레스 검출장치 및 검출방법은 그룹 어드레스를 SRAM의 인터널 CAM에서 앞, 중간, 마지막으로 파징하여 저장시킨 후, 목적지 어드레스와 2바이트씩 비교하므로, 패킷의 수신여부를 신속하게 결정할 수 있고 그룹 어드레스를 SRAM의 인터널 CAM에서 앞, 중간, 마지막으로 파징하여 저장시키기 때문에 그룹 어드레스의 수가 증가하더라도 용이하게 처리할 수 있어 패킷의 처리능력을 향상시키는 효과가 있다.
도 1은 종래 이더넷 컨트롤러의 어드레스검출장치의 구성블록도
도 2는 도 1의 부분적 상세구성도
도 3은 종래 다른 실시예에 따른 이더넷 컨트롤러의 어드레스검출장치의 구성블록도
도 4는 종래 또다른 실시예의 소프트웨어 해쉬 방법에 따른 멀티캐스트 테이블을 나타낸 도면
도 5는 본 발명 실시예에 따른 이더넷 컨트롤러의 어드레스검출장치에 따른 구성블록도
도 6은 본 발명 실시예에 따른 MAC부의 상세구성도
도 7은 본 발명 실시예에 따른 인터널 CAM에 저장된 그룹 어드레스를 나타낸 도면
도 8는 본 발명 실시예에 따른 인터널 CAM의 그룹 어드레스중 앞의 4바이트를 나타낸 도면
도 9은 본 발명 실시예에 따른 인터널 CAM의 그룹 어드레스중 중간 4바이트를 나타낸 도면
도 10은 본 발명 실시예에 따른 인터널 CAM의 그룹 어드레스중 마지막 2바이트를 나타낸 도면
도 11은 대표적인 이더넷 패킷을 나타낸 도면
도 12는 목적지 어드레스의 구체적인 예를 나타낸 도면
도 13은 본 발명 실시예에 따른 인터널 CAM에 저장된 그룹 어드레스의 구체적인 예를 나타낸 도면
도면의 주요부분에 대한 부호의 설명
31: 시스템 버스 33: 시스템 버스 인터페이스부
35: MAC부 37: PLS
41: SRAM 42: FIFO부
43: 어드레스 비교 및 제어부 51: 인터널 CAM
52: 버퍼

Claims (4)

  1. 네트워크에서 복수개의 그룹 어드레스를 갖는 디바이스들간의 패킷전송에 있어서,
    상기 네트위크와 패킷단위의 데이터를 입출력하는 PLS;
    상기 PLS를 통해 목적지 어드레스를 입력받는 FIFO부와 상기 그룹 어드레스들이 각각 2바이트씩 앞, 중간, 마지막으로 파징하여 저장된 인터널 CAM을 갖는 SRAM 그리고 상기 FIFO부와 SRAM에 연결되어 그룹 어드레스와 목적지 어드레스를 2바이트씩 비교하는 어드레스 비교 및 제어부를 포함하여 구성되는 MAC부;
    상기 MAC부와 외부의 시스템 버스 사이에 배치되어 인터페이싱을 담당하는 시스템 버스 인터페이스부를 포함하여 구성되는 것을 특징으로 하는 이더넷 컨트롤러의 어드레스 검출장치.
  2. 네트워크에서 복수개의 그룹 어드레스를 갖는 디바이스들간의 패킷전송에 있어서,
    MAC부의 인터널 CAM에 그룹 어드레스들을 각각 2바이트씩 앞, 중간, 마지막으로 파징하여 저장시키는 스텝;
    상기 MAC부에서 상기 네트워크로부터 패킷 전송시 스타트 프레임 딜리미터를 검출하는 스텝;
    상기 네트워크로부터 패킷단위의 데이터를 입출력하는 PLS를 통해 FIFO부에 목적지 어드레스를 저장시키는 스텝;
    상기 그룹 어드레스 앞의 2바이트와 상기 목적지 어드레스 앞의 2바이트를 비교하는 스텝;
    상기 비교결과 목적지 어드레스 앞의 2바이트와 그룹 어드레스 앞의 2바이트가 동일한 경우에만 상기 그룹 어드레스 중간 2바이트와 상기 목적지 어드레스 중간 2바이트를 비교하고 그 반대 경우에는 상기 패킷단위의 데이터를 리셋시키는 스텝;
    상기 비교결과 목적지 어드레스 중간 2바이트와 그룹 어드레스 중간 2바이트가 동일한 경우에만 상기 그룹 어드레스 마지막 2바이트와 상기 목적지 어드레스 마지막 2바이트를 비교하고 그 반대 경우에는 상기 패킷단위의 데이터를 리셋시키는 스텝;
    상기 비교결과 목적지 어드레스 마지막 2바이트와 그룹 어드레스 마지막 2바이트가 동일한 경우에만 상기 패킷단위의 데이터를 수신하고 그 반대 경우에는 상기 패킷단위의 데이터를 리셋시키는 스텝을 포함하여 이루어지는 것을 특징으로 하는 이더넷 컨트롤러의 어드레스 검출방법.
  3. 제 2 항에 있어서,
    상기 그룹 어드레스 앞의 2바이트의 다음 2바이트중 상위 11비트에 의해 상기 그룹 어드레스 중간 2바이트의 어드레스가 정해지고 하위 5비트에 의해 카운트함을 특징으로 하는 이더넷 컨트롤러의 어드레스 검출방법.
  4. 제 2 항에 있어서,
    상기 그룹 어드레스의 중간 2바이트의 다음 2바이트중 상위 11비트에 의해 상기 그룹 어드레스 마지막 2바이트의 어드레스가 정해지고 하위 5비트에 의해 카운트함을 특징으로 하는 이더넷 컨트롤러의 어드레스 검출방법.
KR1019980051500A 1998-11-28 1998-11-28 이더넷 컨트롤러의 어드레스검출장치 및 검출방법 KR100577148B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980051500A KR100577148B1 (ko) 1998-11-28 1998-11-28 이더넷 컨트롤러의 어드레스검출장치 및 검출방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980051500A KR100577148B1 (ko) 1998-11-28 1998-11-28 이더넷 컨트롤러의 어드레스검출장치 및 검출방법

Publications (2)

Publication Number Publication Date
KR20000034224A KR20000034224A (ko) 2000-06-15
KR100577148B1 true KR100577148B1 (ko) 2006-07-25

Family

ID=19560176

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980051500A KR100577148B1 (ko) 1998-11-28 1998-11-28 이더넷 컨트롤러의 어드레스검출장치 및 검출방법

Country Status (1)

Country Link
KR (1) KR100577148B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06259352A (ja) * 1993-03-01 1994-09-16 Internatl Business Mach Corp <Ibm> データ端末装置を通信回路網に接続する装置
US5379289A (en) * 1990-01-02 1995-01-03 National Semiconductor Corporation Media access controller
KR19990009428A (ko) * 1997-07-09 1999-02-05 문정환 이더넷 컨트롤러의 어드레스 검출장치 및 검출방법
KR19990038699A (ko) * 1997-11-06 1999-06-05 구본준 이더넷 컨트롤러의 어드레스 검출장치 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5379289A (en) * 1990-01-02 1995-01-03 National Semiconductor Corporation Media access controller
JPH06259352A (ja) * 1993-03-01 1994-09-16 Internatl Business Mach Corp <Ibm> データ端末装置を通信回路網に接続する装置
KR19990009428A (ko) * 1997-07-09 1999-02-05 문정환 이더넷 컨트롤러의 어드레스 검출장치 및 검출방법
KR19990038699A (ko) * 1997-11-06 1999-06-05 구본준 이더넷 컨트롤러의 어드레스 검출장치 및 방법

Also Published As

Publication number Publication date
KR20000034224A (ko) 2000-06-15

Similar Documents

Publication Publication Date Title
KR100216857B1 (ko) 내용 어드레스 메모리 장치
US5260936A (en) HDLC store and forward apparatus
US5058110A (en) Protocol processor
JP2720957B2 (ja) パケット・バッファ装置
US4561090A (en) Integrated self-checking packet switch node
EP0409539B1 (en) Frame routing method for communication networks
JP3510631B2 (ja) ウインドウ比較器
US20100091775A1 (en) Packet switching system
US7474672B2 (en) Frame alteration logic for network processors
JPH0795231A (ja) Lan間接続装置
US6788680B1 (en) Defferrable processing option for fast path forwarding
US20040025105A1 (en) CRC calculation system for a packet arriving on an n-byte wide bus and a method of calculation thereof
US6256307B1 (en) Local area network receive filter
US6661792B1 (en) Apparatus for processing data packet of ethernet switch system and method thereof
JP4229810B2 (ja) 通信試験装置
KR100308112B1 (ko) 이더넷 컨트롤러의 어드레스 검출장치 및 검출방법
US7505460B2 (en) Address validating data structure used for validating addresses
EP0522743B1 (en) Combined hash table and CAM address recognition in a network
US7117301B1 (en) Packet based communication for content addressable memory (CAM) devices and systems
KR100577148B1 (ko) 이더넷 컨트롤러의 어드레스검출장치 및 검출방법
US6381648B1 (en) Method and apparatus for filtering ethernet frames
EP0520116A1 (en) Method and apparatus for performing pattern search functions
US6987761B2 (en) Inbound data stream controller with pre-recognition of frame sequence
US7283565B1 (en) Method and apparatus for framing a data packet
KR940000396B1 (ko) 음성 및 데이타 통신 시스템 장치 및 방법

Legal Events

Date Code Title Description
N231 Notification of change of applicant
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee