JP3103913B2 - Barrel shifter - Google Patents

Barrel shifter

Info

Publication number
JP3103913B2
JP3103913B2 JP04215222A JP21522292A JP3103913B2 JP 3103913 B2 JP3103913 B2 JP 3103913B2 JP 04215222 A JP04215222 A JP 04215222A JP 21522292 A JP21522292 A JP 21522292A JP 3103913 B2 JP3103913 B2 JP 3103913B2
Authority
JP
Japan
Prior art keywords
input
output
selector
column
sel
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
JP04215222A
Other languages
Japanese (ja)
Other versions
JPH0661868A (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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP04215222A priority Critical patent/JP3103913B2/en
Publication of JPH0661868A publication Critical patent/JPH0661868A/en
Application granted granted Critical
Publication of JP3103913B2 publication Critical patent/JP3103913B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、バレルシフタに関し、
例えば可変長符号化されたデータを復号化する復号装置
等に用いられるバレルシフタに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a barrel shifter,
For example, the present invention relates to a barrel shifter used for a decoding device that decodes variable-length encoded data.

【0002】[0002]

【従来の技術】バレルシフタは、入力されるデータを一
回の動作により、所望のビット数分シフトするものであ
り、例えば電子計算機の乗算器や、可変長符号化された
データを復号化する復号装置等に用いられる。
2. Description of the Related Art A barrel shifter shifts input data by a desired number of bits by one operation. For example, a barrel of a computer or a decoder for decoding variable-length encoded data. Used for equipment.

【0003】具体的には、例えば8入力8出力であっ
て、上位ビット側にシフトするバレルシフタは、図7に
示すように、入力データの全ビット(b0 〜b7 、b7
がMSB:Most Significant Bit)から1ビットを選択
するセレクタ回路110と、ビットb0 〜b6 の7ビッ
トから1ビットを選択するセレクタ回路120と、ビッ
トb0 〜b5 の6ビットから1ビットを選択するセレク
タ回路130と、ビットb0 〜b4 の5ビットから1ビ
ットを選択するセレクタ回路140と、ビットb 0 〜b
3 の4ビットから1ビットを選択するセレクタ回路15
0と、ビットb0〜b2 の3ビットから1ビットを選択
するセレクタ回路160と、ビットb0 〜b1 の2ビッ
トから1ビットを選択するセレクタ回路170と、ビッ
トb0 を選択するセレクタ回路180とから構成され、
セレクタ回路110〜180は、シフト量を制御する制
御信号S0 〜S2 に基づいて動作し、制御信号S0 〜S
2 を、制御信号S0 をLSBとする3ビットの2進数の
各ビットに対応させると、このバレルシフタは、その値
が例えば000のときはビットシフトせず(0ビットシ
フト)、001のときは1ビットシフトし、010のと
きは2ビットシフトし、以下同様に、111のときは7
ビットシフトするようになっている。
[0003] Specifically, for example, there are eight inputs and eight outputs.
The barrel shifter that shifts to the upper bit side is shown in FIG.
As shown, all bits (b0~ B7, B7
Selects 1 bit from MSB (Most Significant Bit)
Selector circuit 110 and the bit b0~ B67 bit
A selector circuit 120 for selecting one bit from the
B0~ BFiveSelect to select 1 bit from 6 bits of
Circuit 130 and bit b0~ BFour5 bits to 1 bit
A selector circuit 140 for selecting a bit and a bit b 0~ B
ThreeSelector circuit 15 for selecting one bit from the four bits of
0 and bit b0~ BTwoSelect 1 bit from 3 bits of
Selector circuit 160, and bit b0~ B12 bits
A selector circuit 170 for selecting one bit from the
B0And a selector circuit 180 for selecting
The selector circuits 110 to 180 control the shift amount.
Control signal S0~ STwoAnd the control signal S0~ S
TwoWith the control signal S0Is the LSB of a 3-bit binary number
For each bit, this barrel shifter
Is 000, for example, no bit shift (0 bit
Shift), 001 shifts 1 bit, and 010
Is shifted by 2 bits, and similarly in the case of 111, 7
Bit shift is performed.

【0004】[0004]

【発明が解決しようとする課題】ところで、上述のセレ
クタ回路110〜180のように、多入力1出力のセレ
クタ回路は、2入力1出力のセレクタを多段接続して構
成される。例えばセレクタ回路110は、上述の図7に
示すように、8ビット(b0 〜b7 )のうちの隣接する
ビットを切り換え選択する第1段目の4個のセレクタ1
11〜114と、該第1段目の隣接するセレクタの各出
力を切り換え選択する第2段目の2個のセレクタ11
5、116と、該第2段目のセレクタの各出力を切り換
え選択する第3段目の1個のセレクタ117とから構成
され、第1段目のセレクタ111〜114において8ビ
ットから4ビットを選択し、第2段目のセレクタ11
5、116において第1段目で選択された4ビットから
2ビットを選択し、第3段目のセレクタ117において
第2段目で選択された2ビットから1ビットを選択する
ようになっている。
By the way, like the above selector circuits 110 to 180, a multi-input one-output selector circuit is configured by connecting two-input one-output selectors in multiple stages. For example, as shown in FIG. 7 described above, the selector circuit 110 includes four selectors 1 at the first stage for switching and selecting adjacent bits among the 8 bits (b 0 to b 7 ).
11 to 114 and two selectors 11 of the second stage for switching and selecting each output of the adjacent selector of the first stage.
5 and 116, and one selector 117 at the third stage for switching and selecting each output of the selector at the second stage. Select the second stage selector 11
At 5 and 116, two bits are selected from the four bits selected at the first stage, and the third selector 117 selects one bit from the two bits selected at the second stage. .

【0005】また、例えばセレクタ回路120は、上述
の図7に示すように、7ビット(b 0 〜b6 )のうちの
隣接するビットを切り換え選択する第1段目の4個のセ
レクタ121〜124と、該第1段目の隣接するセレク
タの各出力を切り換え選択する第2段目の2個のセレク
タ125、126と、該第2段目のセレクタの各出力を
切り換え選択する第3段目の1個のセレクタ127とか
ら構成され、第1段目のセレクタ121〜124におい
て7ビットから4ビットを選択し、第2段目のセレクタ
125、126において第1段目で選択された4ビット
から2ビットを選択し、第3段目のセレクタ127にお
いて第2段目で選択された2ビットから1ビットを選択
するようになっている。なお、セレクタ121の一方の
入力をアースに接続しているのは、ビットQ0 〜Q
7 (Q7 がMSB)からなる出力データのビットシフト
により生じる空きビットを0とするためである。
Further, for example, the selector circuit 120
As shown in FIG. 7 of FIG. 0~ B6) Of
Four cells in the first stage for switching and selecting adjacent bits
And selectors adjacent to the first stage.
Select two outputs in the second stage to switch and select each output of the data
And the outputs of the second-stage selector.
One selector 127 at the third stage for switching selection
And the first-stage selectors 121 to 124
4 bits out of 7 bits, and the second stage selector
4 bits selected in the first stage in 125 and 126
And selects two bits, and sends it to the third-stage selector 127.
And select 1 bit from 2 bits selected in the second stage
It is supposed to. Note that one of the selectors 121
The input is connected to ground at bit Q0~ Q
7(Q7Is the MSB) bit shift of the output data
This is because the empty bit generated by the above is set to 0.

【0006】また、例えばセレクタ回路130は、上述
の図7に示すように、6ビット(b 0 〜b5 )のうちの
隣接するビットを切り換え選択する第1段目の3個のセ
レクタ131〜133と、該第1段目の隣接するセレク
タの各出力を切り換え選択する第2段目の2個のセレク
タ134、135と、該第2段目のセレクタの各出力を
切り換え選択する第3段目の1個のセレクタ136とか
ら構成され、第1段目のセレクタ131〜133におい
て6ビットから3ビットを選択し、第2段目のセレクタ
134、135において第1段目で選択された3ビット
から2ビットを選択し、第3段目のセレクタ136にお
いて第2段目で選択された2ビットから1ビットを選択
するようになっている。
Further, for example, the selector circuit 130
As shown in FIG. 7, 6 bits (b 0~ BFive) Of
The three first-stage cells for switching and selecting adjacent bits
And the selectors adjacent to the first stage.
Select two outputs in the second stage to switch and select each output of the data
And the outputs of the second-stage selector.
One selector 136 at the third stage for switching selection
And the first-stage selectors 131 to 133
To select 3 bits from 6 bits, and the second-stage selector
3 bits selected in the first stage in 134 and 135
, Two bits are selected, and the third-stage selector 136 selects
And select 1 bit from 2 bits selected in the second stage
It is supposed to.

【0007】すなわち、8入力1出力のセレクタ回路1
10は7個の2入力1出力のセレクタから構成され、7
入力1出力のセレクタ回路120は7個の2入力1出力
のセレクタから構成され、6入力1出力のセレクタ回路
130は6個の2入力1出力のセレクタから構成され、
以下同様に、セレクタ回路140〜180は、それぞれ
6個、4個、4個、3個、3個の2入力1出力のセレク
タから構成される。したがって、この8入力8出力のバ
レルシフタは、下記表1に示すように、40個の2入力
1出力のセレクタから構成される。
That is, an 8-input / 1-output selector circuit 1
Numeral 10 is composed of seven 2-input / 1-output selectors.
The input one-output selector circuit 120 is composed of seven two-input one-output selectors, the six-input one-output selector circuit 130 is composed of six two-input one-output selectors,
Similarly, the selector circuits 140 to 180 are each composed of six, four, four, three, and three two-input one-output selectors. Therefore, this 8-input 8-output barrel shifter is composed of 40 2-input / 1-output selectors as shown in Table 1 below.

【0008】[0008]

【表1】 [Table 1]

【0009】また、例えば16入力16出力のバレルシ
フタ、32入力32出力のバレルシフタ、64入64出
力のバレルシフタは、上述の表1に示すように、それぞ
れ152個、576個、2208個の2入力1出力のセ
レクタから構成される。
As shown in Table 1 above, for example, a 16-input / 16-output barrel shifter, a 32-input / 32-output barrel shifter, and a 64-input / 64-output barrel shifter have 152, 576, and 2208 2-input 1 barrels, respectively. It consists of an output selector.

【0010】したがって、従来のバレルシフタは、例え
ば所謂IC化する場合、入出力ビット数が増えると、2
入力1出力のセレクタの数が累乗的に増加し、2入力1
出力のセレクタは4ゲートからなることを考慮すると、
例えば32入力32出力のバレルシフタは、2304
(=4×576)ゲートが必要になる。すなわち、1個
のICで使用可能なゲート数は限られており、入出力ビ
ット数が増えると、他の回路を同時に搭載できなかった
り、IC化が困難になる。
Therefore, the conventional barrel shifter, for example, in the case of a so-called IC, when the number of input / output bits increases, 2
The number of selectors with one input and one output increases exponentially, and two inputs and one output
Considering that the output selector consists of four gates,
For example, a barrel shifter with 32 inputs and 32 outputs is 2304
(= 4 × 576) gate is required. That is, the number of gates that can be used by one IC is limited, and when the number of input / output bits increases, other circuits cannot be mounted at the same time, or it becomes difficult to implement an IC.

【0011】本発明は、このような実情に鑑みてなされ
たものであり、従来のバレルシフタに比して2入力1出
力のセレクタの数を削減することができ、IC化におい
て他の回路を同時に搭載することができると共に、高速
動作が可能なバレルシフタの提供を目的とする。
The present invention has been made in view of such circumstances, and can reduce the number of 2-input / 1-output selectors as compared with a conventional barrel shifter. It is an object of the present invention to provide a barrel shifter that can be mounted and that can operate at high speed.

【0012】[0012]

【課題を解決するための手段】上記課題を解決するため
に、本発明に係るバレルシフタは、M行×N列(M、N
は整数)のマトリックス状に配設された2入力1出力の
セレクタSELij(i=1〜M、j=1〜N、M≦
N )と、第1列のセレクタSELi1に対して設けられ
たデータを入力するM個の入力端子DIi と、第N列の
セレクタSELiNに対して設けられたデータを出力する
M個の出力端子DOi と、各j列に対してそれぞれ設け
られた2j-1 個の入力端子Tkj(k=1〜2j-1 )とを
備え、第1列のセレクタSELi1は、i≠1であるセレ
クタSELi1が互いに隣接する入力端子DIi-1 、DI
i を介してそれぞれ入力されるデータのビットを切り換
え選択し、i=1であるセレクタSELi1が入力端子T
11を介して入力される信号と入力端子DI1 を介して入
力されるデータのビットを切り換え選択し、j≠1であ
る第j列のセレクタSELijは、i>2j-1 であるセレ
クタSELijが第j−1列のセレクタSELij-1の出力
とセレクタSELhj-1(h=i−2j-1 )の出力を切り
換え選択し、i≦2j-1 であるセレクタSELijが第j
−1列のセレクタSELij-1の出力と入力端子Tkj(k
=i)を介して入力される信号を切り換え選択し、各j
列のセレクタSELijが同一の制御信号によって動作
し、入力端子DIi を介して入力されるデータをビット
シフトしたデータを、出力端子DOiを介して出力する
ことを特徴とする。
In order to solve the above-mentioned problems, a barrel shifter according to the present invention comprises M rows × N columns (M, N
Is an integer) two-input one-output selector SEL ij (i = 1 to M, j = 1 to N, M ≦
2 N ), M input terminals DI i for inputting data provided to the first column of selectors SEL i1 , and M input terminals DI i for outputting data provided to the Nth column of selectors SEL iN output and terminal DO i of a 2 j-1 inputs terminals T kj respectively provided (k = 1~2 j-1) for each j row, the selector SEL i1 in the first column, The selectors SEL i1 for which i ≠ 1 are adjacent to the input terminals DI i-1 and DI i-1
The selector SEL i1 with i = 1 switches and selects the bit of the data respectively input through i.
11 via the signal input terminal DI 1 inputted via the select switch the bits of the input data selector SEL ij j-th row is j ≠ 1 is, i> is a 2 j-1 selector SEL ij selects and switches the output of the selector SEL ij-1 in the j-1st column and the output of the selector SEL hj-1 (h = i-2 j-1 ), and the selector SEL ij in which i ≦ 2 j-1 is satisfied. Is the j
-1 column selector SEL ij-1 output and input terminal T kj (k
= I) switch and select the signal input via
The column selectors SEL ij operate according to the same control signal, and output data obtained by bit-shifting the data input via the input terminal DI i via the output terminal DO i .

【0013】また、本発明に係るバレルシフタは、第1
列の入力端子T11に入力データの最上位ビットあるいは
最下位ビットを入力し、j≠1である第j列の入力端子
kj(k=i)に第j−1列のi≧M+1−2J である
セレクタSELij-1の出力を入力することを特徴とす
る。
Further, the barrel shifter according to the present invention has a first
Enter the most significant bits or least significant bits of the input data to the input terminal T 11 of the column, the input terminal T of the j-th column is j ≠ 1 kj (k = i ) in the first j-1 column i ≧ M + 1- The output of the selector SEL ij-1 which is 2 J is input.

【0014】[0014]

【作用】本発明を適用したバレルシフタでは、第1列の
i≠1であるセレクタSELi1が、互いに隣接する入力
端子DIi-1 、DIi を介してそれぞれ入力されるデー
タのビットを切り換え選択し、第1列のi=1であるセ
レクタSELi1が、入力端子T11を介して入力される信
号と入力端子DI1 を介して入力されるデータのビット
を切り換え選択し、j≠1である第j列のi>2j-1
あるセレクタSELijが、第j−1列のセレクタSEL
ij-1の出力とセレクタSELhj-1(h=i−2j-1 )の
出力を切り換え選択し、j≠1である第j列のi≦2
j-1 であるセレクタSELijが、第j−1列のセレクタ
SELij-1の出力と入力端子Tkj(k=i)を介して入
力される信号を切り換え選択し、各j列のセレクタSE
ijが同一の制御信号によって動作し、入力端子DIi
を介して入力されるデータをビットシフトしたデータ
を、出力端子DOi を介して出力する。
In the barrel shifter to which the present invention is applied, the selector SEL i1 in the first column, i ≠ 1, switches and selects the bits of the data input via the input terminals DI i-1 and DI i adjacent to each other. and, a selector SEL i1 is i = 1 of the first row, selects switches the bit data inputted through the signal input terminal DI 1 inputted via the input terminal T 11, in j ≠ 1 The selector SEL ij of a certain j- th column where i> 2 j−1 is used as the selector SEL ij of the j-th column
The output of ij-1 and the output of the selector SEL hj-1 (h = i-2 j-1 ) are switched and selected, and i ≦ 2 of the j-th column where j ≠ 1.
The selector SEL ij which is j−1 switches and selects the output of the selector SEL ij-1 of the j−1th column and the signal input through the input terminal T kj (k = i), and selects the selector of each j column. SE
L ij are operated by the same control signal, and the input terminals DI i
The data obtained by bit-shifting the data inputted via the outputs through the output terminal DO i.

【0015】また、本発明を適用したバレルシフタで
は、第1列の入力端子T11に入力データの最上位ビット
あるいは最下位ビットを入力し、j≠1である第j列の
入力端子Tkj(k=i)に第j−1列のi≧M+1−2
J であるセレクタSELij-1の出力を入力することによ
り、入力データを巡回的にビットシフトしたデータを、
出力端子DOi を介して出力する。
[0015] In the barrel shifter according to the present invention, inputs the most significant bit or the least significant bit of the input data to the input terminal T 11 of the first row, j ≠ 1 in which the input terminal T kj of the j-th column ( In k = i), i ≧ M + 1-2 in the j−1th column
By inputting the output of the selector SEL ij-1 which is J , the data obtained by cyclically shifting the input data is
Through the output terminal DO i output.

【0016】[0016]

【実施例】以下、本発明に係るバレルシフタの実施例を
図面を参照しながら説明する。図1は、本発明を適用し
たバレルシフタの回路構成を示すブロック図であり、図
2は、上記バレルシフタを用いた画像伝送システムの受
信装置の回路構成を示すブロック図である。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the barrel shifter according to the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a circuit configuration of a barrel shifter to which the present invention is applied, and FIG. 2 is a block diagram showing a circuit configuration of a receiving device of an image transmission system using the barrel shifter.

【0017】まず、上述の受信装置について説明する。
この受信装置は、図2に示すように、受信される可変長
符号データにエラー訂正処理を施すエラー訂正回路1
と、該エラー訂正回路1からの可変長符号データを復号
化して、符号データを再生する可変長復号化回路(以下
IVLCという)10と、該IVLC10からの符号デ
ータを逆量子化して、DCT出力データを再生する逆量
子化回路2と、該逆量子化回路2からのDCT出力デー
タを所謂逆離散余弦変換して、フレーム間の差データを
再生する逆離散余弦変換回路(以下IDCTという)3
と、該IDCT3からの差データを前フレームの画像デ
ータに加算して、現フレームの画像データを再生する加
算器4と、該加算器4からの画像データを前フレームの
画像データとして記憶するフレームメモリ5と、上記加
算器4からの画像データをアナログ信号に変換して、映
像信号を再生するディジタル/アナログ(以下D/Aと
いう)変換器6とから構成される。
First, the above-mentioned receiving apparatus will be described.
As shown in FIG. 2, the receiving apparatus includes an error correction circuit 1 for performing error correction processing on received variable-length code data.
A variable-length decoding circuit (hereinafter referred to as IVLC) 10 for decoding the variable-length code data from the error correction circuit 1 to reproduce the code data, and inversely quantizing the code data from the IVLC 10 to output a DCT. An inverse quantization circuit 2 for reproducing data, and an inverse discrete cosine transform circuit (hereinafter referred to as IDCT) 3 for performing so-called inverse discrete cosine transformation of DCT output data from the inverse quantization circuit 2 to reproduce difference data between frames.
And an adder 4 for adding the difference data from the IDCT 3 to the image data of the previous frame to reproduce the image data of the current frame, and a frame for storing the image data from the adder 4 as the image data of the previous frame. It comprises a memory 5 and a digital / analog (hereinafter referred to as D / A) converter 6 for converting the image data from the adder 4 into an analog signal and reproducing a video signal.

【0018】そして、映像信号を画像データに変換し、
画素毎のフレーム間の差分(以下差データという)を離
散余弦変換すると共に、可変長符号化して得られる可変
長符号データが送信装置から送られ、この受信装置は、
可変長符号データを受信し、受信した可変長符号データ
から映像信号を再生するようになっている。
Then, the video signal is converted into image data,
The difference between frames for each pixel (hereinafter referred to as difference data) is subjected to a discrete cosine transform, and variable-length code data obtained by variable-length coding is transmitted from a transmission device.
Variable length code data is received, and a video signal is reproduced from the received variable length code data.

【0019】具体的には、エラー訂正回路1は、受信さ
れる可変長符号データにエラー訂正処理を施す。
Specifically, the error correction circuit 1 performs an error correction process on the received variable-length code data.

【0020】IVLC10は、バレルシフタ、リード・
オンリ・メモリ(以下ROMという)等を備えた、例え
ば所謂ハフマン符号を復号化する可変長復号化回路から
なり、エラー訂正回路1から連続して供給される、例え
ば2〜18ビットからなる可変長符号データを、バレル
シフタにより、可変長符号データの先頭ビットが常に最
上位ビット(以下MSB:Most Significant Bitとい
う)となるようにビットシフトすると共に、シフトした
可変長符号データを読出アドレスとして、ROMに予め
記憶されている、例えば16ビットの固定長からなる符
号データを読み出して、可変長符号データを復号化す
る。
The IVLC 10 comprises a barrel shifter, a lead
For example, a variable length decoding circuit for decoding a so-called Huffman code provided with an only memory (hereinafter referred to as ROM) and the like, and a variable length of 2 to 18 bits continuously supplied from the error correction circuit 1, for example. The code data is bit-shifted by a barrel shifter so that the first bit of the variable-length code data is always the most significant bit (hereinafter referred to as MSB: Most Significant Bit), and the shifted variable-length code data is read into the ROM as a read address. Code data having a fixed length of, for example, 16 bits, which is stored in advance, is read, and variable-length code data is decoded.

【0021】逆量子化回路2は、IVLC10から供給
される符号データを、送信の際の所謂量子化幅を用いて
逆量子化し、離散余弦変換における例えば8×8係数を
再生する。
The inverse quantization circuit 2 inversely quantizes the code data supplied from the IVLC 10 using a so-called quantization width at the time of transmission, and reproduces, for example, an 8 × 8 coefficient in the discrete cosine transform.

【0022】IDCT3は、逆量子化回路2から供給さ
れる係数を逆離散余弦変換して、差データを再生する。
The IDCT 3 performs inverse discrete cosine transform of the coefficient supplied from the inverse quantization circuit 2 to reproduce difference data.

【0023】加算器4は、フレームメモリ5から供給さ
れる前フレームの画像データに、IDCT3から供給さ
れる差データを加算して、現フレームの画像データを再
生する。
The adder 4 adds the difference data supplied from the IDCT 3 to the image data of the previous frame supplied from the frame memory 5, and reproduces the image data of the current frame.

【0024】フレームメモリ5は、加算器4で再生され
た画像データを記憶し、前フレームの画像データとして
加算器4に供給する。
The frame memory 5 stores the image data reproduced by the adder 4 and supplies it to the adder 4 as the image data of the previous frame.

【0025】D/A変換器6は、加算器4から供給され
る画像データをアナログ信号に変換して、映像信号を再
生する。
The D / A converter 6 converts the image data supplied from the adder 4 into an analog signal and reproduces a video signal.

【0026】つぎに、上述のIVLC10の具体的な回
路構成について説明する。IVLC10は、例えば図3
に示すように、可変長符号データを一旦記憶するバッフ
ァメモリ11と、該バッファメモリ11を制御するメモ
リコントローラ12と、上記バッファメモリ11から読
み出された可変長符号データを所定ビット数分遅延する
遅延器13、14と、該遅延器13、14で遅延された
可変長符号データを、先頭ビットがMSBとなるように
ビットシフトするバレルシフタ15と、該バレルシフタ
15からデータ毎に出力される可変長符号データを読出
アドレスとすると共に、符号データを記憶しているRO
M16と、上記バッファメモリ11からの可変長符号デ
ータからフレーム同期信号を検出する同期信号検出回路
17と、該同期信号検出回路17で検出されたフレーム
同期信号に基づいて、固定のシフト量を発生する固定長
シフト量発生回路18と、上記バレルシフタ15からデ
ータ毎に出力される可変長符号データの符号長を演算す
る符号長演算回路19と、上記固定長シフト量発生回路
18の出力と符号長演算回路19の出力を切り換え選択
する切換スイッチ20と、シフト量を求めるための加算
器21と、該加算器21の出力を遅延する遅延器22
と、該遅延器22をリセットするための切換スイッチ2
3とを備える。
Next, a specific circuit configuration of the above-described IVLC 10 will be described. The IVLC 10 is, for example, shown in FIG.
As shown in (1), a buffer memory 11 for temporarily storing variable-length code data, a memory controller 12 for controlling the buffer memory 11, and a delay of the variable-length code data read from the buffer memory 11 by a predetermined number of bits. Delay units 13 and 14, a barrel shifter 15 for bit-shifting the variable-length code data delayed by the delay units 13 and 14 so that the leading bit becomes the MSB, and a variable length output from the barrel shifter 15 for each data. The code data is used as the read address and the RO storing the code data
M16, a synchronization signal detection circuit 17 for detecting a frame synchronization signal from the variable-length code data from the buffer memory 11, and a fixed shift amount generated based on the frame synchronization signal detected by the synchronization signal detection circuit 17. A fixed length shift amount generating circuit 18, a code length calculating circuit 19 for calculating the code length of the variable length code data output for each data from the barrel shifter 15, an output of the fixed length shift amount generating circuit 18, and a code length. A changeover switch 20 for switching and selecting an output of the arithmetic circuit 19; an adder 21 for obtaining a shift amount; and a delay unit 22 for delaying the output of the adder 21
Switch 2 for resetting the delay unit 22
3 is provided.

【0027】そして、バッファメモリ11は、例えば図
4に示すように、上述の図2に示すエラー訂正回路1か
ら連続して供給される可変長符号データを一旦記憶し、
記憶した可変長符号データを、メモリコントローラ12
の制御のもとに16ビット単位で読み出し、読み出した
可変長符号データを遅延器13に供給する。すなわち、
このIVLC10に入力される可変長符号データと、出
力する符号データとに一時的に伝送速度の差が生じ、メ
モリコントローラ12は、この差を吸収するようにバッ
ファメモリ11を制御する。
The buffer memory 11 temporarily stores the variable-length code data continuously supplied from the error correction circuit 1 shown in FIG. 2 as shown in FIG.
The stored variable-length code data is stored in the memory controller 12.
Under the control of, and supplies the read variable-length code data to the delay unit 13. That is,
A temporary difference in transmission speed occurs between the variable-length code data input to the IVLC 10 and the output code data, and the memory controller 12 controls the buffer memory 11 to absorb the difference.

【0028】遅延器13、14はそれぞれ、例えば16
ビットのシフトレジスタからなり、バッファメモリ11
らの可変長符号データをラッチし、ラッチされた可変長
符号データを32ビットのパラレルデータとしてバレル
シフタ15に供給する。
Each of the delay units 13 and 14 is, for example, 16
Buffer memory 11
These variable-length code data are latched, and the latched variable-length code data is supplied to the barrel shifter 15 as 32-bit parallel data.

【0029】ここで、バレルシフタ15の詳細について
説明する。本発明を適用したM入力M出力のバレルシフ
タは、M行×N列(M、Nは整数)のマトリックス状に
配設された2入力1出力のセレクタSELij(i=1〜
M、j=1〜N、M≦2N )と、第1列のセレクタSE
i1に対して設けられたデータを入力するM個の入力端
子DIi と、第N列のセレクタSELiNに対して設けら
れたデータを出力するM個の出力端子DOi と、各j列
に対してそれぞれ設けられた2j-1 個の入力端子T
kj(k=1〜2j-1 )とを備え、第1列のセレクタSE
i1は、i≠1であるセレクタSELi1が互いに隣接す
る入力端子DIi-1 、DIi を介してそれぞれ入力され
るデータのビットを切り換え選択し、i=1であるセレ
クタSELi1が入力端子T11を介して入力される信号と
入力端子DI1 を介して入力されるデータのビットを切
り換え選択し、j≠1である第j列のセレクタSELij
は、i>2j-1 であるセレクタSELijが第j−1列の
セレクタSELij-1の出力とセレクタSELhj-1(h=
i−2j-1 )の出力を切り換え選択し、i≦2j-1 であ
るセレクタSELijが第j−1列のセレクタSELij-1
の出力と入力端子Tkj(k=i)を介して入力される信
号を切り換え選択し、各j列のセレクタSELijが同一
の制御信号によって動作し、入力端子DIi を介して入
力されるデータをビットシフトしたデータを、出力端子
DOi を介して出力するようになっている。
Here, the barrel shifter 15 will be described in detail. The M-input M-output barrel shifter to which the present invention is applied is a 2-input / 1-output selector SEL ij (i = 1 to 1) arranged in a matrix of M rows × N columns (M and N are integers).
M, j = 1 to N, M ≦ 2 N ) and the selector SE in the first column
M input terminals DI i for inputting data provided for L i1 , M output terminals DO i for outputting data provided for the N-th column selector SEL iN , J-1 input terminals T provided respectively for
kj (k = 1 to 2 j-1 ), and the selector SE in the first column
L i1 is such that the selector SEL i1 with i ≠ 1 switches and selects the bit of the data input via the adjacent input terminals DI i-1 and DI i , and the selector SEL i1 with i = 1 receives the input. via signal input through the terminal T 11 and the input terminal DI 1 select switches the bit of the input data of the j-th column is j ≠ 1 selector SEL ij
Is that the selector SEL ij with i> 2 j−1 is the output of the selector SEL ij-1 in the j−1th column and the selector SEL hj−1 (h =
i−2 j−1 ), and the selector SEL ij satisfying i ≦ 2 j−1 is selected by the selector SEL ij−1 of the j−1th column.
And the signal input via the input terminal T kj (k = i) are switched and selected. The selectors SEL ij of each j column operate by the same control signal and are input via the input terminal DI i. the bit shifted data data, and outputs through the output terminal DO i.

【0030】具体的には、例えば8入力8出力であっ
て、ビットb0 〜b7 (b7 はMSB)の8ビットから
なるデータを上位ビット側にシフトするバレルシフタ
は、例えば図1に示すように、8行×3列(M=8、N
=3)のマトリックス状に配設された2入力1出力のセ
レクタSELij(i=1〜8、j=1〜3)と、第1列
のセレクタSEL11〜SEL81に対して設けられたデー
タを入力する8個の入力端子DI1 〜DI8 と、第3列
のセレクタSEL13〜SEL83に対して設けられたデー
タを出力する8個の出力端子DO1 〜DO8 と、第1列
のセレクタSEL11に対して設けられた1(=21-1
個の入力端子T11と、第2列のセレクタSEL12、SE
22に対してそれぞれ設けられた2(=22-1 )個の入
力端子T12、T22と、第3列のセレクタSEL13〜SE
43に対してそれぞれ設けられた4(=23-1 )個の入
力端子T13〜T43とを備える。
Specifically, for example, a barrel shifter which has eight inputs and eight outputs and shifts data consisting of eight bits of bits b 0 to b 7 (b 7 is MSB) to the upper bits is shown in FIG. 1, for example. Thus, 8 rows × 3 columns (M = 8, N
= 3) and two selectors SEL ij (i = 1-8, j = 1-3) arranged in a matrix and selectors SEL 11 -SEL 81 in the first column. and eight input terminals DI 1 -DI 8 for inputting data, a third column selectors SEL 13 eight output terminals DO 1 to DO 8 to output the data provided for to SEL 83, first 1 provided for the column selector SEL 11 (= 2 1-1 )
A number of input terminals T 11, a selector SEL 12 of the second column, SE
Two (= 2 2-1 ) input terminals T 12 , T 22 provided for L 22 and selectors SEL 13 to SE in the third column, respectively.
It has four (= 2 3-1 ) input terminals T 13 to T 43 provided for the L 43 , respectively.

【0031】そして、第1列のi≠1であるセレクタS
EL21は、互いに隣接する入力端子DI1 、DI2 を介
してそれぞれ入力されるビットb0 とビットb1 を切り
換え選択し、セレクタSEL31は、互いに隣接する入力
端子DI2 、DI3 を介してそれぞれ入力されるビット
1 とビットb2 を切り換え選択し、以下同様に、セレ
クタSEL41〜SEL81はそれぞれ、入力端子DI3
らのビットb2 と入力端子DI4 からのビットb3 、入
力端子DI4 からのビットb3 と入力端子DI 5 からの
ビットb4 、入力端子DI5 からのビットb4 と入力端
子DI6 からのビットb5 、入力端子DI6 からのビッ
トb5 と入力端子DI7 からのビットb 6 、入力端子D
7 からのビットb6 と入力端子DI8 からのビットb
7 を切り換え選択し、i=1であるセレクタSEL
11は、入力端子T11からの信号と入力端子DI1 を介し
て入力されるビットb0 を切り換え選択する。
Then, the selector S in the first column where i ≠ 1 is satisfied.
ELtwenty oneAre input terminals DI adjacent to each other1, DITwoThrough
Bit b input as0And bit b1Cut
Change and select the selector SEL31Are the inputs adjacent to each other
Terminal DITwo, DIThreeBits that are input via
b1And bit bTwoSwitch and select
Kuta SEL41~ SEL81Is the input terminal DIThreeOr
Bit bTwoAnd input terminal DIFourBit b fromThree, Enter
Force terminal DIFourBit b fromThreeAnd input terminal DI Fivefrom
Bit bFour, Input terminal DIFiveBit b fromFourAnd input end
Child DI6Bit b fromFive, Input terminal DI6Bit from
BFiveAnd input terminal DI7Bit b from 6, Input terminal D
I7Bit b from6And input terminal DI8Bit b from
7And the selector SEL where i = 1.
11Is the input terminal T11From the input terminal DI1Through
Bit b input0To select.

【0032】また、第2列のi>2(=22-1 )である
セレクタSEL32は、第1列のセレクタSEL31の出力
とセレクタSEL11(h=3−22-1 =1)の出力を切
り換え選択し、セレクタSEL42は、第1列のセレクタ
SEL41の出力とセレクタSEL21(h=4−22-1
2)の出力を切り換え選択し、以下同様に、セレクタS
EL52〜SEL82はそれぞれ、セレクタSEL51の出力
とセレクタSEL31の出力、セレクタSEL61の出力と
セレクタSEL41の出力、セレクタSEL71の出力とセ
レクタSEL51の出力、セレクタSEL81の出力とセレ
クタSEL61の出力を切り換え選択し、i≦2(=2
2-1 )であるセレクタSEL12は、第1列のセレクタS
EL11の出力と入力端子T11(k=i=1)を介して入
力される信号を切り換え選択し、セレクタSEL22は、
第1列のセレクタSEL21の出力と入力端子T22(k=
i=2)を介して入力される信号を切り換え選択する。
The selector SEL 32 in the second column, i> 2 (= 2 2-1 ), outputs the output of the selector SEL 31 in the first column and the selector SEL 11 (h = 3−2 2-1 = 1). ), The selector SEL 42 switches the output of the selector SEL 41 of the first column and the selector SEL 21 (h = 4-2 2-1 =
2) The output is switched and selected.
EL 52 to SEL 82, respectively, outputs of the selector SEL 31 of the selector SEL 51, outputs of the selectors SEL 41 of the selector SEL 61, outputs of the selector SEL 51 of the selector SEL 71, and an output of the selector SEL 81 The output of the selector SEL 61 is switched and selected, and i ≦ 2 (= 2
The selector SEL 12 is 2-1), the selector S in the first column
The selector SEL 22 switches and selects the output of the EL 11 and the signal input via the input terminal T 11 (k = i = 1).
The output of the selector SEL 21 in the first column and the input terminal T 22 (k =
i = 2) is switched and selected.

【0033】そして、第1列の各セレクタSEL11〜S
EL81は、同一の制御信号S0 によって動作し、例えば
制御信号S0 が0のときは、それぞれ入力端子DI1
DI 8 を介して供給されるビットを選択し、すなわちビ
ットシフトを行わず、制御信号S0 が1のときは、それ
ぞれ入力端子T11を介して供給される信号及び入力端子
DI1 〜DI7 を介して供給されるビットを選択し、す
なわち上位ビット側に1ビットシフトする。なお、入力
端子T11を介して供給される信号は、ビットシフトした
とき生じる空いたビットの値を決定するものであり、例
えば入力端子T 11をアースに接続してその値を0とする
と、空きビットに0が挿入され、反対にその値を1とす
ると空きビットに1が挿入される。
Then, each selector SEL in the first column11~ S
EL81Is the same control signal S0Works by, for example
Control signal S0Is 0, the input terminals DI1~
DI 8Select the bits supplied via
Control signal S0When is 1, it
Each input terminal T11And input terminal supplied via
DI1~ DI7Select the bits supplied via
That is, it is shifted by one bit to the upper bit side. In addition, input
Terminal T11The signal supplied via is bit-shifted
Determine the value of the vacant bit that occurs when
For example, input terminal T 11To ground and set its value to 0
0 is inserted into the empty bit, and the value is set to 1
Then, 1 is inserted into the empty bit.

【0034】また、第2列の各セレクタSEL12〜SE
82は、同一の制御信号S1 によって動作し、例えば制
御信号S1 が0のときは、それぞれ第1列のセレクタS
EL 11〜SEL81の出力を選択し、すなわちビットシフ
トを行わず、制御信号S1 が1のときは、それぞれ入力
端子T12、T22を介して供給される信号及びセレクタS
EL11〜SEL61の出力を選択し、すなわち2ビットシ
フトする。なお、入力端子T12、T22を介して供給され
る信号は、上述の入力端子T11を介して供給される信号
と同様に、例えばその値を0とすると、空き2ビットに
0が挿入され、反対にその値を1とすると空き2ビット
に1が挿入される。
Each of the selectors SEL in the second column12~ SE
L82Is the same control signal S1Works by, for example,
Control signal S1Is 0, the selector S of the first column is
EL 11~ SEL81Output, that is, the bit shift
Control signal S1When is 1, input each
Terminal T12, Ttwenty twoAnd the selector S
EL11~ SEL61Output, that is, a 2-bit serial
To shift. The input terminal T12, Ttwenty twoIs supplied via
Is input terminal T described above.11Signal supplied via
Similarly, if the value is 0, for example,
0 is inserted, and if the value is set to 1, 2 free bits
Is inserted into.

【0035】また、第3列のセレクタSEL13〜SEL
83は、同一の制御信号S2によって動作し、例えば制御
信号S2が0のときは、それぞれ第2列のセレクタSE
12〜SEL82の出力を選択し、すなわちビットシフト
を行わず、制御信号S2が1のときは、それぞれ入力端
子T13〜T43を介して供給される信号及びセレクタSE
12〜SEL42の出力を選択し、すなわち4ビットシフ
トする。なお、入力端子T13〜T43を介して供給される
信号は、上述の入力端子T11を介して供給される信号と
同様に、例えばその値を0とすると、空き4ビットに0
が挿入され、反対にその値を1とする空き4ビットに1
が挿入される。
The third column selectors SEL 13 to SEL 13
83 is operated by the same control signal S 2, for example, when the control signal S 2 is 0, the selector SE of each second column
When the output of L 12 to SEL 82 is selected, that is, the bit shift is not performed and the control signal S 2 is 1, the signal supplied via the input terminals T 13 to T 43 and the selector SE
The outputs of L 12 to SEL 42 are selected, that is, shifted by 4 bits. The signal supplied through the input terminal T 13 through T 43, similar to the signal supplied through the input terminal T 11 of the above, for example, its value is 0, the empty 4 bits 0
Is inserted, and conversely, 1 is added to the empty 4 bits whose value is 1.
Is inserted.

【0036】かくして、制御信号S0 〜S2 を、制御信
号S0 をLSBとする3ビットの2進数の各ビットに対
応させると、この8入力8出力のバレルシフタは、入力
端子DI1 〜DI8 を介して入力されるデータを上位ビ
ット側に、その値が例えば000ときはビットシフトせ
ず(0ビットシフト)、001のときは1ビットシフト
し、010のときは2ビットシフトし、以下同様に、1
11のときは7ビットシフトする。そして、このように
ビットシフトして得られるビットQ0 〜Q7 (Q7 がM
SB)からなるデータを、出力端子DO1 〜DO8 をそ
れぞれ介して出力する。
Thus, when the control signals S 0 to S 2 are made to correspond to each bit of a 3-bit binary number with the control signal S 0 being the LSB, the barrel shifter having eight inputs and eight outputs will have input terminals DI 1 to DI The data input through 8 is shifted to the upper bit side. If the value is, for example, 000, no bit shift is performed (0 bit shift), if it is 001, one bit is shifted, if 010, two bits are shifted. Similarly, 1
In the case of 11, it shifts by 7 bits. Then, the bits Q 0 to Q 7 (Q 7 is M
SB) are output via output terminals DO 1 to DO 8 , respectively.

【0037】ところで、この8入力8出力のバレルシフ
タでは、入力データの各ビット(b 0 〜b7 )を、上述
の実施例とは逆にMSBから順に入力端子DI1 〜DI
8 に対応させて入力すると、下位ビット側へのビットシ
フトを行う。
By the way, this 8-input / 8-output barrel shifter
Data, each bit of the input data (b 0~ B7)
Input terminal DI in order from the MSB1~ DI
8Input in response to
Do the shift.

【0038】また、例えば16入力16出力のバレルシ
フタ、32入力32出力のバレルシフタ等は、上述の8
入力8出力のバレルシフタを拡張することにより実現す
ることができる。すなわち、例えば16入力16出力の
バレルシフタは、16行×4列のマトリックス状に配設
された2入力1出力のセレクタSELij(i=1〜1
6、j=1〜4)と、第1列のセレクタSEL11〜SE
(16)1 に対して設けられたデータを入力する16個の
入力端子DI1 〜DI16と、第4列のセレクタSEL14
〜SEL(16)4 に対して設けられたデータを出力する1
6個の出力端子DO1 〜DO16と、第1列のセレクタS
EL11に対して設けられた1個の入力端子T11と、第2
列のセレクタSEL12、SEL22に対してそれぞれ設け
られた2個の入力端子T12、T22と、第3列のセレクタ
SEL13〜SEL43に対してそれぞれ設けられた4個の
入力端子T13〜T43と、第4列のセレクタSEL14〜S
EL 84に対してそれぞれ設けられた8個の入力端子T14
〜T84とを備える。
For example, a 16-input 16-output barrel system
The lid, 32 input and 32 output barrel shifter, etc.
This is realized by expanding the barrel shifter with 8 inputs and 8 outputs.
Can be That is, for example, 16 inputs and 16 outputs
Barrel shifters are arranged in a matrix of 16 rows x 4 columns
2 input 1 output selector SELij(I = 1 to 1
6, j = 1 to 4) and the selector SEL in the first column11~ SE
L(16) 1Enter the data provided for the 16
Input terminal DI1~ DI16And the selector SEL in the fourth column14
~ SEL(16) 4Output data provided for
6 output terminals DO1~ DO16And the selector S in the first column
EL11One input terminal T provided for11And the second
Column selector SEL12, SELtwenty twoProvided for each
Two input terminals T12, Ttwenty twoAnd the third column selector
SEL13~ SEL43The four
Input terminal T13~ T43And the selector SEL in the fourth column14~ S
EL 84Input terminals T provided respectively for14
~ T84And

【0039】また、例えば32入力32出力のバレルシ
フタは、32行×5列のマトリックス状に配設された2
入力1出力のセレクタSELij(i=1〜32、j=1
〜5)と、第1列のセレクタSEL11〜SEL(32)1
対して設けられたデータを入力する32個の入力端子D
1 〜DI32と、第5列のセレクタSEL15〜SEL
(32)5 に対して設けられたデータを出力する32個の出
力端子DO1 〜DO32と、第1列のセレクタSEL11
対して設けられた1個の入力端子T11と、第2列のセレ
クタSEL12、SEL22に対してそれぞれ設けられた2
個の入力端子T12、T22と、第3列のセレクタSEL13
〜SEL43に対してそれぞれ設けられた4個の入力端子
13〜T43と、第4列のセレクタSEL14〜SEL84
対してそれぞれ設けられた8個の入力端子T14〜T
84と、第5列のセレクタSEL15〜SEL(16)5 に対し
てそれぞれ設けられた16個の入力端子T15〜T(16)5
とを備える。
Also, for example, a barrel input of 32 inputs and 32 outputs
The lids are arranged in a matrix of 32 rows × 5 columns.
Input 1 output selector SELij(I = 1 to 32, j = 1
5) and the first column of selectors SEL11~ SEL(32) 1To
32 input terminals D for inputting data provided for
I1~ DI32And the fifth column selector SEL15~ SEL
(32) 532 outputs that output the data provided for
Force terminal DO1~ DO32And the selector SEL in the first column11To
One input terminal T provided for11And the second column
Kuta SEL12, SELtwenty two2 provided for each
Input terminals T12, Ttwenty twoAnd the third column selector SEL13
~ SEL43Input terminals provided for each
T13~ T43And the selector SEL in the fourth column14~ SEL84To
Eight input terminals T provided for each14~ T
84And the fifth column selector SEL15~ SEL(16) 5Against
16 input terminals T provided respectively.15~ T(16) 5
And

【0040】すなわち、8入力8出力のバレルシフタは
24(=8×3)個の2入力1出力のセレクタで構成す
ることができ、16入力16出力のバレルシフタは64
(=16×4)個の2入力1出力のセレクタで構成する
ことができ、32入力32出力のバレルシフタは160
(=32×5)個の2入力1出力のセレクタで構成する
ことができる。換言すると、本発明を適用したバレルシ
フタは、上述の表1に示すように、従来のバレルシフタ
に比して、2入力1出力のセレクタの個数を大幅に削減
することができる。さらに、入力出力数が増加するにし
たがって、その効果は増大する。この結果、所謂IC化
において他の回路を同時に搭載することができ、高速動
作を可能にすることができる。
That is, the 8-input / 8-output barrel shifter can be constituted by 24 (= 8 × 3) 2-input / 1-output selectors, and the 16-input / 16-output barrel shifter is 64
(= 16 × 4) two-input / one-output selectors, and a 32-input / 32-output barrel shifter is 160
(= 32 × 5) two-input / one-output selectors. In other words, the barrel shifter to which the present invention is applied can greatly reduce the number of 2-input / 1-output selectors as compared with the conventional barrel shifter as shown in Table 1 above. Furthermore, the effect increases as the number of inputs and outputs increases. As a result, other circuits can be simultaneously mounted in a so-called integrated circuit, and high-speed operation can be performed.

【0041】そして、バレルシフタ15は、上述の構成
を有する32入力32出力のバレルシフタであって、可
変長符号データを、遅延器22から供給されるシフト量
に基づいて、先頭ビットが常に出力のMSBとなるよう
にビットシフトする。
The barrel shifter 15 is a 32-input, 32-output barrel shifter having the above-described configuration, and converts the variable-length code data based on the shift amount supplied from the delay unit 22 such that the MSB whose first bit is always output is provided. Bit shift so that

【0042】具体的には、同期信号検出回路17は、バ
ッファメモリ11から16ビット単位で読み出された可
変長符号データからフレーム同期信号を検出し、例えば
図5Aに示すように、バレルシフタ15の1回のシフト
動作期間であるステージのステージ#1において、例え
ばハイレベル(以下Hレベルという)となるトリガ信号
を固定長シフト量発生回路18に供給すると共に、図5
B、Cに示すように、フレーム同期信号が検出されたス
テージ#1に続くステージ#2〜#4においてHレベル
となる切換制御信号を切換スイッチ20に供給し、ステ
ージ#2においてHレベルとなる切換制御信号を切換ス
イッチ23に供給する。
More specifically, the synchronization signal detection circuit 17 detects a frame synchronization signal from the variable-length code data read in 16-bit units from the buffer memory 11 and, for example, as shown in FIG. In the stage # 1, which is one shift operation period, for example, a trigger signal that is at a high level (hereinafter, referred to as an H level) is supplied to the fixed-length shift amount generation circuit 18,
As shown in B and C, a switching control signal which becomes H level in the stages # 2 to # 4 following the stage # 1 in which the frame synchronization signal is detected is supplied to the changeover switch 20, and becomes H level in the stage # 2. The switch control signal is supplied to the switch 23.

【0043】固定長シフト量発生回路18は、同期信号
検出回路17から供給されるトリガ信号に基づいて、1
6ビットからなるフレーム同期信号(図4に示すFS
W)と、このFSWに続くそれぞれ8ビット、4ビット
からなる所定のデータ(図4に示すFLC1、FLC
2)とに対する固定長のシフト量である16ビット、8
ビット、4ビットを、図5Dに示すように、ステージ#
2〜#4の各ステージにおいて発生する。
The fixed-length shift amount generating circuit 18 receives one signal based on the trigger signal supplied from the synchronization signal detecting circuit 17.
A frame synchronization signal consisting of 6 bits (FS shown in FIG. 4)
W) and predetermined data consisting of 8 bits and 4 bits following the FSW (FLC1, FLC shown in FIG. 4).
2) 16 bits, 8 which is a fixed length shift amount with respect to
Bits, 4 bits, as shown in FIG.
It occurs in each of the stages # 2 to # 4.

【0044】一方、符号長演算回路19は、バレルシフ
タ15から出力されている現在の可変長符号データに基
づいて、次の可変長符号データの先頭ビットがMSBと
なるシフト量を演算し、すなわち、例えばバレルシフタ
15の32ビットの出力のMSBからハフマン符号則に
適合するビットまでのビット長を検出し、このビット長
をシフト量として切換スイッチ20を介して加算器21
に供給する。
On the other hand, the code length calculation circuit 19 calculates a shift amount in which the first bit of the next variable length code data is MSB based on the current variable length code data output from the barrel shifter 15, that is, For example, the bit length from the MSB of the 32-bit output of the barrel shifter 15 to the bit conforming to the Huffman coding rule is detected, and the bit length is used as a shift amount via the changeover switch 20 via the adder 21
To supply.

【0045】具体的には、図5Eに示すように、ステー
ジ#1において、バレルシフタ15から6ビットからな
る可変長符号データVLC1(図4参照)が、その先頭
ビットがMSBとなるようにシフトされて供給されると
きは6ビットを、ステージ#5において、14ビットか
らなる可変長符号データVLC2が、その先頭ビットが
MSBとなるようにシフトされて供給されるときは14
ビットを、ステージ#6において、10ビットからなる
可変長符号データVLC6が、その先頭ビットがMSB
となるようにシフトされて供給されるときは10ビット
を出力する。
More specifically, as shown in FIG. 5E, in stage # 1, variable-length code data VLC1 (see FIG. 4) consisting of 6 bits is shifted from barrel shifter 15 so that the first bit is MSB. 6 bits when supplied, and 14-bit variable-length code data VLC2 in stage # 5 is shifted and supplied so that the first bit is MSB.
In the stage # 6, the variable-length code data VLC6 consisting of 10 bits
10 bits are output when the data is supplied after being shifted so that

【0046】切換スイッチ20は、同期信号検出回路1
7から供給される切換制御信号に基づいて動作し、切換
制御信号がHレベルのときは、固定長シフト量発生回路
18からのシフト量を選択し、切換制御信号がLレベル
のときは、符号長演算回路19からのシフト量を選択
し、選択したシフト量を加算器21に供給する。したが
って、この切換スイッチ20からは、図5Fに示すよう
に、ステージ#1〜#7において、それぞれ6ビット、
16ビット、8ビット、4ビット、14ビット、10ビ
ット、18ビットとなるシフト量が出力される。
The changeover switch 20 is provided for the synchronization signal detection circuit 1
7 operates on the basis of the switching control signal supplied from the switching control signal 7. When the switching control signal is at the H level, the shift amount from the fixed length shift amount generating circuit 18 is selected. The shift amount from the length calculation circuit 19 is selected, and the selected shift amount is supplied to the adder 21. Therefore, from the changeover switch 20, as shown in FIG. 5F, in each of the stages # 1 to # 7, 6 bits,
A shift amount of 16 bits, 8 bits, 4 bits, 14 bits, 10 bits, and 18 bits is output.

【0047】加算器21は、例えば16進の加算器から
なり、切換スイッチ20を介して供給されるシフト量
と、切換スイッチ23を介して遅延器22から供給され
る現ステージのシフト量とを加算して、次のステージで
のシフト量を求める。具体的には、図5Hに示すよう
に、ステージ#1では、切換スイッチ20を介して供給
される6ビットと切換スイッチ23を介して供給される
10ビット(図5Gに示す)を加算して、0(=16−
16)ビットを求める。また、ステージ#2では、切換
スイッチ20を介して供給される16ビットと、切換ス
イッチ23がアース側を選択することによる0ビットと
を加算して、0(=16−16)ビットを求める。ま
た、ステージ#3では、切換スイッチ20を介して供給
される8ビットと切換スイッチ23を介して供給される
0ビットを加算して、8ビットを求める。以下同様に、
ステージ#4では、4ビットと8ビットを加算して、1
2ビットを求める。また、ステージ#5では、14ビッ
トと12ビットを加算して、10(=26−16)ビッ
トを求める。また、ステージ#6では、10ビットと1
0ビットを加算して、4(=20−16)ビットを求め
る。また、ステージ#7では、18ビットと4ビットを
加算して、6(=22−16)ビットを求める。そし
て、加算器21は、このようにして求めたシフト量を遅
延器22に供給する。
The adder 21 is composed of, for example, a hexadecimal adder, and calculates the shift amount supplied through the changeover switch 20 and the shift amount of the current stage supplied from the delay unit 22 through the changeover switch 23. Addition is performed to determine the shift amount in the next stage. Specifically, as shown in FIG. 5H, in stage # 1, 6 bits supplied through the changeover switch 20 and 10 bits (shown in FIG. 5G) supplied through the changeover switch 23 are added. , 0 (= 16−
16) Find bits. In stage # 2, 16 bits supplied via the changeover switch 20 and 0 bit when the changeover switch 23 selects the ground side are added to obtain 0 (= 16-16) bits. In stage # 3, 8 bits supplied via the changeover switch 20 and 0 bits supplied via the changeover switch 23 are added to obtain 8 bits. Similarly,
In stage # 4, 4 bits and 8 bits are added and 1
Find 2 bits. In stage # 5, 14 bits and 12 bits are added to obtain 10 (= 26−16) bits. In stage # 6, 10 bits and 1
By adding 0 bits, 4 (= 20-16) bits are obtained. In stage # 7, 18 bits and 4 bits are added to obtain 6 (= 22−16) bits. Then, the adder 21 supplies the shift amount thus obtained to the delay unit 22.

【0048】遅延器22は、加算器21からのシフト量
を次のステージでのシフト量としてバレルシフタ15、
及び切換スイッチ23を介して加算器21に供給する。
The delay unit 22 uses the shift amount from the adder 21 as the shift amount in the next stage,
And to the adder 21 via the changeover switch 23.

【0049】そして、バレルシフタ15は、遅延器22
からのシフト量を上述の制御信号S 0 、S1 ・・・と
し、遅延器13、14からパラレルデータとして供給さ
れる可変長符号データ、フレーム同期信号等をビットシ
フトする。この結果、バレルシフタ15からは、可変長
符号データ等が、その先頭ビットが常にMSBとなるよ
うにビットシフトされて出力される。
The barrel shifter 15 includes a delay unit 22
From the control signal S 0, S1···When
Supplied from the delay units 13 and 14 as parallel data.
Variable-length code data, frame synchronization signals, etc.
To shift. As a result, from the barrel shifter 15, the variable length
The first bit of code data is always MSB
And output after bit shifting.

【0050】ROM16には、例えばハフマン符号を復
号化するためのテーブルが予め記憶されており、ROM
16は、バレルシフタ15から供給される先頭ビットが
MSBとなるようにビットシフトされた可変長符号デー
タを読出アドレスとして、可変長符号データを復号化し
て得られる符号データを読み出し、この符号データを上
述の図2に示す逆量子化回路2に供給する。そして、上
述したように、逆量子化回路2〜D/A変換器6におい
て、符号データに逆量子化、逆離散余弦変換等の処理が
施され、映像信号が再生される。
A table for decoding, for example, Huffman codes is stored in the ROM 16 in advance.
Reference numeral 16 designates, as a read address, variable-length code data bit-shifted so that the first bit supplied from the barrel shifter 15 becomes the MSB, reads out the code data obtained by decoding the variable-length code data, and To the inverse quantization circuit 2 shown in FIG. Then, as described above, in the inverse quantization circuit 2 to the D / A converter 6, processing such as inverse quantization and inverse discrete cosine transform is performed on the code data, and the video signal is reproduced.

【0051】つぎに、本発明を適用した所謂巡回型バレ
ルシフタについて説明する。この巡回型バレルシフタ
は、上述したバレルシフタと同等の回路を有し、一部の
回路接続が異なった構成となっている。すなわち、巡回
型バレルシフタは、第1列の入力端子T11に入力データ
の最上位ビットあるいは最下位ビットを入力し、j≠1
である第j列の入力端子Tkj(k=i)に第j−1列の
i≧M+1−2 J であるセレクタSELij-1の出力を入
力するようになっている。
Next, a so-called cyclic type barrel to which the present invention is applied.
The shifter will be described. This cyclic barrel shifter
Has a circuit equivalent to the barrel shifter described above,
The circuit connection is different. That is, traveling
Type barrel shifter has a first row of input terminals T11Input data
Input the most significant bit or least significant bit of
Input terminal T of the j-th columnkj(K = i) in the j-1st column
i ≧ M + 1-2 JSelector SELij-1Input
It is designed to help.

【0052】具体的には、例えば、8入力8出力であっ
て、上位ビット側にシフトする巡回型バレルシフタは、
図6に示すように、第1列の入力端子T11に入力データ
のMSBを入力し、第2列の入力端子T12、T22にセレ
クタSEL71、セレクタSEL81の各出力をそれぞれ入
力し、第3列の入力端子T13〜T43にセレクタSEL52
〜SEL82の各出力をそれぞれ入力するようになってい
る。そして、例えば3ビットシフトしたときは、シフト
した結果押し出された上位3ビットを、空いた下位3ビ
ットに順に挿入して、巡回的にビットシフトを行うよう
になっている。なお、上述の図1に示す回路と同じ回路
には、同一の指示符号を付して説明を省略する。
More specifically, for example, a cyclic barrel shifter having eight inputs and eight outputs and shifting to the upper bit side is as follows.
As shown in FIG. 6, enter the MSB of the input data to the input terminal T 11 of the first row, the selector SEL 71, each output of the selector SEL 81 and input to the input terminal T 12, T 22 in the second column The selector SEL 52 is connected to the input terminals T 13 to T 43 in the third column.
To SEL 82 are respectively input. Then, for example, when shifting by 3 bits, the upper 3 bits pushed out as a result of the shifting are sequentially inserted into the vacated lower 3 bits to perform a cyclic bit shift. Note that the same circuits as those shown in FIG. 1 described above are denoted by the same reference numerals, and description thereof will be omitted.

【0053】したがって、巡回型バレルシフタも、従来
の巡回型バレルシフタに比して、2入力1出力のセレク
タの個数を大幅に削減することができ、例えばIC化に
おいて他の回路を同時に搭載することができ、高速動作
を可能にすることができる。
Therefore, the cyclic type barrel shifter can greatly reduce the number of 2-input / 1-output selectors as compared with the conventional cyclic type barrel shifter. And high-speed operation can be realized.

【0054】なお、本発明は、上述の実施例に限定され
るものではなく、例えば電子計算機の乗算器等に用いら
れるバレルシフタにも適用できることは言うまでもな
い。
It should be noted that the present invention is not limited to the above-described embodiment, and it is needless to say that the present invention can be applied to, for example, a barrel shifter used for a multiplier of an electronic computer.

【0055】[0055]

【発明の効果】以上の説明でも明らかなように、本発明
に係るバレルシフタは、M行×N列(M、Nは整数)の
マトリックス状に配設された2入力1出力のセレクタS
ELij(i=1〜M、j=1〜N、M≦2N )と、第1
列のセレクタSELi1に対して設けられたデータを入力
するM個の入力端子DIi と、第N列のセレクタSEL
iNに対して設けられたデータを出力するM個の出力端子
DOi と、各j列に対してそれぞれ設けられた2j-1
の入力端子Tkj(k=1〜2j-1 )とを備え、第1列の
セレクタSELi1は、i≠1であるセレクタSELi1
互いに隣接する入力端子DIi-1 、DIi を介してそれ
ぞれ入力されるデータのビットを切り換え選択し、i=
1であるセレクタSELi1が入力端子T11を介して入力
される信号と入力端子DI1 を介して入力されるデータ
のビットを切り換え選択し、j≠1である第j列のセレ
クタSELijは、i>2j-1 であるセレクタSELij
第j−1列のセレクタSELij-1の出力とセレクタSE
hj-1(h=i−2j-1 )の出力を切り換え選択し、i
≦2j-1 であるセレクタSELijが第j−1列のセレク
タSELij-1の出力と入力端子Tkj(k=i)を介して
入力される信号を切り換え選択し、各j列のセレクタS
ELijが同一の制御信号によって動作し、入力端子DI
i を介して入力されるデータをビットシフトしたデータ
を、出力端子DOi を介して出力するようにすることに
より、従来のバレルシフタに比して、2入力1出力のセ
レクタの個数を大幅に削減することができ、例えばIC
化において他の回路を同時に搭載することができ、高速
動作を可能にすることができる。
As is clear from the above description, the present invention
Is M rows × N columns (M and N are integers).
Two-input one-output selector S arranged in a matrix
ELij(I = 1 to M, j = 1 to N, M ≦ 2N) And the first
Column selector SELi1Enter the data provided for
M input terminals DIiAnd the N-th column selector SEL
iNM output terminals for outputting data provided for
DOiAnd 2 provided for each j column, respectively.j-1Pieces
Input terminal Tkj(K = 1 ~ 2j-1) And the first row
Selector SELi1Is a selector SEL for which i ≠ 1i1But
Input terminals DI adjacent to each otheri-1, DIiThrough it
The input data bits are switched and selected, and i =
Selector SEL that is 1i1Is the input terminal T11Input via
Signal and input terminal DI1Data entered via
Of the j-th column where j ≠ 1.
Kuta SELijIs i> 2j-1Selector SELijBut
J-1st column selector SELij-1Output and selector SE
Lhj-1(H = i-2j-1), And select the output.
≦ 2j-1Selector SELijIs the j-1st select
TA SELij-1Output and input terminal TkjVia (k = i)
The input signal is switched and selected, and the selector S of each j column is selected.
ELijAre operated by the same control signal, and the input terminal DI
iBit-shifted data input through
To the output terminal DOiTo output via
As compared with the conventional barrel shifter, the two-input one-output
Can greatly reduce the number of
Other circuits can be mounted at the same time,
Operation can be enabled.

【0056】また、本発明に係るバレルシフタは、第1
列の入力端子T11に入力データの最上位ビットあるいは
最下位ビットを入力し、j≠1である第j列の入力端子
kj(k=i)に第j−1列のi≧M+1−2J である
セレクタSELij-1の出力を入力し、入力データを巡回
的にビットシフトしたデータを出力端子DOi を介して
出力するようにすることにより、従来の巡回型バレルシ
フタに比して、2入力1出力のセレクタの個数を大幅に
削減することができ、例えばIC化において他の回路を
同時に搭載することができ、高速動作を可能にすること
ができる。
Further, the barrel shifter according to the present invention has a first
Enter the most significant bits or least significant bits of the input data to the input terminal T 11 of the column, the input terminal T of the j-th column is j ≠ 1 kj (k = i ) in the first j-1 column i ≧ M + 1- receives an output of the selector SEL ij-1 is 2 J, by input data cyclically via the output terminal DO i bit shifted data so as to output, as compared with the conventional recursive barrel shifter The number of two-input, one-output selectors can be greatly reduced. For example, other circuits can be mounted simultaneously in an integrated circuit, and high-speed operation can be realized.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明を適用したバレルシフタの回路構成を示
すブロック図である。
FIG. 1 is a block diagram showing a circuit configuration of a barrel shifter to which the present invention is applied.

【図2】上記バレルシフタを用いた受信装置を回路構成
を示すブロック図である。
FIG. 2 is a block diagram showing a circuit configuration of a receiving device using the barrel shifter.

【図3】上記受信装置を構成するIVLCの具体的な回
路構成を示すブロック図である。
FIG. 3 is a block diagram showing a specific circuit configuration of an IVLC constituting the receiving device.

【図4】上記IVLCに入力される可変長符号データを
模式的に示す図である。
FIG. 4 is a diagram schematically showing variable-length code data input to the IVLC.

【図5】上記IVLCの動作を説明するためのタイムチ
ャートである。
FIG. 5 is a time chart for explaining the operation of the IVLC.

【図6】本発明を適用した巡回型バレルシフタの回路構
成を示すブロック図である。
FIG. 6 is a block diagram showing a circuit configuration of a cyclic barrel shifter to which the present invention is applied.

【図7】従来のバレルシフタの回路構成を示すブロック
図である。
FIG. 7 is a block diagram showing a circuit configuration of a conventional barrel shifter.

【符号の説明】[Explanation of symbols]

SELij・・・セレクタ DIi ・・・入力端子 DOi ・・・出力端子 Tkj・・・入力端子SEL ij・ ・ ・ Selector DI i・ ・ ・ Input terminal DO i・ ・ ・ Output terminal T kj・ ・ ・ Input terminal

フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H03M 7/40 G06F 7/00 Continuation of the front page (58) Field surveyed (Int.Cl. 7 , DB name) H03M 7/40 G06F 7/00

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 M行×N列(M、Nは整数)のマトリッ
クス状に配設された2入力1出力のセレクタSEL
ij(i=1〜M、j=1〜N、M≦2N )と、 第1列のセレクタSELi1に対して設けられたデータを
入力するM個の入力端子DIi と、 第N列のセレクタSELiNに対して設けられたデータを
出力するM個の出力端子DOi と、 各j列に対してそれぞれ設けられた2j-1 個の入力端子
kj(k=1〜2j-1)とを備え、 第1列のセレクタSELi1は、i≠1であるセレクタS
ELi1が互いに隣接する上記入力端子DIi-1 、DIi
を介してそれぞれ入力されるデータのビットを切り換え
選択し、i=1であるセレクタSELi1が上記入力端子
11を介して入力される信号と上記入力端子DI1 を介
して入力されるデータのビットを切り換え選択し、 j≠1である第j列のセレクタSELijは、i>2j-1
であるセレクタSEL ijが第j−1列のセレクタSEL
ij-1の出力とセレクタSELhj-1(h=i−2 j-1 )の
出力を切り換え選択し、i≦2j-1 であるセレクタSE
ijが第j−1列のセレクタSELij-1の出力と上記入
力端子Tkj(k=i)を介して入力される信号を切り換
え選択し、 各j列のセレクタSELijが同一の制御信号によって動
作し、上記入力端子DIi を介して入力されるデータを
ビットシフトしたデータを、上記出力端子DO i を介し
て出力することを特徴とするバレルシフタ。
1. A matrix of M rows × N columns (M and N are integers).
2-input / 1-output selector SEL arranged in a matrix
ij(I = 1 to M, j = 1 to N, M ≦ 2N) And the first column of selectors SELi1The data provided for
M input terminals DI for inputiAnd the selector SEL in the Nth columniNThe data provided for
M output terminals DO for outputiAnd 2 provided for each j columnj-1Input terminals
Tkj(K = 1 ~ 2j-1), The first column of selectors SELi1Is a selector S for which i ≠ 1
ELi1Are the input terminals DI adjacent to each other.i-1, DIi
Switches the bits of the data input via
Selector SEL with i = 1i1Is the above input terminal
T11And the input terminal DI1Through
And selects the bits of the data to be input, and the selector SEL in the j-th column where j 1ijIs i> 2j-1
Selector SEL ijIs the selector SEL in the j-1st column
ij-1Output and selector SELhj-1(H = i-2 j-1)of
Select output switching, i ≦ 2j-1Selector SE
LijIs the selector SEL in the j-1st columnij-1Output and input
Force terminal TkjSwitch the signal input via (k = i)
And the selector SEL of each j columnijAre driven by the same control signal.
Input terminal DIiData entered via
The bit-shifted data is output to the output terminal DO. iThrough
A barrel shifter characterized in that the output is performed.
【請求項2】第1列の入力端子T11に入力データの最上
位ビットあるいは最下位ビットを入力し、 j≠1である第j列の入力端子Tkj(k=i)に第j−
1列のi≧M+1−2 J であるセレクタSELij-1の出
力を入力することを特徴とする請求項1記載のバレルシ
フタ。
2. An input terminal T in a first column.11At the top of the input data
Input the least significant bit or the least significant bit, and input terminal T of the j-th column where j 1kj(K = i) is the j-th
One row of i ≧ M + 1-2 JSelector SELij-1Out of
The barrel system according to claim 1, wherein a force is input.
lid.
JP04215222A 1992-08-12 1992-08-12 Barrel shifter Expired - Fee Related JP3103913B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04215222A JP3103913B2 (en) 1992-08-12 1992-08-12 Barrel shifter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP04215222A JP3103913B2 (en) 1992-08-12 1992-08-12 Barrel shifter

Publications (2)

Publication Number Publication Date
JPH0661868A JPH0661868A (en) 1994-03-04
JP3103913B2 true JP3103913B2 (en) 2000-10-30

Family

ID=16668729

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04215222A Expired - Fee Related JP3103913B2 (en) 1992-08-12 1992-08-12 Barrel shifter

Country Status (1)

Country Link
JP (1) JP3103913B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH062950A (en) * 1992-06-17 1994-01-11 Fujitsu General Ltd Controlling method for oil fired warm water boiler

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5071282B2 (en) * 2008-07-15 2012-11-14 ソニー株式会社 Bit selection circuit
JP6327605B2 (en) 2014-02-10 2018-05-23 パナソニックIpマネジメント株式会社 Variable shifter, LDPC decoder, and data shift method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH062950A (en) * 1992-06-17 1994-01-11 Fujitsu General Ltd Controlling method for oil fired warm water boiler

Also Published As

Publication number Publication date
JPH0661868A (en) 1994-03-04

Similar Documents

Publication Publication Date Title
JP2672302B2 (en) Conversion circuit
JP3227292B2 (en) Encoding device, encoding method, decoding device, decoding method, encoding / decoding device, and encoding / decoding method
US5029122A (en) Discrete cosine transforming apparatus
KR100246878B1 (en) Inverse discrete cosine transform processor
US6215424B1 (en) System for variable length codeword processing suitable for video and other applications
US4281344A (en) Video interframe transform coding technique
EP0589682A2 (en) Variable length code decoder
US5163103A (en) Discrete cosine transforming apparatus
JPH0799812B2 (en) Signal coding apparatus, signal decoding apparatus, and signal coding / decoding apparatus
JPH09198373A (en) Inverse discrete cosine transformation processor and mpeg decoder
US6546053B1 (en) System and method for decoding signal and method of generating lookup table for using in signal decoding process
US6408102B1 (en) Encoding/decoding device
JPH1022834A (en) Variable length code processor and image processor
JP3103913B2 (en) Barrel shifter
US5748793A (en) Quick image processor of reduced circuit scale with high image quality and high efficiency
JPH09198371A (en) Parallel data word/serial word conversion device and distribution arithmetic unit
US5754128A (en) Variable-length code encoding and segmenting apparatus having a byte alignment unit
JPH02272970A (en) Data processing circuit
JP2710917B2 (en) Header detector and decoding device using the same
KR100207428B1 (en) Variable length coding apparatus and method adaptive to changes of the hoffman codes
JP2785823B2 (en) High-efficiency television signal encoding apparatus and method, and decoding apparatus and method
JP2753091B2 (en) Image data expansion circuit
JPH09198372A (en) Carry value generation device and addition/subtraction m bit value generation device
JPS60162391A (en) Sequence approximate vector quantizer
JP3622473B2 (en) Variable length code decoding device

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000718

LAPS Cancellation because of no payment of annual fees