JP2006127536A - Discrete cosine transform system - Google Patents

Discrete cosine transform system Download PDF

Info

Publication number
JP2006127536A
JP2006127536A JP2005341924A JP2005341924A JP2006127536A JP 2006127536 A JP2006127536 A JP 2006127536A JP 2005341924 A JP2005341924 A JP 2005341924A JP 2005341924 A JP2005341924 A JP 2005341924A JP 2006127536 A JP2006127536 A JP 2006127536A
Authority
JP
Japan
Prior art keywords
discrete cosine
coefficients
read
coefficient
dimensional
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.)
Pending
Application number
JP2005341924A
Other languages
Japanese (ja)
Other versions
JP2006127536A5 (en
Inventor
Shinji Kitamura
臣二 北村
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2005341924A priority Critical patent/JP2006127536A/en
Publication of JP2006127536A publication Critical patent/JP2006127536A/en
Publication of JP2006127536A5 publication Critical patent/JP2006127536A5/ja
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To eliminate the necessity of using a high speed dual port RAM and to prevent increase in power consumption accompanying the use of the dual port RAM in a two-dimensional discrete cosine transform system. <P>SOLUTION: A memory space 3 is constituted using a plurality of dual port RAMs 3a, 3b. A transpose control part 4 to which a one-dimensional discrete cosine coefficient is supplied from a one-dimensional discrete cosine transform circuit 2 at the previous stage is equipped with a write control part 41 which repeatedly and individually controls write operations of N dual port RAMs 3a, 3b with frequency of once in N clock cycles and a read control part 42 which repeatedly and individually controls reading operations with frequency of once in N clock cycles, write frequency and read frequency of the one-dimensional discrete cosine transform coefficient are lowered, respectively. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、たとえば8×8画素などの、m×n画素(m、nは整数、m=nまたはm≠n)のブロック単位で行われる2次元離散コサイン変換を、行方向、列方向の1次元離散コサイン変換に分解して実行することにより実現する離散コサイン変換装置に関する。   The present invention performs two-dimensional discrete cosine transform performed in units of blocks of m × n pixels (m, n is an integer, m = n or m ≠ n), such as 8 × 8 pixels, in the row direction and the column direction. The present invention relates to a discrete cosine transform device realized by decomposing into one-dimensional discrete cosine transform and executing it.

以下において、「離散コサイン変換」を『DCT』と略称することがある。図31に示すように、8×8画素のブロック単位で2次元離散コサイン変換を行う従来の2次元離散コサイン変換装置101は、8×8画素で構成されるブロックの水平方向8画素分の画像データPXLDを入力とし、水平方向の1次元DCT変換を行う前段の1次元DCT変換回路102と、64個の1次元DCT係数を格納するための領域を有するメモリ空間103と、1次元DCT係数の行位置、列位置の入れ替え(転置)を行う転置制御部104と、垂直方向の1次元DCT変換を行う後段の1次元DCT変換回路105とで構成されている。   Hereinafter, “discrete cosine transform” may be abbreviated as “DCT”. As shown in FIG. 31, a conventional two-dimensional discrete cosine transform device 101 that performs two-dimensional discrete cosine transform in units of 8 × 8 pixels is an image of 8 pixels in the horizontal direction of a block composed of 8 × 8 pixels. The previous one-dimensional DCT conversion circuit 102 that receives the data PXLD and performs horizontal one-dimensional DCT conversion, a memory space 103 having an area for storing 64 one-dimensional DCT coefficients, and one-dimensional DCT coefficients A transposition control unit 104 that replaces (transposes) row positions and column positions, and a subsequent one-dimensional DCT conversion circuit 105 that performs vertical one-dimensional DCT conversion.

メモリ空間103は、64ワードの1個のデュアルポートRAM103aで構成されている。
転置制御部104は、書き込み制御部141と読み出し制御部142とを備える。このうち、書き込み制御部141は、書き込みカウンタ1411と書き込みアドレス発生部1412とを備えて、デュアルポートRAM103aの書き込み制御を行う。読み出し制御部142は、読み出しカウンタ1421と読み出しアドレス発生部1422とを備えて、読み出し制御を行う。
The memory space 103 is composed of one dual port RAM 103a of 64 words.
The transposition control unit 104 includes a write control unit 141 and a read control unit 142. Among these, the write control unit 141 includes a write counter 1411 and a write address generation unit 1412, and performs write control of the dual port RAM 103a. The read control unit 142 includes a read counter 1421 and a read address generation unit 1422 and performs read control.

前段の1次元DCT変換回路102は、システムクロックSCLKに同期して順次供給される画像データPXLDを入力とし、水平方向8画素分の画像データ毎に1次元DCT変換を行い、1次元DCT係数DCTI(K0〜K63)を、最初の1次元DCT係数K0から、1クロックサイクルに1係数ずつ、順次出力する。   The preceding one-dimensional DCT conversion circuit 102 receives as input image data PXLD sequentially supplied in synchronization with the system clock SCLK, performs one-dimensional DCT conversion for every eight pixels in the horizontal direction, and produces a one-dimensional DCT coefficient DCTI. (K0 to K63) are sequentially output from the first one-dimensional DCT coefficient K0, one coefficient per clock cycle.

デュアルポートRAM103aは、64ワードのデータ格納領域を有し、書き込みデータ入力端子WDと、書き込みアドレス入力端子WAと、書き込み許可入力端子WENと、読み出しアドレス入力端子RAと、読み出し許可入力端子RENと、読み出しデータ出力端子RDと、クロック入力端子CLKとを備える。このデュアルポートRAM103aでは、書き込み許可入力WENが論理値‘0’の時に限り、クロック入力端子CLKに入力されるシステムクロックSCLKの立ち上がりエッジに同期して、書き込みデータ入力端子WDに入力された書き込みデータ入力DCTIが、書き込みアドレス入力端子WAに供給されたアドレスに書き込まれる。また、読み出し許可入力RENが論理値‘0’の時に限り、デュアルポートRAM103aの読み出しデータ出力RDから、読み出しアドレス入力端子RAに供給された読み出しアドレスに格納されているデータが読み出される。   The dual port RAM 103a has a data storage area of 64 words, a write data input terminal WD, a write address input terminal WA, a write enable input terminal WEN, a read address input terminal RA, a read enable input terminal REN, A read data output terminal RD and a clock input terminal CLK are provided. In this dual port RAM 103a, the write data input to the write data input terminal WD is synchronized with the rising edge of the system clock SCLK input to the clock input terminal CLK only when the write enable input WEN is a logical value “0”. The input DCTI is written at the address supplied to the write address input terminal WA. Further, only when the read permission input REN is the logical value “0”, the data stored in the read address supplied to the read address input terminal RA is read from the read data output RD of the dual port RAM 103a.

書き込み制御部141の書き込みカウンタ1411は、7ビットのバイナリカウンタで構成され、外部より入力される書き込み開始信号WSTARTが論理値‘0’の時に限り、システムクロックSCLKに同期して、順次カウントアップされていく。外部より供給される書き込み開始信号WSTARTは、前段の1次元DCT変換回路102より出力される最初の1次元DCT係数K0が出力される同一のタイミングで論理値が‘0’となる信号であり、書き込み開始タイミングを示す信号である。   The write counter 1411 of the write controller 141 is composed of a 7-bit binary counter, and is counted up sequentially in synchronization with the system clock SCLK only when the externally input write start signal WSTART is a logical value “0”. To go. The write start signal WSTART supplied from the outside is a signal whose logical value becomes “0” at the same timing when the first one-dimensional DCT coefficient K0 output from the one-dimensional DCT conversion circuit 102 in the previous stage is output. It is a signal indicating the write start timing.

書き込みアドレス発生部1412は、書き込みカウンタ1411の7ビット出力WCNT6〜WCNT0を入力とし、出力WCNT6が論理値‘0’の時は、デュアルポートRAM103aの書き込みアドレスWAAとして、0、1、2、3、……、62、63の順、すなわち、出力WCNT5〜WCNT0をそのまま供給する。また、WCNT6が論理値‘1’の時は、書き込みアドレスWAAとして、0、8、16、24、……、47、55、63の順、すなわち8×8画素ブロックの列方向順のアドレスを供給する。   The write address generator 1412 receives the 7-bit outputs WCNT6 to WCNT0 of the write counter 1411. When the output WCNT6 is a logical value “0”, the write address WAA of the dual port RAM 103a is 0, 1, 2, 3, ..., 62, 63, that is, outputs WCNT5 to WCNT0 are supplied as they are. When WCNT6 is logical “1”, the write address WAA is an address in the order of 0, 8, 16, 24,..., 47, 55, 63, that is, in the column direction of the 8 × 8 pixel block. Supply.

読み出し制御部142の読み出しカウンタ1421は、7ビットのバイナリカウンタで構成され、外部より入力される読み出し開始信号RSTARTが論理値‘0’の時に限り、システムクロックSCLKに同期して、順次カウントアップされていく。外部より供給される読み出し開始信号RSTARTは、前段の1次元DCT変換回路102より出力される1次元DCT係数が50個以上63個以下のときに、デュアルポートRAM103aに書き込まれたタイミングで、論理値が‘0’となる信号であり、読み出し開始タイミングを示す信号である。   The read counter 1421 of the read control unit 142 is composed of a 7-bit binary counter, and is counted up sequentially in synchronization with the system clock SCLK only when the read start signal RSTART input from the outside is a logical value “0”. To go. The read start signal RSTART supplied from the outside is a logical value at the timing when it is written in the dual port RAM 103a when the one-dimensional DCT coefficient output from the one-dimensional DCT conversion circuit 102 in the previous stage is 50 or more and 63 or less. Is a signal indicating “0”, and is a signal indicating the read start timing.

読み出しアドレス発生部1422は、読み出しカウンタ1421の7ビット出力RCNT6〜RCNT0を入力とし、出力RCNT6が論理値‘0’の時は、デュアルポートRAM103aの書き込みアドレスRAAとして、0、8、16、24、……、47、55、63の順、すなわち8×8画素ブロックの列方向順のアドレスを供給する。また出力RCNT6が論理値‘1’の時は、書き込みアドレスRAAとして、0、1、2、3、……、62、63の順、すなわち出力RCNT5〜RCNT0をそのまま供給する。   The read address generator 1422 receives the 7-bit outputs RCNT6 to RCNT0 of the read counter 1421. When the output RCNT6 has a logical value “0”, the write address RAA of the dual port RAM 103a is 0, 8, 16, 24, ..., 47, 55, 63, that is, addresses in the column direction of the 8 × 8 pixel block are supplied. When the output RCNT6 is the logical value “1”, the write addresses RAA are supplied in the order of 0, 1, 2, 3,..., 62, 63, that is, the outputs RCNT5 to RCNT0.

後段の1次元DCT変換回路105は、読み出し制御部142により読み出し制御されたデュアルポートRAM103aからの読み出しデータ出力RDAを、1クロックサイクルに1回の頻度で1係数ずつ入力し、8係数毎の垂直方向1次元DCT変換を行い、2次元DCT係数出力端子DCTOUTから2次元DCT係数KK0〜KK63をシステムクロックSCLKに同期して順次出力する。   The subsequent one-dimensional DCT conversion circuit 105 inputs the read data output RDA from the dual port RAM 103a, which is read-controlled by the read control unit 142, one coefficient at a frequency of once per clock cycle, and the vertical one for every eight coefficients. One-dimensional DCT conversion is performed, and two-dimensional DCT coefficients KK0 to KK63 are sequentially output from the two-dimensional DCT coefficient output terminal DCTOUT in synchronization with the system clock SCLK.

図32は、最初の8×8画素ブロックにおける、1次元DCT係数のデュアルポートRAM103aへの書き込み順を示した図である。前段の1次元DCT変換回路102より1係数ずつ出力される1次元DCT係数K0〜K63が、書き込みアドレス発生部1412により指定された書き込みアドレスWAのアドレス0、1、2、3、……、62、63の順に従って、書き込み開始STARTが論理値‘0’の時に、1クロックサイクルに1係数ずつ、順次デュアルポートRAM103aに書き込まれる。   FIG. 32 is a diagram showing the order of writing the one-dimensional DCT coefficient to the dual port RAM 103a in the first 8 × 8 pixel block. The one-dimensional DCT coefficients K0 to K63 output one by one from the one-dimensional DCT conversion circuit 102 in the previous stage are addresses 0, 1, 2, 3,... 62 of the write address WA designated by the write address generator 1412. , 63, when the write start START is a logical value “0”, one coefficient is sequentially written to the dual port RAM 103a in one clock cycle.

図33は、最初の8×8画素ブロックにおける、1次元DCT係数のデュアルポートRAM103aからの読み出し順を示す図である。水平方向の1次元DCT係数が50個以上、63個以下、デュアルポートRAM103aに書き込まれた時点から、読み出しアドレス発生部1422により指定された読み出しアドレスRAのアドレス0、8、16、24、……、47、55、63の順に従って、読み出し開始信号RSTARTが論理値‘0’の時に、1次元DCT係数を、K0、K8、K16、……、K47、K55、K63の順に、デュアルポートRAM103aから、1クロックサイクルに1係数ずつ順次読み出す。これにより、1次元DCT係数の行位置、列位置が転置される。   FIG. 33 is a diagram showing the reading order of the one-dimensional DCT coefficient from the dual port RAM 103a in the first 8 × 8 pixel block. Addresses 0, 8, 16, 24,... Of the read address RA designated by the read address generator 1422 from the time when the horizontal one-dimensional DCT coefficients are written in the dual port RAM 103a from 50 to 63 inclusive. , 47, 55, 63, when the read start signal RSTART is a logical value “0”, the one-dimensional DCT coefficients are transferred from the dual port RAM 103a in the order of K0, K8, K16,..., K47, K55, K63. One coefficient is sequentially read in one clock cycle. Thereby, the row position and column position of the one-dimensional DCT coefficient are transposed.

図34は、次の8×8画素のブロック単位における1次元DCT係数(K’0〜K’63)のデュアルポートRAM103aへの書き込み順を示した図である。すなわち、まず最初の8×8画素ブロックの1次元DCT係数が、読み出しアドレス発生部1422により指定された読み出しアドレスRAのアドレス0、8、16、24、……、47、55、63の順に、1次元DCT係数K0、K8、K16、……、K47、K55、K63として、デュアルポートRAM103aから順次読み出され始める。そして、その後、書き込みアドレス発生部1412により指定された書き込みアドレスWAのアドレス0、8、16、24、……、47、55、63の順に従って、書き込み開始信号WASTRTが論理値‘0’の時に、水平方向の1次元DCT係数K’0〜K’63が1クロックサイクルに1係数ずつ順次デュアルポートRAM103aに上書きされる。   FIG. 34 is a diagram showing the order of writing the one-dimensional DCT coefficients (K′0 to K′63) to the dual port RAM 103a in the next 8 × 8 pixel block unit. That is, the first one-dimensional DCT coefficient of the first 8 × 8 pixel block is in the order of addresses 0, 8, 16, 24,..., 47, 55, 63 of the read address RA designated by the read address generator 1422. The one-dimensional DCT coefficients K0, K8, K16,..., K47, K55, and K63 are sequentially read from the dual port RAM 103a. After that, when the write start signal WASTRT has a logical value “0” in the order of addresses 0, 8, 16, 24,..., 47, 55, 63 of the write address WA specified by the write address generator 1412. The one-dimensional DCT coefficients K′0 to K′63 in the horizontal direction are sequentially overwritten on the dual port RAM 103a one coefficient at a time in one clock cycle.

図35は、次の8×8画素のブロック単位における、1次元DCT係数K’0〜K’63のデュアルポートRAM103aからの読み出し順を示す図である。水平方向の1次元DCT係数が50個以上、63個以下、デュアルポートRAM103aに上書きされた時点から、読み出しアドレス発生部1422により指定された読み出しアドレスRAのアドレス0、1、2、3、……、61、62、63の順に従って、読み出し開始信号RSTARTが論理値‘0’の時に、デュアルポートRAM103aから、1次元DCT係数K‘0、K’8、K‘16、……、K’47、K‘55、K’63の順に、1クロックサイクルに1係数ずつ順次読み出すことにより、1次元DCT係数の行位置、列位置が転置される。   FIG. 35 is a diagram illustrating the reading order of the one-dimensional DCT coefficients K′0 to K′63 from the dual-port RAM 103a in the next 8 × 8 pixel block unit. Addresses 0, 1, 2, 3,... Of the read address RA designated by the read address generator 1422 from the time when the horizontal one-dimensional DCT coefficient is overwritten in the dual port RAM 103a by 50 to 63. , 61, 62, and 63, when the read start signal RSTART is a logical value “0”, the one-dimensional DCT coefficients K′0, K′8, K′16,. , K′55, K′63 in order, one coefficient at a time in one clock cycle, thereby transposing the row position and the column position of the one-dimensional DCT coefficient.

以上のように、書き込み制御部141に関しては、図32と図34の書き込み順を64個の1次元DCT係数毎に交互に切り替え制御し、また、読み出し制御部142に関しては、図33と図35の読み出し順を64個の1次元DCT係数毎に交互に切り替え制御することにより、1次元DCT係数の行位置、列位置の入れ替えが常に行われる。   As described above, with respect to the writing control unit 141, the writing order of FIGS. 32 and 34 is alternately switched for every 64 one-dimensional DCT coefficients, and with respect to the reading control unit 142, FIGS. By alternately switching the reading order of 64 one-dimensional DCT coefficients, the row position and the column position of the one-dimensional DCT coefficients are always exchanged.

図36は、デュアルポートRAM103aの書き込み動作のタイミングを示す図である。デュアルポートRAM103aへの書き込み動作は、書き込み開始信号WSTARTが論理値‘0’の時に、1クロックサイクルに1回の頻度で毎サイクル行われる。このため、行方向1次元DCT変換回路102より順次供給される1次元DCT係数の書き込みに関しては、使用するデュアルポートRAM103aのタイミングスペックである、書き込みデータとクロック間のセットアップタイムTsu(RAM)、ホールドタイムTh(RAM)を満足する必要がある。つまり、クロック周期をT、前段の1次元DCT変換回路102より順次供給される1次元DCT係数のシステムクロックSCLKからの遅延をTdとすると、(式−1)、(式−2)を満足する必要がある。   FIG. 36 is a diagram showing the timing of the write operation of the dual port RAM 103a. The write operation to the dual port RAM 103a is performed every cycle at a frequency of once per clock cycle when the write start signal WSTART is a logical value "0". For this reason, regarding the writing of the one-dimensional DCT coefficient sequentially supplied from the row-direction one-dimensional DCT conversion circuit 102, the setup specification Tsu (RAM) between the write data and the clock, which is the timing specification of the dual port RAM 103a to be used, and hold It is necessary to satisfy the time Th (RAM). That is, when the clock cycle is T and the delay from the system clock SCLK of the one-dimensional DCT coefficient sequentially supplied from the preceding one-dimensional DCT conversion circuit 102 is Td, (Expression-1) and (Expression-2) are satisfied. There is a need.

T − Td > Tsu(RAM) …… (式−1)
Td > Th(RAM) …… (式−2)
図37は、デュアルポートRAM103aの読み出し動作のタイミングを示す図である。デュアルポートRAM103aからの読み出し動作は、読み出し開始信号RSTARTが論理値‘0’の時に、1クロックサイクルに1回の頻度で毎サイクル行われる。このため、デュアルポートRAM103aからの読み出しデータRDAを後段の1次元DCT変換回路105が正確に受け取るためには、デュアルポートRAM103aのアクセスタイムをTpd、後段の1次元DCT変換回路105の入力タイミングスペックであるセットアップタイムをTsu(FF)、ホールドタイムをTh(FF)とすると、(式−3)、(式−4)の条件を満足する必要がある。
T−Td> Tsu (RAM) (Formula-1)
Td> Th (RAM) (Formula-2)
FIG. 37 is a diagram showing the timing of the read operation of the dual port RAM 103a. The read operation from the dual port RAM 103a is performed every cycle at a frequency of once per clock cycle when the read start signal RSTART is a logical value “0”. Therefore, in order for the subsequent one-dimensional DCT conversion circuit 105 to accurately receive the read data RDA from the dual-port RAM 103a, the access time of the dual-port RAM 103a is Tpd, and the input timing specification of the subsequent one-dimensional DCT conversion circuit 105 is used. When a certain setup time is Tsu (FF) and a hold time is Th (FF), the conditions of (Expression-3) and (Expression-4) must be satisfied.

T − Tpd > Tsu(FF) …… (式−3)
Tpd > Th(FF) …… (式−4)
これらの(式−1)〜(式−4)の条件すべてを満足すれば、1次元DCT係数のデュアルポートRAM103aへの書き込み、およびデュアルポートRAM103aからの読み出しデータの後段の1次元DCT変換回路105への伝搬動作が正確に行われる。1次元DCT変換回路105は、この転置された1次元DCT係数を入力とし、(式−3)、(式−4)の条件下で順次データを受け取り、垂直方向8係数分の1次元DCT変換を行う。
T−Tpd> Tsu (FF) (Formula-3)
Tpd> Th (FF) (Formula-4)
If all the conditions of (Expression-1) to (Expression-4) are satisfied, the one-dimensional DCT conversion circuit 105 at the subsequent stage of writing the one-dimensional DCT coefficient into the dual-port RAM 103a and the read data from the dual-port RAM 103a is used. Propagation is accurately performed. The one-dimensional DCT conversion circuit 105 receives the transposed one-dimensional DCT coefficient as input, sequentially receives data under the conditions of (Expression-3) and (Expression-4), and performs a one-dimensional DCT conversion for eight vertical coefficients. I do.

上述のように、従来の2次元離散コサイン変換装置は、メモリ空間を64ワードのデータ格納領域を有する1個のデュアルポートRAM103aで構成し、書き込み、読み出し制御を1クロックサイクルに1回の頻度で繰り返し行っていたため、高速な2次元離散コサイン変換装置を実現するためには、高速なデュアルポートRAMを使用しなければならないという問題があった。特に、メモリのアクセスタイムTpdは、一般的に他のロジック回路による遅延値よりも大きく、離散コサイン変換装置全体の最大動作可能周波数を決定する要素のひとつとなっている。また、高速なデュアルポートRAMを使用することにより、離散コサイン変換装置全体の最大動作可能周波数を上げることは実現可能ではあるが、デュアルポートRAMを高速動作させることにより、その消費電力が増大するという
問題があった。
As described above, in the conventional two-dimensional discrete cosine transform device, the memory space is configured by one dual-port RAM 103a having a data storage area of 64 words, and write / read control is performed once per clock cycle. Since it was repeatedly performed, there was a problem that a high-speed dual port RAM had to be used in order to realize a high-speed two-dimensional discrete cosine transform device. In particular, the memory access time Tpd is generally larger than the delay value of other logic circuits, and is one of the factors that determine the maximum operable frequency of the entire discrete cosine transform device. Although it is possible to increase the maximum operable frequency of the entire discrete cosine transform device by using a high-speed dual-port RAM, the power consumption increases by operating the dual-port RAM at high speed. There was a problem.

そこで本発明は、このような問題点を解決して、2次元離散コサイン変換装置において、高速なデュアルポートRAMの使用を不要とするとともに、それに伴う消費電力の増大を防止することを目的とする。   SUMMARY OF THE INVENTION Accordingly, an object of the present invention is to solve such problems and eliminate the need for a high-speed dual-port RAM in a two-dimensional discrete cosine transform device, and to prevent an increase in power consumption associated therewith. .

上記課題を解決するために、この発明に係る2次元離散コサイン変換装置は、メモリ空間を複数のデュアルポートRAMで構成し、前段の1次元DCT変換回路より供給される1次元DCT係数の書き込み頻度および後段の1次元DCT変換回路へ供給する1次元DCT係数の読み出し頻度をそれぞれ少なくすることにより、メモリにおける消費電力を減少させ、低消費電力化を実現することが可能となり、かつデュアルポートRAMへの書き込みタイミングマージンを増加させ、かつ読み出しデータのアクセスタイムによる回路動作周波数の制限を緩和するものである。   In order to solve the above-described problem, a two-dimensional discrete cosine transform device according to the present invention has a memory space composed of a plurality of dual-port RAMs and a writing frequency of a one-dimensional DCT coefficient supplied from a preceding one-dimensional DCT transform circuit. By reducing the frequency of reading the one-dimensional DCT coefficient supplied to the one-dimensional DCT conversion circuit at the subsequent stage, it is possible to reduce the power consumption in the memory and realize low power consumption, and to the dual port RAM. The write timing margin is increased and the restriction on the circuit operating frequency due to the access time of read data is relaxed.

詳しくは、N、m、nを整数とし、またm=nまたはm≠nとして、メモリ空間を、N個の(m×n)/Nワードのデータ格納領域を有するデュアルポートRAMで構成し、転置制御部を、前段の1次元DCT変換回路からNクロックサイクルに1回の頻度でN係数ずつ出力される水平方向の1次元DCT係数群を、m×N個またはn×N個の係数単位で同一列の係数をそれぞれ異なるデュアルポートRAMへ書き分け、それぞれのデュアルポートRAMへの書き込みに関してはNクロックサイクルに1回の頻度で書き込み制御する書き込み制御部と、その書き分けられた1次元DCT係数を、m×n係数のブロック単位の列方向順に、それぞれのデュアルポートRAMから、Nクロックサイクルに1回の頻度で、1係数ずつN係数分を繰り返し読み出し制御する読み出し制御部とで構成したもので
ある。
Specifically, N, m, and n are integers, and m = n or m ≠ n, and the memory space is configured by a dual port RAM having N (m × n) / N word data storage areas, The transposition control unit outputs a horizontal one-dimensional DCT coefficient group, which is output by N coefficients at a frequency of once every N clock cycles from the preceding one-dimensional DCT conversion circuit, to m × N or n × N coefficient units. Then, the coefficients in the same column are written to different dual-port RAMs, and for writing to each dual-port RAM, the write control unit that controls writing once every N clock cycles and the divided one-dimensional DCT coefficients are , M × n coefficients are repeated in increments of N coefficients one by one at a frequency of once every N clock cycles from each dual-port RAM in the order of the block units in the column direction. Which is constituted by a read control unit for reading control.

換言すると、この発明によると、m×n個の1次元DCT係数を一時的に格納するメモリ空間を、複数のデュアルポートRAMを用いて構成し、行方向の1次元離散コサイン変換により得られたすべての1次元DCT係数の行位置と列位置の入れ替え(転置)をして、列方向の1次元DCT変換回路へ供給するための転置制御部を、複数のデュアルポートRAMへ、個別に書き込み制御を行う書き込み制御部と、個別に読み出し制御を行う読み出し制御部とで構成し、各デュアルポートRAMの書き込み、読み出しアクセスの頻度(回数)を少なくすることにより、動作周波数の高速化および低消費電力化を図ることができる。   In other words, according to the present invention, a memory space for temporarily storing m × n one-dimensional DCT coefficients is configured by using a plurality of dual-port RAMs, and obtained by one-dimensional discrete cosine transform in the row direction. Write control of individual transposition control units for transposing (transposing) the row positions and column positions of all the one-dimensional DCT coefficients to the one-dimensional DCT conversion circuit in the column direction to a plurality of dual port RAMs. It is composed of a write control unit that performs read operations and a read control unit that performs read control individually, and by reducing the frequency (number of times) of write and read access to each dual port RAM, the operating frequency is increased and the power consumption is reduced. Can be achieved.

上述したように、この発明の離散コサイン変換装置は、1次元DCT係数の転置のために複数のデュアルポートRAMを用い、その書き込み、読み出しアクセスの頻度(回数)を少なくことにより、高速のデュアルポートRAMを使用しなくても高速動作を行うことが可能となる。さらに、デュアルポートRAMの書き込み、読み出し動作の回数(頻度)が少なくなることにより、デュアルポートRAMの消費電力が減少し、低消費電力化の実現が可能となる。   As described above, the discrete cosine transform device of the present invention uses a plurality of dual port RAMs for transposing one-dimensional DCT coefficients, and reduces the frequency (number of times) of write and read accesses, thereby enabling high speed dual port. High speed operation can be performed without using RAM. Furthermore, since the number of times of writing and reading operations (frequency) of the dual port RAM is reduced, the power consumption of the dual port RAM is reduced, and low power consumption can be realized.

請求項1記載の発明は、mおよびnを整数(m=nまたはm≠n)としてm列×n行の画素のブロック単位でm画素またはn画素ごとに水平方向の1次元DCT変換を行う前段のDCT変換回路と、このDCT変換回路から供給されるm×n個の1次元DCT係数を一時的に格納するメモリ空間と、このメモリ空間の行位置と列位置とを転置して1次元DCT係数の書き込みと読み出しとを制御する転置制御部と、上記メモリ空間から出力されるDCT係数を入力としてm係数またはn係数毎に垂直方向の1次元DCT変換を行う後段のDCT変換回路とを備えるDCT変換装置において、上記メモリ空間をNを整数としてN個の(m×n)/NワードのデュアルポートRAMを用いて構成し、上記転置制御部を、Nクロックサイクルに1回の頻度でN個の上記デュアルポートRAMの書き込み動作を繰り返し個別に制御する書き込み制御部と、Nクロックサイクルに1回の頻度で読み出し動作を繰り返し個別に制御する読み出し制御部とを具備する構成としたものである。   According to the first aspect of the present invention, m and n are integers (m = n or m ≠ n), and a one-dimensional DCT transformation in the horizontal direction is performed for each of m pixels or n pixels in block units of pixels of m columns × n rows. A DCT conversion circuit in the previous stage, a memory space for temporarily storing m × n one-dimensional DCT coefficients supplied from the DCT conversion circuit, and a row position and a column position of the memory space are transposed to form a one-dimensional A transposition control unit that controls writing and reading of DCT coefficients, and a DCT conversion circuit in a subsequent stage that performs one-dimensional DCT conversion in the vertical direction for each m coefficient or n coefficient with the DCT coefficient output from the memory space as an input. In the DCT conversion apparatus, the memory space is configured using N (m × n) / N word dual-port RAMs, where N is an integer, and the transposition control unit is configured to be used once every N clock cycles. A write control unit that repeatedly and individually controls the write operations of the N dual-port RAMs, and a read control unit that individually and repeatedly controls the read operation once every N clock cycles. Is.

請求項2記載の発明は、前段のDCT変換回路が、水平方向のmまたはn画素毎の1次元DCT変換を行って、NクロックサイクルにN個の係数ずつ1次元DCT係数群として順次パラレル出力するように構成され、
書き込み制御部は、上記前段のDCT変換回路から順次供給される1次元DCT係数群を、同一列の係数がm×N個またはn×N個の係数単位でそれぞれ異なるデュアルポートRAMに順次書き分けられるように制御するとともに、それぞれのデュアルポートRAMの書き込みに関しては、最初のm×n個の1次元DCT係数の場合は、任意のアドレスに順次書き込んだDCT係数が上書きされないようにアドレスを指定して、Nクロックサイクルに1回の頻度で同一のタイミングで書き込み制御し、次のm×n個の1次元DCT係数の場合は、最初のm×n個の1次元DCT係数が列方向に順次上書きされていくようにアドレスを個別に指定し、Nクロックサイクルに1回の頻度で1次元DCT係数を同一のタイミングで書き込み制御し、以後、上記2つの書き込み制御を繰り返し交互に行うように構成され、
読み出し制御部は、書き込み制御部によりN個のデュアルポートRAMに書き分けられた1次元DCT係数をm×n画素のブロック単位の列方向順にN個ずつ同時に読み出し可能となるアドレスを、上記デュアルポートRAMにそれぞれ繰り返し個別に供給し、Nクロックサイクルに1回の頻度で、同一のタイミングで読み出されたそれぞれの1次元DCT係数について、m×n画素のブロック単位の列方向順に係数の入れ替えを行い、その入れ替えられたN個の係数で構成される1次元DCT係数群を、Nクロックサイクルに1回の頻度で、同一のタイミングでラッチし、後段のDCT変換回路へ繰り返し供給するように構成され、
後段のDCT変換回路は、上記読み出し制御部からNクロックサイクルに1回の頻度で出力されるN個のDCT係数群を入力として、m係数またはn係数毎の1次元DCT変換を行うように構成されているようにしたものである。
According to the second aspect of the present invention, the DCT conversion circuit in the previous stage performs one-dimensional DCT conversion for every m or n pixels in the horizontal direction, and sequentially outputs in parallel as a one-dimensional DCT coefficient group by N coefficients every N clock cycles. Configured to
The write control unit sequentially writes the one-dimensional DCT coefficient group sequentially supplied from the DCT conversion circuit in the preceding stage into different dual-port RAMs in which the coefficient in the same column is different in units of m × N or n × N coefficients. As for the writing of each dual port RAM, in the case of the first m × n one-dimensional DCT coefficients, the addresses are designated so that the DCT coefficients sequentially written to arbitrary addresses are not overwritten. , Write control is performed at the same timing once every N clock cycles, and in the case of the next m × n one-dimensional DCT coefficients, the first m × n one-dimensional DCT coefficients are sequentially overwritten in the column direction. The address is individually specified so that the one-dimensional DCT coefficient is written at the same timing once every N clock cycles. , Configured to repeatedly perform the above two write controls alternately,
The read control unit is configured to read, in the dual port RAM, addresses at which N one-dimensional DCT coefficients written in the N dual port RAMs by the write control unit can be simultaneously read in the order of columns in m × n pixel blocks. Are repeatedly supplied individually, and the coefficients are exchanged in the order of columns in the order of blocks of m × n pixels for each one-dimensional DCT coefficient read at the same timing once every N clock cycles. The one-dimensional DCT coefficient group composed of the replaced N coefficients is latched at the same timing at a frequency of once every N clock cycles and repeatedly supplied to the subsequent DCT conversion circuit. ,
The DCT conversion circuit in the subsequent stage is configured to perform one-dimensional DCT conversion for each of the m coefficient or n coefficient, with N DCT coefficient groups output at a frequency of once every N clock cycles from the read control unit as an input. It is what has been done.

請求項3記載の発明は、前段のDCT変換回路が、水平方向m画素またはn画素毎の1次元DCT変換を行い、求まった1次元DCT変換係数に関してその行位置により係数の出力順を決定し、1クロックサイクルに1回の頻度で1係数ずつ順次出力するように構成され、
書き込み制御部は、上記前段のDCT変換回路から1係数ずつ順次供給される1次元DCT係数を、同一列の係数がm×N個またはn×N個の係数単位でそれぞれ異なるデュアルポートRAMに順次書き分けられるように制御し、それぞれのデュアルポートRAMの書き込みに関しては、最初のm×n個の1次元DCT係数の場合は、任意のアドレスに順次書き込んだDCT係数が上書きされないようにアドレスを個別に指定して、Nクロックサイクルに1回の頻度でそれぞれ異なるタイミングで書き込み制御し、次のm×n個の1次元DCT係数の場合は、最初のm×n個の1次元DCT係数が列方向に順次上書きされていくようにアドレスを個別に指定して、Nクロックサイクルに1回の頻度で1次元DCT係数を異なるタイミングで書き込み制御するように構成され、
読み出し制御部は、上記書き込み制御部によりN個の上記デュアルポートRAMに書き分けられた1次元DCT係数を、m×n画素のブロック単位の列方向順に、読み出し可能となるアドレスを、N個の上記デュアルポートRAMにそれぞれ個別に供給し、N個の上記デュアルポートRAMから、1次元DCT係数をNクロックサイクルに1回の頻度でそれぞれ異なるタイミングで読み出し制御し、読み出された1次元DCT係数については、Nクロックサイクルに1回の頻度で、それぞれ異なるタイミングでラッチして1次元DCT係数を順次時分割出力し、1クロックサイクルに1回の頻度で上記後段のDCT変換回路へ繰り返し供給するように構成され、
後段のDCT変換回路は、上記読み出し制御部により1クロックサイクルに1回の頻度で出力される1次元DCT係数を、その列位置により係数の行位置を認識して、m係数毎またはn係数毎の1次元DCT変換するように構成されているようにしたものである。
(第1の実施の形態)
以下、添付図面に基づいて、この発明の第1の実施の形態について述べる。図1は、この発明の実施の形態の2次元離散コサイン変換装置のブロック図である。2次元離散コサイン変換装置1は、前段の1次元DCT変換回路2と、メモリ空間3と、転置制御部4と、後段の1次元DCT変換回路5とによって構成される。
In the invention according to claim 3, the DCT conversion circuit in the previous stage performs one-dimensional DCT conversion for every m pixels or n pixels in the horizontal direction, and determines the output order of the coefficients for the obtained one-dimensional DCT conversion coefficients according to the row position. It is configured to sequentially output one coefficient at a frequency of once per clock cycle,
The write control unit sequentially supplies the one-dimensional DCT coefficients sequentially supplied one by one from the DCT conversion circuit in the previous stage to the dual port RAMs having different coefficients in the same column in units of m × N or n × N coefficients. In the case of the first m × n one-dimensional DCT coefficients, the addresses are individually set so that the DCT coefficients sequentially written to arbitrary addresses are not overwritten. Specify and write control at different timings once every N clock cycles. In the case of the next m × n one-dimensional DCT coefficients, the first m × n one-dimensional DCT coefficients are in the column direction. The addresses are individually specified so that they are overwritten sequentially, and the one-dimensional DCT coefficients are written at different timings once every N clock cycles. Configured to control only
The read control unit reads the one-dimensional DCT coefficients written in the N dual-port RAMs by the write control unit in the order of m × n pixels in the column direction in the column direction, and sets the N addresses Each of the dual-port RAMs is individually supplied, and the one-dimensional DCT coefficients are read out from the N dual-port RAMs at a frequency of once every N clock cycles, and the read one-dimensional DCT coefficients are read out. Are latched at different timings once every N clock cycles and sequentially time-divisionally output one-dimensional DCT coefficients, and are repeatedly supplied to the subsequent DCT conversion circuit once every clock cycle. Composed of
The subsequent DCT conversion circuit recognizes the one-dimensional DCT coefficient output at a frequency of once per clock cycle by the read control unit, recognizes the row position of the coefficient based on the column position, and outputs each m coefficient or n coefficient. It is configured to perform one-dimensional DCT transformation.
(First embodiment)
Hereinafter, a first embodiment of the present invention will be described with reference to the accompanying drawings. FIG. 1 is a block diagram of a two-dimensional discrete cosine transform apparatus according to an embodiment of the present invention. The two-dimensional discrete cosine transform device 1 includes a preceding one-dimensional DCT transform circuit 2, a memory space 3, a transposition control unit 4, and a succeeding one-dimensional DCT transform circuit 5.

メモリ空間3は、2個のデュアルポートRAM3a、3bにて構成される。
転置制御部4は、書き込み制御部41と読み出し制御部42とを具備する。書き込み制御部41は、書き込みカウンタ411と、書き込みアドレス発生部412と、書き込みデータ選択回路413と、書き込み許可生成部414とを備えて、2個のデュアルポートRAM3a、3bに対し個別に書き込み制御を行う。読み出し制御部42は、読み出しカウンタ421と、読み出しアドレス発生部422と、読み出しデータ選択回路423と、読み出し許可生成部424とを備えて、2個のデュアルポートRAM3a、3bに対し個別に読み出し制御を行う。
The memory space 3 is composed of two dual port RAMs 3a and 3b.
The transposition control unit 4 includes a write control unit 41 and a read control unit 42. The write control unit 41 includes a write counter 411, a write address generation unit 412, a write data selection circuit 413, and a write permission generation unit 414, and individually controls writing to the two dual port RAMs 3a and 3b. Do. The read control unit 42 includes a read counter 421, a read address generation unit 422, a read data selection circuit 423, and a read permission generation unit 424, and individually performs read control on the two dual port RAMs 3 a and 3 b. Do.

前段の1次元DCT変換回路2は、8×8画素ブロックに分割された画像の水平方向8画素分の画素データPXLDが、1画素ずつシステムクロックSCLKに同期して入力される。そして、この画素データPXLDに対し水平方向の1次元DCT変換が行われ、書き込みカウンタ411より供給されるWDLATが論理値‘0’の時、システムクロックSCLKに同期して、1次元DCT係数(K0〜K63)のうち、奇数列の係数を上位係数DCTI1、偶数列の係数を下位係数DCTI0として2係数ずつ順次パラレル出力される。書き込みカウンタ411より1次元DCT変換回路2に供給される信号WDLATは、後述するが、システムクロックSCLKが2分周された信号であり、詳しくは、この信号WDLATにより、DCTI1、DCTI0は、2クロックサイクルに1回の頻度で
、順次出力されるように制御される。
The preceding one-dimensional DCT conversion circuit 2 receives pixel data PXLD for 8 pixels in the horizontal direction of an image divided into 8 × 8 pixel blocks, one pixel at a time in synchronization with the system clock SCLK. Then, horizontal one-dimensional DCT conversion is performed on the pixel data PXLD, and when the WDLAT supplied from the write counter 411 is a logical value “0”, the one-dimensional DCT coefficient (K0) is synchronized with the system clock SCLK. ˜K63), the odd-numbered coefficient is the higher coefficient DCTI1, and the even-numbered coefficient is the lower coefficient DCTI0. As will be described later, the signal WDLAT supplied from the write counter 411 to the one-dimensional DCT conversion circuit 2 is a signal obtained by dividing the system clock SCLK by 2. More specifically, the signal WDLAT causes the DCTI1 and DCTI0 to have two clocks. It is controlled to output sequentially at a frequency of once per cycle.

メモリ空間3のデュアルポートRAM3a、3bは、32ワードのデータ格納領域を有し、それぞれ、書き込みデータ入力端子WDと、書き込みアドレス入力端子WAと、書き込み許可入力端子WENと、読み出しアドレス入力端子RAと、読み出し許可入力端子RENと、読み出しデータ出力端子RDと、クロック入力端子CLKとを備える。デュアルポートRAM3a、3bは、それぞれ、書き込み許可入力WENが論理値‘0’の時に限り、クロック入力端子CLKの立ち上がりエッジに同期して、書き込みデータ入力端子WDに入力された書き込みデータ入力が、書き込みアドレス入力端子WAに供給されたアドレスに書き込まれる。また、デュアルポートRAM3a、3bは、それぞれ、読み出し許可入力RENが論理値‘0’の時に限り、クロック入力端子CLKの立ち上がりエッジに同期して、読み出しアドレス入力端子RAに供給された読み出しアドレスに格納されているデータが、読み出しデータ出力RDから読み出される。   The dual port RAMs 3a and 3b of the memory space 3 have a data storage area of 32 words, and a write data input terminal WD, a write address input terminal WA, a write enable input terminal WEN, and a read address input terminal RA, respectively. , A read permission input terminal REN, a read data output terminal RD, and a clock input terminal CLK. In each of the dual port RAMs 3a and 3b, only when the write enable input WEN is the logical value “0”, the write data input input to the write data input terminal WD is written in synchronization with the rising edge of the clock input terminal CLK. The address is supplied to the address supplied to the address input terminal WA. Further, each of the dual port RAMs 3a and 3b is stored in the read address supplied to the read address input terminal RA in synchronization with the rising edge of the clock input terminal CLK only when the read permission input REN is a logical value “0”. The read data is read from the read data output RD.

書き込み制御部41の書き込みカウンタ411は、7ビットのバイナリカウンタで構成され、リセット信号RSTが入力されると、7ビットのカウント出力WCNT6〜WCNT0がすべて初期値0に設定され、書き込み開始信号WSTARTが論理値‘0’の時にシステムクロックSCLKに同期してカウントアップされていく。外部より供給される書き込み開始信号WSTARTは、前段の1次元DCT変換回路2より出力される最初の2つの1次元DCT係数群K0、K1が出力されるのと同一のタイミングで論理値が‘0’となる信号であり、書き込み開始タイミングを示す信号である。また書き込みカウンタ411は、前段の1次元DCT変換回路2に対しては、最下位ビットWCNT0の反転信号をWDLATとして供給し、2クロックサイクルに1回の頻度で1次元DCT係数DCT
I1、DCTI0が供給されるように制御する。
The write counter 411 of the write control unit 41 is composed of a 7-bit binary counter. When the reset signal RST is input, the 7-bit count outputs WCNT6 to WCNT0 are all set to the initial value 0, and the write start signal WSTART is When the logical value is “0”, the count is incremented in synchronization with the system clock SCLK. The write start signal WSTART supplied from the outside has a logical value of “0” at the same timing when the first two one-dimensional DCT coefficient groups K0 and K1 output from the one-dimensional DCT conversion circuit 2 in the previous stage are output. Is a signal indicating the write start timing. The write counter 411 supplies the inverted signal of the least significant bit WCNT0 as WDLAT to the preceding one-dimensional DCT conversion circuit 2, and generates the one-dimensional DCT coefficient DCT at a frequency of once every two clock cycles.
Control is performed so that I1 and DCTI0 are supplied.

書き込みアドレス発生部412は、書き込みカウンタ411のカウント出力WCNT6〜WCNT1を入力として、デュアルポートRAM3a、3bの書き込みアドレスWAA、WABを発生する。図2は、WCNT6〜WCNT1と、WAA、WABとの関係を示した図である。最上位ビットWCNT6が論理値‘0’の時は、アドレスWAA、WABともに、0、1、2、3、16、17、18、19、……、12、13、14、15、28、29、30、31と変換したアドレスを供給する。最上位ビットWCNT6が論理値‘1’の時は、WAAとして、0、4、8、12、16、20、24、28、……、19、23、27、31と変換したアドレスを供給し、WABとして、16、20、24、28、0、4、8、12、……、3、7、11、15と変換したアドレスを供給する。   The write address generator 412 receives the count outputs WCNT6 to WCNT1 of the write counter 411 and generates write addresses WAA and WAB of the dual port RAMs 3a and 3b. FIG. 2 is a diagram showing the relationship between WCNT6 to WCNT1, WAA, and WAB. When the most significant bit WCNT6 is a logical value “0”, both addresses WAA and WAB are 0, 1, 2, 3, 16, 17, 18, 19,..., 12, 13, 14, 15, 28, 29. , 30, 31 are supplied. When the most significant bit WCNT6 is a logical value “1”, as WAA, addresses converted to 0, 4, 8, 12, 16, 20, 24, 28,..., 19, 23, 27, 31 are supplied. , WAB, addresses converted into 16, 20, 24, 28, 0, 4, 8, 12,..., 3, 7, 11, 15 are supplied.

なお、最上位ビットWCNT6が論理値‘0’の時のWAA、WABに関しては、上記のようなアドレス順ではなくても、順次書き込まれる1次元DCT係数が上書きされないような任意のアドレスでも構わない。ただし、そのような任意のアドレスを供給した場合は、最上位ビットWCNT6が論理値‘1’の時のWAA、WABは、最上位ビットWCNT6が論理値‘0’の時に、デュアルポートRAM3a、3bに、既に書き込んだ8×8=64個の係数を列方向順すなわちK0、K8、K16、K24、……、K47、K55、K63の順に上書きしていくことが可能となる書き込みアドレスとする必要がある。   Note that WAA and WAB when the most significant bit WCNT6 is a logical value “0” may be any address that does not overwrite the sequentially written one-dimensional DCT coefficient, even if the address order is not as described above. . However, when such an arbitrary address is supplied, WAA and WAB when the most significant bit WCNT6 is a logical value “1” are dual port RAMs 3a and 3b when the most significant bit WCNT6 is a logical value “0”. In addition, 8 × 8 = 64 coefficients that have already been written need to be written addresses that can be overwritten in the column direction, that is, in the order of K0, K8, K16, K24,..., K47, K55, K63. There is.

書き込みデータ選択回路413は、書き込みカウンタ411のカウント出力WCNT3をデータ選択信号WDSELとして入力し、奇数行の係数と偶数行の係数とで、デュアルポートRAM3a、3bに書き込むデータを選択する。データ選択信号WDSELが論理値‘0’の場合、すなわち奇数行の係数の場合は、前段の1次元DCT変換回路2から、2クロックサイクルに1回の頻度で順次供給される上位係数DCTI1をデュアルポートRAM3aの書き込みデータWDAとして選択出力し、下位係数DCTI0をデュアルポートRAM3bの書き込みデータWDBとして選択出力する。また、データ選択信号WDSELが論理値‘1’の場合、すなわち偶数行の係数の場合は、その逆で下位係数DCTI0を書き込みデータWDAとして選択出力し、上位係数DCTI1を書き込みデータWDBとして選択出力する。   The write data selection circuit 413 receives the count output WCNT3 of the write counter 411 as a data selection signal WDSEL, and selects data to be written to the dual port RAMs 3a and 3b using odd row coefficients and even row coefficients. When the data selection signal WDSEL is a logical value “0”, that is, when the coefficient is an odd-numbered row, the higher-order coefficient DCTI1 sequentially supplied from the one-dimensional DCT conversion circuit 2 in the previous stage is sequentially supplied once every two clock cycles. Select and output as write data WDA in the port RAM 3a, and select and output the lower coefficient DCTI0 as write data WDB in the dual port RAM 3b. When the data selection signal WDSEL is a logical value “1”, that is, in the case of an even row coefficient, the lower coefficient DCTI0 is selected and output as write data WDA and the higher coefficient DCTI1 is selected and output as write data WDB. .

書き込み許可生成部414は、外部より供給される書き込み開始信号WSTARTと、書き込みカウンタ411の最下位ビットWCNT0の反転信号との論理和(OR)を、デュアルポートRAM3a、3bの書き込み許可信号WENBとして供給し、書き込み動作を2クロックサイクルに1回の頻度に低減させる。   The write permission generation unit 414 supplies the logical sum (OR) of the write start signal WSTART supplied from the outside and the inverted signal of the least significant bit WCNT0 of the write counter 411 as the write permission signal WENB of the dual port RAMs 3a and 3b. The write operation is reduced to a frequency of once every two clock cycles.

読み出し制御部42の読み出しカウンタ421は、7ビットのバイナリカウンタで構成され、リセット信号RSTが入力されると、7ビットのカウント出力RCNT6〜RCNT0がすべて初期値0に設定され、読み出し開始RSTARTが論理値‘0’の時にシステムクロックSCLKに同期してカウントアップされていく。なお、読み出し開始信号RSTARTの論理値が‘0’になるタイミングは、書き込み開始信号WSTARTが論理値‘0’になった後、デュアルポートRAM3a、3bに1次元DCT係数が順次書き込まれ、50番目〜62番目の係数が書き込まれた時点である。また読み出しカウンタ421は、後段の1次元DCT変換回路5に対して、最下位ビットRCNT0の反転信号をRDLATとして供給する。読み出しデータ選択回路423に対しては、RCNT3を2クロックサイクル遅延させた信号をRDSELとして供給し、デュアルポートRAM3a、3bからの読み出しデータの出力タイミングに合わせてデータの入れ替えが可能となるよう制御する。   The read counter 421 of the read control unit 42 is composed of a 7-bit binary counter. When the reset signal RST is input, all the 7-bit count outputs RCNT6 to RCNT0 are set to the initial value 0, and the read start RSTART is logically set. When the value is “0”, it is counted up in synchronization with the system clock SCLK. Note that the timing at which the logical value of the read start signal RSTART becomes “0” is the 50th, after the write start signal WSTART becomes the logical value “0”, the one-dimensional DCT coefficients are sequentially written in the dual port RAMs 3a and 3b. This is the time when the ˜62nd coefficient is written. Further, the read counter 421 supplies the inverted signal of the least significant bit RCNT0 as RDLAT to the subsequent one-dimensional DCT conversion circuit 5. A signal obtained by delaying RCNT3 by two clock cycles is supplied to the read data selection circuit 423 as RDSEL, and control is performed so that data can be exchanged in accordance with the output timing of read data from the dual port RAMs 3a and 3b. .

読み出しアドレス発生部422は、読み出しカウンタ421のカウント出力RCNT6〜RCNT1を入力として、デュアルポートRAM3a、3bの読み出しアドレスRAA、RABを発生する。図3は、カウント出力RCNT6〜RCNT1とアドレスRAA、RABとの関係を示した図である。最上位ビットRCNT6が論理値‘0’の時は、RAAとして、0、4、8、12、16、20、24、28、……、3、7、11、15、19、23、27、31と変換したアドレスを供給し、RABとして、16、20、24、28、0、4、8、12、……、19、23、27、31、3、7、11、15と変換したアドレスを供給する。また、最上位ビットRCNT6が論理値‘1’の時は、RAAとして、0、1、2、3、16、17、18、19、……、12、13、14、15、28、29、30、31と変換したアドレスを供給し、RABとして、0、1、2、3、16、17、18、19、……、12、13、14、15、28、29、30、31と変換したアドレスを供給する。すなわち、読み出しアドレス発生部422は、書き込み制御部41によりデュアルポートRAM3a、3bに書き込まれた1次元DCT係数を、8×8係数ブロックの列方向順に、デュアルポートRAM3a、3bから、それぞれ1係数ずつ、同一のタイミングで読み出し可能となるアドレスを、読み出しアドレスRAA、RABに供給すればよい。詳しくは、RCNT6が論理値‘1’の時の読み出しアドレスRAA、RABは、書き込みアドレス発生部412より供給されるWCNT6が論理値‘0’の時の書き込みアドレスWAA、WABと等しく、また、RCNT6が論理値‘0’の時の読み出しアドレスRAA、RABは、WCNT6が論理値‘1’の時の書き込みアドレスWAA、WABと等しくなるアドレスを個別に供給すればよい。   The read address generator 422 receives the count outputs RCNT6 to RCNT1 of the read counter 421 and generates read addresses RAA and RAB of the dual port RAMs 3a and 3b. FIG. 3 is a diagram showing the relationship between the count outputs RCNT6 to RCNT1 and the addresses RAA and RAB. When the most significant bit RCNT6 is logical “0”, RAA is 0, 4, 8, 12, 16, 20, 24, 28,..., 3, 7, 11, 15, 19, 23, 27, Address converted to 31 is supplied, and converted into RAB as 16, 20, 24, 28, 0, 4, 8, 12, ..., 19, 23, 27, 31, 3, 7, 11, 15 Supply. When the most significant bit RCNT6 is a logical value “1”, RA, 0, 1, 2, 3, 16, 17, 18, 19,..., 12, 13, 14, 15, 28, 29, 30 and 31 converted addresses are supplied, and RAB is converted to 0, 1, 2, 3, 16, 17, 18, 19, ..., 12, 13, 14, 15, 28, 29, 30, 31 Supply the address. That is, the read address generation unit 422 outputs one-dimensional DCT coefficients written in the dual port RAMs 3a and 3b by the write control unit 41, one by one from the dual port RAMs 3a and 3b in the order of 8 × 8 coefficient blocks in the column direction. The addresses that can be read at the same timing may be supplied to the read addresses RAA and RAB. Specifically, the read addresses RAA and RAB when the RCNT6 has the logical value “1” are equal to the write addresses WAA and WAB when the WCNT6 supplied from the write address generation unit 412 has the logical value “0”. The read addresses RAA and RAB at the time when the logical value is “0” may be individually supplied with the addresses equal to the write addresses WAA and WAB when the WCNT 6 is the logical value “1”.

読み出しデータ選択回路423は、読み出しカウンタ421より供給される信号RDSELを入力としてデュアルポートRAM3a、3bからそれぞれ読み出された1次元DCT係数を選択的に出力する。詳細には、RDSELが論理値‘0’の時、すなわち、8×8係数ブロックの奇数列の1次元DCT係数を読み出す時は、デュアルポートRAM3aからの読み出しデータRDAを上位係数DCTO1として出力し、デュアルポートRAM3bからの読み出しデータRDBを下位係数DCTO0として出力する。また、RDSELが論理値‘1’の時、すなわち、8×8係数ブロックの偶数列を読み出す時は、RDAを下位係数DCTO0として出力し、RDBを上位係数DCTO1として出力する。この読み出しデータ選択回路423により、常に、上位係数DCTO1出力には8×8係数ブロック単位の係数のうち奇数行の係数が出力され、下位係数DCTO0出力には、偶数行の係数が繰り返し出力される。   The read data selection circuit 423 receives the signal RDSEL supplied from the read counter 421 and selectively outputs the one-dimensional DCT coefficients read from the dual port RAMs 3a and 3b. Specifically, when the RDSEL is a logical value “0”, that is, when reading the one-dimensional DCT coefficient of the odd-numbered column of the 8 × 8 coefficient block, the read data RDA from the dual port RAM 3a is output as the upper coefficient DCTO1, The read data RDB from the dual port RAM 3b is output as the lower coefficient DCTO0. Further, when RDSEL is a logical value “1”, that is, when reading an even column of an 8 × 8 coefficient block, RDA is output as a lower coefficient DCTO0 and RDB is output as an upper coefficient DCTO1. The read data selection circuit 423 always outputs odd row coefficients out of 8 × 8 coefficient block units to the higher coefficient DCTO1 output, and repeatedly outputs even row coefficients to the lower coefficient DCTO0 output. .

読み出し許可生成部424は、外部より供給される読み出し開始信号RSTARTと、読み出しカウンタ421の最下位ビットRCNT0の反転信号との論理和(OR)を、デュアルポートRAM3a、3bの読み出し許可RENBとして供給し、読み出し動作を2クロックサイクルに1回の頻度に低減させる。   The read permission generation unit 424 supplies the logical sum (OR) of the read start signal RSTART supplied from the outside and the inverted signal of the least significant bit RCNT0 of the read counter 421 as the read permission RENB of the dual port RAMs 3a and 3b. The read operation is reduced to a frequency of once every two clock cycles.

後段の1次元DCT変換回路5は、読み出しカウンタ421より供給される信号RDLATを入力し、2クロックサイクルに1回の頻度で、1次元DCT係数DCTO1、DCTO0を同一のタイミングで受け取り、2クロックサイクルに1回の頻度でシフトし、8係数ごとの垂直方向の1次元DCT変換を行い、2次元DCT係数KK0〜KK63をシステムクロックSCLKに同期してDCTOUTとして順次出力する。   The subsequent one-dimensional DCT conversion circuit 5 receives the signal RDLAT supplied from the read counter 421, receives the one-dimensional DCT coefficients DCTO1, DCTO0 at the same timing every two clock cycles, and receives two clock cycles. 1-times DCT conversion in the vertical direction every eight coefficients, and two-dimensional DCT coefficients KK0 to KK63 are sequentially output as DCTOUT in synchronization with the system clock SCLK.

図4および図5は、書き込み制御部41に従って1次元DCT係数がデュアルポートRAM3a、3bに書き込まれる際のデータ格納位置を示す図である。
図4は、最初の8×8画素ブロックの1次元DCT係数K0〜K63がデュアルポートRAM3a、3bに書き込まれる際のデータ格納位置を示す図である。2クロックサイクルに1回の頻度で、前段の1次元DCT変換回路2から、上位係数DCTI1として奇数列の係数K0、K2、K4、…、K60、K62が、下位係数DCTI0として偶数列の係数K1、K3、K5、…、K61、K63が、それぞれ同一のタイミングで順次出力され、奇数行の1次元DCT係数K0〜K7、K16〜K23、K32〜K39、K48〜K55に関しては、上位係数DCTI1がデュアルポートRAM3aのアドレス番号0、1、2、3、……、13、14、15に書き込まれ、下位係数DCTI0がデュアルポートRAM3bのアドレス番号0、1、2、3、……、13、14、15に書き込まれる。偶数行の1次元DCT係数K8〜K15、K24〜K31、K40〜K47、K56〜K63に関しては、下位係数DCT1DI0が、デュアルポートRAM3aのアドレス番号16、17、18、…、29、30、31に書き込まれ、上位係数DCTI1が、デュアルポートRAM3bのアドレス番号16、17、18、…、29、30、31に書き込まれる。
4 and 5 are diagrams showing data storage positions when the one-dimensional DCT coefficients are written in the dual port RAMs 3a and 3b in accordance with the write control unit 41. FIG.
FIG. 4 is a diagram showing a data storage position when the one-dimensional DCT coefficients K0 to K63 of the first 8 × 8 pixel block are written in the dual port RAMs 3a and 3b. The odd-numbered column coefficients K0, K2, K4,..., K60, K62 and the even-numbered coefficient K1 as the lower coefficient DCTI0 from the preceding one-dimensional DCT conversion circuit 2 at a frequency of once every two clock cycles. , K3, K5,..., K61, K63 are sequentially output at the same timing, and for the one-dimensional DCT coefficients K0 to K7, K16 to K23, K32 to K39, and K48 to K55 in the odd rows, the upper coefficient DCTI1 is set. The lower coefficient DCTI0 is written in the address numbers 0, 1, 2, 3,..., 13, 14 of the dual port RAM 3a. , 15 are written. For the even-numbered one-dimensional DCT coefficients K8 to K15, K24 to K31, K40 to K47, and K56 to K63, the low-order coefficient DCT1DI0 is assigned to the address numbers 16, 17, 18,. The higher coefficient DCTI1 is written to the address numbers 16, 17, 18,..., 29, 30, 31 of the dual port RAM 3b.

図5は、次の8×8画素ブロックの1次元DCT係数K’0〜K’63がデュアルポートRAM3a、3bに書き込まれる際のデータ格納位置を示す図である。最初の8×8画素ブロックの1次元DCT係数K0〜K63が、垂直方向K0、K8、K16、K24、…、K47、K55、K63に、デュアルポートRAM3a、3bから、それぞれ1係数ずつ、2クロックサイクルに1回の頻度で、読み出され始める。すると、その後、次の8×8画素ブロックの1次元DCT係数K’0〜K’63のうち、奇数行の1次元DCT係数K’0〜K’7、K’16〜K’23、K’32〜K’39、K’48〜K’55に関しては、上位係数DCTI1がデュアルポートRAM3aのアドレス番号0、4、8、12、1、5、9、13、…、3、7、11、15に書き込まれ、下位係数DCTI0がデュアルポートRAM3bのアドレス番号16、20、24、28、17、21、25、29、…、19、23、27、31に書き込まれる。偶数行の1次元DCT係数K’8〜K’15、K’24〜K’31、K’40〜K’47、K’56〜K’63に関しては、下位係数DCT1DI0がデュアルポートRAM3aのアドレス番号16、20、24、28、17、21、25、29、…、19、23、27、31に書き込まれ、上位係数DCTI1がデュアルポートRAM3bのアドレス番号0、4、8、12、1、5、9、13、…、3、7、11、15に書き込まれる。1次元DCT係数は、64係数ごとに図4と図5のデータ格納位置に交互に書き込まれるように、書き込み制御部41によって繰り返し制御される。   FIG. 5 is a diagram showing data storage positions when the one-dimensional DCT coefficients K′0 to K′63 of the next 8 × 8 pixel block are written in the dual port RAMs 3a and 3b. The one-dimensional DCT coefficients K0 to K63 of the first 8 × 8 pixel block are transferred to the vertical directions K0, K8, K16, K24,..., K47, K55, and K63 from the dual port RAMs 3a and 3b, one coefficient each for two clocks. Reading begins once a cycle. Then, among the one-dimensional DCT coefficients K′0 to K′63 of the next 8 × 8 pixel block, the odd-numbered one-dimensional DCT coefficients K′0 to K′7, K′16 to K′23, and K For '32 to K'39 and K'48 to K'55, the higher coefficient DCTI1 is the address number 0, 4, 8, 12, 1, 5, 9, 13, ... 3, 7, 11 of the dual port RAM 3a. , 15 and the lower coefficient DCTI0 is written to the address numbers 16, 20, 24, 28, 17, 21, 25, 29,..., 19, 23, 27, 31 of the dual port RAM 3b. For even-numbered one-dimensional DCT coefficients K′8 to K′15, K′24 to K′31, K′40 to K′47, and K′56 to K′63, the lower coefficient DCT1DI0 is the address of the dual port RAM 3a. 16, 20, 24, 28, 17, 21, 25, 29,..., 19, 23, 27, 31, and the high-order coefficient DCTI1 is the address number 0, 4, 8, 12, 1, 5, 9, 13,..., 3, 7, 11, 15 are written. The one-dimensional DCT coefficient is repeatedly controlled by the writing control unit 41 so that 64 coefficients are alternately written in the data storage positions in FIGS. 4 and 5.

図6および図7は、読み出し制御部42に従って1次元DCT係数をデュアルポートRAM3a、3bから読み出す際のアドレス順序および読み出される1次元DCT係数を示す図である。   6 and 7 are diagrams showing the address order and the one-dimensional DCT coefficients that are read when the one-dimensional DCT coefficients are read from the dual port RAMs 3a and 3b according to the read control unit 42. FIG.

図6は、最初の8×8画素ブロックの1次元DCT係数K0〜K63が図4のようにデュアルポートRAM3a、3bに書き込まれた際の、読み出しアドレスの順序および読み出される1次元DCT係数を示す図である。読み出し制御部42より、デュアルポートRAM3aの読み出しアドレスRAAとして、アドレス番号0、4、8、12、16、20、24、28、…、3、7、11、15、19、23、27、31が順次供給され、1次元DCT係数K0、K16、K32、K48、K9、K25、K41、K57、…、K6、K22、K38、K54、K15、K31、K47、K63が順次読み出される。また、デュアルポートRAM3bの読み出しアドレスRABとして、アドレス番号16、20、24、28、0、4、8、12、…、19、23、27、31、3、7、11、15が順次供給され、1次元DCT係数K8、K24、K40、K56、K1、K17、K33、K49、…、K14、K30、K46、K62、K7、K23、K39、K55が順次読み出される。デュアルポートRAM3a、3bから2クロックサイクルに1回の頻度で同時に読み出されたこれらの1次元DCT係数の上位係数、下位係数の入れ替えが、読み出しデータ選択回路423により行われ、上位係数DCTO1として、K0、K16、K32、K48、K1、K17、K33、K49、…、K6、K22、K38、K54、K7、K23、K39、K55が順次出力され、下位係数DCTO0として、K8、K24、K40、K56、K9、K25、K41、K57、…、K14、K30、K46、K62、K15、K31、K47、K63が順次出力される。   FIG. 6 shows the order of read addresses and the one-dimensional DCT coefficients to be read when the one-dimensional DCT coefficients K0 to K63 of the first 8 × 8 pixel block are written in the dual port RAMs 3a and 3b as shown in FIG. FIG. From the read control unit 42, address numbers 0, 4, 8, 12, 16, 20, 24, 28,..., 3, 7, 11, 15, 19, 23, 27, 31 as read addresses RAA of the dual port RAM 3a. Are sequentially supplied, and the one-dimensional DCT coefficients K0, K16, K32, K48, K9, K25, K41, K57,..., K6, K22, K38, K54, K15, K31, K47, and K63 are sequentially read out. Further, address numbers 16, 20, 24, 28, 0, 4, 8, 12,..., 19, 23, 27, 31, 3, 7, 11, 15 are sequentially supplied as the read address RAB of the dual port RAM 3b. The one-dimensional DCT coefficients K8, K24, K40, K56, K1, K17, K33, K49,..., K14, K30, K46, K62, K7, K23, K39, K55 are sequentially read out. The high-order coefficient and low-order coefficient of these one-dimensional DCT coefficients simultaneously read out from the dual port RAMs 3a and 3b at a frequency of once every two clock cycles are replaced by the read data selection circuit 423, and the high-order coefficient DCTO1 is K0, K16, K32, K48, K1, K17, K33, K49,..., K6, K22, K38, K54, K7, K23, K39, K55 are sequentially output, and the lower coefficients DCTO0 are K8, K24, K40, K56. , K9, K25, K41, K57,..., K14, K30, K46, K62, K15, K31, K47, K63 are sequentially output.

図7は、次の8×8画素ブロックの1次元DCT係数K’0〜K’63が図5のようにデュアルポートRAM3a、3bに書き込まれた際の、読み出しアドレスの順序および読み出される1次元DCT係数を示す図である。読み出し制御部42より、デュアルポートRAM3aの読み出しアドレスRAAとして、アドレス番号0、1、2、3、16、17、18、19、…、12、13、14、15、28、29、30、31が順次供給され、1次元DCT係数K0、K16、K32、K48、K9、K25、K41、K57、…、K6、K22、K38、K54、K15、K31、K47、K63が順次読み出される。また、デュアルポートRAM3bの読み出しアドレスRABとして、アドレス番号0、1、2、3、16、17、18、19、…、12、13、14、15、28、29、30、31が順次供給され、1次元DCT係数K8、K24、K40、K56、K1、K17、K33、K49、…、K14、K30、K46、K62、K7、K23、K39、K55が順次読み出される。デュアルポートRAM3a、3bから2クロックサイクルに1回の頻度で同時に読み出されたこれらの1次元DCT係数の上位係数、下位係数の入れ替えが、読み出しデータ選択回路423により行われ、上位係数DCTO1として、K0、K16、K32、K48、K1、K17、K33、K49、…、K6、K22、K38、K54、K7、K23、K39、K55が順次出力され、下位係数DCTO0として、K8、K24、K40、K56、K9、K25、K41、K57、…、K14、K30、K46、K62、K15、K31、K47、K63が順次出力される。読み出し制御部42により、1次元DCT係数の読み出しを64係数ごとに図6と図7の読み出しアドレスを交互に切り替えて行うことにより、1次元DCT係数の行位置、列位置の転置が繰り返し行われ、2クロックサイクルに1回の頻度で、2係数ずつ、後段の1次元DCT変換回路5に順次供給される。   FIG. 7 shows the order of read addresses and the one-dimensional read out when the one-dimensional DCT coefficients K′0 to K′63 of the next 8 × 8 pixel block are written in the dual port RAMs 3a and 3b as shown in FIG. It is a figure which shows a DCT coefficient. From the read control unit 42, address numbers 0, 1, 2, 3, 16, 17, 18, 19,..., 12, 13, 14, 15, 28, 29, 30, 31 are used as the read address RAA of the dual port RAM 3a. Are sequentially supplied, and the one-dimensional DCT coefficients K0, K16, K32, K48, K9, K25, K41, K57,..., K6, K22, K38, K54, K15, K31, K47, and K63 are sequentially read out. Further, address numbers 0, 1, 2, 3, 16, 17, 18, 19,..., 12, 13, 14, 15, 28, 29, 30, 31 are sequentially supplied as read addresses RAB of the dual port RAM 3b. The one-dimensional DCT coefficients K8, K24, K40, K56, K1, K17, K33, K49,..., K14, K30, K46, K62, K7, K23, K39, K55 are sequentially read out. The high-order coefficient and low-order coefficient of these one-dimensional DCT coefficients simultaneously read out from the dual port RAMs 3a and 3b at a frequency of once every two clock cycles are replaced by the read data selection circuit 423, and the high-order coefficient DCTO1 is K0, K16, K32, K48, K1, K17, K33, K49,..., K6, K22, K38, K54, K7, K23, K39, K55 are sequentially output, and the lower coefficients DCTO0 are K8, K24, K40, K56. , K9, K25, K41, K57,..., K14, K30, K46, K62, K15, K31, K47, K63 are sequentially output. By reading the one-dimensional DCT coefficient by alternately switching the reading addresses in FIGS. 6 and 7 every 64 coefficients by the reading control unit 42, the transposition of the row position and the column position of the one-dimensional DCT coefficient is repeatedly performed. Two coefficients are sequentially supplied to the subsequent one-dimensional DCT conversion circuit 5 at a frequency of once every two clock cycles.

図8は、書き込み制御部41により制御されるデュアルポートRAM3a、3bの書き込みタイミングを示す図である。前段の1次元DCT変換回路2より、2クロックサイクルに1回の頻度で、上位係数DCTI1と下位係数DCTI0とがそれぞれ同一タイミングで書き込み制御部41に順次入力され、書き込みアドレス発生部412により、2クロックサイクルに1回の頻度で、書き込み許可生成部414より供給される書き込み許可WENBが論理値‘0’の時に、クロックに同期して、指定されたアドレスすなわちデュアルポートRAM3a、3bの書き込みアドレスWAA、WABに順次書き込まれる。   FIG. 8 is a diagram showing the write timing of the dual port RAMs 3a and 3b controlled by the write control unit 41. As shown in FIG. The upper coefficient DCTI1 and the lower coefficient DCTI0 are sequentially input to the write control unit 41 at the same timing from the preceding one-dimensional DCT conversion circuit 2 at a frequency of once every two clock cycles, and the write address generation unit 412 When the write permission WENB supplied from the write permission generation unit 414 has a logical value “0” at a frequency of once in a clock cycle, the designated address, that is, the write address WAA of the dual port RAMs 3a and 3b is synchronized with the clock. , WAB are sequentially written.

すなわち、システムクロックSCLKのクロック周期をT、前段の1次元DCT変換回路2より出力される上位係数DCTI1、下位係数DCTI0のシステムクロックSCLKからの遅延時間をTd、デュアルポートRAMのタイミングスペックであるシステムクロックSCLKに対する書き込みデータのセットアップタイム、ホールドタイムをそれぞれ、Tsu(RAM)、Th(RAM)とすると、書き込み動作が正確に行われるためには、(式−5)、(式−6)の条件を満足していればよい。   That is, T is the clock period of the system clock SCLK, Td is the delay time from the system clock SCLK of the higher coefficient DCTI1 and lower coefficient DCTI0 output from the one-dimensional DCT conversion circuit 2 in the previous stage, and the system is a dual port RAM timing specification. Assuming that the setup time and hold time of the write data with respect to the clock SCLK are Tsu (RAM) and Th (RAM), the conditions of (Expression-5) and (Expression-6) As long as you are satisfied.

2T − Td > Tsu(RAM) …… (式−5)
Td > Th(RAM) …… (式−6)
(式−5)、(式−6)から明らかなように、従来の条件を規定した(式−1)、(式−2)に比べれば、書き込み動作のメモリセットアップタイムに対するタイミングマージンは、システムクロックのクロック1周期分Tだけ増加する。
2T−Td> Tsu (RAM) (Formula-5)
Td> Th (RAM) (Formula-6)
As is clear from (Expression-5) and (Expression-6), the timing margin for the memory setup time of the write operation is higher than that of (Expression-1) and (Expression-2) that define the conventional conditions. It increases by T for one clock cycle.

図9は、読み出し制御部42により制御されるデュアルポートRAM3a、3bからの読み出しタイミングを示す図である。読み出しアドレス発生部422により、2クロックサイクルに1回の頻度で、指定されたアドレスすなわちデュアルポートRAM3a、3bの読み出しアドレスRAA、RABに格納されたデータ(1次元DCT係数)が、読み出し許可生成部424より供給される読み出し許可RENBが論理値‘0’の時に、クロックに同期して順次読み出され、読み出しデータ選択回路423により、上位係数DCTO1、下位係数DCTO0として出力される。この出力データを後段の1次元DCT変換回路5が正確に受け取るためには、デュアルポートRAM3a、3bのアクセスタイムをTpdとし、読み出しデータ選択回路423による遅延時間をTdmとし、後段の1次元DCT変換回路5の入力タイミングスペックであるセットアップタイム、ホールドタイムをTsu(FF)、Th(FF)とすると、(式−7)、(式−8)の条件を満足していればよい。   FIG. 9 is a diagram showing the read timing from the dual port RAMs 3a and 3b controlled by the read control unit 42. As shown in FIG. The read address generator 422 reads the specified address, that is, the data (one-dimensional DCT coefficients) stored in the read addresses RAA and RAB of the dual port RAMs 3a and 3b at a frequency of once every two clock cycles. When the read permission RENB supplied from 424 is a logical value “0”, the read permission RENB is sequentially read in synchronization with the clock, and is output by the read data selection circuit 423 as an upper coefficient DCTO1 and a lower coefficient DCTO0. In order for the subsequent one-dimensional DCT conversion circuit 5 to accurately receive the output data, the access time of the dual port RAMs 3a and 3b is set to Tpd, the delay time by the read data selection circuit 423 is set to Tdm, and the subsequent one-dimensional DCT conversion is performed. If the setup time and hold time, which are the input timing specifications of the circuit 5, are Tsu (FF) and Th (FF), the conditions of (Expression-7) and (Expression-8) may be satisfied.

2T − (Tpd+ Tdm)> Tsu(FF) …… (式−7)
Tpd + Tdm > Th(FF) …… (式−8)
すなわち、従来の条件(式−3)、(式−4)に比べれば、デュアルポートRAM3a、3bに要求されるアクセスタイムTpdは(T−Tdm)だけ増加する。なお、読み出しデータ選択回路423による遅延時間Tdmは、デュアルポートRAM3a、3bからの2つの読み出しデータから1つのデータを選択するためのデータセレクタのみの遅延時間であり、デュアルポートRAM3a、3bのアクセスタイムTpdに比べれば非常に小さく、トータルとしては、メモリアクセスタイムの増加による回路動作可能周波数への影響を抑えることが可能となる。
2T− (Tpd + Tdm)> Tsu (FF) (Formula-7)
Tpd + Tdm> Th (FF) (Formula-8)
That is, the access time Tpd required for the dual port RAMs 3a and 3b is increased by (T-Tdm) as compared with the conventional conditions (Expression-3) and (Expression-4). Note that the delay time Tdm by the read data selection circuit 423 is the delay time of only the data selector for selecting one data from two read data from the dual port RAMs 3a and 3b, and the access time of the dual port RAMs 3a and 3b. Compared to Tpd, it is very small, and as a whole, it is possible to suppress the influence on the circuit operable frequency due to an increase in memory access time.

以上が、メモリ空間3において32ワードのデュアルポートRAM2個を用いて2次元離散コサイン変換装置を構成した場合の具体的説明であるが、メモリ空間3は16ワードのデュアルポートRAMを4個用いて構成してもよく、また、8ワードのデュアルポートRAMを8個用いて構成してもよい。   The above is a specific description of the case where the two-dimensional discrete cosine transform device is configured using two 32-word dual-port RAMs in the memory space 3, but the memory space 3 uses four 16-word dual-port RAMs. Alternatively, it may be configured using eight 8-word dual port RAMs.

図10は、メモリ空間を、16ワードのデュアルポートRAM4個を用いて構成した例のブロック図である。図1と大きく異なる点は、メモリ空間3を、4個のデュアルポートRAM3a、3b、3c、3dで構成している点である。   FIG. 10 is a block diagram of an example in which the memory space is configured using four 16-word dual port RAMs. The main difference from FIG. 1 is that the memory space 3 is composed of four dual-port RAMs 3a, 3b, 3c, and 3d.

前段の1次元DCT変換回路2は、書き込みカウンタ411より供給される信号WDLATが論理値‘0’の時、システムクロックSCLKに同期して、1次元DCT係数(K0〜K63)を、列順に早い方のDCT係数からDCTI3、DCTI2、DCTI1、DCTI0として4係数ずつ順次パラレル出力する。書き込みカウンタ411より供給される信号WDLATは、後述するが、システムクロックSCLKの4サイクル中に1サイクルのみ論理値‘0’になる信号であり、詳しくは、DCTI3〜DCTI0は、信号WDLATにより4クロックサイクルに1回の頻度で順次出力されるように制御される。   When the signal WDLAT supplied from the write counter 411 is a logical value “0”, the one-dimensional DCT conversion circuit 2 in the preceding stage synchronizes with the system clock SCLK and accelerates the one-dimensional DCT coefficients (K0 to K63) in the column order. From the other DCT coefficient, DCTI3, DCTI2, DCTI1, and DCTI0 are sequentially output in parallel by four coefficients. As will be described later, the signal WDLAT supplied from the write counter 411 is a signal that becomes a logical value “0” for only one cycle in four cycles of the system clock SCLK. Specifically, DCTI3 to DCTI0 are four clocks in response to the signal WDLAT. It is controlled so that it is sequentially output at a frequency of once per cycle.

デュアルポートRAM3a〜3dは、データ格納領域が16ワードのデュアルポートRAMを4個使用している点で、図1のものと異なる。
書き込み制御部41は、図1と同様の構成であるが、異なる点は、書き込みカウンタ411が、前段の1次元DCT変換回路2に対して、WCNT1とWCNT0との論理積の反転信号(NAND)をWDLATとして供給し、4クロックサイクルに1回の頻度で1次元DCT係数DCTI3〜DCTI0が供給されるように制御する点である。
The dual port RAMs 3a to 3d are different from those in FIG. 1 in that four dual port RAMs having a data storage area of 16 words are used.
The write control unit 41 has the same configuration as that shown in FIG. 1 except that the write counter 411 gives an inverted signal (NAND) of the logical product of WCNT1 and WCNT0 to the one-dimensional DCT conversion circuit 2 in the previous stage. Is supplied as WDLAT, and control is performed so that the one-dimensional DCT coefficients DCTI3 to DCTI0 are supplied at a frequency of once every four clock cycles.

書き込みアドレス発生部412における書き込みアドレスWAA、WAB、WAC、WADと、書き込みカウンタ411の出力WCNT6〜WCNT2との関係は、図11の通りである。   The relationship between the write addresses WAA, WAB, WAC, WAD in the write address generator 412 and the outputs WCNT6 to WCNT2 of the write counter 411 is as shown in FIG.

書き込みデータ選択回路413は、書き込みカウンタ411のカウント出力WCNT4、WCNT3の2ビットを、データ選択信号WDSEL1、WDSEL0として入力し、データ選択信号WDSEL1、WDSEL0がともに論理値‘0’、すなわち1、5行目の係数の場合は、DCTI3をWDAとし、DCTI2をWDBとし、DCTI1をWDCとし、DCTI0をWDDとして供給する。データ選択信号WDSEL1が論理値‘0’、WDSEL0が論理値‘1’、すなわち2、6行目の係数の場合は、DCTI2をWDAとし、DCTI3をWDBとし、DCTI0をWDCとし、DCTI1をWDDとして供給する。データ選択信号WDSEL1が論理値‘1’、WDSEL0が論理値‘0’、すなわち3、4行目の係数の場合は、DCTI1をWDAとし、DCTI0をWDBとし、DCTI3をWDCとし、DCTI2をWDDとして供給する。データ選択信号WDSEL1、WDSEL0がともに論理値‘1’、すなわち4、8行目の係数の場合は、DCTI0をWDAとし、DCTI1をWDBとし、DCTI2をWDCとし、DCTI3をWDDとして供給する。   The write data selection circuit 413 inputs 2 bits of the count outputs WCNT4 and WCNT3 of the write counter 411 as data selection signals WDSEL1 and WDSEL0, and the data selection signals WDSEL1 and WDSEL0 are both logical values “0”, that is, 1 and 5 rows. In the case of the eye coefficient, DCTI3 is set as WDA, DCTI2 is set as WDB, DCTI1 is set as WDC, and DCTI0 is supplied as WDD. When the data selection signal WDSEL1 is a logical value “0” and WDSEL0 is a logical value “1”, that is, the coefficients in the 2nd and 6th rows, DCTI2 is WDA, DCTI3 is WDB, DCTI0 is WDC, and DCTI1 is WDD. Supply. When the data selection signal WDSEL1 is a logical value “1” and WDSEL0 is a logical value “0”, that is, the coefficients in the third and fourth rows, DCTI1 is WDA, DCTI0 is WDB, DCTI3 is WDC, and DCTI2 is WDD. Supply. When the data selection signals WDSEL1 and WDSEL0 are both logical values ‘1’, that is, the coefficients in the fourth and eighth rows, DCTI0 is set to WDA, DCTI1 is set to WDB, DCTI2 is set to WDC, and DCTI3 is supplied as WDD.

書き込み許可生成部414は、外部より供給される書き込み開始信号WSTARTと、書き込みカウンタ411のWCNT1の反転信号と、WCNT0の反転信号との論理和(OR)を、デュアルポートRAM3a〜3dの書き込み許可信号WENBとして供給し、書き込み動作を4クロックサイクルに1回の頻度に低減させる。   The write permission generation unit 414 calculates the logical sum (OR) of the write start signal WSTART supplied from the outside, the inverted signal of WCNT1 of the write counter 411, and the inverted signal of WCNT0, and the write permission signal of the dual port RAMs 3a to 3d. Supplying as WENB, the write operation is reduced to a frequency of once every four clock cycles.

読み出し制御部42は、図1と同様の構成であるが、異なる点は、読み出しカウンタ421が、後段の1次元DCT変換回路5に対して、RCNT1とRCNT0の論理積の反転信号(NAND)をRDLATとして供給し、また、読み出しデータ選択回路423に対しては、RCNT4を4クロックサイクル遅延させた信号をRDSEL1とするとともに、RCNT3を4クロックサイクル遅延させた信号をRDSEL0として供給し、デュアルポートRAM3a〜3dからの読み出しデータの出力タイミングに合わせてデータの入れ替えが可能となるよう制御する。   The read control unit 42 has the same configuration as that shown in FIG. 1 except that the read counter 421 sends an inverted signal (NAND) of the logical product of RCNT1 and RCNT0 to the subsequent one-dimensional DCT conversion circuit 5. A signal obtained by delaying RCNT4 by 4 clock cycles is supplied as RDSEL1 and a signal obtained by delaying RCNT3 by 4 clock cycles is supplied as RDSEL0 to the read data selection circuit 423 by the dual port RAM 3a. Control is performed so that data can be exchanged in accordance with the output timing of read data from ˜3d.

読み出しアドレス発生部422における読み出しアドレスRAA、RAB、RAC、RADと読み出しカウンタ421の出力RCNT6〜RCNT2との関係は、図12の通りである。   The relationship between the read addresses RAA, RAB, RAC, RAD and the outputs RCNT6 to RCNT2 of the read counter 421 in the read address generator 422 is as shown in FIG.

読み出しデータ選択回路423は、読み出しカウンタ421より供給されるRDSEL1、RDSEL0を入力とし、その論理値の組み合わせにより、デュアルポートRAM3a〜3dから読み出された4つの1次元DCT係数RDA〜RDDを、その行位置によって入れ替えてDCTO3〜DCTO0へ出力する。すなわちDCTO3出力には1、5行目の係数が、DCTO2出力には2、6行目の係数が、DCTO1出力には3、7行目の係数が、DCTO0出力には4、8行目の係数が、それぞれ繰り返し出力されるように、読み出しデータの入れ替えが行われる。   The read data selection circuit 423 receives the RDSEL1 and RDSEL0 supplied from the read counter 421 as inputs, and combines the four one-dimensional DCT coefficients RDA to RDD read from the dual port RAMs 3a to 3d by the combination of the logical values. The data is exchanged according to the line position and output to DCTO3 to DCTO0. That is, the coefficients in the first and fifth lines for the DCTO3 output, the coefficients in the second and sixth lines for the DCTO2 output, the coefficients in the third and seventh lines for the DCTO1 output, and the fourth and eighth lines for the DCTO0 output. The read data is exchanged so that the coefficients are repeatedly output.

読み出し許可生成部424は、読み出し開始信号RSTARTと、読み出しカウンタ421出力のRCNT1の反転信号と、RCNT0の反転信号との論理和(OR)を、デュアルポートRAM3a〜3bの読み出し許可信号RENBとして供給し、読み出し動作を4クロックサイクルに1回の頻度に低減させる。   The read permission generation unit 424 supplies the logical sum (OR) of the read start signal RSTART, the inverted signal of RCNT1 output from the read counter 421, and the inverted signal of RCNT0 as the read permission signal RENB of the dual port RAMs 3a to 3b. The read operation is reduced to a frequency of once every four clock cycles.

後段の1次元DCT変換回路5は、読み出しカウンタ421より供給される信号RDLATを入力し、4クロックサイクルに1回の頻度で1次元DCT係数DCTO3〜DCTO0を同一のタイミングで受け取り、4クロックサイクルに1回の頻度でシフトし、8係数ごとの垂直方向の1次元DCT変換を行い、2次元DCT係数KK0〜KK63をシステムクロックSCLKに同期してDCTOUTとして順次出力する。   The subsequent one-dimensional DCT conversion circuit 5 receives the signal RDLAT supplied from the read counter 421, receives the one-dimensional DCT coefficients DCTO3 to DCTO0 at the same timing once every four clock cycles, and takes four clock cycles. Shifting at a frequency of one time, vertical one-dimensional DCT conversion is performed every eight coefficients, and two-dimensional DCT coefficients KK0 to KK63 are sequentially output as DCTOUT in synchronization with the system clock SCLK.

図13および図14は、書き込み制御部41に従って1次元DCT係数がデュアルポートRAM3a〜3dに書き込まれるデータ格納位置を示す図である。すなわち、図13は、最初の8×8画素ブロックの1次元DCT係数K0〜K63がデュアルポートRAM3a〜3dに書き込まれるデータ格納位置を示す図であり、また図14は、次の8×8画素ブロックの1次元DCT係数K0〜K63がデュアルポートRAM3a〜3dに書き込まれるデータ格納位置を示す図である。1次元DCT係数は、64係数ごとに図13と図14のデータ格納位置に交互に書き込まれるように、書き込み制御部41により繰り返し制御される。また、係数の書き込みは、すべて4クロックサイクルに1回の頻度で繰り返し行われる。   13 and 14 are diagrams showing data storage positions where the one-dimensional DCT coefficients are written in the dual port RAMs 3a to 3d in accordance with the write control unit 41. FIG. That is, FIG. 13 is a diagram showing data storage positions at which the one-dimensional DCT coefficients K0 to K63 of the first 8 × 8 pixel block are written in the dual port RAMs 3a to 3d, and FIG. 14 shows the next 8 × 8 pixel. It is a figure which shows the data storage position where the one-dimensional DCT coefficient K0-K63 of a block is written in dual port RAM3a-3d. The one-dimensional DCT coefficients are repeatedly controlled by the write control unit 41 so that 64 coefficients are alternately written in the data storage positions in FIGS. 13 and 14. Coefficient writing is repeated at a frequency of once every four clock cycles.

図15および図16は、読み出し制御部42に従って1次元DCT係数をデュアルポートRAM3a〜3dから読み出す際のアドレス順序および読み出される1次元DCT係数を示す図である。すなわ、図15は、最初の8×8画素ブロックの1次元DCT係数K0〜K63の読み出しアドレス順序および読み出される1次元DCT係数を示す図である。図16は、次の8×8画素ブロックの1次元DCT係数K0〜K63の読み出しアドレス順序および読み出される1次元DCT係数を示す図である。   FIGS. 15 and 16 are diagrams illustrating the address order and the one-dimensional DCT coefficients to be read when the one-dimensional DCT coefficients are read from the dual port RAMs 3a to 3d in accordance with the read control unit 42. FIG. In other words, FIG. 15 is a diagram showing the read address order of the one-dimensional DCT coefficients K0 to K63 of the first 8 × 8 pixel block and the one-dimensional DCT coefficients to be read. FIG. 16 is a diagram illustrating the read address order of the one-dimensional DCT coefficients K0 to K63 of the next 8 × 8 pixel block and the one-dimensional DCT coefficients to be read.

読み出し制御部42により、1次元DCT係数の読み出しを、64係数ごとに図15と図16の読み出しアドレスを交互に切り替えて行うことにより、1次元DCT係数の行位置、列位置の転置が繰り返し行われ、4クロックサイクルに1回の頻度で、4係数ずつ後段の1次元DCT変換回路5に順次供給される。   The reading control unit 42 reads the one-dimensional DCT coefficient by alternately switching the reading addresses in FIGS. 15 and 16 every 64 coefficients, thereby repeatedly transposing the row position and the column position of the one-dimensional DCT coefficient. 4 coefficients are sequentially supplied to the subsequent one-dimensional DCT conversion circuit 5 at a frequency of once every four clock cycles.

図17は、書き込み制御部41により制御されるデュアルポートRAM3a〜3dの書き込みタイミングを示す図である。書き込み動作において要求される条件は(式−9)、(式−10)のようになり、メモリセットアップタイムに対するタイミングマージンは、従来と比較して、システムクロックSCLKの3T分だけ増加する。   FIG. 17 is a diagram illustrating the write timing of the dual port RAMs 3a to 3d controlled by the write control unit 41. The conditions required in the write operation are (Equation-9) and (Equation-10), and the timing margin with respect to the memory setup time is increased by 3T of the system clock SCLK as compared with the conventional case.

4T − Td > Tsu(RAM) …… (式−9)
Td > Th(RAM) …… (式−10)
図18は、読み出し制御部42により制御されるデュアルポートRAM3a〜3dからの読み出しタイミングを示す図である。読み出し動作において要求される条件は(式−11)、(式−12)のようになり、デュアルポートRAM3a〜3dに要求されるアクセスタイムTpdは、従来と比較して、(3T−Tdm)だけ増加する。
4T-Td> Tsu (RAM) (Formula-9)
Td> Th (RAM) (Formula-10)
FIG. 18 is a diagram illustrating the read timing from the dual port RAMs 3a to 3d controlled by the read control unit 42. The conditions required in the read operation are (Expression-11) and (Expression-12), and the access time Tpd required for the dual port RAMs 3a to 3d is only (3T-Tdm) as compared with the conventional case. To increase.

4T−(Tpd+Tdm) > Tsu(FF)…… (式−11)
Tpd+Tdm > Th(FF) …… (式−12)
図19は、メモリ空間3を8ワードのデュアルポートRAM8個を用いて構成した例についてのブロック図である。図1と大きく異なる点は、メモリ空間3を8個のデュアルポートRAM3a〜3hで構成した点である。この場合は、前段の1次元DCT変換回路2から、8クロックサイクルに1回の頻度で、1次元DCT係数(K0〜K63)が、列順に早い方のDCT係数からDCTI7〜DCTI0として8係数ずつ順次パラレル出力され、書き込み制御部41により制御されて8個のデュアルポートRAM3a〜3hに順次書き込まれる。書き込まれるアドレスは図20に示すとおりであり、書き込みタイミングは、8クロックサイクルに1回の頻度で行われるように書き込み許可生成部414により制御される。
4T− (Tpd + Tdm)> Tsu (FF) (Formula-11)
Tpd + Tdm> Th (FF) (Formula-12)
FIG. 19 is a block diagram of an example in which the memory space 3 is configured using eight 8-word dual port RAMs. The main difference from FIG. 1 is that the memory space 3 is composed of eight dual port RAMs 3a to 3h. In this case, the one-dimensional DCT coefficients (K0 to K63) are generated from the preceding one-dimensional DCT conversion circuit 2 at a frequency of once every eight clock cycles, and eight coefficients are assigned as DCTI7 to DCTI0 from the earlier DCT coefficient in the column order. The signals are sequentially output in parallel, and are sequentially written into the eight dual port RAMs 3a to 3h under the control of the write control unit 41. The addresses to be written are as shown in FIG. 20, and the write timing is controlled by the write permission generation unit 414 so that the write timing is performed once every eight clock cycles.

デュアルポートRAM3a〜3hの読み出しは読み出し制御部42により制御され、読み出しアドレスは図21に示すとおりであり、読み出しタイミングは、8クロックサイクルに1回の頻度で行われるように読み出し許可生成部424により制御される。   The reading of the dual port RAMs 3a to 3h is controlled by the reading control unit 42. The reading address is as shown in FIG. 21, and the reading timing is set by the reading permission generating unit 424 so as to be performed once every eight clock cycles. Be controlled.

図22および図23は、書き込み制御部41に従って1次元DCT係数がデュアルポートRAM3a〜3hに書き込まれるデータ格納位置を示す図である。図22は、最初の8×8画素ブロックの1次元DCT係数K0〜K63がデュアルポートRAM3a〜3hに書き込まれるデータ格納位置を示す図であり、また図23は、次の8×8画素ブロックの1次元DCT係数K0〜K63がデュアルポートRAM3a〜3hに書き込まれるデータ格納位置を示す図である。1次元DCT係数は、64係数ごとに図22と図23のデータ格納位置に交互に書き込まれるよう、書き込み制御部41により繰り返し制御される。また、係数の書き込みは、すべて、8クロックサイクルに1回の頻度で繰り返し行われる。   22 and 23 are diagrams showing data storage positions where the one-dimensional DCT coefficients are written in the dual port RAMs 3a to 3h in accordance with the write control unit 41. FIG. FIG. 22 is a diagram showing data storage positions where the one-dimensional DCT coefficients K0 to K63 of the first 8 × 8 pixel block are written in the dual port RAMs 3a to 3h, and FIG. 23 shows the next 8 × 8 pixel block. It is a figure which shows the data storage position where the one-dimensional DCT coefficient K0-K63 is written in dual port RAM3a-3h. The one-dimensional DCT coefficients are repeatedly controlled by the write control unit 41 so that 64 coefficients are written alternately at the data storage positions in FIGS. Coefficient writing is all repeated at a frequency of once every 8 clock cycles.

図24および図25は、読み出し制御部42に従って1次元DCT係数をデュアルポートRAM3a〜3dから読み出す際のアドレス順序および読み出される1次元DCT係数を示す図である。図24は、最初の8×8画素ブロックの1次元DCT係数K0〜K63の読み出しアドレス順序および読み出される1次元DCT係数を示す図である。図25は、次の8×8画素ブロックの1次元DCT係数K0〜K63の読み出しアドレス順序および読み出される1次元DCT係数を示す図である。   24 and 25 are diagrams showing the address order and the one-dimensional DCT coefficients to be read when the one-dimensional DCT coefficients are read from the dual port RAMs 3a to 3d in accordance with the read control unit 42. FIG. FIG. 24 is a diagram illustrating the read address order of the one-dimensional DCT coefficients K0 to K63 of the first 8 × 8 pixel block and the one-dimensional DCT coefficients to be read. FIG. 25 is a diagram illustrating the read address order of the one-dimensional DCT coefficients K0 to K63 of the next 8 × 8 pixel block and the one-dimensional DCT coefficients to be read.

読み出し制御部42により、1次元DCT係数の読み出しを64係数ごとに図24と図25の読み出しアドレスを交互に切り替えて行うことにより、1次元DCT係数の行位置、列位置の転置が繰り返し行われ、8クロックサイクルに1回の頻度で、8係数ずつ後段の1次元DCT変換回路5に順次供給される。   The reading control unit 42 reads the one-dimensional DCT coefficients by alternately switching the reading addresses shown in FIGS. 24 and 25 every 64 coefficients, thereby repeatedly transposing the row position and the column position of the one-dimensional DCT coefficient. The 8 coefficients are sequentially supplied to the subsequent one-dimensional DCT conversion circuit 5 at a frequency of once every 8 clock cycles.

図26は、書き込み制御部41により制御されるデュアルポートRAM3a〜3hの書き込みタイミングを示す図である。書き込み動作において要求される条件は(式−13)、(式−14)のようになり、メモリセットアップタイムに対するタイミングマージンは、従来と比較して、システムクロックSCLKの7T分だけ増加する。   FIG. 26 is a diagram illustrating the write timing of the dual port RAMs 3a to 3h controlled by the write control unit 41. The conditions required in the write operation are (Equation-13) and (Equation-14), and the timing margin for the memory setup time is increased by 7T of the system clock SCLK as compared with the conventional case.

8T − Td > Tsu(RAM) …… (式−13)
Td > Th(RAM) …… (式−14)
図27は、読み出し制御部42により制御されるデュアルポートRAM3a〜3hからの読み出しタイミングを示す図である。読み出し動作において要求される条件は(式−15)、(式−16)のようになり、デュアルポートRAM3a〜3hに要求されるアクセスタイムTpdは、従来と比較して(7T−Tdm)だけ増加する。
8T−Td> Tsu (RAM) (Formula-13)
Td> Th (RAM) (Formula-14)
FIG. 27 is a diagram illustrating the read timing from the dual port RAMs 3a to 3h controlled by the read control unit 42. The conditions required for the read operation are (Expression-15) and (Expression-16), and the access time Tpd required for the dual port RAMs 3a to 3h is increased by (7T-Tdm) compared to the conventional case. To do.

8T−(Tpd+Tdm) > Tsu(FF) …… (式−15)
Tpd+Tdm > Th(FF) …… (式−16)
(第2の実施の形態)
図28は、この発明の第2の実施形態の2次元離散コサイン変換装置のブロック図である。前述の第1の実施の形態で示した2次元離散コサイン変換装置1は、2個のデュアルポートRAMの書き込み制御、読み出し制御を2係数ずつ個別に同一タイミングで行うのに対し、本実施の形態の2次元離散コサイン変換装置201は、係数のメモリ空間における書き込み位置(アドレス)、読み出し位置(アドレス)に関しては第1の実施の形態と全く同一であるが、2個のデュアルポートRAMの書き込み制御、読み出し制御を1係数ずつ個別に異なるタイミングで行う点で異なる。また、第1の実施の形態は、メモリへの書き込みおよびメモリからの読み出しにおける回路上のタイミングマージンを改善させ、かつ低消費電力化を実現するものであるが、この第2の実施の形態は、主にメモリの読み出しタイミングマージンのみを改善させ、かつ低消費電力化を図ろうとするものである。
8T− (Tpd + Tdm)> Tsu (FF) (Formula-15)
Tpd + Tdm> Th (FF) (Formula-16)
(Second Embodiment)
FIG. 28 is a block diagram of a two-dimensional discrete cosine transform apparatus according to the second embodiment of the present invention. The two-dimensional discrete cosine transform device 1 shown in the first embodiment described above performs writing control and reading control of two dual-port RAMs individually at the same timing for each of the two coefficients. The two-dimensional discrete cosine transform device 201 has the same writing position (address) and reading position (address) in the memory space of the coefficients as in the first embodiment, but writing control of two dual-port RAMs. The difference is that the readout control is performed individually for each coefficient at different timings. The first embodiment improves the timing margin on the circuit in writing to the memory and reading from the memory, and realizes low power consumption. The second embodiment, The main object is to improve only the read timing margin of the memory and reduce the power consumption.

図示のように、2次元離散コサイン変換装置201は、前段の1次元DCT変換回路202と、メモリ空間3と、転置制御部204と、後段の1次元DCT変換回路205とによって構成される。   As shown in the figure, the two-dimensional discrete cosine transform device 201 includes a preceding one-dimensional DCT transform circuit 202, a memory space 3, a transposition control unit 204, and a succeeding one-dimensional DCT transform circuit 205.

前段の1次元DCT変換回路202は、8×8画素ブロックに分割された画像の水平方向8画素分の画素データPXLDが、システムクロックSCLKに同期して1画素ずつ入力され、水平方向の1次元DCT変換が行われ、書き込みカウンタ2411より供給される信号WDCHGが論理値‘0’の時、すなわち奇数行の係数に関しては、D0、D1、D2、…、D7のように奇数列、偶数列の順に、システムクロックSCLKに同期して出力され、WDCHGが論理値‘1’の時、すなわち偶数行の係数に関しては、D9、D8、D11、D10…、D15、D14のように偶数列、奇数列の順に、システムクロックSCLKに同期して1係数ずつDCTIに出力されるように制御される。信号WDCHGは、書き込みカウンタ2411より供給され、詳しくは、システムクロックSCLKが16分周されたカウンタ出力WCNT3と同一となる。   The preceding one-dimensional DCT conversion circuit 202 receives pixel data PXLD for eight pixels in the horizontal direction of an image divided into 8 × 8 pixel blocks, one pixel at a time in synchronization with the system clock SCLK. When DCT conversion is performed and the signal WDCHG supplied from the write counter 2411 is a logical value '0', that is, for odd row coefficients, odd columns and even columns such as D0, D1, D2,. Sequentially output in synchronization with the system clock SCLK, and when WDCHG is a logical value '1', that is, for even row coefficients, even columns, odd columns such as D9, D8, D11, D10..., D15, D14 In this order, control is performed so that one coefficient is output to the DCTI in synchronization with the system clock SCLK. The signal WDCHG is supplied from the write counter 2411. Specifically, the signal WDCHG is the same as the counter output WCNT3 obtained by dividing the system clock SCLK by 16.

デュアルポートRAM3a、3bは、図1のものと全く同一である。
書き込み制御部241は、書き込みカウンタ2411と、書き込みアドレス発生部412と、書き込み許可生成部2414とで構成される。
The dual port RAMs 3a and 3b are exactly the same as those in FIG.
The write control unit 241 includes a write counter 2411, a write address generation unit 412, and a write permission generation unit 2414.

書き込みカウンタ2411は、図1のものと同様に7ビットのバイナリカウンタで構成されており、前段の1次元DCT変換回路202より出力される最初の係数K0が出力される同一のタイミングで論理値が‘0’となる信号WSTARTによりカウントアップしていくように制御される。また、書き込みデータ(係数)が奇数行の係数か、偶数行の係数かを識別できるように、前段の1次元DCT変換回路202に対し、信号WCNT3を信号WDCHGとして供給する。 書き込みアドレス発生部412は、図1のものと同一の構成で、係数の書き込みアドレスを図2の通り発生する。   The write counter 2411 is composed of a 7-bit binary counter as in FIG. 1, and the logical value is the same timing at which the first coefficient K0 output from the preceding one-dimensional DCT conversion circuit 202 is output. Control is performed to count up by a signal WSTART which becomes '0'. In addition, the signal WCNT3 is supplied as the signal WDCHG to the one-dimensional DCT conversion circuit 202 in the previous stage so that the write data (coefficient) can be identified as an odd row coefficient or an even row coefficient. The write address generator 412 has the same configuration as that shown in FIG. 1, and generates a coefficient write address as shown in FIG.

書き込み許可生成部2414は、デュアルポートRAM3a、3bに対しそれぞれ異なるタイミングで個別に書き込み制御するように、外部より供給される書き込み開始信号WSTARTと書き込みカウンタ2411の最下位ビットWCNT0との論理和(OR)を、デュアルポートRAM3aの書き込み許可信号WENBAとして供給し、また、信号WSTARTと書き込みカウンタ2411の最下位ビットWCNT0の反転信号との論理和(OR)を、デュアルポートRAM3bの書き込み許可信号WENBBとして供給する。   The write permission generation unit 2414 performs a logical sum (OR) of the write start signal WSTART supplied from the outside and the least significant bit WCNT0 of the write counter 2411 so as to individually control writing to the dual port RAMs 3a and 3b at different timings. ) Is supplied as the write enable signal WENBA of the dual port RAM 3a, and the logical sum (OR) of the signal WSTART and the inverted signal of the least significant bit WCNT0 of the write counter 2411 is supplied as the write enable signal WENBB of the dual port RAM 3b. To do.

図29は、デュアルポートRAM3a、3bにおける書き込みタイミングを示す図である。図のように、デュアルポートRAM3a、3bの書き込みがそれぞれ異なるタイミングで行われるように制御される。   FIG. 29 is a diagram showing the write timing in the dual port RAMs 3a and 3b. As shown in the figure, the dual port RAMs 3a and 3b are controlled to be written at different timings.

図28において、読み出し制御部242は、読み出しカウンタ2421と、読み出しアドレス発生部422と、読み出し許可生成部2424と、読み出しデータ出力制御部2425とで構成される。   In FIG. 28, the read control unit 242 includes a read counter 2421, a read address generation unit 422, a read permission generation unit 2424, and a read data output control unit 2425.

読み出しカウンタ2421は、図1のものと同様に7ビットのバイナリカウンタで構成されており、本実施の形態においては、デュアルポートRAM3a、3bより読み出された係数が奇数行の係数か偶数行の係数かの識別が可能となるように、後段の1次元DCT変換回路205に対して、カウンタ出力RCNT3を2クロックサイクル遅延させた信号をRDCHGとして供給する。   The read counter 2421 is composed of a 7-bit binary counter as in FIG. 1, and in the present embodiment, the coefficient read from the dual port RAMs 3a and 3b is an odd row coefficient or an even row coefficient. A signal obtained by delaying the counter output RCNT3 by two clock cycles is supplied to the subsequent one-dimensional DCT conversion circuit 205 as RDCHG so that the coefficient can be identified.

読み出しアドレス発生部422は、図1のものと同一の構成で、係数の読み出しアドレスを図3の通り発生する。
読み出し許可生成部2424は、それぞれ異なるタイミングでデュアルポートRAM3a、3bから読み出し制御するように、また、読み出しデータ出力制御部2425に対して読み出しデータRDA、RDBをそれぞれ異なるタイミングでラッチすることが可能となるように、デュアルポートRAM3a、3bに信号RENBAと信号RENBBとを供給する。信号RENBAは、外部より供給される読み出し開始信号RSTARTと読み出しカウンタ2421の最下位ビットRCNT0との論理和(OR)の信号であり、また信号RENBBは、信号RSTARTと読み出しカウンタ2421の最下位ビットRCNT0の反転信号との論理和(OR)の信号である。
The read address generator 422 has the same configuration as that shown in FIG. 1, and generates a coefficient read address as shown in FIG.
The read permission generation unit 2424 can control the read from the dual port RAMs 3a and 3b at different timings, and can latch the read data RDA and RDB at different timings with respect to the read data output control unit 2425. The signal RENBA and the signal RENBB are supplied to the dual port RAMs 3a and 3b. The signal RENBA is a logical sum (OR) signal of the read start signal RSTART supplied from outside and the least significant bit RCNT0 of the read counter 2421. The signal RENBB is the least significant bit RCNT0 of the signal RSTART and the read counter 2421. Is an OR signal with the inverted signal.

読み出しデータ出力制御部2425は、デュアルポートRAM3a、3bよりそれぞれ異なるタイミングで読み出された読み出しデータRDA、RDBを入力とし、読み出し許可生成部2424より供給される信号RENBA、RENBBに従って、1係数ずつ時分割処理する。   The read data output control unit 2425 receives the read data RDA and RDB read from the dual port RAMs 3a and 3b at different timings as input, and in accordance with the signals RENBA and RENBB supplied from the read permission generation unit 2424, the read data output control unit 2425 takes one coefficient at a time. Split processing.

図30は、デュアルポートRAM3a、3bからの読み出しタイミングを示す図である。信号RENBA、RENBBに従って異なるタイミングで読み出された読み出しデータRDA、RDBは、読み出し許可生成部2424より供給される信号RENBAが論理値‘0’の時にデータRDAがシステムクロックSCLKの立ち上がりエッジでラッチされてRDALTとなり、また、信号RENBBが論理値‘0’の時にデータRDBがラッチされてRDBLTとなる。すなわち、読み出しデータRDA、RDBがそれぞれラッチされるタイミングは、常に読み出されたタイミングの2クロック後となり、データRDA、RDBを正確にラッチするためには、デュアルポートRAM3a、3bのアクセスタイムをTpdとし、ラッチするフリップフロップの入力セットアップタイム、ホールドタイムをTsu(FF)、Th(FF)とすると、(式−17)、(式−18)の条件を満足していればよい。すなわち従来の条件(式−3)、(式−4)に比べれば、デュアルポートRAM3a、3bに要求されるアクセスタイムTpdは、Tだけ増加する。   FIG. 30 is a diagram showing the read timing from the dual port RAMs 3a and 3b. The read data RDA and RDB read at different timings according to the signals RENBA and RENBB are latched at the rising edge of the system clock SCLK when the signal RENBA supplied from the read permission generation unit 2424 is the logical value “0”. When the signal RENBB is a logical value “0”, the data RDB is latched and becomes RDBLT. That is, the timing at which the read data RDA and RDB are latched is always two clocks after the read timing. In order to accurately latch the data RDA and RDB, the access time of the dual port RAMs 3a and 3b is set to Tpd. Assuming that the input setup time and hold time of the flip-flop to be latched are Tsu (FF) and Th (FF), it is sufficient that the conditions of (Expression-17) and (Expression-18) are satisfied. That is, the access time Tpd required for the dual port RAMs 3a and 3b is increased by T as compared with the conventional conditions (Expression-3) and (Expression-4).

2T − Tpd> Tsu(FF) …… (式−17)
Tpd > Th(FF) …… (式−18)
その後、信号RENBAが論理値‘0’の時にRDALTが選択され、また信号RENBBが論理値‘0’の時にRDBLTが選択され、DCTOとして繰り返し出力されるように制御される。
2T−Tpd> Tsu (FF) (Formula-17)
Tpd> Th (FF) (Formula-18)
Thereafter, RDALT is selected when the signal RENBA has a logical value “0”, and RDBLT is selected when the signal RENBB has a logical value “0”, and is controlled to be repeatedly output as DCTO.

後段の1次元DCT変換回路205では、読み出しデータ制御部2425より1係数ずつ供給される信号DCTOを入力として、読み出しカウンタ2421より供給される信号RDCHGに従って、その係数の行位置が識別される。信号RDCHGは、システムクロックSCLKが16分周された信号であり、かつ読み出しデータの出力タイミングに合わせるため、信号RCNT3を2クロックサイクル遅延させた信号である。すなわち、信号RDCHGの論理値が‘0’の時は奇数行の係数を表し、論理値が‘1’の時は偶数行の係数を表している。後段の1次元DCT変換回路205は、この信号RDCHGにより、係数DCTOの行位置を識別し、8係数ごとの垂直方向の1次元DCT変換を行い、2次元DCT係数KK0〜KK63をシステムクロックSCLKに同期してDCTOUTとして順次出力する。   In the subsequent one-dimensional DCT conversion circuit 205, the signal DCTO supplied one coefficient at a time from the read data control unit 2425 is input, and the row position of the coefficient is identified according to the signal RDCHG supplied from the read counter 2421. The signal RDCHG is a signal obtained by dividing the system clock SCLK by 16, and is a signal obtained by delaying the signal RCNT3 by two clock cycles in order to match the output timing of read data. That is, when the logical value of the signal RDCHG is ‘0’, it represents an odd row coefficient, and when the logical value is ‘1’, it represents an even row coefficient. The subsequent one-dimensional DCT conversion circuit 205 identifies the row position of the coefficient DCTO by this signal RDCHG, performs one-dimensional DCT conversion in the vertical direction for every eight coefficients, and uses the two-dimensional DCT coefficients KK0 to KK63 as the system clock SCLK. Synchronously output as DCTOUT sequentially.

以上のように、本実施の形態の場合は、読み出しアクセスタイムが比較的大きな低速のRAMを使用しても、高速の離散コサイン変換装置の実現が可能となる。また、本第2の実施の形態では、メモリ空間3を32ワードのデュアルポートRAM2個で構成した場合を説明したが、実施の形態1の場合と同様に、メモリ空間3は、16ワードのデュアルポートRAM4個で構成してもよく、また、8ワードのデュアルポートRAM8個で構成してもよい。   As described above, in the case of the present embodiment, a high-speed discrete cosine transform device can be realized even when a low-speed RAM having a relatively large read access time is used. In the second embodiment, the case where the memory space 3 is configured by two 32-word dual-port RAMs has been described. However, as in the case of the first embodiment, the memory space 3 is a 16-word dual-port RAM. It may be composed of four port RAMs or may be composed of eight 8-port dual port RAMs.

16ワードのデュアルポートRAMを用いた場合の読み出し動作における条件は(式−19)のようになり、メモリに要求されるアクセスタイムTpdは従来と比較して3Tだけ増加する。また、8ワードのデュアルポートRAMを用いた場合の読み出し動作における条件は(式−20)のようになり、メモリに要求されるアクセスタイムTpdは従来と比較して7Tだけ増加する。   The condition in the read operation when a 16-word dual port RAM is used is as shown in (Equation-19), and the access time Tpd required for the memory is increased by 3T compared to the conventional case. Also, the condition in the read operation when using an 8-word dual port RAM is as shown in (Equation -20), and the access time Tpd required for the memory is increased by 7T compared to the conventional case.

2T − Tpd> Tsu(FF) …… (式−19)
8T − Tpd> Tsu(FF) …… (式−20)
2T−Tpd> Tsu (FF) (Formula-19)
8T-Tpd> Tsu (FF) (Formula-20)

本発明の第1の実施の形態の2次元離散コサイン変換装置のブロック図1 is a block diagram of a two-dimensional discrete cosine transform device according to a first embodiment of the present invention. 同2次元離散コサイン変換装置に備えられる書き込みアドレス発生部における2つのデュアルポートRAMの書き込みアドレスを示す図The figure which shows the write address of two dual port RAM in the write address generation part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出しアドレス発生部における2つのデュアルポートRAMの読み出しアドレスを示す図The figure which shows the read address of two dual port RAM in the read address generation part with which the same two-dimensional discrete cosine transformation apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、2つのデュアルポートRAMに最初の64個の1次元DCT係数データを書き込む際のデータ格納位置を示す図The figure which shows the data storage position at the time of writing the first 64 one-dimensional DCT coefficient data in two dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、2つのデュアルポートRAMに次の64個の1次元DCT係数データを書き込む際のデータ格納位置を示す図The figure which shows the data storage position at the time of writing the following 64 one-dimensional DCT coefficient data in two dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、2つのデュアルポートRAMから最初の64個の1次元DCT係数データを読み出す際の読み出しアドレス順と読み出される1次元DCT係数とを示す図The figure which shows the read address order at the time of reading the first 64 one-dimensional DCT coefficient data from two dual port RAMs, and the one-dimensional DCT coefficient read out in the read control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、2つのデュアルポートRAMから次の64個の1次元DCT係数データを読み出す際の読み出しアドレス順と読み出される1次元DCT係数とを示す図The figure which shows the order of the read address at the time of reading the next 64 one-dimensional DCT coefficient data from two dual port RAMs, and the one-dimensional DCT coefficient read out in the read control part with which the same two-dimensional discrete cosine transform device is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、2つのデュアルポートRAMに1次元DCT係数データを書き込む際の書き込みタイミングを示す図The figure which shows the write timing at the time of writing one-dimensional DCT coefficient data in two dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、2つのデュアルポートRAMから1次元DCT係数データを読み出す際の読み出しタイミングを示す図The figure which shows the read-out timing at the time of reading 1-dimensional DCT coefficient data from two dual port RAMs in the read-out control part with which the same 2-dimensional discrete cosine transform apparatus is equipped. 本発明の第1の実施の形態として示す他の2次元離散コサイン変換装置のブロック図Block diagram of another two-dimensional discrete cosine transform device shown as the first embodiment of the present invention 同2次元離散コサイン変換装置に備えられる書き込みアドレス発生部における4つのデュアルポートRAMの書き込みアドレスを示す図The figure which shows the write address of four dual port RAM in the write address generation part with which the same two-dimensional discrete cosine transformation apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出しアドレス発生部における4つのデュアルポートRAMの読み出しアドレスを示す図The figure which shows the read address of four dual port RAMs in the read address generation part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、4つのデュアルポートRAMに最初の64個の1次元DCT係数データを書き込む際のデータ格納位置を示す図The figure which shows the data storage position at the time of writing the first 64 one-dimensional DCT coefficient data in four dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、4つのデュアルポートRAMに次の64個の1次元DCT係数データを書き込む際のデータ格納位置を示す図The figure which shows the data storage position at the time of writing the next 64 one-dimensional DCT coefficient data in four dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、4つのデュアルポートRAMから最初の64個の1次元DCT係数データを読み出す際の読み出しアドレス順と読み出される1次元DCT係数とを示す図The figure which shows the read address order at the time of reading the first 64 one-dimensional DCT coefficient data from four dual port RAMs, and the one-dimensional DCT coefficient read out in the read control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、4つのデュアルポートRAMから次の64個の1次元DCT係数データを読み出す際の読み出しアドレス順と読み出される1次元DCT係数とを示す図The figure which shows the read address order at the time of reading the next 64 one-dimensional DCT coefficient data from four dual port RAM, and the one-dimensional DCT coefficient read in the read control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、4つのデュアルポートRAMに1次元DCT係数データを書き込む際の書き込みタイミングを示す図The figure which shows the write timing at the time of writing one-dimensional DCT coefficient data in four dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、4つのデュアルポートRAMから1次元DCT係数データを読み出す際の読み出しタイミングを示す図The figure which shows the read-out timing at the time of reading 1-dimensional DCT coefficient data from four dual port RAMs in the read-out control part with which the same 2-dimensional discrete cosine transform apparatus is equipped. 本発明の第1の実施の形態として示すさらに他の2次元離散コサイン変換装置のブロック図Block diagram of still another two-dimensional discrete cosine transform device shown as the first exemplary embodiment of the present invention 同2次元離散コサイン変換装置に備えられる書き込みアドレス発生部における8つのデュアルポートRAMの書き込みアドレスを示す図The figure which shows the write address of eight dual port RAMs in the write address generation part with which the two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出しアドレス発生部における8つのデュアルポートRAMの読み出しアドレスを示す図The figure which shows the read address of eight dual port RAM in the read address generation part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、8つのデュアルポートRAMに最初の64個の1次元DCT係数データを書き込む際のデータ格納位置を示す図The figure which shows the data storage position at the time of writing the first 64 one-dimensional DCT coefficient data in eight dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、8つのデュアルポートRAMに次の64個の1次元DCT係数データを書き込む際のデータ格納位置を示す図The figure which shows the data storage position at the time of writing the next 64 one-dimensional DCT coefficient data in eight dual port RAM in the writing control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、8つのデュアルポートRAMから最初の64個の1次元DCT係数データを読み出す際の読み出しアドレス順と読み出される1次元DCT係数とを示す図The figure which shows the read address order at the time of reading the first 64 one-dimensional DCT coefficient data from eight dual port RAMs, and the one-dimensional DCT coefficient read in the read control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、8つのデュアルポートRAMから次の64個の1次元DCT係数データを読み出す際の読み出しアドレス順と読み出される1次元DCT係数とを示す図The figure which shows the read address order at the time of reading the next 64 one-dimensional DCT coefficient data from eight dual port RAM, and the read one-dimensional DCT coefficient in the read control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、8つのデュアルポートRAMに1次元DCT係数データを書き込む際の書き込みタイミングを示す図The figure which shows the write timing at the time of writing one-dimensional DCT coefficient data in eight dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、8つのデュアルポートRAMから1次元DCT係数データを読み出す際の読み出しタイミングを示す図The figure which shows the read-out timing at the time of reading 1-dimensional DCT coefficient data from eight dual port RAM in the read-out control part with which the same 2-dimensional discrete cosine transform apparatus is equipped. 本発明の第2の実施の形態の2次元離散コサイン変換装置のブロック図Block diagram of a two-dimensional discrete cosine transform device according to a second embodiment of the present invention 同2次元離散コサイン変換装置に備えられる書き込み制御部において、2つのデュアルポートRAMに1次元DCT係数データを書き込む際の書き込みタイミングを示す図The figure which shows the write timing at the time of writing one-dimensional DCT coefficient data in two dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、2つのデュアルポートRAMから1次元DCT係数データを読み出す際の読み出しタイミングを示す図The figure which shows the read-out timing at the time of reading 1-dimensional DCT coefficient data from two dual port RAMs in the read-out control part with which the same 2-dimensional discrete cosine transform apparatus is equipped. 従来の2次元離散コサイン変換装置のブロック図Block diagram of a conventional two-dimensional discrete cosine transform device 同2次元離散コサイン変換装置に備えられる書き込み制御部において、デュアルポートRAMに最初の64個の1次元DCT係数データを書き込む際の書き込み順を示す図The figure which shows the order of writing at the time of writing the first 64 one-dimensional DCT coefficient data in dual port RAM in the writing control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、デュアルポートRAMから最初の64個の1次元DCT係数データを読み出す際の読み出し順を示す図The figure which shows the reading order at the time of reading the first 64 one-dimensional DCT coefficient data from dual port RAM in the read-out control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、デュアルポートRAMに次の64個の1次元DCT係数データを書き込む際の書き込み順を示す図The figure which shows the order of writing at the time of writing the next 64 one-dimensional DCT coefficient data in dual port RAM in the write control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、デュアルポートRAMから次の64個の1次元DCT係数データを読み出す際の読み出し順を示す図The figure which shows the reading order at the time of reading the next 64 one-dimensional DCT coefficient data from dual port RAM in the read control part with which the same two-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる書き込み制御部において、デュアルポートRAMに1次元DCT係数データを書き込む際の書き込みタイミングを示す図The figure which shows the write-in timing at the time of writing 1-dimensional DCT coefficient data in dual port RAM in the write-control part with which the same 2-dimensional discrete cosine transform apparatus is equipped. 同2次元離散コサイン変換装置に備えられる読み出し制御部において、デュアルポートRAMから1次元DCT係数データを読み出す際の読み出しタイミングを示す図The figure which shows the read-out timing at the time of reading 1-dimensional DCT coefficient data from dual port RAM in the read-out control part with which the same 2-dimensional discrete cosine transform apparatus is equipped.

符号の説明Explanation of symbols

1 2次元離散コサイン変換装置
2、5 1次元DCT変換回路
3 メモリ空間
3a、3b デュアルポートRAM
4 転置制御部
41 書き込み制御部
42 読み出し制御部
413 書き込みデータ選択回路
414 書き込み許可生成部
421 読み出しデータ選択回路
424 読み出し許可生成部
1 2D Discrete Cosine Transformer 2, 5 1D DCT Converter 3 Memory Space 3a, 3b Dual Port RAM
4 transposition control unit 41 write control unit 42 read control unit 413 write data selection circuit 414 write permission generation unit 421 read data selection circuit 424 read permission generation unit

Claims (3)

mおよびnを整数(m=nまたはm≠n)としてm列×n行の画素のブロック単位でm画素またはn画素ごとに水平方向の1次元離散コサイン変換を行う前段の離散コサイン変換回路と、この離散コサイン変換回路から供給されるm×n個の1次元離散コサイン係数を一時的に格納するメモリ空間と、このメモリ空間の行位置と列位置とを転置して1次元離散コサイン係数の書き込みと読み出しとを制御する転置制御部と、上記メモリ空間から出力される離散コサイン係数を入力としてm係数またはn係数毎に垂直方向の1次元離散コサイン変換を行う後段の離散コサイン変換回路とを備える離散コサイン変換装置であって、上記メモリ空間をNを整数としてN個の(m×n)/NワードのデュアルポートRAMを用いて構成し、上記転置制御部を、Nクロックサイクルに1回の頻度でN個の上記デュアルポートRAMの書き込み動作を繰り返し個別に制御する書き込み制御部と、Nクロックサイクルに1回の頻度で読み出し動作を繰り返し個別に制御する読み出し制御部とを具備する構成としたことを特徴とする離散コサイン変換装置。 a discrete cosine transform circuit in the preceding stage that performs one-dimensional discrete cosine transform in the horizontal direction for each m pixels or n pixels in block units of pixels of m columns × n rows, where m and n are integers (m = n or m ≠ n) , A memory space temporarily storing m × n one-dimensional discrete cosine coefficients supplied from the discrete cosine transform circuit, and transposing the row position and the column position of the memory space, the one-dimensional discrete cosine coefficient A transposition control unit that controls writing and reading; and a discrete cosine transform circuit at a subsequent stage that performs one-dimensional discrete cosine transform in the vertical direction for each of the m coefficient or n coefficient with the discrete cosine coefficient output from the memory space as an input. A discrete cosine transform apparatus comprising: N (m × n) / N word dual-port RAMs, where N is an integer, and the transposition control A write control unit that repeatedly and individually controls the write operation of the N dual-port RAMs once every N clock cycles, and a read that individually controls the read operation repeatedly and once every N clock cycles. A discrete cosine transform device characterized by comprising a control unit. 前段の離散コサイン変換回路は、水平方向のmまたはn画素毎の1次元離散コサイン変換を行って、NクロックサイクルにN個の係数ずつ1次元離散コサイン係数群として順次パラレル出力するように構成され、
書き込み制御部は、上記前段の離散コサイン変換回路から順次供給される1次元離散コサイン係数群を、同一列の係数がm×N個またはn×N個の係数単位でそれぞれ異なるデュアルポートRAMに順次書き分けられるように制御するとともに、それぞれのデュアルポートRAMの書き込みに関しては、最初のm×n個の1次元離散コサイン係数の場合は、任意のアドレスに順次書き込んだ離散コサイン係数が上書きされないようにアドレスを指定して、Nクロックサイクルに1回の頻度で同一のタイミングで書き込み制御し、次のm×n個の1次元離散コサイン係数の場合は、最初のm×n個の1次元離散コサイン係数が列方向に順次上書きされていくようにアドレスを個別に指定し、Nクロックサイクルに1回の頻度で1次元離散コサイン係数を同一のタイミングで書き込み制御し、以後、上記
2つの書き込み制御を繰り返し交互に行うように構成され、
読み出し制御部は、上記書き込み制御部によりN個のデュアルポートRAMに書き分けられた1次元離散コサイン係数をm×n画素のブロック単位の列方向順にN個ずつ同時に読み出し可能となるアドレスを、上記デュアルポートRAMにそれぞれ繰り返し個別に供給し、Nクロックサイクルに1回の頻度で、同一のタイミングで読み出されたそれぞれの1次元離散コサイン係数について、m×n画素のブロック単位の列方向順に係数の入れ替えを行い、その入れ替えられたN個の係数で構成される1次元離散コサイン係数群を、Nクロックサイクルに1回の頻度で、同一のタイミングでラッチし、後段の離散コサイン変換回路へ繰り返し供給するように構成され、
後段の離散コサイン変換回路は、上記読み出し制御部からNクロックサイクルに1回の頻度で出力されるN個の離散コサイン係数群を入力として、m係数またはn係数毎の1次元離散コサイン変換を行うように構成されていることを特徴とする請求項1記載の離散コサイン変換装置。
The previous stage discrete cosine transform circuit is configured to perform one-dimensional discrete cosine transform for every m or n pixels in the horizontal direction and sequentially output in parallel as a one-dimensional discrete cosine coefficient group by N coefficients every N clock cycles. ,
The writing control unit sequentially converts the one-dimensional discrete cosine coefficient groups sequentially supplied from the preceding stage discrete cosine transform circuit to dual port RAMs having different coefficients in the same column in units of m × N or n × N coefficients. In addition to controlling the writing to each dual port RAM, in the case of the first m × n one-dimensional discrete cosine coefficients, the addresses are set so that the discrete cosine coefficients sequentially written to arbitrary addresses are not overwritten. , And write control is performed at the same timing once every N clock cycles, and in the case of the next m × n one-dimensional discrete cosine coefficients, the first m × n one-dimensional discrete cosine coefficients The address is individually specified so that is sequentially overwritten in the column direction, and the one-dimensional discrete cosine is applied once every N clock cycles. The number is controlled to be written at the same timing, and thereafter, the above two writing controls are repeatedly performed alternately.
The read control unit is configured to obtain addresses which can simultaneously read N one-dimensional discrete cosine coefficients written in N dual-port RAMs by the write control unit in the column direction of m × n pixels in the column direction. For each one-dimensional discrete cosine coefficient that is repeatedly and individually supplied to the port RAM and read out at the same timing once every N clock cycles, the coefficients of the coefficients in the column direction of the block unit of m × n pixels. 1-dimensional discrete cosine coefficient group composed of the replaced N coefficients is latched at the same timing once every N clock cycles and repeatedly supplied to the subsequent discrete cosine transform circuit. Configured to
The discrete cosine transform circuit at the subsequent stage performs one-dimensional discrete cosine transform for each of the m coefficient or n coefficient, with N discrete cosine coefficient groups output at a frequency of once every N clock cycles from the read control unit as an input. The discrete cosine transform device according to claim 1, which is configured as described above.
前段の離散コサイン変換回路は、水平方向m画素またはn画素毎の1次元離散コサイン変換を行い、求まった1次元離散コサイン変換係数に関してその行位置により係数の出力順を決定し、1クロックサイクルに1回の頻度で1係数ずつ順次出力するように構成され、
書き込み制御部は、上記前段の離散コサイン変換回路から1係数ずつ順次供給される1次元離散コサイン係数を、同一列の係数がm×N個またはn×N個の係数単位でそれぞれ異なるデュアルポートRAMに順次書き分けられるように制御し、それぞれのデュアルポートRAMの書き込みに関しては、最初のm×n個の1次元離散コサイン係数の場合は、任意のアドレスに順次書き込んだ離散コサイン係数が上書きされないようにアドレスを個別に指定して、Nクロックサイクルに1回の頻度でそれぞれ異なるタイミングで書き込み制御し、次のm×n個の1次元離散コサイン係数の場合は、最初のm×n個の1次元離散コサイン係数が列方向に順次上書きされていくようにアドレスを個別に指定して、Nクロックサイクルに1回の頻度で1次元離散コサイン係数を異なるタイミングで書き込み制御
するように構成され、
読み出し制御部は、上記書き込み制御部によりN個の上記デュアルポートRAMに書き分けられた1次元離散コサイン係数を、m×n画素のブロック単位の列方向順に、読み出し可能となるアドレスを、N個の上記デュアルポートRAMにそれぞれ個別に供給し、N個の上記デュアルポートRAMから、1次元離散コサイン係数をNクロックサイクルに1回の頻度でそれぞれ異なるタイミングで読み出し制御し、読み出された1次元離散コサイン係数については、Nクロックサイクルに1回の頻度で、それぞれ異なるタイミングでラッチして1次元離散コサイン係数を順次時分割出力し、1クロックサイクルに1回の頻度で上記後段の離散コサイン変換回路へ繰り返し供給するように構成され、
後段の離散コサイン変換回路は、上記読み出し制御部により1クロックサイクルに1回の頻度で出力される1次元離散コサイン係数を、その列位置により係数の行位置を認識して、m係数毎またはn係数毎の1次元離散コサイン変換するように構成されていることを特徴とする請求項1記載の離散コサイン変換装置。
The discrete cosine transform circuit in the previous stage performs one-dimensional discrete cosine transform for every m pixels or n pixels in the horizontal direction, determines the output order of the coefficients for the obtained one-dimensional discrete cosine transform coefficients according to the row position, and takes one clock cycle. It is configured to sequentially output one coefficient at a time,
The write control unit is a dual port RAM in which the one-dimensional discrete cosine coefficients sequentially supplied one by one from the discrete cosine transform circuit in the preceding stage are different from each other in units of m × N or n × N coefficients in the same column. In the case of the first m × n one-dimensional discrete cosine coefficients, the discrete cosine coefficients sequentially written at arbitrary addresses are not overwritten. The address is individually specified, and writing control is performed at different timings once every N clock cycles. In the case of the next m × n one-dimensional discrete cosine coefficients, the first m × n one-dimensional Specify individual addresses so that discrete cosine coefficients are overwritten sequentially in the column direction, one-dimensional with a frequency of once every N clock cycles It is configured to control writing of discrete cosine coefficients at different timings,
The read control unit reads N-dimensional discrete cosine coefficients written in the N dual-port RAMs by the write control unit in the order of m × n pixel blocks in the column direction, and outputs N addresses. Each of the dual-port RAMs is individually supplied, and the one-dimensional discrete cosine coefficients are read out from the N dual-port RAMs at different timings with a frequency of once every N clock cycles. The cosine coefficient is latched at different timings once every N clock cycles, and one-dimensional discrete cosine coefficients are sequentially time-divisionally output, and the subsequent discrete cosine transform circuit is once per clock cycle. Configured to repeatedly feed to
The discrete cosine transform circuit in the subsequent stage recognizes the one-dimensional discrete cosine coefficient output at a frequency of once per clock cycle by the read control unit, recognizes the row position of the coefficient by its column position, and outputs each m coefficient or n 2. The discrete cosine transform apparatus according to claim 1, wherein the discrete cosine transform apparatus is configured to perform a one-dimensional discrete cosine transform for each coefficient.
JP2005341924A 2005-11-28 2005-11-28 Discrete cosine transform system Pending JP2006127536A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005341924A JP2006127536A (en) 2005-11-28 2005-11-28 Discrete cosine transform system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005341924A JP2006127536A (en) 2005-11-28 2005-11-28 Discrete cosine transform system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP30787199A Division JP2001125883A (en) 1999-10-29 1999-10-29 Discrete cosine transforming device

Publications (2)

Publication Number Publication Date
JP2006127536A true JP2006127536A (en) 2006-05-18
JP2006127536A5 JP2006127536A5 (en) 2006-10-12

Family

ID=36722146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005341924A Pending JP2006127536A (en) 2005-11-28 2005-11-28 Discrete cosine transform system

Country Status (1)

Country Link
JP (1) JP2006127536A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107018420A (en) * 2017-05-08 2017-08-04 电子科技大学 A kind of low-power consumption two-dimension discrete cosine transform method and its circuit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107018420A (en) * 2017-05-08 2017-08-04 电子科技大学 A kind of low-power consumption two-dimension discrete cosine transform method and its circuit
CN107018420B (en) * 2017-05-08 2019-07-12 电子科技大学 A kind of low-power consumption two-dimension discrete cosine transform method and its circuit

Similar Documents

Publication Publication Date Title
JP4152308B2 (en) Semiconductor integrated circuit device
JP2002216479A (en) Method and circuit for driving quad data rate synchronous semiconductor memory device
JP2004171738A (en) Pipe latch circuit for outputting high-speed data
US5319596A (en) Semiconductor memory device employing multi-port RAMs
KR100498233B1 (en) First-in first-out memory circuit and method for executing the same
JP2007213055A (en) Method of transferring frame data using synchronous dynamic random access memory, method of transferring frame data to source driver, and timing control module
JP2006127536A (en) Discrete cosine transform system
JPH09198862A (en) Semiconductor memory
US7231413B2 (en) Transposition circuit
JP4559172B2 (en) Image processing circuit and image processing method
JP2001125883A (en) Discrete cosine transforming device
KR100532444B1 (en) Memory device implementing 2N bit prefetch scheme using N bit prefetch structure and 2N bit prefetching method and auto-precharge method
JP3288327B2 (en) Video memory circuit
JPWO2009081551A1 (en) Memory device and control method thereof
EP1459291B1 (en) Digital line delay using a single port memory
CN116150046B (en) Cache circuit
JP2000172242A (en) Image display control device
JP2824708B2 (en) Graphic drawing device
JPS62151987A (en) Multi port memory processing picture
JP4811909B2 (en) Address generation circuit and data storage device
JP2002108695A (en) Multi-port memory device
JP4252406B2 (en) Data converter
KR20220131380A (en) Data processing circuits and devices
JP2000218876A (en) Image data converting circuit and image data converting method
JPS61121597A (en) Time division channel system and equipment thereof

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060829

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060829

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080430

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080620

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080701

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081028