JP2007088709A - Packet communication apparatus and processing method thereof - Google Patents

Packet communication apparatus and processing method thereof Download PDF

Info

Publication number
JP2007088709A
JP2007088709A JP2005273677A JP2005273677A JP2007088709A JP 2007088709 A JP2007088709 A JP 2007088709A JP 2005273677 A JP2005273677 A JP 2005273677A JP 2005273677 A JP2005273677 A JP 2005273677A JP 2007088709 A JP2007088709 A JP 2007088709A
Authority
JP
Japan
Prior art keywords
packet
buffer
processing
transfer
transmission
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
JP2005273677A
Other languages
Japanese (ja)
Inventor
Yukihiro Mizukoshi
幸弘 水越
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2005273677A priority Critical patent/JP2007088709A/en
Publication of JP2007088709A publication Critical patent/JP2007088709A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Bus Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a packet communication apparatus capable of making communication through transmission/reception of packet data in a network system such as a LAN and to provide a processing method thereof. <P>SOLUTION: The packet communication apparatus 10 includes: an ordinary buffer 26 which a main control section 12 uses for data processing; and a processing buffer 24 which an accelerator 22 uses for encryption/decryption processing, integrally configures a MAC 20 and the accelerator 22, and the MAC 20 discriminates whether or not a received packet is an emergent packet, transfers the received packet to the processing buffer 24 when the received packet is the emergent packet, or transfers the received packet to the ordinary buffer 26 under the control of a DMA control section 18 in the other cases, and further the MAC 20 transmits an interruption IRQ 2 to the main control section 12 in response to the transfer of the emergent packet, and the main control section 12 preferentially applies data processing to the emergent packet in the processing buffer 24 in response to the interruption IRQ 2. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、LANなどのネットワークシステムにおいて、パケットデータを送受信して通信することができるパケット通信装置およびその処理方法に関するものである。   The present invention relates to a packet communication apparatus capable of transmitting and receiving packet data in a network system such as a LAN, and a processing method thereof.

従来から、LAN(Local Area Network)などのネットワークシステムでは、パーソナルコンピュータ(Personal Computer:PC)やプリンタなどの各機器をツイストペアケーブルなどの配線で接続してデータをやり取りしている。LANの通信制御方式のうち、イーサネット(登録商標)(Ethernet)は、NIC(Network Interface Card)を用いてPCに装備された標準ネットワークとして普及している。イーサネットは、米国Xerox社およびDEC社により考案され、IEEE802.3委員会によって標準化されたLAN規格であり、今日では、通信速度100Mbpsの高速イーサネット(Fast Ethernet)や、ブロードバンド化に対応したギガビットイーサネット(Gigabit Ethernet)により高速化されている。   2. Description of the Related Art Conventionally, in a network system such as a LAN (Local Area Network), data is exchanged by connecting devices such as a personal computer (PC) and a printer with wiring such as a twisted pair cable. Among LAN communication control methods, Ethernet (registered trademark) is widely used as a standard network equipped in a PC using a NIC (Network Interface Card). Ethernet is a LAN standard that was devised by Xerox and DEC in the United States and standardized by the IEEE802.3 committee. Today, Ethernet is a fast Ethernet with a communication speed of 100 Mbps (Fast Ethernet) and Gigabit Ethernet ( (Gigabit Ethernet).

また、LANに用いられる従来の通信装置には、ダイレクトメモリアクセス(Direct Memory Access:DMA)コントローラ、メディアアクセスコントローラ(Media Access Controller:MAC)、暗号化/復号化アクセラレータおよびバスアービタを内部バスに接続してハードウエアで構成されるものがある。この通信装置は、パケットを通信単位とするデータ(以下、パケットと称する)を送受信バッファに格納してアプリケーションプログラムにより処理するが、DMAコントローラおよびMACによりLANおよび送受信バッファ間のパケットの転送を実現している。   In addition, conventional communication devices used in LANs have a direct memory access (DMA) controller, media access controller (MAC), encryption / decryption accelerator, and bus arbiter connected to the internal bus. Some hardware is configured. This communication device stores data in packets as communication units (hereinafter referred to as packets) in transmission / reception buffers and processes them by application programs. The DMA controller and MAC realize packet transfer between the LAN and transmission / reception buffers. ing.

この通信装置では、ディスクリプタ(descriptor)と呼ばれる構造体をあらかじめメモリに備えて、MACにこのディスクリプタの配列を渡してパケットのDMA転送を行っている。   In this communication apparatus, a structure called a descriptor is provided in a memory in advance, and the array of the descriptor is transferred to the MAC to perform packet DMA transfer.

MACは、高速イーサネットなどの高速LANから自分宛てのパケットを受信するもので、通常、パケットの最大データ量は1514バイト程度であるので、MACは、数Kバイト程度のFIFOメモリを備えて受信パケットを一時的に保持することができる。MACは、パケットを受信するとDMAコントローラに受信通知を送る。   The MAC receives packets addressed to itself from a high-speed LAN such as high-speed Ethernet. Normally, the maximum data amount of a packet is about 1514 bytes, so the MAC has a FIFO memory of about several kilobytes and is a received packet. Can be temporarily held. When the MAC receives the packet, it sends a reception notification to the DMA controller.

また、DMAコントローラは、DMA転送を制御するもので、MACからの受信通知に応じて、受信ディスクリプタに基づいて、MACで受信したパケットを内部バスを介してメモリ上の受信バッファに転送する。DMAコントローラは、DMA転送の結果、受信バッファのデータ量が所定のしきい値に達すると、通信装置のCPU(Central Processing Unit)に割込み(Interrupt ReQuest:IRQ)を送る。   The DMA controller controls DMA transfer, and transfers a packet received by the MAC to a reception buffer on the memory via the internal bus based on the reception descriptor in response to a reception notification from the MAC. When the amount of data in the reception buffer reaches a predetermined threshold as a result of the DMA transfer, the DMA controller sends an interrupt (Interrupt ReQuest: IRQ) to the CPU (Central Processing Unit) of the communication device.

CPUは、DMAコントローラからの割込みIRQに応じて、受信バッファに蓄積されたパケットを、その蓄積の順にデータ処理する。   In response to the interrupt IRQ from the DMA controller, the CPU processes the packets stored in the reception buffer in the order of storage.

また、CPUは、このデータ処理において、パケットの暗号化/復号化処理が必要な場合、DESA(Data Encryption Standard Accelerator)などの暗号化/復号化アクセラレータに暗号化/復号化処理をさせる。DESAは、通常、ハードウエアで構成されて、64ビットまたは128ビットの暗号化/復号化処理を高速に行い、DESAにおける暗号化/復号化処理の処理条件は、CPUで実行されるアプリケーションプログラムで設定される。   In addition, when the packet encryption / decryption processing is necessary in this data processing, the CPU causes an encryption / decryption accelerator such as DESA (Data Encryption Standard Accelerator) to perform the encryption / decryption processing. DESA is usually composed of hardware and performs 64-bit or 128-bit encryption / decryption processing at high speed. The processing conditions for encryption / decryption processing in DESA are application programs executed by the CPU. Is set.

たとえば、暗号化されたパケットを復号化処理する場合、このパケットを受信バッファからDESAの処理バッファに転送し、DESAが処理バッファ上でこのパケットの復号化処理を行い、さらに復号化後のパケットを受信バッファに再度転送する。   For example, when decrypting an encrypted packet, the packet is transferred from the reception buffer to the DESA processing buffer, the DESA decrypts the packet on the processing buffer, and the decrypted packet is further processed. Transfer again to the receive buffer.

また、従来の通信装置において、パケットを送信する場合、アプリケーションプログラムによるデータ処理によって、送信するパケットは、送信バッファに格納され、DMAコントローラにより送信ディスクリプタに基づいてDMA転送され、このパケットが送信バッファからMACへ転送されて、さらにMACから高速LANに送信される。   In addition, when transmitting a packet in a conventional communication device, the packet to be transmitted is stored in a transmission buffer by data processing by an application program, and DMA-transferred based on the transmission descriptor by the DMA controller. The data is transferred to the MAC and then transmitted from the MAC to the high-speed LAN.

ここで、送信するパケットの暗号化が必要であれば、このパケットを送信バッファからDESAの処理バッファに転送し、DESAが処理バッファ上でこのパケットの暗号化処理を行い、さらに暗号化後のパケットを送信バッファに再度転送する。   If it is necessary to encrypt the packet to be transmitted, this packet is transferred from the transmission buffer to the DESA processing buffer, DESA encrypts this packet on the processing buffer, and then the encrypted packet. Is transferred again to the send buffer.

この通信装置では、CPUバスと制御バスが共有され、メモリおよびDESA間のCPUによる処理と、パケットのDMA転送処理とは、時分割で行われる。   In this communication apparatus, the CPU bus and the control bus are shared, and the processing by the CPU between the memory and the DESA and the packet DMA transfer processing are performed in a time division manner.

ところで、特許文献1に記載のデータ転送装置では、優先順位の高いデータ転送がDMA制御回路にリクエストされたとき、DMA制御回路は、優先順位の低いデータ転送を一時中断させ、その中断時点におけるステイタスがアドレスレジスタおよび現在転送量レジスタに記憶され、DMA制御回路は、優先順位の高いデータ転送を終了したときに、アドレスレジスタおよび現在転送量レジスタに記憶されたステイタスに対応して、優先順位の低いデータ転送を再開させることができる。   By the way, in the data transfer device described in Patent Document 1, when a data transfer with a high priority is requested to the DMA control circuit, the DMA control circuit temporarily suspends the data transfer with a low priority and the status at the time of the interruption. Is stored in the address register and the current transfer amount register, and the DMA control circuit has a low priority corresponding to the status stored in the address register and the current transfer amount register when the high-priority data transfer ends. Data transfer can be resumed.

特開平6-131294号JP-A-6-131294

しかしながら、従来のDMA転送方式では、システム全体のスループットを向上させる効果があるが、優先度が高く、緊急に処理しなければならないパケットの処理を行うことは困難である。たとえば、VoIP(Voice over Internet Protocol)によって送受信される音声データは、転送レートは低いが時間遅れが品質低下をもたらすので、緊急に処理しなければならないパケットとして知られている。   However, the conventional DMA transfer method has an effect of improving the throughput of the entire system, but has a high priority and it is difficult to process a packet that must be processed urgently. For example, voice data transmitted / received by VoIP (Voice over Internet Protocol) is known as a packet that has to be processed urgently because the transfer rate is low but the time delay causes quality degradation.

従来のDMA転送方式では、優先パケットか否かを判別することなく、送受信バッファに転送されて蓄積された順にCPUがデータ処理を行っている。このように、優先パケットのDMA転送やデータ処理を優先的に行わないので、LANの高速化およびネットワーク機器の高機能化に伴う転送データ増大によって、優先パケットの処理速度が遅れるという問題がある。   In the conventional DMA transfer method, the CPU performs data processing in the order of transfer to the transmission / reception buffer and accumulation without determining whether the packet is a priority packet. As described above, the priority packet DMA transfer and data processing are not preferentially performed, and therefore there is a problem that the processing speed of the priority packet is delayed due to an increase in transfer data accompanying an increase in speed of the LAN and an increase in the functionality of the network device.

たとえば、従来の通信装置において、緊急の処理を要しない3つの通常パケットを順次受信し、2番目の通常パケットの受信後で3番目の通常パケットの受信前に、緊急の処理を要する優先パケットを受信する。このとき、DMAコントローラは、この優先パケットをMACから受信バッファにDMA転送して、2番目の通常パケットの次に蓄積する。このように、受信されたパケットは、通常パケットであるか優先パケットであるかに拘らず、DMAコントローラによって、DMA転送されて受信した順に受信バッファに蓄積される。   For example, in a conventional communication device, three normal packets that do not require urgent processing are sequentially received, and priority packets that require urgent processing are received after receiving the second normal packet and before receiving the third normal packet. Receive. At this time, the DMA controller DMA-transfers this priority packet from the MAC to the reception buffer, and stores it after the second normal packet. In this way, the received packet is stored in the reception buffer in the order in which it is DMA-transferred and received by the DMA controller, regardless of whether it is a normal packet or a priority packet.

したがって、この通信装置に受信されたパケットは、通常パケットであるか優先パケットであるかに拘らず、CPUによって、受信バッファに蓄積された順にデータ処理され、CPUによるデータ処理はバスを時分割で使用して行われる。   Therefore, regardless of whether the packet received by this communication device is a normal packet or a priority packet, the CPU processes the data in the order in which it is stored in the reception buffer. Done using.

また、CPUによるデータ処理で暗号化/復号化処理すべきパケットは、メモリ内の送受信バッファから、通常、複数回にわたって切り出されて、DESA内の処理バッファに転送される。その後、DESAによって暗号化/復号化処理されたパケットは、送受信バッファに再度転送する必要がある。このように、暗号化/復号化処理では、送受信バッファおよび処理バッファ間のパケット転送による負担が生じて、内部バスの使用効率の低下だけでなく、システム全体のデータ処理スループットを大きく低下することがある。   Further, a packet to be encrypted / decrypted by data processing by the CPU is usually cut out from a transmission / reception buffer in the memory a plurality of times and transferred to a processing buffer in DESA. Thereafter, the packet encrypted / decrypted by DESA needs to be transferred again to the transmission / reception buffer. As described above, in the encryption / decryption processing, a burden is caused by packet transfer between the transmission / reception buffer and the processing buffer, which not only reduces the use efficiency of the internal bus, but also significantly reduces the data processing throughput of the entire system. is there.

なお、パケット転送処理を行うネットワーク機器において、パケットの優先順位に応じてメモリキューを持たせる構造のハードウエアや高速なDSP処理があるが、この構造を一般的な端末に適用するにはコストが高い。   In network equipment that performs packet transfer processing, there is hardware with a structure that has a memory queue according to the priority of packets and high-speed DSP processing, but it is costly to apply this structure to general terminals. high.

また、従来の通信装置において、緊急の処理を要する優先パケットを送信する場合、すでにDMA転送されたパケットの送信が終了するまでは、優先パケットの処理を待機する必要がある。なお、MACとDESAとの問の転送を別個のDMA転送としても、その転送はCPUが行う緊急処理を妨げることがある。また、優先パケットを送信する場合、送出間隔のゆらぎを抑えて一定間隔で送出することが重要な、リアルタイム性が要求されるデータではとくに問題になる。   In addition, when a prioritized packet requiring urgent processing is transmitted in a conventional communication apparatus, it is necessary to wait for processing of the prioritized packet until transmission of a packet already transferred by DMA ends. Note that even if the transfer between the MAC and the DESA is a separate DMA transfer, the transfer may interfere with the emergency processing performed by the CPU. In addition, when transmitting priority packets, it is particularly important for data that requires real-time performance, in which it is important to transmit the packets at a constant interval while suppressing fluctuations in the transmission interval.

また、従来から、ルータなどのネットワーク機器側での処理内容が、主な技術的課題であるが、ネットワーク機器側の高機能化を考慮すると、端末側でVoIP通信の品質(Quality of Service:QoS)を高く保つ技術が重要な課題となる。   Conventionally, the processing content on the network equipment side such as routers has been a major technical issue, but considering the higher functionality on the network equipment side, the quality of VoIP communication (Quality of Service: QoS) on the terminal side ) Is a key issue.

さらに、今日では、データの暗号化などによるセキュリティ通信を行う要求が高まり、たとえば、次世代ネットワークのIPv6(Internet Plotocol Version 6)では、IPv4端末間通信では普及しなかったIPSec(IP Security)が標準として取り入れられている。   Furthermore, today, there is a growing demand for security communications such as data encryption. For example, in IPv6 (Internet Protocol Version 6) of the next generation network, IPSec (IP Security), which was not popular in communications between IPv4 terminals, is the standard. It is adopted as.

本発明はこのような従来技術の欠点を解消し、ネットワーク機器との通信において暗号化された緊急パケットの送受信に対応し、通信の品質(QoS)を高く保ちつつ、送受信する緊急パケットの処理を高速化するパケット通信装置およびその処理方法を提供することを目的とする。   The present invention eliminates such drawbacks of the prior art, supports transmission / reception of encrypted emergency packets in communication with network devices, and processes emergency packets to be transmitted / received while maintaining high communication quality (QoS). It is an object of the present invention to provide a packet communication apparatus and a processing method thereof that are accelerated.

本発明は上述の課題を解決するために、通常バッファに格納された送受信パケットをデータ処理する主制御手段と、外部からの受信パケットをこの通常バッファに転送し、この通常バッファにおける送信パケットを外部に送信するメディアアクセスコントローラと、この通常バッファおよびこのメディアアクセスコントローラ間のこれらの送受信パケットの転送を制御して、この主制御手段を介さずにダイレクトメモリアクセス転送させるダイレクトメモリアクセス制御手段と、処理バッファに格納されたこれらの送受信パケットを復号化および暗号化処理するアクセラレータとを含むパケット通信装置は、このメディアアクセスコントローラおよびこのアクセラレータを一体化して構成し、このメディアアクセスコントローラは、この受信パケットがこの主制御手段で緊急にデータ処理すべき緊急パケットであるか否かを判定する第1の判定手段を含み、その結果、緊急パケットである場合にはこの受信パケットをこの処理バッファに転送して、第1の割込みをこの主制御手段に送り、それ以外の場合にはこの受信パケットを通常パケットとしてこの通常バッファに転送し、この主制御手段は、第1の割込みに応じて、この緊急パケットである受信パケットを優先的にデータ処理することを特徴とする。   In order to solve the above-mentioned problem, the present invention transfers main packet transmission / reception packets stored in the normal buffer to the normal buffer and transfers the received packets from the outside to the normal buffer. A medium access controller for transmitting to the memory, direct memory access control means for controlling transfer of these transmission / reception packets between the normal buffer and the media access controller, and direct memory access transfer without going through the main control means, and processing A packet communication device including an accelerator that decrypts and encrypts these transmission / reception packets stored in the buffer is configured by integrating the media access controller and the accelerator, and the media access controller Including first determination means for determining whether or not the packet is an urgent packet whose data should be urgently processed by the main control means, and as a result, if the packet is an urgent packet, the received packet is transferred to the processing buffer. Then, the first interrupt is sent to the main control means. Otherwise, the received packet is transferred to the normal buffer as a normal packet. The main control means responds to the first interrupt by Data processing is performed preferentially on received packets that are urgent packets.

また、通常バッファに格納された送受信パケットをデータ処理する主制御手段と、外部からの受信パケットをこの通常バッファに転送し、この通常バッファにおける送信パケットを外部に送信するメディアアクセスコントローラと、この通常バッファおよびこのメディアアクセスコントローラ間のこれらの送受信パケットの転送を制御して、この主制御手段を介さずにダイレクトメモリアクセス転送させるダイレクトメモリアクセス制御手段と、処理バッファに格納されたこれらの送受信パケットを復号化および暗号化処理するアクセラレータとを含むパケット通信装置は、このメディアアクセスコントローラおよびこのアクセラレータを一体化して構成し、この主制御手段は、この送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定手段を含み、その結果、緊急パケットである場合にはこの送信パケットをこの処理バッファに転送し、それ以外の場合にはこの送信パケットを通常パケットとして転送し、さらに、この送信パケットを優先的にデータ処理して、優先パケット送信指令をこのメディアアクセスコントローラに送り、このメディアアクセスコントローラは、この優先パケット送信指令に応じて、この緊急パケットである送信パケットを優先的に送信することを特徴とする。   In addition, the main control means for processing the transmission / reception packet stored in the normal buffer, the media access controller for transferring the received packet from the outside to the normal buffer, and transmitting the transmission packet in the normal buffer to the outside, and the normal control The direct memory access control means for controlling the transfer of these transmission / reception packets between the buffer and the media access controller and direct memory access transfer without going through the main control means, and these transmission / reception packets stored in the processing buffer A packet communication apparatus including an accelerator that performs decryption and encryption processing is configured by integrating the media access controller and the accelerator, and the main control unit is an emergency packet that is an emergency packet that is to be subjected to data processing urgently. Second determination means for determining whether or not the packet is an urgent packet, the transmission packet is transferred to the processing buffer; otherwise, the transmission packet is transferred as a normal packet. Further, the transmission packet is preferentially processed, and a priority packet transmission command is sent to the media access controller. The media access controller sends the emergency packet transmission packet in response to the priority packet transmission command. The transmission is preferentially performed.

また、外部から受信された受信パケットをメディアアクセスコントローラにてこの通常バッファに転送する第1の受信パケット転送工程と、通常バッファに格納された受信パケットを主制御部にてデータ処理する第1のデータ処理工程と、この通常バッファおよびこのメディアアクセスコントローラ間のこの受信パケットの転送をダイレクトメモリアクセス制御部で制御して、この主制御部を介さずにダイレクトメモリアクセス転送させる転送制御工程と、処理バッファに格納されたこの受信パケットをアクセラレータで復号化処理する復号化工程とを含むパケット処理は、一体化されたこのメディアアクセスコントローラおよびこのアクセラレータを使用し、この受信パケットがこの主制御手段で緊急にデータ処理すべき緊急パケットであるか否かをこのメディアアクセスコントローラで判定して、その結果、この受信パケットが緊急パケットである場合にはこの受信パケットをこの処理バッファに転送する第2の受信パケット転送工程を含み、第1の割込みをこの主制御部に送り、それ以外の場合には第1の受信パケット転送工程によりこの受信パケットを通常パケットとしてこの通常バッファに転送する第1の判定工程と、第1の割込みに応じて、この緊急パケットである受信パケットを主制御部にて優先的にデータ処理する第2のデータ処理工程とを含むことを特徴とする。   Also, a first received packet transfer step for transferring a received packet received from the outside to the normal buffer by the media access controller, and a first control for processing the received packet stored in the normal buffer by the main control unit A data processing step, a transfer control step for controlling transfer of the received packet between the normal buffer and the media access controller by the direct memory access control unit, and direct memory access transfer without going through the main control unit; The packet processing including the decoding step of decoding the received packet stored in the buffer by the accelerator uses the integrated media access controller and the accelerator, and the received packet is urgently transmitted by the main control means. Urgent packet to be processed A second received packet transfer step of transferring the received packet to the processing buffer when the received packet is an urgent packet, as a result, A first determination step of sending an interrupt to the main control unit; otherwise, transferring the received packet as a normal packet to the normal buffer by a first received packet transfer step; and in response to the first interrupt And a second data processing step of preferentially processing the received packet, which is an emergency packet, in the main control unit.

また、通常バッファに格納された送信パケットをこの主制御部にてデータ処理する第3のデータ処理工程と、この通常バッファにおける送信パケットをこのメディアアクセスコントローラにて外部に送信する第1の送信パケット転送工程と、この通常バッファおよびこのメディアアクセスコントローラ間のこの送信パケットの転送をダイレクトメモリアクセス制御部で制御して、この主制御部を介さずにダイレクトメモリアクセス転送させる転送制御工程と、この処理バッファに格納されたこの送信パケットをアクセラレータで暗号化処理する暗号化工程とを含むパケット処理方法は、一体化されたこのメディアアクセスコントローラおよびこのアクセラレータを使用し、第3のデータ処理工程は、この送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定工程を含み、その結果、緊急パケットである場合にはこの送信パケットをこの処理バッファに転送する第2の送信パケット転送工程を含み、それ以外の場合には第1の送信パケット転送工程によりこの送信パケットを通常パケットとしてこの通常バッファに転送し、さらに、該方法は、この送信パケットを優先的にデータ処理して、優先パケット送信指令をこのメディアアクセスコントローラに送る第4のデータ処理工程を含み、第2の送信パケット転送工程は、このメディアアクセスコントローラにて、この優先パケット送信指令に応じて、この緊急パケットである送信パケットを優先的に送信することを特徴とする。   Also, a third data processing step for processing the transmission packet stored in the normal buffer by the main control unit, and a first transmission packet for transmitting the transmission packet in the normal buffer to the outside by the media access controller A transfer process, a transfer control process in which transfer of the transmission packet between the normal buffer and the media access controller is controlled by the direct memory access control unit, and direct memory access transfer is performed without going through the main control unit; A packet processing method including an encryption step of encrypting the transmission packet stored in the buffer with an accelerator, using the integrated media access controller and the accelerator, and a third data processing step includes: The transmitted packet must be processed urgently. A second determination step of determining whether or not the packet is an urgent packet, and as a result, a second transmission packet transfer step of transferring the transmission packet to the processing buffer if the packet is an urgent packet; In this case, the transmission packet is transferred to the normal buffer as a normal packet by the first transmission packet transfer step. Further, the method preferentially processes the transmission packet to perform a priority packet transmission command. Including a fourth data processing step to be sent to the media access controller, wherein the second transmission packet transfer step preferentially sends the urgent packet as a response to the priority packet transmission command in the media access controller. It is characterized by transmitting.

本発明のパケット通信装置によれば、MACにおいて受信パケットが緊急パケットか否かを判定して、緊急パケットである場合、この緊急パケットを暗号化/復号化アクセラレータで用いる処理バッファに転送し、ここで、MACが主制御部に割込みを送って、緊急パケットを優先的に処理させて、主制御部が処理バッファ上で緊急パケットをデータ処理することにより、DMA転送などのパケット転送の際に優先度に応じてパケットを処理することができる。   According to the packet communication device of the present invention, it is determined whether or not the received packet is an urgent packet in the MAC, and if it is an urgent packet, the urgent packet is transferred to a processing buffer used in the encryption / decryption accelerator, Then, the MAC sends an interrupt to the main control unit to preferentially process the urgent packet, and the main control unit processes the urgent packet on the processing buffer, thereby giving priority to the packet transfer such as DMA transfer. Packets can be processed at different times.

このパケット通信装置では、優先パケットに係るデータは、MACおよびアクセラレータ間で直接転送されるので、DMA転送ではカウントされない。また、主制御部がメモリにアクセスして受信パケットを転送する処理を簡略化して、優先パケットの通常バッファおよび処理バッファ間の双方向の転送を省略し、受信パケットを高速処理することができる。また、優先パケットを、通常バッファではなく処理バッファ上で処理するため、バスの競合を回避して、効率のよい速度で処理することができる。さらに、アクセラレータの処理バッファを利用するので便宜に暗号化/復号化処理を行うことができ、かつ資源の節約を達成することができる。   In this packet communication device, the data related to the priority packet is directly transferred between the MAC and the accelerator, and thus is not counted by the DMA transfer. In addition, it is possible to simplify the process in which the main control unit accesses the memory and transfers the received packet, omits bi-directional transfer of the priority packet between the normal buffer and the processing buffer, and can process the received packet at high speed. Further, since priority packets are processed not on the normal buffer but on the processing buffer, bus contention can be avoided and processing can be performed at an efficient speed. Further, since the accelerator processing buffer is used, encryption / decryption processing can be performed conveniently, and resource saving can be achieved.

また、本発明のパケット通信装置によれば、受信パケットの優先度を参照して優先パケットか否かを判定するので、緊急処理決定の具体的な方法を実現し、また、処理バッファを複数有して、優先パケット転送とパケット処理とをバッファリングで行うことにより、優先パケットを連続して受信した場合でも効率的に処理することができ、アクセラレータおよび主制御部の処理時間に余裕を与えて負担を軽くし、パケット処理の破綻を回避することができる。   In addition, according to the packet communication apparatus of the present invention, it is determined whether the packet is a priority packet by referring to the priority of the received packet, so that a specific method for determining emergency processing is realized and a plurality of processing buffers are provided. Thus, by performing priority packet transfer and packet processing by buffering, even when priority packets are received consecutively, they can be processed efficiently, leaving room for accelerator and main controller processing time. The burden can be reduced and packet processing failures can be avoided.

次に添付図面を参照して、本発明によるパケット通信装置の実施例を詳細に説明する。たとえば、本発明のパケット通信装置10は、図1に示すように、主制御部12とメモリ14とを内部バス16を介して接続し、ダイレクトメモリアクセス(Direct Memory Access:DMA)制御部18で制御することにより、メディアアクセスコントローラ(Media Access Controller:MAC)20にて外部からパケットを受信してメモリ14に転送し、他方、メモリ14におけるパケットをMAC 20に転送して外部に送信する。パケット通信装置10は、とくに、MAC 20を暗号化/復号化アクセラレータ22と一体化して、このアクセラレータ22にて処理バッファ24におけるパケットを暗号化および復号化処理するもので、さらに処理バッファ24を用いて緊急に処理すべきパケットを効率よく転送してデータ処理する。なお、本発明の理解に直接関係のない部分は、図示を省略し、冗長な説明を避ける。   Embodiments of a packet communication apparatus according to the present invention will now be described in detail with reference to the accompanying drawings. For example, as shown in FIG. 1, the packet communication apparatus 10 of the present invention connects a main control unit 12 and a memory 14 via an internal bus 16, and a direct memory access (DMA) control unit 18 By controlling, the media access controller (MAC) 20 receives a packet from the outside and transfers it to the memory 14, while the packet in the memory 14 is transferred to the MAC 20 and transmitted to the outside. In particular, the packet communication device 10 integrates the MAC 20 with the encryption / decryption accelerator 22, and encrypts and decrypts the packet in the processing buffer 24 by the accelerator 22, and further uses the processing buffer 24. Efficiently process packets to be processed urgently. Note that portions not directly related to understanding the present invention are not shown and redundant description is avoided.

主制御部12は、本装置全体の動作を制御および統括する機能を有してCPU(Central Processing Unit)などで構成されるもので、本実施例では、プログラムに応じてパケット送受信処理を実行し、DMA制御部18を制御することができる。   The main control unit 12 has a function of controlling and supervising the operation of the entire apparatus and is configured by a CPU (Central Processing Unit) or the like. In this embodiment, the main control unit 12 executes packet transmission / reception processing according to a program. The DMA control unit 18 can be controlled.

たとえば、主制御部12は、パケットの受信処理を行う場合、DMA制御部18にパケット受信開始指令を通知してDMA制御部18をパケット受信可能状態にする。また、主制御部12は、このDMA制御部18から通知される割込み要求IRQ1に応じて、メモリ14に転送された受信パケットのデータ処理を開始する。   For example, when performing packet reception processing, the main control unit 12 notifies the DMA control unit 18 of a packet reception start command, and makes the DMA control unit 18 ready for packet reception. Further, the main control unit 12 starts data processing of the received packet transferred to the memory 14 in response to the interrupt request IRQ1 notified from the DMA control unit 18.

また、主制御部12は、パケットの送信処理を行う場合、送信するパケットをデータ処理してメモリ14に格納し、また、DMA制御部18にパケット送信開始指令を通知して、DMA制御部18がメモリ14内のパケットをMAC 20に転送して送信するように制御する。   Further, when performing packet transmission processing, the main control unit 12 processes the packet to be transmitted and stores it in the memory 14, and notifies the DMA control unit 18 of a packet transmission start command, Controls to transfer the packet in the memory 14 to the MAC 20 for transmission.

また、主制御部12は、パケット送受信処理において復号化および暗号化処理が必要であると判断した場合、暗号化/復号化アクセラレータ22に復号化および暗号化指令を通知する。このとき、主制御部12は、メモリ14の通常バッファ26におけるパケットの復号化および暗号化処理が必要であると判断した場合、そのパケットを通常バッファ26からMAC 20の処理バッファ24に転送してから、復号化および暗号化指令を通知し、復号化および暗号化処理が終了したとき、DMA制御部18を制御して、処理したパケットを処理バッファ24から通常バッファ26に再度転送させる。   When the main control unit 12 determines that decryption and encryption processing is necessary in the packet transmission / reception processing, the main control unit 12 notifies the encryption / decryption accelerator 22 of the decryption and encryption commands. At this time, if the main control unit 12 determines that decryption and encryption processing of the packet in the normal buffer 26 of the memory 14 is necessary, the main control unit 12 transfers the packet from the normal buffer 26 to the processing buffer 24 of the MAC 20. Then, the decryption and encryption command is notified, and when the decryption and encryption processing is completed, the DMA control unit 18 is controlled to transfer the processed packet from the processing buffer 24 to the normal buffer 26 again.

また、主制御部12は、パケット受信処理時において、MAC 20から供給される優先パケット転送完了を示す割込み要求IRQ2に応じて、処理バッファ24に格納された優先パケットなどの緊急に処理すべきパケットを優先的にデータ処理する。主制御部12は、処理バッファ24上の優先パケットに対してデータ処理を行ってよく、データ処理が終了したとき、DMA制御部18を制御して、優先パケットを処理バッファ24から通常バッファ26に転送させるとよい。   In addition, the main control unit 12 responds to an interrupt request IRQ2 indicating completion of priority packet transfer supplied from the MAC 20 during packet reception processing, such as a packet to be urgently processed such as a priority packet stored in the processing buffer 24. Is preferentially processed. The main control unit 12 may perform data processing on the priority packet on the processing buffer 24. When the data processing is completed, the main control unit 12 controls the DMA control unit 18 to transfer the priority packet from the processing buffer 24 to the normal buffer 26. It is good to transfer.

また、主制御部12は、受信した優先パケットのデータ処理において、この優先パケットの暗号化ヘッダを参照して、優先パケットが暗号化されている場合、アクセラレータ22に復号化指令を通知して復号化処理をさせる。   In addition, in the data processing of the received priority packet, the main control unit 12 refers to the encryption header of the priority packet, and if the priority packet is encrypted, the main control unit 12 notifies the accelerator 22 of the decryption command and decrypts it. Let the process.

主制御部12は、通常バッファ26における通常パケットのデータ処理中に割込み要求IRQ2を受けたとき、その処理中の通常パケットのデータ処理が終了してから、優先パケットのデータ処理を開始するとよい。また、主制御部12は、優先パケットのデータ処理が終了してから、通常バッファ26に残っている通常パケットのデータ処理に戻るとよい。   When the main control unit 12 receives the interrupt request IRQ2 during the normal packet data processing in the normal buffer 26, the main control unit 12 may start the data processing for the priority packet after the data processing for the normal packet being processed ends. The main control unit 12 may return to the data processing of the normal packet remaining in the normal buffer 26 after the data processing of the priority packet is completed.

また、主制御部12は、パケット送信処理時において、送信パケットをデータ処理する際に、緊急に処理すべきパケットであるか否かを判定し、本実施例では、優先パケットであるか否かを判定する。その結果、主制御部12は、優先パケットであると判定した場合、この優先パケットを通常バッファ26から処理バッファ24に転送し、処理バッファ24上の優先パケットに対してデータ処理を行ってよい。このような優先パケットを送信するイベントは、たとえば音響機器などの周辺機器からの外部割込みが主制御部12に送られて発生する。   Further, the main control unit 12 determines whether or not it is a packet to be urgently processed when processing a transmission packet during packet transmission processing. In this embodiment, the main control unit 12 determines whether or not the packet is a priority packet. Determine. As a result, when the main control unit 12 determines that the packet is a priority packet, the main control unit 12 may transfer the priority packet from the normal buffer 26 to the processing buffer 24 and perform data processing on the priority packet on the processing buffer 24. Such an event for transmitting a priority packet occurs when an external interrupt from a peripheral device such as an audio device is sent to the main control unit 12, for example.

また、主制御部12は、送信する優先パケットのデータ処理において、この優先パケットを暗号化すべきと判定した場合、アクセラレータ22に暗号化指令を通知して暗号化処理をさせる。主制御部12は、実際には、まだパケット化されていない優先パケットを通常バッファ26から処理バッファ24に転送するので、処理バッファ24上で暗号化前の優先パケットをパケット化するとよい。   Further, when the main control unit 12 determines in the data processing of the priority packet to be transmitted that the priority packet should be encrypted, the main control unit 12 notifies the accelerator 22 of the encryption command and performs the encryption process. Since the main control unit 12 actually transfers the priority packet that has not been packetized from the normal buffer 26 to the processing buffer 24, the priority packet before encryption may be packetized on the processing buffer 24.

主制御部12は、送信する優先パケットのデータ処理が終了したとき、MAC 20に優先パケット送信指令を通知して優先パケットを優先的に送信させる。   When the data processing of the priority packet to be transmitted is completed, the main control unit 12 notifies the MAC 20 of a priority packet transmission command so that the priority packet is transmitted with priority.

メモリ14は、RAM(Random Access Memory)などの記憶部で構成されて、送受信するパケットデータを一時格納する通常バッファ26を有する。また、メモリ14は、DMA制御部18のDMA転送に用いるディスクリプタ(descriptor)などの構造体28を有してもよく、このとき、メモリ14は、受信用および送信用のディスクリプタ28を有するとよい。また、メモリ14は、主制御部12が実行するパケット送受信処理を構成するプログラムを保持してもよい。   The memory 14 includes a storage unit such as a RAM (Random Access Memory) and has a normal buffer 26 that temporarily stores packet data to be transmitted and received. Further, the memory 14 may include a structure 28 such as a descriptor used for DMA transfer of the DMA control unit 18, and at this time, the memory 14 may include a descriptor 28 for reception and transmission. . Further, the memory 14 may hold a program that constitutes a packet transmission / reception process executed by the main control unit 12.

本実施例の通常バッファ26は、緊急に処理すべき優先パケットなどの緊急パケットではなく、通常パケットを格納するものである。   The normal buffer 26 of this embodiment stores normal packets, not emergency packets such as priority packets to be processed urgently.

内部バス16は、バス調停部30とも接続し、バス調停部30は、内部バス16のバス使用権を主制御部12やDMA制御部18などの各部間で調停する。   The internal bus 16 is also connected to the bus arbitration unit 30, and the bus arbitration unit 30 arbitrates the right to use the internal bus 16 between the main control unit 12 and the DMA control unit 18.

DMA制御部18は、主制御部12を介さずにデータ転送を直接実行するメモリ制御回路で、本実施例では、MAC 20および通常バッファ26間のパケットデータのDMA転送を制御する。   The DMA control unit 18 is a memory control circuit that directly executes data transfer without going through the main control unit 12. In this embodiment, the DMA control unit 18 controls DMA transfer of packet data between the MAC 20 and the normal buffer 26.

たとえば、DMA制御部18は、主制御部12から供給される受信開始指令に応じて受信可能状態となる。受信可能状態のDMA制御部18は、パケットを受信したMAC 20からパケット受信通知を受けて、この通知に応じてMAC 20にて受信したパケットをメモリ14の通常バッファ26に転送する。   For example, the DMA control unit 18 enters a receivable state in response to a reception start command supplied from the main control unit 12. The DMA controller 18 in a receivable state receives a packet reception notification from the MAC 20 that has received the packet, and transfers the packet received by the MAC 20 to the normal buffer 26 of the memory 14 in response to this notification.

本実施例のDMA制御部18は、メモリ14から送受信ディスクリプタを読み出してこのディスクリプタに基づいてMAC 20におけるパケットのDMA転送を制御する。また、DMA制御部18自身が、この送受信ディスクリプタを備えてもよい。   The DMA control unit 18 of this embodiment reads a transmission / reception descriptor from the memory 14 and controls DMA transfer of packets in the MAC 20 based on this descriptor. Further, the DMA control unit 18 itself may include this transmission / reception descriptor.

MAC 20は、DMA制御部18に制御されて、外部から、たとえば高速LANを介して受信した受信パケットを内部バス16を介してメモリ14の通常バッファ26に転送し、他方、内部バス16を介して通常バッファ26から転送された送信パケットを外部に送信する。MAC 20は、FIFOメモリを備えて、受信および送信パケットを一時的に保持してから、それぞれを転送および送信するとよい。また、MAC 20は、DMA制御部18から受け渡されるディスクリプタ配列に応じて通常バッファ26とのパケット転送を行ってよい。   The MAC 20 is controlled by the DMA control unit 18 to transfer a received packet received from the outside via, for example, a high-speed LAN to the normal buffer 26 of the memory 14 via the internal bus 16, and on the other hand, via the internal bus 16. The transmission packet transferred from the normal buffer 26 is transmitted to the outside. The MAC 20 may include a FIFO memory and temporarily hold received and transmitted packets before transferring and transmitting each. Further, the MAC 20 may perform packet transfer with the normal buffer 26 in accordance with the descriptor array delivered from the DMA control unit 18.

本実施例では特に、MAC 20は、暗号化/復号化アクセラレータ22と一体化され、図1において、MAC 20は、アクセラレータ22を含むように構成されるが、アクセラレータ22とともに一つの処理回路として構成されてもよく、別個のアクセラレータ22と直接的に接続されてもよい。また、図1において、MAC 20は、アクセラレータ22による暗号化/復号化処理で用いられる処理バッファ24を含むように構成され、処理バッファ24を用いて優先パケットなどの緊急パケットを格納する。本実施例のMAC 20と暗号化/復号化アクセラレータ22とは、連帯して動作する。   Particularly in this embodiment, the MAC 20 is integrated with the encryption / decryption accelerator 22, and in FIG. 1, the MAC 20 is configured to include the accelerator 22, but is configured as one processing circuit together with the accelerator 22. Or may be directly connected to a separate accelerator 22. In FIG. 1, the MAC 20 is configured to include a processing buffer 24 used in encryption / decryption processing by the accelerator 22, and stores emergency packets such as priority packets using the processing buffer 24. In this embodiment, the MAC 20 and the encryption / decryption accelerator 22 operate in unison.

本実施例のMAC 20は、受信パケットが緊急パケットであるか否かを判定し、たとえば、優先パケットであるか否かを判定する。その結果、MAC 20は、優先パケットである場合には処理バッファ24に転送し、それ以外の場合には通常バッファ26に転送する。たとえば、MAC 20は、FIFOメモリに蓄えた受信パケットのパケットヘッダを参照して、その受信パケットが優先パケットか否かを判定することができる。   The MAC 20 of this embodiment determines whether the received packet is an urgent packet, and for example, determines whether it is a priority packet. As a result, the MAC 20 transfers it to the processing buffer 24 if it is a priority packet, and transfers it to the normal buffer 26 otherwise. For example, the MAC 20 can determine whether or not the received packet is a priority packet by referring to the packet header of the received packet stored in the FIFO memory.

たとえば、IEEE802.1Qによれば、複数のハブにわたってVLAN(Virtual LAN)を構築するために、イーサネットのフレームを拡張して、パケットは、VLAN IDを含み、すなわち、拡張した4バイト部分にVLANタグを含んでいるので、VLANタグが優先度の定義として利用され得る。本実施例のMAC 20は、VLANタグにおける「ユーザ・プライオリティ」フィールドに格納される3ビットのCoS(Class of Service)値を、パケットの優先度として参照することができる。また、IPv6によれば、パケットヘッダには16段階の数値を設定できる優先度フィールドが設けられているので、MAC 20は、この優先度を参照することができる。   For example, according to IEEE802.1Q, to construct a VLAN (Virtual LAN) across multiple hubs, the Ethernet frame is expanded, and the packet includes a VLAN ID, ie, a VLAN tag in the expanded 4-byte portion VLAN tag can be used as a priority definition. The MAC 20 of the present embodiment can refer to a 3-bit CoS (Class of Service) value stored in the “user priority” field in the VLAN tag as the priority of the packet. Further, according to IPv6, a priority field in which 16-step numerical values can be set is provided in the packet header, so the MAC 20 can refer to this priority.

MAC 20は、受信した優先パケットを転送する場合、転送先であるアクセラレータ22または処理バッファ24から応答信号を受けて、この応答信号に応じて優先パケットを処理バッファ24に転送し、その後、主制御部12に対して優先パケット受信通知を示す割込み要求IRQ2を送る。   When transferring the received priority packet, the MAC 20 receives a response signal from the accelerator 22 or the processing buffer 24 that is the transfer destination, and transfers the priority packet to the processing buffer 24 according to the response signal, and then the main control. An interrupt request IRQ2 indicating a priority packet reception notification is sent to the unit 12.

また、MAC 20は、送信パケットが優先パケットである場合に、通常バッファ26から内部バス16を介して供給される優先パケットを処理バッファ24に転送し、主制御部12から優先パケット送信指令を受けて処理バッファ24における優先パケットを外部に送信する。   Further, when the transmission packet is a priority packet, the MAC 20 transfers the priority packet supplied from the normal buffer 26 via the internal bus 16 to the processing buffer 24, and receives a priority packet transmission command from the main control unit 12. The priority packet in the processing buffer 24 is transmitted to the outside.

暗号化/復号化アクセラレータ22は、主制御部12から設定される共通鍵や初期ベクタなどの復号化および暗号化の処理条件に基づいて、パケットを復号化および暗号化処理するもので、ハードウエアで構成されてこれらの処理を高速に行う。このアクセラレータ22は、たとえば、DES(Data Encryption Standard)方式などの暗号化/復号化方式を使用してよい。   The encryption / decryption accelerator 22 decrypts and encrypts a packet based on the decryption and encryption processing conditions such as the common key and initial vector set by the main control unit 12, and includes hardware. These processes are performed at high speed. The accelerator 22 may use, for example, an encryption / decryption method such as a DES (Data Encryption Standard) method.

本実施例の暗号化/復号化アクセラレータ22は、主制御部12から通知される復号化および暗号化指令に応じて、処理バッファ24におけるパケットを復号化および暗号化処理し、復号化および暗号化処理を完了した後、主制御部12に処理完了通知IRQ3を送る。   The encryption / decryption accelerator 22 of the present embodiment decrypts and encrypts the packet in the processing buffer 24 according to the decryption and encryption command notified from the main control unit 12, and decrypts and encrypts the packet. After completing the processing, a processing completion notification IRQ3 is sent to the main control unit 12.

処理バッファ24は、復号化および暗号化処理用のバッファで、本実施例では特に、優先パケットなどの緊急パケット転送のためにも使用される。   The processing buffer 24 is a buffer for decryption and encryption processing. In the present embodiment, the processing buffer 24 is also used for transferring emergency packets such as priority packets.

次に、本実施例におけるパケット通信装置10の動作について、パケットを受信する動作を図2のシーケンスチャートを参照しながら説明する。   Next, the operation of the packet communication apparatus 10 in this embodiment will be described with reference to the sequence chart of FIG.

本実施例のパケット通信装置10では、まず主制御部12にてパケット受信処理のプログラムが実行されて、受信開始指令が主制御部12からDMA制御部18に通知される(S102)。   In the packet communication device 10 of this embodiment, first, the main control unit 12 executes a packet reception processing program, and a reception start command is notified from the main control unit 12 to the DMA control unit 18 (S102).

DMA制御部18では、受信開始指令に応じて受信可能状態(S104)となり、MAC 20において外部からのパケット受信が可能な状態となる。   The DMA control unit 18 enters a receivable state (S104) in response to the reception start command, and the MAC 20 enters a state in which external packet reception is possible.

次に、受信可能状態のMAC 20では、外部から、たとえば高速LANを介して第1の通常パケットが受信される(S106)。MAC 20では、ステップS106で受信したパケットはFIFOに一時格納され、このパケットの優先度が参照されて優先パケットであるか否かが判定され、ここでは通常パケットであると判定される。第1の通常パケットの受信S106に応じて、MAC 20からパケット受信通知がDMA制御部18に通知される(S108)。   Next, the MAC 20 in the receivable state receives the first normal packet from the outside, for example, via the high-speed LAN (S106). In MAC 20, the packet received in step S106 is temporarily stored in the FIFO, and the priority of this packet is referenced to determine whether it is a priority packet, and here it is determined to be a normal packet. In response to reception of the first normal packet S106, a packet reception notification is notified from the MAC 20 to the DMA control unit 18 (S108).

DMA制御部18では、パケット受信通知S106に応じてDMA転送が実行され、このDMA転送に従って、通常パケット転送指示がMAC 20に通知され(S110)、MAC 20にて受信された第1の通常パケットが通常バッファ26に転送される(S112)。   The DMA control unit 18 executes DMA transfer according to the packet reception notification S106, and according to this DMA transfer, a normal packet transfer instruction is notified to the MAC 20 (S110), and the first normal packet received by the MAC 20 is received. Is transferred to the normal buffer 26 (S112).

さらに、MAC 20では、パケット転送S112に応じた転送完了通知がDMA制御部18へと通知され(S114)、DMA制御部18では、この転送完了通知S114に応じて、受信イベントを示す割込み要求IRQ1が主制御部12に送られる。   Further, in the MAC 20, a transfer completion notification corresponding to the packet transfer S112 is notified to the DMA control unit 18 (S114), and the DMA control unit 18 generates an interrupt request IRQ1 indicating a reception event in response to the transfer completion notification S114. Is sent to the main control unit 12.

主制御部12では、割込み要求IRQ1に応じて、受信パケットのデータ処理が実行され(S116)、たとえば、通常バッファ26から通常パケットが順次読み出されてデータ処理されて、ここでは、第1の通常パケットが読み出されてデータ処理される。このとき、第1の通常パケットが暗号化されている場合、第1の通常パケットをアクセラレータ22の処理バッファ24に転送して復号化し、復号化後のパケットをデータ処理するとよい。   In the main control unit 12, the data processing of the received packet is executed in response to the interrupt request IRQ1 (S116). For example, the normal packet is sequentially read from the normal buffer 26 and processed. Normal packets are read and data processed. At this time, if the first normal packet is encrypted, the first normal packet may be transferred to the processing buffer 24 of the accelerator 22 and decrypted, and the decrypted packet may be processed.

本実施例のMAC 20では、第1の通常パケットのデータ処理S116の間に、第2の通常パケットが受信される(S118)。このとき、MAC 20では、第2の通常パケットの受信S118に応じて、パケット受信通知がDMA制御部18に通知され(S120)、DMA制御部18において、パケット受信通知S120に応じてDMA転送が実行されて、通常パケット転送指示がMAC 20に通知され(S122)、MAC 20にて受信された第2の通常パケットが通常バッファ26に転送される(S124)。   In the MAC 20 of the present embodiment, the second normal packet is received during the first normal packet data processing S116 (S118). At this time, the MAC 20 notifies the DMA control unit 18 of the packet reception notification in response to the second normal packet reception S118 (S120), and the DMA control unit 18 performs the DMA transfer in response to the packet reception notification S120. The normal packet transfer instruction is notified to the MAC 20 (S122), and the second normal packet received by the MAC 20 is transferred to the normal buffer 26 (S124).

また、本実施例では、MAC 20において、第1の通常パケットのデータ処理S116が終了する前に、優先パケットが受信される(S126)。MAC 20では、ステップS106で受信したパケットはFIFOに一時格納され、このパケットの優先度が参照されて優先パケットであるか否かが判定され、ここでは優先パケットであると判定される。また、図示しないが、MAC 20では、優先パケットの転送が処理バッファ24に通知され、処理バッファ24からの応答信号に応じて受信された優先パケットがアクセラレータ22の処理バッファ24に転送される(S128)。   In the present embodiment, the MAC 20 receives the priority packet before the data processing S116 of the first normal packet is completed (S126). In MAC 20, the packet received in step S106 is temporarily stored in the FIFO, and the priority of this packet is referred to to determine whether it is a priority packet. Here, it is determined to be a priority packet. Although not shown, the MAC 20 notifies the transfer of the priority packet to the processing buffer 24, and the priority packet received according to the response signal from the processing buffer 24 is transferred to the processing buffer 24 of the accelerator 22 (S128). ).

さらに、MAC 20では、優先パケット転送S128が完了すると、優先パケット転送完了を示す割込み要求IRQ2が主制御部12に送られる。   Further, in the MAC 20, when the priority packet transfer S128 is completed, an interrupt request IRQ2 indicating completion of the priority packet transfer is sent to the main control unit 12.

本実施例では、主制御部12において、第1の通常パケットのデータ処理S116が終了する前に、割込み要求IRQ2が送られているので、第2の通常パケットのデータ処理の前に、優先パケットが優先的にデータ処理される(S130)。   In this embodiment, since the interrupt request IRQ2 is sent before the data processing S116 of the first normal packet is completed in the main control unit 12, the priority packet is processed before the data processing of the second normal packet. Is preferentially processed (S130).

ところで、本実施例のMAC 20では、優先パケットのデータ処理S130の間に、第3の通常パケットが受信される(S132)。このとき、MAC 20では、第3の通常パケットの受信S132に応じて、パケット受信通知がDMA制御部18に通知され(S134)、DMA制御部18において、パケット受信通知S134に応じてDMA転送が実行されて、通常パケット転送指示がMAC 20に通知され(S136)、MAC 20にて受信された第3の通常パケットが通常バッファ26に転送される(S138)。   By the way, in the MAC 20 of this embodiment, the third normal packet is received during the priority packet data processing S130 (S132). At this time, the MAC 20 notifies the DMA control unit 18 of a packet reception notification in response to the third normal packet reception S132 (S134), and the DMA control unit 18 performs DMA transfer in response to the packet reception notification S134. The normal packet transfer instruction is notified to the MAC 20 (S136), and the third normal packet received by the MAC 20 is transferred to the normal buffer 26 (S138).

また、主制御部12による優先パケットのデータ処理S130において、優先パケットが暗号化されている場合、復号化指令が発せられてアクセラレータ22に通知される(S140)。このとき、アクセラレータ22において、処理バッファ24における優先パケットは、復号化指令S140に応じて復号化され、復号化された優先パケットは、通常バッファ26に転送される(S142)。   In the priority packet data processing S130 by the main control unit 12, if the priority packet is encrypted, a decryption command is issued and notified to the accelerator 22 (S140). At this time, the priority packet in the processing buffer 24 is decoded in the accelerator 22 in accordance with the decoding command S140, and the decoded priority packet is transferred to the normal buffer 26 (S142).

このとき、第3の通常パケットの転送S138と、優先パケットの転送S142とが同時に行われて、内部バス16が競合することがあるが、その場合には、DMA制御部16またはバス調停部30により制御されて、同時に流れるように通常バッファ26への転送がなされてもよい。   At this time, the third normal packet transfer S138 and the priority packet transfer S142 are performed at the same time, and the internal bus 16 may compete. In this case, the DMA control unit 16 or the bus arbitration unit 30 And may be transferred to the normal buffer 26 so as to flow simultaneously.

ところで、第3の通常パケットの転送S138と、優先パケットの転送S142の競合において、第3の通常パケットは、優先パケットよりも優先度が低いので、優先パケットの転送を優先して第3の通常パケットの転送を保留し、優先パケット転送終了後に第3の通常パケット転送を行ってもよい。ここで、優先度の低いパケット転送は、その保留時間に応じて優先度を変えてもよく、保留時間が長い場合に優先度を一時的に高くしてもよい。また、優先度に応じて転送単位を変えてもよく、優先度の高い優先パケットは大きい単位で、優先度の低い第3のパケットは小さい単位で、それぞれ転送してもよい。これらの転送競合の際の転送手法は、受信時だけでなく送信時でも行われてよい。   By the way, in the competition between the third normal packet transfer S138 and the priority packet transfer S142, the third normal packet has a lower priority than the priority packet. The packet transfer may be suspended, and the third normal packet transfer may be performed after the priority packet transfer ends. Here, in the packet transfer with a low priority, the priority may be changed according to the holding time, and when the holding time is long, the priority may be temporarily increased. Further, the transfer unit may be changed according to the priority, and the priority packet having a high priority may be transferred in a large unit, and the third packet having a low priority may be transferred in a small unit. These transfer methods in the case of transfer competition may be performed not only at the time of reception but also at the time of transmission.

主制御部12では、優先パケットのデータ処理S130が終了すると、通常バッファ26に格納されている通常パケットの順にしたがって、第2の通常パケットおよび第3の通常パケットが順次データ処理される(S144およびS146)。   In the main control unit 12, when the priority packet data processing S130 ends, the second normal packet and the third normal packet are sequentially processed according to the order of the normal packets stored in the normal buffer 26 (S144 and S146).

他方、本実施例におけるパケット通信装置10の動作について、パケットを送信する動作を図3のシーケンスチャートを参照しながら説明する。   On the other hand, the operation of the packet communication apparatus 10 in this embodiment will be described with reference to the sequence chart of FIG.

本実施例のパケット通信装置10では、まず主制御部12にてパケット送信処理のプログラムが実行されて送信パケットのデータ処理が行われ、ここでは、第1の通常パケット、第2の通常パケットおよび第3の通常パケットのデータ処理が行われる(S202、S204およびS206)。   In the packet communication apparatus 10 of this embodiment, first, the main control unit 12 executes a packet transmission processing program to perform data processing of the transmission packet. Here, the first normal packet, the second normal packet, Data processing of the third normal packet is performed (S202, S204, and S206).

主制御部12では、ステップS202、S204およびS206のデータ処理において、送信パケットが優先パケットか否かが判定されるが、ここでは、いずれも通常パケットであると判定される。ステップS202、S204およびS206のデータ処理の後、主制御部12から送信開始指令がDMA制御部18に通知される(S208)。   The main control unit 12 determines whether or not the transmission packet is a priority packet in the data processing in steps S202, S204, and S206. Here, it is determined that all are normal packets. After the data processing in steps S202, S204, and S206, the main control unit 12 notifies the DMA control unit 18 of a transmission start command (S208).

DMA制御部18では、送信開始指令S208に応じて、転送指示がMAC 20に通知され(S210)、MAC 20では、転送指示S210に応じて、通常バッファ26から通常パケットが順次転送されて、ここでは、第1の通常パケットが転送される(S212)。   In the DMA control unit 18, a transfer instruction is notified to the MAC 20 in response to the transmission start command S208 (S210). In the MAC 20, normal packets are sequentially transferred from the normal buffer 26 in response to the transfer instruction S210. Then, the first normal packet is transferred (S212).

さらに、MAC 20では、S212で転送された第1の通常パケットが外部へ、たとえば高速LANを介して送信され(S214)、第1の通常パケットの送信S214に応じて、送信通知がDMA制御部18に送られる(S216)。   Further, in MAC 20, the first normal packet transferred in S212 is transmitted to the outside via, for example, a high-speed LAN (S214), and a transmission notification is sent to the DMA control unit according to the transmission S214 of the first normal packet. It is sent to 18 (S216).

次に、DMA制御部18では、第1の通常パケットの送信通知S216に応じて、転送指示がMAC 20に通知され(S218)、MAC 20では、この転送指示S218に応じて、通常バッファ26から第2の通常パケットが転送され(S220)、S220で転送された第2の通常パケットが外部へ送信される(S222)。   Next, the DMA control unit 18 notifies the MAC 20 of a transfer instruction according to the transmission notification S216 of the first normal packet (S218), and the MAC 20 from the normal buffer 26 according to the transfer instruction S218. The second normal packet is transferred (S220), and the second normal packet transferred in S220 is transmitted to the outside (S222).

ところで、本実施例の主制御部12では、第2の通常パケットの転送S220と、第2の通常パケットの送信S222との間において、優先度の高い送信パケットがデータ処理される(S224)。主制御部12では、ステップS224のデータ処理において、送信パケットが優先パケットか否かが判定され、ここでは優先パケットであると判定される。   By the way, in the main control unit 12 of this embodiment, a transmission packet having a high priority is processed between the second normal packet transfer S220 and the second normal packet transmission S222 (S224). In the data processing of step S224, the main control unit 12 determines whether or not the transmission packet is a priority packet, and here determines that it is a priority packet.

また、主制御部12では、優先パケットのデータ処理S224において、優先パケットの転送指示がアクセラレータ22に送られる(S226)。アクセラレータ22では、この転送指示S226に応じて、通常バッファ26から優先パケットが処理バッファ24へと転送される(S228)。   Further, in the priority packet data processing S224, the main control unit 12 sends a priority packet transfer instruction to the accelerator 22 (S226). In the accelerator 22, the priority packet is transferred from the normal buffer 26 to the processing buffer 24 in response to the transfer instruction S226 (S228).

また、優先パケットの転送S228の後、主制御部12によるデータ処理S224は、処理バッファ24上の優先パケットに対して行われ、データ処理S224において、この優先パケットが暗号化して送信する必要があると判断された場合、暗号化指令がアクセラレータ22に送られる(S230)。アクセラレータ22では、この暗号化指令S230に応じて、処理バッファ24における優先パケットが暗号化される。   After the priority packet transfer S228, the data processing S224 by the main control unit 12 is performed on the priority packet on the processing buffer 24. In the data processing S224, the priority packet needs to be encrypted and transmitted. If it is determined, the encryption command is sent to the accelerator 22 (S230). In the accelerator 22, the priority packet in the processing buffer 24 is encrypted in response to the encryption command S230.

さらに、主制御部12では、第2の通常パケットの送信S222の後で、第3の通常パケットの転送前に、優先パケットの送信指令がMAC 20に送られる(S232)。   Further, the main control unit 12 sends a priority packet transmission command to the MAC 20 after the transmission of the second normal packet S222 and before the transfer of the third normal packet (S232).

本実施例ではとくに、MAC 20において、この送信指令S232に応じて、第2の通常パケットの送信S222に応じたDMA制御部18への送信通知は、送られずに待機させられて、優先パケットが優先的に送信され、ここでは、処理バッファ24から優先パケットが転送され(S234)、S234で転送された優先パケットが外部へ送信される(S236)。このように、送信ディスクリプタに第3の通常パケットが残っている状態でも、優先パケットは、優先的に送信される。   In the present embodiment, in particular, in the MAC 20, in response to the transmission command S232, the transmission notification to the DMA control unit 18 in response to the transmission S222 of the second normal packet is made to wait without being sent, and the priority packet Is preferentially transmitted. Here, the priority packet is transferred from the processing buffer 24 (S234), and the priority packet transferred in S234 is transmitted to the outside (S236). In this way, even when the third normal packet remains in the transmission descriptor, the priority packet is transmitted with priority.

次に、MAC 20では、優先パケットの送信S236が終了してから、第2の通常パケットの送信S222に応じた送信通知がDMA制御部18へ送られる(S238)。   Next, in the MAC 20, after the transmission S236 of the priority packet is completed, a transmission notification corresponding to the transmission S222 of the second normal packet is sent to the DMA control unit 18 (S238).

DMA制御部18では、第2の通常パケットの送信通知S238に応じて、転送指示がMAC 20に通知され(S240)、MAC 20では、この転送指示S240に応じて、通常バッファ26から第3の通常パケットが転送され(S242)、S242で転送された第3の通常パケットが外部へ送信される(S244)。   In the DMA control unit 18, a transfer instruction is notified to the MAC 20 in response to the second normal packet transmission notification S238 (S240). In the MAC 20, the third buffer 26 receives a third instruction from the normal buffer 26 in response to the transfer instruction S240. The normal packet is transferred (S242), and the third normal packet transferred in S242 is transmitted to the outside (S244).

また、他の実施例として、パケット通信装置10は、MAC 20において複数のバッファを有する処理バッファ24を備え、これらのバッファを使用してバッファリング(buffering)することにより、主制御部12による通常パケットの暗号化もしくは復号化処理、または優先パケットのデータ処理などのパケット処理と、MAC 20による優先パケットの転送とを効率よく行うことができる。   Further, as another embodiment, the packet communication device 10 includes a processing buffer 24 having a plurality of buffers in the MAC 20, and performs buffering using these buffers, whereby the main control unit 12 Packet processing such as packet encryption or decryption processing, or priority packet data processing, and transfer of priority packets by the MAC 20 can be performed efficiently.

この実施例によれば、たとえば、複数の処理バッファ24のうち、一方のバッファに優先パケットが転送されて、主制御部12がこの一方のバッファ上で優先パケットのデータ処理を行っているとき、MAC 20は、新たに受信した優先パケットを他方のバッファに転送することができる。   According to this embodiment, for example, when a priority packet is transferred to one of the plurality of processing buffers 24 and the main control unit 12 performs data processing of the priority packet on this one buffer, The MAC 20 can transfer the newly received priority packet to the other buffer.

その後、主制御部12が一方のバッファ上におけるデータ処理を終了し、かつ、MAC 20が他方のバッファ上における優先パケット転送を完了すると、主制御部12は、他方のバッファ上の新たな優先パケットのデータ処理をすぐに始めることができる。   After that, when the main control unit 12 finishes the data processing on one buffer and the MAC 20 completes the priority packet transfer on the other buffer, the main control unit 12 creates a new priority packet on the other buffer. Data processing can be started immediately.

また、この実施例において、MAC 20は、複数の処理バッファ24の使用を調停するバッファ調停部50を有し、このバッファ調停部50は、論理回路で構成されてよい。バッファ調停部50は、複数の処理バッファ24のうち、いずれの処理バッファを優先パケット転送に用いるか、またはいずれの処理バッファが優先パケット転送中であるかを示すバッファ指定部52を含んでよい。バッファ調停部50およびバッファ指定部52は、MAC 20と主制御部12が同じ処理バッファに同時にアクセスしないように排他制御を行う機能を有する。   In this embodiment, the MAC 20 includes a buffer arbitration unit 50 that arbitrates the use of the plurality of processing buffers 24, and the buffer arbitration unit 50 may be configured by a logic circuit. The buffer arbitration unit 50 may include a buffer designating unit 52 that indicates which of the plurality of processing buffers 24 is used for priority packet transfer or which processing buffer is performing priority packet transfer. The buffer arbitration unit 50 and the buffer designation unit 52 have a function of performing exclusive control so that the MAC 20 and the main control unit 12 do not access the same processing buffer at the same time.

たとえば、MAC 20は、新たに優先パケットを受信したとき、バッファ指定部52を参照して優先パケットを転送すべきバッファを判定し、その判定結果のバッファへと、優先パケットを転送する。   For example, when a new priority packet is received, the MAC 20 refers to the buffer designating unit 52 to determine a buffer to which the priority packet is to be transferred, and transfers the priority packet to the determination result buffer.

MAC 20は、新たに受信した優先パケットを複数の処理バッファ24のいずれかに転送して完了したときに、優先パケット転送完了通知をバッファ調停部50に通知する。   The MAC 20 notifies the buffer arbitration unit 50 of a priority packet transfer completion notification when the newly received priority packet is transferred to one of the plurality of processing buffers 24 and completed.

また、主制御部12は、通常パケットの暗号化もしくは復号化処理、または優先パケットのデータ処理などのパケット処理を行うとき、バッファ指定部52を参照してパケット処理を行うべきバッファを判定し、その判定結果のバッファにおけるパケットに対してパケット処理を行う。   Further, when performing packet processing such as normal packet encryption or decryption processing, or priority packet data processing, the main control unit 12 determines a buffer to be subjected to packet processing with reference to the buffer designating unit 52, Packet processing is performed on the packet in the buffer of the determination result.

主制御部12は、複数の処理バッファ24のいずれかにおいて、通常パケットの暗号化もしくは復号化処理、または優先パケットのデータ処理を行って終了したときに、パケット処理終了通知をバッファ調停部50に通知する。このとき、主制御部12は、DMA制御部18を制御して、データ処理が終了した優先パケットを処理バッファから通常バッファに転送させるとよい。   The main control unit 12 sends a packet processing end notification to the buffer arbitration unit 50 when the normal packet encryption or decryption processing or the priority packet data processing ends in any of the plurality of processing buffers 24. Notice. At this time, the main control unit 12 may control the DMA control unit 18 to transfer the priority packet for which data processing has been completed from the processing buffer to the normal buffer.

また、本実施例のバッファ調停部50は、主制御部12からパケット処理終了通知を、またはMAC 20から優先パケット転送完了通知を受けたときに、バッファ指定部52の示すバッファを変換して更新する。   In addition, the buffer arbitration unit 50 of the present embodiment converts and updates the buffer indicated by the buffer specifying unit 52 when receiving a packet processing end notification from the main control unit 12 or a priority packet transfer completion notification from the MAC 20. To do.

この実施例のパケット通信装置10において、たとえば、MAC 20が複数の処理バッファ24として2つの処理バッファ54および56を含み、バッファ調停部50がバッファ指定部52としてバッファ指定フラグを含んでもよい。   In the packet communication apparatus 10 of this embodiment, for example, the MAC 20 may include two processing buffers 54 and 56 as the plurality of processing buffers 24, and the buffer arbitration unit 50 may include a buffer designation flag as the buffer designation unit 52.

2つの処理バッファが用いられる場合には、バッファ指定フラグ52は、1ビットのフラグでよく、処理バッファ54および56は、それぞれ、バッファ指定フラグ52の値が0および1の場合に、優先パケットを転送すべきバッファとして用いられる。また、3つ以上の処理バッファが用いられる場合には、バッファ指定フラグ52は、処理バッファの数に応じた複数ビットのフラグが用いられる。この場合には、主制御部12における負担をより低減することができる。   When two processing buffers are used, the buffer designation flag 52 may be a 1-bit flag, and the processing buffers 54 and 56 will receive priority packets when the value of the buffer designation flag 52 is 0 and 1, respectively. Used as a buffer to be transferred. When three or more processing buffers are used, the buffer designation flag 52 is a multi-bit flag corresponding to the number of processing buffers. In this case, the burden on the main control unit 12 can be further reduced.

次に、本実施例におけるパケット通信装置10について、2つの処理バッファ54および56を用いてパケットを受信する動作を図5のフローチャートを参照しながら説明する。   Next, the operation of receiving packets using the two processing buffers 54 and 56 in the packet communication apparatus 10 in the present embodiment will be described with reference to the flowchart of FIG.

本実施例のパケット通信装置10では、まず、パケット受信処理が開始するとき(S302)、2つの処理バッファ54および56は空き状態となり、1ビットのバッファ指定フラグ52の値は0となる。   In the packet communication device 10 of the present embodiment, first, when the packet reception process starts (S302), the two processing buffers 54 and 56 become empty, and the value of the 1-bit buffer designation flag 52 becomes zero.

次に、ステップS304に進み、MAC 20において、第1の優先パケットが受信されると、バッファ調停部50にてバッファ指定フラグ52が参照されて、ここで、バッファ指定フラグ52の値が0であるので、優先パケットを転送すべきバッファが処理バッファ54と判定されて、MAC 20によりこのバッファ54に対して第1の優先パケットが転送される。   Next, proceeding to step S304, when the MAC 20 receives the first priority packet, the buffer arbitration unit 50 refers to the buffer designation flag 52, where the value of the buffer designation flag 52 is 0. Therefore, the buffer to which the priority packet is to be transferred is determined to be the processing buffer 54, and the first priority packet is transferred to the buffer 54 by the MAC 20.

このようにして、第1の優先パケットの転送が完了すると、MAC 20から優先パケット転送完了を示す割込み要求IRQ2が主制御部12に送られる。このとき、バッファ調停部50では、MAC 20から優先パケット転送完了通知を受けて、バッファ指定フラグ52の値を1に設定して更新する。   In this way, when the transfer of the first priority packet is completed, an interrupt request IRQ2 indicating the completion of the priority packet transfer is sent from the MAC 20 to the main control unit 12. At this time, the buffer arbitration unit 50 receives a priority packet transfer completion notification from the MAC 20 and updates the value by setting the value of the buffer designation flag 52 to 1.

次に、ステップS306に進み、主制御部12において、MAC 20からの割込み要求IRQ2に応じて、転送された優先パケットの優先的なデータ処理が開始される。このとき、主制御部12では、バッファ調停部50からパケット処理を行うべきバッファが示されるが、バッファ調停部50にて、バッファ指定フラグ52が参照されて、ここで、バッファ指定フラグ52の値が0であるので、パケット処理を行うべきバッファが第1の優先パケットが転送されている処理バッファ54と判定されて、主制御部12によりこのバッファ54に対してパケット処理が行われる。   Next, proceeding to step S306, the main control unit 12 starts preferential data processing of the transferred priority packet in response to the interrupt request IRQ2 from the MAC 20. At this time, in the main control unit 12, the buffer to be subjected to packet processing is indicated from the buffer arbitration unit 50. In the buffer arbitration unit 50, the buffer designation flag 52 is referred to. Is 0, it is determined that the buffer to be subjected to packet processing is the processing buffer 54 to which the first priority packet is transferred, and the main control unit 12 performs packet processing on this buffer 54.

ところで、本実施例では、第1の優先パケットがデータ処理されている間に、MAC 20において、第2の優先パケットが受信される。このとき、バッファ調停部50にてバッファ指定フラグ52が参照されて、ここで、バッファ指定フラグ52の値が1であるので、優先パケットを転送すべきバッファが処理バッファ56と判定される。MAC 20では、このバッファ56に対して第2の優先パケットが転送される。   By the way, in the present embodiment, the second priority packet is received by the MAC 20 while the first priority packet is being processed. At this time, the buffer arbitration unit 50 refers to the buffer designation flag 52. Here, since the value of the buffer designation flag 52 is 1, the buffer to which the priority packet is to be transferred is determined as the processing buffer 56. In the MAC 20, the second priority packet is transferred to the buffer 56.

このように、処理バッファ54上で第1の優先パケットのデータ処理を行っている間に、処理バッファ56へ第2の優先パケットを転送することができる。また、第2の優先パケットの転送が完了すると、MAC 20から優先パケット転送完了を示す割込み要求IRQ2が主制御部12に送られ、バッファ調停部50では、MAC 20から優先パケット転送完了通知を受けて、バッファ指定フラグ52の値を再度0に設定して更新する。   As described above, the second priority packet can be transferred to the processing buffer 56 while the data processing of the first priority packet is being performed on the processing buffer 54. When the transfer of the second priority packet is completed, an interrupt request IRQ2 indicating the completion of the priority packet transfer is sent from the MAC 20 to the main control unit 12, and the buffer arbitration unit 50 receives a priority packet transfer completion notification from the MAC 20. Thus, the value of the buffer designation flag 52 is set to 0 again and updated.

次に、ステップS308に進み、主制御部12では、MAC 20から割込み要求IRQ2を受けているので、第1の優先パケットのデータ処理の終了後に、バッファ指定フラグ52の値を更新せずに、第2の優先パケットの優先的なデータ処理が開始される。このとき、主制御部12において、データ処理の対象となるバッファは、バッファ調停部50にて値が0であるバッファ指定フラグ52が参照されるので、第2の優先パケットが転送されている処理バッファ56と判定されて、主制御部12によりこのバッファ56に対してパケット処理が行われる。   Next, proceeding to step S308, the main control unit 12 has received the interrupt request IRQ2 from the MAC 20, so after updating the data processing of the first priority packet, without updating the value of the buffer designation flag 52, Preferential data processing of the second priority packet is started. At this time, in the main control unit 12, the buffer designation flag 52 having a value of 0 is referred to by the buffer arbitration unit 50 for the data processing target buffer, so that the process in which the second priority packet is transferred It is determined that the buffer 56 is used, and the main control unit 12 performs packet processing on the buffer 56.

また、主制御部12において、第2の優先パケットのデータ処理が終了したときに、MAC 20から新たな割込み要求IRQ2を受けていないならば、パケット処理終了通知がバッファ調停部50に通知され、バッファ調停部50において、バッファ指定フラグ52の値を再度1に設定して更新する。   If the main control unit 12 has not received a new interrupt request IRQ2 from the MAC 20 when the data processing of the second priority packet is completed, a packet processing end notification is notified to the buffer arbitration unit 50. In the buffer arbitration unit 50, the value of the buffer designation flag 52 is set to 1 again and updated.

さらに、ステップS310に進み、MAC 20において、第3の優先パケットが受信される。このとき、バッファ調停部50にて値が1であるバッファ指定フラグ52が参照されるので、優先パケットを転送すべきバッファが処理バッファ54と判定される。MAC 20では、このバッファ54に対して第3の優先パケットが転送される。   In step S310, the MAC 20 receives the third priority packet. At this time, since the buffer specifying flag 52 having a value of 1 is referred to by the buffer arbitration unit 50, the buffer to which the priority packet is to be transferred is determined as the processing buffer 54. In the MAC 20, the third priority packet is transferred to the buffer 54.

このように、処理バッファ54への第3の優先パケットの転送が完了すると、MAC 20から優先パケット転送完了を示す割込み要求IRQ2が主制御部12に送られ、バッファ調停部50では、MAC 20から優先パケット転送完了通知を受けて、バッファ指定フラグ52の値を再度0に設定して更新する。   As described above, when the transfer of the third priority packet to the processing buffer 54 is completed, the interrupt request IRQ2 indicating the completion of the priority packet transfer is sent from the MAC 20 to the main control unit 12, and the buffer arbitration unit 50 starts from the MAC 20. Upon receipt of the priority packet transfer completion notification, the value of the buffer designation flag 52 is set to 0 again and updated.

次に、ステップS312に進み、主制御部12において、MAC 20からの割込み要求IRQ2に応じて、第3の優先パケットの優先的なデータ処理が開始される。このとき、主制御部12において、データ処理の対象となるバッファは、バッファ調停部50にて値が0であるバッファ指定フラグ52が参照されるので、第3の優先パケットが転送されている処理バッファ54と判定されて、主制御部12によりこのバッファ54に対してパケット処理が行われる。   Next, proceeding to step S312, the main control unit 12 starts preferential data processing of the third priority packet in response to the interrupt request IRQ2 from the MAC 20. At this time, in the main control unit 12, the buffer to be processed is referred to the buffer designation flag 52 having a value of 0 in the buffer arbitration unit 50. Therefore, the process in which the third priority packet is transferred The buffer 54 is determined, and the main control unit 12 performs packet processing on the buffer 54.

主制御部12において、第3の優先パケットのデータ処理が終了したときに、MAC 20から新たな割込み要求IRQ2を受けていないならば、パケット処理終了通知がバッファ調停部50に通知され、バッファ調停部50において、バッファ指定フラグ52の値を再度1に設定して更新する。   If the main control unit 12 has not received a new interrupt request IRQ2 from the MAC 20 when the data processing of the third priority packet is completed, a packet processing end notification is notified to the buffer arbitration unit 50, and the buffer arbitration is performed. In the unit 50, the value of the buffer designation flag 52 is set to 1 again and updated.

また、本発明のパケット通信装置は、ネットワーク機器に適用される場合には、複数の処理バッファを備えなくても、デュアルポートメモリなどの高価なハードウエアや、循環(リング状)バッファなどの複雑なデータ構造部を組み合わせて、MAC 20および主制御部12の両方からアクセス可能な構成を実現することができる。   Further, the packet communication device of the present invention, when applied to a network device, does not include a plurality of processing buffers, and is complicated such as expensive hardware such as a dual port memory or a circular (ring-shaped) buffer. By combining various data structure parts, a configuration accessible from both the MAC 20 and the main control part 12 can be realized.

また、本発明のパケット通信装置は、高速LANのみならず、優先度に応じたパケットの転送および処理を行う装置を用いる、すべての有線または無線ネットワークシステムに適用することができる。   The packet communication device of the present invention can be applied not only to a high-speed LAN but also to all wired or wireless network systems that use a device that performs packet transfer and processing according to priority.

たとえば、本発明のパケット通信装置は、WEBブラウザ機能付きのVoIP端末などに適用することができる。このような端末では、通話用音声パケットを暗号化して秘話に用いる場合や、通話中にWEBブラウザを使う場合に、本発明の構成が効果的である。   For example, the packet communication apparatus of the present invention can be applied to a VoIP terminal with a WEB browser function. In such a terminal, the configuration of the present invention is effective when the voice packet for call is encrypted and used for a secret story, or when a WEB browser is used during a call.

このVoIP端末において、秘話のために暗号化したパケットは、遅延や揺らぎの発生が抑えられ、高音質化を実現できる。また、WEBブラウザで表示するデータを受信する間に、暗号化した音声パケットを受信する場合、WEBブラウザデータを通常パケットとして受信し、秘話のために暗号化した音声パケットを、優先パケットとして受信することができる。   In this VoIP terminal, the packet encrypted for the secret story can suppress the occurrence of delay and fluctuation, and can achieve high sound quality. Also, when receiving an encrypted voice packet while receiving data to be displayed on the web browser, the web browser data is received as a normal packet, and the voice packet encrypted for a secret story is received as a priority packet. be able to.

また、本発明によるVoIP端末では、他の端末にWEBサービスを提供する場合に、本発明の構成が効果的である。   In the VoIP terminal according to the present invention, the configuration of the present invention is effective when providing WEB service to other terminals.

他の端末のWEBブラウザを用いてこのVoIP端末に通信接続し、このVoIP端末が保持するアドレス帳などの情報を参照するような機能を実現する場合、VoIP端末から他の端末に送信するためのデータを通常パケットとし、VoIP通話のためのパケットを暗号化して優先パケットとすることができる。   If you want to connect to this VoIP terminal using the WEB browser of another terminal and realize a function that refers to information such as the address book held by this VoIP terminal, Data can be used as normal packets, and packets for VoIP calls can be encrypted and used as priority packets.

本発明のパケット通信装置の一実施例を示すブロック図である。It is a block diagram which shows one Example of the packet communication apparatus of this invention. 図1に示すパケット通信装置のパケット受信処理の動作手順を説明するシーケンスチャートである。It is a sequence chart explaining the operation | movement procedure of the packet reception process of the packet communication apparatus shown in FIG. 図1に示すパケット通信装置のパケット送信処理の動作手順を説明するシーケンスチャートである。It is a sequence chart explaining the operation | movement procedure of the packet transmission process of the packet communication apparatus shown in FIG. 本発明のパケット通信装置の他の実施例におけるメディアアクセスコントローラを示すブロック図である。It is a block diagram which shows the media access controller in the other Example of the packet communication apparatus of this invention. 図4に示すパケット通信装置の動作手順を説明するフローチャートである。It is a flowchart explaining the operation | movement procedure of the packet communication apparatus shown in FIG.

符号の説明Explanation of symbols

10 パケット通信装置
12 主制御部
14 メモリ
16 内部バス
18 DMA制御部
20 MAC
22 暗号化/復号化アクセラレータ
24 処理バッファ
26 通常バッファ
28 ディスクリプタ
30 バス調停部
10 Packet communication equipment
12 Main control unit
14 memory
16 Internal bus
18 DMA controller
20 MAC
22 Encryption / Decryption Accelerator
24 processing buffers
26 Normal buffer
28 descriptors
30 Bus mediation department

Claims (19)

通常バッファに格納された送受信パケットをデータ処理する主制御手段と、
外部からの受信パケットを前記通常バッファに転送し、前記通常バッファにおける送信パケットを外部に送信するメディアアクセスコントローラと、
前記通常バッファおよび前記メディアアクセスコントローラ間の前記送受信パケットの転送を制御して、前記主制御手段を介さずにダイレクトメモリアクセス転送させるダイレクトメモリアクセス制御手段と、
処理バッファに格納された前記送受信パケットを復号化および暗号化処理するアクセラレータとを含むパケット通信装置において、
該装置は、前記メディアアクセスコントローラおよび前記アクセラレータを一体化して構成し、
前記メディアアクセスコントローラは、前記受信パケットが前記主制御手段で緊急にデータ処理すべき緊急パケットであるか否かを判定する第1の判定手段を含み、その結果、緊急パケットである場合には前記受信パケットを前記処理バッファに転送して、第1の割込みを前記主制御手段に送り、それ以外の場合には前記受信パケットを通常パケットとして前記通常バッファに転送し、
前記主制御手段は、第1の割込みに応じて、前記緊急パケットである受信パケットを優先的にデータ処理することを特徴とするパケット通信装置。
Main control means for data processing of transmission / reception packets stored in a normal buffer;
A media access controller that forwards externally received packets to the normal buffer, and transmits transmission packets in the normal buffer to the outside;
Direct memory access control means for controlling transfer of the transmission / reception packet between the normal buffer and the media access controller, and causing direct memory access transfer without going through the main control means;
In a packet communication device including an accelerator that decrypts and encrypts the transmission / reception packet stored in a processing buffer,
The apparatus is configured by integrating the media access controller and the accelerator,
The media access controller includes first determination means for determining whether or not the received packet is an urgent packet to be subjected to data processing urgently by the main control means. Transfer the received packet to the processing buffer, send a first interrupt to the main control means, otherwise transfer the received packet as a normal packet to the normal buffer,
The main control means preferentially processes the received packet, which is the emergency packet, in response to a first interrupt.
請求項1に記載のパケット通信装置において、第1の判定手段は、前記受信パケットが優先パケットであるか否かをその優先度に基づいて判定することにより、前記受信パケットが前記緊急パケットであるか否かを判定することを特徴とするパケット通信装置。   2. The packet communication device according to claim 1, wherein the first determination unit determines whether or not the received packet is a priority packet based on the priority, so that the received packet is the emergency packet. A packet communication device that determines whether or not. 請求項1に記載のパケット通信装置において、前記主制御手段は、前記緊急パケットである受信パケットを前記処理バッファ上でデータ処理することを特徴とするパケット通信装置。   2. The packet communication apparatus according to claim 1, wherein the main control means processes the received packet, which is the emergency packet, on the processing buffer. 請求項1に記載のパケット通信装置において、前記主制御手段は、前記通常バッファにおける前記通常パケットのデータ処理中に第1の割込みを受けたとき、その処理中の前記通常パケットのデータ処理が終了してから、前記緊急パケットのデータ処理を開始し、該緊急パケットのデータ処理が終了してから、前記通常バッファに残っている前記通常パケットのデータ処理に戻ることを特徴とするパケット通信装置。   2. The packet communication device according to claim 1, wherein when the main control unit receives a first interrupt during data processing of the normal packet in the normal buffer, the data processing of the normal packet being processed is completed. Then, the data processing of the emergency packet is started, and after the data processing of the emergency packet is finished, the packet communication device returns to the data processing of the normal packet remaining in the normal buffer. 請求項1に記載のパケット通信装置において、前記処理バッファは複数のバッファを有し、
前記メディアアクセスコントローラは、前記複数のバッファを交互に使用して前記緊急パケットを連続的に転送することを特徴とするパケット通信装置。
The packet communication device according to claim 1, wherein the processing buffer includes a plurality of buffers.
The packet communication apparatus, wherein the media access controller continuously transfers the emergency packet by using the plurality of buffers alternately.
請求項5に記載のパケット通信装置において、前記メディアアクセスコントローラは、前記複数のバッファのうち、いずれのバッファを緊急パケット転送に用いるかを示すバッファ指定手段と、
該バッファ指定手段を参照して前記複数のバッファの使用を調停するバッファ調停手段を含むことを特徴とするパケット通信装置。
6. The packet communication device according to claim 5, wherein the media access controller includes a buffer designating unit that indicates which of the plurality of buffers is used for emergency packet transfer;
A packet communication apparatus comprising buffer arbitrating means for arbitrating use of the plurality of buffers with reference to the buffer specifying means.
請求項6に記載のパケット通信装置において、前記複数のバッファは第1のバッファおよび第2のバッファを有し、
前記バッファ指定手段は、緊急パケット転送に第1のバッファを用いる場合には0の値を第2のバッファを用いる場合には1の値を示すフラグであり、初期状態では0の値を示し、
前記メディアアクセスコントローラは、新たに緊急パケットを受信したとき、前記バッファ指定手段を参照して前記緊急パケット転送に用いるバッファを判定し、その判定結果のバッファへと、前記緊急パケットを転送し、該緊急パケットの転送を完了したときに、優先パケット転送完了通知を前記バッファ調停手段に通知し、
前記主制御手段は、緊急パケットのデータ処理などのパケット処理を行うとき、前記バッファ指定手段を参照して前記パケット処理を行うべきバッファを判定し、その判定結果のバッファにおけるパケットに対してパケット処理を行い、該パケット処理を終了したときに、パケット処理終了通知を前記バッファ調停手段に通知し、
前記バッファ調停手段は、前記主制御手段から前記パケット処理終了通知を、または前記メディアアクセスコントローラから前記優先パケット転送完了通知を受けたときに、前記バッファ指定手段の示す値を変換して更新することを特徴とするパケット通信装置。
The packet communication device according to claim 6, wherein the plurality of buffers include a first buffer and a second buffer,
The buffer designating means is a flag indicating a value of 0 when the first buffer is used for urgent packet transfer, a value of 1 when the second buffer is used, and a value of 0 in the initial state.
When the media access controller newly receives an emergency packet, it refers to the buffer designating unit to determine a buffer to be used for the emergency packet transfer, transfers the emergency packet to the buffer of the determination result, When the transfer of the emergency packet is completed, a priority packet transfer completion notification is notified to the buffer arbitration means,
When performing packet processing such as urgent packet data processing, the main control unit determines a buffer to be subjected to the packet processing with reference to the buffer specifying unit, and performs packet processing on the packet in the determination result buffer. When the packet processing is finished, a packet processing end notification is notified to the buffer arbitration means,
The buffer arbitration unit converts and updates the value indicated by the buffer designating unit when receiving the packet processing end notification from the main control unit or the priority packet transfer completion notification from the media access controller. A packet communication device.
請求項1に記載のパケット通信装置において、
前記主制御手段は、前記送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定手段を含み、その結果、緊急パケットである場合には前記送信パケットを前記処理バッファに転送し、それ以外の場合には前記送信パケットを通常パケットとして前記通常バッファに転送し、
さらに、前記送信パケットを優先的にデータ処理して、優先パケット送信指令を前記メディアアクセスコントローラに送り、
前記メディアアクセスコントローラは、前記優先パケット送信指令に応じて、前記緊急パケットである送信パケットを優先的に送信することを特徴とするパケット通信装置。
The packet communication device according to claim 1,
The main control means includes second determination means for determining whether or not the transmission packet is an urgent packet to be subjected to data processing urgently, and as a result, if the transmission packet is an urgent packet, the processing is performed on the transmission packet. Transfer to the buffer, otherwise transfer the transmission packet as a normal packet to the normal buffer,
Further, the transmission packet is preferentially processed, and a priority packet transmission command is sent to the media access controller,
The media access controller preferentially transmits a transmission packet that is the emergency packet in response to the priority packet transmission command.
通常バッファに格納された送受信パケットをデータ処理する主制御手段と、
外部からの受信パケットを前記通常バッファに転送し、前記通常バッファにおける送信パケットを外部に送信するメディアアクセスコントローラと、
前記通常バッファおよび前記メディアアクセスコントローラ間の前記送受信パケットの転送を制御して、前記主制御手段を介さずにダイレクトメモリアクセス転送させるダイレクトメモリアクセス制御手段と、
処理バッファに格納された前記送受信パケットを復号化および暗号化処理するアクセラレータとを含むパケット通信装置において、
該装置は、前記メディアアクセスコントローラおよび前記アクセラレータを一体化して構成し、
前記主制御手段は、前記送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定手段を含み、その結果、緊急パケットである場合には前記送信パケットを前記処理バッファに転送し、それ以外の場合には前記送信パケットを通常パケットとして前記通常バッファに転送し、
さらに、前記送信パケットを優先的にデータ処理して、優先パケット送信指令を前記メディアアクセスコントローラに送り、
前記メディアアクセスコントローラは、前記優先パケット送信指令に応じて、前記緊急パケットである送信パケットを優先的に送信することを特徴とするパケット通信装置。
Main control means for data processing of transmission / reception packets stored in a normal buffer;
A media access controller that forwards externally received packets to the normal buffer, and transmits transmission packets in the normal buffer to the outside;
Direct memory access control means for controlling transfer of the transmission / reception packet between the normal buffer and the media access controller, and causing direct memory access transfer without going through the main control means;
In a packet communication device including an accelerator that decrypts and encrypts the transmission / reception packet stored in a processing buffer,
The apparatus is configured by integrating the media access controller and the accelerator,
The main control means includes second determination means for determining whether or not the transmission packet is an urgent packet to be subjected to data processing urgently, and as a result, if the transmission packet is an urgent packet, the processing is performed on the transmission packet. Transfer to the buffer, otherwise transfer the transmission packet as a normal packet to the normal buffer,
Further, the transmission packet is preferentially processed, and a priority packet transmission command is sent to the media access controller,
The media access controller preferentially transmits a transmission packet that is the emergency packet in response to the priority packet transmission command.
請求項9に記載のパケット通信装置において、前記主制御手段は、前記緊急パケットである送信パケットを前記処理バッファ上でデータ処理することを特徴とするパケット通信装置。   10. The packet communication apparatus according to claim 9, wherein the main control unit processes the transmission packet that is the emergency packet on the processing buffer. 外部から受信された受信パケットをメディアアクセスコントローラにて前記通常バッファに転送する第1の受信パケット転送工程と、
通常バッファに格納された受信パケットを主制御部にてデータ処理する第1のデータ処理工程と、
前記通常バッファおよび前記メディアアクセスコントローラ間の前記受信パケットの転送をダイレクトメモリアクセス制御部で制御して、前記主制御部を介さずにダイレクトメモリアクセス転送させる転送制御工程と、
処理バッファに格納された前記受信パケットをアクセラレータで復号化処理する復号化工程とを含むパケット処理方法において、該方法は、
一体化された前記メディアアクセスコントローラおよび前記アクセラレータを使用し、
前記受信パケットが前記主制御手段で緊急にデータ処理すべき緊急パケットであるか否かを前記メディアアクセスコントローラで判定して、その結果、前記受信パケットが緊急パケットである場合には前記受信パケットを前記処理バッファに転送する第2の受信パケット転送工程を含み、第1の割込みを前記主制御部に送り、それ以外の場合には第1の受信パケット転送工程により前記受信パケットを通常パケットとして前記通常バッファに転送する第1の判定工程と、
第1の割込みに応じて、前記緊急パケットである受信パケットを主制御部にて優先的にデータ処理する第2のデータ処理工程とを含むことを特徴とするパケット処理方法。
A first received packet transfer step of transferring a received packet received from the outside to the normal buffer by a media access controller;
A first data processing step of processing data received packets stored in the normal buffer in the main control unit;
A transfer control step of controlling transfer of the received packet between the normal buffer and the media access controller by a direct memory access control unit, and direct memory access transfer without the main control unit;
A packet processing method including a decoding step of decoding the received packet stored in the processing buffer with an accelerator, the method comprising:
Using the integrated media access controller and the accelerator;
The media access controller determines whether the received packet is an urgent packet that should be urgently processed by the main control means. As a result, if the received packet is an urgent packet, the received packet is A second received packet transfer step of transferring to the processing buffer, and sending a first interrupt to the main control unit; otherwise, the received packet is converted into a normal packet by the first received packet transfer step. A first determination step of transferring to a normal buffer;
And a second data processing step of preferentially processing the received packet, which is an emergency packet, in a main control unit in response to a first interrupt.
請求項11に記載のパケット処理方法において、第1の判定工程は、前記受信パケットが優先パケットであるか否かをその優先度に基づいて判定することにより、前記受信パケットが前記緊急パケットであるか否かを判定することを特徴とするパケット処理方法。   12. The packet processing method according to claim 11, wherein the first determination step determines whether or not the received packet is a priority packet based on the priority, so that the received packet is the emergency packet. A packet processing method characterized by determining whether or not. 請求項11に記載のパケット処理方法において、第2のデータ処理工程は、前記緊急パケットである受信パケットを前記処理バッファ上でデータ処理することを特徴とするパケット処理方法。   12. The packet processing method according to claim 11, wherein the second data processing step processes the received packet that is the emergency packet on the processing buffer. 請求項11に記載のパケット処理方法において、第2のデータ処理工程は、前記主制御部において、前記通常バッファにおける前記通常パケットのデータ処理中に第1の割込みを受けたとき、その処理中の前記通常パケットのデータ処理が終了してから、前記緊急パケットのデータ処理を開始し、該緊急パケットのデータ処理が終了してから、前記通常バッファに残っている前記通常パケットのデータ処理に戻ることを特徴とするパケット処理方法。   12. The packet processing method according to claim 11, wherein in the second data processing step, when the first interrupt is received during data processing of the normal packet in the normal buffer in the main control unit, After the data processing of the normal packet is finished, the data processing of the emergency packet is started, and after the data processing of the emergency packet is finished, the processing returns to the data processing of the normal packet remaining in the normal buffer. A packet processing method. 請求項11に記載のパケット処理方法において、該方法は、複数のバッファを有する前記処理バッファを使用し、
第2の受信パケット転送工程は、前記メディアアクセスコントローラにおいて、前記複数のバッファを交互に使用して前記緊急パケットを連続的に転送することを特徴とするパケット処理方法。
12. The packet processing method according to claim 11, wherein the method uses the processing buffer having a plurality of buffers,
In the second received packet transfer step, the media access controller uses the plurality of buffers alternately to continuously transfer the emergency packet.
請求項15に記載のパケット処理方法において、該方法は、前記複数のバッファのうち、いずれのバッファを緊急パケット転送に用いるかを示すバッファ指定部を参照して、前記複数のバッファの使用をバッファ調停部で調停するバッファ調停工程を含むことを特徴とするパケット処理方法。   16. The packet processing method according to claim 15, wherein the method refers to a buffer designating unit that indicates which of the plurality of buffers is used for urgent packet transfer. A packet processing method comprising a buffer arbitration step of arbitrating in an arbitration unit. 請求項16に記載のパケット処理方法において、該方法は、第1のバッファおよび第2のバッファを有する前記複数のバッファを使用し、
緊急パケット転送に第1のバッファを用いる場合には0の値を第2のバッファを用いる場合には1の値を示すフラグであり、初期状態では0の値を示す前記バッファ指定部を使用し、
第2の受信パケット転送工程は、前記メディアアクセスコントローラにて、新たに緊急パケットを受信したとき、前記バッファ指定部を参照して前記緊急パケット転送に用いるバッファを判定し、その判定結果のバッファへと、前記緊急パケットを転送し、該緊急パケットの転送を完了したときに、優先パケット転送完了通知を前記バッファ調停部に通知し、
第1または第2のデータ処理工程は、前記主制御部にて、緊急パケットのデータ処理などのパケット処理を行うとき、前記バッファ指定部を参照して前記パケット処理を行うべきバッファを判定し、その判定結果のバッファにおけるパケットに対してパケット処理を行い、該パケット処理を終了したときに、パケット処理終了通知を前記バッファ調停部に通知し、
前記バッファ調停工程は、前記バッファ調停部にて、前記主制御部から前記パケット処理終了通知を、または前記メディアアクセスコントローラから前記優先パケット転送完了通知を受けたときに、前記バッファ指定部の示す値を変換して更新することを特徴とするパケット処理方法。
17. The packet processing method of claim 16, wherein the method uses the plurality of buffers having a first buffer and a second buffer;
A flag indicating a value of 0 when the first buffer is used for urgent packet transfer, a flag indicating a value of 1 when the second buffer is used, and the buffer designating unit indicating a value of 0 in the initial state is used. ,
In the second received packet transfer step, when a new emergency packet is received by the media access controller, a buffer used for the emergency packet transfer is determined by referring to the buffer designating unit, and the determination result is buffered. And, when the emergency packet is transferred and the transfer of the emergency packet is completed, a priority packet transfer completion notification is notified to the buffer arbitration unit,
In the first or second data processing step, when performing packet processing such as urgent packet data processing in the main control unit, the buffer designation unit is referred to determine a buffer to be subjected to the packet processing, Packet processing is performed on the packet in the buffer of the determination result, and when the packet processing is ended, a packet processing end notification is notified to the buffer arbitration unit,
When the buffer arbitration step receives the packet processing end notification from the main control unit or the priority packet transfer completion notification from the media access controller in the buffer arbitration unit, the value indicated by the buffer designation unit A packet processing method characterized by converting and updating.
通常バッファに格納された送信パケットを前記主制御部にてデータ処理する第3のデータ処理工程と、
前記通常バッファにおける送信パケットを前記メディアアクセスコントローラにて外部に送信する第1の送信パケット転送工程と、
前記通常バッファおよび前記メディアアクセスコントローラ間の前記送信パケットの転送をダイレクトメモリアクセス制御部で制御して、前記主制御部を介さずにダイレクトメモリアクセス転送させる転送制御工程と、
前記処理バッファに格納された前記送信パケットをアクセラレータで暗号化処理する暗号化工程とを含むパケット処理方法において、該方法は、
一体化された前記メディアアクセスコントローラおよび前記アクセラレータを使用し、
第3のデータ処理工程は、前記送信パケットが緊急にデータ処理すべき緊急パケットであるか否かを判定する第2の判定工程を含み、その結果、緊急パケットである場合には前記送信パケットを前記処理バッファに転送する第2の送信パケット転送工程を含み、それ以外の場合には第1の送信パケット転送工程により前記送信パケットを通常パケットとして前記通常バッファに転送し、
さらに、該方法は、前記送信パケットを優先的にデータ処理して、優先パケット送信指令を前記メディアアクセスコントローラに送る第4のデータ処理工程を含み、
第2の送信パケット転送工程は、前記メディアアクセスコントローラにて、前記優先パケット送信指令に応じて、前記緊急パケットである送信パケットを優先的に送信することを特徴とするパケット処理方法。
A third data processing step of processing the transmission packet stored in the normal buffer in the main control unit;
A first transmission packet transfer step of transmitting a transmission packet in the normal buffer to the outside by the media access controller;
A transfer control step of controlling transfer of the transmission packet between the normal buffer and the media access controller by a direct memory access control unit, and direct memory access transfer without the main control unit;
A packet processing method including an encryption step of encrypting the transmission packet stored in the processing buffer with an accelerator.
Using the integrated media access controller and the accelerator;
The third data processing step includes a second determination step of determining whether or not the transmission packet is an urgent packet that should be urgently processed. As a result, if the transmission packet is an urgent packet, the transmission packet is Including a second transmission packet transfer step of transferring to the processing buffer; otherwise, the transmission packet is transferred to the normal buffer as a normal packet by the first transmission packet transfer step;
Further, the method includes a fourth data processing step of preferentially processing the transmission packet and sending a priority packet transmission command to the media access controller.
In the second transmission packet transfer step, the media access controller preferentially transmits a transmission packet that is the emergency packet in response to the priority packet transmission command.
請求項18に記載のパケット処理方法において、第4のデータ処理工程は、前記緊急パケットである送信パケットを前記処理バッファ上でデータ処理することを特徴とするパケット処理方法。
19. The packet processing method according to claim 18, wherein in the fourth data processing step, the transmission packet that is the emergency packet is processed on the processing buffer.
JP2005273677A 2005-09-21 2005-09-21 Packet communication apparatus and processing method thereof Withdrawn JP2007088709A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005273677A JP2007088709A (en) 2005-09-21 2005-09-21 Packet communication apparatus and processing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005273677A JP2007088709A (en) 2005-09-21 2005-09-21 Packet communication apparatus and processing method thereof

Publications (1)

Publication Number Publication Date
JP2007088709A true JP2007088709A (en) 2007-04-05

Family

ID=37975267

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005273677A Withdrawn JP2007088709A (en) 2005-09-21 2005-09-21 Packet communication apparatus and processing method thereof

Country Status (1)

Country Link
JP (1) JP2007088709A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008283450A (en) * 2007-05-10 2008-11-20 Mitsubishi Electric Corp Monitoring control method and communication apparatus
WO2010074455A3 (en) * 2008-12-23 2010-08-19 Samsung Electronics Co., Ltd. Urgent packet transmission/reception apparatus and method for digital broadcast system
JP2017147488A (en) * 2016-02-15 2017-08-24 日本電信電話株式会社 Packet processing system and packet processing method
EP3457646A1 (en) * 2017-09-15 2019-03-20 Kabushiki Kaisha Toshiba Notification control device, notification control method, and computer-readable medium
JP2021145182A (en) * 2020-03-10 2021-09-24 オムロン株式会社 Communication device, control method thereof, and integrated circuit

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008283450A (en) * 2007-05-10 2008-11-20 Mitsubishi Electric Corp Monitoring control method and communication apparatus
WO2010074455A3 (en) * 2008-12-23 2010-08-19 Samsung Electronics Co., Ltd. Urgent packet transmission/reception apparatus and method for digital broadcast system
JP2017147488A (en) * 2016-02-15 2017-08-24 日本電信電話株式会社 Packet processing system and packet processing method
EP3457646A1 (en) * 2017-09-15 2019-03-20 Kabushiki Kaisha Toshiba Notification control device, notification control method, and computer-readable medium
US11188399B2 (en) 2017-09-15 2021-11-30 Kabushiki Kaisha Toshiba Determining whether to suppress an interrupt indicating completion of processing of a frame based on priority of the frame and current value information
JP2021145182A (en) * 2020-03-10 2021-09-24 オムロン株式会社 Communication device, control method thereof, and integrated circuit
JP7435055B2 (en) 2020-03-10 2024-02-21 オムロン株式会社 Communication device, control method for communication device, and integrated circuit

Similar Documents

Publication Publication Date Title
US6108306A (en) Apparatus and method in a network switch for dynamically allocating bandwidth in ethernet workgroup switches
US7936772B2 (en) Enhancement of end-to-end network QoS
US9565035B1 (en) Enhanced audio video bridging (AVB) methods and apparatus
TWI416908B (en) Global switch resource manager and management method thereof
JP2009031954A (en) Data processing apparatus and data transfer method
JP2009506682A (en) Explicit flow control in gigabit / 10 gigabit ethernet systems
JP2000151664A (en) Data transmission method
JP2013534103A (en) Interrupt at least partial frame transmission
EP1825644B1 (en) Real-time packet processing system and method
JP2007088709A (en) Packet communication apparatus and processing method thereof
US8838782B2 (en) Network protocol processing system and network protocol processing method
US9438537B2 (en) Method for cut through forwarding data packets between electronic communication devices
JP4591582B2 (en) Network adapter and communication device
KR101676353B1 (en) Method of message control in heterogeneous network and apparatus the same
US20150281109A1 (en) System for en-queuing and de-queuing data packets in communication network
JP2000270002A (en) Lan repeater device
JP2006115197A (en) Transmitter, method, recordign medium, program, and controller
WO2010023951A1 (en) Secure communication device, secure communication method, and program
JP2006279188A (en) Transmission controller conducting priority control, communication controller, communication system, communication network and transmission method
US8107371B2 (en) Apparatus and method for providing QoS of AV streams
US7233598B2 (en) System and method for speculatively issuing memory requests while maintaining a specified packet order
JP5094532B2 (en) Communication device
CN116346720A (en) Information transmission device and method
US20080159320A1 (en) Layer 3 switch device and its control method
JP2004343449A (en) Packet communication terminal

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20081202