JP2005250951A - Data column shaping device - Google Patents
Data column shaping device Download PDFInfo
- Publication number
- JP2005250951A JP2005250951A JP2004062143A JP2004062143A JP2005250951A JP 2005250951 A JP2005250951 A JP 2005250951A JP 2004062143 A JP2004062143 A JP 2004062143A JP 2004062143 A JP2004062143 A JP 2004062143A JP 2005250951 A JP2005250951 A JP 2005250951A
- Authority
- JP
- Japan
- Prior art keywords
- processing unit
- data
- register
- internal processing
- data string
- 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
Links
Images
Abstract
Description
本発明は、データ整形装置に係り、ある処理単位ごとのデータ(この単位をワードと呼ぶ)を受取るごとに、受取った長さのまま順次処理結果を送信できる装置に関する。 The present invention relates to a data shaping apparatus, and more particularly to an apparatus capable of transmitting processing results sequentially in the received length each time data is received for each processing unit (this unit is called a word).
従来のデータ列整形装置は、処理単位がバイト単位であるため、入力部で受取ったデータは一度バイト単位の処理に直され処理されていた(例えば、特許文献1)。従来のデータ整形処理を実装した場合、処理単位であるワード単位で受取ったデータをバイト単位に変換し、データの整形処理を行い、整形処理後の処理を行うために再度ワード単位への逆変換を行う必要があった。従来の方法では、処理性能はバイト単位への変換部分に依存する。この部分では処理単位が切り替わるため、H/Wで設計を行うには動作クロックを変更しなければならない問題を含む。またワード単位への逆変換を行うために、処理されたバイト列を保存するためのバッファを用意する必要が生じる。 In the conventional data string shaping device, since the processing unit is a byte unit, the data received by the input unit is once converted to the byte unit processing (for example, Patent Document 1). When the conventional data shaping process is implemented, the data received in word units, which is the processing unit, is converted to byte units, the data shaping process is performed, and the conversion back to word units is performed again to perform the processing after the shaping process. Had to do. In the conventional method, the processing performance depends on the conversion part to the byte unit. Since the processing unit is switched in this portion, there is a problem that the operation clock must be changed in order to design with H / W. In addition, in order to perform reverse conversion to word units, it is necessary to prepare a buffer for storing the processed byte sequence.
整形処理後のデータは、一般に、整えられたデータ列の中からある決められたパターンを探すことに用いられる。パターンの検索もバイト単位の処理であるため、整形処理にパターン検索をも含める方法も提案されている(例えば、特許文献1、特許文献2)。
The data after the shaping process is generally used to search for a predetermined pattern from the arranged data string. Since the pattern search is also a byte unit process, a method of including the pattern search in the shaping process has also been proposed (for example,
この方法では、ワード単位への逆変換を必要としないものの、未だワード単位からバイト単位への変換部分を含んでいる。加えて、異なる処理どうしをまとめて実装するため、実装が困難であった。また、整形後のデータによるパターン検索を専用H/Wに任せるなど、機能の切り分けができないという問題をも含んでいた。
本発明は上記のような問題点を回避するためになされたもので、高速かつ再利用可能なデータ列整形装置を、容易な実装技術により実装できることを目的とする。 The present invention has been made in order to avoid the above-described problems, and an object of the present invention is to be able to mount a high-speed and reusable data string shaping device by an easy mounting technique.
従来のデータ整形処理を実装した場合、処理単位であるワード単位で受取ったデータをバイト単位に変換しなければならなかった。 When the conventional data shaping process is implemented, the data received in units of words that are processing units must be converted into units of bytes.
処理単位が切り替わるため、H/Wで実装するには、バイト単位の処理部分に劇的に速い動作周波数が必要となり、実装を困難とする問題点があった。 Since the processing unit is switched, mounting with H / W requires a dramatically fast operating frequency in the processing unit in byte units, which makes mounting difficult.
バイト単位からワード単位への逆変換を回避するために、異なる処理どうしをまとめて実装する形態では、異なる処理をまとめて行うため、実装自体が困難となる問題点があった。 In order to avoid reverse conversion from the byte unit to the word unit, in the form in which different processes are packaged together, the different processes are performed together, which makes the implementation itself difficult.
異なる処理どうしをまとめて実装する形態では、整形後のデータを用いて行う何らかの処理を、専用H/Wに任せるなどといった、処理の切り分けが困難という問題点があった。 In a form in which different processes are implemented together, there is a problem that it is difficult to separate the processes, such as entrusting a dedicated H / W with any process performed using the shaped data.
異なる処理どうしをまとめて実装する形態では、データ整形処理を含む一連の処理に特化して設計を行うため、整形処理内容が変わるごとに実施形態から見直す必要があるという問題点があった。 In a form in which different processes are implemented together, there is a problem that it is necessary to review the embodiment every time the content of the shaping process is changed because the design is specialized for a series of processes including the data shaping process.
異なる処理どうしをまとめて実装する形態では、作成したモジュールの再利用が困難であるという問題点があった。 There is a problem that it is difficult to reuse a created module in a form in which different processes are implemented together.
本発明に係るデータ列整形装置は、以下の要素を有することを特徴とする
(1)外部処理単位分の入力データを、内部処理単位群で入力する入力レジスタ
(2)外部処理単位分の出力データを、内部処理単位群で出力する出力レジスタ
(3)データ列整形処理途中の一時的なデータを、内部処理単位群で保存する保存レジスタ
(4)入力データの内部処理単位毎に特定コードであるかを評価し、内部処理単位毎の評価信号にデコード処理するデコーダ
(5)入力レジスタと、出力レジスタと、保存レジスタと、デコーダとに接続し、組み合わせ論理回路自身の状態と、前記内部処理単位の評価信号とに応じて、入力レジスタの内部処理単位群と、保存レジスタの内部処理単位群とのデータを、新たに保存レジスタの内部処理単位群と、出力レジスタの内部処理単位群とのデータに振り分け、組み合わせ論理回路自身の状態を遷移させる組み合わせ論理回路。
The data string shaping device according to the present invention has the following elements: (1) an input register for inputting input data for external processing units in an internal processing unit group; and (2) an output for external processing units. Output register for outputting data in internal processing unit group (3) Temporary data in the middle of data string shaping process, saving register for saving in internal processing unit group (4) Specific code for each internal processing unit of input data Decoder that evaluates whether there is a decoder and decodes it into an evaluation signal for each internal processing unit (5) Connected to input register, output register, storage register, and decoder, and states of combinational logic circuit itself, and said internal processing In response to the unit evaluation signal, the data of the internal processing unit group of the input register and the internal processing unit group of the storage register are newly transferred to the internal processing unit group of the storage register and the output level. Sorting the data with the internal processing unit group of static combinational logic circuit for shifting the state of the combinational logic circuit itself.
ワード単位のデータを受取るごとに、受取った長さのまま順次処理結果を送信することができる。 Each time data in word units is received, the processing results can be sequentially transmitted with the received length.
実施の形態1.
以下本発明を図面に示す実施例に基づいて説明する。図1はこの発明の実施形態を示す構成図である。
Hereinafter, the present invention will be described based on embodiments shown in the drawings. FIG. 1 is a block diagram showing an embodiment of the present invention.
図1において、1ワードは32ビット(=4バイト)である。入力レジスタ1(InputREGISTER)は1ワード分のデータを受取るためのレジスタ、出力レジスタ2(OutputREGISTER)はデータ列整形処理後のデータをワード単位で順次送信するためのレジスタである。保存レジスタ3(ReserveREGISTER)は処理途中のため1ワードに満たないデータを保存しておくための1ワードと同じサイズのレジスタである。そして4つのデコーダ4(Decoder)は各入力データをバイト単位で評価し、8ビットから1ビットの信号(評価信号の例)へデコードするためのデコーダ4である。また組み合わせ回路5(CombinedLogic)は組み合せ処理する。
In FIG. 1, one word is 32 bits (= 4 bytes). The input register 1 (InputREGISTER) is a register for receiving data for one word, and the output register 2 (OutputREGISTER) is a register for sequentially transmitting data after data string shaping processing in units of words. The storage register 3 (ReserveREGISTER) is a register having the same size as one word for storing data less than one word because it is in the middle of processing. The four decoders 4 (Decoders) are
ここで、ワード単位は、外部処理単位の例であり、バイト単位は、内部処理単位の例である。 Here, the word unit is an example of an external processing unit, and the byte unit is an example of an internal processing unit.
ワードストリーミング型データ列整形装置を設計するための問題とはすなわち、入力レジスタ1から出力レジスタ2までの適切な処理を、入力クロックに対して1サイクルで順次処理できる組み合わせ回路5が作成できるか、という問題である。本構成は、この問題を解く組み合わせ回路5を作成可能とするものである。
The problem for designing a word streaming type data string shaping device is that a
次に動作について説明する。 Next, the operation will be described.
ここでは、最も単純なデータ列整形処理である、エスケープ文字のデコード処理の実施形態について説明する。 Here, an embodiment of the escape character decoding process, which is the simplest data string shaping process, will be described.
エスケープ文字のデコード処理とは、8ビットで表される文字‘%’が来た場合、その後にある任意の2つの文字‘C1’、‘C2’、及び‘C1’の下位4ビットを上位4ビット、‘C2’の下位4ビットを下位4ビットとする文字‘C3’を用いて、文字列“%C1C2”が文字‘C3’に置き換わる処理である。ここでは、この処理をC3=m(C1,C2)と表す。 In the escape character decoding process, when the character '%' represented by 8 bits comes, the lower 4 bits of any two characters 'C1', 'C2', and 'C1' that follow are upper 4 The character string “% C1C2” is replaced with the character “C3” using the character “C3” in which the lower 4 bits of the bit “C2” are the lower 4 bits. Here, this processing is expressed as C3 = m (C1, C2).
まず入力レジスタ1によりワード単位でデータを受けるとともに、4つのデコーダ4において、同じタイミングでデータが1バイトごとに評価される。本処理では、デコーダ4は文字‘%’が入れば1を、それ以外の文字が入れば0を出力する。ドントケアである場合、本稿では標記‘x’を用いて表す。出力値がない場合、標記‘−’を用いて表す。また、保存レジスタ3の全てのビットの初期値は0である。
First, data is received in units of words by the
この、エスケープ文字のデコード処理をワードストリーミング処理するためのデータ列整形装置は、図2に示した1次の状態遷移機械を組み合わせ回路5として有する回路として実装する。ただし、デコードを行う関数mは表に記載した通りであり、これは組み合わせ回路5で実現する。
The data string shaping device for performing the word streaming process of the escape character decoding process is implemented as a circuit having the primary state transition machine shown in FIG. However, the decoding function m is as described in the table, and this is realized by the
組み合わせ回路5における状態の初期値はS0である。また、8ビットを入力とし、1ビットを出力とするデコーダ4は、8ビット入力Ix(x=3,2,1,0)を用いてD(Ix)である。
The initial value of the state in the
以上のように、入力されたデータは、ワード長のまま1サイクル毎に入力と出力を繰り返すことが可能である。このように設計できるため、スループットの低下なしにデータ列の整形処理を行うことができる。 As described above, input and output of input data can be repeated for each cycle while maintaining the word length. Since it can be designed in this way, it is possible to perform a data string shaping process without reducing the throughput.
大量のデータを処理する場合においても、必要な記憶領域を1ワード分の保存レジスタ3のみで構成することが可能である。
Even when a large amount of data is processed, a necessary storage area can be configured by only the
また、本装置は定められたワード長のままで処理するようにしているので、データ入力部から出力部に至る全ての回路において、同一のクロックにより作成することができる。これは本装置の実装を容易にする効果がある。 In addition, since this apparatus performs processing with a predetermined word length, all the circuits from the data input unit to the output unit can be created with the same clock. This has the effect of facilitating the implementation of the apparatus.
また、図3に示すように、本実施形態に出力イネーブル(OutputENABLE)を取り付けることも考えられる。これは本装置の後段の処理部分が出力レジスタ2の値を効率よく受取れる効果がある。
Further, as shown in FIG. 3, it is conceivable to attach an output enable (OutputENABLE) to this embodiment. This has the effect that the subsequent processing portion of the apparatus can efficiently receive the value of the
実施の形態2.
以上の実施形態1では、エスケープ文字のデコード処理を行うようにしたものであるが、次に重複するスペース(以下[SP])を1つにまとめる整形処理を行う場合に、これをワード単位で行う実施形態を示す。
In the first embodiment described above, the escape character decoding process is performed. When the shaping process that combines the following overlapping spaces (hereinafter referred to as [SP]) is performed, this is performed in units of words. An embodiment to perform is shown.
図4はこのような場合の本装置の実装形態である。本実装では、見つけるべき対象が[SP]であるため、D([SP])=1、D([SP]以外)=0である。また実施の形態1に、保存レジスタ3の上位8ビットのデコード回路6を取り付けることで、ワード境界に存在する[SP]どうしの消去を効率よく処理できるようにした。
FIG. 4 shows a mounting form of the apparatus in such a case. In this implementation, since the target to be found is [SP], D ([SP]) = 1 and D (other than [SP]) = 0. Further, by attaching the upper 8-
本実施形態に依り設計される組み合わせ回路5は、図5〜8に示す1次の有限状態機械により設計することが可能である。組み合わせ回路5における状態の初期値はS0である。
The
本実施形態においても、入力されたワード単位のデータはその長さのままで処理され出力される。 Also in this embodiment, the input word unit data is processed and output as it is.
また入力と出力はともに、同一のクロックで、かつ1サイクルで実現できるため、容易な実行が可能であるという効果がある。 Further, since both the input and output can be realized with the same clock and in one cycle, there is an effect that easy execution is possible.
実施の形態3.
以上の実施の形態2では、重複する[SP]を1つにまとめる整形処理を実施できるようにしたものであるが、次にバックスペース文字(以下[BS])やデリート文字(以下[DEL])のような、1つ前の文字を消去する文字を見つけ出し、一連の文字列全体を整形する実施形態を図6に示す。また、本実施形態に依り行われる処理の一例を図9に示す。
In the second embodiment described above, the shaping process for combining overlapping [SP] s into one can be performed. Next, backspace characters (hereinafter referred to as [BS]) and delete characters (hereinafter referred to as [DEL]). FIG. 6 shows an embodiment in which a character for erasing the previous character is found, and the entire series of character strings is shaped. An example of processing performed according to the present embodiment is shown in FIG.
実施例として、[BS]、[DEL]に因る文字列データの整形処理を述べる。ただし、図10に示すように、後に来た[BS]あるいは[DEL]を見なければ、どの文字が消えるのかを判断することは不可能である。 As an embodiment, a character string data shaping process based on [BS] and [DEL] will be described. However, as shown in FIG. 10, it is impossible to determine which character disappears without looking at the subsequent [BS] or [DEL].
そのため本実施形態では、前処理としてワード単位で逆順に入れ替えることを行う。これは文字の削除を正確に行うために必要である。 For this reason, in the present embodiment, reverse processing is performed in reverse order in units of words as preprocessing. This is necessary for accurate character deletion.
本実施の形態では、見つけるべき対象は[BS]、[DEL]であるため、D([BS])=1、D([DEL])=1、D(それ以外)=0である。本実施形態では、保存レジスタ3にいくつのバイトデータが保持されているかを示す、オフセット(Offset)を入力として持つ。図9の901にこれを表す。保存レジスタ3の内容は、出力レジスタ2を作成するために必要である。しかし、入力から出力までの処理を決定するためには、保存レジスタ3にどれほど格納されているかのみで十分である。そのため901は、出力値の作成を効率化する効果がある。
In this embodiment, since the objects to be found are [BS] and [DEL], D ([BS]) = 1, D ([DEL]) = 1, and D (others) = 0. In the present embodiment, an offset (Offset) indicating how many bytes of data are stored in the
また902は未処理の[BS]または[DEL]をカウントするためのカウンタである。903は加算器であり、入力時点の902と、整形処理で発生したBSカウント(Bscount)加算値とを用いて加算し、次のサイクルのBsカウンタの値とするものである。
本実施の形態に依り設計される組み合わせ回路5は、図11〜13で示された組み合わせ回路5として実現される。本実装形態においても、入力から出力に至る全ての処理部分においてワード長のままで処理されている。これは実装を容易にする効果がある。
The
また、クロックの各サイクルにおいて入力と出力が可能であり、データ転送バスと同じスループットで処理できる効果がある。 In addition, input and output are possible in each cycle of the clock, and there is an effect that processing can be performed with the same throughput as the data transfer bus.
以上のように、本発明の基本構成を用いれば、ワードストリーミング処理可能なデータ列整形装置を作成することが可能である。また実施形態は、平易な拡張のみで様々な整形処理に対応できるため、処理内容ごとに構成を見直す必要がない。入力から出力に至る全ての処理で同一のクロックであるため設計が容易である。入力及び出力は1サイクルで行うことが可能であるため、スループットを低下させることなくデータ列整形処理を行うことが可能となる。整形処理に特化して設計できるため、再利用が容易なモジュールを作成することが可能となる。また保存領域は1ワード分でよい。 As described above, by using the basic configuration of the present invention, it is possible to create a data string shaping device capable of word streaming processing. In addition, since the embodiment can deal with various shaping processes only by simple extension, it is not necessary to review the configuration for each processing content. Since the same clock is used for all processes from input to output, the design is easy. Since input and output can be performed in one cycle, the data string shaping process can be performed without reducing the throughput. Since it can be designed specifically for the shaping process, a module that can be easily reused can be created. The storage area may be one word.
1 入力レジスタ、2 出力レジスタ、3 保存レジスタ、4 デコーダ、5 組み合わせ回路、6 デコード回路、901 オフセット、902 Bsカウンタ、903 加算器。 1 input register, 2 output register, 3 storage register, 4 decoder, 5 combinational circuit, 6 decoding circuit, 901 offset, 902 Bs counter, 903 adder.
Claims (8)
(1)外部処理単位分の入力データを、内部処理単位群で入力する入力レジスタ
(2)外部処理単位分の出力データを、内部処理単位群で出力する出力レジスタ
(3)データ列整形処理途中の一時的なデータを、内部処理単位群で保存する保存レジスタ
(4)入力データの内部処理単位毎に特定コードであるかを評価し、内部処理単位毎の評価信号にデコード処理するデコーダ
(5)入力レジスタと、出力レジスタと、保存レジスタと、デコーダとに接続し、組み合わせ論理回路自身の状態と、前記内部処理単位の評価信号とに応じて、入力レジスタの内部処理単位群と、保存レジスタの内部処理単位群とのデータを、新たに保存レジスタの内部処理単位群と、出力レジスタの内部処理単位群とのデータに振り分け、組み合わせ論理回路自身の状態を遷移させる組み合わせ論理回路。 Data string shaping apparatus characterized by having the following elements: (1) Input register for inputting input data for external processing unit in internal processing unit group (2) Output data for external processing unit for internal processing unit Output register (3) output in group, temporary data in the middle of data string shaping process, save register in internal processing unit group (4) evaluate whether it is a specific code for each internal processing unit of input data, Decoder for decoding the evaluation signal for each internal processing unit (5) Connected to the input register, output register, storage register, and decoder, and to the state of the combinational logic circuit itself and the evaluation signal of the internal processing unit In response, the data of the internal processing unit group of the input register and the internal processing unit group of the storage register are newly processed. Sorting the data with the position group, a combination logic circuit for shifting the state of the combinational logic circuit itself.
入力レジスタは、内部処理単位群を4つ有し、
出力レジスタは、内部処理単位群を4つ有することを特徴とする請求項1記載のデータ列整形装置。 The external processing unit is a word unit, the internal processing unit is a byte unit,
The input register has four internal processing unit groups,
2. The data string shaping device according to claim 1, wherein the output register has four internal processing unit groups.
組み合わせ論理回路は、エスケープ文字のデコード処理を、ワードストリーミング処理として制御することを特徴とする請求項2記載のデータ列整形装置。 The decoder evaluates whether it is an escape character as a specific code,
3. The data string shaping device according to claim 2, wherein the combinational logic circuit controls the escape character decoding process as a word streaming process.
組み合わせ論理回路は、重複するスペースコードを1つにまとめる処理を、ワードストリーミング処理として制御することを特徴とする請求項4記載のデータ列整形装置。 The decoder evaluates whether the specific code is a space code,
5. The data string shaping device according to claim 4, wherein the combinational logic circuit controls a process of collecting overlapping space codes into one as a word streaming process.
入力データの入力時のカウンタの値と、データ列整形処理で発生した特定コードの数とを加算して、和の値をカウンタに格納させる加算器とを有することを特徴とする請求項2記載のデータ列整形装置。 A counter that stores the number of specific codes;
3. An adder for adding the value of the counter when inputting input data and the number of specific codes generated in the data string shaping process to store the sum value in the counter. Data string shaping device.
組み合わせ論理回路は、文字を消去する処理を、ワードストリーミング処理として制御することを特徴とする請求項7記載のデータ列整形装置。 The decoder evaluates whether it is a backspace character or a delete character as a specific code,
8. The data string shaping apparatus according to claim 7, wherein the combinational logic circuit controls the process of deleting characters as a word streaming process.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004062143A JP2005250951A (en) | 2004-03-05 | 2004-03-05 | Data column shaping device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004062143A JP2005250951A (en) | 2004-03-05 | 2004-03-05 | Data column shaping device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005250951A true JP2005250951A (en) | 2005-09-15 |
Family
ID=35031363
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004062143A Withdrawn JP2005250951A (en) | 2004-03-05 | 2004-03-05 | Data column shaping device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005250951A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007264872A (en) * | 2006-03-28 | 2007-10-11 | Mitsubishi Precision Co Ltd | Computer using synchronized stack memory and computer system |
-
2004
- 2004-03-05 JP JP2004062143A patent/JP2005250951A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007264872A (en) * | 2006-03-28 | 2007-10-11 | Mitsubishi Precision Co Ltd | Computer using synchronized stack memory and computer system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9866218B2 (en) | Boolean logic in a state machine lattice | |
JP6126127B2 (en) | Method and system for routing in a state machine | |
KR100638703B1 (en) | Cellular engine for a data processing system | |
CN107608750B (en) | Device for pattern recognition | |
JP6082753B2 (en) | Method and system for data analysis in a state machine | |
JP6106752B2 (en) | Result generation for state machine engines | |
US4899273A (en) | Circuit simulation method with clock event suppression for debugging LSI circuits | |
KR102165134B1 (en) | Methods and systems for using state vector data in a state machine engine | |
US20070255928A1 (en) | Processor | |
JP2001005675A (en) | Program converter and processor | |
JP2005250951A (en) | Data column shaping device | |
JP4586633B2 (en) | Decoder circuit, decoding method, and data recording apparatus | |
US20050256996A1 (en) | Register read circuit using the remainders of modulo of a register number by the number of register sub-banks | |
EP0936537B1 (en) | Cyclic redundancy check in a computer system | |
JP2009230591A (en) | Information processing device | |
Nunez‐Yanez et al. | Gigabyte per second streaming lossless data compression hardware based on a configurable variable-geometry CAM dictionary | |
US20080028192A1 (en) | Data processing apparatus, and data processing method | |
JPH11163736A (en) | Processor | |
US20060015704A1 (en) | Operation apparatus and instruction code executing method | |
JP3786329B2 (en) | Encoding / decoding device | |
JP2000278538A (en) | Device and method for arithmetic encoding/decoding | |
JP2006092158A (en) | Digital signal processing circuit | |
KR970012149A (en) | Series error correction decoder | |
JP2004246694A (en) | Data transfer method | |
JP2009278394A (en) | Message transmitting circuit and semiconductor integrated circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070605 |