JP5314516B2 - Storage device and packet relay device - Google Patents

Storage device and packet relay device Download PDF

Info

Publication number
JP5314516B2
JP5314516B2 JP2009156347A JP2009156347A JP5314516B2 JP 5314516 B2 JP5314516 B2 JP 5314516B2 JP 2009156347 A JP2009156347 A JP 2009156347A JP 2009156347 A JP2009156347 A JP 2009156347A JP 5314516 B2 JP5314516 B2 JP 5314516B2
Authority
JP
Japan
Prior art keywords
data
read
pointer address
unit
clk
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.)
Expired - Fee Related
Application number
JP2009156347A
Other languages
Japanese (ja)
Other versions
JP2011015096A (en
Inventor
俊継 萩尾
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.)
Fujitsu Ltd
Fujitsu Telecom Networks Ltd
Original Assignee
Fujitsu Ltd
Fujitsu Telecom Networks 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 Fujitsu Ltd, Fujitsu Telecom Networks Ltd filed Critical Fujitsu Ltd
Priority to JP2009156347A priority Critical patent/JP5314516B2/en
Publication of JP2011015096A publication Critical patent/JP2011015096A/en
Application granted granted Critical
Publication of JP5314516B2 publication Critical patent/JP5314516B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Description

この発明は、記憶装置およびパケット中継装置に関する。   The present invention relates to a storage device and a packet relay device.

従来より、コンピュータで扱われるデータ量の増大により、メモリに対する書き込み処理や読み出し処理などの動作の高速化が進められている。特に、ネットワーク上でデータの中継を行うパケット中継装置では、近年のデータ転送量の急激な増大に伴い、メモリに対して正確な動作を高速で実行することが求められている。   Conventionally, due to an increase in the amount of data handled by a computer, the speed of operations such as write processing and read processing on a memory has been increased. In particular, a packet relay apparatus that relays data on a network is required to perform an accurate operation on a memory at a high speed with a rapid increase in data transfer amount in recent years.

パケット中継装置は、データ転送時に、パケットに含まれる送信先情報に基づいて、データを送信先へ転送する装置であり、送信先にデータを転送するまでの間、受信したデータを一時的にメモリに保存する。そして、パケット中継装置は、メモリからデータを順次読み出し、読み出したデータを送信先情報に対応する送信先に転送する。   The packet relay device is a device that transfers data to a transmission destination based on transmission destination information included in the packet at the time of data transfer, and temporarily stores received data until the data is transferred to the transmission destination. Save to. Then, the packet relay device sequentially reads data from the memory and transfers the read data to the transmission destination corresponding to the transmission destination information.

ここで、メモリからのデータ読み出しに際して、部品故障やソフトエラーなどに起因する読み出しエラーが発生する場合がある。そこで、近年、発生した読み出しエラーに対応するために、様々な技術が知られている。   Here, when data is read from the memory, a read error due to a component failure or a soft error may occur. Therefore, various techniques are known in recent years for dealing with read errors that have occurred.

例えば、データの読み出しエラーを修正する技術としては、ECC(Error Correcting Code)回路を用いた技術がある。ECC回路を有するパケット中継装置は、図7に示すように、入力されたデータに対してECCを付加し、ECCを付加したデータをメモリに書き込む。そして、パケット中継装置は、メモリから読み出したデータのエラーをチェックし、エラーが検出された場合、検出されたエラーを修正し、修正したデータを出力する。なお、図7は、ECC回路を用いたエラー修正を説明するための図である。   For example, as a technique for correcting a data read error, there is a technique using an ECC (Error Correcting Code) circuit. As shown in FIG. 7, the packet relay apparatus having the ECC circuit adds ECC to the input data and writes the data with the ECC added to the memory. Then, the packet relay apparatus checks an error in the data read from the memory, and when an error is detected, corrects the detected error and outputs the corrected data. FIG. 7 is a diagram for explaining error correction using an ECC circuit.

しかしながら、上記したECC回路を用いてエラーを修正する技術では、1bitのエラーは修正することができるが、2bit以上のエラーは修正することができない。したがって、パケットをセグメント化して管理するパケット中継装置では、2bit以上のエラーが発生し、修正できない状況に陥った場合、エラー発生以降のパケットの組み立て順序が分からなくなり、継続動作が不可能になる。   However, in the technique of correcting an error using the above-described ECC circuit, a 1-bit error can be corrected, but an error of 2 bits or more cannot be corrected. Accordingly, in a packet relay apparatus that manages packets by segmenting them, when an error of 2 bits or more occurs and the situation cannot be corrected, the assembly order of the packets after the occurrence of the error is not known, and the continuous operation becomes impossible.

そこで、2bit以上のエラーが発生した場合であっても対応可能である記憶装置として、メモリを二重化することにより、データを二重に記憶する記憶装置が知られている(例えば、特許文献1参照)。具体的には、データを二重に記憶する記憶装置は、図8に示すように、メモリに0面および1面の2つの記憶領域を設け、0面および1面のそれぞれに同一のデータを書き込む。そして、記憶装置は、読み出し制御部によって2つの記憶領域からデータを読み出す際に、まず、セレクタによってどちらか一方の領域を選択し、選択した領域からデータを読み出し、FF(flip flop)を介してエラーチェックを行う。そして、エラーが検出されなかった場合、読み出し制御部は、FFに保持していたデータを出力する。   Therefore, as a storage device that can handle even when an error of 2 bits or more occurs, a storage device that stores data in duplicate by duplicating the memory is known (for example, see Patent Document 1). ). Specifically, as shown in FIG. 8, in the storage device that stores data twice, the memory has two storage areas of 0 and 1 planes, and the same data is stored on each of the 0 and 1 planes. Write. When reading data from the two storage areas by the read control unit, the storage device first selects one of the areas by the selector, reads the data from the selected area, and passes through the FF (flip flop). Perform error checking. If no error is detected, the read control unit outputs the data held in the FF.

一方、エラーが検出された場合、読み出し制御部は、再度、他方の領域からデータを読み出し、上述した処理を実行した後、データを出力する。なお、図8は、メモリの二重化を説明するための図である。   On the other hand, when an error is detected, the read control unit reads data from the other area again, executes the above-described processing, and then outputs the data. FIG. 8 is a diagram for explaining memory duplication.

特開平2−048755号公報Japanese Laid-Open Patent Publication No. 2-048755

ところで、上記したデータを二重に記憶する技術では、エラーが検出された場合、再度データを読み出す処理が必要になるので、高速動作が困難となる。具体的には、読み出し制御部は、処理を同期させるための信号であるCLK(Clock)信号の立ち上がり周期に合わせて、メモリに対して読み出しアドレスを順次入力する。例えば、読み出し制御部は、図9に示すように、CLK1の立ち上がりに合わせて、0面からデータを読み出すための読み出しアドレスである0面アドレス1を入力する。また、読み出し制御部は、図9に示すように、CLK2や3などの立ち上がりに合わせて、0面アドレス2〜1面アドレス2をメモリに対して順次入力する。   By the way, with the above-described technique for storing data twice, when an error is detected, it is necessary to perform a process of reading data again, so that high-speed operation becomes difficult. Specifically, the read control unit sequentially inputs read addresses to the memory in accordance with a rising cycle of a CLK (Clock) signal that is a signal for synchronizing processing. For example, as shown in FIG. 9, the read control unit inputs a 0-plane address 1 that is a read address for reading data from the 0-plane in accordance with the rising edge of CLK1. Further, as shown in FIG. 9, the read control unit sequentially inputs the 0-plane address 2 to the 1-plane address 2 to the memory in synchronization with the rise of CLK2 and 3 and the like.

そして、入力された読み出しアドレスに対応するデータが、読み出しアドレスの入力が行われたCLKの次のCLKの立ち上がりに合わせて、メモリから出力される。例えば、図9に示すように、0面アドレス1に対応する0面data1が、CLK2の立ち上がりに合わせて、メモリの0面から出力される。また、図9に示すように、0面アドレス2〜1面アドレス2に対応する0面data2〜1面data2が、CLK3や4などの立ち上がりに合わせて、メモリから順次出力される。   Then, data corresponding to the input read address is output from the memory in synchronization with the rising edge of CLK next to the CLK to which the read address is input. For example, as shown in FIG. 9, the 0 plane data1 corresponding to the 0 plane address 1 is output from the 0 plane of the memory in synchronization with the rise of CLK2. Further, as shown in FIG. 9, the 0 plane data 2 to 1 plane data 2 corresponding to the 0 plane address 2 to 1 plane address 2 are sequentially output from the memory at the rising edge of CLK3, 4 and the like.

そののち、読み出し制御部は、データの出力が行われたCLKの次のCLKの立ち上がりに合わせて、データのパリティエラーをチェックする。例えば、読み出し制御部は、図9に示すように、CLK3の立ち上がりに合わせて、0面data1のパリティエラーをチェックする。また、読み出し制御部は、図9に示すように、CLK4や5の立ち上がりに合わせて、各データのパリティエラーを順次チェックする。   After that, the read control unit checks the parity error of the data in synchronization with the rising edge of the next CLK after the data is output. For example, as shown in FIG. 9, the read control unit checks the parity error of the 0 plane data1 at the rising edge of CLK3. Further, as shown in FIG. 9, the read control unit sequentially checks the parity error of each data in accordance with the rising edge of CLK4 or 5.

すなわち、読み出し制御部がメモリからデータを読み出し、読み出したデータのパリティエラーのチェックが終了するまでには、CLK2周期分の時間が必要である。なお、図9は、二重化したメモリからのデータ読み出しを説明するためのタイムチャートであり、図中に示したPTYは、パリティを示している。   That is, it takes a period of two CLK cycles until the read control unit reads data from the memory and the parity error check of the read data is completed. FIG. 9 is a time chart for explaining data reading from the duplicated memory, and PTY shown in the drawing indicates parity.

ここで、パリティエラーのチェックにおいて、エラーが検出された場合、読み出し制御部は、パリティエラーのチェックを行ったCLKの次のCLKの立ち上がりに合わせて、もう一方の記憶領域に対して読み出しアドレスを入力する。例えば、0面アドレス2に対応する0面data2にエラーが検出された場合、読み出し制御部は、図9に示すように、CLK5の立ち上がりに合わせて、1面に記憶されているデータを読み出すための読み出しアドレスである1面アドレス2を入力する。そして、上述したように、データの出力およびパリティエラーのチェックが、CLKの立ち上がり周期に合わせて実行される。   Here, when an error is detected in the parity error check, the read control unit assigns a read address to the other storage area in synchronization with the rising edge of the next CLK after the parity error check. input. For example, when an error is detected in the 0 plane data 2 corresponding to the 0 plane address 2, the read control unit reads the data stored in the 1 plane at the rising edge of CLK 5 as shown in FIG. 1 side address 2 which is a read address of. As described above, data output and parity error check are executed in accordance with the rising period of CLK.

したがって、一方の記憶領域から読み出したデータにパリティエラーが検出された後、他方の記憶領域からデータを読み出し、読み出したデータのパリティエラーのチェックが終了するまでにCLK3周期分の時間が必要となる。   Therefore, after a parity error is detected in the data read from one storage area, it takes time for three CLK cycles until the data is read from the other storage area and the parity error check of the read data is completed. .

すなわち、上記した従来の技術では、正確な読み出し処理を高速で行うことができないという課題があった。なお、パケット中継装置のみならず、正確な動作を高速で行うことが求められる装置が有する記憶装置であるならば、上述したように、正確な読み出し処理を高速で行うことができないという同様の課題があった。   That is, the above-described conventional technique has a problem that accurate read processing cannot be performed at high speed. In addition, if the storage device is not only a packet relay device but also a device that is required to perform an accurate operation at a high speed, as described above, the same problem that an accurate read process cannot be performed at a high speed. was there.

そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、正確な読み出し処理を高速で行うことが可能となる記憶装置およびパケット中継装置を提供することを目的とする。   Accordingly, the present invention has been made to solve the above-described problems of the prior art, and an object thereof is to provide a storage device and a packet relay device capable of performing accurate read processing at high speed. .

上述した課題を解決し、目的を達成するため、この装置は、記憶部が、第一の領域および第二の領域それぞれにデータを記憶する。そして、データ読み出し処理部が、第一のクロック信号の立ち上がり周期に同調して前記第一の領域に記憶されているデータを読み出すとともに、当該第一のクロック信号と立ち上がり間隔が同一である第二のクロック信号の立ち上がり周期に同調して前記第二の領域に記憶されているデータを読み出す。そして、検出部が、前記データ読み出し処理部によって読み出されたデータそれぞれのパリティエラーの有無を検出し、データ出力部が、前記検出部による検出結果に基づいて、パリティエラーが検出されなかったデータを所定の出力部に出力することを要件とする。   In order to solve the above-described problems and achieve the object, in this apparatus, the storage unit stores data in each of the first area and the second area. The data read processing unit reads out the data stored in the first area in synchronization with the rising cycle of the first clock signal, and the rising interval is the same as that of the first clock signal. The data stored in the second area is read in synchronization with the rising cycle of the clock signal. The detection unit detects the presence / absence of a parity error in each of the data read by the data read processing unit, and the data output unit detects the data in which no parity error is detected based on the detection result by the detection unit. Is output to a predetermined output unit.

開示の装置は、正確な読み出し処理を高速で行うことが可能となる。   The disclosed apparatus can perform accurate reading processing at high speed.

図1−1は、実施例1におけるパケット中継装置の概要を説明するための図である。FIG. 1A is a schematic diagram illustrating an overview of the packet relay apparatus according to the first embodiment. 図1−2は、実施例1におけるパケット中継装置の特徴を説明するための図である。FIG. 1-2 is a diagram for explaining the characteristics of the packet relay device according to the first embodiment. 図2は、実施例1におけるパケット中継装置の構成を説明するためのブロック図である。FIG. 2 is a block diagram for explaining the configuration of the packet relay apparatus according to the first embodiment. 図3は、セレクタ制御部を説明するための図である。FIG. 3 is a diagram for explaining the selector control unit. 図4は、実施例1におけるパケット中継装置による書き込み処理の手順を説明するための図である。FIG. 4 is a diagram for explaining the procedure of the writing process by the packet relay device according to the first embodiment. 図5は、実施例1におけるパケット中継装置による読み出し処理の手順を説明するための図である。FIG. 5 is a diagram for explaining the procedure of the reading process performed by the packet relay apparatus according to the first embodiment. 図6は、ポインタアドレスを説明するための図である。FIG. 6 is a diagram for explaining the pointer address. 図7は、ECC回路を用いたエラー修正を説明するための図である。FIG. 7 is a diagram for explaining error correction using the ECC circuit. 図8は、メモリの二重化を説明するための図である。FIG. 8 is a diagram for explaining memory duplication. 図9は、二重化したメモリからのデータ読み出しを説明するためのタイムチャートである。FIG. 9 is a time chart for explaining data reading from the duplicated memory.

以下に添付図面を参照して、本願の開示する記憶装置およびパケット中継装置の実施例を詳細に説明する。なお、以下では、本願の開示する記憶装置が組み込まれたパケット中継装置を実施例として説明する。   Exemplary embodiments of a storage device and a packet relay device disclosed in the present application will be described below in detail with reference to the accompanying drawings. In the following, a packet relay device incorporating a storage device disclosed in the present application will be described as an example.

[実施例1におけるパケット中継装置の概要および特徴]
まず最初に、図1−1および図1−2を用いて、実施例1におけるパケット中継装置の概要および特徴を説明する。図1−1は、実施例1におけるパケット中継装置の概要を説明するための図であり、図1−2は実施例1におけるパケット中継装置の特徴を説明するための図である。
[Outline and Features of Packet Relay Device in Embodiment 1]
First, the outline and features of the packet relay apparatus according to the first embodiment will be described with reference to FIGS. 1-1 and 1-2. 1-1 is a diagram for explaining an outline of the packet relay device according to the first embodiment, and FIG. 1-2 is a diagram for explaining features of the packet relay device according to the first embodiment.

実施例1におけるパケット中継装置は、パケットデータ(以下、データと記す)に含まれる送信先情報に基づいて、データを送信先へ転送する装置であり、CLK(Clock)信号に同期して、データ転送における各種処理を実行することを概要とする。   The packet relay apparatus according to the first embodiment is an apparatus that transfers data to a transmission destination based on transmission destination information included in packet data (hereinafter referred to as data), and is synchronized with a CLK (Clock) signal. The outline is to execute various processes in the transfer.

具体的には、実施例1におけるパケット中継装置は、図1−1の(A)に示すように、データ転送における各種処理をCLKの立ち上がりに合わせて実行するパケット処理部を有する。パケット処理部は、図1−1の(A)に示すように、CLKの立ち上がりに合わせて、入力されたデータをメモリに書き込む「書き込み処理部」と、CLKの立ち上がりに合わせて、メモリに書き込まれたデータを読み出して出力する「読み出し処理部」とを有する。   Specifically, as illustrated in FIG. 1-1A, the packet relay apparatus according to the first embodiment includes a packet processing unit that executes various processes in data transfer at the rising edge of CLK. As shown in FIG. 1-1A, the packet processing unit writes “input processing data” to the memory at the rising edge of CLK, and writes it to the memory at the rising edge of CLK. A “read processing unit” that reads and outputs the read data.

ここで、実施例1におけるパケット中継装置には、図1−1の(A)に示すように、0面と1面との2つの記憶領域を有するメモリが組み込まれている。例えば、実施例1におけるパケット中継装置には、DDR(Double Data Rate)メモリが組み込まれている。   Here, as shown in FIG. 1-1A, the packet relay apparatus according to the first embodiment incorporates a memory having two storage areas of the 0-plane and the 1-plane. For example, the packet relay apparatus according to the first embodiment incorporates a DDR (Double Data Rate) memory.

書き込み処理部は、CLKの立ち上がりに合わせて、入力されたデータを0面と1面とにそれぞれ書き込む。   The write processing unit writes the input data to the 0th and 1st planes at the rising edge of CLK.

また、読み出し処理部は、CLKの立ち上がりに合わせて、0面と1面とからデータをそれぞれ読み出す。   Further, the read processing unit reads data from the 0th and 1st planes at the rising edge of CLK, respectively.

そして、読み出し処理部は、CLKの立ち上がりに合わせて、0面および1面それぞれから読み出したデータのパリティエラーをチェックし、パリティエラーが検出されなかったデータを出力する。   Then, the read processing unit checks the parity error of the data read from each of the 0th and 1st planes at the rising edge of CLK, and outputs data for which no parity error has been detected.

なお、パケット処理部は、図1−1の(B)に示すように、同一の時間間隔で立ち上がるCLK(CLK1、CLK2、CLK3、CLK4およびCLK5)に合わせて書き込み処理、読み出し処理、パリティエラー検出処理、出力処理を実行する。   The packet processing unit performs write processing, read processing, and parity error detection in synchronization with CLK (CLK1, CLK2, CLK3, CLK4, and CLK5) rising at the same time interval, as shown in FIG. Execute processing and output processing.

ここで、実施例1におけるパケット中継装置は、正確な読み出し処理を高速で行うことが可能となることに主たる特徴がある。この主たる特徴について簡単に説明すると、実施例1におけるパケット中継装置は、図1−2の(A)に示すように、通常のCLK(通常CLK)とともに、通常CLKを反転させた反転CLKを用いて、データ転送における各種処理を実行する。すなわち、実施例1におけるパケット中継装置は、反転CLKの立ち上がりに合わせることにより、通常CLKの立ち下がりに同期して処理を実行することとなる。   Here, the packet relay apparatus according to the first embodiment is mainly characterized in that accurate read processing can be performed at high speed. Briefly explaining this main feature, the packet relay apparatus according to the first embodiment uses the normal CLK (normal CLK) and the inverted CLK obtained by inverting the normal CLK, as shown in FIG. Various processes in data transfer are executed. That is, the packet relay apparatus according to the first embodiment executes processing in synchronization with the falling edge of the normal CLK by matching the rising edge of the inverted CLK.

まず、書き込み処理部は、入力されたデータのbit列(以下、通常データと記す)を反転した反転データを生成する。例えば、書き込み処理部は、図1−2の(A)に示すように、通常データ「bit列:11010」が入力された場合、反転データ「bit列:00101」を生成する。   First, the write processing unit generates inverted data obtained by inverting a bit string of input data (hereinafter referred to as normal data). For example, as illustrated in FIG. 1A, when the normal data “bit string: 11010” is input, the write processing unit generates inverted data “bit string: 00101”.

そして、書き込み処理部は、通常CLKの立ち上がりに合わせて0面に通常データを書き込み、反転CLKの立ち上がりに合わせて1面に反転データを書き込む。なお、0面と1面とには、同一のアドレスが割り当てられている。例えば、書き込み処理部は、図1−2の(A)に示す通常CLK1の立ち上がりに合わせて通常データ「bit列:11010」の最初の「1」をメモリの0面に書き込む。そして、書き込み処理部は、反転CLK1の立ち上がりに合わせて反転データ「bit列:00101」の最初の「0」をメモリの1面に書き込む。すなわち、書き込み処理部は、CLK1周期分の時間で2つのデータを0面および1面それぞれに書き込む。   Then, the write processing unit writes normal data on the 0 side in accordance with the rising edge of the normal CLK, and writes the inverted data on the 1 side in accordance with the rising edge of the inverted CLK. The same address is assigned to the 0th and 1st surfaces. For example, the write processing unit writes the first “1” of the normal data “bit string: 11010” to the 0th surface of the memory in synchronization with the rising edge of the normal CLK1 shown in FIG. Then, the write processing unit writes the first “0” of the inverted data “bit string: 00101” to one surface of the memory in synchronization with the rising edge of the inverted CLK1. In other words, the write processing unit writes two data on the 0th and 1st surfaces in a time corresponding to one CLK cycle.

同様に、書き込み処理部は、通常CLK2〜5の立ち上がりに合わせて残りの通常データ「1010」を順次0面に書き込み、反転CLK2〜5の立ち上がりに合わせて残りの反転データ「0101」を順次1面に書き込む。これにより、書き込み処理部は、図1−2の(A)に示すように、通常データと反転データとを合成した合成データのbit列「1010011001」を同一アドレスが割り当てられた2つの記憶領域に分離して書き込む。   Similarly, the write processing unit sequentially writes the remaining normal data “1010” on the 0 plane in accordance with the rising edges of the normal CLK 2 to 5, and sequentially sets the remaining inverted data “0101” to 1 in accordance with the rising edges of the inverted CLK 2 to 5. Write on the surface. As a result, as shown in FIG. 1-2A, the write processing unit stores the bit string “101001001” of the synthesized data obtained by synthesizing the normal data and the inverted data in two storage areas to which the same address is assigned. Write separately.

読み出し処理部は、同一アドレスが割り当てられた2つの記憶領域に分離して格納されている合成データを読み出す。具体的には、読み出し処理部は、通常CLKの立ち上がりに合わせてメモリの0面から通常データを読み出し、反転CLKの立ち上がりに合わせて、メモリの1面から反転データを読み出す。   The read processing unit reads the composite data stored separately in the two storage areas to which the same address is assigned. Specifically, the read processing unit reads the normal data from the 0th surface of the memory at the rising edge of the normal CLK, and reads the inverted data from the 1st surface of the memory at the rising edge of the inverted CLK.

例えば、読み出し処理部は、同一アドレスが割り当てられたメモリの0面および1面に分離して格納している合成データ「bit列:1010011001」を読み出す場合、図1−2の(B)に示すように、通常CLK1〜5の立ち上がりに合わせて、合成データの通常データを0面から順次読み出す。また、読み出し処理部は、図1−2の(B)に示すように、反転CLK1〜5の立ち上がりに合わせて、合成データの反転データを1面から順次読み出す。   For example, when the read processing unit reads the composite data “bit string: 101001001” stored separately on the 0th and 1st surfaces of the memory to which the same address is assigned, the read processing unit is illustrated in FIG. As described above, the normal data of the composite data is sequentially read from the 0 plane in synchronization with the rising edges of the normal CLK1 to CLK5. Further, as illustrated in FIG. 1-2B, the read processing unit sequentially reads the inverted data of the composite data from one surface in accordance with the rise of the inversion CLK1 to CLK5.

そして、読み出し処理部は、読み出したデータに予め付与されているパリティビットを用いてパリティエラーのチェックを実行する。例えば、読み出し処理部は、図1−2の(B)に示すように、メモリの0面から読み出した0面読み出しデータのパリティエラーを通常CLK2〜6の立ち上がりに合わせて順次チェックする。   Then, the read processing unit performs a parity error check using a parity bit previously assigned to the read data. For example, as shown in FIG. 1-2B, the read processing unit sequentially checks the parity error of the 0-plane read data read from the 0-plane of the memory in accordance with the rising edge of the normal CLK 2-6.

また、読み出し処理部は、メモリの1面から読み出したデータについては、bit列を反転させたのち、パリティエラーをチェックする。例えば、パケット処理部は、図1−2の(B)に示すように、メモリの1面から読み出した1面読み出しデータ「bit列:00101」を反転させた「bit列:11010」のパリティエラーを反転CLK2〜6の立ち上がりに合わせて、チェックする。   The read processing unit checks the parity error for the data read from one surface of the memory after inverting the bit string. For example, the packet processing unit, as shown in FIG. 1-2B, shows a parity error of “bit string: 11010” obtained by inverting one-side read data “bit string: 00101” read from one face of the memory. Is checked at the rising edge of inversion CLK2-6.

そして、パケット処理部は、0面読み出しデータと1面読み出しデータとを比較して、エラーが発生したbitを正常なbitに切り替えたデータを所定の出力部に出力する。例えば、仮に、図1−2の(B)に示すように、通常CLK5のパリティエラーのチェックにおいて、0面読み出しデータの4番目のbitが「1」から「0」になったことによりパリティエラーが検出されたとする。また、図1−2の(B)に示すように、反転CLK5のパリティエラーのチェックにおいて、パリティエラーが検出されなかったとする。   Then, the packet processing unit compares the 0-plane read data and the 1-plane read data, and outputs data in which the bit in which the error has occurred is switched to a normal bit to a predetermined output unit. For example, as shown in FIG. 1-2B, a parity error is caused by the fact that the fourth bit of the 0-plane read data is changed from “1” to “0” in the parity error check of normal CLK5. Is detected. Further, as shown in FIG. 1-2B, it is assumed that no parity error is detected in the parity error check of the inverted CLK5.

上記した場合、パケット処理部は、図1−2の(B)に示すように、通常CLK6の立ち上がりに合わせて、0面読み出しデータ「bit列:11000」の4番目の「0」を1面読み出しデータ「bit列:11010」の4番目の「1」に切り替える。そして、パケット処理部は、エラーが発生したbitを正常なbitに切り替えた出力データ「bit列:11010」を所定の出力部に出力する。   In the above case, as shown in FIG. 1-2 (B), the packet processing unit normally sets the fourth “0” of the 0-plane read data “bit string: 11000” in synchronization with the rising edge of CLK6. The read data “bit string: 11010” is switched to the fourth “1”. Then, the packet processing unit outputs the output data “bit string: 11010” obtained by switching the bit in which the error has occurred to a normal bit to a predetermined output unit.

なお、パケット処理部は、「0面読み出しデータ:正常、1面読み出しデータ:正常」、「0面読み出しデータ:正常、1面読み出しデータ:エラー」および「0面読み出しデータ:エラー、1面読み出しデータ:エラー」の場合、0面読み出しデータを所定の出力部に出力する。また、上記したように、パケット処理部は、「0面読み出しデータ:エラー、1面読み出しデータ:正常」の場合、1面読み出しデータを所定の出力部に出力する。   Note that the packet processing unit includes “0-side read data: normal, 1-side read data: normal”, “0-side read data: normal, 1-side read data: error” and “0-side read data: error, 1-side read”. In the case of “data: error”, the 0-plane read data is output to a predetermined output unit. Further, as described above, the packet processing unit outputs the one-side read data to the predetermined output unit when “0-side read data: error, one-side read data: normal”.

また、パケット処理部は、パリティエラーチェック後のデータの切り替えを通常CLKの立ち上がりに合わせて実行する。   The packet processing unit executes data switching after the parity error check in accordance with the rising edge of the normal CLK.

このようなことから、実施例1におけるパケット中継装置は、CLK1周期分の時間で、エラーが検出されたbitを正常なbitに切り替えることができ、上記した主たる特徴の通り、正確な読み出し処理を高速で行うことが可能となる。   For this reason, the packet relay apparatus according to the first embodiment can switch a bit in which an error is detected to a normal bit in a time corresponding to one CLK cycle, and performs an accurate read process as described above. It can be performed at high speed.

[実施例1におけるパケット中継装置の構成]
次に、図2を用いて、実施例1におけるパケット中継装置の構成を説明する。図2は、実施例1におけるパケット中継装置の構成を説明するためのブロック図である。
[Configuration of Packet Relay Device in First Embodiment]
Next, the configuration of the packet relay apparatus according to the first embodiment will be described with reference to FIG. FIG. 2 is a block diagram for explaining the configuration of the packet relay apparatus according to the first embodiment.

図2に示すように、実施例1におけるパケット中継装置10は、メモリ20と、パケット処理部30と、入力用I/F40と、出力用I/F41とを有する。   As illustrated in FIG. 2, the packet relay device 10 according to the first embodiment includes a memory 20, a packet processing unit 30, an input I / F 40, and an output I / F 41.

入力用I/F40は、図示しないネットワークを介して入力されたパケットデータ(以下、データと記す)をパケット処理部30に出力する。   The input I / F 40 outputs packet data (hereinafter referred to as data) input via a network (not shown) to the packet processing unit 30.

出力用I/F41は、パケット処理部30が出力したデータを、図示しないネットワークを介して接続されている送信先に出力する。   The output I / F 41 outputs the data output from the packet processing unit 30 to a transmission destination connected via a network (not shown).

メモリ20は、入力用I/F40を介して入力されたデータを記憶し、特に本実施例に密接に関連するものとしては、図2に示すように、0面21と、1面22との2つの記憶領域を有する。ここで、0面と1面には、同一アドレスが割り振られている。   The memory 20 stores the data input via the input I / F 40, and particularly as closely related to the present embodiment, as shown in FIG. It has two storage areas. Here, the same address is assigned to the 0th and 1st surfaces.

0面21は、入力用I/F40を介して入力されたデータのbit列(以下、通常データと記す)を記憶する。   The 0 plane 21 stores a bit string of data input through the input I / F 40 (hereinafter referred to as normal data).

1面22は、後述するパケット処理部30によって通常データが反転された反転データを記憶する。   The first surface 22 stores inverted data obtained by inverting normal data by a packet processing unit 30 described later.

パケット処理部30は、データ転送における各種処理を実行し、特に本実施例に密接に関係するものとしては、書き込み処理部50と、読み出し処理部60とを有する。   The packet processing unit 30 executes various processes in data transfer, and particularly includes a write processing unit 50 and a read processing unit 60 that are closely related to the present embodiment.

書き込み処理部50は、入力用I/F40を介して入力されたデータをメモリ20に対して書き込む処理を実行し、特に本実施例に密接に関係するものとしては、CLK発生部51と、CLK反転部52と、入力データ反転部53と、セレクタ54とを有する。   The write processing unit 50 executes a process of writing the data input via the input I / F 40 to the memory 20, and particularly those closely related to the present embodiment include a CLK generation unit 51, a CLK An inversion unit 52, an input data inversion unit 53, and a selector 54 are included.

CLK発生部51は、パケット処理部30における各種処理を同期させるための信号であるCLK(以下、通常CLKと記す)を発生する。例えば、CLK発生部51は、図1−2の(A)に示す通常CLKを発生する。   The CLK generator 51 generates a CLK (hereinafter referred to as a normal CLK) that is a signal for synchronizing various processes in the packet processor 30. For example, the CLK generator 51 generates a normal CLK shown in FIG.

CLK反転部52は、CLK発生部51が発生した通常CLKを反転し、通常CLKを反転CLKに変換する。例えば、CLK反転部52は、図1−2の(A)に示すように、通常CLKを反転して、反転CLKに変換する。   The CLK inverter 52 inverts the normal CLK generated by the CLK generator 51 and converts the normal CLK into an inverted CLK. For example, the CLK inversion unit 52 inverts the normal CLK and converts it into the inverted CLK, as shown in FIG.

入力データ反転部53は、入力用I/F40を介して入力された通常データのbit列を反転させた反転データを生成し、生成した反転データを後述するセレクタ54に送信する。例えば、通常データ「bit列:11010」が入力された場合、入力データ反転部53は、反転データ「bit列:00101」を生成し(図1−2の(A)参照)、生成した反転データ「bit列:00101」を後述するセレクタ54に送信する。   The input data inverting unit 53 generates inverted data obtained by inverting the bit sequence of the normal data input via the input I / F 40 and transmits the generated inverted data to the selector 54 described later. For example, when normal data “bit string: 11010” is input, the input data inverting unit 53 generates inverted data “bit string: 00101” (see (A) in FIG. 1-2), and the generated inverted data. “Bit string: 00101” is transmitted to the selector 54 described later.

セレクタ54は、入力用I/F40を介して入力された通常データと、入力データ反転部53から受信した反転データとを合成した合成データを、同一アドレスが割り当てられたメモリ20の0面21および1面22に分離して格納する。具体的には、セレクタ54は、合成データの通常データを通常CLKの立ち上がりに合わせて0面21に格納し、合成データの反転データを反転CLKの立ち上がりに合わせて1面22に格納する。   The selector 54 combines the synthesized data obtained by combining the normal data input via the input I / F 40 and the inverted data received from the input data inverting unit 53 with the 0 plane 21 of the memory 20 to which the same address is assigned and Separated into one surface 22 and stored. Specifically, the selector 54 stores the normal data of the composite data on the 0 side 21 in accordance with the rising edge of the normal CLK, and stores the inverted data of the composite data on the 1 side 22 in accordance with the rising edge of the inverted CLK.

例えば、通常データ「bit列:11010」および反転データ「bit列:00101」を受信した場合、セレクタ54は、通常データと反転データとを合成データ「bit列:1010011001」に合成する(図1−2の(A)参照)。そして、セレクタ54は、CLK発生部51が発生させた通常CLKの立ち上がりに合わせて、合成データの通常データをメモリ20の0面21に格納する。例えば、セレクタ54は、通常CLK1〜5の立ち上がりに合わせて、合成データ「bit列:1010011001」の通常データ「bit列:11010」を順次0面21に格納する(図1−2の(A)参照)。   For example, when the normal data “bit string: 11010” and the inverted data “bit string: 00101” are received, the selector 54 combines the normal data and the inverted data into the synthesized data “bit string: 101001001” (FIG. 1− 2 (A)). Then, the selector 54 stores the normal data of the composite data in the 0 plane 21 of the memory 20 in accordance with the rising edge of the normal CLK generated by the CLK generator 51. For example, the selector 54 sequentially stores the normal data “bit string: 11010” of the composite data “bit string: 101001001” in the 0 plane 21 in synchronization with the rising edges of the normal CLKs 1 to 5 ((A) in FIG. 1-2). reference).

また、セレクタ54は、CLK反転部52によって通常CLKが反転された反転CLKの立ち上がりに合わせて、合成データの反転データをメモリ20の1面22に格納する。例えば、セレクタ54は、反転CLK1〜5の立ち上がりに合わせて、合成データ「bit列:1010011001」の反転データ「bit列:00101」を順次1面22に格納する(図1−2の(A)参照)。   Further, the selector 54 stores the inverted data of the combined data on the first surface 22 of the memory 20 in accordance with the rising edge of the inverted CLK in which the normal CLK is inverted by the CLK inversion unit 52. For example, the selector 54 sequentially stores the inverted data “bit string: 00101” of the composite data “bit string: 101001001” on the first surface 22 in accordance with the rising edges of the inverted CLKs 1 to 5 ((A) of FIG. 1-2). reference).

読み出し処理部60は、0面21および1面22によって分離して記憶された合成データを読み出す読み出し処理を実行し、特に本実施例に密接に関係するものとしては、FF(flip flop)61と、FF62と、1面データ反転部63と、0面検出部64と、1面検出部65と、FF66と、FF67と、セレクタ制御部68と、セレクタ69とを有する。   The read processing unit 60 executes a read process for reading the combined data stored by being separated by the 0 plane 21 and the 1 plane 22, and particularly those closely related to the present embodiment include an FF (flip flop) 61 and , FF 62, 1-plane data reversing section 63, 0-plane detection section 64, 1-plane detection section 65, FF 66, FF 67, selector control section 68, and selector 69.

なお、FF61、FF62、FF66およびFF67は、1bitの情報を一時的に保持することができる論理回路であり、読み出し処理部が読み出し処理を実行する際の各種処理をCLKの立ち上がりに同期して行うことを制御する。   Note that FF61, FF62, FF66, and FF67 are logic circuits that can temporarily hold 1-bit information, and perform various processes when the read processing unit executes the read process in synchronization with the rising edge of CLK. To control that.

FF61は、通常CLKの立ち上がりに合わせて、0面21から合成データの通常データを読み出す。例えば、FF61は、通常CLK1〜5の立ち上がりに合わせて、通常データ「bit列:11010」を0面21から順次読み出す(図1−2の(B)参照)。   The FF 61 reads the normal data of the composite data from the 0 plane 21 in synchronization with the rising edge of the normal CLK. For example, the FF 61 sequentially reads the normal data “bit string: 11010” from the 0 plane 21 in synchronization with the rising edges of the normal CLKs 1 to 5 (see FIG. 1-2B).

そして、FF61は、読み出し処理を行った次の通常CLKの立ち上がりに合わせて、0面21から読み出した0面読み出しデータを、後述する0面検出部64およびFF66に順次送信する。例えば、FF61は、通常CLKの2〜6の立ち上がりに合わせて、0面読み出しデータ「bit列:11010」を後述する0面検出部64およびFF66に順次送信する(図1−2の(B)参照)。   Then, the FF 61 sequentially transmits the 0-plane read data read from the 0-plane 21 to the 0-plane detection unit 64 and the FF 66 described later in synchronization with the next rising edge of the normal CLK. For example, the FF 61 sequentially transmits the 0-plane read data “bit sequence: 11010” to the 0-plane detection unit 64 and the FF 66 described later in synchronization with the rising edges of the normal CLK 2 to 6 ((B) in FIG. 1-2). reference).

1面データ反転部63は、FF62が読み出した反転データのbit列を、FF62に取り込まれる前に反転させる。例えば、FF62が1面22から「bit列:00101」を読み出した場合、1面データ反転部63は、「bit列:00101」を反転して「bit列:11010」とする。   The one-side data inversion unit 63 inverts the bit sequence of the inversion data read out by the FF 62 before being taken into the FF 62. For example, when the FF 62 reads “bit column: 00101” from the first surface 22, the first surface data reversing unit 63 inverts “bit column: 00101” to “bit column: 11010”.

FF62は、反転CLKの立ち上がりに合わせて、1面22から合成データの反転データを読み出す。例えば、FF62は、反転CLK1〜5の立ち上がりに合わせて、合成データの反転データ「bit列:00101」を1面22から順次読み出す(図1−2の(B)参照)。   The FF 62 reads the inverted data of the composite data from the first surface 22 in accordance with the rising edge of the inverted CLK. For example, the FF 62 sequentially reads the inverted data “bit string: 00101” of the composite data from the first surface 22 in accordance with the rise of the inversion CLK1 to 5 (see FIG. 1-2B).

そして、FF62は、読み出し処理を行った次のCLKの立ち上がりに合わせて、1面22から読み出し、1面データ反転部63によって反転された1面読み出しデータを、後述する1面検出部65およびFF67に送信する。例えば、FF62は、反転CLKの2〜6の立ち上がりに合わせて、一面読み出しデータ「bit列:11010」を後述する1面検出部65およびFF67に順次送信する(図1−2の(B)参照)。   Then, the FF 62 reads the one-side read data read from the first surface 22 in accordance with the next rising edge of the CLK subjected to the read process, and the first-surface read unit 65 and the FF 67 described later. Send to. For example, the FF 62 sequentially transmits the single-side read data “bit string: 11010” to the single-side detection unit 65 and the FF 67, which will be described later, in accordance with the rising edges of the inverted CLK 2 to 6 (see FIG. 1-2B). ).

0面検出部64は、FF61から受信した0面読み出しデータに予め付与されたパリティビットを用いてパリティエラーをチェックし、チェック結果を後述するセレクタ制御部68に送信する。例えば、0面検出部64は、0面読み出しデータ「bit列:11010」のパリティエラーをチェックし、チェック結果をセレクタ制御部68に送信する。   The 0-plane detection unit 64 checks a parity error using a parity bit previously assigned to the 0-plane read data received from the FF 61, and transmits the check result to the selector control unit 68 described later. For example, the 0-plane detection unit 64 checks the parity error of the 0-plane read data “bit string: 11010” and transmits the check result to the selector control unit 68.

1面検出部65は、FF62から受信した1面読み出しデータに予め付与されたパリティビットを用いてパリティエラーをチェックし、チェック結果を後述するセレクタ制御部68に送信する。例えば、1面検出部65は、1面読み出しデータ「bit列:11010」のパリティエラーをチェックし、チェック結果を後述するセレクタ制御部68に送信する。   The single-side detection unit 65 checks a parity error using a parity bit previously assigned to the single-side read data received from the FF 62, and transmits the check result to a selector control unit 68 described later. For example, the single-side detection unit 65 checks the parity error of the single-side read data “bit string: 11010” and transmits the check result to the selector control unit 68 described later.

FF66は、パリティエラーのチェックが実行された通常CLKの次の通常CLKの立ち上がりに合わせて、FF61から受信した0面読み出しデータを、後述するセレクタ69に順次送信する。例えば、FF66は、通常CLKの3〜7の立ち上がりに合わせて、0面読み出しデータ「bit列:11010」を後述するセレクタ69に順次送信する(図1−2の(B)参照)。   The FF 66 sequentially transmits the 0-plane read data received from the FF 61 to the selector 69 described later in synchronization with the rising edge of the normal CLK next to the normal CLK for which the parity error check has been performed. For example, the FF 66 normally transmits the 0-plane read data “bit string: 11010” to the selector 69 described later (see (B) of FIG. 1B) in synchronization with the rising edges of the normal CLK 3-7.

FF67は、パリティエラーのチェックが実行された反転CLKの次の反転CLKの立ち上がりに合わせて、FF62から受信した1面読み出しデータを、後述するセレクタ69に順次送信する。例えば、FF67は、通常CLKの3〜7の立ち上がりに合わせて、1面読み出しデータ「bit列:11010」を後述するセレクタ69に順次送信する(図1−2の(B)参照)。   The FF 67 sequentially transmits the one-side read data received from the FF 62 to the selector 69 described later in synchronization with the rising edge of the next inverted CLK after the inverted CLK for which the parity error check has been performed. For example, the FF 67 normally transmits the one-side read data “bit string: 11010” to the selector 69 described later in synchronization with the rising edge of the normal CLK 3 to 7 (see FIG. 1-2B).

セレクタ制御部68は、0面検出部64および1面検出部65から受信したチェック結果に基づいて、パリティエラーが検出されなかったデータを、後述するセレクタ69が取り込むように制御する。具体的には、セレクタ制御部68は、図3に示すように、0面読み出しデータのチェック結果が「正常」であり、1面読み出しデータのチェック結果が「正常」であった場合、0面読み出しデータを出力データとして取り込むようにセレクタ69を制御する。   Based on the check results received from the 0-plane detection unit 64 and the 1-plane detection unit 65, the selector control unit 68 controls the selector 69 described later to capture data for which no parity error has been detected. Specifically, as shown in FIG. 3, the selector control unit 68 determines that the 0-plane read data check result is “normal” and the 1-plane read data check result is “normal”. The selector 69 is controlled so as to capture the read data as output data.

また、セレクタ制御部68は、図3に示すように、「0面:エラー、1面:正常」であった場合、または、「0面:正常、1面:エラー」であった場合、それぞれ正常であった「1面」または「0面」のデータを出力データとして取り込むようにセレクタ69を制御する。   Further, as shown in FIG. 3, the selector control unit 68, when “0 plane: error, 1 plane: normal” or “0 plane: normal, 1 plane: error”, respectively, The selector 69 is controlled so as to take in the normal “1 side” or “0 side” data as output data.

また、セレクタ制御部68は、図3に示すように、「0面」および「1面」が共に「エラー」であった場合、「0面」のデータを出力データとして取り込むようにセレクタ69を制御するとともに、エラー信号を出力用I/F41に出力する。   In addition, as shown in FIG. 3, when both “0” and “1” are “errors”, the selector control unit 68 causes the selector 69 to capture the data of “0” as output data. While controlling, an error signal is output to the output I / F 41.

例えば、図1−2の(B)に示す通常CLK5のパリティエラーのチェックにおいて、0面21から読み出した読み出しデータの4番目のbitが「1」から「0」になったことによりエラーが検出されたとする。また、図1−2の(B)に示すように、反転CLK5のパリティエラーのチェックにおいて、パリティエラーが検出されなかったとする。上記した場合、セレクタ制御部68は、図1−2の(B)に示すように、通常CLK6の立ち上がりに合わせて、FF66から送信された0面読み出しデータ「bit列:11000」の4番目の「0」を取り込まないようにセレクタ69を制御する。そして、セレクタ制御部68は、FF67から送信された1面読み出しデータ「bit列:11010」の4番目の「1」を出力データとして取り込むようにセレクタ69を制御する。   For example, in the normal CLK5 parity error check shown in FIG. 1-2B, an error is detected when the fourth bit of the read data read from the 0 plane 21 is changed from “1” to “0”. Suppose that Further, as shown in FIG. 1-2B, it is assumed that no parity error is detected in the parity error check of the inverted CLK5. In the above case, as shown in FIG. 1-2B, the selector control unit 68 normally sets the fourth of the 0-plane read data “bit string: 11000” transmitted from the FF 66 in synchronization with the rising edge of CLK6. The selector 69 is controlled so as not to capture “0”. Then, the selector control unit 68 controls the selector 69 so as to capture the fourth “1” of the one-side read data “bit string: 11010” transmitted from the FF 67 as output data.

セレクタ69は、FF66またはFF67から取り込んだ出力データを、出力用I/F41に出力する。例えば、セレクタ69は、出力データ「bit列:11010」を、出力用I/F41に出力する。   The selector 69 outputs the output data fetched from the FF 66 or FF 67 to the output I / F 41. For example, the selector 69 outputs the output data “bit string: 11010” to the output I / F 41.

[実施例1におけるパケット中継装置による処理の手順]
次に、図4および図5を用いて、実施例1におけるパケット中継装置による処理を説明する。図4は、実施例1におけるパケット中継装置による書き込み処理の手順を説明するための図であり、図5は、実施例1におけるパケット中継装置による読み出し処理の手順を説明するための図である。
[Processing Procedure by Packet Relay Device in First Embodiment]
Next, processing performed by the packet relay apparatus according to the first embodiment will be described with reference to FIGS. 4 and 5. FIG. 4 is a diagram for explaining the procedure of the writing process by the packet relay device in the first embodiment, and FIG. 5 is a diagram for explaining the procedure of the reading process by the packet relay device in the first embodiment.

[実施例1におけるパケット中継装置による書き込み処理の手順]
図4に示すように、実施例1におけるパケット中継装置10は、入力用I/F40を介してパケットデータ(データ)が入力されると(ステップS101肯定)、入力データ反転部53は、入力されたデータを反転した反転データを生成する(ステップS102)。
[Procedure for Write Processing by Packet Relay Device in Embodiment 1]
As shown in FIG. 4, when packet data (data) is input to the packet relay device 10 according to the first embodiment via the input I / F 40 (Yes in step S101), the input data inverting unit 53 is input. Inverted data is generated by inverting the received data (step S102).

そして、セレクタ54は、入力用I/F40を介して入力された通常データと入力データ反転部53によって生成された反転データとを合成する(ステップS103)。   Then, the selector 54 combines the normal data input via the input I / F 40 and the inverted data generated by the input data inversion unit 53 (step S103).

そののち、セレクタ54は、CLK発生部51によって発生された通常CLKの立ち上がりに合わせて、通常データと反転データとを合成した合成データの通常データをメモリ20の0面21に格納する(ステップS104)。   After that, the selector 54 stores the normal data of the combined data obtained by combining the normal data and the inverted data in the 0 plane 21 of the memory 20 in accordance with the rising edge of the normal CLK generated by the CLK generator 51 (step S104). ).

さらに、セレクタ54は、CLK反転部52によって変換された反転CLKの立ち上がりに合わせて、合成データの反転データをメモリ20の1面22に格納し(ステップS105)、未格納bitが残っているか否かの判定を行う(ステップS106)。   Further, the selector 54 stores the inverted data of the composite data on the first surface 22 of the memory 20 in accordance with the rising edge of the inverted CLK converted by the CLK inverter 52 (step S105), and whether or not an unstored bit remains. Is determined (step S106).

ここで、未格納bitが残っていた場合(ステップS106肯定)、セレクタ54は、ステップS104に戻って、通常CLKの立ち上がりに合わせて、合成データの通常データを0面21に格納する。   Here, when an unstored bit remains (Yes at Step S106), the selector 54 returns to Step S104 and stores the normal data of the combined data in the 0 plane 21 in accordance with the rising edge of the normal CLK.

一方、未格納bitがない場合(ステップS106否定)、セレクタ54は、処理を終了する。   On the other hand, when there is no unstored bit (No at Step S106), the selector 54 ends the process.

[実施例1におけるパケット中継装置による読み出し処理の手順]
図5に示すように、実施例1におけるパケット中継装置10は、所定の読み出し時期になった場合(ステップS201肯定)、FF61は、通常CLKの立ち上がりに合わせて、合成データの通常データを0面21から読み出す(ステップS202)。例えば、実施例1におけるパケット中継装置は、書き込み処理によりデータがメモリ20に格納された場合、FF61は、データが格納された次の通常CLKの立ち上がりに合わせて、合成データの通常データを0面21から読み出す。
[Procedure for Read Processing by Packet Relay Device in Embodiment 1]
As illustrated in FIG. 5, when the packet relay apparatus 10 according to the first embodiment has reached a predetermined read time (Yes in step S201), the FF 61 displays the normal data of the composite data as 0 in accordance with the rising edge of the normal CLK. 21 (step S202). For example, in the packet relay apparatus according to the first embodiment, when the data is stored in the memory 20 by the writing process, the FF 61 sets the normal data of the composite data to 0 in accordance with the rising edge of the next normal CLK in which the data is stored. Read from 21.

そして、FF62は、反転CLKの立ち上がりに合わせて、合成データの反転データを1面22から読み出す(ステップS203)。ここで、1面データ反転部63は、FF62によって読み出された反転データを、FF62に取り込まれる前に反転する(ステップS204)。   Then, the FF 62 reads the inverted data of the composite data from the first surface 22 in synchronization with the rising edge of the inverted CLK (step S203). Here, the one-side data inversion unit 63 inverts the inversion data read by the FF 62 before being taken into the FF 62 (step S204).

そして、0面検出部64は、FF61が読み出し処理を行った通常CLKの次の通常CLKの立ち上がりに合わせて、0面読み出しデータのパリティエラーのチェックをする(ステップS205)。   Then, the 0-plane detection unit 64 checks the parity error of the 0-plane read data in accordance with the rising edge of the normal CLK next to the normal CLK that has been read by the FF 61 (step S205).

また、1面検出部65は、FF62が読み出し処理を行った反転CLKの次の反転CLKの立ち上がりに合わせて、1面読み出しデータのパリティエラーのチェックをする(ステップS206)。   Further, the single-side detection unit 65 checks the parity error of the single-side read data in accordance with the rising edge of the next inverted CLK after the inversion CLK that has been read by the FF 62 (step S206).

そののち、セレクタ制御部68は、0面検出部64および1面検出部65によって実行されたパリティエラーのチェック結果に基づいて、パリティチェックを行ったCLKの次のCLKの立ち上がりに合わせて、出力データを決定する(ステップS207)。具体的には、セレクタ制御部68は、図3に示すように、0面読み出しデータのチェック結果が「正常」であり、1面読み出しデータのチェック結果が「正常」であった場合、0面読み出しデータを出力データとして決定する。   After that, the selector control unit 68 outputs in accordance with the rising edge of the CLK next to the CLK subjected to the parity check based on the check result of the parity error executed by the 0-plane detection unit 64 and the 1-plane detection unit 65. Data is determined (step S207). Specifically, as shown in FIG. 3, the selector control unit 68 determines that the 0-plane read data check result is “normal” and the 1-plane read data check result is “normal”. Read data is determined as output data.

また、セレクタ制御部68は、図3に示すように、「0面:エラー、1面:正常」であった場合、または、「0面:正常、1面:エラー」であった場合、それぞれ正常であった「1面」または「0面」のデータを出力データとして決定する。   Further, as shown in FIG. 3, the selector control unit 68, when “0 plane: error, 1 plane: normal” or “0 plane: normal, 1 plane: error”, respectively, The normal “1 side” or “0 side” data is determined as output data.

また、セレクタ制御部68は、図3に示すように、「0面」および「1面」が共に「エラー」であった場合、「0面」のデータを出力データとして決定する。なお、セレクタ制御部68は、「0面」および「1面」が共に「エラー」であった場合、エラー信号を出力用I/F41に出力する。   Further, as shown in FIG. 3, when both “0” and “1” are “error”, the selector control unit 68 determines “0” data as output data. Note that the selector control unit 68 outputs an error signal to the output I / F 41 when both “0 side” and “1 side” are “error”.

そして、セレクタ制御部68は、上記した方法に基づいて決定した出力データをセレクタ69に取り込ませる。   Then, the selector control unit 68 causes the selector 69 to take in the output data determined based on the method described above.

そののち、セレクタ69は、取り込んだ出力データを出力用I/F41に出力する(ステップS208)。   After that, the selector 69 outputs the fetched output data to the output I / F 41 (step S208).

なお、上記した手順は、読み出しデータのすべてのbitに対して順次実行される。   The above-described procedure is sequentially executed for all the bits of the read data.

[実施例1の効果]
上記したように、実施例1によれば、メモリ20の0面21および1面22は、それぞれにデータを記憶する。そして、読み出し処理部60は、通常CLKの立ち上がりに同期して0面21に記憶されているデータを読み出すとともに、通常CLKと立ち上がり周期が同一であるCLKの立ち上がりに同期して1面22に記憶されているデータを読み出す。そして、0面検出部64は、0面21から読み出された0面読み出しデータのパリティエラーをチェックし、1面検出部65は、1面22から読み出された1面読み出しデータのパリティエラーをチェックする。そして、セレクタ制御部68は、0面検出部64および1面検出部65のパリティエラーのチェック結果に基づいて、パリティエラーが検出されなかったデータをセレクタ69に取り込ませる。従って、エラー検出後の再読み出しが不要となり、エラーが検出されたすべてのbitを、エラー検出後CLK1周期分の時間で正常なbitに切り替えることができ、正確な読み出し処理を高速で行うことが可能となる。
[Effect of Example 1]
As described above, according to the first embodiment, the 0 plane 21 and the 1 plane 22 of the memory 20 store data respectively. The read processing unit 60 reads the data stored in the 0 plane 21 in synchronization with the rising edge of the normal CLK and stores it in the 1 plane 22 in synchronization with the rising edge of the CLK having the same rising cycle as that of the normal CLK. Read the stored data. The 0 plane detector 64 checks the parity error of the 0 plane read data read from the 0 plane 21, and the 1 plane detector 65 checks the parity error of the 1 plane read data read from the 1 plane 22. Check. Then, the selector control unit 68 causes the selector 69 to take in data in which no parity error is detected based on the parity error check results of the 0-plane detection unit 64 and the 1-plane detection unit 65. Therefore, it is not necessary to re-read after error detection, and all bits in which an error is detected can be switched to normal bits in the time corresponding to one CLK period after error detection, and accurate read processing can be performed at high speed. It becomes possible.

また、実施例1によれば、読み出し処理部60は、通常CLKの立ち上がりに同期して0面21に記憶されているデータを読み出すとともに、通常CLKを反転した反転CLKの立ち上がりに同期して1面22に記憶されているデータを読み出す。従って、CLK1周期分の時間で2回の処理を実行することができ、正確な読み出し処理をより高速で行うことが可能となる。   Further, according to the first embodiment, the read processing unit 60 reads data stored in the 0 plane 21 in synchronization with the rising edge of the normal CLK, and 1 in synchronization with the rising edge of the inverted CLK obtained by inverting the normal CLK. Data stored in the surface 22 is read out. Therefore, it is possible to execute the process twice in a time corresponding to one CLK period, and it is possible to perform an accurate read process at a higher speed.

また、実施例1によれば、メモリ20の0面21および1面22は、同一のアドレスが割り当てられている。従って、同一CLKの立ち上がりおよび立ち下がりに合わせて、2つの記憶領域にアクセスすることができ、短時間で2つのデータを読み出すことが可能となる。   Further, according to the first embodiment, the same address is assigned to the 0 side 21 and the 1 side 22 of the memory 20. Therefore, the two storage areas can be accessed in accordance with the rise and fall of the same CLK, and two data can be read out in a short time.

また、実施例1によれば、書き込み処理部50は、通常CLKの立ち上がりに同期して通常データを0面21に書き込むとともに、反転CLKの立ち上がりに同期して反転データを1面22に書き込む。そして、1面データ反転部63は、1面検出部65によるパリティエラーのチェックの前に、1面読み出しデータを反転させ、1面検出部65は、1面データ反転部63によって反転された1面読み出しデータのパリティエラーをチェックする。そして、セレクタ制御部68は、0面検出部64および1面検出部65のパリティエラーのチェック結果に基づいて、パリティエラーが検出されなかったデータをセレクタ69に取り込ませる。従って、メモリの内部故障などによって発生するようなbitの固定状態をエラーとして判断することができ、管理者に対して即座に装置の異常を通知することが可能となる。   Further, according to the first embodiment, the write processing unit 50 writes the normal data to the 0 plane 21 in synchronization with the rising edge of the normal CLK, and writes the inverted data to the 1 plane 22 in synchronization with the rising edge of the inverted CLK. Then, the single-side data reversing unit 63 inverts the single-side read data before checking the parity error by the single-side detecting unit 65, and the single-sided data detecting unit 65 is inverted by the single-sided data reversing unit 63. Check the parity error of the surface read data. Then, the selector control unit 68 causes the selector 69 to take in data in which no parity error is detected based on the parity error check results of the 0-plane detection unit 64 and the 1-plane detection unit 65. Therefore, it is possible to determine the fixed state of the bit that may occur due to an internal failure of the memory as an error, and to immediately notify the administrator of the abnormality of the device.

さて、これまで実施例1について説明したが、上述した実施例1以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、種々の異なる実施例を(1)〜(3)に区分けして説明する。   Although the first embodiment has been described above, the present invention may be implemented in various different forms other than the first embodiment described above. Therefore, in the following, various different embodiments will be described by being divided into (1) to (3).

(1)対象データ
上記した例では、書き込み処理および読み出し処理が行われるデータとして、パケットデータを用いる場合について説明したが、本実施例はこれに限定するものではなく、例えば、パケットデータをチェーン管理するためのポインタアドレスを用いる場合であってもよい。以下に、変形例としてポインタアドレスの一例を記す。なお。ポインタアドレスとしては、メモリにおけるデータの位置情報や格納したデータと連続するデータの位置情報などがある。
(1) Target data In the above-described example, the case where packet data is used as data to be written and read is described. However, the present embodiment is not limited to this. For example, packet data is chain-managed. It is also possible to use a pointer address for this purpose. Hereinafter, an example of a pointer address will be described as a modification. Note that. The pointer address includes data position information in memory and position information of data that is continuous with stored data.

例えば、本願が開示する記憶装置の対象データとして、図6に示すように、通常データ「bit列:11010」および反転データ「bit列:00101」を格納したポインタアドレス「00000000000010100」を用いる場合であってもよい。   For example, as shown in FIG. 6, a pointer address “00000000000010100” storing normal data “bit string: 11010” and inverted data “bit string: 00101” is used as target data of the storage device disclosed in the present application. May be.

すなわち、ポインタアドレス「00000000000010100」と、ポインタアドレスを反転させた反転ポインタアドレス「11111111111101011」とをメモリに二重で格納する場合であってもよい。   That is, the pointer address “00000000000010100” and the inverted pointer address “11111111111101011” obtained by inverting the pointer address may be stored twice in the memory.

これによっても、例えば、データを読み出すごとに必要となるポインタアドレスの読み出しにおいてエラーが検出された場合でも、エラーが検出されたすべてのbitを、エラー検出後CLK1周期分の時間で正常なbitに切り替えることができ、データを廃棄することなく、パケット中継装置を運用することができる。   Also by this, for example, even when an error is detected in the reading of the pointer address required every time data is read, all the bits in which the error is detected are set to normal bits in the time corresponding to one CLK period after the error is detected. The packet relay apparatus can be operated without discarding data.

また、ポインタアドレスの上位側アドレスのように、bitがほとんど変化しないbit列におけるパリティエラーを検出することができ、正常なbit列か、あるいは、部品故障やデータの滞留によるbitの固定状態であるのかを判断することができる。   Further, a parity error can be detected in a bit string in which the bit hardly changes like the upper address of the pointer address, and the bit error is a normal bit string or the bit is fixed due to a component failure or data retention. Can be determined.

(2)実施形態
上記した例では、本願の開示する記憶装置をパケット中継装置に組み込んだ場合について説明したが、本実施例はこれに限定されるものではなく、例えば、科学演算を実行する科学演算装置などに本願の開示する記憶装置を組み込んだ場合であってもよい。
(2) Embodiments In the above-described example, the case where the storage device disclosed in the present application is incorporated in a packet relay device has been described. However, the present embodiment is not limited to this example. The case where the storage device disclosed in the present application is incorporated in an arithmetic device or the like may be used.

(3)システム構成等
また、上記の実施例において説明した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に更新することができる。例えば、実施例1におけるセレクタ制御部68による出力データの決定において、0面読み出しデータおよび1面読み出しデータがともにエラーであった場合、1面読み出しデータを出力データとしてもよい。
(3) System Configuration, etc. Further, the processing procedure described in the above embodiment, specific names, information including various data and parameters can be arbitrarily updated unless otherwise specified. For example, in the determination of output data by the selector control unit 68 in the first embodiment, if both the 0-plane read data and the 1-plane read data are errors, the 1-plane read data may be used as the output data.

また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示された構成要素と同一であることを要しない。すなわち、各処理部および各記憶部の分散・統合の具体的形態(例えば、図2の形態)は図示のものとは限られない。例えば、入力データ反転部53がセレクタ54に内蔵される場合であってもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。   Each component of each illustrated device is functionally conceptual and does not necessarily need to be the same as the physically illustrated component. That is, the specific form (for example, the form of FIG. 2) of the distribution / integration of each processing unit and each storage unit is not limited to that shown in the drawing. For example, the input data inverting unit 53 may be built in the selector 54. Further, all or any part of each processing function performed in each device may be realized by a CPU and a program analyzed and executed by the CPU, or may be realized as hardware by wired logic.

以上の本実施例を含む実施形態に関し、更に以下の付記を開示する。   Regarding the embodiment including the above-described embodiment, the following additional notes are disclosed.

(付記1)第一の領域および第二の領域それぞれにデータを記憶する記憶部と、
第一のクロック信号の立ち上がり周期に同調して前記第一の領域に記憶されているデータを読み出すとともに、当該第一のクロック信号と立ち上がり間隔が同一である第二のクロック信号の立ち上がり周期に同調して前記第二の領域に記憶されているデータを読み出すデータ読み出し処理部と、
前記データ読み出し処理部によって読み出されたデータそれぞれのパリティエラーの有無を検出する検出部と、
前記検出部による検出結果に基づいて、パリティエラーが検出されなかったデータを所定の出力部に出力するデータ出力部と
を有したことを特徴とする記憶装置。
(Supplementary Note 1) A storage unit that stores data in each of the first area and the second area;
The data stored in the first area is read in synchronization with the rising cycle of the first clock signal, and is also synchronized with the rising cycle of the second clock signal having the same rising interval as the first clock signal. And a data read processing unit for reading data stored in the second area,
A detection unit for detecting the presence or absence of a parity error for each of the data read by the data read processing unit;
And a data output unit that outputs data on which no parity error has been detected to a predetermined output unit based on a detection result of the detection unit.

(付記2)前記第二のクロック信号は、前記第一のクロック信号が反転されたクロック信号であることを特徴とする付記1に記載の記憶装置。 (Supplementary note 2) The storage device according to supplementary note 1, wherein the second clock signal is a clock signal obtained by inverting the first clock signal.

(付記3)前記第一の領域および前記第二の領域は、同一のアドレスが割り当てられていることを特徴とする付記1または2に記載の記憶装置。 (Supplementary note 3) The storage device according to Supplementary note 1 or 2, wherein the same address is assigned to the first area and the second area.

(付記4)前記データを、前記第一のクロック信号の立ち上がり周期に同調して前記第一の領域に書き込むとともに、当該データを反転させたデータを前記第二のクロック信号の立ち上がり周期に同調して前記第二の領域に書き込むデータ書き込み処理部と、
前記パリティエラーの有無を検出する前に、前記データ読み出し処理部によって前記第二の領域から読み出されたデータを反転させる反転部とをさらに有し、
前記検出部は、前記データ読み出し処理部によって前記第一の領域から読み出されたデータと、前記データ読み出し処理部によって前記第二の領域から読み出されたのちに前記反転部によって反転されたデータとを前記パリティエラーの有無の検出対象とし、
前記データ出力部は、前記検出部によりパリティエラーが検出されなかった検出対象データを所定の出力部に出力することを特徴とする付記1〜3のいずれか一つに記載の記憶装置。
(Supplementary Note 4) The data is written in the first area in synchronization with the rising cycle of the first clock signal, and the inverted data is synchronized with the rising cycle of the second clock signal. A data write processing unit for writing to the second area,
An inversion unit that inverts data read from the second area by the data read processing unit before detecting the presence or absence of the parity error;
The detection unit includes data read from the first area by the data read processing unit and data inverted by the inversion unit after being read from the second area by the data read processing unit. And the detection target of the presence or absence of the parity error,
The storage device according to any one of appendices 1 to 3, wherein the data output unit outputs detection target data for which no parity error has been detected by the detection unit to a predetermined output unit.

(付記5)第一の領域および第二の領域それぞれにパケットデータを記憶する記憶部と、
第一のクロック信号の立ち上がり周期に同調して前記第一の領域に記憶されているパケットデータを読み出すとともに、当該第一のクロック信号と立ち上がり間隔が同一である第二のクロック信号の立ち上がり周期に同調して前記第二の領域に記憶されているパケットデータを読み出すデータ読み出し処理部と、
前記データ読み出し処理部によって読み出されたパケットデータそれぞれのパリティエラーの有無を検出する検出部と、
前記検出部による検出結果に基づいて、パリティエラーが検出されなかったパケットデータを所定の出力部に出力するデータ出力部と
を有したことを特徴とするパケット中継装置。
(Supplementary Note 5) A storage unit that stores packet data in each of the first area and the second area;
The packet data stored in the first area is read in synchronization with the rising cycle of the first clock signal, and at the rising cycle of the second clock signal having the same rising interval as the first clock signal. A data read processing unit that reads packet data stored in the second area in synchronization with each other;
A detection unit for detecting the presence or absence of a parity error in each packet data read by the data read processing unit;
A packet relay apparatus comprising: a data output unit that outputs packet data for which no parity error has been detected to a predetermined output unit based on a detection result by the detection unit.

10 パケット中継装置
20 メモリ
21 0面
22 1面
30 パケット処理部
40 入力用I/F
41 出力用I/F
50 書き込み処理部
51 CLK発生部
52 CLK反転部
53 入力データ反転部
54 セレクタ
60 読み出し処理部
61 FF
62 FF
63 1面データ反転部
64 0面検出部
65 1面検出部
66 FF
67 FF
68 セレクタ制御部
69 セレクタ
10 packet relay device 20 memory 21 0 side 22 1 side 30 packet processing unit 40 I / F for input
41 Output I / F
50 Write Processing Unit 51 CLK Generating Unit 52 CLK Inverting Unit 53 Input Data Inverting Unit 54 Selector
60 Read processing unit 61 FF
62 FF
63 1-plane data reversing section 64 0-plane detection section 65 1-plane detection section 66 FF
67 FF
68 Selector controller 69 Selector

Claims (3)

第一の領域および第二の領域それぞれに、パケットデータをチェーン管理するためのポインタアドレスを記憶する記憶部と、
第一のクロック信号の立ち上がり周期に同調して前記第一の領域に記憶されている前記ポインタアドレスを読み出すとともに、当該第一のクロック信号と立ち上がり間隔が同一である第二のクロック信号の立ち上がり周期に同調して前記第二の領域に記憶されている前記ポインタアドレスを読み出すポインタアドレス読み出し処理部と、
前記ポインタアドレス読み出し処理部によって読み出されたポインタアドレスそれぞれのパリティエラーの有無を検出する検出部と、
前記検出部による検出結果に基づいて、パリティエラーが検出されなかったポインタアドレスを所定の出力部に出力するポインタアドレス出力部と
を有したことを特徴とする記憶装置。
A storage unit that stores pointer addresses for chain management of packet data in each of the first area and the second area;
Reads the pointer address stored in the first area in synchronization with the rising cycle of the first clock signal and rises the second clock signal having the same rising interval as the first clock signal. a pointer address read processing unit for reading the pointer address stored in the second region is tuned to,
A detection unit for detecting the presence or absence of a parity error of each pointer address read by the pointer address read processing unit;
On the basis of the detection result by the detection unit, memory device parity error is characterized in that and a pointer address output section for outputting a pointer address that was not detected in the predetermined output unit.
前記ポインタアドレスを、前記第一のクロック信号の立ち上がり周期に同調して前記第一の領域に書き込むとともに、当該ポインタアドレスを反転させたポインタアドレスを前記第二のクロック信号の立ち上がり周期に同調して前記第二の領域に書き込むポインタアドレス書き込み処理部と、
前記パリティエラーの有無を検出する前に、前記ポインタアドレス読み出し処理部によって前記第二の領域から読み出されたポインタアドレスを反転させる反転部とをさらに有し、
前記検出部は、前記ポインタアドレス読み出し処理部によって前記第一の領域から読み出されたポインタアドレスと、前記ポインタアドレス読み出し処理部によって前記第二の領域から読み出されたのちに前記反転部によって反転されたポインタアドレスとを前記パリティエラーの有無の検出対象とし、
前記ポインタアドレス出力部は、前記検出部によりパリティエラーが検出されなかった検出対象のポインタアドレスを所定の出力部に出力することを特徴とする請求項1に記載の記憶装置。
The pointer address is written in the first area in synchronization with the rising cycle of the first clock signal, and the pointer address obtained by inverting the pointer address is synchronized with the rising cycle of the second clock signal. A pointer address write processing unit for writing to the second area;
An inversion unit that inverts the pointer address read from the second area by the pointer address read processing unit before detecting the presence or absence of the parity error;
Wherein the detection unit includes a pointer address read from said first region by said pointer address read processing section, inverted by the inverting unit to then read out from said second region by said pointer address read processing unit And the detected pointer address as a detection target of the presence or absence of the parity error,
It said pointer address output unit, a storage device according to claim 1, characterized in that the output pointer address to be detected a parity error is not detected by the detecting unit to a predetermined output unit.
第一の領域および第二の領域それぞれに、パケットデータをチェーン管理するためのポインタアドレスを記憶する記憶部と、
第一のクロック信号の立ち上がり周期に同調して前記第一の領域に記憶されている前記ポインタアドレスを読み出すとともに、当該第一のクロック信号と立ち上がり間隔が同一である第二のクロック信号の立ち上がり周期に同調して前記第二の領域に記憶されている前記ポインタアドレスを読み出すポインタアドレス読み出し処理部と、
前記ポインタアドレス読み出し処理部によって読み出されたポインタアドレスそれぞれのパリティエラーの有無を検出する検出部と、
前記検出部による検出結果に基づいて、パリティエラーが検出されなかったポインタアドレスを所定の出力部に出力するポインタアドレス出力部と
を有したことを特徴とするパケット中継装置。
A storage unit that stores pointer addresses for chain management of packet data in each of the first area and the second area;
Reads the pointer address stored in the first area in synchronization with the rising cycle of the first clock signal and rises the second clock signal having the same rising interval as the first clock signal. a pointer address read processing unit for reading the pointer address stored in the second region is tuned to,
A detection unit for detecting the presence or absence of a parity error of each pointer address read by the pointer address read processing unit;
On the basis of the detection result by the detection unit, the packet relay apparatus, characterized in that a parity error had a pointer address output section for outputting a pointer address that was not detected in the predetermined output unit.
JP2009156347A 2009-06-30 2009-06-30 Storage device and packet relay device Expired - Fee Related JP5314516B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009156347A JP5314516B2 (en) 2009-06-30 2009-06-30 Storage device and packet relay device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009156347A JP5314516B2 (en) 2009-06-30 2009-06-30 Storage device and packet relay device

Publications (2)

Publication Number Publication Date
JP2011015096A JP2011015096A (en) 2011-01-20
JP5314516B2 true JP5314516B2 (en) 2013-10-16

Family

ID=43593567

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009156347A Expired - Fee Related JP5314516B2 (en) 2009-06-30 2009-06-30 Storage device and packet relay device

Country Status (1)

Country Link
JP (1) JP5314516B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01142960A (en) * 1987-11-30 1989-06-05 Toshiba Corp Semiconductor external auxiliary memory device
JPH04130543A (en) * 1990-09-20 1992-05-01 Fujitsu General Ltd Control circuit for memory
JP3436974B2 (en) * 1994-06-27 2003-08-18 三菱電機株式会社 Redundant memory system
JP2003273902A (en) * 2002-03-15 2003-09-26 Hitachi Ltd Packet communication equipment and method for switching line of packet communication network
US7130229B2 (en) * 2002-11-08 2006-10-31 Intel Corporation Interleaved mirrored memory systems

Also Published As

Publication number Publication date
JP2011015096A (en) 2011-01-20

Similar Documents

Publication Publication Date Title
TWI462108B (en) Circuit and method for testing multi-device systems
KR100837802B1 (en) Semiconductor Memory Apparatus with Error Detection of Data Input and Output
JP5010271B2 (en) Error correction code generation method and memory control device
JP4962060B2 (en) Parity error recovery circuit
KR20150094112A (en) Semiconductor Memory Apparatus and Operating Method Thereof
US20120221903A1 (en) Testing method, non-transitory, computer readable storage medium and testing apparatus
JP5314516B2 (en) Storage device and packet relay device
JP5213061B2 (en) Mirroring control device, mirroring control circuit, mirroring control method and program thereof
JP2010102565A (en) Duplex controller
US8539306B2 (en) Data processing circuit and data processing method
JP2011054221A (en) Storage device and electronic device
JP4292477B2 (en) Duplex processor unit
US7337247B2 (en) Buffer and method of diagnosing buffer failure
JP7485877B2 (en) Information processing system, processing method, and program
JP4921216B2 (en) Memory control circuit, storage system, information processing apparatus, and memory control method
JP4869911B2 (en) Logic BIST circuit and modulo circuit
JP6358122B2 (en) Microcomputer
JPH10340596A (en) Data storage device and semiconductor memory
JP2010140140A (en) Cache memory control circuit, cache memory device, and cache memory control method
RU99624U1 (en) STORAGE AND TRANSFER OF INFORMATION
JP2000099410A (en) Memory control circuit and information processor
JP2011257211A (en) Signal observation device and signal observation method
JP2010140132A (en) Memory system and memory controller
JPH0520215A (en) Information processor
JP2012146167A (en) Memory error pattern recording system, memory module and memory error pattern recording method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130419

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130705

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees