KR100858158B1 - 무선 랜 시스템의 메모리 제어 장치와 그의 데이터 송수신방법 - Google Patents
무선 랜 시스템의 메모리 제어 장치와 그의 데이터 송수신방법 Download PDFInfo
- Publication number
- KR100858158B1 KR100858158B1 KR1020070053161A KR20070053161A KR100858158B1 KR 100858158 B1 KR100858158 B1 KR 100858158B1 KR 1020070053161 A KR1020070053161 A KR 1020070053161A KR 20070053161 A KR20070053161 A KR 20070053161A KR 100858158 B1 KR100858158 B1 KR 100858158B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- data
- transmission
- main memory
- stored
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0024—Peripheral component interconnect [PCI]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 발명은 무선 랜 시스템의 메모리 제어 장치와 그의 데이터 송수신 방법에 관한 것이다. 본 발명은 메인 메모리, 통신 인터페이스를 통하여 상기 메인 메모리로부터 송신 데이터를 전달받고 수신 데이터를 상기 메인 메모리로 전달하는 매체접근제어 하드웨어 장치, 상기 메인 메모리와 상기 매체접근제어 하드웨어 장치 사이에 위치하여, 상기 매체접근제어 하드웨어 장치에 맵핑되는 제1 메모리를 포함하며, 상기 제1 메모리에는 상기 송신 또는 수신 데이터의 존재 여부를 나타내는 송신 필드 및 수신 필드가 있고, 상기 메인 메모리에 저장된 상기 송신 또는 수신 데이터의 주소값이 상기 제1 메모리에 설정되는 있다.
무선 랜, 메모리, 매체접근제어, DMA, CPU
Description
도 1은 본 발명의 실시 예에 따른 무선 랜 시스템의 메모리 제어 장치의 개략적인 블록도이다.
도 2는 본 발명의 실시 예에 따른 무선 랜 시스템의 메모리 제어 장치에서 수행되는 데이터 송신방법을 나타내는 순서도이다.
도 3은 본 발명의 실시 예에 따른 무선 랜 시스템의 메모리 제어 장치에서 수행되는 데이터 수신방법을 나타내는 순서도이다.
본 발명은 무선 랜 시스템의 메모리 제어 장치 및 그의 데이터 송수신 방법에 관한 것으로, 특히 메모리 영역을 줄일 수 있는 무선 랜 시스템에서의 메모리 제어 장치 및 그의 데이터 송수신 방법에 관한 것이다.
무선 랜 시스템의 무선 액세스 프로토콜은 매체 접근 제어(Medium Access Control, 이하 ‘MAC’이라 함) 프로토콜과 물리계층으로 구성된다. 그리고, 각 계 층 및 시스템과의 인터페이스는 서비스 접속점(Service Access Point, 이하 ‘SAP’이라 함)를 통해서 이루어진다. 무선 랜 시스템의 표준 규격 중 하나인 IEEE 802.11n에서는 MAC SAP에서 전송 속도가 최대 100Mbps를 가지도록 규정하고 있다. 따라서 이를 지원하기 위해서 MAC 계층은 데이터를 전송하는 타이밍을 정확하게 생성하고 이 타이밍에 맞춰 적절하게 데이터를 송수신해야 한다. 또한 이러한 타이밍이 매체접근제어 송수신 프로토콜에 적합하게 동작해야만 한다. 이것은 호스트 상에서 존재하는 매체접근제어 소프트웨어 처리장치와 DMA부 그리고 매체접근제어 하드웨어 처리장치가 연동하여 동작해야 가능한데, 이 장치들은 서로 분리되어 구현되어 있으므로 이들 간의 인터페이스가 적절히 설계되어야 한다.
만약 정확한 시점에 타이밍이 발생하지 않거나 상위계층으로부터의 데이터가 적절한 타이밍에 맞추어 처리되지 못하면 실시간성의 데이터는 심각한 전송지연을 겪게 되고 데이터 처리율은 떨어지게 된다. 또한, 매체접근제어 하드웨어 처리장치에 전송 지연되는 데이터가 누적될 경우 누적된 데이터를 저장하기 위해 많은 메모리가 필요하다.
본 발명이 이루고자 하는 기술적 과제는 무선 랜 시스템에서 빠른 전송 속도를 보장하고 매체접근제어 하드웨어 처리장치에 사용되는 메모리를 줄일 수 있는 무선 랜 시스템의 메모리 제어 장치 및 그의 데이터 송수신 방법을 제공하는 것이다.
본 발명의 특징에 따르면, 메인 메모리, 통신 인터페이스를 통하여 상기 메인 메모리로부터 송신 데이터를 전달받고 수신 데이터를 상기 메인 메모리로 전달하는 매체접근제어 하드웨어 장치, 상기 메인 메모리와 상기 매체접근제어 하드웨어 장치 사이에 위치하여, 상기 매체접근제어 하드웨어 장치에 맵핑되는 제1 메모리를 포함하는 무선 랜 시스템의 메모리 제어 장치가 제공된다. 이때, 상기 제1 메모리에는 상기 송신 또는 수신 데이터의 존재 여부를 나타내는 송신 필드 및 수신 필드가 있고, 상기 메인 메모리에 저장된 상기 송신 또는 수신 데이터의 주소값이 상기 제1 메모리에 설정된다.
본 발명의 다른 특징에 따르면, 무선 랜 시스템의 메모리 제어 장치가 메인 메모리에서 매체접근제어 하드웨어 장치로 송신 데이터를 전송하는 방법이 제공된다. 이 방법은, 상기 메인 메모리에 상기 송신 데이터가 저장되어 있으면, 상기 메인 메모리와 상기 매체접근제어 하드웨어 장치 사이에 위치한 제1 메모리의 필드에 송신 데이터가 존재하는 것을 나타내는 값을 설정하는 단계, 상기 메인 메모리에 저장된 상기 송신 데이터의 주소값을 상기 제1 메모리에 설정하는 단계, 상기 매체접근제어 하드웨어 장치에 포함된 제2 메모리에 상기 송신 데이터가 저장되어 있지 않으면, 상기 제2 메모리의 필드에 송신 데이터가 존재하지 않는 것을 나타내는 값을 설정하는 단계, 상기 주소값에 저장되어 있는 상기 송신 데이터를 상기 제2 메모리에 저장하는 단계를 포함한다.
본 발명의 또 다른 특징에 따르면, 무선 랜 시스템의 메모리 제어 장치가 매체접근제어 하드웨어 장치에서 메인 메모리로 수신 데이터를 전송하는 방법이 제공 된다. 이 방법은, 상기 매체접근제어 하드웨어 장치에 상기 수신 데이터가 저장되면 상기 매체접근제어 하드웨어 장치에 포함된 제1 메모리의 필드에 상기 수신 데이터가 존재하는 것을 나타내는 값을 설정하는 단계, 상기 매체접근제어 하드웨어 장치에 저장된 상기 수신 데이터의 주소값을 상기 제1 메모리에 설정하는 단계, 상기 주소값에 저장되어 있는 상기 수신 데이터를 상기 메인 메모리에 저장하는 단계, 상기 메인 메모리에 상기 수신 데이터가 저장되면 상기 매체접근제어 하드웨어 장치와 상기 메인 메모리 사이에 위치하는 제2 메모리의 필드에 수신 데이터가 존재하는 것을 나타내는 값을 설정하는 단계, 상기 메인 메모리에 저장된 상기 수신 데이터의 주소값을 상기 제2 메모리에 설정하는 단계를 포함한다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈", "블록" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현 될 수 있다.
이제 본 발명의 실시 예에 따른 무선 랜 시스템의 메모리 제어 장치 및 그의 데이터 송수신 방법에 대하여 도면을 참고로 하여 상세하게 설명한다.
도 1은 본 발명의 실시 예에 따른 무선 랜 시스템의 메모리 제어 장치의 개략적인 블록도이다.
도 1에 도시된 바와 같이, 본 발명의 실시 예에 따른 무선 랜 시스템의 메모리 제어 장치는 메인 메모리(100), CPU(200), 네트워크 인터페이스 카드(Network Interface Card, NIC)(300)을 포함하고, NIC(400)는 DMA부(Direct Memory Access, 410)와 매체접근제어 하드웨어 장치(Medium Access Control Hardware, 420)를 포함한다.
메인 메모리(100)는 송신 또는 수신한 데이터를 저장하기 위한 송신큐(도시하지 않음)와 수신큐(도시하지 않음)를 포함한다. CPU(200)는 매체접근제어 하드웨어 장치(420)(이하, 'MAC H/W'이라 함)를 위한 매체접근제어 소프트웨어(이하, 'MAC S/W'이라 함)를 포함하며, 상위 계층에서 전송되는 패킷(packet)을 메인 메모리(100)에 버퍼링한다. PCI 인터페이스(300)는 호스트 PC(100)와 NIC(400)가 상호작용을 할 수 있도록 하는 장치로서, 본 발명의 실시 예는 PCI 인터페이스와 같이 슬레이브(slave) 기능과 마스터(master)기능을 갖는 모든 인터페이스에 적용 가능하다.DMA부(410)는 PCI 인터페이스(300)를 통해 호스트 PC(100)와 매체접근제어 하드웨어 장치(420)간의 송수신 데이터를 DMA(Direct Memory Access)를 이용하여 전달한다. 보다 구체적으로, DMA부(410)는 PCI 인터페이스(300)를 통해 메인 메모 리(100)의 송신큐에 저장된 송신 데이터가 고속으로 MAC H/W(420)로 전송되도록 하며, MAC H/W(420)에 수신된 수신 데이터가 고속으로 메인 메모리(100)의 수신큐에 저장되도록 한다. DMA부(410)는 제1 메모리(411)를 포함한다. 제1 메모리(411)는 송, 수신 데이터의 존재 유무를 나타내는 송신 필드 및 수신 필드가 형성되어 있고, 송, 수신 데이터가 저장된 주소값이 설정된다. 그리고, 제1 메모리(411)는 MAC H/W(420)에 포함되는 메모리와 맵핑된다. 메인 메모리(100)에 전송할 송신 데이터가 있는 경우, 제1 메모리(411)의 송신 필드에는 메인 메모리(100)에 송신 데이터가 존재하는 것을 나타내는 제1 데이터가 입력된다. 그리고 제1 메모리(411)에는 메인 메모리(100)에 저장된 송신 데이터의 주소값이 설정된다. 또한, MAC H/W(420)에 수신된 수신 데이터가 메인 메모리(100)로 전송될 경우, 제1 메모리(411)의 수신 필드에는 메인 메모리(100)에 수신 데이터가 존재하는 것을 나타내는 제2 데이터가 입력된다. 그리고 제1 메모리(411)에는 수신 데이터를 저장하고 있는 메인 메모리(100)의 주소값이 설정된다.
MAC H/W(420)는 제2 메모리(421) 및 제어부(422)를 포함한다.
제2 메모리(421)는 크게 제1 서브 메모리(M1), 제2 서브 메모리(M2), 제3 서브 메모리(M3) 및 제4 서브 메모리(M4)로 나눌 수 있다. 제1 서브 메모리(M1)는 실질적인 송신 데이터가 저장되는 메모리이다. 제2 서브 메모리(M2)는 제1 서브 메모리(M1)에 송신 데이터가 존재하는지 여부를 나타내는 송신 필드가 형성되어 있고 제1 서브 메모리(M1)에 저장된 송신 데이터의 주소값이 저장된다. 제1 서브 메모리(M1)에 송신 데이터가 저장되면 상기 제2 서브 메모리(M2)의 송신 필드에는 제1 서브 메모리(M1)에 송신 데이터가 존재하는 것을 나타내는 제3 데이터가 입력된다. 제3 서브 메모리(M3)는 실질적인 수신 데이터가 저장되는 메모리이다. 제4 서브 메모리(M4)는 제3 서브 메모리(M3)에 수신 데이터가 존재하는지 여부를 나타내는 수신 필드가 형성되어 있고 제3 서브 메모리(M3)에 저장된 수신 데이터의 주소값이 저장된다. 제3 서브 메모리(M3)에 수신 데이터가 저장되면 상기 제4 서브 메모리(M4)의 수신 필드에는 제3 서브 메모리(M3)에 수신 데이터가 존재하는 것을 나타내는 제4 데이터가 입력된다.
제어부(422)는 DMA부(410)의 제1 메모리(411) 및 제2 메모리(421)를 판단한다. 보다 구체적으로, 제어부(422)는 제1 메모리(411)의 송신 필드에 제1 데이터가 입력되었는지, 제2 메모리(421)의 제2 서브 메모리(M2)의 송신 필드에 제3 데이터가 입력되었는지를 판단한다. 이때, 제1 메모리(411)의 송신 필드에는 제1 데이터가 입력되고 제2 서브 메모리(M2)의 송신 필드에는 제3 데이터가 입력되지 않았다고 판단되면, 제어부(422)는 메인 메모리(100)에 송신 데이터를 요청한다. 그러면, 메인 메모리(100)의 송신 데이터가 제2 메모리(421)의 제1 서브 메모리(M1)에 저장한다. 제1 서브 메모리(M1)에 송신 데이터가 저장되었다고 판단되면, CPU(200)는 제2 서브 메모리(M2)의 송신 필드에 입력되어 있는 제3 데이터를 삭제한다. CPU(200)는 제2 서브 메모리(M2)에 맵핑되는 제1 메모리(411)의 송신 필드에 입력되어 있는 제1 데이터도 삭제한다.
또한, 제어부(422)는 제2 메모리(421)의 제3 서브 메모리(M3)에 수신 데이터가 수신되는지를 판단한다. 제2 메모리(421)의 제3 서브 메모리(M3)에 수신 데이터 가 입력될 경우, 제어부(422)는 제2 메모리(421)의 제3 서브 메모리(M3)에 저장된 수신 데이터가 메인 메모리(100)의 수신큐로 전송되도록 요청한다. 그러면, CPU(200)는 제4 서브 메모리(M4)의 수신 필드에 제4 데이터를 입력하고, 제3 서브 메모리(M3)에 저장된 수신 데이터의 주소값을 제4 서브 메모리(M4)에 설정한다. 제2 메모리(421)의 수신 데이터가 메인 메모리(100)의 수신큐에 저장되면, CPU(200)는 제1 메모리(411)의 수신 필드에 수신 데이터가 존재하는 것을 나타내는 제2 데이터를 입력하고, 메인 메모리(100)에 저장된 수신 데이터의 주소값을 제1 메모리(411)에 설정한다.
도 2는 본 발명의 실시 예에 따른 무선 랜 시스템의 메모리 제어 장치에서 수행되는 데이터 송신방법을 나타내는 순서도이다.
CPU(200)는 상위 계층(layer)에서 전송되는 패킷이 메인 메모리에 버퍼링되는 동안, 제1 메모리(411)로 데이터 송신이 가능한지를 판단한다(S100). 제1 메모리(411)의 송신 필드에 제1 데이터가 입력되어 있지 않으면, CPU(200)는 메인 메모리(100)에 버퍼링된 패킷을 송신 데이터로 변환하여 송신큐에 저장한다(S200). 이때, 송신 데이터는 비트 또는 패킷 형태일 수 있다. 또한, CPU(200)는 제1 메모리(411)의 송신 필드에 제1 데이터를 입력하고, 메인 메모리(100)에 저장된 송신 데이터의 주소값을 제1 메모리(411)에 설정한다(S130). 제1 메모리(411)의 송신 필드에 제1 데이터가 입력되면(S140), MAC H/W(420)의 제어부(422)는 제2 서브 메모리(M2)의 송신 필드에 제3 데이터가 입력되었는지를 판단한다(S150). 제2 서브 메모리(M2)의 송신 필드에 제3 데이터가 입력되면, 제어부(422)는 PCI 인터페이 스(300)의 마스터 기능을 이용하여 CPU(200)로 송신 데이터의 송신을 요청한다. 그러면, CPU(200)는 메인 메모리(100)의 송신 데이터를 제1 서브 메모리(M1)에 저장하고, 제1 서브 메모리(M1)에 송신 데이터가 저장됨과 동시에 제2 서브 메모리(M2)의 송신 필드에 제3 데이터가 입력된다(S160). CPU(200)는 다음 송신 데이터를 제1 서브 메모리(M1)에 저장하기 위해서, 제2 서브 메모리(M2)의 송신 필드에 입력되어 있는 제3 데이터를 삭제한다(S170). 그리고, CPU(200)는 제1 메모리(411)의 송신 필드에 입력되어 있는 제1 데이터를 삭제한다(S180). 제1 서브 메모리(M1)에 저장된 송신 데이터는 제어부(422)의 타이밍 신호에 의해 물리 계층 인터페이스로 출력된다(S190).
여기서, 제1 메모리(411)는 데이터의 전송 숫자와 관련이 있으므로, CPU(200)의 MAC S/W에서 무선 랜 시스템에 맞는 데이터 패킷을 만드는 숫자와 관련이 있다. 따라서, MAC S/W에서 MAC H/W로 전달되는 송신 데이터의 전송 속도를 높이기 위해서는 제1 메모리(411)의 메모리 영역이 필요하다. 만약, 제1 메모리(411)가 없다면 MAC S/W에 의해 변환된 송신 데이터는 메인 메모리(100)에서 전송을 대기하므로, 송신 데이터 전송 간격이 길어진다. 따라서, 본 발명의 실시 예와 같이 DMA부(410)에 제1 메모리(411)를 추가할 경우, MAC S/W에 의해 생성된 송신 데이터의 존재 여부가 제1 메모리(411)에 저장됨으로써, 송신 데이터 간의 전송 간격이 짧아져 무선 랜 시스템의 전송 속도를 높일 수 있다.
도 3은 본 발명의 실시 예에 따른 무선 랜 시스템의 메모리 제어 장치에서 수행되는 데이터 수신방법을 나타내는 순서도이다.
MAC H/W(420)로 수신 데이터가 입력되면(S210), 제2 메모리(421)의 제3 서브 메모리(M3)에 수신 데이터가 저장된다(S220). 그러면 제4 서브 메모리(M4)의 수신 필드에는 제4 데이터가 입력되고, 제3 서브 메모리(M3)에 저장된 수신 데이터의 주소값이 설정된다(S230). 제어부(422)는 제2 메모리(421)를 감시하다가 제4 서브 메모리(M4)의 수신 필드에 제4 데이터가 입력되면(S240), PCI 인터페이스(300)의 마스터 기능을 이용하여 제3 서브 메모리(M3)의 수신 데이터가 메인 메모리(100)의 수신큐로 전송되도록 요청한다. 그러면, CPU(200)는 제3 서브 메모리(M3)의 수신 데이터를 메인 메모리(100)의 수신큐에 저장한다.
메인 메모리(100)의 수신큐로 수신 데이터가 저장되면, CPU(200)는 제1 메모리(411)의 수신 필드에 제2 데이터를 입력하고, 메인 메모리(100)에 저장된 수신 데이터의 주소값을 제1 메모리(411)에 설정한다(S260).
이와 같이 데이터를 수신하는 과정에서 RX 인터럽트(Interrupt)가 발생하면(S270), CPU(200)는 트리거된다(S280). CPU(200)가 트리거되면, 제어부(422)는 제1 메모리(411)의 수신 필드에 제2 데이터가 입력되어 있는지, 수신 데이터의 주소값이 있는지를 확인한다(S290). 제1 메모리(411)에 수신 데이터의 주소값이 설정된 경우, 제어부(422)는 CPU(200)로 데이터 처리를 요청한다. 이때, 제어부(422)는 제1 메모리(411)의 수신 필드에 제2 데이터가 있는지 여부를 확인한 후, CPU(200)로 데이터 처리를 요청할 수도 있다. 제어부(422)로부터 데이터 처리 요청이 입력되면, CPU(200)는 제1 메모리(411)의 수신 데이터의 주소값에 대응하는 메인 메모리(100)의 수신 데이터를 처리한 후 어플리케이션(application)으로 전달한 다(S400). 이때, CPU(200)는 시간적으로 먼저 저장된 수신 데이터의 주소값에 대응하는 메인 메모리(100)의 수신 데이터를 처리한다. CPU(200)는 제1 메모리(411)에 미리 저장된 수신 데이터의 주소값이 없을 때까지 차례대로 메인 메모리(100)의 수신 데이터를 처리하여 어플리케이션으로 전달한다. 이 과정에서 인터럽트가 발생할 경우(S410), CPU(200)는 RX 인터럽트를 무시한다(S420). 본 발명의 실시 예에서는 수신 데이터를 수신된 순서에 따라 차례대로 처리하는 폴링 방식을 사용한다. 그리고, RX 인터럽트가 발생하면 RX 인터럽트가 발생하기 이전에 수신된 모든 수신 데이터를 처리한 후 다음 RX 인터럽트가 발생할 때까지 수신 데이터를 처리하지 않는 인터럽트 방식을 사용한다. 이와 같이, 본 발명의 실시 예에서는 폴링 방식과 인터럽트 방식을 동시에 사용함으로써, 수신 데이터의 수신 처리 속도를 높일 수 있다.
상기한 바와 같이, 제1 메모리(411)의 송신 필드 및 수신 필드는 1bit 의 메모리 영역으로 메인 메모리(100)에 송신 데이터 또는 수신 데이터가 있는지 여부를 나타낼 수 있다. 또한, 제1 메모리(411)는 address bit 만으로 메인 메모리(100)에 저장된 송신 데이터 또는 수신 데이터의 주소값을 나타낼 수 있다. 즉, 하드웨어적으로 구현될 때 작은 메모리 영역으로 많은 데이터를 저장할 수 있다.
제2 메모리(421)의 제2 서브 메모리 및 제4 서브 메모리는 실제 송, 수신 데이터의 메모리 영역 개수와 같은 개수를 가진다. 실제 송, 수신 데이터를 저장할 때, 802.11n에서는 QoS, aggregation 데이터 전송 개수, block 데이터 전송 개수에 따라 달라진다. 하지만, 실제 데이터 영역은 QoS를 위한 4개의 AC를 구분하기 위한 영역, beacon 데이터 전송을 위한 데이터 영역, 수신 데이터 저장을 위한 메모리 영역으로 나누어 관리할 수 있다. 본 발명의 실시 예에서는 실제 송, 수신 데이터의 메모리 영역에서 위와 같은 메모리 영역을 줄임으로써 많은 데이터 메모리 영역을 줄일 수 있다. 각 데이터 영역은 1~2개의 패킷 저장 영역으로 만들어진다.
본 발명의 실시 예는 이상에서 설명한 장치 및/또는 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시 예의 구성에 대응하는 기능을 실현하기 위한 프로그램, 그 프로그램이 기록된 기록 매체 등을 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시 예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
이상에서 살펴본 바와 같이, 본 발명의 실시 예에서는 적은 메모리 영역을 가지고 송, 수신 데이터의 전송 속도를 향상시킬 수 있으며, 실제 MAC H/S 메모리의 사용 크기를 줄일 수 있다.
Claims (10)
- 메인 메모리,통신 인터페이스를 통하여 상기 메인 메모리로부터 송신 데이터를 전달받고 수신 데이터를 상기 메인 메모리로 전달하는 매체접근제어 하드웨어 장치, 및상기 메인 메모리와 상기 매체접근제어 하드웨어 장치 사이에 위치하여, 상기 매체접근제어 하드웨어 장치에 맵핑되는 제1 메모리를 포함하며,상기 제1 메모리에는 상기 송신 또는 수신 데이터의 존재 여부를 나타내는 송신 필드 및 수신 필드가 있고, 상기 메인 메모리에 저장된 상기 송신 또는 수신 데이터의 주소값이 상기 제1 메모리에 설정되는 무선 랜 시스템의 메모리 제어 장치.
- 제1항에 있어서,상기 송신 데이터와 상기 수신 데이터 각각의 송, 수신을 관리하는 매체접근제어 소프트웨어가 내장된 CPU를 더 포함하는 무선 랜 시스템의 메모리 제어 장치.
- 제2항에 있어서,상기 CPU는,상기 메인 메모리에 상기 매체접근제어 하드웨어 장치로 전송될 상기 송신 데이터가 저장되어 있으면 상기 제1 메모리의 송신 필드에 송신 데이터가 존재하는 것을 나타내는 값을 설정하고, 상기 메인 메모리에 저장된 상기 송신 데이터의 주소값을 상기 제1 메모리에 설정하는 무선 랜 시스템의 메모리 제어 장치.
- 제2항에 있어서,상기 CPU는,상기 매체접근제어 하드웨어 장치의 상기 수신 데이터가 상기 메인 메모리로 전송되었다고 판단되면, 상기 제1 메모리의 수신 필드에 상기 메인 메모리에 상기 수신 데이터가 존재하는 것을 나타내는 값을 설정하고 상기 메인 메모리에 저장된 상기 수신 데이터의 주소값을 상기 제1 메모리에 설정하는 무선 랜 시스템의 메모리 제어 장치.
- 제1항에 있어서,상기 매체접근제어 하드웨어 장치는,상기 메인 메모리로부터 전송된 상기 송신 데이터 및 상기 메인 메모리로 전송할 상기 수신 데이터가 저장되는 제2 메모리, 및상기 제2 메모리를 감시하고 상기 제2 메모리의 상태에 따라 상기 CPU로 상기 송신 또는 수신 데이터의 전송을 요청하는 제어부를 포함하는 무선 랜 시스템의 메모리 제어 장치.
- 제5항에 있어서,상기 제2 메모리는,상기 메인 메모리에서 전송된 상기 송신 데이터가 저장되는 제1 서브 메모리,상기 제1 서브 메모리에 상기 송신 데이터가 존재하는지 여부를 나타내는 송신 필드가 형성되어 있고, 상기 제1 서브 메모리에 저장된 상기 송신 데이터의 주소값이 설정되는 제2 서브 메모리,상기 메인 메모리로 전송될 상기 수신 데이터가 저장되는 제3 서브 메모리, 및상기 제3 서브 메모리에 상기 수신 데이터가 존재하는지 여부를 나타내는 수신 필드가 형성되어 있고, 상기 제3 서브 메모리에 저장된 상기 수신 데이터의 주소값이 설정되는 제4 서브 메모리를 포함하는 무선 랜 시스템의 메모리 제어 장치.
- 제6항에 있어서,상기 제어부는 상기 제3 서브 메모리로 상기 메인 메모리로 전송될 상기 수신 데이터가 입력되면 상기 CPU로 상기 수신 데이터의 전송을 요청하는 무선 랜 시스템의 메모리 제어 장치.
- 제5항에 있어서,상기 제어부는,상기 제1 메모리의 송신 필드에는 송신 데이터가 존재하는 것을 나타내는 값이 설정되어 있고, 상기 제2 메모리에는 송신 데이터가 존재하지 않는다는 것을 나타내는 값이 설정되어 있으면, 상기 CPU로 상기 메인 메모리에 저장된 상기 송신 데이터를 요청하는 무선 랜 시스템의 메모리 제어 장치.
- 무선 랜 시스템의 메모리 제어 장치가 메인 메모리에서 매체접근제어 하드웨어 장치로 송신 데이터를 전송하는 방법에 있어서,상기 메인 메모리에 상기 송신 데이터가 저장되어 있으면, 상기 메인 메모리와 상기 매체접근제어 하드웨어 장치 사이에 위치한 제1 메모리의 필드에 송신 데이터가 존재하는 것을 나타내는 값을 설정하는 단계,상기 메인 메모리에 저장된 상기 송신 데이터의 주소값을 상기 제1 메모리에 설정하는 단계,상기 매체접근제어 하드웨어 장치에 포함된 제2 메모리에 상기 송신 데이터가 저장되어 있지 않으면, 상기 제2 메모리의 필드에 송신 데이터가 존재하지 않는 것을 나타내는 값을 설정하는 단계, 및상기 주소값에 저장되어 있는 상기 송신 데이터를 상기 제2 메모리에 저장하는 단계를 포함하는 무선 랜 시스템의 메모리 제어 장치의 데이터 송신 방법.
- 제9항에 있어서,상기 제2 메모리에 저장된 상기 송신 데이터는 타이밍 신호에 의해 물리 계 층으로 전송되는 무선 랜 시스템의 메모리 제어 장치의 데이터 송신 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20060120750 | 2006-12-01 | ||
KR1020060120750 | 2006-12-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080050217A KR20080050217A (ko) | 2008-06-05 |
KR100858158B1 true KR100858158B1 (ko) | 2008-09-10 |
Family
ID=39805713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070053161A KR100858158B1 (ko) | 2006-12-01 | 2007-05-31 | 무선 랜 시스템의 메모리 제어 장치와 그의 데이터 송수신방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100858158B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050063605A (ko) * | 2003-12-22 | 2005-06-28 | 한국전자통신연구원 | 무선 랜 시스템과 그의 dma 데이터 송수신 제어방법 |
KR20050065870A (ko) * | 2003-12-24 | 2005-06-30 | 한국전자통신연구원 | 무선랜 하드웨어 처리에서의 수신 처리 시스템 및 그 방법 |
KR20060087825A (ko) * | 2005-01-31 | 2006-08-03 | 삼성전자주식회사 | 통신 시스템에서 송신 큐 데이터의 이동 방법 및 장치 |
-
2007
- 2007-05-31 KR KR1020070053161A patent/KR100858158B1/ko not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050063605A (ko) * | 2003-12-22 | 2005-06-28 | 한국전자통신연구원 | 무선 랜 시스템과 그의 dma 데이터 송수신 제어방법 |
KR20050065870A (ko) * | 2003-12-24 | 2005-06-30 | 한국전자통신연구원 | 무선랜 하드웨어 처리에서의 수신 처리 시스템 및 그 방법 |
KR20060087825A (ko) * | 2005-01-31 | 2006-08-03 | 삼성전자주식회사 | 통신 시스템에서 송신 큐 데이터의 이동 방법 및 장치 |
Non-Patent Citations (1)
Title |
---|
"차세대 고정 및 이동 무선랜의 기술 동향 " 한국통신학회지:정보통신, v.22, no.9, pp.175-186, 2005년 9월 |
Also Published As
Publication number | Publication date |
---|---|
KR20080050217A (ko) | 2008-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11176068B2 (en) | Methods and apparatus for synchronizing uplink and downlink transactions on an inter-device communication link | |
US7461164B2 (en) | Medium access control with software -and hardware- based components in a wireless network | |
US20070047572A1 (en) | Explicit flow control in Gigabit/10 Gigabit Ethernet system | |
US7987302B2 (en) | Techniques for managing priority queues and escalation considerations in USB wireless communication systems | |
US5721955A (en) | System for transferring portion of data to host from buffer if size of packet is greater than first threshold value but less than second threshold value | |
JP4361801B2 (ja) | データパケットを連結及びピギーバックするための方法及び装置 | |
RU2670605C9 (ru) | Система и способ для обозначения типа ответного кадра | |
US8214552B2 (en) | Transmission apparatus, transmission method, communication apparatus, and program | |
US10067898B2 (en) | Protocol adaptation layer data flow control for universal serial bus | |
US20070198761A1 (en) | Connection management mechanism | |
US10769096B2 (en) | Apparatus and circuit for processing data | |
CN101160999B (zh) | 使放置在一起的多个无线设备间的干扰最小化的方法和装置 | |
TWI462613B (zh) | 群播群組的管理方法及應用其之無線網路裝置 | |
KR100858158B1 (ko) | 무선 랜 시스템의 메모리 제어 장치와 그의 데이터 송수신방법 | |
KR101005933B1 (ko) | 마스터와 슬레이브 간의 데이터 전송방법 및 장치 | |
US9912604B2 (en) | Reduction of silicon area for ethernet PFC protocol implementation in queue based network processors | |
KR100578307B1 (ko) | 매체접근 프로토콜의 데이터 처리장치 및 그 데이터처리방법 | |
KR100602891B1 (ko) | 네트워크 인터페이스 카드 및 그의 dma 데이터 송수신 제어방법 | |
US20090129355A1 (en) | Apparatus of transmitting packets of wireless local network and method for using the same | |
Hu et al. | Design method of Ethernet based on SGMII | |
KR100760616B1 (ko) | 무선랜 시스템의 데이터 전송 장치 및 그 방법 | |
KR100779212B1 (ko) | Gpio 신호와 smi 신호의 정합 장치 및 방법, 이를이용한 홈 서버 | |
KR100582903B1 (ko) | Edca 지원을 위한 무선 랜 매체 접근 제어 프레임전송 장치 및 방법 | |
KR100275069B1 (ko) | 에취에스비인터페이스프로그램을이용한노드간메시지전송방법 | |
KR101065588B1 (ko) | 하드웨어 기반의 객체 교환(obex) 모듈, 그 모듈을 포함한 송수신 장치 및 그 프로토콜 모듈을 이용한 송수신 방법 |
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 | ||
LAPS | Lapse due to unpaid annual fee |