JPH05249893A - Longitudinal/lateral transformation circuit - Google Patents
Longitudinal/lateral transformation circuitInfo
- Publication number
- JPH05249893A JPH05249893A JP4049864A JP4986492A JPH05249893A JP H05249893 A JPH05249893 A JP H05249893A JP 4049864 A JP4049864 A JP 4049864A JP 4986492 A JP4986492 A JP 4986492A JP H05249893 A JPH05249893 A JP H05249893A
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- data
- read
- circuit
- rows
- 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
Landscapes
- Storage Device Security (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、データの暗号化処理や
文字のパターン認識処理において、複数の固定長ビット
列で与えられる行列の行と列とを転置する縦横変換回路
に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a vertical / horizontal conversion circuit for transposing rows and columns of a matrix given by a plurality of fixed-length bit strings in data encryption processing and character pattern recognition processing.
【0002】[0002]
【従来の技術】データの暗号化方式には複数の固定長ビ
ット列で与えられ、かつ暗号化すべき情報を示す行列に
ついてその行と列とを単に転置する転置式暗号化方式が
あるが、このような暗号化方式は、特に、データの秘匿
性が強く要求されるデータ処理システムや通信システム
では、種々の暗号化方式と組合せて用いられる。2. Description of the Related Art As a data encryption method, there is a transpose encryption method in which a row and a column of a matrix given by a plurality of fixed-length bit strings and indicating information to be encrypted are simply transposed. Such an encryption method is used in combination with various encryption methods, especially in a data processing system or a communication system in which confidentiality of data is strongly required.
【0003】このように行列の行と列とを転置する処理
は縦横変換と呼ばれ、従来、ソフトウエアによってこれ
らの処理の全てを行う方法と、並列−直列変換を行うハ
ードウエアを用いて行う方法とが実現されていた。The process of transposing the rows and columns of a matrix in this way is called vertical / horizontal conversion, and is conventionally performed by using a method for performing all of these processes by software and hardware for performing parallel-serial conversion. The method and had been realized.
【0004】また、このような縦横変換が行われるシス
テムにもデータ処理速度の高速化や上述したハードウエ
アの小規模化が要求され、さらに、そのシステムの仕様
その他によってサイズが異なる複数の行列を対象とした
縦横変換処理が可能であることも要求される場合もあ
る。In addition, a system that performs such vertical / horizontal conversion is also required to have a high data processing speed and the above-mentioned hardware is downsized. Further, a plurality of matrices having different sizes depending on the specifications of the system and the like are provided. In some cases, it may be required that the target vertical / horizontal conversion processing can be performed.
【0005】図9は、ソフトウエアによる縦横変換処理
の手順を説明する図である。図において、変換処理の対
象となるデータ(以下、「被変換データ」という。)8
1は、8ビット長の8語(B11、B12、…、B18)、
(B21、B22、…、B 28)、…(B81、B82、…、
B88)からなる正方行列を一単位として与えられる。以
下では、簡単のため被変換データ81を構成する各語に
語番号n(=1〜8)を付加して示し、かつこれらの語
に含まれる各ビットにはLSB側から順に「1」〜
「8」で示すビット番号bを付加して示す。また、被変
換データ81に縦横変換処理を施して得られる変換出力
データ82については、そのデータを構成する各語に語
番号N(=1〜8)を付加して示し、かつこれらの語に
含まれる各ビットには、被変換データと同じビット番号
bを付与して示す。FIG. 9 shows a vertical / horizontal conversion process by software.
It is a figure explaining the procedure of. In the figure,
Elephant data (hereinafter referred to as "converted data") 8
1 is 8 words of 8 bit length (B11, B12, ..., B18),
(Btwenty one, Btwenty two, ..., B 28), ... (B81, B82, ...
B88) Is given as a square matrix. Since
Below, for simplification, each word that constitutes the converted data 81
The word number n (= 1 to 8) is added and shown, and these words
Each bit included in is sequentially from "1" from the LSB side.
The bit number b indicated by "8" is added. Also, change
Conversion output obtained by subjecting the converted data 81 to vertical / horizontal conversion processing
For the data 82, words are included in each word that composes the data.
Number N (= 1 to 8) is added and shown, and these words
Each included bit has the same bit number as the converted data
b is given and shown.
【0006】縦横変換処理を行う処理装置は、被変換デ
ータ81の第一語(B11、B12、…、B18)を取り込ん
で(図9(1))、所定のビットパターン「00000001」(以
下、「マスクパターン」という。)との論理積8311を
求める(図9(2))。さらに、処理装置は、被変換データ
81の第二語(B21、B22、…、B28)〜第八語
(B 81、B82、…、B88)について同様の論理積8312
〜8318を求め(図9(3) 〜(9))、かつそれらをそれぞ
れ(n−1)ビット左へシフトさせた値の論理和をとっ
て(図9(10))、その論理値を変換出力データ82の第
一語として所定のメモリに蓄積する(図9(11))。The processing device for performing the vertical / horizontal conversion processing is
First word of data 81 (B11, B12, ..., B18)
(FIG. 9 (1)), a predetermined bit pattern “00000001” (below
Below, it is called "mask pattern". ) AND 8311To
Calculate (Fig. 9 (2)). In addition, the processing device
81 second word (Btwenty one, Btwenty two, ..., B28) ~ 8th word
(B 81, B82, ..., B88) And the same logical product 8312
~ 8318(Figs. 9 (3) to (9)), and
And (n-1) bits are shifted to the left to obtain the logical sum.
(FIG. 9 (10)), the logical value is converted to the first value of the converted output data 82.
It is stored as a word in a predetermined memory (FIG. 9 (11)).
【0007】また、処理装置は、被変換データ81の各
語を(N−1)ビット右へシフトする処理を行った後
に、図9(2) 〜(10)に示す処理と同様の処理を反復して
論理和を求め、かつその論理値を変換出力データ82の
第二語〜第八語として同様にメモリ上に蓄積する。Further, the processing apparatus performs a process of shifting each word of the converted data 81 to the right by (N-1) bits, and then performs a process similar to the process shown in FIGS. The logical sum is repeatedly obtained, and the logical value is similarly stored in the memory as the second to eighth words of the converted output data 82.
【0008】図10は、縦横変換回路の構成例を示す図
である。図において、縦横変換回路を制御するマイクロ
プロセッサのデータバスは8ビット長のシフトレジスタ
9101〜9116、9201〜9216の並列入力Dataに
接続され、シフトレジスタ9101の直列出力Sout はシ
フトレジスタ9201の直列入力Sinに接続される。さら
に、添え番号(=02〜16)が同じシフトレジスタ91と
シフトレジスタ92とは、同様に直列に接続される。シ
フトレジスタ92 01〜9216の直列出力Sout は読み出
し制御回路93に接続され、その出力は上述したデータ
バスに接続される。マイクロプロセッサのアドレスバス
は読み出し制御回路93の選択入力SELおよびアドレ
スデコーダ94の入力に接続され、その出力はシフトレ
ジスタ9101〜9116、9201〜9216のロード端子L
oadに個別に接続される。シフトレジスタ9101〜9
116、9201〜9216のクロック端子CKにはクロック
WCKが与えられ、読み出し制御回路93にはマイクロ
プロセッサからリードイネーブル信号RENが与えられ
る。FIG. 10 is a diagram showing a configuration example of a vertical-horizontal conversion circuit.
Is. In the figure, the micro that controls the vertical-horizontal conversion circuit
The data bus of the processor is an 8-bit shift register
9101~ 9116, 9201~ 9216To parallel input Data
Connected, shift register 9101Serial output SoutIs
Shift register 9201Serial input SinConnected to. Furthermore
To the shift register 91 with the same subscript number (= 02 to 16)
Similarly, the shift register 92 is connected in series. Shi
Shift register 92 01~ 9216Serial output SoutIs read
Connected to the control circuit 93, the output of which is the data described above.
Connected to the bus. Microprocessor address bus
Is the selection input SEL and address of the read control circuit 93.
Connected to the input of the decoder 94 and its output
Dista 9101~ 9116, 9201~ 9216Load terminal L
Connected individually to oad. Shift register 9101~ 9
116, 9201~ 9216There is a clock at the clock terminal CK
WCK is applied, and the read control circuit 93 has a micro
Read enable signal REN is given from the processor
It
【0009】このような構成の縦横変換回路では、マイ
クロプロセッサは、被変換データを示す正方行列の第一
語〜第十六語をその語番号(=1〜16)と等しい添え番
号で示されるシフトレジスタ91、92に書き込んだ後
に、これらのシフトレジスタにクロックWCKを与え
る。参照番号に同じ添え番号が付加されたシフトレジス
タ91、92はそれぞれこのようなクロックWCKに応
じて書き込まれた語を右にシフトさせ、シフトレジスタ
9201〜9216は並行して直列出力Sout から読み出し
制御回路93にシフト出力を与える。読み出し制御回路
93はこのようにして並列に与えられる16ビット長の
各語を蓄積し、かつこのように蓄積された各語をマイク
ロプロセッサから与えられるリードイネーブル信号RE
Nに応じてデータバスに出力する。In the vertical / horizontal conversion circuit having such a configuration, the microprocessor indicates the first word to the sixteenth word of the square matrix indicating the data to be converted with a sub-number equal to the word number (= 1 to 16). After writing to the shift registers 91 and 92, the clock WCK is given to these shift registers. The shift registers 91 and 92 to which the same subscripts are added to the reference numbers respectively shift the written word to the right in response to such a clock WCK, and the shift registers 92 01 to 92 16 parallelly output the serial output S out. Provides a shift output to the read control circuit 93. The read control circuit 93 stores the 16-bit long words thus provided in parallel, and the read enable signal RE supplied from the microprocessor to the thus stored words.
Output to the data bus according to N.
【0010】このような動作はクロックWCKの16周
期にわたって反復して行われるので、マイクロプロセッ
サは、被変換データを縦横変換したデータを得ることが
できる。Since such an operation is repeated for 16 cycles of the clock WCK, the microprocessor can obtain the data obtained by vertically and horizontally converting the converted data.
【0011】[0011]
【発明が解決しようとする課題】ところで、上述したソ
フトウエアによる縦横変換方式では、処理装置は、被変
換データ81の各語を読み出してシフト演算および論理
積演算を行い、さらにその結果得られた複数の論理積の
論理和をとって変換出力データの各語を得る処理を反復
して行うために、処理量が大きくなって過負荷状態とな
る場合があった。By the way, in the above-described software vertical / horizontal conversion method, the processing device reads each word of the converted data 81, performs the shift operation and the logical product operation, and further obtains the result. Since the process of obtaining each word of the conversion output data by taking the logical sum of a plurality of logical products is repeatedly performed, the amount of processing becomes large, which may result in an overload state.
【0012】また、上述した縦横変換回路では、搭載す
べき8ビット長のシフトレジスタの個数は、被変換デー
タが語長が8ビットの正方行列で与えられる場合には
「8」であるが、語長が16ビットの場合には「3
2」、語長が32ビットの場合には「128」と語長の
8分の1の値の2乗に比例して大きな値となる。In the above-described vertical / horizontal conversion circuit, the number of 8-bit length shift registers to be mounted is "8" when the data to be converted is given as a square matrix having a word length of 8 bits. If the word length is 16 bits, "3
2 ", when the word length is 32 bits, it becomes a large value in proportion to the square of" 128 ", which is a value of 1/8 of the word length.
【0013】さらに、アドレスデコーダがデコードすべ
きビット数は上述した語長が二倍になる度に1ビット増
加し、かつ語長がマイクロプロセッサのデータバス長
(例えば、8ビット長)を超えると、変換出力データを
分割してマイクロプロセッサに取り込ませるために出力
段にセレクタ回路が必要であった。Further, the number of bits to be decoded by the address decoder increases by one bit each time the word length is doubled, and the word length exceeds the data bus length (for example, 8 bit length) of the microprocessor. , A selector circuit was required at the output stage in order to divide the converted output data and capture it in the microprocessor.
【0014】また、被変換データが、例えば、9ビット
×13語のように非正方行列で与えられる場合には、ハ
ードウエアについては、回路規模を低減するために語長
に応じてビット長の異なるシフトレジスタを組み合わせ
て構成する必要が生じ、ソフトウエアについては、非正
方行列を処理装置のデータバス長の整数倍の語で構成さ
れる正方行列に変換するために、シフトレジスタに被変
換データの各語を書き込む前に、例えば、上位ビットに
ダミービット「0」を付加し、かつ読み出し制御回路を
介して変換結果を取り込んだりその変換結果を処理する
ときに、付加されたダミービットを除去する処理が必要
であった。Further, when the data to be converted is given by a non-square matrix such as 9 bits × 13 words, the hardware has a bit length corresponding to the word length in order to reduce the circuit scale. It becomes necessary to configure different shift registers in combination, and for software, in order to convert a non-square matrix into a square matrix composed of words that are an integer multiple of the data bus length of the processing device, the data to be converted is stored in the shift register. Before writing each word of, for example, a dummy bit "0" is added to the upper bit, and the added dummy bit is removed when the conversion result is fetched or processed through the read control circuit. Processing was required.
【0015】さらに、サイズが異なる複数種類の行列で
与えられる非変換データを単一の縦横変換回路を用いて
切り替えて処理するには、その切り替えの対象となる非
変換データの数が多くなるほど回路が複雑となり、かつ
その規模が大きなものとなった。Further, in order to switch and process the non-converted data given by a plurality of types of matrixes having different sizes by using a single vertical-horizontal conversion circuit, the larger the number of the non-converted data to be switched, the more the circuit. Became complicated, and its scale became large.
【0016】本発明は、小規模の回路を用いて種々の構
成の非変換データに対応可能な縦横変換回路を提供する
ことを目的とする。An object of the present invention is to provide a vertical / horizontal conversion circuit capable of handling non-converted data of various configurations by using a small scale circuit.
【0017】[0017]
【課題を解決するための手段】図1は、請求項1に記載
の発明の原理ブロック図である。本発明は、複数のビッ
トを含む被変換行列の行と列とを転置する縦横変換回路
において、被変換行列を複数の同一次数の正方行列に分
割する分離手段11と、分割して得られた各正方行列の
行と列とを転置する転置手段13と、転置された各正方
行列を合成して被変換行列の転置行列を小行列として含
む行列を生成し、かつその小行列を抽出する合成手段1
5とを備えたことを特徴とする。FIG. 1 is a block diagram showing the principle of the invention described in claim 1. In FIG. The present invention is obtained by dividing in a vertical-horizontal conversion circuit that transposes the rows and columns of a matrix to be converted containing a plurality of bits, and a separating means 11 that divides the matrix to be transformed into a plurality of square matrices of the same degree. A transposing unit 13 that transposes the rows and columns of each square matrix, and a composite that transposes each square matrix to generate a matrix that includes the transposed matrix of the transformed matrix as a small matrix, and that extracts the small matrix. Means 1
And 5 are provided.
【0018】図2は、請求項2に記載の発明の原理ブロ
ック図である。本発明は、請求項1に記載の発明におい
て、被変換行列の行数と列数とに応じて分離手段11に
各正方行列に含まれる被変換行列の有効ビットを指定
し、かつ合成手段15に小行列の列数と行数とを指定す
る制御手段21を備えたことを特徴とする。FIG. 2 is a block diagram showing the principle of the invention described in claim 2. According to the present invention, in the invention described in claim 1, the effective bit of the transformed matrix included in each square matrix is specified in the separating means 11 according to the number of rows and the number of columns of the transformed matrix, and the combining means 15 Is provided with a control means 21 for designating the number of columns and the number of rows of the small matrix.
【0019】[0019]
【作用】請求項1に記載の発明では、分離手段11が被
変換行列を複数の正方行列に分割し、転置手段13が各
正方行列の行と列とを順次転置する。合成手段15は、
このように転置された各正方行列を合成して小行列とし
て被変換行列の転置行列を含む行列を生成し、かつその
小行列を抽出する。According to the first aspect of the invention, the separating means 11 divides the matrix to be transformed into a plurality of square matrices, and the transposing means 13 sequentially transposes the rows and columns of each square matrix. The synthesizing means 15 is
The square matrices thus transposed are combined to generate a matrix including the transposed matrix of the transformed matrix as a small matrix, and the small matrix is extracted.
【0020】すなわち、転置手段13が上述した正方行
列のサイズに応じた規模のハードウエアで実現可能であ
り、かつ縦横変換がその正方行列毎に分離して行われる
ので、ソフトウエアのみによって同様の縦横変換処理を
行う方式に比べて処理速度が向上し、かつ被変換行列の
行数や列数が大きい場合にも小規模のハードウエアを用
いて縦横変換回路が実現できる。That is, the transposing means 13 can be realized by hardware having a scale corresponding to the size of the above-mentioned square matrix, and since the vertical and horizontal conversions are separately performed for each square matrix, the same software is used. The processing speed is improved as compared with the method of performing the vertical / horizontal conversion processing, and the vertical / horizontal conversion circuit can be realized by using small-scale hardware even when the number of rows and columns of the matrix to be converted is large.
【0021】請求項2に記載の発明では、制御手段21
が、被変換行列の行数と列数とに応じて分離手段11に
各正方行列に含む被変換行列の有効ビットを指定し、か
つ合成手段15に小行列の列数と行数とを指定するの
で、分離手段11および合成手段15は制御手段21の
制御の下に行数や列数が異なる被変換行列に適合して動
作する。In the second aspect of the invention, the control means 21
Depending on the number of rows and the number of columns of the transformed matrix, specify the effective bits of the transformed matrix included in each square matrix to the separating means 11, and specify the number of columns and the number of rows of the small matrix to the synthesizing means 15. Therefore, the separating means 11 and the synthesizing means 15 operate under the control of the control means 21 in conformity with the transformed matrix having different numbers of rows and columns.
【0022】[0022]
【実施例】以下、図面に基づいて本発明の実施例につい
て詳細に説明する。図3は、本発明の一実施例を示す図
である。Embodiments of the present invention will now be described in detail with reference to the drawings. FIG. 3 is a diagram showing an embodiment of the present invention.
【0023】図において、バッファ回路31は、記憶素
子としてFIFOを備え、かつ8ビットの出力バスを介
して分離・合成回路32の入力に接続される。さらに、
バッファ回路31は8ビットの入力バスを介して分離・
合成回路32の出力に接続され、分離・合成回路32の
制御端子はバッファ回路31の制御端子に接続される。
分離・合成回路32およびバッファ回路31はデータバ
スを介してマイクロプロセッサ(CPU)34に接続さ
れ、さらに、そのデータバスはシフトレジスタ(SR)
351 〜358 の並列入力D、読み出し制御回路36の
出力およびランダムアクセスメモリ(RAM)37に接
続される。シフトレジスタ351 〜35 8 の直列出力は
読み出し制御回路36に接続される。なお、バッファ回
路31は、分離・合成回路32およびマイクロプロセッ
サ34の何れからも上述したFIFOに対するアクセス
を可能とするバス制御回路を有する。In the figure, a buffer circuit 31 is a storage element.
With a FIFO as a child and via an 8-bit output bus
And is connected to the input of the separation / synthesis circuit 32. further,
The buffer circuit 31 is separated via an 8-bit input bus.
It is connected to the output of the synthesis circuit 32 and
The control terminal is connected to the control terminal of the buffer circuit 31.
The separation / synthesis circuit 32 and the buffer circuit 31 are data buffers.
Connected to a microprocessor (CPU) 34 via
In addition, the data bus is a shift register (SR)
351~ 358Parallel input D of the read control circuit 36
Connects to output and random access memory (RAM) 37
Will be continued. Shift register 351~ 35 8The serial output of
It is connected to the read control circuit 36. In addition, buffer times
The path 31 includes a separation / synthesis circuit 32 and a microprocessor.
Access to the above-mentioned FIFO from any of the servers 34
It has a bus control circuit that enables
【0024】マイクロプロセッサ34のアドレスバス
は、ランダムアクセスメモリ37およびアドレスデコー
ダ38に接続され、アドレスデコーダ38から出力され
る8本のデコード出力はそれぞれシフトレジスタ351
〜358 のロード端子Lに接続される。マイクロプロセ
ッサ34の制御端子は書き込み制御回路39に接続さ
れ、その出力は読み出し制御回路36のリードイネーブ
ル端子REと、シフトレジスタ351 〜358 のクロッ
ク端子CKとに接続される。The address bus of the microprocessor 34 is connected to a random access memory 37 and an address decoder 38, and the eight decode outputs output from the address decoder 38 are respectively shift registers 35 1
It will be connected to a load terminal L of 35 8. The control terminal of the microprocessor 34 is connected to the write control circuit 39, and its output is connected to the read enable terminal RE of the read control circuit 36 and the clock terminals CK of the shift registers 35 1 to 35 8 .
【0025】マイクロプロセッサ34の出力端子はテー
ブルROM40の上位アドレス入力と、読み出し書き込
み制御回路41とに接続される。テーブルROM40の
8ビット長の並列データ出力の内、下位3ビットNRは
読み出しビット長カウンタ42の並列入力に接続され、
さらに隣接する3ビットNWは書き込みビット長カウン
タ43の並列入力に接続され、残りの2ビットEND、
Eは読み出し書き込み制御回路41に接続される。読み
出しビット長カウンタ42および書き込みビット長カウ
ンタ43のクロック端子にはマスタクロックMCLKが
与えられ、これらのビット長カウンタのキャリー出力お
よびロードイネーブル制御端子は読み出し書き込み制御
回路41に接続される。読み出し書き込み制御回路41
の読み出し制御端子と書き込み制御端子とは、分離・合
成回路32に接続される。さらに、読み出し書き込み制
御回路41の制御出力は命令カウンタ44に接続され、
その出力はテーブルROM40の下位アドレス入力に接
続される。The output terminal of the microprocessor 34 is connected to the upper address input of the table ROM 40 and the read / write control circuit 41. Of the 8-bit parallel data output of the table ROM 40, the lower 3 bits NR are connected to the parallel input of the read bit length counter 42,
The adjacent 3 bits NW are connected to the parallel input of the write bit length counter 43, and the remaining 2 bits END,
E is connected to the read / write control circuit 41. The master clock MCLK is applied to the clock terminals of the read bit length counter 42 and the write bit length counter 43, and the carry output and load enable control terminal of these bit length counters are connected to the read / write control circuit 41. Read / write control circuit 41
The read control terminal and the write control terminal are connected to the separation / combination circuit 32. Further, the control output of the read / write control circuit 41 is connected to the instruction counter 44,
Its output is connected to the lower address input of the table ROM 40.
【0026】なお、本実施例と図1および図2に示すブ
ロック図との対応関係については、分離・合成回路32
は分離手段11および合成手段15に対応し、書き込み
制御回路39、アドレスデコーダ38、シフトレジスタ
35、読み出し制御回路36およびランダムアクセスメ
モリ37は転置手段13に対応し、読み出し書き込み制
御回路41、読み出しビット長カウンタ42、書き込み
ビット長カウンタ43、命令カウンタ44およびテーブ
ルROM40は制御手段21に対応する。The correspondence between this embodiment and the block diagrams shown in FIG. 1 and FIG. 2 is as follows.
Corresponds to the separating means 11 and the synthesizing means 15, the write control circuit 39, the address decoder 38, the shift register 35, the read control circuit 36 and the random access memory 37 correspond to the transposing means 13, and the read / write control circuit 41 and the read bit. The length counter 42, the write bit length counter 43, the instruction counter 44 and the table ROM 40 correspond to the control means 21.
【0027】図4は、テーブルROMのアドレッシング
を説明する図である。図5は、テーブルROMに格納さ
れる制御語の構成を示す図である。以下、図3〜図5を
参照して本実施例の動作を説明する。FIG. 4 is a diagram for explaining the addressing of the table ROM. FIG. 5 is a diagram showing the structure of control words stored in the table ROM. The operation of this embodiment will be described below with reference to FIGS.
【0028】マイクロプロセッサ34は、データバスを
介してバッファ回路31に設けられたFIFOに被変換
データを書き込む。バッファ回路31は、このようにし
て与えられた被変換データを出力バスを介して分離・合
成回路32に与える。マイクロプロセッサ34は、この
ような被変換データのサイズ(語長(行)および語数
(列))に応じて縦横変換のモードを決定し、かつそのモ
ードを示すモード指定情報mをテーブルROM40に与
える。The microprocessor 34 writes the data to be converted into the FIFO provided in the buffer circuit 31 via the data bus. The buffer circuit 31 provides the converted data thus provided to the separating / combining circuit 32 via the output bus. The microprocessor 34 determines the mode of vertical / horizontal conversion according to the size of such data to be converted (word length (row) and number of words (column)), and gives the mode specifying information m indicating the mode to the table ROM 40. ..
【0029】テーブルROM40には、図4に示すよう
に、例えば、モード指定情報mが7ビット長の2進数で
与えられ、かつ命令カウンタ44から与えられる下位ア
ドレスiが6ビット長の2進数で与えられる場合には、
隣接する記憶領域に格納された64(=26)語から構成
されたプログラム領域510 〜51127 が、モード指定
情報m(=0〜127(=27−1))にそれぞれ対応して設け
られる。In the table ROM 40, as shown in FIG. 4, for example, the mode designation information m is given as a 7-bit binary number, and the lower address i given from the instruction counter 44 is given as a 6-bit binary number. If given,
The program areas 51 0 to 51 127 composed of 64 (= 2 6 ) words stored in the adjacent storage areas respectively correspond to the mode designation information m (= 0 to 127 (= 2 7 −1)). It is provided.
【0030】また、これらのプログラム領域に格納され
る全ての制御語は共通の形式で設定され、その内容は、
図5に示すように、LSB側から順に3ビット長の読み
出しビット長NR、3ビット長の書き込みビット長N
W、1ビットの最終バイト指令Eおよび1ビットの処理
停止指令ENDから構成される。ここに、読み出しビッ
ト長NRおよび書き込みビット長NWには、読み出しビ
ット長カウンタ42および書き込みビット長カウンタ4
3をアップカウンタを用いて構成するために、指定すべ
きビット長(=1〜8)が「8」の補数で設定される。
最終バイト指令Eには、縦横変換処理の単位を8バイト
毎とし、かつその第8バイトを示すためにテーブルRO
M40上では隣接する8語毎に論理「1」が設定され
る。Further, all control words stored in these program areas are set in a common format, and their contents are
As shown in FIG. 5, a read bit length NR of 3 bit length and a write bit length N of 3 bit length are sequentially provided from the LSB side.
W is composed of a 1-bit final byte command E and a 1-bit processing stop command END. Here, the read bit length NR and the write bit length NW are the read bit length counter 42 and the write bit length counter 4, respectively.
In order to configure 3 using the up counter, the bit length (= 1 to 8) to be designated is set in the complement of "8".
In the final byte command E, the unit of the vertical / horizontal conversion process is every 8 bytes, and the table RO is used to indicate the 8th byte.
A logic "1" is set for every eight adjacent words on M40.
【0031】マイクロプロセッサ34は、上述したモー
ド指定情報mを出力した後に読み出し書き込み制御回路
41に起動指令を発する。読み出し書き込み制御回路4
1はその指令に応じて命令カウンタ44を初期設定する
ので、そのカウント値は「0」に設定される。テーブル
ROM40は、図4に示すように、その読み出しアドレ
スがモード指定情報mおよび命令カウンタ44のカウン
ト値i(=0〜63)によって与えられ、そのアドレスで
示される領域に予め格納された制御語52を出力する
(図6)。The microprocessor 34 issues a start command to the read / write control circuit 41 after outputting the above-mentioned mode designation information m. Read / write control circuit 4
Since 1 initializes the instruction counter 44 in response to the command, the count value is set to "0". As shown in FIG. 4, the table ROM 40 has its read address given by the mode designation information m and the count value i (= 0 to 63) of the instruction counter 44, and the control word stored in advance in the area indicated by the address. 52 is output (FIG. 6).
【0032】さらに、読み出し書き込み制御回路41
は、読み出しビット長カウンタ42と書き込みビット長
カウンタ43とにロードイネーブル制御信号を送出し、
かつ分離・合成回路32にリードイネーブル信号REN
とライトイネーブル信号WENとを与える。読み出しビ
ット長カウンタ42は、このようなロードイネーブル制
御信号に応じて制御語52に含まれる読み出しビット長
NRを初期値として設定し、かつマスタクロックMCL
Kに同期してカウント動作を行う。分離・合成回路32
は、リードイネーブル信号RENに応じてバッファ回路
31から出力バスを介して被変換データを取り込み、か
つその被変換データをマスタクロックMCLKに応じて
並−直列変換してその変換出力を再び並列データとして
保持する。Further, the read / write control circuit 41
Sends a load enable control signal to the read bit length counter 42 and the write bit length counter 43,
The read enable signal REN is sent to the separation / synthesis circuit 32.
And a write enable signal WEN. The read bit length counter 42 sets the read bit length NR included in the control word 52 as an initial value in accordance with such a load enable control signal, and the master clock MCL.
The counting operation is performed in synchronization with K. Separation / synthesis circuit 32
Converts the converted data from the buffer circuit 31 via the output bus according to the read enable signal REN, converts the converted data from parallel to serial according to the master clock MCLK, and converts the converted output into parallel data again. Hold.
【0033】このような並−直列変換の処理過程では、
読み出しビット長NRで示されるビット長が「8」であ
る場合には、分離・合成回路32は、与えられた8ビッ
ト長の被変換データをそのまま並列データとして保持す
る単位分離処理を行う。In the process of such parallel-serial conversion,
When the bit length indicated by the read bit length NR is “8”, the separation / combination circuit 32 performs unit separation processing in which the supplied 8-bit-length converted data is held as parallel data as it is.
【0034】しかし、読み出しビット長NRで示される
ビット長が「8」未満である場合には、読み出し書き込
み制御回路41は、読み出しビット長カウンタ42から
与えられるキャリー信号に応じてリードイネーブル信号
RENを取り下げる(図6)。分離・合成回路32
は、このようにリードイネーブル信号RENが取り下げ
られた状態では、図6および図7(a) に示すように、
直−並列変換出力の後半部分にリードイネーブル信号R
ENによって読み出された最後のビットデータをダミー
ビットとして付加する。However, when the bit length indicated by the read bit length NR is less than “8”, the read / write control circuit 41 outputs the read enable signal REN according to the carry signal given from the read bit length counter 42. Withdraw (Figure 6). Separation / synthesis circuit 32
In the state where the read enable signal REN is withdrawn in this way, as shown in FIGS. 6 and 7 (a),
A read enable signal R is applied to the latter half of the serial-parallel conversion output.
The last bit data read by EN is added as a dummy bit.
【0035】このように分離・合成回路32は、被変換
データの語長に対応した制御語に設定された数のダミー
ビットを付加し、かつ見掛け上の語長を8ビットに設定
してバッファ回路31に格納する単位分離処理を行う。In this way, the separation / synthesis circuit 32 adds the number of dummy bits set in the control word corresponding to the word length of the converted data, sets the apparent word length to 8 bits, and buffers it. A unit separation process for storing in the circuit 31 is performed.
【0036】このような処理は、被変換データの語長が
8ビットより大きい場合には、分離・合成回路32がテ
ーブルROM40から与えられる制御語の指定に基づい
て被変換データの各語を複数バイトに分割し、かつその
分割の結果得られる8行×8列の各行列毎に行われる。
また、その処理の過程では、読み出し書き込み制御回路
41は、上述した単位分離処理を反復しながら各制御語
に含まれる最終バイト指令Eおよび処理停止指令END
の論理値を検査し、最終バイト指令Eの論理値が「1」
であると8バイト単位の処理が終了したことを認識す
る。また、読み出し書き込み制御回路41は、処理終了
指令ENDの論理値が「1」であると割り込み信号を発
して上述した処理の終了をマイクロプロセッサ34に通
知する。なお、以下では、このように被変換データを単
一または複数の正方行列に変換する処理を分離処理とい
う。In such a processing, when the word length of the converted data is larger than 8 bits, the separation / synthesis circuit 32 makes a plurality of words of the converted data based on the designation of the control word given from the table ROM 40. This is performed for each matrix of 8 rows × 8 columns obtained by dividing the data into bytes.
Further, in the process of the processing, the read / write control circuit 41 repeats the above-described unit separation processing and the final byte command E and the processing stop command END included in each control word.
Of the last byte command E is "1"
If it is, it is recognized that the processing in units of 8 bytes is completed. Further, the read / write control circuit 41 issues an interrupt signal when the logical value of the processing end instruction END is “1” to notify the microprocessor 34 of the end of the above-described processing. Note that, hereinafter, the process of converting the converted data into a single or a plurality of square matrices in this way is referred to as a separation process.
【0037】マイクロプロセッサ34は上述した割り込
み信号に応じて縦横変換処理を開始するが、その縦横変
換処理では、マイクロプロセッサ34は、処理対象の正
方行列に含まれる第一バイト(行)〜第八バイト(行)
をそれぞれバッファ回路31から読み出してシフトレジ
スタ351 〜358 に書き込み、かつ書き込み制御回路
39を介してこれらのシフトレジスタのシフト動作を起
動する。マイクロプロセッサ34は、このようなシフト
動作と同期して、読み出し制御回路36を介してシフト
レジスタ351 〜358 の直列出力から並行して得られ
る8ビットを取り込み、かつランダムアクセスメモリ3
7の所定領域に格納するので、上述した正方行列単位の
縦横変換が行われる。The microprocessor 34 starts the vertical / horizontal conversion processing in response to the above-described interrupt signal. In the vertical / horizontal conversion processing, the microprocessor 34 includes the first byte (row) to the eighth byte included in the square matrix to be processed. Byte (row)
Each write to the shift register 35 1 to 35 8 are read from the buffer circuit 31, and starts the shift operation of the shift registers via the write control circuit 39. In synchronization with such a shift operation, the microprocessor 34 fetches 8 bits obtained in parallel from the serial outputs of the shift registers 35 1 to 35 8 via the read control circuit 36, and the random access memory 3
Since the data is stored in a predetermined area of No. 7, the above-mentioned vertical / horizontal conversion is performed in square matrix units.
【0038】マイクロプロセッサ34は、全ての正方行
列について上述した縦横変換処理を完了すると、その処
理結果をデータバスを介してバッファ回路31に直接書
き込み、かつテーブルROM40に上述したモード指定
情報mを継続して与える。さらに、マイクロプロセッサ
34は、読み出し書き込み制御回路41に起動指令を発
する。Upon completion of the above-described vertical / horizontal conversion processing for all square matrices, the microprocessor 34 directly writes the processing result to the buffer circuit 31 via the data bus and continues the above-mentioned mode designation information m in the table ROM 40. And give. Further, the microprocessor 34 issues a start command to the read / write control circuit 41.
【0039】読み出し書き込み制御回路41は、その指
令に応じて分離・合成回路32に上述した分離処理と同
様の動作を起動させ(図8)、かつその動作をテーブ
ルROM40に予め格納された制御語に基づき制御す
る。In response to the command, the read / write control circuit 41 causes the separation / synthesis circuit 32 to start an operation similar to the above-described separation processing (FIG. 8), and the operation is a control word stored in the table ROM 40 in advance. Control based on.
【0040】このような制御の下で分離・合成回路32
が行う処理(以下、「単位合成処理」という。)では、
テーブルROM40上から与えられる制御語に含まれる
読み出しビット長NRと書き込みビット長NWとが上述
した分離処理と逆転した大小関係の下に設定されるの
で、読み出し書き込み制御回路41はリードイネーブル
信号RENに先行してライトイネーブル信号WENを取
り下げる(図8)。Under such control, the separation / synthesis circuit 32
In the processing (hereinafter, referred to as “unit combining processing”) performed by
Since the read bit length NR and the write bit length NW included in the control word given from the table ROM 40 are set in a magnitude relationship that is the reverse of the above-described separation processing, the read / write control circuit 41 outputs the read enable signal REN. The write enable signal WEN is withdrawn in advance (FIG. 8).
【0041】したがって、分離・合成回路32は、図7
(b) に示すように、縦横変換されてバッファ回路31に
格納された各バイトについて、その後半部分に付加され
た無効なダミービット(非書き込みビット)(図8)
を削除してバッファ回路31に格納する合成処理を行
う。また、マイクロプロセッサ34は、テーブルROM
40の制御語に含まれる論理「1」の処理停止命令EN
Dに応じて書き込み読み出し制御回路41が出力する割
り込み信号に応じて、合成処理の終了を認識する。Therefore, the separating / combining circuit 32 is configured as shown in FIG.
As shown in (b), the invalid dummy bit (non-write bit) added to the latter half of each byte stored in the buffer circuit 31 after being vertically / horizontally converted (FIG. 8).
Is deleted and stored in the buffer circuit 31. Further, the microprocessor 34 is a table ROM
Process stop command EN of logic "1" included in 40 control words
In response to the interrupt signal output from the write / read control circuit 41 in response to D, the end of the combining process is recognized.
【0042】このように本実施例によれば、予め想定さ
れる被変換データの形式に応じた制御語をテーブルRO
Mに格納しておくことにより、被変換データの語長が上
述した正方行列と異なった値であったり切り替えて設定
される場合や、その被変換データが非正方行列で与えら
れる場合にも容易に対応して縦横変換を行うことができ
る。As described above, according to this embodiment, the control word corresponding to the format of the data to be converted which is assumed in advance is stored in the table RO.
By storing in M, the word length of the converted data can be set to a value different from the square matrix described above, or can be set by switching, or even if the converted data is given as a non-square matrix. Aspect conversion can be performed according to.
【0043】また、縦横変換処理は上述した正方行列毎
に分割して行われるので、被変換データの形式にかかわ
らずハードウエアの規模が一定であり、特に、被変換デ
ータの語長が大きな場合には回路規模が大幅に低減され
る。Further, since the vertical / horizontal conversion processing is performed by dividing the above-mentioned square matrix, the scale of the hardware is constant regardless of the format of the converted data, and especially when the word length of the converted data is large. The circuit scale is greatly reduced.
【0044】さらに、本実施例では、縦横変換の主要な
処理がハードウエアを用いて行われるので、ソフトウエ
アのみの処理で縦横変換を行う方式に比べて変換所要時
間が短縮される。Further, in the present embodiment, since the main processing of vertical / horizontal conversion is performed by using hardware, the required conversion time is shortened as compared with the system in which the vertical / horizontal conversion is performed by only software processing.
【0045】なお、本実施例では、8ビット長を超える
語長の被変換データが各語毎に連続してバッファ回路3
1から与えられる例を示したが、本発明は、このような
被変換データの入力方法に限定されず、例えば、被変換
データがこれを分割して得られる個々の正方行列毎に分
離して与えられる場合にも同様に適用可能である。In the present embodiment, the converted data having a word length of more than 8 bits is continuously formed for each word in the buffer circuit 3.
However, the present invention is not limited to such an input method of the converted data, and for example, the converted data is separated for each square matrix obtained by dividing the converted data. The same is applicable when given.
【0046】また、本実施例では、テーブルROM40
に格納される制御語は単位分離処理あるいは単位合成処
理毎に対応した1語が与えられているが、本発明は、こ
のような制御語に限定されず、例えば、被変換データを
分割して得られた正方行列毎に書き込みビット長NWお
よび読み出しビット長NRの合計値(8ビットの整数倍
でない場合には、その端数を含む。)で示するものであ
ってもよい。Further, in this embodiment, the table ROM 40
The control word stored in is given as one word corresponding to each unit separation process or unit synthesis process, but the present invention is not limited to such a control word, and for example, by dividing the converted data. It may be indicated by the total value of the write bit length NW and the read bit length NR for each obtained square matrix (including the fraction if it is not an integral multiple of 8 bits).
【0047】さらに、本実施例では、被変換データの行
数と列数とが「8」の整数倍でない場合には、分離処理
の過程でダミービットを付加して正方行列を得ている
が、本発明は、そのダミービットの論理値に限定され
ず、例えば、そのダミービットが合成処理の過程で確実
に除去できるならば、ダミービットとして論理値「0」
や「1」の固定のビットを設定したり、特定のビットパ
ターンを設定してもよい。Further, in the present embodiment, when the number of rows and the number of columns of the converted data are not integer multiples of "8", dummy bits are added in the process of separation to obtain a square matrix. The present invention is not limited to the logical value of the dummy bit. For example, if the dummy bit can be reliably removed in the course of the combining process, the logical value of the dummy bit is "0".
Alternatively, a fixed bit of "1" may be set, or a specific bit pattern may be set.
【0048】[0048]
【発明の効果】以上説明したように本発明は、被変換行
列の行数および列数に応じてその行列を複数の正方行列
に分割し、かつその正方行列毎に転置してその結果を合
成することにより被変換行列の転置行列を得る。As described above, according to the present invention, the matrix is divided into a plurality of square matrices according to the number of rows and columns of the matrix to be transformed, and the square matrix is transposed and the result is synthesized. By doing so, the transposed matrix of the transformed matrix is obtained.
【0049】すなわち、縦横変換が分割して行われるの
で、被変換行列のサイズが大きい場合にも小さな規模の
回路を用いて縦横変換回路が実現される。また、非正方
行列その他の種々のサイズの被変換行列にも制御手段の
制御の下で容易に対応することができるので、縦横変換
回路の性能が高められ、かつハードウエアの標準化が可
能となる。That is, since the vertical / horizontal conversion is performed separately, the vertical / horizontal conversion circuit can be realized by using a circuit of a small scale even when the size of the matrix to be converted is large. Further, since non-square matrix and other converted matrices of various sizes can be easily dealt with under the control of the control means, the performance of the vertical-horizontal conversion circuit can be improved and the standardization of hardware becomes possible. ..
【図1】請求項1に記載の発明の原理ブロック図であ
る。FIG. 1 is a principle block diagram of the invention according to claim 1.
【図2】請求項2に記載の発明の原理ブロック図であ
る。FIG. 2 is a principle block diagram of the invention described in claim 2.
【図3】本発明の一実施例を示す図である。FIG. 3 is a diagram showing an embodiment of the present invention.
【図4】テーブルROMのアドレッシングを説明する図
である。FIG. 4 is a diagram illustrating addressing of a table ROM.
【図5】テーブルROMに格納される制御語の構成を示
す図である。FIG. 5 is a diagram showing a structure of a control word stored in a table ROM.
【図6】分離処理の動作タイミングチャートである。FIG. 6 is an operation timing chart of separation processing.
【図7】分離・合成処理の入出力データの対応関係を説
明する図である。FIG. 7 is a diagram illustrating a correspondence relationship between input / output data of separation / synthesis processing.
【図8】合成処理の動作タイミングチャートである。FIG. 8 is an operation timing chart of synthesis processing.
【図9】ソフトウエアによる縦横変換処理の手順を説明
する図である。FIG. 9 is a diagram illustrating a procedure of vertical / horizontal conversion processing by software.
【図10】縦横変換回路の構成例を示す図である。FIG. 10 is a diagram showing a configuration example of a vertical-horizontal conversion circuit.
11 分離手段 13 転置手段 15 合成手段 21 制御手段 31 バッファ回路 32 分離・合成回路 34 マイクロプロセッサ(CPU) 35,91,92 シフトレジスタ(SR) 36,93 読み出し制御回路 37 ランダムアクセスメモリ(RAM) 38,94 アドレスデコーダ 39 書き込み制御回路 40 テーブルROM 41 読み出し書き込み制御回路 42 読み出しビット長カウンタ 43 書き込みビット長カウンタ 44 命令カウンタ 51 プログラム領域 52 制御語 81 被変換データ 82 変換出力データ 83 論理積 11 Separation Means 13 Transposition Means 15 Composing Means 21 Control Means 31 Buffer Circuits 32 Separation / Combining Circuits 34 Microprocessors (CPU) 35, 91, 92 Shift Registers (SR) 36, 93 Read Control Circuits 37 Random Access Memory (RAM) 38 , 94 address decoder 39 write control circuit 40 table ROM 41 read / write control circuit 42 read bit length counter 43 write bit length counter 44 instruction counter 51 program area 52 control word 81 converted data 82 converted output data 83 logical product
Claims (2)
とを転置する縦横変換回路において、 前記被変換行列を複数の同一次数の正方行列に分割する
分離手段(11)と、 前記分割して得られた各正方行列の行と列とを転置する
転置手段(13)と、 前記転置された各正方行列を合成して前記被変換行列の
転置行列を小行列として含む行列を生成し、かつその小
行列を抽出する合成手段(15)とを備えたことを特徴
とする縦横変換回路。1. A vertical / horizontal conversion circuit that transposes rows and columns of a matrix to be converted including a plurality of bits, and a separation means (11) for dividing the matrix to be converted into a plurality of square matrices of the same degree; Transposing means (13) for transposing the row and column of each square matrix obtained by the above, and each transposed square matrix are synthesized to generate a matrix including the transposed matrix of the transformed matrix as a small matrix. And a synthesizing means (15) for extracting the small matrix, and a vertical-horizontal conversion circuit.
各正方行列に含まれる被変換行列の有効ビットを指定
し、かつ合成手段(15)に小行列の列数と行数とを指
定する制御手段(21)を備えたことを特徴とする縦横
変換回路。2. The invention according to claim 1, wherein the separating means (11) designates the effective bits of the transformed matrix included in each square matrix according to the number of rows and the number of columns of the transformed matrix, and A vertical-horizontal conversion circuit, characterized in that the synthesizing means (15) is provided with a control means (21) for designating the number of columns and the number of rows of a small matrix.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4049864A JPH05249893A (en) | 1992-03-06 | 1992-03-06 | Longitudinal/lateral transformation circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4049864A JPH05249893A (en) | 1992-03-06 | 1992-03-06 | Longitudinal/lateral transformation circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05249893A true JPH05249893A (en) | 1993-09-28 |
Family
ID=12842922
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4049864A Withdrawn JPH05249893A (en) | 1992-03-06 | 1992-03-06 | Longitudinal/lateral transformation circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05249893A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001265713A (en) * | 1999-12-15 | 2001-09-28 | St Microelectronics Sa | Safe transfer method for data |
-
1992
- 1992-03-06 JP JP4049864A patent/JPH05249893A/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001265713A (en) * | 1999-12-15 | 2001-09-28 | St Microelectronics Sa | Safe transfer method for data |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6252392B2 (en) | ||
JPH08179690A (en) | Product encoding device | |
US4152697A (en) | Parallel run-length decoder | |
JPH05249893A (en) | Longitudinal/lateral transformation circuit | |
JPH05100946A (en) | Semiconductor memory | |
JP2997613B2 (en) | Discrete cosine transformer | |
JP2003098960A (en) | Crystograph decoding device | |
US4325056A (en) | BCD To binary converter | |
US5671169A (en) | Apparatus for two-dimensional inverse discrete cosine transform | |
JP2003143120A (en) | Data randomizing circuit and method | |
JPH05161094A (en) | Programmable device for storing digital video line | |
JPH06334869A (en) | Data transposition device | |
JP2504582B2 (en) | Matrix scan circuit | |
JP2662114B2 (en) | Image data boundary processing device | |
JPH0644051A (en) | Microcomputer | |
JPS61262368A (en) | Reducing system for picture information | |
JPH0442874Y2 (en) | ||
JPH079572B2 (en) | Vertical / horizontal conversion device for pattern data | |
KR920008274B1 (en) | 16/256 color switching apparatus | |
JPH1153345A (en) | Data processor | |
JPH0625911B2 (en) | Data converter | |
JPS623323A (en) | Conversion system for data format | |
JPH04335394A (en) | Font data compression system | |
JPH04373082A (en) | Character generator | |
JPH05265442A (en) | Image processor |
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: 19990518 |