JP5145581B2 - Orthogonal transformation circuit - Google Patents

Orthogonal transformation circuit Download PDF

Info

Publication number
JP5145581B2
JP5145581B2 JP2007317186A JP2007317186A JP5145581B2 JP 5145581 B2 JP5145581 B2 JP 5145581B2 JP 2007317186 A JP2007317186 A JP 2007317186A JP 2007317186 A JP2007317186 A JP 2007317186A JP 5145581 B2 JP5145581 B2 JP 5145581B2
Authority
JP
Japan
Prior art keywords
data
bit
transfer
circuit
orthogonal transformation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007317186A
Other languages
Japanese (ja)
Other versions
JP2009140323A (en
Inventor
博之 山崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2007317186A priority Critical patent/JP5145581B2/en
Publication of JP2009140323A publication Critical patent/JP2009140323A/en
Application granted granted Critical
Publication of JP5145581B2 publication Critical patent/JP5145581B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

この発明は、データ配列を直交変換する直交変換回路に関し、特に、並列演算処理装置におけるワードシリアル/ビットパラレルデータ列とワードパラレル/ビットシリアルデータ列との間の変換を行なう直交変換回路に関する。   The present invention relates to an orthogonal transform circuit that orthogonally transforms a data array, and more particularly to an orthogonal transform circuit that performs conversion between a word serial / bit parallel data string and a word parallel / bit serial data string in a parallel processing unit.

移動体通信技術の発展に伴って、携帯電話などの携帯端末機器においては、音声および画像のような大量のデータを送受信することが可能となる。このため、音声および画像などの大量のデータを高速に処理するデジタル信号処理の重要性が高くなってきている。このようなデジタル信号処理には、一般に、専用の半導体装置としてDSP(デジタル・シグナル・プロセッサ)が用いられる場合が多い。音声および画像データに対するデジタル信号処理においては、フィルタ処理などのデータ処理が行なわれ、このような処理においては、積和演算を繰返す演算処理が多い。したがって、一般に、DSPの構成においては、乗算回路、加算回路および累算用のレジスタが設けられる。このような専用のDSPを用いると、積和演算を1マシンサイクルで実行することが可能となり、高速演算処理が可能となる。   With the development of mobile communication technology, mobile terminal devices such as mobile phones can transmit and receive large amounts of data such as voice and images. For this reason, the importance of digital signal processing for processing a large amount of data such as sound and images at high speed is increasing. For such digital signal processing, a DSP (digital signal processor) is generally used as a dedicated semiconductor device in many cases. In digital signal processing for audio and image data, data processing such as filter processing is performed, and in such processing, there are many arithmetic processes that repeat product-sum operations. Therefore, in general, in the configuration of the DSP, a multiplication circuit, an addition circuit, and an accumulation register are provided. If such a dedicated DSP is used, the product-sum operation can be executed in one machine cycle, and high-speed operation processing is possible.

しかしながら、このような専用のDSPを用いる場合、演算処理対象のデータのビット幅が固定され、したがって、汎用性に欠けるという問題が生じる。データのビット幅にかかわらず、高速で演算処理を行なう汎用性の高い演算処理装置の一例が、特許文献1(特開2007−140750号公報)に示されている。   However, when such a dedicated DSP is used, there is a problem that the bit width of the data to be processed is fixed, so that the versatility is lacking. An example of a highly versatile arithmetic processing apparatus that performs arithmetic processing at high speed regardless of the bit width of data is disclosed in Japanese Patent Application Laid-Open No. 2007-140750.

この特許文献1に示される構成においては、演算処理装置内に、複数のエントリに分割されるメモリセルマットと、各エントリに対応して配置される演算器とが設けられる。演算対象のデータを各エントリに格納する。複数のエントリにおいて並列にビットシリアル態様で対応の演算器において演算処理を実行し、実行結果を対応のエントリに再書込する。   In the configuration disclosed in Patent Document 1, a memory cell mat that is divided into a plurality of entries and an arithmetic unit that is arranged corresponding to each entry are provided in the arithmetic processing unit. Data to be calculated is stored in each entry. In a plurality of entries, arithmetic processing is executed in a corresponding arithmetic unit in a bit serial manner in parallel, and the execution result is rewritten in the corresponding entry.

この特許文献1に示される並列演算処理装置の構成では、演算処理は、ビットごとに処理されるというビットシリアル態様で実行されるため、演算対象のデータのビット幅だけ、演算処理を繰返すことにより、対象データの演算処理を実行することができる。従って、演算処理対象のデータのビット幅の制限を受けることなく、同一構成で演算処理を実行することができる。また、演算器の演算処理内容を、プログラム命令により設定することにより、複数種類の演算処理を実行することができる。   In the configuration of the parallel arithmetic processing device shown in Patent Document 1, since the arithmetic processing is executed in a bit serial manner in which each bit is processed, the arithmetic processing is repeated by the bit width of the data to be calculated. The calculation processing of the target data can be executed. Therefore, the arithmetic processing can be executed with the same configuration without being limited by the bit width of the data to be arithmetic processed. Moreover, a plurality of types of arithmetic processing can be executed by setting the arithmetic processing contents of the arithmetic unit by program instructions.

このエントリに格納されるデータは、ビットシリアルに転送される。一方、外部のデータは、ワードシリアルかつビットパラレルに転送される。ここで、ワードシリアルかつビットパラレルは、ワードを構成するデータビットがデータバスを介して並列に各ワードごとに転送される態様を示す。一方、並列演算処理装置内においては、複数のエントリに対して並列に演算処理を実行する。従って、各エントリには、データをビットシリアル態様で転送して格納する必要がある。このため、外部データ(外部のプロセッサなどが処理するデータ)と並列演算処理装置内におけるデータとの間で配列を変換する必要がある。上述の特許文献1においては、2つのポートを有する直交変換メモリを利用してデータ配列の変換を行なう。この直交変換メモリとしては、2ポートSRAMが用いられる。直交変換メモリを2つ準備し、これらの直交変換メモリへインタリーブ態様でアクセスする。一方の直交変換メモリへのデータ書込時に、他方の直交変換メモリからデータの読出を実行する。   Data stored in this entry is transferred in bit serial. On the other hand, external data is transferred in word serial and bit parallel. Here, word serial and bit parallel indicate a mode in which data bits constituting a word are transferred in parallel via the data bus for each word. On the other hand, in the parallel arithmetic processing unit, arithmetic processing is executed in parallel for a plurality of entries. Therefore, it is necessary to transfer and store data in each entry in a bit serial manner. For this reason, it is necessary to convert the array between external data (data processed by an external processor or the like) and data in the parallel processing unit. In the above-mentioned Patent Document 1, data array conversion is performed using an orthogonal transform memory having two ports. As this orthogonal transformation memory, a 2-port SRAM is used. Two orthogonal transformation memories are prepared, and these orthogonal transformation memories are accessed in an interleaved manner. When data is written to one orthogonal transformation memory, data is read from the other orthogonal transformation memory.

この特許文献1においては、外部のデータバス(システムバス)を転送されるデータのビット幅が異なる場合、直交変換メモリのデータビット格納領域を調整する。これにより、演算処理対象のデータのビット幅が異なる場合においても、バス構成を変更することなく、効率的にデータ転送を行なうことを図る。
特開2007−140750号公報
In Patent Document 1, when the bit width of data transferred through an external data bus (system bus) is different, the data bit storage area of the orthogonal transformation memory is adjusted. As a result, even when the bit widths of the data to be processed are different, it is possible to efficiently transfer data without changing the bus configuration.
JP 2007-140750 A

上述の特許文献1においては、2つの直交変換メモリに対しインタリーブ態様でアクセスする。1つの実施の形態において、この特許文献1は、システムバスと直交変換メモリとの間でデータ転送経路を、システムバス上を転送されるデータ(外部データ)のビット幅に応じて切換える。すなわち、外部データが8ビットデータの場合、直交変換メモリの8ビット領域がアクセスされ、残りの領域はアクセスされない。したがって、直交変換メモリの利用効率が低下する。   In Patent Document 1 described above, two orthogonal transformation memories are accessed in an interleaved manner. In one embodiment, this patent document 1 switches a data transfer path between a system bus and an orthogonal transformation memory according to a bit width of data (external data) transferred on the system bus. That is, when the external data is 8-bit data, the 8-bit area of the orthogonal transformation memory is accessed, and the remaining areas are not accessed. Therefore, the utilization efficiency of the orthogonal transformation memory is lowered.

別の実施の形態においては、この特許文献1は、データビット幅に応じてシステムバスと直交変換メモリの入出力回路との接続を切換える。直交変換メモリは、外部データの最小データビット幅を有する複数のメモリブロックに分割する。データビット幅に応じてシステムバスと直交変換メモリとの間のアクセス経路を切換える。たとえば、外部データが8ビットの場合、1つのメモリブロックに対するアクセスが完了した後、バス接続を切換えて、次のメモリブロックとシステムバスとの間でデータ転送を行なう。このため、データ転送時にシステムバスの全ビットを利用してデータを転送することができるものの、直交変換メモリとシステムバスとの間にバス接続の切換を行なう回路が必要となり、直交変換回路のサイズを低減するために、さらに工夫を要する余地がある。   In another embodiment, Patent Document 1 switches the connection between a system bus and an input / output circuit of an orthogonal transformation memory in accordance with a data bit width. The orthogonal transform memory is divided into a plurality of memory blocks having the minimum data bit width of the external data. The access path between the system bus and the orthogonal transformation memory is switched according to the data bit width. For example, when the external data is 8 bits, after the access to one memory block is completed, the bus connection is switched, and data transfer is performed between the next memory block and the system bus. Therefore, although data can be transferred using all bits of the system bus during data transfer, a circuit for switching the bus connection between the orthogonal transformation memory and the system bus is required. There is room to further devise in order to reduce this.

それゆえ、この発明の目的は、回路規模の増大およびバスの利用効率の低下を抑制して種々のビット幅のデータについて直交変換を行なって転送することのできる直交変換回路を提供することである。   SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide an orthogonal transformation circuit capable of performing orthogonal transformation and transferring data of various bit widths while suppressing an increase in circuit scale and a decrease in bus utilization efficiency. .

この発明に係る直交変換回路は、複数の2ポート直交変換メモリを、互いに直交する第1および第2のデータバスに結合する。第1のデータバスのビット幅は、外部のシステムデータバスのビット幅よりも小さくする。複数の直交変換メモリに対して、転送データビット幅に従って個々にバス接続制御信号、アドレス信号および活性化を制御する転送制御信号を生成して、これらの2ポート直交変換メモリのバス接続および活性化を個々に設定する。この第2のデータバスと複数の直交変換メモリの間に、データ転送の配列調整のためのバッファメモリを設ける。このバッファメモリを用いて第2のデータバスとバッファとの間の転送経路および第2のデータバスとバッファとインタフェースとの間の経路を選択的に設定してデータ転送順序を調整する。この直交変換メモリと第2のデータバスとの間の接続、直交変換メモリの活性化を制御する信号およびアドレス信号データビット幅情報に従って生成して直交変換メモリ個々にバス接続および活性化を制御する。   The orthogonal transformation circuit according to the present invention couples a plurality of 2-port orthogonal transformation memories to first and second data buses orthogonal to each other. The bit width of the first data bus is made smaller than the bit width of the external system data bus. A bus connection control signal, an address signal, and a transfer control signal for controlling activation are individually generated for a plurality of orthogonal transformation memories according to the transfer data bit width, and the bus connection and activation of these two-port orthogonal transformation memories are performed. Set individually. A buffer memory for adjusting the arrangement of data transfer is provided between the second data bus and the plurality of orthogonal transformation memories. Using this buffer memory, the transfer path between the second data bus and the buffer and the path between the second data bus, the buffer and the interface are selectively set to adjust the data transfer order. The connection between the orthogonal transformation memory and the second data bus, the signal for controlling the activation of the orthogonal transformation memory and the address signal data bit width information are generated and the bus connection and the activation are individually controlled for the orthogonal transformation memory. .

複数の2ポート直交変換メモリを、転送データのビット幅に応じてバス接続を調整し、また選択的に活性化してデータの書込を実行する。したがって、バス構成を変更することなく種々のビット幅のデータを直交変換メモリとシステム側との間で全メモリ領域を利用するように転送することができる。また、第2のデータバスと直交変換メモリとの間の接続および直交変換メモリの活性化を転送データのビット幅に応じて設定することにより、種々のビット幅のデータを直交変換メモリと第2のデータバスとの間で正確に転送することができる。   A plurality of 2-port orthogonal transformation memories adjust the bus connection according to the bit width of the transfer data, and selectively activate the data to execute data writing. Therefore, data having various bit widths can be transferred between the orthogonal transformation memory and the system side so as to use the entire memory area without changing the bus configuration. Further, by setting the connection between the second data bus and the orthogonal transformation memory and the activation of the orthogonal transformation memory in accordance with the bit width of the transfer data, data of various bit widths can be transmitted between the orthogonal transformation memory and the second transformation memory. Can be accurately transferred to and from the data bus.

また、バッファメモリを利用して、データ転送順序を転送データのビット幅に応じて調整することにより、種々のビット幅のデータを、第2のデータバスの全ビットを利用してビットシリアル態様で転送することができる。   In addition, by using the buffer memory, the data transfer order is adjusted according to the bit width of the transfer data, so that data of various bit widths can be obtained in a bit serial manner using all the bits of the second data bus. Can be transferred.

[実施の形態1]
図1は、この発明に従う直交変換回路が適用される信号処理システムの全体の構成を概略的に示す図である。図1において、信号処理システム1は、各種処理を実行する演算機能を実現するシステムLSI2と、システムLSI2と外部システムバス3を介して接続される外部メモリとを含む。外部メモリは、大容量メモリ4と、高速メモリ5と、読出専用メモリ(Read Only Memory:ROM)6とを含む。大容量メモリ4は、たとえばクロック同期型ダイナミック・ランダム・アクセス・メモリ(SDRAM)で構成され、以下、単にSDRAMと称す。高速メモリ5は、たとえばスタティック・ランダム・アクセス・メモリ(SRAM)で構成される。読出専用メモリ6は、マスクROMなどの不揮発性メモリで構成され、システム立上げ時の命令などの固定情報を格納する。
[Embodiment 1]
FIG. 1 is a diagram schematically showing an overall configuration of a signal processing system to which an orthogonal transform circuit according to the present invention is applied. In FIG. 1, the signal processing system 1 includes a system LSI 2 that realizes an arithmetic function for executing various processes, and an external memory connected to the system LSI 2 via an external system bus 3. The external memory includes a large-capacity memory 4, a high-speed memory 5, and a read-only memory (ROM) 6. The large-capacity memory 4 is composed of, for example, a clock synchronous dynamic random access memory (SDRAM), and is simply referred to as SDRAM hereinafter. The high-speed memory 5 is composed of, for example, a static random access memory (SRAM). The read-only memory 6 is composed of a non-volatile memory such as a mask ROM, and stores fixed information such as an instruction at the time of system startup.

システムLSI2は、内部システムバス7に並列に結合される基本演算ブロックFB1−FBhと、これらの基本演算ブロックFB1−FBhの処理動作を制御するホストCPU8と、信号処理システム1の外部からの入力信号INを内部処理用データに変換する入力ポート9と、内部システムバス7から与えられる出力データを受けてシステム外部へ転送される出力信号/データOUTを生成する出力ポート10とを含む。   The system LSI 2 includes basic operation blocks FB1 to FBh coupled in parallel to the internal system bus 7, a host CPU 8 that controls processing operations of these basic operation blocks FB1 to FBh, and input signals from the outside of the signal processing system 1. It includes an input port 9 that converts IN to internal processing data, and an output port 10 that receives output data supplied from the internal system bus 7 and generates an output signal / data OUT transferred to the outside of the system.

ホストCPU8、入力ポート9および出力ポート10は、共通に内部システムバス7に結合される。入力ポート9および出力ポート10は、たとえばIPブロック(インテレクチュアル・プロパティ・ブロック:ライブラリとして準備された機能ブロック)で構成され、データ/信号の入出力に必要な機能を実現する。   Host CPU 8, input port 9 and output port 10 are commonly coupled to internal system bus 7. The input port 9 and the output port 10 are composed of, for example, an IP block (intellectual property block: a functional block prepared as a library), and realize functions necessary for data / signal input / output.

システムLSI2は、さらに、内部システムバス7に互いに並列に結合される割込コントローラ11、CPU周辺12、DMA(ダイレクト・メモリ・アクセス)コントローラ13、外部バスコントローラ14、および専用ロジック15を含む。割込コントローラ11は、基本演算ブロックFB1−FBhからの割込信号を受け、ホストCPU8に対して割込を通知する。   The system LSI 2 further includes an interrupt controller 11, a CPU peripheral 12, a DMA (direct memory access) controller 13, an external bus controller 14, and dedicated logic 15 coupled to the internal system bus 7 in parallel. The interrupt controller 11 receives an interrupt signal from the basic operation blocks FB1 to FBh and notifies the host CPU 8 of the interrupt.

CPU周辺12は、ホストCPU8の各処理に必要な制御動作を実行し、タイマおよびシリアルIO(入出力)などのホストCPU8におけるプログラムおよびデバッグの用途に必要な機能を、また有する。DMAコントローラ13は、基本演算ブロックFB1−FBhからの転送要求を示すDMA要求信号に従って外部メモリに対するデータ転送制御を実行する。外部バスコントローラ14は、ホストCPU8またはDMAコントローラ13からの指示に従って外部システムバス3に接続されるメモリ4−6に対するアクセス制御を実行する。専用ロジック15は、たとえばIPブロックで構成され、既存の機能ブロックを用いて必要な処理機能が実現され、ホストCPU8のデータ処理を補助する。   The CPU peripheral 12 executes control operations necessary for each processing of the host CPU 8, and also has functions necessary for a program and debugging use in the host CPU 8, such as a timer and serial IO (input / output). The DMA controller 13 executes data transfer control with respect to the external memory in accordance with a DMA request signal indicating a transfer request from the basic operation blocks FB1 to FBh. The external bus controller 14 executes access control to the memory 4-6 connected to the external system bus 3 in accordance with an instruction from the host CPU 8 or the DMA controller 13. The dedicated logic 15 is configured by, for example, an IP block, and a necessary processing function is realized using an existing functional block, and assists data processing of the host CPU 8.

基本演算ブロックFB1−FBhは、それぞれ指定された演算処理を実行する。これらの基本演算ブロックFB1−FBhは、同一構成を有するため、図1においては、基本演算ブロックFB1の構成を代表的に示す。   The basic calculation blocks FB1-FBh execute specified calculation processes, respectively. Since these basic arithmetic blocks FB1-FBh have the same configuration, FIG. 1 representatively shows the configuration of the basic arithmetic block FB1.

基本演算ブロックFB1は、実際のデータの演算処理を実行する主演算回路20と、主演算回路20における演算処理を指定するマイクロ命令を格納するマイクロ命令メモリ21と、このマイクロ命令メモリ21からのマイクロ命令に従って主演算回路20の演算処理を制御するコントローラ22とを含む。主演算回路20は、複数のメモリセルが行列状に配列されかつ複数のエントリに分割されるメモリセルマット30と、メモリセルマット30の各エントリに対応して配置され、指定された演算処理を実行する演算器(ALU)31と、演算器31間のデータ転送経路を設定するALU間相互接続用スイッチ回路32とを含む。基本的に、メモリセルマット30の各行が1エントリを構成し、1エントリに多ビットデータの各ビットが格納される。   The basic arithmetic block FB1 includes a main arithmetic circuit 20 that executes arithmetic processing of actual data, a microinstruction memory 21 that stores microinstructions that specify arithmetic processing in the main arithmetic circuit 20, and a microinstruction from the microinstruction memory 21. And a controller 22 that controls arithmetic processing of the main arithmetic circuit 20 in accordance with an instruction. The main arithmetic circuit 20 has a memory cell mat 30 in which a plurality of memory cells are arranged in a matrix and divided into a plurality of entries, and is arranged corresponding to each entry of the memory cell mat 30, and performs a specified arithmetic processing. An arithmetic unit (ALU) 31 to be executed and an ALU interconnection switch circuit 32 for setting a data transfer path between the arithmetic units 31 are included. Basically, each row of the memory cell mat 30 constitutes one entry, and each bit of multi-bit data is stored in one entry.

演算器(以下、適宜、ALUと称す)31は、対応のエントリからのデータをビットシリアル態様で受けて演算処理を実行し、該処理結果をメモリセルマット30の指定されたエントリ(たとえば対応のエントリ)の所定位置に格納する。   An arithmetic unit (hereinafter referred to as ALU as appropriate) 31 receives data from a corresponding entry in a bit serial manner and executes arithmetic processing, and the processing result is assigned to a specified entry (for example, a corresponding one of the corresponding memory cell mats 30). Entry) at a predetermined position.

ALU間相互接続用スイッチ回路32により、ALU31の接続経路が切換えられ、異なるエントリのデータに対する演算を可能とする。   The connection path of the ALU 31 is switched by the inter-ALU interconnection switch circuit 32, and calculation for data of different entries becomes possible.

コントローラ22は、マイクロ命令メモリ21に格納されるマイクロ命令に従ってマイクロプログラム方式に従った動作を実行する。このマイクロプログラム動作に必要なワークデータは、ワークデータメモリ23に格納される。   The controller 22 executes an operation according to the microprogram method in accordance with the microinstruction stored in the microinstruction memory 21. Work data necessary for this microprogram operation is stored in the work data memory 23.

基本演算ブロック1は、さらに、基本演算ブロックFB1の内部と内部システムバス7との間でデータ/信号の転送を実行するシステムバスインターフェイス(I/F)24と、内部システムバス7と主演算回路20のメモリセルマット30との間でのデータ配列の変換を行なう直交変換回路40と、主演算回路20をシステムバスI/F24および直交変換回路40の一方に選択的に結合するマルチプレクサ(MUX)42を含む。   The basic operation block 1 further includes a system bus interface (I / F) 24 for executing data / signal transfer between the inside of the basic operation block FB1 and the internal system bus 7, and the internal system bus 7 and the main operation circuit. An orthogonal transform circuit 40 that converts a data array with 20 memory cell mats 30 and a multiplexer (MUX) that selectively couples the main arithmetic circuit 20 to one of the system bus I / F 24 and the orthogonal transform circuit 40 42.

システムバスI/F24により、ホストCPU8またはDMAコントローラ13が、メモリセルマット30、コントローラ22内の専用のレジスタ、マイクロ命令メモリ21、およびワークデータメモリ23へアクセスすることが可能となる。   The system bus I / F 24 enables the host CPU 8 or the DMA controller 13 to access the memory cell mat 30, the dedicated register in the controller 22, the microinstruction memory 21, and the work data memory 23.

直交変換回路40は、本発明に従って構成され、システムバスI/F24を介してビットパラレルかつワードシリアル態様で転送されるデータと主演算回路20からマルチプレクサ42を介して転送されるワードパラレルかつビットシリアルに転送されるデータ配列の変換を行なってデータ転送の整合性を確立する。すなわち、この直交変換回路40は、システムバスI/F24からビットパラレルかつワードシリアル態様で転送されるデータを、ワードパラレルかつビットシリアルな態様で転送し、メモリセルマット30の各エントリに、異なるデータワードの同一位置のビットを並列に書込む。また、逆に、直交変換回路40は、主演算回路20のメモリセルマット30からワードパラレルかつビットシリアル態様で転送されるデータ列を転置し、ビットパラレルかつワードシリアルな態様でシステムバスI/F24へ転送する。   The orthogonal transform circuit 40 is configured according to the present invention, and is transferred in bit parallel and word serial form via the system bus I / F 24 and word parallel and bit serial transferred from the main arithmetic circuit 20 via the multiplexer 42. The data array to be transferred is converted to establish data transfer consistency. That is, the orthogonal transform circuit 40 transfers data transferred from the system bus I / F 24 in a bit parallel and word serial manner in a word parallel and bit serial manner, and stores different data in each entry of the memory cell mat 30. Write bits in the same position of the word in parallel. Conversely, the orthogonal transform circuit 40 transposes a data string transferred in a word parallel and bit serial manner from the memory cell mat 30 of the main arithmetic circuit 20, and the system bus I / F 24 in a bit parallel and word serial manner. Forward to.

ここで、本明細書においては、「ビットシリアル」は、1つのデータワードを構成するビットが順次転送または処理される態様を示し、「ビットパラレル」は、1つのデータワードを構成するビットが並列に転送または処理される態様を示す。また、エントリ(またはワード)パラレルは、複数のエントリ(またはワード)が並列に転送または処理される態様を示し、「エントリ(またはワード)シリアル」は、複数のエントリ(またはワード)が順次転送または処理される態様を示す。ビットシリアルかつワードパラレルなデータ列とビットパラレルかつワードシリアルなデータ列の間の変換を、「直交変換」とここでは規定する。   Here, in this specification, “bit serial” indicates a mode in which the bits constituting one data word are sequentially transferred or processed, and “bit parallel” indicates that the bits constituting one data word are parallel. Shows the mode of transfer or processing. Entry (or word) parallel indicates a mode in which a plurality of entries (or words) are transferred or processed in parallel, and “entry (or word) serial” indicates that a plurality of entries (or words) are sequentially transferred or The aspect processed is shown. Here, conversion between a bit serial and word parallel data sequence and a bit parallel and word serial data sequence is defined as “orthogonal transformation”.

この発明に従う直交変換回路40は、ビット幅が異なるデータに対しても内部システムバス7およびメモリセルマット30に対する内部メモリデータバスの全ビット幅を利用してデータの転送を行うようにデータ配列の直交変換を行う。また、データビット幅が異なる場合においても、内部システムバス7と内部メモリデータバスとの間のデータ転送シーケンスは同一である。直交変換回路40の構成および動作については、後に詳細に説明する。   The orthogonal transform circuit 40 according to the present invention has a data arrangement so that data of different bit widths can be transferred using the entire bit width of the internal memory data bus with respect to the internal system bus 7 and the memory cell mat 30. Perform orthogonal transformation. Even when the data bit widths are different, the data transfer sequence between the internal system bus 7 and the internal memory data bus is the same. The configuration and operation of the orthogonal transform circuit 40 will be described in detail later.

マルチプレクサ42は、コントローラ22からのワークデータを選択して主演算回路20に転送するように構成されてもよい。また、演算対象データ列を直交変換により転置する必要がない場合には、このマルチプレクサ42は、システムバスI/F24を選択して主演算回路20に接続する。   The multiplexer 42 may be configured to select work data from the controller 22 and transfer it to the main arithmetic circuit 20. When it is not necessary to transpose the operation target data string by orthogonal transformation, the multiplexer 42 selects the system bus I / F 24 and connects it to the main arithmetic circuit 20.

図1に示すシステムLSI2においては、直交変換回路40が、基本演算ブロックFB1−FBhそれぞれに設けられるように示す。これは、基本演算ブロックFB1−FBhそれぞれにおいて個々にその演算処理内容が、マイクロ命令メモリ21に設定されるマイクロ命令プログラムにより設定されるためである。しかしながら、これらの基本演算ブロックFB1−FBhに対し、直交変換回路40が共通に設けられてもよい。   In the system LSI 2 shown in FIG. 1, the orthogonal transform circuit 40 is shown to be provided in each of the basic operation blocks FB1 to FBh. This is because the operation processing contents are individually set by the microinstruction program set in the microinstruction memory 21 in each of the basic operation blocks FB1 to FBh. However, the orthogonal transform circuit 40 may be provided in common for these basic operation blocks FB1 to FBh.

この信号処理システム全体の処理動作ならびに主演算回路20の構成および処理動作については、前述の特許文献1においても開示されているものの、以下において、この発明に従う直交変換回路の動作および作用効果を十分に理解するために、以下に、主演算回路20の構成および動作について簡単に説明する。   Although the processing operation of the entire signal processing system and the configuration and processing operation of the main arithmetic circuit 20 are also disclosed in the above-mentioned Patent Document 1, the operation and effect of the orthogonal transform circuit according to the present invention will be sufficiently described below. In the following, the configuration and operation of the main arithmetic circuit 20 will be briefly described.

図2は、図1に示す主演算回路20のメモリセルマット30および演算器(ALU)31の配置を概略的に示す図である。メモリセルマット30においては、メモリセルMCが行列状に配列され、また、行方向(X方向)に沿ってM個のエントリERYに分割される。エントリERYは、Nビットのビット幅を有する。メモリセルマット30においては、M個のエントリERYに共通にワード線WLが配設され、1つのエントリERYに対してビット線対BLPが配置される。ビット線対BLPのビット線BLおよび/BLが、データ転送線として利用される。   FIG. 2 schematically shows an arrangement of memory cell mat 30 and arithmetic unit (ALU) 31 of main arithmetic circuit 20 shown in FIG. In memory cell mat 30, memory cells MC are arranged in a matrix and are divided into M entries ERY along the row direction (X direction). The entry ERY has a bit width of N bits. In memory cell mat 30, word line WL is arranged in common for M entries ERY, and bit line pair BLP is arranged for one entry ERY. Bit lines BL and / BL of bit line pair BLP are used as data transfer lines.

演算器(ALU)31は、エントリERYそれぞれに対応して設けられ、演算処理ユニット35を構成する。演算器31は、加算、論理積、一致検出(EXOR)、および反転(NOT)などの演算を実行することができる。各エントリERYと対応の演算器31との間でデータのロードおよびストアをビット単位で行なって演算処理を実行する。この演算器31の演算内容は、図1に示すコントローラ22により設定される。   An arithmetic unit (ALU) 31 is provided corresponding to each entry ERY and constitutes an arithmetic processing unit 35. The computing unit 31 can perform operations such as addition, logical product, coincidence detection (EXOR), and inversion (NOT). Data is loaded and stored in bit units between each entry ERY and the corresponding arithmetic unit 31 to execute arithmetic processing. The calculation contents of the calculator 31 are set by the controller 22 shown in FIG.

エントリERYには、それぞれ演算処理対象のデータが格納され、演算器31は、ビットシリアル態様で演算処理を実行する。演算器31で構成される演算処理ユニット35においては、したがって、ビットシリアルかつエントリパラレルな態様でデータの演算処理が実行される。   Each entry ERY stores data to be subjected to arithmetic processing, and the arithmetic unit 31 executes arithmetic processing in a bit serial manner. Accordingly, in the arithmetic processing unit 35 constituted by the arithmetic unit 31, data arithmetic processing is executed in a bit serial and entry parallel manner.

演算処理ユニット35においてビットシリアル態様で演算処理を実行することにより、以下の効果が得られる。演算対象のデータのビット幅が用途に応じて異なる場合においても、単に演算サイクル数がデータワードのビット幅に応じて変更されるだけである。その演算処理内容は変更されず、語構成の異なるデータ処理に対しても容易に対応することができる。   By executing the arithmetic processing in the bit serial manner in the arithmetic processing unit 35, the following effects can be obtained. Even when the bit width of the data to be calculated varies depending on the application, the number of operation cycles is simply changed according to the bit width of the data word. The content of the arithmetic processing is not changed, and it is possible to easily cope with data processing with different word configurations.

また、複数のエントリERYのデータを演算処理ユニット35において並行して処理することができる。したがって、エントリ数Mを大きくすることにより、大量のデータを一括して演算処理することができる。一例として、エントリ数Mは、1024であり、1エントリERYのビット幅Nは、512ビットである。   In addition, data of a plurality of entries ERY can be processed in parallel in the arithmetic processing unit 35. Therefore, by increasing the number of entries M, a large amount of data can be collectively processed. As an example, the number of entries M is 1024, and the bit width N of one entry ERY is 512 bits.

メモリセルMCは、SRAMセルで構成され、高速アクセスを行なってデータの転送を行なうことができる。また、データの定期的なリフレッシュは不要であり、メモリセルマット30のデータに対する演算処理の制御を簡略化することができる。   Memory cell MC is formed of an SRAM cell and can transfer data by performing high-speed access. Further, it is not necessary to periodically refresh the data, and the control of the arithmetic processing for the data in the memory cell mat 30 can be simplified.

主演算回路20において演算を行なう場合には、まず、エントリERYそれぞれに演算対象データが格納される。次いで、すべてのエントリERYについて、格納されたデータのある桁のビットを並列に読出して対応の演算器31へ転送する(ロードする)。すなわち、あるビット位置のワード線WLを選択状態へ駆動することにより、選択ワード線に接続されるメモリセルMCのデータが対応のビット線対BLP上に読出され、この読出されたデータが、各ビット線対を介して対応の演算器31へ転送される。   When the main arithmetic circuit 20 performs an operation, first, operation target data is stored in each entry ERY. Next, for all entries ERY, a certain digit of the stored data is read in parallel and transferred (loaded) to the corresponding arithmetic unit 31. That is, by driving the word line WL at a certain bit position to the selected state, the data of the memory cell MC connected to the selected word line is read onto the corresponding bit line pair BLP, and the read data is The data is transferred to the corresponding calculator 31 via the bit line pair.

なお、メモリセルマット30と演算器31の間には、メモリセルデータの読出を行うセンスアンプおよびメモリセルへのデータの書込を行うライトドライバが設けられるが、図2においては、図面を簡略化するため、示していない。   Note that a sense amplifier that reads memory cell data and a write driver that writes data to the memory cell are provided between the memory cell mat 30 and the arithmetic unit 31. In FIG. 2, the drawing is simplified. It is not shown to make it.

二項演算を行なう場合には、エントリERYそれぞれにおいて、二項演算の組のデータが格納される。各エントリERYにおいて、1つのデータワードのビットが演算器に転送された後、別のデータワードのビットが、対応の演算器に転送される。この後、演算処理ユニット35において演算器31各々が転送されたデータビットについて二項演算を行ない、その演算処理結果が、演算器31から対応のエントリERY内の所定領域に再書込(ストア)される。   When performing a binary operation, data of a set of binary operations is stored in each entry ERY. In each entry ERY, after the bits of one data word are transferred to the calculator, the bits of another data word are transferred to the corresponding calculator. Thereafter, the arithmetic unit 31 performs a binary operation on the data bits transferred by each of the arithmetic units 31, and the arithmetic processing result is rewritten (stored) from the arithmetic unit 31 to a predetermined area in the corresponding entry ERY. Is done.

メモリセルマット30に対しては、ビット線BLおよび/BL方向から、演算対象のデータの書込/読出が行われる。この書込/読出データは、直交変換回路40との間で転送される。直交変換回路40が転送するデータは、メモリセルマット30において共通のワード線に接続されるメモリセルに格納される。メモリセルマット30においては、各エントリERYには、異なる外部データが格納される。このため、直交変換回路40において、外部のメモリ(たとえば大容量メモリ(SDRAM4)との間でのデータ転送時、データ配列を直交変換する必要がある。   For memory cell mat 30, data to be calculated is written / read from the direction of bit lines BL and / BL. This write / read data is transferred to / from the orthogonal transform circuit 40. Data transferred by the orthogonal transformation circuit 40 is stored in memory cells connected to a common word line in the memory cell mat 30. In memory cell mat 30, different external data is stored in each entry ERY. For this reason, in the orthogonal transformation circuit 40, it is necessary to orthogonally transform the data array during data transfer with an external memory (for example, a large capacity memory (SDRAM 4)).

図3は、図1に示す直交変換回路40におけるデータ配列の変換操作を通したデータの流れを概略的に示す図である。図3においては、4ビットデータが外部の大容量メモリ(SDRAM)4から転送され、直交変換回路40から4ビットデータが主演算回路20内のメモリセルマット30へ転送される場合の動作が一例として示される。   FIG. 3 is a diagram schematically showing the flow of data through the data array conversion operation in the orthogonal transform circuit 40 shown in FIG. In FIG. 3, an example of an operation when 4-bit data is transferred from an external large-capacity memory (SDRAM) 4 and 4-bit data is transferred from the orthogonal transformation circuit 40 to the memory cell mat 30 in the main arithmetic circuit 20 is an example. As shown.

SDRAM4において、4ビットデータA(ビットa0−a3)ないしI(ビットi3−i0)が格納される。このSDRAM4から内部システムバス(7)を介して4ビットデータDTE(データI:ビットi3−i0)の各ビットが並列に転送される。このSDRAM4からのデータDTEは、メモリセルマット30の同一エントリERYに格納されるエントリ単位のデータである。直交変換回路40において、この転送された4ビットデータの各ビットがY方向に整列して格納される。直交変換回路40のメモリ内においてX方向に順次SDRAM4からの転送データが格納される。図3においては、直交変換回路40のメモリ内に、4ビットデータE(ビットe3−e0)、F(ビットf3−f0)、G(ビットg3−g0)、およびH(ビットh3−h0)が格納された状態を一例として示す。   In the SDRAM 4, 4-bit data A (bits a0 to a3) to I (bits i3 to i0) are stored. Each bit of 4-bit data DTE (data I: bits i3-i0) is transferred in parallel from the SDRAM 4 via the internal system bus (7). The data DTE from the SDRAM 4 is entry unit data stored in the same entry ERY of the memory cell mat 30. In the orthogonal transform circuit 40, each bit of the transferred 4-bit data is stored aligned in the Y direction. In the memory of the orthogonal transformation circuit 40, transfer data from the SDRAM 4 is sequentially stored in the X direction. In FIG. 3, 4-bit data E (bits e3-e0), F (bits f3-f0), G (bits g3-g0), and H (bits h3-h0) are stored in the memory of the orthogonal transformation circuit 40. The stored state is shown as an example.

直交変換回路40からメモリセルマット30へのデータ転送時においては、内部のメモリにおいてX方向に整列するビットが並列に読出され、Y方向に沿って順次選択ビット位置を更新してデータ転送が実行される。したがって、ビットe1、f1、g1およびh1で構成されるデータDTAが、メモリセルマット30の4エントリに並行して転送されて格納される。このアドレス単位のデータDTAは、メモリセルマット30において1アドレスの指定時に格納されるデータであり、メモリセルマット30のエントリ位置情報(ビット線アドレス)および書込ビット位置情報(ワード線アドレス)が示す位置に格納される。この操作を順次繰返し、全転送データについて実行することにより、メモリセルマット30において複数のエントリ(たとえば4エントリ単位)に複数のデータビットが並列に書込まれ、アドレス指定されたエントリ(ERY)においては、それぞれ、エントリ単位のデータDTE、たとえばデータA(ビットa0−a3)が格納される。   When data is transferred from the orthogonal transform circuit 40 to the memory cell mat 30, the bits aligned in the X direction are read in parallel in the internal memory, and the selected bit position is sequentially updated along the Y direction to execute the data transfer. Is done. Therefore, data DTA composed of bits e 1, f 1, g 1 and h 1 is transferred and stored in parallel in 4 entries of memory cell mat 30. This address unit data DTA is data stored when one address is designated in the memory cell mat 30, and the entry position information (bit line address) and write bit position information (word line address) of the memory cell mat 30 are stored. Stored at the indicated position. By sequentially repeating this operation and executing all the transfer data, a plurality of data bits are written in parallel to a plurality of entries (for example, in units of four entries) in memory cell mat 30, and in the addressed entry (ERY) Each stores data DTE in units of entry, for example, data A (bits a0 to a3).

メモリセルマット30から内部システムバス(7)を介して外部へ転送する場合には、この逆の方向にデータが流れる。すなわち、アドレス単位のデータDTAが直交変換回路40内のメモリに順次Y方向に沿って格納される。次いで、この直交変換回路40のメモリからX方向に整列するエントリ単位のデータDTEが読出され、システムバスI/F(24)を介して転送される。ここで、エントリ単位のデータDTEは、1つのエントリに格納されるデータである。すなわち、メモリセルマット30からシステムバスを介してSDRAM4へデータを転送する場合には、この図3に示すデータの流れが反対となるだけであり、同様の変換操作が直交変換回路40において実行される。   When data is transferred from the memory cell mat 30 to the outside via the internal system bus (7), data flows in the opposite direction. That is, the address unit data DTA is sequentially stored in the memory in the orthogonal transform circuit 40 along the Y direction. Next, entry unit data DTE aligned in the X direction is read from the memory of the orthogonal transform circuit 40 and transferred via the system bus I / F (24). Here, the entry-unit data DTE is data stored in one entry. That is, when data is transferred from the memory cell mat 30 to the SDRAM 4 via the system bus, only the data flow shown in FIG. 3 is reversed, and a similar conversion operation is executed in the orthogonal transform circuit 40. The

上述のように、基本的に、SDRAM4と直交変換回路40との間では、ビットパラレルかつワードシリアルにデータが転送され、直交変換回路40とメモリセルマット30との間では、ビットシリアルかつワードパラレルにデータが転送される。   As described above, basically, data is transferred between the SDRAM 4 and the orthogonal transformation circuit 40 in bit parallel and word serial, and between the orthogonal transformation circuit 40 and the memory cell mat 30 is bit serial and word parallel. Data is transferred to

SDRAM4が転送するデータは、4ビットの限定されない。用途に応じて、8ビットデータ、16ビットデータ、32ビットデータおよび64ビットデータ等種々のビット幅のデータを転送することが要求される。このような複数種類のビット幅のデータを処理する場合においても、データの転送効率を低下させること無く、データを転送することが要求され、また、直交変換回路のサイズの増大も抑制することが要求される。本発明は、以下に詳細に説明するように、このような要求を満たす直交変換回路を提供する。   Data transferred by the SDRAM 4 is not limited to 4 bits. Depending on the application, it is required to transfer data of various bit widths such as 8-bit data, 16-bit data, 32-bit data, and 64-bit data. Even when processing data of such multiple types of bit widths, it is required to transfer data without reducing the data transfer efficiency, and it is possible to suppress an increase in the size of the orthogonal transform circuit. Required. As will be described in detail below, the present invention provides an orthogonal transform circuit that satisfies such requirements.

図4は、この発明の実施の形態1に従う直交変換回路40の構成を概略的に示す図である。図4において、直交変換回路40は、4つの2ポート直交変換メモリTM0−TM3を含む。これらの2ポート直交変換メモリTM0−TM3は、それぞれ第1および第2のポート各々が、32ビット×32ワードの構成を有する。2ポート直交変換メモリTM0−TM3の第1のポートが、32ビットデータバス(第1のデータバス)50に共通に結合され、またこれらの2ポート直交変換メモリTM0−TM3の第2のポートが、共通に64ビットデータバス(第2のデータバス)55に結合される。   FIG. 4 schematically shows a configuration of orthogonal transform circuit 40 according to the first embodiment of the present invention. In FIG. 4, the orthogonal transformation circuit 40 includes four 2-port orthogonal transformation memories TM0 to TM3. In these 2-port orthogonal transformation memories TM0 to TM3, the first and second ports each have a configuration of 32 bits × 32 words. The first ports of the two-port orthogonal transformation memories TM0 to TM3 are commonly coupled to a 32-bit data bus (first data bus) 50, and the second ports of these two-port orthogonal transformation memories TM0 to TM3 are Are commonly coupled to a 64-bit data bus (second data bus) 55.

直交変換回路40は、さらに、32ビットデータバス50とシステムバスI/F24との間で64ビット幅のデータの転送を行なうとともにその転送制御を行なうシステムバス側制御部60と、64ビットデータバス55と主演算回路I/F66の間でデータの転送を行なうとともにデータの転送を制御する主演算回路側制御部65を含む。主演算回路I/F66は、64ビットの内部メモリデータバスを介して主演算回路20に結合される。   The orthogonal transform circuit 40 further transfers a 64-bit width data between the 32-bit data bus 50 and the system bus I / F 24 and controls the transfer, and a 64-bit data bus. 55 includes a main arithmetic circuit side control unit 65 for transferring data between the main arithmetic circuit I / F 66 and controlling the data transfer. Main operation circuit I / F 66 is coupled to main operation circuit 20 via a 64-bit internal memory data bus.

この主演算回路側制御部65は、データ転送時にデータビットの配列を調整するための64ビットバッファ68を含む。この64ビットバッファ68は、64ビットのデータを格納して転送することができればよく、64ビットのレジスタで構成されてもよく、64ビットのメモリで構成されてもよい。主演算回路との間で双方向でデータを転送するために、この64ビットバッファ68は、双方向にデータを転送することができればよい。   The main arithmetic circuit side control unit 65 includes a 64-bit buffer 68 for adjusting the arrangement of data bits during data transfer. The 64-bit buffer 68 only needs to be able to store and transfer 64-bit data, and may be composed of a 64-bit register or a 64-bit memory. In order to transfer data bidirectionally with the main arithmetic circuit, the 64-bit buffer 68 only needs to be able to transfer data bidirectionally.

図4においては、図1に示す構成と同様、直交変換回路40が各基本演算ブロックFBi(i=1からh)に設けられる構成を示す。直交変換回路40が基本演算ブロックFB1−FBhに共通に設けられる場合には、主演算回路I/Fに代えて基本演算ブロックI/Fが設けられる。   4 shows a configuration in which an orthogonal transformation circuit 40 is provided in each basic operation block FBi (i = 1 to h), similarly to the configuration shown in FIG. When the orthogonal transform circuit 40 is provided in common to the basic operation blocks FB1 to FBh, a basic operation block I / F is provided instead of the main operation circuit I / F.

システムバス側制御部60とシステムバスI/F24の間では、64ビットのデータが転送される。システムバス側制御部60は、この64ビット幅のデータを32ビット幅のデータに変換して内部データバス50に転送し、また、内部データバス50からの32ビット幅のデータを64ビット幅のデータに変換してシステムバスI/F24へ転送する。   64-bit data is transferred between the system bus control unit 60 and the system bus I / F 24. The system bus side control unit 60 converts the 64-bit width data into 32-bit width data and transfers the data to the internal data bus 50. Also, the 32-bit width data from the internal data bus 50 is converted to 64-bit width data. Data is converted and transferred to the system bus I / F 24.

主演算回路側制御部65と主演算回路I/F66との間では64ビット幅のデータが転送される。主演算回路I/F66は、図4においては64ビット幅の内部メモリデータバスを介して主演算回路との間でデータを転送するように示す。しかしながら、この内部メモリデータバスは64ビット幅でなくてもよい。この場合には、主演算回路I/F66がバス幅変換機能により、バス幅調整を行う。   64-bit width data is transferred between the main arithmetic circuit side controller 65 and the main arithmetic circuit I / F 66. In FIG. 4, the main arithmetic circuit I / F 66 is shown to transfer data to and from the main arithmetic circuit via a 64-bit internal memory data bus. However, this internal memory data bus need not be 64 bits wide. In this case, the main arithmetic circuit I / F 66 adjusts the bus width by the bus width conversion function.

一例として、4面の2ポート直交変換メモリTM0−TM3を、2つのグループに分け、32ビット単位でデータのアクセスを実行する。システムバス側制御部60において、この64ビット/32ビットのデータ配列の変換およびアドレス生成を実行する。システムバスを介して転送されるデータのビット幅にかかわらず、この直交変換回路40において、2ポート直交変換メモリTM0−TM3のバス接続を切換え、バス構成を変更することなく、全データバス幅を利用しかつ全メモリ領域を利用してデータのアクセスを実行することができる。以下の説明においては、外部データ(SDRAMが転送するデータ)の最小ビット幅が8ビットであり、最大ビット幅が64ビットの場合について説明する。   As an example, four-port 2-port orthogonal transformation memories TM0 to TM3 are divided into two groups, and data access is executed in units of 32 bits. The system bus side control unit 60 executes conversion of the 64-bit / 32-bit data array and address generation. Regardless of the bit width of the data transferred via the system bus, in this orthogonal transformation circuit 40, the bus connection of the 2-port orthogonal transformation memories TM0 to TM3 is switched, and the entire data bus width can be increased without changing the bus configuration. Data access can be executed using the entire memory area. In the following description, a case where the minimum bit width of external data (data transferred by the SDRAM) is 8 bits and the maximum bit width is 64 bits will be described.

図5は、図4に示す2ポート直交変換メモリTM0−TM3の構成を概略的に示す図である。これらの2ポート直交変換メモリTM0−TM3は、同一構成を有するため、図5においては、2ポート直交変換メモリTMを、これらの2ポート直交変換メモリTM0−TM3の代表として示す。   FIG. 5 schematically shows a structure of 2-port orthogonal transformation memories TM0 to TM3 shown in FIG. Since these two-port orthogonal transformation memories TM0 to TM3 have the same configuration, FIG. 5 shows the two-port orthogonal transformation memories TM as representatives of these two-port orthogonal transformation memories TM0 to TM3.

図5において、2ポート直交変換メモリTMは、メモリセルMCが行列状に配列されるメモリセルアレイ70を含む。メモリセルアレイ70において、X方向に整列するメモリセルMCに対応して、ワード線AWLおよびビット線対EBLPが配列され、Y方向に整列するメモリセルに対応してワード線EWLおよびビット線対ABLPが配設される。このワード線AWLに、主演算回路内のメモリセルマットのアドレス単位のデータDTAを記憶するメモリセルが接続され、ワード線EWLに、主演算回路のメモリセルマットのエントリ単位のデータDTEを記憶するメモリセルが接続される。ワード線EWLの選択時、ビット線対EBLPに対応のメモリセルの記憶データが読出される。同様、ワード線AWLの選択時、ビット線対ABLPに対応のメモリセルの記憶データが読出される。   In FIG. 5, the 2-port orthogonal transformation memory TM includes a memory cell array 70 in which memory cells MC are arranged in a matrix. In memory cell array 70, word lines AWL and bit line pairs EBLP are arranged corresponding to memory cells MC aligned in the X direction, and word lines EWL and bit line pairs ABLP are arranged corresponding to memory cells aligned in the Y direction. Arranged. A memory cell storing address unit data DTA of the memory cell mat in the main arithmetic circuit is connected to the word line AWL, and data DTE of the entry unit of the memory cell mat of the main arithmetic circuit is stored in the word line EWL. A memory cell is connected. When word line EWL is selected, data stored in the memory cell corresponding to bit line pair EBLP is read. Similarly, when word line AWL is selected, the data stored in the memory cell corresponding to bit line pair ABLP is read.

2ポート直交変換メモリTMは、さらに、システムバス側書込/読出回路72と、システムバス側セル選択回路74と、主演算回路側書込/読出回路76と、主演算回路側セル選択回路78を含む。システムバス側書込/読出回路72は、X方向に順次アクセスして、Y方向に整列するメモリセルに対するデータアクセスを実行する。システムバス側セル選択回路74は、システムバス側制御部(60)から与えられる選択信号SSEL、データ入出力指示信号SDIOEおよびアドレス信号SADDに従ってメモリセルアレイ70からメモリセルを選択する。   The 2-port orthogonal transformation memory TM further includes a system bus side write / read circuit 72, a system bus side cell selection circuit 74, a main arithmetic circuit side write / read circuit 76, and a main arithmetic circuit side cell selection circuit 78. including. The system bus side write / read circuit 72 sequentially accesses in the X direction and executes data access to the memory cells aligned in the Y direction. The system bus side cell selection circuit 74 selects a memory cell from the memory cell array 70 in accordance with a selection signal SSEL, a data input / output instruction signal SDIOE, and an address signal SADD given from the system bus side control unit (60).

システムバス側書込/読出回路72に対しては、システムバス側制御部(60)からデータ読出を活性化するリードイネーブル信号SRE、データ書込を活性化するライトイネーブル信号SWEおよびビットライトマスク制御信号SDMが与えられる。ビットライトマスク制御信号SDMにより、システムバス側書込/読出回路72は、16ビット単位でデータのアクセスにマスクがかけられる。   For system bus side write / read circuit 72, read enable signal SRE for activating data reading from system bus side control unit (60), write enable signal SWE for activating data writing, and bit write mask control A signal SDM is provided. With the bit write mask control signal SDM, the system bus side write / read circuit 72 masks data access in units of 16 bits.

主演算回路側書込/読出回路76は、主演算回路側制御部(65)から与えられるリードイネーブル信号MREおよびライトイネーブル信号MWEに従って、メモリセルアレイ70のX方向に整列するメモリセルに対し、並行してアクセスする。主演算回路側セル選択回路78は、主演算回路側制御部(65)から与えられる選択信号MSEL、データ入出力制御信号MDIO、アドレス信号MADDおよびデータマスク信号MDMに従ってメモリセルアレイ70のメモリセルを選択する。データマスク信号MDMは、ビットライトマスク制御信号SDMと同様、データの書込/読出に対してたとえば16ビット単位でマスクをかける。   The main arithmetic circuit side write / read circuit 76 performs parallel processing on the memory cells aligned in the X direction of the memory cell array 70 in accordance with the read enable signal MRE and the write enable signal MWE supplied from the main arithmetic circuit side control unit (65). And access. Main operation circuit side cell selection circuit 78 selects a memory cell of memory cell array 70 in accordance with selection signal MSEL, data input / output control signal MDIO, address signal MADD and data mask signal MDM supplied from main operation circuit side control unit (65). To do. Data mask signal MDM masks data writing / reading, for example, in units of 16 bits, similarly to bit write mask control signal SDM.

システムバス側制御部60は、システム側からの転送されるアドレス信号および制御信号に従って、アドレス信号および各制御信号を生成し、主演算回路側制御部65は、主演算回路内のコントローラからの転送指示、アドレス信号および制御信号に従ってアドレス信号および各制御信号を生成する。これらのアドレス信号および制御信号の生成態様については後に詳細に説明する。   The system bus side control unit 60 generates an address signal and each control signal in accordance with the address signal and control signal transferred from the system side, and the main arithmetic circuit side control unit 65 transfers from the controller in the main arithmetic circuit. The address signal and each control signal are generated according to the instruction, the address signal, and the control signal. The generation manner of these address signals and control signals will be described later in detail.

システム側セル選択回路74、システムバス側書込/読出回路72、ワード線EWLおよびビット線対EBLPにより第1のポートが構成され、主演算回路側セル選択回路78、主演算回路側書込/読出回路76、ワード線AWLおよびビット線対ABLPにより第2のポートが構成される。   System side cell selection circuit 74, system bus side write / read circuit 72, word line EWL and bit line pair EBLP constitute a first port, and main operation circuit side cell selection circuit 78, main operation circuit side write / read Read circuit 76, word line AWL and bit line pair ABLP constitute a second port.

この2ポート直交変換メモリTMにおいて、システムバス側書込/読出回路72により、データHDQとして、Y方向に整列するエントリ単位のデータDTEが転送され、主演算回路側書込/読出回路76により、データVDQとして、X方向に整列するアドレス単位のデータDTAが転送される。この直交変換回路の構成は、実質的に2ポートSRAMと同様である。   In this 2-port orthogonal transformation memory TM, the system bus side write / read circuit 72 transfers the data DTE in entry units aligned in the Y direction as data HDQ, and the main arithmetic circuit side write / read circuit 76 As data VDQ, data in units of addresses DTA aligned in the X direction is transferred. The configuration of this orthogonal transform circuit is substantially the same as that of the 2-port SRAM.

図6は、図5に示すメモリセルMCの構成の一例を示す図である。図6において、メモリセルMCは、交差結合されるPチャネルMOSトランジスタ(絶縁ゲート型電界効果トランジスタ)PQ1およびPQ2と、交差結合されるNチャネルMOSトランジスタNQ1およびNQ2を含む。MOSトランジスタPQ1およびPQ2は、記憶ノードSN1およびSN2のハイ側のノードを電源電圧レベルにプルアップし保持する。MOSトランジスタNQ1およびNQ2は、記憶ノードSN1およびSN2のロー側のノードを接地電圧レベルに駆動しかつ保持する。これらのMOSトランジスタPQ1およびPQ2、NQ1およびNQ2は、インバータラッチを構成する。したがって、記憶ノードSN1およびSN2には、互いに相補なデータが保持される。   FIG. 6 is a diagram showing an example of the configuration of the memory cell MC shown in FIG. 6, memory cell MC includes cross-coupled P-channel MOS transistors (insulated gate field effect transistors) PQ1 and PQ2, and cross-coupled N-channel MOS transistors NQ1 and NQ2. MOS transistors PQ1 and PQ2 pull up and hold the high-side node of storage nodes SN1 and SN2 to the power supply voltage level. MOS transistors NQ1 and NQ2 drive and hold the low-side nodes of storage nodes SN1 and SN2 to the ground voltage level. These MOS transistors PQ1 and PQ2, NQ1 and NQ2 constitute an inverter latch. Therefore, storage nodes SN1 and SN2 hold complementary data.

メモリセルMCは、さらに、エントリ単位のデータアクセス用のポート(第1のポート)を構成するNチャネルMOSトランジスタNQB1およびNQB2と、アドレス単位のデータをアクセスするポート(第2のポート)を構成するNチャネルMOSトランジスタNQA1およびNQA2を含む。MOSトランジスタNQA1およびNQA2は、それぞれ、ワード線AWL上の信号電位に従って、選択的に記憶ノードSN1およびSN2を、それぞれ、ビット線ABLおよび/ABLに電気的に結合する。MOSトランジスタNQB1およびNQB2は、ワード線EWL上の信号電位に従って選択的に記憶ノードSN1およびSN2を、それぞれ、ビット線EBLおよび/EBLに電気的に結合する。ビット線ABLおよび/ABLが、ビット線対ABLPを構成し、ビット線EBLおよび/EBLが、ビット線対EBLPを構成する。   Memory cell MC further configures N channel MOS transistors NQB1 and NQB2 constituting a data access port (first port) in entry units and a port (second port) for accessing data in address units. N channel MOS transistors NQA1 and NQA2 are included. MOS transistors NQA1 and NQA2 selectively electrically couple storage nodes SN1 and SN2 to bit lines ABL and / ABL, respectively, according to the signal potential on word line AWL. MOS transistors NQB1 and NQB2 selectively electrically couple storage nodes SN1 and SN2 to bit lines EBL and / EBL, respectively, according to the signal potential on word line EWL. Bit lines ABL and / ABL constitute a bit line pair ABLP, and bit lines EBL and / EBL constitute a bit line pair EBLP.

この図6に示すように、メモリセルMCは、別々のポートから記憶ノードSNおよび/SNへアクセスすることのできる2ポートメモリセルであり、ビット線対ABLPおよびEBLPが直交している。したがって、このワード線EWL方向に整列するメモリセルが記憶するデータ配列と、ワード線AWL方向に整列して配置されるメモリセルが記憶するデータ配列とは、直交変換の関係にある。   As shown in FIG. 6, memory cell MC is a two-port memory cell that can access storage nodes SN and / SN from different ports, and bit line pairs ABLP and EBLP are orthogonal to each other. Therefore, the data array stored in the memory cells aligned in the word line EWL direction and the data array stored in the memory cells aligned in the word line AWL direction are in an orthogonal transformation relationship.

図7は、図4に示す2ポート直交変換メモリTM0−TM3とシステムバスとの間でのデータ転送時のアドレス配列を概略的に示す図である。図7において、この2ポート直交変換メモリTM0−TM3は、X方向に沿ってアドレス0−31が割当てられる。   FIG. 7 schematically shows an address arrangement at the time of data transfer between 2-port orthogonal transformation memories TM0 to TM3 shown in FIG. 4 and the system bus. In FIG. 7, the 2-port orthogonal transformation memories TM0 to TM3 are assigned addresses 0 to 31 along the X direction.

Y方向に沿っては、8ビット単位で4つのメモリブロックBKa−BKdに分割される。2つのメモリブロック、すなわち16ビットデータに対し、書込をマスクするマスク信号が与えられる。すなわち、2ポート直交変換メモリTMi(i=0−3)において、マスク指示DMi0およびDMi1が与えられる。マスク指示DMi0が有効状態であり書込マスクを示すときには、対応のブロックBKaおよびBKbに対するデータ書込が停止される。マスク指示DMi1が有効状態のときには、メモリブロックブロックBKcおよびBKdに対するデータ書込が停止される。   Along the Y direction, the memory block is divided into four memory blocks BKa-BKd in units of 8 bits. A mask signal for masking writing is applied to two memory blocks, that is, 16-bit data. That is, mask instructions DMi0 and DMi1 are given in the 2-port orthogonal transformation memory TMi (i = 0-3). When mask instruction DMi0 is in a valid state and indicates a write mask, data writing to corresponding blocks BKa and BKb is stopped. When mask instruction DMi1 is valid, data writing to memory block blocks BKc and BKd is stopped.

マスク指示信号DMi0およびDMi1両者を有効状態に設定した場合には、対応の2ポート直交変換メモリTMiに対するデータ書込は停止されるが、この場合には、むしろ、対応の直交変換メモリに対するライトイネーブル信号WEが非活性状態に設定される。これらのマスク信号DMij(i=0−3、j=0,1)は、データの直交変換メモリへの書込時のビットライト制御信号SDMに従って生成される。   When both mask instruction signals DMi0 and DMi1 are set to the valid state, data writing to the corresponding 2-port orthogonal transformation memory TMi is stopped. In this case, however, the write enable to the corresponding orthogonal transformation memory is rather performed. Signal WE is set to an inactive state. These mask signals DMij (i = 0-3, j = 0, 1) are generated according to the bit write control signal SDM at the time of writing data to the orthogonal transformation memory.

システムバス側制御部60は、これらの2ポート直交変換メモリTM0−TM3に対して個々に制御信号を生成する。   The system bus side controller 60 individually generates control signals for these 2-port orthogonal transformation memories TM0 to TM3.

なお、データ書込/読出に対してマスクをかける構成は、データの書込回路(ライトでドライバ)または読出回路(プリアンプ)をディスエーブル状態または出力ハイインピーダンス状態に設定する構成が利用されればよく、一般に知られたマスク回路を利用することができる。   The configuration for masking data writing / reading is such that a configuration for setting the data write circuit (driver with write) or the read circuit (preamplifier) to the disabled state or the output high impedance state is used. Well-known mask circuits can be used.

図8は、SDRAM4から直交変換回路40へのデータ転送時のデータ転送シーケンスを模式的に示す図である。今、SDRAM4において、8ビットデータが格納されており、64ビットの内部システムバス7を介して8個のデータ単位でデータが転送される場合を考える。この場合、図8において2ポート直交変換メモリTM0−TM3において数字で示す番号順に従ってデータが格納される。2ポート直交変換メモリTM0−TM3は、各々32ワード×32ビットの構成を有し、32ビット幅のデータの書込/読出が可能である。内部のデータバス50は32ビットデータバスである。システムバス側制御部60において、データバス幅変換を行なう。   FIG. 8 is a diagram schematically showing a data transfer sequence at the time of data transfer from the SDRAM 4 to the orthogonal transform circuit 40. Now, consider the case where 8-bit data is stored in the SDRAM 4 and the data is transferred in units of 8 data via the 64-bit internal system bus 7. In this case, data is stored in the two-port orthogonal transformation memories TM0 to TM3 in FIG. Each of the two-port orthogonal transformation memories TM0 to TM3 has a configuration of 32 words × 32 bits, and can write / read data having a 32-bit width. The internal data bus 50 is a 32-bit data bus. The system bus side control unit 60 performs data bus width conversion.

データを直交変換メモリTM0−TM3に書込む場合に、2ポート直交変換メモリTM0およびTM1に対し、並行して16ビットデータが書込まれ、次いで、2ポート直交変換メモリTM2およびTM3に対して16ビットデータの書込が実行される。したがって、この直交変換メモリTM0およびTM1と直交変換メモリTM2およびTM3とに対し、交互に32ビットデータが書込まれる。直交変換メモリTM0−TM3各々において、全アドレス(0−31)にわたって前半の16ビットデータ領域に対してデータの書込が行われ、ついで、全アドレスにわたって後半の16ビットデータ領域にデータの書込が行われる。   When data is written to the orthogonal transformation memories TM0 to TM3, 16-bit data is written in parallel to the two-port orthogonal transformation memories TM0 and TM1, and then to the two-port orthogonal transformation memories TM2 and TM3. Bit data is written. Therefore, 32-bit data is alternately written into orthogonal transformation memories TM0 and TM1 and orthogonal transformation memories TM2 and TM3. In each of the orthogonal transformation memories TM0 to TM3, data is written into the first 16-bit data area over all addresses (0-31), and then data is written into the latter 16-bit data area over all addresses. Is done.

2ポート直交変換メモリTM0−TM3に対しては、共通に書込制御信号およびアドレス信号が与えられる。直交メモリTM0−TM3の選択が、ライトイネーブル信号WE(SWE)により行われる。選択直交変換メモリにおいて、メモリブロックの選択/非選択が、上述のマスク指示信号DM(ビットライト制御信号SDM)により設定され、直交変換メモリTM0−TM3に各々に対して16ビットのデータの書込が実行される。   A write control signal and an address signal are commonly applied to the 2-port orthogonal transformation memories TM0 to TM3. Selection of the orthogonal memories TM0 to TM3 is performed by a write enable signal WE (SWE). In the selected orthogonal transformation memory, the selection / non-selection of the memory block is set by the above-described mask instruction signal DM (bit write control signal SDM), and writing of 16-bit data to each of the orthogonal transformation memories TM0 to TM3. Is executed.

これらの2ポート直交変換メモリTM0−TM3において、同じアドレスの同じビット位置に、SDRAM4から1回に転送される64ビットデータが分散して格納される。   In these 2-port orthogonal transformation memories TM0 to TM3, 64-bit data transferred from the SDRAM 4 at a time is distributed and stored in the same bit position of the same address.

図9は、図8に示す2ポート直交変換メモリに対する8ビットデータの書込シーケンスを示すタイミング図である。以下、図9を参照して、この図8に示す2ポート直交変換メモリTM0−TM3に対するデータの書込シーケンスについて説明する。   FIG. 9 is a timing chart showing a write sequence of 8-bit data to the 2-port orthogonal transformation memory shown in FIG. The data write sequence for the 2-port orthogonal transform memories TM0 to TM3 shown in FIG. 8 will be described below with reference to FIG.

SDRAM4は、システムクロック信号SCLKに同期して内部システムバス7を介して64ビットデータを転送する。直交変換回路内においては転送クロック信号TCLKに従ってデータの書込が実行される。   The SDRAM 4 transfers 64-bit data via the internal system bus 7 in synchronization with the system clock signal SCLK. In the orthogonal transform circuit, data is written according to the transfer clock signal TCLK.

SDRAM4から一度にシステムバス7を介して転送されるデータは、8個の8ビットデータを含んでおり、第1回目のデータ転送時、データ0−7が転送され、アドレス0が指定される。このとき、直交変換回路においては、2ポート直交変換メモリTM0およびTM1がライトイネーブル信号によりイネーブルされ、直交変換メモリTM0にデータ0および1が格納され、直交変換メモリTM1に、データ2および3が格納される。このとき、直交変換メモリTM2およびTM3は、ライトイネーブル信号WE(WE2、WE3)に従ってディスエーブル状態であり、データの書込は禁止される。   Data transferred from the SDRAM 4 via the system bus 7 at a time includes eight 8-bit data. At the first data transfer, data 0-7 is transferred and address 0 is designated. At this time, in the orthogonal transform circuit, the 2-port orthogonal transform memories TM0 and TM1 are enabled by the write enable signal, data 0 and 1 are stored in the orthogonal transform memory TM0, and data 2 and 3 are stored in the orthogonal transform memory TM1. Is done. At this time, the orthogonal transformation memories TM2 and TM3 are disabled according to the write enable signal WE (WE2, WE3), and data writing is prohibited.

次いで、直交変換回路内の転送クロック信号TCLKの次のサイクルにおいては、直交変換メモリTM0およびTM1がディスエーブルされ、直交変換メモリTM2およびTM3がイネーブルされる。このとき、アドレスは、0である。したがって、直交変換メモリTM2およびTM3のアドレス0の位置に、データ4および5ならびにデータ6および7がそれぞれ格納される。   Next, in the next cycle of the transfer clock signal TCLK in the orthogonal transform circuit, the orthogonal transform memories TM0 and TM1 are disabled, and the orthogonal transform memories TM2 and TM3 are enabled. At this time, the address is 0. Therefore, data 4 and 5 and data 6 and 7 are stored at the position of address 0 of orthogonal transformation memories TM2 and TM3, respectively.

次いで、次のサイクルにおいて、システムクロック信号SCLKに同期してデータ8−15がシステムバス7を介してSDRAM4から転送される。このときのアドレスは1である。この場合も、先のサイクルと同様、転送クロック信号TCLKに同期してライトイネーブル信号に従って、直交変換メモリTM0およびTM1がイネーブルされ、データ8および9が直交変換メモリTM0に格納され、データ10および11が、直交変換メモリTM1に格納される。このとき、直交変換メモリTM2およびTM3は、それぞれのライトイネーブル信号に従ってディスエーブル状態である。   Next, in the next cycle, data 8-15 is transferred from SDRAM 4 via system bus 7 in synchronization with system clock signal SCLK. The address at this time is 1. Also in this case, as in the previous cycle, the orthogonal transform memories TM0 and TM1 are enabled in accordance with the write enable signal in synchronization with the transfer clock signal TCLK, the data 8 and 9 are stored in the orthogonal transform memory TM0, and the data 10 and 11 are stored. Is stored in the orthogonal transformation memory TM1. At this time, the orthogonal transformation memories TM2 and TM3 are in a disabled state according to the respective write enable signals.

次いで、転送クロック信号TCLKが立上がると、直交変換メモリTM0およびTM1がディスエーブルされて、書込禁止状態に設定される。一方、直交変換メモリTM2およびTM3が書込を許可され、データ12および13が、直交変換メモリTM2に格納され、データ14および15が、直交変換メモリTM3のアドレス1に格納される。   Next, when the transfer clock signal TCLK rises, the orthogonal transformation memories TM0 and TM1 are disabled and set in a write-inhibited state. On the other hand, writing is permitted to orthogonal transformation memories TM2 and TM3, data 12 and 13 are stored in orthogonal transformation memory TM2, and data 14 and 15 are stored in address 1 of orthogonal transformation memory TM3.

次のサイクルが始まると、システムクロック信号SCLKに従って次の8個のデータとともにアドレス2が与えられる。転送クロック信号TCLKに従って、直交変換メモリTM0にデータ16および17が格納され、直交変換メモリTM1にデータ18および19が格納される。次いで、次の転送クロック信号TCLKの立上がりに従って、直交変換メモリTM0およびTM1が書込禁止状態に設定され、一方、直交変換メモリTM2およびTM3が書込許可状態に設定される。これらの直交変換メモリTM2およびTM3のアドレスの位置に、データ20、21ならびにデータ22および23がそれぞれ格納される。   When the next cycle starts, address 2 is given together with the next eight data in accordance with system clock signal SCLK. According to transfer clock signal TCLK, data 16 and 17 are stored in orthogonal transform memory TM0, and data 18 and 19 are stored in orthogonal transform memory TM1. Next, according to the rise of the next transfer clock signal TCLK, the orthogonal transformation memories TM0 and TM1 are set to the write-inhibited state, while the orthogonal transformation memories TM2 and TM3 are set to the write-permitted state. Data 20, 21 and data 22 and 23 are stored at the addresses of the orthogonal transformation memories TM2 and TM3, respectively.

この図9に示すタイミング図において、システムバス7を介して64ビットデータが転送され、システムバス側制御部60においてデータのビット幅を変更して、システムバス7を介して転送される64ビットデータの転送サイクルの2倍の周期で、転送クロック信号TCLKに従ってデータの交互書込を実行している。   In the timing chart shown in FIG. 9, 64-bit data is transferred via the system bus 7, and the bit width of the data is changed by the system bus side control unit 60 and transferred via the system bus 7. Data is alternately written in accordance with the transfer clock signal TCLK at a period twice as long as the transfer cycle.

仮にSDRAM4が×8構成であり、SDRAM4おいてバス幅変換回路が設けられており、バーストモードで転送される8ビットデータが64ビットデータに変換されて内部システムバス7を介して転送される場合、データ転送サイクルは、SDRAM4の8ビットデータ読出サイクルの4倍のサイクル長を有する。したがって、この場合には、SDRAM4の動作サイクル(システムクロック信号SCLKにより規定されるサイクル)の8サイクルに1回データが転送されるだけであり、十分余裕を持って直交変換回路内においてデータ転送サイクルの1/2倍のサイクルで直交変換メモリに対してデータ転送を行なうことができる。   Temporarily, the SDRAM 4 has a × 8 configuration, and a bus width conversion circuit is provided in the SDRAM 4, and 8-bit data transferred in the burst mode is converted into 64-bit data and transferred via the internal system bus 7. The data transfer cycle has a cycle length four times that of the SDRAM 4 8-bit data read cycle. Therefore, in this case, data is only transferred once in 8 cycles of the operation cycle of SDRAM 4 (cycle defined by the system clock signal SCLK), and the data transfer cycle in the orthogonal transform circuit has a sufficient margin. The data can be transferred to the orthogonal transformation memory in a half cycle.

また、SDRAM4が、データ転送時には、64ビットデータを入出力する構成とされる場合には、この直交変換回路40内における転送クロック信号TCLKは、システムクロック信号(SDRAM4の転送サイクルを規定するクロック信号)SCLKの1/2倍のサイクルを有する。この場合、SDRAM4は、シングル・データ・レートモード(SDRモード)でデータを転送する。直交変換メモリTM0−TM3は、SRAMで構成されており、SDRAM4よりも高速のメモリである。従って、SDRAMのデータ転送の2倍の速度で十分にデータの書込を行なうことができ、システムバス7と内部データバス50との間の転送クロックサイクルの差は、十分に吸収することができる。   When the SDRAM 4 is configured to input / output 64-bit data at the time of data transfer, the transfer clock signal TCLK in the orthogonal transform circuit 40 is a system clock signal (a clock signal that defines the transfer cycle of the SDRAM 4). ) It has a cycle that is 1/2 of SCLK. In this case, the SDRAM 4 transfers data in a single data rate mode (SDR mode). The orthogonal transform memories TM0 to TM3 are composed of SRAM, and are higher-speed memories than the SDRAM 4. Therefore, data can be sufficiently written at twice the speed of SDRAM data transfer, and the difference in transfer clock cycle between system bus 7 and internal data bus 50 can be sufficiently absorbed. .

SDRAM4がシステムクロック信号SCLKの立上りおよび立下りに同期してデータを転送するダブル・データ・レートモード(DDRモード)で動作する場合には、直交変換回路40内において直交変換メモリTM0−TM3に対して、同様ダブル・データ・レートモードで転送クロック信号TCLKに同期してデータの書込を実行する。   When the SDRAM 4 operates in a double data rate mode (DDR mode) in which data is transferred in synchronization with the rise and fall of the system clock signal SCLK, the orthogonal transformation circuits TM0 to TM3 are connected to the orthogonal transformation memories TM0 to TM3. Similarly, data writing is executed in synchronization with the transfer clock signal TCLK in the double data rate mode.

なお、図9においては、システムクロック信号SCLKの立上りに同期して、シングル・データ・レートモードでデータが転送されている。しかしながら、システムクロック信号SCLKの立下りに同期してデータがシステムバスを介して転送されてもよい。   In FIG. 9, data is transferred in the single data rate mode in synchronization with the rise of system clock signal SCLK. However, data may be transferred via the system bus in synchronization with the fall of the system clock signal SCLK.

図10は、8ビットデータの2ポート直交変換メモリTM0−TM3への書込シーケンスを示す図である。図10においては、システムバスを介して第1サイクルから第32サイクルに転送されるデータ0−255の格納位置を示す。   FIG. 10 shows a write sequence of 8-bit data to 2-port orthogonal transformation memories TM0 to TM3. FIG. 10 shows the storage position of data 0-255 transferred from the first cycle to the 32nd cycle via the system bus.

図10において、2ポート直交変換メモリTM0−TM3において、メモリブロックBKaおよびBKbの領域のアドレス0から31に転送データが格納される。メモリブロックBKcおよびBKdについては、書込マスクがかけられる。この場合、メモリブロックBKcおよびBKdに対して、データの書込が実行されてもよい。メモリブロックBKcおよびBKdに書込まれたデータは、次の第33サイクルから第64サイクルに転送されるデータにより書換えられるため、問題は生じない(この場合、メモリブロックBKaおよびBKbに対しては、マスクがかけられる)。   In FIG. 10, in the 2-port orthogonal transformation memories TM0 to TM3, transfer data is stored at addresses 0 to 31 in the areas of the memory blocks BKa and BKb. Write masking is applied to memory blocks BKc and BKd. In this case, data writing may be performed on memory blocks BKc and BKd. Since the data written in the memory blocks BKc and BKd is rewritten by the data transferred from the next 33rd cycle to the 64th cycle, there is no problem (in this case, for the memory blocks BKa and BKb, Mask is applied).

図11は、直交変換メモリTM0−TM3への第33サイクルから第64サイクルにわたってシステムバスを介して転送されるデータの格納位置を示す図である。この図11に示すように、2ポート直交変換メモリTM0−TM3において、メモリブロックBKcおよびBKdに、アドレス0から31にわたって順次データが格納される。この場合、各2ポート直交変換メモリTM0−TM3は、ライトイネーブル信号SWE(WE0−WE3)に従って書込がイネーブルされるため、メモリブロックBKaおよびBKbに対し、データマスク信号DM(SDM)に従って書込が禁止される。これにより、先の第1サイクルから第32サイクルにわたって転送されたデータは、確実に保持される。   FIG. 11 is a diagram showing a storage position of data transferred to the orthogonal transformation memories TM0 to TM3 through the system bus from the 33rd cycle to the 64th cycle. As shown in FIG. 11, in the 2-port orthogonal transformation memories TM0 to TM3, data are sequentially stored in the memory blocks BKc and BKd from addresses 0 to 31. In this case, each of the 2-port orthogonal transformation memories TM0 to TM3 is enabled to be written according to the write enable signal SWE (WE0 to WE3), so that writing to the memory blocks BKa and BKb is performed according to the data mask signal DM (SDM). Is prohibited. As a result, the data transferred from the first cycle to the 32nd cycle is securely held.

従って、SDRAM4から64サイクルにわたって転送された64システムアドレスの64ビットデータが、直交変換回路において、各々31アドレスの直交変換メモリTM0−TM3に分散して格納され、等価的に、直交変換メモリTM0−TM3が全体として、、システム側から64ビット幅の64アドレスのメモリとしてアクセスされる。   Accordingly, 64-bit data of 64 system addresses transferred from the SDRAM 4 over 64 cycles are distributed and stored in the orthogonal transformation memories TM0 to TM3 of 31 addresses in the orthogonal transformation circuit, and equivalently, the orthogonal transformation memory TM0- As a whole, TM3 is accessed as a 64-bit memory having a 64-bit width from the system side.

図12は、16ビットデータ転送時の直交変換メモリTM0−TM3へのデータ書込シーケンスを示すタイミング図である。この図12に示すように、16ビットデータを転送する16ビットモード時においては、64ビット幅の内部システムバスを介して1回に4個の16ビットデータが格納される。転送クロック信号TCLKの第1転送サイクルにおいては、直交変換メモリTM0に対してデータ0、1が格納され、次の転送サイクルにおいて直交変換メモリTM1に対してデータ2、3が格納される。このシステムサイクルにおいては、直交変換メモリTM2およびTM3は、ディスエーブル状態である。   FIG. 12 is a timing chart showing a data writing sequence to orthogonal transformation memories TM0 to TM3 at the time of 16-bit data transfer. As shown in FIG. 12, in the 16-bit mode in which 16-bit data is transferred, four 16-bit data are stored at a time via the 64-bit internal system bus. In the first transfer cycle of the transfer clock signal TCLK, data 0 and 1 are stored in the orthogonal transform memory TM0, and data 2 and 3 are stored in the orthogonal transform memory TM1 in the next transfer cycle. In this system cycle, the orthogonal transformation memories TM2 and TM3 are in a disabled state.

次のシステムのサイクルにおいては、データ4−7がアドレス1とともに転送される。このサイクルにおいては、直交変換メモリTM0およびTM1はディスエーブル状態であり、直交変換メモリTM2およびTM3のアドレス1に対してデータ4、5および6、7が、それぞれ格納される。   In the next system cycle, data 4-7 is transferred along with address 1. In this cycle, the orthogonal transformation memories TM0 and TM1 are disabled, and data 4, 5 and 6, 7 are stored for address 1 of the orthogonal transformation memories TM2 and TM3, respectively.

次のシステムサイクルにおいて転送されるアドレス2のデータ8−11については、直交変換メモリTM0およびTM1のアドレス2の位置に対して書込が行われる。このサイクルにおいては、直交変換メモリTM2およびTM3はディスエーブル状態である。   Data 8-11 at address 2 transferred in the next system cycle is written into the address 2 position of orthogonal transform memories TM0 and TM1. In this cycle, the orthogonal transformation memories TM2 and TM3 are in a disabled state.

すなわち、転送データが16ビットデータの場合、直交変換メモリTM0およびTM1の組および直交変換メモリTM2およびTM3の組をシステムサイクルごとに交互にイネーブルしてデータの書込を行う。   That is, when the transfer data is 16-bit data, the set of orthogonal transform memories TM0 and TM1 and the set of orthogonal transform memories TM2 and TM3 are alternately enabled for each system cycle to write data.

この16ビットモード時のデータ格納状態は、図11において斜線で示す領域を32ビット領域とみなすことにより得られるため、その図は省略する。   Since the data storage state in the 16-bit mode is obtained by regarding the area shown by hatching in FIG. 11 as a 32-bit area, that figure is omitted.

16ビットモードにおいて、直交変換メモリTM0およびTM1と直交変換メモリTM2およびTM3を交互にアクセスすることにより、たとえばパリティを除く12ビットデータが転送される場合でも、データを整列させて各アドレスごとに12ビットデータを格納することができる。   In the 16-bit mode, by alternately accessing the orthogonal transform memories TM0 and TM1 and the orthogonal transform memories TM2 and TM3, for example, even when 12-bit data excluding parity is transferred, the data is aligned and 12 for each address. Bit data can be stored.

図13は、32ビットデータ転送時の直交変換メモリTM0−TM3への格納データの配列を概略的に示す図である。図13において、32ビットデータの格納時においては、データ0−63が、2ポート直交変換メモリTM0およびTM1に交互に格納される。この場合、2ポート直交変換メモリTM2およびTM3は、書込禁止状態に維持される(ライトイネーブル信号が非活性状態)。データ64−127が、2ポート直交変換メモリTM2およびTM3に交互に格納される。   FIG. 13 schematically shows an arrangement of data stored in orthogonal transform memories TM0 to TM3 when transferring 32-bit data. In FIG. 13, when storing 32-bit data, data 0-63 are alternately stored in the 2-port orthogonal transformation memories TM0 and TM1. In this case, the two-port orthogonal transformation memories TM2 and TM3 are maintained in the write prohibited state (the write enable signal is inactive). Data 64-127 are alternately stored in the 2-port orthogonal transformation memories TM2 and TM3.

図14は、32ビットデータ転送時の直交変換メモリTM0−TM3への書込シーケンスを示すタイミング図である。図14において、システム側からアドレス0とともに32ビットデータ0および1が転送される。転送クロック信号TCLKに同期して直交変換メモリTM0およびTM1が順次イネーブルされ、これらのデータ0および1が、直交変換メモリTM0およびTM1のアドレス0に格納される。このとき、直交変換メモリTM2およびTM3はディスエーブル状態である。   FIG. 14 is a timing chart showing a writing sequence to the orthogonal transformation memories TM0 to TM3 when transferring 32-bit data. In FIG. 14, 32-bit data 0 and 1 are transferred together with address 0 from the system side. The orthogonal transform memories TM0 and TM1 are sequentially enabled in synchronization with the transfer clock signal TCLK, and these data 0 and 1 are stored at address 0 of the orthogonal transform memories TM0 and TM1. At this time, the orthogonal transformation memories TM2 and TM3 are in a disabled state.

次のシステムサイクルにおいて、アドレス1とともに32ビットデータ2および3が転送される。直交変換メモリTM0およびTM1が転送クロック信号TCLKに従って順次イネーブルされ、それぞれのアドレス1にデータ2および3が格納される。このシステムサイクルにおいても、直交変換メモリTM2およびTM3は、ディスエーブル状態である。以降この動作が32サイクル繰返され、システムから転送されるアドレスが31となると、直交変換メモリTM0およびTM1のアドレス31にデータ62、および63が格納される。   In the next system cycle, 32-bit data 2 and 3 are transferred together with address 1. The orthogonal transformation memories TM0 and TM1 are sequentially enabled according to the transfer clock signal TCLK, and data 2 and 3 are stored in the respective addresses 1. Also in this system cycle, the orthogonal transformation memories TM2 and TM3 are in a disabled state. Thereafter, this operation is repeated 32 cycles, and when the address transferred from the system is 31, data 62 and 63 are stored in the address 31 of the orthogonal transformation memories TM0 and TM1.

次のサイクルにおいて、システム側から転送されるアドレスが、32となると、直交変換メモリTM0およびTM1が、以後の32サイクルにおいてディスエーブル状態に維持され、直交変換メモリTM2およびTM3に対して、アドレス0から31の位置に順次転送データ64−127が交互に格納される。   In the next cycle, when the address transferred from the system side becomes 32, the orthogonal transformation memories TM0 and TM1 are maintained in a disabled state in the subsequent 32 cycles, and the address 0 is transmitted to the orthogonal transformation memories TM2 and TM3. The transfer data 64-127 are sequentially stored at positions 31 to 31.

64ビットデータの格納時には、32ビットデータを転送する32ビットモード時の32ビットデータを64ビットデータに拡張してデータの格納が行なわれる。内部データバスが、32ビット幅であり、32ビットデータおよび64ビットデータの書込シーケンスは、同じである。直交変換メモリTM0およびTM2に、64ビットデータの上位32ビットデータが格納され、直交変換メモリTM1およびTM3に64ビットデータの下位32ビットデータが格納される。64ビットデータが転送される64ビットモード時においては、64アドレスの64ビットデータが、直交変換メモリTM0、TM1およびTM2、TM3に順次格納される。   When storing 64-bit data, data is stored by expanding 32-bit data in 32-bit mode for transferring 32-bit data to 64-bit data. The internal data bus is 32 bits wide, and the write sequence of 32-bit data and 64-bit data is the same. The high-order 32-bit data of 64-bit data is stored in the orthogonal transformation memories TM0 and TM2, and the low-order 32-bit data of 64-bit data is stored in the orthogonal transformation memories TM1 and TM3. In the 64-bit mode in which 64-bit data is transferred, 64-bit data at 64 addresses is sequentially stored in the orthogonal transformation memories TM0, TM1, TM2, and TM3.

図15は、図4に示す直交変換回路40に含まれるシステムバス側制御部60の要部の構成を概略的に示す図である。図15において、システムバス側制御部60は、システムバスI/F24からの64ビットデータを格納するデータレジスタ100と、システムバスI/F24からの6ビットアドレスを格納するアドレスレジスタ102と、システムバス転送データのビット幅を示す情報を格納するビット幅設定レジスタ104とを含む。このビット幅情報に従って内部の転送経路が設定される。   FIG. 15 is a diagram schematically showing a configuration of a main part of system bus side control unit 60 included in orthogonal transform circuit 40 shown in FIG. In FIG. 15, the system bus side control unit 60 includes a data register 100 that stores 64-bit data from the system bus I / F 24, an address register 102 that stores a 6-bit address from the system bus I / F 24, and a system bus. And a bit width setting register 104 for storing information indicating the bit width of the transfer data. An internal transfer path is set according to the bit width information.

データレジスタ100は、それぞれ16ビットのビット幅を有するレジスタREG0−REG3を含み、レジスタREG0からレジスタREG3に向かって最上位ビットMSBから最下位ビットLSBのデータが格納される。アドレスレジスタ102には、最上位ビットMSBがアドレスビットA5であり、最下位ビットLSBがビットA0である6ビットアドレスA5−A0が格納される。この6ビットシステムアドレスにより、64アドレスが指定される。   The data register 100 includes registers REG0 to REG3 each having a bit width of 16 bits. Data from the most significant bit MSB to the least significant bit LSB is stored from the register REG0 toward the register REG3. The address register 102 stores a 6-bit address A5-A0 in which the most significant bit MSB is the address bit A5 and the least significant bit LSB is the bit A0. With this 6-bit system address, 64 addresses are designated.

レジスタREG0−REG3それぞれに対応して、セレクタSL0−SL3が設けられる。セレクタSL0およびSL1は、たとえばトライステートバッファで構成され、切換信号MX0の活性化時、それぞれ、レジスタREG0およびREG1を16ビットデータバス50Uおよび50Lにそれぞれ結合する。ここで、16ビットデータバス50Uおよび50Lは、それぞれ、内部データバス50の上位データバスおよび下位データバスである。セレクタSL2およびSL3は、切換信号MX1の活性化時、レジスタREG2およびREG3を、それぞれ、16ビットデータバス50Uおよび50Lに結合する。   Selectors SL0-SL3 are provided corresponding to registers REG0-REG3, respectively. Selectors SL0 and SL1 are formed of, for example, tristate buffers, and couple registers REG0 and REG1 to 16-bit data buses 50U and 50L, respectively, when switching signal MX0 is activated. Here, the 16-bit data buses 50U and 50L are an upper data bus and a lower data bus of the internal data bus 50, respectively. Selectors SL2 and SL3 couple registers REG2 and REG3 to 16-bit data buses 50U and 50L, respectively, when switching signal MX1 is activated.

切換信号MX0およびMX1により、これらのセレクタSL0−SL3の導通/非導通状態を切換えることにより、64ビットデータを32ビットデータずつデータバス50に伝達することができる。   By switching the conduction / non-conduction state of these selectors SL0-SL3 by switching signals MX0 and MX1, 64-bit data can be transmitted to data bus 50 by 32-bit data.

システムバス側制御部60においては、さらに、2ポート直交変換メモリTM0−TM3それぞれに対応してデータ転送経路を設定するためのセレクタSSL0−SS1L3が設けられる。セレクタSSL0は、ビット幅設定レジスタ104からのビット幅情報に従って、16ビットデータバス50Uおよび50Lの一方を対応の直交変換メモリTM0の下位16ビットポートLに結合する。直交変換メモリTM0の上位16ビットポートUは、16ビットデータバス50Uに結合される。   The system bus side controller 60 further includes selectors SSL0 to SS1L3 for setting data transfer paths corresponding to the 2-port orthogonal transformation memories TM0 to TM3. Selector SSL0 couples one of 16-bit data buses 50U and 50L to lower 16-bit port L of corresponding orthogonal transformation memory TM0 according to the bit width information from bit width setting register 104. The upper 16-bit port U of the orthogonal transformation memory TM0 is coupled to the 16-bit data bus 50U.

セレクタSSL1は、ビット幅設定レジスタ104からのビット幅情報に従って、16ビットデータバス50Uおよび50Lの一方を対応の2ポート直交変換メモリTM1の上位16ビットポートUに結合する。直交変換メモリTM1の下位16ビットポートLは、16ビットデータバス50Lに結合される。   The selector SSL1 couples one of the 16-bit data buses 50U and 50L to the upper 16-bit port U of the corresponding 2-port orthogonal transformation memory TM1 according to the bit width information from the bit width setting register 104. The lower 16-bit port L of the orthogonal transformation memory TM1 is coupled to the 16-bit data bus 50L.

セレクタSSL2は、ビット幅情報に従って、16ビットデータバス50Uおよび50Lの一方を選択して、2ポート直交変換メモリTM2の下位16ビットポートLに結合する。直交変換メモリTM2の上位16ビットポートUは、16ビットデータバス50Uに結合される。セレクタSSL3は、ビット幅情報に従って、16ビットデータバス50Uおよび50Lの一方を2ポート直交変換メモリTM3の上位16ビットポートUに結合する。この直交変換メモリTM3の下位16ビットポートLは、16ビットデータバス50Lに結合される。   Selector SSL2 selects one of 16-bit data buses 50U and 50L according to the bit width information, and couples it to lower 16-bit port L of 2-port orthogonal transformation memory TM2. The upper 16-bit port U of the orthogonal transformation memory TM2 is coupled to the 16-bit data bus 50U. The selector SSL3 couples one of the 16-bit data buses 50U and 50L to the upper 16-bit port U of the 2-port orthogonal transformation memory TM3 according to the bit width information. The lower 16-bit port L of the orthogonal transformation memory TM3 is coupled to the 16-bit data bus 50L.

これらのセレクタSSL0−SSL3を用いてデータバスの接続を16ビット単位で切換えることにより、転送データのビット幅に応じて正確に、転送データをこれらの直交変換メモリTM0−TM3の同一アドレスに順次格納することができる。   By switching the data bus connection in units of 16 bits using these selectors SSL0 to SSL3, the transfer data is stored sequentially in the same address of these orthogonal transformation memories TM0 to TM3 accurately according to the bit width of the transfer data. can do.

この転送データのビット幅に応じたアドレス指定のために、アドレスレジスタ102に対してセレクタSL4が設けられる。セレクタSL4は、ビット幅設定レジスタ104からのビット幅情報に従って、上位5ビットアドレスA5−A1と下位5ビットアドレスA4−A0の一方を選択して内部アドレスAD[4:0]を生成する。   A selector SL4 is provided for the address register 102 to specify an address corresponding to the bit width of the transfer data. The selector SL4 selects one of the upper 5-bit address A5-A1 and the lower 5-bit address A4-A0 according to the bit width information from the bit width setting register 104, and generates the internal address AD [4: 0].

図16は、図15に示すシステムバス側制御部60のセレクタSSL0−SSL3の8ビットモードおよび16ビットモード時のバス接続態様を示す図である。8ビットモードおよび16ビットモードのとき、すなわち、転送データのビット幅が8ビットおよび16ビットの場合には、セレクタSSL0およびSSL2は、それぞれ、16ビットデータバス50Uを選択して対応の直交変換メモリTM0およびTM2の下位16ビットポートLに結合する。一方、セレクタSSL1およびSSL3は、8ビットモードおよび16ビットモード時には、16ビットデータバス50Lを、対応の直交変換メモリTM1およびTM3の上位16ビットポートUに結合する。   FIG. 16 is a diagram illustrating a bus connection mode in the 8-bit mode and the 16-bit mode of the selectors SSL0 to SSL3 of the system bus side control unit 60 illustrated in FIG. In the 8-bit mode and the 16-bit mode, that is, when the bit width of the transfer data is 8 bits and 16 bits, the selectors SSL0 and SSL2 respectively select the 16-bit data bus 50U and the corresponding orthogonal transformation memory Coupling to the lower 16-bit port L of TM0 and TM2. On the other hand, selectors SSL1 and SSL3 couple 16-bit data bus 50L to upper 16-bit port U of corresponding orthogonal transformation memories TM1 and TM3 in the 8-bit mode and 16-bit mode.

従って、直交変換メモリTM0およびTM2に対しては上位16ビットバス50Uのデータが格納され、直交変換メモリTM1およびTM3に対しては、下位16ビットバスのデータが格納される。   Therefore, the upper 16-bit bus 50U data is stored in the orthogonal transformation memories TM0 and TM2, and the lower 16-bit bus data is stored in the orthogonal transformation memories TM1 and TM3.

セレクタSL4は、内部アドレスAD[4:0]として、8ビットモード時には、システム側から転送される6ビットアドレスの下位5ビットアドレスA4−A0を選択する。従って、8ビットモード時には、内部アドレスAD[4:0]は、0から31へシステム側からのアドレスと同様に更新され、システムアドレスが、32から63の時にアドレス0から31を再度指定する。これにより、図9から図11に示すように、直交変換メモリTM0−TM3において、各アドレスの前半部分にデータを格納した後に、各アドレスの後半部分にデータを格納することができる。   The selector SL4 selects the lower 5-bit address A4-A0 of the 6-bit address transferred from the system side as the internal address AD [4: 0] in the 8-bit mode. Accordingly, in the 8-bit mode, the internal address AD [4: 0] is updated from 0 to 31 similarly to the address from the system side, and when the system address is 32 to 63, the addresses 0 to 31 are designated again. As a result, as shown in FIGS. 9 to 11, in the orthogonal transformation memories TM0 to TM3, after data is stored in the first half of each address, the data can be stored in the second half of each address.

16ビットモード時には、システム側から転送される6ビットアドレスの上位5ビットアドレスA5−A1を選択する。したがって、内部アドレスAD[4:0]は、2システムサイクルごとにその値が1更新される。これにより、16ビットモードにおいて、図12に示すシーケンスで、16ビットデータを直交変換メモリTM0−TM3に格納することができる。   In the 16-bit mode, the upper 5-bit address A5-A1 of the 6-bit address transferred from the system side is selected. Therefore, the value of the internal address AD [4: 0] is updated by 1 every two system cycles. Thereby, in the 16-bit mode, 16-bit data can be stored in the orthogonal transformation memories TM0 to TM3 in the sequence shown in FIG.

図17は、図15に示すセレクタSSL0−SSL3の32ビットモードおよび64ビットモード時におけるバス接続態様を示す図である。32ビットモードおよび64ビットモードは、転送データのビット幅が、それぞれ、32ビットおよび64ビットである。これらのモードにおいては、セレクタSSL0およびSSL2は、16ビットデータバス50Lを対応の直交変換メモリTM0およびTM2の下位16ビットポートLに結合する。セレクタSSL1およびSSL3は、16ビットデータバス50Uを、それぞれ対応の直交変換メモリTM1およびTM3の上位16ビットポートUに結合する。従って、直交変換メモリTM0−TM3各々に対しては、32ビットデータバス50の32ビットデータが転送される。   FIG. 17 is a diagram showing a bus connection mode in the 32-bit mode and 64-bit mode of selectors SSL0 to SSL3 shown in FIG. In the 32-bit mode and the 64-bit mode, the bit width of the transfer data is 32 bits and 64 bits, respectively. In these modes, selectors SSL0 and SSL2 couple 16-bit data bus 50L to lower 16-bit port L of corresponding orthogonal transformation memories TM0 and TM2. Selectors SSL1 and SSL3 couple 16-bit data bus 50U to upper 16-bit ports U of corresponding orthogonal transformation memories TM1 and TM3, respectively. Accordingly, the 32-bit data of the 32-bit data bus 50 is transferred to each of the orthogonal transformation memories TM0 to TM3.

このとき、セレクタSL4は、アドレスレジスタ102の格納するアドレスビットA5−A0のうち下位5ビットアドレスA4−A0を選択する。これらの32ビットモードおよび64ビットモードにおいては、直交変換メモリTM0およびTM1に順次32ビットデータが格納され、これらの直交変換メモリTM0およびTM1のアドレス領域がすべて指定されてデータが格納された後に、次いで、直交変換メモリTM2およびT3に対しデータアクセスが実行される。これにより、図13および図14に示す32ビットモードまたは64ビットモードでのデータアクセスシーケンスを実現することができる。   At this time, the selector SL4 selects the lower 5-bit address A4-A0 among the address bits A5-A0 stored in the address register 102. In these 32-bit mode and 64-bit mode, 32-bit data is sequentially stored in the orthogonal transformation memories TM0 and TM1, and after the address areas of these orthogonal transformation memories TM0 and TM1 are all designated and stored, Next, data access is performed on the orthogonal transformation memories TM2 and T3. Thereby, the data access sequence in the 32-bit mode or 64-bit mode shown in FIGS. 13 and 14 can be realized.

図18は、システムバス側制御部60におけるレジスタの切換を行う切換信号MX0およびMX1を発生する部分の構成の一例を示す図である。図18において、切換信号発生部は、システムクロック信号SCLKを受けるインバータ112と、システム側からの書込指示を示す書込コマンドWENとシステムクロック信号SCLKとを受けるANDゲート114と、インバータ112の出力信号と書込指示WENとを受けるANDゲート116を含む。この制御部60には、またシステムクロック信号SCLKを分周して転送クロック信号TCLKを生成する分周回路110が設けられる。AND回路114から切換信号MX0が出力され、ANDゲート116から、切換信号MX1が出力される。   FIG. 18 is a diagram illustrating an example of a configuration of a portion that generates switching signals MX0 and MX1 for switching registers in the system bus side control unit 60. In FIG. In FIG. 18, the switching signal generator includes an inverter 112 that receives system clock signal SCLK, an AND gate 114 that receives a write command WEN indicating a write instruction from the system side and system clock signal SCLK, and an output of inverter 112. An AND gate 116 receiving the signal and write instruction WEN is included. The control unit 60 is also provided with a frequency dividing circuit 110 that divides the system clock signal SCLK to generate the transfer clock signal TCLK. The AND circuit 114 outputs a switching signal MX0, and the AND gate 116 outputs a switching signal MX1.

図19は、図18に示す切換信号発生部の動作を示すタイミング図である。以下、図19を参照して、この図18に示す切換信号発生部の動作について説明する。   FIG. 19 is a timing chart showing the operation of the switching signal generator shown in FIG. The operation of the switching signal generator shown in FIG. 18 will be described below with reference to FIG.

分周回路110は、システムクロック信号SCLKを分周し、このシステムクロックSCLKの1/2倍の周期を有する転送クロック信号TCLKを生成する。システム側からの書込指示WENがアサートされデータ書込が指示されると、ANDゲート114および116がイネーブルされる。切換信号MX0が、システムクロック信号SCLKに同期して変化し、切換信号MX1が、システムクロック信号SCLKの反転信号に同期して変化する。したがって、データバス50上には、切換信号MX0がHレベルの期間、64ビットデータD(64)のうちの上位32ビットデータUD(32)が伝達され、切換信号MX1がHレベルの期間、データバス50に、この64ビットのデータD(64)のうちの下位32ビットデータLD(32)が伝達される。この切換信号MX0およびMX1を利用することにより、図15に示すセレクタSL0−SL3を選択的に導通状態として、システムクロック信号SCLKの1周期内において、64ビットデータを32ビット単位でデータバス50上に伝達することができる。   The frequency dividing circuit 110 divides the system clock signal SCLK and generates a transfer clock signal TCLK having a cycle that is ½ times the system clock SCLK. When write instruction WEN from the system side is asserted to instruct data writing, AND gates 114 and 116 are enabled. Switching signal MX0 changes in synchronization with system clock signal SCLK, and switching signal MX1 changes in synchronization with the inverted signal of system clock signal SCLK. Therefore, upper 32-bit data UD (32) of 64-bit data D (64) is transmitted on data bus 50 while switching signal MX0 is at the H level, and data is transmitted while switching signal MX1 is at the H level. The low-order 32-bit data LD (32) of the 64-bit data D (64) is transmitted to the bus 50. By using switching signals MX0 and MX1, selectors SL0-SL3 shown in FIG. 15 are selectively turned on, and 64-bit data is transferred on data bus 50 in units of 32 bits within one cycle of system clock signal SCLK. Can be communicated to.

図20は、システムバス側制御部60における書込制御信号を発生する部分の構成を概略的に示す図である。図20において、システムバス側制御部60は、2ポート直交変換メモリTM0−TM3それぞれに対応して設けられる選択回路120−123を含む。これらの選択回路120−123へは、共通に、システム側からの書込指示WENとビット幅設定レジスタ104からのビット幅情報が共通に与えられる。書込指示WENがアサートされると、これらの選択回路120−123は、ビット幅設定レジスタ104からのビット幅情報に従って選択動作を行なう。このビット幅設定レジスタ104には、システム側からの制御情報に従って、ビット幅情報が設定されてもよく、システム立上げ時に、図1に示すコントローラ22により、ビット幅情報が設定されてもよい。   FIG. 20 is a diagram schematically showing a configuration of a portion for generating a write control signal in system bus side control unit 60. In FIG. 20, system bus side control unit 60 includes selection circuits 120-123 provided corresponding to 2-port orthogonal transformation memories TM0-TM3, respectively. These selection circuits 120-123 are commonly provided with a write instruction WEN from the system side and bit width information from the bit width setting register 104 in common. When write instruction WEN is asserted, these selection circuits 120-123 perform a selection operation according to the bit width information from bit width setting register 104. Bit width information may be set in the bit width setting register 104 in accordance with control information from the system side, or the bit width information may be set by the controller 22 shown in FIG.

これらの選択回路120−123は、各々、8ビットモード制御端子、16ビットモード制御端子、および32/64ビットモード制御端子およびリセット状態を設定するリセット端子Rを含む。32/64ビットモード制御端子は、32ビットモードおよび64ビットモード時の書込制御信号を受ける端子である。これらの端子に与えられる信号に従って、データ転送時にデータのビット幅に応じて、直交変換メモリTM0−TM3の活性化シーケンスを設定して、ビット幅に応じて正確にデータの書込を行なうことができる。   Each of these selection circuits 120-123 includes an 8-bit mode control terminal, a 16-bit mode control terminal, and a 32 / 64-bit mode control terminal and a reset terminal R for setting a reset state. The 32 / 64-bit mode control terminal is a terminal for receiving a write control signal in the 32-bit mode and the 64-bit mode. According to the signals applied to these terminals, the activation sequence of the orthogonal transformation memories TM0 to TM3 can be set according to the bit width of the data at the time of data transfer, and data can be written accurately according to the bit width. it can.

選択回路120は、8ビットモード制御端子に、補の切換制御信号/MX0を受け、16ビットモード制御端子に、最下位アドレスビットA0と切換制御信号/MX0とを受けるORゲートG0の出力信号を受ける。選択回路120は、さらに、補の切換制御信号/MX0および最上位アドレスビットA5を受けるORゲートG1の出力信号を、32/64ビットモード制御端子に受ける。リセット端子Rに、ディスエーブル状態を示す“1”の信号を受ける。この選択回路120から、直交変換メモリTM0に対するライトイネーブル信号/WE0が与えられる。   The selection circuit 120 receives the complementary switching control signal / MX0 at the 8-bit mode control terminal and the output signal of the OR gate G0 receiving the least significant address bit A0 and the switching control signal / MX0 at the 16-bit mode control terminal. receive. Select circuit 120 further receives at its 32 / 64-bit mode control terminal an output signal of OR gate G1 receiving complementary switching control signal / MX0 and most significant address bit A5. The reset terminal R receives a “1” signal indicating a disabled state. From this selection circuit 120, a write enable signal / WE0 for the orthogonal transformation memory TM0 is given.

なお、各信号の前に付される“/”の記号は、“0”のときに活性状態となる負論理の信号であることを示す。このライトイネーブル信号/WENi(i=0−3)は、図5に示すライトイネーブル信号SWEに対応するが、信号の論理を明確にするため、ここでは、記号「/WENi」を用いる。   Note that the symbol “/” added in front of each signal indicates a negative logic signal that is activated when it is “0”. The write enable signal / WENi (i = 0-3) corresponds to the write enable signal SWE shown in FIG. 5, but the symbol “/ WENi” is used here in order to clarify the logic of the signal.

選択回路121は、8ビットモード制御端子に、補の切換制御信号/MX0を受け、16ビットモード制御端子に、最下位アドレスビットA0と補の切換制御信号/MX1を受けるORゲートG2の出力信号を受ける。選択回路121は、さらに、32/64ビットモード制御端子に、補の切換制御信号/MX1と補の最上位アドレスビット/A5を受けるORゲートG3の出力信号を受け、リセット端子Rに、“1”の信号を受ける。   The selection circuit 121 receives the complementary switching control signal / MX0 at the 8-bit mode control terminal and the output signal of the OR gate G2 receiving the least significant address bit A0 and the complementary switching control signal / MX1 at the 16-bit mode control terminal. Receive. The selection circuit 121 further receives the output signal of the OR gate G3 receiving the complementary switching control signal / MX1 and the complementary most significant address bit / A5 at the 32 / 64-bit mode control terminal, and receives “1” at the reset terminal R. ”Is received.

選択回路122は、8ビットモード入力端子に、補の切換制御信号/MX1を受け、16ビットモード制御端子に、補の最下位アドレスビット/A0と補の切換制御信号/MX0を受けるORゲートG4の出力信号を受ける。選択回路122は、さらに、32/64ビットモード制御端子に、補の切換制御信号/MX0と補の最上位アドレスビット/A5を受けるORゲートG5の出力信号を受け、リセット入力端子Rに、“1”の信号を受ける。選択回路122から、ライトイネーブル信号/WE2が直交変換メモリTM2へ与えられる。   Selection circuit 122 receives complementary switching control signal / MX1 at the 8-bit mode input terminal and OR gate G4 receiving complementary least significant address bit / A0 and complementary switching control signal / MX0 at the 16-bit mode control terminal. The output signal is received. The selection circuit 122 further receives an output signal of the OR gate G5 receiving the complementary switching control signal / MX0 and the complementary most significant address bit / A5 at the 32 / 64-bit mode control terminal. 1 "signal is received. A write enable signal / WE2 is applied from the selection circuit 122 to the orthogonal transformation memory TM2.

選択回路123は、8ビットモード制御端子に、補の切換制御信号/MX1を受け、16ビットモード制御端子に、補の最下位アドレスビット/A0と補の切換制御信号/MX1を受けるORゲートG6の出力信号を受ける。選択回路123は、さらに、32/64ビットモード制御端子に、補の切換制御信号/MX1と補の最上位アドレスビット/A5を受けるORゲートG7の出力信号を受け、リセット端子に、“1”の信号を受ける。この選択回路123から、直交変換メモリTM3に対するライトイネーブル信号/WE3が生成される。   Select circuit 123 receives complementary switching control signal / MX1 at the 8-bit mode control terminal, and OR gate G6 receiving complementary least significant address bit / A0 and complementary switching control signal / MX1 at the 16-bit mode control terminal. The output signal is received. The selection circuit 123 further receives the output signal of the OR gate G7 receiving the complementary switching control signal / MX1 and the complementary most significant address bit / A5 at the 32 / 64-bit mode control terminal, and “1” at the reset terminal. Receive the signal. From this selection circuit 123, a write enable signal / WE3 for the orthogonal transformation memory TM3 is generated.

システムバス側制御部60は、さらに、アドレスビットA0およびA5をそれぞれ反転するインバータIV1およびIV2と、ビット幅設定レジスタ104からのビット幅情報に従って、アドレスビットA5および/A5との組と“0”および“0”の組の一方を選択して、データマスク信号DM0およびDM1を生成するマスク選択回路130を含む。マスク選択回路130は、アドレスビットA5と“0”の一方を選択して上位16ビットデータに対するデータマスク信号DM0を生成する切換回路MUX0と、補の最上位アドレスビット/A5と“0”の一方を選択して下位16ビットデータに対するデータマスク信号DM1を生成する切換回路MUX1を含む。   Further, system bus side control unit 60 sets "0" as a set of address bits A5 and / A5 according to bit width information from inverters IV1 and IV2 for inverting address bits A0 and A5, respectively, and bit width setting register 104. And a mask selection circuit 130 that selects one of the set of “0” and generates data mask signals DM0 and DM1. The mask selection circuit 130 selects one of the address bits A5 and “0” to generate the data mask signal DM0 for the upper 16-bit data, and one of the complementary most significant address bits / A5 and “0”. And a switching circuit MUX1 for generating a data mask signal DM1 for lower 16-bit data.

これらのデータマスク信号DM0およびDM1は、直交変換メモリTM0−TM3に共通に与えられる。選択回路130は、8ビットモード指定時には、アドレスビットA5および/A5に従ってデータマスク信号DM0およびDM1を生成し、16ビットモードおよび32/64ビットモード時においては、“0”を選択して、データマスク信号DM0およびDM1を生成する。   These data mask signals DM0 and DM1 are commonly applied to the orthogonal transformation memories TM0 to TM3. Select circuit 130 generates data mask signals DM0 and DM1 in accordance with address bits A5 and / A5 when the 8-bit mode is specified, and selects “0” in the 16-bit mode and the 32 / 64-bit mode to select data Mask signals DM0 and DM1 are generated.

図21から図23は、図20に示すシステムバス側制御部60のデータ書込制御の動作を示すタイミング図である。以下、図21から図23を参照して、図20に示すシステムバス側制御部60の動作について説明する。   FIG. 21 to FIG. 23 are timing charts showing the data write control operation of the system bus side controller 60 shown in FIG. Hereinafter, the operation of the system bus side controller 60 shown in FIG. 20 will be described with reference to FIGS.

まず、図21を参照して、8ビットモード時の動作について説明する。この場合、選択回路120および121は、ライトイネーブル信号/WE0および/WE1として、補の切換制御信号/MX0を選択する。選択回路122および123は、ライトイネーブル信号/WE2および/WE3として、補の切換制御信号/MX1を選択する。   First, the operation in the 8-bit mode will be described with reference to FIG. In this case, selection circuits 120 and 121 select complementary switching control signal / MX0 as write enable signals / WE0 and / WE1. Selection circuits 122 and 123 select complementary switching control signal / MX1 as write enable signals / WE2 and / WE3.

したがって、まずデータ書込指示が与えられ、書込指示WENがアサートされると、そのサイクルにおいて、切換制御信号MX0およびMX1が、システムクロック信号SCLKに同期して互いに相補な位相で変化する。サイクル0から31までは、最上位アドレスビットA5は、“0”である。最下位アドレスビットA0は、システムクロック信号SCLKの各サイクルごとに、“0”および“1”に交互に変化する。ライトイネーブル信号/WE0および/WE1が、切換信号MX0がHレベルのときに活性化されてLレベル(“0”)となり、対応の直交変換メモリTM0およびTM1に対する書込が許可される。ライトイネーブル信号ライトイネーブル信号/WE2および/WE3は、切換信号MX1がHレベルのときに活性化されてLレベル(“0”)となり、対応の直交変換メモリTM2およびTM3に対する書込が許可される。   Therefore, when a data write instruction is first given and write instruction WEN is asserted, switching control signals MX0 and MX1 change in complementary phases in synchronization with system clock signal SCLK in that cycle. In cycles 0 to 31, the most significant address bit A5 is “0”. The lowest address bit A0 alternately changes to “0” and “1” for each cycle of the system clock signal SCLK. Write enable signals / WE0 and / WE1 are activated to L level ("0") when switching signal MX0 is at H level, and writing to corresponding orthogonal transformation memories TM0 and TM1 is permitted. Write enable signals Write enable signals / WE2 and / WE3 are activated and L level ("0") when switching signal MX1 is at H level, and writing to corresponding orthogonal transformation memories TM2 and TM3 is permitted. .

データマスク信号DM0およびDM1は、8ビットモード時、それぞれ、選択回路130により、最上位アドレスビットA5および補の最上位アドレスビット/A5に従って生成される。したがって、サイクル0から31の間、データマスク信号DM0はLレベル(“0”)、データマスク信号DM1はLレベル(“1”)である。すなわち、システムクロック信号SCLKのサイクル0からサイクル31の間、直交変換メモリTM0およびTM1の組および直交変換メモリTM2およびTM3の組は交互に同一サイクル内で活性化され、上位16ビットの領域にデータの書込が実行される。下位16ビットの領域には書込はマスクされる。   Data mask signals DM0 and DM1 are generated by select circuit 130 according to most significant address bit A5 and complementary most significant address bit / A5, respectively, in the 8-bit mode. Therefore, during cycles 0 to 31, the data mask signal DM0 is at the L level (“0”), and the data mask signal DM1 is at the L level (“1”). That is, during cycle 0 to cycle 31 of system clock signal SCLK, the set of orthogonal transform memories TM0 and TM1 and the set of orthogonal transform memories TM2 and TM3 are alternately activated in the same cycle, and data is stored in the upper 16-bit area. Is written. Writing is masked in the lower 16-bit area.

サイクル32に到達すると、最上アドレスビットA5が“1”(Hレベル)となり、応じて、データマスク信号DM0がHレベル、データマスク信号DM1がLレベルとなる。データマスク信号DM0およびDM1は、Hレベルのときに書込にマスクをかける。したがって、サイクル32からは、直交変換メモリTM0−TM3の下位16ビットの領域にデータの書込が行なわれ、上位16ビットの領域には、データの書込は行なわれない。   When the cycle 32 is reached, the most significant address bit A5 becomes “1” (H level), and accordingly, the data mask signal DM0 becomes H level and the data mask signal DM1 becomes L level. Data mask signals DM0 and DM1 mask writing when they are at the H level. Therefore, from cycle 32, data is written into the lower 16-bit area of orthogonal transform memory TM0-TM3, and no data is written into the upper 16-bit area.

このサイクル32から以降のサイクル63まで、サイクル0からサイクル31と同様、直交変換メモリTM0およびTM1の組および直交変換メモリTM2およびTM3の組が、システムクロックSCLKの各サイクルにおいて交互に活性化される。   From cycle 32 to subsequent cycle 63, as in cycle 0 to cycle 31, the set of orthogonal transform memories TM0 and TM1 and the set of orthogonal transform memories TM2 and TM3 are alternately activated in each cycle of system clock SCLK. .

上述のようにして、8ビットモード時、システムクロックSCLKの各サイクルごとに、直交変換メモリTM0−TM3に対し、16ビットずつデータの書込を実行することができる。   As described above, in the 8-bit mode, data can be written into the orthogonal transform memories TM0 to TM3 by 16 bits every cycle of the system clock SCLK.

図22は、図20に示すシステム側制御部60の、16ビットモード時の動作を示すタイミング図である。16ビットモード時においては、選択回路120が、ORゲートG0からの最下位アドレスビットA0と補の切換制御信号/MX0の論理和信号に従ってライトイネーブル信号/WE0を生成し、選択回路121が、最下位アドレスビットA0と補の切換制御信号/MX1の論理和信号に従ってライトイネーブル信号/WE1を生成する。選択回路122は、補の最下位アドレスビット/A0と補の切換制御信号/MX0の論理和信号に従ってライトイネーブル信号/WE2を生成し、選択回路123が、補の最下位アドレスビット/A0と補の切換制御信号/MX1の論理和に従ってライトイネーブル信号/WE3を生成する。   FIG. 22 is a timing chart showing the operation in the 16-bit mode of the system side control unit 60 shown in FIG. In the 16-bit mode, selection circuit 120 generates write enable signal / WE0 according to the logical sum signal of least significant address bit A0 from OR gate G0 and complementary switching control signal / MX0, and selection circuit 121 Write enable signal / WE1 is generated in accordance with the logical sum signal of lower address bit A0 and complementary switching control signal / MX1. Select circuit 122 generates write enable signal / WE2 in accordance with the logical sum signal of complementary least significant address bit / A0 and complementary switching control signal / MX0, and selector circuit 123 complements complementary least significant address bit / A0. The write enable signal / WE3 is generated according to the logical sum of the switching control signal / MX1.

したがって、書込指示WENがアサートされ、データ書込が開始されると、サイクル0において、ライトイネーブル信号/WE0および/WE1が、それぞれ、切換制御信号MX0およびMX1に従って活性化される。このとき、ライトイネーブル信号/WE2および/WE3は、非活性状態のHレベル(“1”)である。サイクル1においては、最下位アドレスビットA0が“1”となり、ライトイネーブル信号/WE0および/WE1は、“1”に維持される。このサイクル1においては、ライトイネーブル信号/WE2および/WE3が、それぞれ、切換制御信号MX0およびMX1に従って活性化される。以降、偶数アドレス(偶数番号のシステムサイクル)においては、ライトイネーブル信号/WE0および/WE1が、切換制御信号MX0およびMX1に従って順次活性化され、奇数アドレス(奇数番号のシステムサイクル)においては、ライトイネーブル信号/WE2および/WE3が、それぞれ、切換制御信号MX0およびMX1に従って順次活性化される。   Therefore, when write instruction WEN is asserted and data writing is started, in cycle 0, write enable signals / WE0 and / WE1 are activated according to switching control signals MX0 and MX1, respectively. At this time, write enable signals / WE2 and / WE3 are at the H level (“1”) in the inactive state. In cycle 1, the least significant address bit A0 becomes “1”, and the write enable signals / WE0 and / WE1 are maintained at “1”. In cycle 1, write enable signals / WE2 and / WE3 are activated according to switching control signals MX0 and MX1, respectively. Thereafter, at even addresses (even-numbered system cycles), write enable signals / WE0 and / WE1 are sequentially activated according to switching control signals MX0 and MX1, and at odd addresses (odd-numbered system cycles), write enable is performed. Signals / WE2 and / WE3 are sequentially activated in accordance with switching control signals MX0 and MX1, respectively.

データマスク信号DM0およびDM1は、16ビットモード時には、“0”に固定される。したがって、直交変換メモリTM0−TM3各々に対しては、32ビットデータの書込が実行される。直交変換メモリTM0およびTM1の組および直交変換メモリTM2およびTM3の組に対して、システムクロック信号CLKのクロックサイクルごとに交互に64ビットデータの書込が実行される。   Data mask signals DM0 and DM1 are fixed to “0” in the 16-bit mode. Therefore, 32-bit data is written to each of orthogonal transform memories TM0 to TM3. For the set of orthogonal transform memories TM0 and TM1 and the set of orthogonal transform memories TM2 and TM3, 64-bit data is alternately written every clock cycle of the system clock signal CLK.

図23は、図20に示すシステムバス側制御部60の32/64ビットモード時の動作を示すタイミング図である。この32/64ビットモードにおいては、データのビット幅は32ビットまたは64ビットである。この32/64ビットモードにおいては、選択回路120が、最上位アドレスビットA5と補の切換制御信号/MX0の論理和に従ってライトイネーブル信号/SE0を生成し、選択回路121は、最上位アドレスビットA5と補の切換制御信号/MX1の論理和に従ってライトイネーブル信号/WE1を生成する。選択回路122が、補の最上位アドレスビット/A5と補の切換制御信号/MX0の論理和に従ってライトイネーブル信号/WE2を生成し、選択回路123が、補の最上位アドレスビット/A5と補の切換制御信号/MX1の論理和に従ってライトイネーブル信号/WE3を生成する。したがって、サイクル0から31の間、最上位アドレスビットA5が“0”であり、ライトイネーブル信号/WE2および/WE3は、“1”に維持され、直交変換メモリTM2およびTM3に対するデータの書込は禁止される。一方、ライトイネーブル信号/WE0および/WE1は、切換制御信号MX0およびMX1に従って各クロックサイクルにおいて活性化され、直交変換メモリTM0およびTM1各々に対して交互に32ビットのデータの書込が実行される。   FIG. 23 is a timing chart showing the operation of the system bus side control unit 60 shown in FIG. 20 in the 32 / 64-bit mode. In the 32 / 64-bit mode, the data bit width is 32 bits or 64 bits. In this 32 / 64-bit mode, selection circuit 120 generates write enable signal / SE0 in accordance with the logical sum of most significant address bit A5 and complementary switching control signal / MX0, and selection circuit 121 has most significant address bit A5. The write enable signal / WE1 is generated according to the logical sum of the complementary control signal / MX1. Select circuit 122 generates write enable signal / WE2 in accordance with the logical sum of complementary most significant address bit / A5 and complementary switching control signal / MX0, and select circuit 123 selects complementary most significant address bit / A5 and complementary A write enable signal / WE3 is generated in accordance with the logical sum of the switching control signal / MX1. Therefore, during cycles 0 to 31, the most significant address bit A5 is “0”, the write enable signals / WE2 and / WE3 are maintained at “1”, and data writing to the orthogonal transformation memories TM2 and TM3 is not performed. It is forbidden. On the other hand, write enable signals / WE0 and / WE1 are activated in each clock cycle in accordance with switching control signals MX0 and MX1, and 32-bit data is alternately written into orthogonal transformation memories TM0 and TM1. .

一方、サイクル32になると、最上位アドレスビットA5が“1”となり、ライトイネーブル信号/WE0および/WE1が、“1”に維持される。一方、ライトイネーブル信号/WE2および/WE3が、切換制御信号MX0およびMX1に従って順次活性化される。したがって、32/64ビットモードにおいては、直交変換メモリTM0およびTM1に対し、データの書込が行なわれ、32個のデータ(32アドレスのデータ)が直交変換メモリTM0およびTM1に格納された後に、直交変換メモリTM2およびTM3に対する以後の32アドレスのデータの書込が実行される。   On the other hand, in cycle 32, the most significant address bit A5 becomes “1”, and the write enable signals / WE0 and / WE1 are maintained at “1”. On the other hand, write enable signals / WE2 and / WE3 are sequentially activated according to switching control signals MX0 and MX1. Therefore, in the 32 / 64-bit mode, data is written to the orthogonal transformation memories TM0 and TM1, and after 32 pieces of data (32-address data) are stored in the orthogonal transformation memories TM0 and TM1, The subsequent 32 address data is written into the orthogonal transformation memories TM2 and TM3.

以上のように、直交変換メモリTM0−TM3は、全体として、64ワード×64ビットのメモリとして動作し、データビット幅が、8ビット、16ビット、32ビットおよび64ビットのデータについて、外部からは、内部構成および内部アドレスを考慮することなく64アドレスの64ビットデータの書込を実行することができる。   As described above, the orthogonal transformation memories TM0 to TM3 operate as a memory of 64 words × 64 bits as a whole, and data with a data bit width of 8, 16, 32, and 64 bits is externally applied. It is possible to write 64-bit data at 64 addresses without considering the internal configuration and internal address.

なお、図20において括弧内において示すように、データの読出を、直交変換メモリTM0−TM3から実行する場合には、書込指示WENに代えて、読出指示(REN)が与えられ、この場合、ライトイネーブル信号/WE0−/WE3に代えて、リードイネーブル信号(/RE0−/RE3)が生成される。この場合、以下に示すように、選択回路120−123は、データの書込および読出に共通に用いることが可能である。   As shown in parentheses in FIG. 20, when reading data from the orthogonal transformation memories TM0 to TM3, a read instruction (REN) is given instead of the write instruction WEN. In this case, Instead of the write enable signals / WE0− / WE3, read enable signals (/ RE0− / RE3) are generated. In this case, as will be described below, selection circuits 120-123 can be commonly used for data writing and reading.

図24は、このシステムバス側制御部60における書込/読出を行なう部分の構成の一例を示す図である。図24においては、直交変換メモリTM0に対して設けられる選択回路120についての構成を代表的に示す。図24において、選択回路120に対し、データ転送を要求する選択信号SELとビット幅情報が与えられる。この選択信号SELは、データの書込またはデータの読出の要求する信号であり、図5に示すシステム側からの選択信号SSELに対応する信号である。   FIG. 24 is a diagram showing an example of the configuration of a portion that performs writing / reading in the system bus side control unit 60. FIG. 24 representatively shows a configuration of selection circuit 120 provided for orthogonal transformation memory TM0. In FIG. 24, a selection signal SEL requesting data transfer and bit width information are given to the selection circuit 120. This selection signal SEL is a signal that requests data writing or data reading, and corresponds to the selection signal SSEL from the system side shown in FIG.

選択回路120の出力に、ORゲートG8およびG9が設けられる。ORゲートG8は、書込指示WENの反転信号である補の書込指示/WENと選択回路120の出力信号とを受けてライトイネーブル信号/WE0を生成する。ORゲートG9は、読出指示RENの反転信号である補の読出指示/RENと選択回路120の出力信号とを受けて、リードイネーブル信号/RE0を生成する。書込指示WENおよび読出指示RENは、アサート時、Hレベル(“1”)であり、一方、ライトイネーブル信号/WE0およびリードイネーブル信号/RE0は、活性化時、Lレベル(“0”)である。   OR gates G8 and G9 are provided at the output of the selection circuit 120. The OR gate G8 receives the complementary write instruction / WEN which is an inverted signal of the write instruction WEN and the output signal of the selection circuit 120, and generates a write enable signal / WE0. OR gate G9 receives complementary read instruction / REN which is an inverted signal of read instruction REN and the output signal of selection circuit 120, and generates read enable signal / RE0. Write instruction WEN and read instruction REN are at the H level (“1”) when asserted, while write enable signal / WE0 and read enable signal / RE0 are at the L level (“0”) when activated. is there.

書込を行なう場合には、補の書込指示/WENがLレベルとなり、選択回路120の出力信号がLレベルのときに、ライトイネーブル信号/WE0が活性化される。このときには、読出指示WENはネゲート状態であり、Lレベルであり、リードイネーブル信号/RE0は、Hレベルに維持される。逆に、データの読出を行なう場合には、読出指示RENがアサートされてHレベルとなり、一方、書込指示WENは、ネゲート状態のLレベルである。したがって、選択回路120の出力信号がLレベルとなると、リードイネーブル信号/RE0がLレベルとなって活性化されてデータの読出が行なわれる。データマスク信号DM0およびDM1は、書込および読出時に共通に用いることができる。   When writing is performed, write enable signal / WE0 is activated when complementary write instruction / WEN is at L level and the output signal of selection circuit 120 is at L level. At this time, read instruction WEN is negated and at L level, and read enable signal / RE0 is maintained at H level. On the other hand, when data is read, read instruction REN is asserted to become H level, while write instruction WEN is in the negated L level. Therefore, when the output signal of selection circuit 120 becomes L level, read enable signal / RE0 becomes L level and is activated to read data. Data mask signals DM0 and DM1 can be used in common during writing and reading.

この図24に示す構成を利用することにより、データ書込およびデータ読出を、データの流れを反対にするだけで、共通の制御回路構成を利用して同一の制御態様で実行することができる。   By using the configuration shown in FIG. 24, data writing and data reading can be executed in the same control mode by using a common control circuit configuration only by reversing the data flow.

図25は、2ポート直交変換メモリTM0−TM3と主演算回路のメモリセルマットとの間のデータ転送を行なう主演算回路側制御部65の構成を概略的に示す図である。図25において、直交変換回路と主演算回路との間のデータ転送を行うための64ビットデータバス55は、16ビットデータバス150a−150dを有する。主演算回路側制御部65において、2ポート直交変換メモリTM0−TM3それぞれに対応して、ビット幅情報M8/16に従ってバスの接続経路を切換えるバスセレクタ140a−140cおよび142a−1142cが設けられる。セレクタ140aは、2ポート直交変換メモリTM0の下位16ビットポートLを16ビットデータバス150aおよび150bの一方に結合する。直交変換メモリTM0の16ビットポートUは、16ビットデータバス150aに結合される。これらの16ビットデータバス150aおよび150bにより、64ビットデータバスの上位32ビットデータバスが形成される。   FIG. 25 schematically shows a configuration of main arithmetic circuit side control unit 65 for transferring data between 2-port orthogonal transform memories TM0 to TM3 and the memory cell mat of the main arithmetic circuit. In FIG. 25, a 64-bit data bus 55 for performing data transfer between the orthogonal transform circuit and the main arithmetic circuit has 16-bit data buses 150a to 150d. The main arithmetic circuit side control unit 65 is provided with bus selectors 140a-140c and 142a-142c for switching the bus connection paths according to the bit width information M8 / 16, corresponding to the 2-port orthogonal transformation memories TM0-TM3. Selector 140a couples lower 16-bit port L of 2-port orthogonal transformation memory TM0 to one of 16-bit data buses 150a and 150b. The 16-bit port U of the orthogonal transformation memory TM0 is coupled to the 16-bit data bus 150a. These 16-bit data buses 150a and 150b form an upper 32-bit data bus of the 64-bit data bus.

バスセレクタ140bは、直交変換メモリTM2の上位16ビットポートUを、16ビットデータバス150cおよび150bの一方に結合する。バスセレクタ142cは、直交変換メモリTM2の下位16ビットポートLを、16ビットデータバス150c、150bおよび150dのいずれかに接続する。   Bus selector 140b couples upper 16-bit port U of orthogonal transformation memory TM2 to one of 16-bit data buses 150c and 150b. The bus selector 142c connects the lower 16-bit port L of the orthogonal transformation memory TM2 to any of the 16-bit data buses 150c, 150b, and 150d.

バスセレクタ142aは、直交変換メモリTM1の上位16ビットポートUを16ビットデータバス150b、150cおよび150aのいずれかに結合する。バスセレクタ142bは、直交変換メモリTM1の下位16ビットポートLを、16ビットデータバス150a、150dおよび150bのいずれかに結合する。   The bus selector 142a couples the upper 16-bit port U of the orthogonal transformation memory TM1 to any of the 16-bit data buses 150b, 150c and 150a. The bus selector 142b couples the lower 16-bit port L of the orthogonal transformation memory TM1 to any of the 16-bit data buses 150a, 150d, and 150b.

バスセレクタ140cは、直交変換メモリTM3の上位16ビットポートUを、16ビットデータバス150dおよび150cの一方に結合する。この直交変換メモリTM3の下位16ビットポートLは、16ビットデータバス150dに結合される。   Bus selector 140c couples upper 16-bit port U of orthogonal transformation memory TM3 to one of 16-bit data buses 150d and 150c. The lower 16-bit port L of the orthogonal transformation memory TM3 is coupled to the 16-bit data bus 150d.

これらのバスセレクタ140a−140cおよび142−142cの接続経路は、ビット幅情報BWSに従って設定される。ビット幅情報BWSは、8ビットモード、16ビットモード、32ビットモードおよび64ビットモードのいずれかを指定する。   The connection path of these bus selectors 140a-140c and 142-142c is set according to the bit width information BWS. Bit width information BWS designates any of 8-bit mode, 16-bit mode, 32-bit mode, and 64-bit mode.

図26は、主演算回路側制御部65のデータ転送制御を行う部分の構成を概略的に示す図である。図26において、主演算側制御部65は、転送状態を示すステータス情報を格納するステータスレジスタ162と、直交変換メモリTM0−TM3に対するアドレスMADDを生成する転送アドレス発生回路164と、これらの直交変換メモリTM0−TM3のアクセスを制御する転送制御回路166とを含む。   FIG. 26 is a diagram schematically showing a configuration of a portion that performs data transfer control of the main arithmetic circuit side control unit 65. In FIG. 26, the main operation side control unit 65 includes a status register 162 for storing status information indicating a transfer state, a transfer address generation circuit 164 for generating an address MADD for the orthogonal transformation memories TM0 to TM3, and these orthogonal transformation memories. And a transfer control circuit 166 for controlling access of TM0 to TM3.

転送アドレス発生回路164は、転送アドレスカウンタを含み、読出指示MRENのアサート時、ビット幅設定レジスタ160に格納されるビット幅情報に従って設定されるシーケンスで転送アドレスMADDを生成する。この転送アドレス発生回路164からの転送アドレスMADDは、ステータスレジスタ162の状態更新に従って更新される。また、読出指示MRENは、主演算回路から与えられる。   Transfer address generation circuit 164 includes a transfer address counter, and generates transfer address MADD in a sequence set according to the bit width information stored in bit width setting register 160 when read instruction MREN is asserted. The transfer address MADD from the transfer address generation circuit 164 is updated according to the status update of the status register 162. Read instruction MREN is given from the main arithmetic circuit.

転送制御回路166は、読出指示MRENのアサート時、転送アドレス発生回路164の生成する転送アドレスMADDとビット幅設定レジスタ160からのビット幅設定情報に従って、直交変換メモリTM0−TM3に対する転送イネーブル信号MRE0−MRE3と16ビット単位の転送マスク信号MDM0およびMDM1とを選択的に生成する。   When the read instruction MREN is asserted, the transfer control circuit 166, according to the transfer address MADD generated by the transfer address generation circuit 164 and the bit width setting information from the bit width setting register 160, transfers the transfer enable signal MRE0- to the orthogonal transformation memories TM0 to TM3. MRE3 and 16-bit unit transfer mask signals MDM0 and MDM1 are selectively generated.

主演算回路側制御部65は、さらに、データ転送クロック信号MTCLKをカウントして、メモリセルマットとの間のデータ転送用のアドレスを生成するマット転送アドレスカウンタ168と、64ビットバッファ68に対する更新データを生成するバッファ更新回路170と、64ビットバッファ68からのデータとデータバス55からのデータとに従って、主演算回路に対する64ビット転送データを生成する転送データ選択回路172を含む。   The main arithmetic circuit side control unit 65 further counts the data transfer clock signal MTCLK to generate an address for data transfer with the memory cell mat, and update data for the 64-bit buffer 68. And a transfer data selection circuit 172 for generating 64-bit transfer data for the main arithmetic circuit according to the data from the 64-bit buffer 68 and the data from the data bus 55.

バッファ更新回路170は、マット転送アドレスカウンタ168のカウント値WCNT[0]に従って、64ビットバッファ68の全ビットおよび32ビットの更新を選択的に実行する(交互に実行する)。転送データ選択回路172は、マット転送アドレスカウンタ168からのカウント値WCNT[0]に従って、64データバス55の32ビットデータと64ビットバッファメモリ68からの32ビットデータの組と、64ビットバッファメモリ68からの64ビットの一方を選択して、主演算回路に対する転送データを生成する。   The buffer update circuit 170 selectively executes (alternately executes) the update of all the bits and 32 bits of the 64-bit buffer 68 according to the count value WCNT [0] of the mat transfer address counter 168. The transfer data selection circuit 172 follows the count value WCNT [0] from the mat transfer address counter 168 and sets the 32-bit data of the 64 data bus 55 and the 32-bit data from the 64-bit buffer memory 68, and the 64-bit buffer memory 68. Is selected to generate transfer data for the main arithmetic circuit.

図27は、図26に示す転送アドレス発生回路164の構成の一例を示す図である。図27において、転送アドレス発生回路164は、データ転送サイクル数をカウントする6ビットの転送カウンタRCNTと、転送カウンタRCNTのカウントビットRCNT[2]を反転するインバータIV3と、転送カウンタRCNTの最下位ビットRCNT[0]を反転するインバータIV4と、ビット幅設定レジスタ160からビット幅設定情報BWSに従って、各データビット幅に応じてカウントビットの組合せを選択して転送アドレスMADDを生成するアドレス選択回路180を含む。このアドレス選択回路180によりカウントビットの並び替えを行なうことにより、正確に、データビット幅に応じたアドレスを生成することができる。   FIG. 27 is a diagram showing an example of the configuration of transfer address generation circuit 164 shown in FIG. In FIG. 27, the transfer address generation circuit 164 includes a 6-bit transfer counter RCNT that counts the number of data transfer cycles, an inverter IV3 that inverts the count bit RCNT [2] of the transfer counter RCNT, and the least significant bit of the transfer counter RCNT. An inverter IV4 that inverts RCNT [0], and an address selection circuit 180 that generates a transfer address MADD by selecting a combination of count bits according to each data bit width according to the bit width setting information BWS from the bit width setting register 160 Including. By rearranging the count bits by the address selection circuit 180, an address corresponding to the data bit width can be generated accurately.

アドレス選択回路180は、8ビットモード入力端子に、転送カウンタRCNTのカウントビットRCNT[!2,!0;5:3]を受ける。記号“!”は、カウントビットの反転値を意味し、8ビットモード時には、転送カウンタのカウントビットRCNT[2]の反転値、RCNT[0]の反転値、およびRCNT[5:3]が順次配列されて転送アドレスを生成する。8ビットモード時には、転送アドレスは、転送サイクルごとに、以下のように変化する:
24,16,24,16,8,0,8,0,25,17,25,17,…。
The address selection circuit 180 receives the count bit RCNT [! Of the transfer counter RCNT at the 8-bit mode input terminal. 2 ,! 0; 5: 3]. The symbol “!” Means an inverted value of the count bit. In the 8-bit mode, the inverted value of the count bit RCNT [2] of the transfer counter, the inverted value of RCNT [0], and RCNT [5: 3] are sequentially provided. Arranged to generate a forwarding address. In 8-bit mode, the transfer address changes as follows for each transfer cycle:
24, 16, 24, 16, 8, 0, 8, 0, 25, 17, 25, 17,.

すなわち、8ビットモード時においては、直交変換メモリの8ビットデータの最下位ビットからデータ0−512について順次読出して、データの転送を行なう。   That is, in the 8-bit mode, data 0-512 are sequentially read from the least significant bit of 8-bit data in the orthogonal transformation memory to transfer the data.

アドレス選択回路180は、16ビットモード入力端子に、転送カウンタRCNTのカウント値RCNT[!0;5:2]を受ける。このカウント値RCNT[!0;5:2]は、カウント値RCNT[0]の反転値およびRCNT[5:2]が順次配列された5ビットカウント値を示し、転送サイクルごとに、転送アドレスは以下のように変化する:
16,0,16,0,17,1,17,1,…。
The address selection circuit 180 receives the count value RCNT [!] Of the transfer counter RCNT at the 16-bit mode input terminal. 0; 5: 2]. This count value RCNT [! 0; 5: 2] indicates an inverted value of the count value RCNT [0] and a 5-bit count value in which RCNT [5: 2] are sequentially arranged, and the transfer address changes as follows for each transfer cycle. :
16, 0, 16, 0, 17, 1, 17, 1,.

すなわち、16ビットモードにおいては、16ビットデータの最下位ビットからデータ0−256について順次転送する。   That is, in the 16-bit mode, data 0-256 is sequentially transferred from the least significant bit of 16-bit data.

アドレス選択回路180は、さらに、32ビットおよび64ビットモードを示す32/64ビット入力端子に、転送カウンタRCNTの5ビットカウント値RCNT[4:0]を受ける。この場合、アドレスRCNT[4:0]は、転送サイクルごとに以下のように変化する:
0,1,2,…31,0,1,2…31。
Address selection circuit 180 further receives 5-bit count value RCNT [4: 0] of transfer counter RCNT at a 32 / 64-bit input terminal indicating 32-bit and 64-bit modes. In this case, the address RCNT [4: 0] changes as follows for each transfer cycle:
0, 1, 2, ... 31, 0, 1, 2, ... 31.

したがって、32ビットモードおよび64ビットモードにおいては、2つの直交変換メモリの組において、データ0−63の前半データおよび後半データが最下位ビットから転送される。   Therefore, in the 32-bit mode and the 64-bit mode, the first half data and the second half data of data 0-63 are transferred from the least significant bit in a set of two orthogonal transformation memories.

図28は、図26に示す転送制御回路166の構成の一例を概略的に示す図である。図28において、転送制御回路166は、転送カウンタRCNTの最上位カウントビットRCNT[5]を受けるインバータIV5と、直交変換メモリTM0−TM3それぞれに対して設けられる読出活性化回路182a−182dと、直交変換メモリTM0−TM3に共通に設けられる転送マスク発生回路184を含む。   FIG. 28 schematically shows an example of the configuration of transfer control circuit 166 shown in FIG. In FIG. 28, the transfer control circuit 166 includes an inverter IV5 that receives the most significant count bit RCNT [5] of the transfer counter RCNT, a read activation circuit 182a-182d provided for each of the orthogonal transformation memories TM0 to TM3, A transfer mask generation circuit 184 provided in common to conversion memories TM0 to TM3 is included.

これらの読出活性化回路182a−182dおよび転送マスク発生回路184は、直交変換メモリTM0−TM3から主演算回路のメモリセルマットへのデータ転送指示MRENのアサート時に、ビット幅設定情報BWSに従って対応のビットモードの入力に与えられた信号を選択して読出動作を活性化するリードイネーブル信号を生成する。これにより、データビット幅に応じたシーケンスで直交変換メモリTM0−TM3を活性化し、またデータ転送を活性化することができる。   These read activation circuits 182a-182d and transfer mask generation circuit 184 correspond to the bit corresponding to bit width setting information BWS when data transfer instruction MREN is asserted from orthogonal transformation memories TM0-TM3 to the memory cell mat of the main arithmetic circuit. A read enable signal for activating the read operation is selected by selecting a signal applied to the mode input. As a result, the orthogonal transform memories TM0 to TM3 can be activated in a sequence according to the data bit width, and data transfer can be activated.

読出活性化回路182aは、8/16ビットモード入力端子に、“0”の信号を受け、32ビットモード入力端子に、転送カウンタRCNTの最上位カウントビットRCNT[5]を受け、64ビットモード入力端子に、インバータIV5からの反転カウントビット/RCNT[5]を受け、直交変換メモリTM0に対する負論理のリードイネーブル信号/MRE0を生成する。   Read activation circuit 182a receives a "0" signal at the 8 / 16-bit mode input terminal, receives the most significant count bit RCNT [5] of transfer counter RCNT at the 32-bit mode input terminal, and receives a 64-bit mode input. The terminal receives the inverted count bit / RCNT [5] from the inverter IV5 and generates a negative logic read enable signal / MRE0 for the orthogonal transformation memory TM0.

読出活性化回路182bは、8/16ビットモード入力端子に、“0”の信号を受け、32ビットモード入力端子および64ビット入力端子に、カウント値RCNT[5]を受け、直交変換メモリTM1に対する負論理のリードイネーブル信号/MRE1を生成する。   Read activation circuit 182b receives a signal of "0" at the 8 / 16-bit mode input terminal, receives count value RCNT [5] at the 32-bit mode input terminal and the 64-bit input terminal, and outputs to orthogonal transform memory TM1. A negative logic read enable signal / MRE1 is generated.

読出活性化回路182cは、8/16ビットモード入力端子に、“0”の信号を受け、32ビットモード入力端子に、インバータIV5からの反転カウントビット/RCNT[5]を受け、64ビットモード入力端子に、カウント値RCNT[5]を受け、直交変換メモリTM2に対するリードイネーブル信号/MRE2を生成する。   Read activation circuit 182c receives a "0" signal at the 8 / 16-bit mode input terminal, receives the inverted count bit / RCNT [5] from inverter IV5 at the 32-bit mode input terminal, and receives the 64-bit mode input. The terminal receives the count value RCNT [5] and generates a read enable signal / MRE2 for the orthogonal transformation memory TM2.

読出活性化回路182dは、8/16ビットモード入力端子に、“0”の信号を受け、32ビットモード入力端子に反転カウントビット/RCNT[5]を受け、64ビットモード入力端子にカウントビットRCNT[5]を受け、直交変換メモリTM3に対するリードイネーブル信号/MRE3を生成する。   Read activation circuit 182d receives a "0" signal at the 8 / 16-bit mode input terminal, receives the inverted count bit / RCNT [5] at the 32-bit mode input terminal, and count bit RCNT at the 64-bit mode input terminal. In response to [5], the read enable signal / MRE3 for the orthogonal transform memory TM3 is generated.

転送マスク発生回路184は、8/16ビットモード入力端子に、カウント値RCNT[1]および/RCNT[1]を受け、32/64ビットモード入力端子に、“0”の信号を受け、上位ビット転送マスク信号MDM0および下位ビットマスク制御信号HDM1を生成する。8/16ビットモード時においては、これらの転送マスク信号MDM0およびMDM1が、カウントビットRCNT[1]および/RCNT[1]に従ってそれぞれ生成され、32ビットおよび64ビットモード時には、転送マスク信号MDM0およびMDM1は、“0”に設定され、直交変換メモリTM0−TM3の読出マスクは非活性状態に維持され、マスク動作は停止される。   Transfer mask generation circuit 184 receives count values RCNT [1] and / RCNT [1] at the 8 / 16-bit mode input terminal, receives a signal of “0” at the 32 / 64-bit mode input terminal, and receives the upper bit A transfer mask signal MDM0 and a lower bit mask control signal HDM1 are generated. In the 8 / 16-bit mode, these transfer mask signals MDM0 and MDM1 are generated according to the count bits RCNT [1] and / RCNT [1], respectively, and in the 32-bit and 64-bit modes, the transfer mask signals MDM0 and MDM1 Is set to “0”, the read mask of the orthogonal transformation memories TM0 to TM3 is maintained in an inactive state, and the mask operation is stopped.

図29は、図26に示すバッファ更新回路170および転送データ選択回路172の構成の一例を概略的に示す図である。図29においては、64ビットのバッファ68は、上位32ビットを格納する上位32ビット領域68Uと、下位32ビットの領域を格納する下位32ビット領域68Lを含む。   FIG. 29 schematically shows an example of the configuration of buffer update circuit 170 and transfer data selection circuit 172 shown in FIG. In FIG. 29, the 64-bit buffer 68 includes an upper 32-bit area 68U for storing upper 32 bits and a lower 32-bit area 68L for storing lower 32 bits.

バッファ更新回路170は、マット転送アドレスカウンタ168からのカウント値WCNT[0]とビット幅設定レジスタ160からの32ビットおよび64ビットデータ幅を示す32/64ビット幅指示信号BWS32/64とに従ってバスの接続を切換えるバス切換回路190を含む。バス切換回路190は、32/64ビット幅指示信号BWS32/64の活性化時、カウント値WCNT[0]の値に係わらず64ビットバス55からの64ビットデータを通過させる。一方、バス切換回路190は、32/64ビット幅指示信号BWS32/64の非活性化時、すなわち8ビットモードおよび16ビットモードのときには、マット転送アドレスカウンタ168からのカウント値WCNT[0]に従って64ビットデータバス55上の64ビットデータおよび32ビットサブデータバス150SLおよびバッファ68の下位32ビット領域68Lからの32ビットのデータの組の一方を選択して64ビットバッファ68へ伝達する。   The buffer update circuit 170 receives the bus value according to the count value WCNT [0] from the mat transfer address counter 168 and the 32 / 64-bit width instruction signal BWS32 / 64 indicating the 32-bit and 64-bit data widths from the bit width setting register 160. A bus switching circuit 190 for switching the connection is included. The bus switching circuit 190 passes 64-bit data from the 64-bit bus 55 regardless of the value of the count value WCNT [0] when the 32 / 64-bit width instruction signal BWS32 / 64 is activated. On the other hand, bus switching circuit 190 operates in accordance with count value WCNT [0] from mat transfer address counter 168 when 32/64 bit width instruction signal BWS32 / 64 is inactive, that is, in the 8-bit mode and 16-bit mode. One of the set of 32-bit data from the 64-bit data on the bit data bus 55 and the 32-bit sub data bus 150SL and the lower 32-bit area 68L of the buffer 68 is selected and transmitted to the 64-bit buffer 68.

サブデータバス150SLは、64ビットデータバス55を構成する16ビットデータバス150a−150d各々の下位8ビットのバスで構成される。バス切換回路190は、カウント値WCNT[0]が“1”のときには、下位32ビット領域68Lからの32ビットを上位側に設定し、32ビットデータバス150SLからの32ビットを下位32ビット領域68Lに並べ替えて、64ビットバッファ68へ転送する。これにより、バッファ68におけるデータの更新および並べ替えを実行する。   The sub data bus 150SL is composed of lower 8-bit buses of the 16-bit data buses 150a to 150d constituting the 64-bit data bus 55. When the count value WCNT [0] is “1”, the bus switching circuit 190 sets the 32 bits from the lower 32-bit area 68L to the upper side, and sets the 32 bits from the 32-bit data bus 150SL to the lower 32-bit area 68L. To the 64-bit buffer 68. Thereby, updating and rearranging of data in the buffer 68 are executed.

転送データ選択回路172は、転送アドレスカウンタ168からのカウント値WCNT[0]と64ビット幅指示信号BWS64とに従ってバッファ68からの64ビットデータおよびサブデータバス150SU上の32ビットと64ビットバッファ68の上位32ビット領域68Uからの32ビットデータとの組の一方を選択して主演算回路I/Fへ伝達するバス切換回路192を含む。サブデータバス150SUは、16ビットデータバス150a−150d各々の上位8ビットのデータバスで構成される。   The transfer data selection circuit 172 receives the 64-bit data from the buffer 68 according to the count value WCNT [0] from the transfer address counter 168 and the 64-bit width instruction signal BWS64, and the 32-bit and 64-bit buffers 68 on the sub data bus 150SU. It includes a bus switching circuit 192 that selects one of the sets of 32-bit data from the upper 32-bit area 68U and transmits it to the main arithmetic circuit I / F. The sub data bus 150SU is composed of a data bus of upper 8 bits of each of the 16-bit data buses 150a to 150d.

バス切換回路192は、カウント値WCNT[0]が“1”のときには、バッファ68の上位32ビット領域68Uからの32ビットデータと32ビットサブデータバス150SUのデータとを選択する。バス切換回路192においては、上位32ビット領域68Lからのデータとサブデータバス150SUからのデータが、番号順に連続的に整列するようにそのバス位置が配線により切換えられてもよく、また、データバスのデータを配置を変更することなく転送してもよい。主演算回路内のメモリセルマットにおいてはエントリごとに演算処理が実行されるため、各エントリに演算対象のデータの組が配置されれば、特に、問題は生じない。   When the count value WCNT [0] is “1”, the bus switching circuit 192 selects 32-bit data from the upper 32-bit area 68U of the buffer 68 and data on the 32-bit sub data bus 150SU. In the bus switching circuit 192, the bus position may be switched by wiring so that the data from the upper 32-bit area 68L and the data from the sub-data bus 150SU are continuously arranged in numerical order, and the data bus The data may be transferred without changing the arrangement. In the memory cell mat in the main arithmetic circuit, arithmetic processing is executed for each entry. Therefore, if a set of data to be calculated is arranged in each entry, there is no particular problem.

32ビットおよび64ビット幅指示信号BWS32/64が活性状態にあり、転送データのビット幅が32ビットまたは64ビットの場合には、バス切換回路192は、64ビットバッファ68からの64ビットデータを選択して主演算回路I/Fへ転送する。   When 32-bit and 64-bit width instruction signal BWS32 / 64 is in the active state and the bit width of the transfer data is 32 bits or 64 bits, bus switching circuit 192 selects 64-bit data from 64-bit buffer 68. Then, the data is transferred to the main arithmetic circuit I / F.

なお、直交変換回路および主演算回路の間では双方向にデータが転送される。従って、このバス切換回路190および192を例えばCMOSトランスミッションゲートなどの双方向のデータ転送回路で構成し、64ビットバッファを双方向のレジスタで構成する。双方向のレジスタのデータ転送方向を直交変換回路と主演算回路の間のデータ転送方向に従って設定する。次に、各転送モードの動作について説明する。   Note that data is transferred bidirectionally between the orthogonal transform circuit and the main arithmetic circuit. Therefore, the bus switching circuits 190 and 192 are constituted by bidirectional data transfer circuits such as CMOS transmission gates, and the 64-bit buffer is constituted by bidirectional registers. The data transfer direction of the bidirectional register is set according to the data transfer direction between the orthogonal transformation circuit and the main arithmetic circuit. Next, the operation in each transfer mode will be described.

A:8ビットモード
図30は、転送データが8ビット幅の8ビットモード時のバスセレクタ140a−140cおよび142aおよび142bの接続経路を示す図である。これらのバスセレクタ140a−140cおよび142a−142cは、8/16ビット幅指示信号BWS8/16に従ってその接続経路が設定される。このビット幅指示信号BWS8/16は、図26に示すビット幅設定レジスタ160から与えられるビット幅情報に含まれる。
A: 8-bit mode FIG. 30 is a diagram showing a connection path of bus selectors 140a to 140c and 142a and 142b in the 8-bit mode in which the transfer data is 8 bits wide. These bus selectors 140a-140c and 142a-142c have their connection paths set in accordance with 8 / 16-bit width instruction signal BWS8 / 16. The bit width instruction signal BWS8 / 16 is included in the bit width information provided from the bit width setting register 160 shown in FIG.

バスセレクタ140aは、直交変換メモリTM0の下位16ビットポートLを、16ビットデータバス150aに結合する。この直交変換メモリTM0の上位16ビットポートUは、同様に、16ビットデータバス150aに結合される。バスセレクタ140bおよび1420cは、直交変換メモリTM2の上位16ビットポートUおよび下位16ビットポートLを、それぞれ、16ビットデータバス150cに結合する。バスセレクタ142aおよび142bは、直交変換メモリTM1の上位16ビットポートUおよび下位16ビットポートLを、ともに、16ビットデータバス150bに結合する。バスセレクタ140cは、直交変換メモリTM3の上位16ビットポートUを、16ビットデータバス150dに結合する。直交変換メモリTM3の下位16ビットポートLは、常時、16ビットデータバス150dに結合される。このバスセレクタの接続により、16ビットデータバス150a−150dに、転送データが転送順序に従って配列される。   The bus selector 140a couples the lower 16-bit port L of the orthogonal transformation memory TM0 to the 16-bit data bus 150a. Similarly, the upper 16-bit port U of the orthogonal transformation memory TM0 is coupled to the 16-bit data bus 150a. Bus selectors 140b and 1420c couple upper 16-bit port U and lower 16-bit port L of orthogonal transformation memory TM2 to 16-bit data bus 150c, respectively. Bus selectors 142a and 142b couple both upper 16-bit port U and lower 16-bit port L of orthogonal transform memory TM1 to 16-bit data bus 150b. The bus selector 140c couples the upper 16-bit port U of the orthogonal transformation memory TM3 to the 16-bit data bus 150d. The lower 16-bit port L of the orthogonal transformation memory TM3 is always coupled to the 16-bit data bus 150d. By the connection of the bus selector, transfer data is arranged on the 16-bit data buses 150a to 150d according to the transfer order.

この8ビットモードにおいては、図28に示す読出活性化回路182a−182dは、それぞれ、リードイネーブル信号/MRE0−/MRE3を、読出指示MRENのアサート時に常時活性状態に設定する。したがって、直交変換メモリTM0−TM3に対し共通にデータの読出が行なわれる。しかしながら、転送マスク発生回路184により、データ転送マスク信号MDM0およびMDM1が16ビット単位でデータ転送にマスクをかけるため、直交変換メモリTM0−TM3において、16ビット単位でデータ読出にマスクがかけられる。   In this 8-bit mode, read activation circuits 182a-182d shown in FIG. 28 set read enable signals / MRE0- / MRE3 to the active state at all times when read instruction MREN is asserted. Therefore, data is read commonly to the orthogonal transformation memories TM0 to TM3. However, since data transfer mask signals MDM0 and MDM1 mask data transfer in units of 16 bits by transfer mask generation circuit 184, data reading is masked in units of 16 bits in orthogonal transform memories TM0 to TM3.

図31は、この8ビットモード時における直交変換メモリTM0−TM3の格納データの配列を模式的に示す図である。図31に示すように、8ビットモード時においては、直交変換メモリTM0に、8ビットデータ8k、8k+1が格納され、直交変換メモリTM1に、8ビットデータ8k+2、8k+3が格納される。直交変換メモリTM2に、8ビットデータ8k+4、8k+5が格納され、直交変換メモリTM3には、8ビットデータ8k+6,8k+7が格納される。ここで、kは、0から63である。   FIG. 31 is a diagram schematically showing an arrangement of data stored in the orthogonal transformation memories TM0 to TM3 in the 8-bit mode. As shown in FIG. 31, in the 8-bit mode, 8-bit data 8k and 8k + 1 are stored in the orthogonal transformation memory TM0, and 8-bit data 8k + 2 and 8k + 3 are stored in the orthogonal transformation memory TM1. 8-bit data 8k + 4 and 8k + 5 are stored in the orthogonal transformation memory TM2, and 8-bit data 8k + 6 and 8k + 7 are stored in the orthogonal transformation memory TM3. Here, k is 0 to 63.

図30に示すバスセレクタ140a−140cおよび142a−142cの接続経路により、直交変換メモリTM0が、16ビットバス150aとの間で16ビットデータを転送し、直交変換メモリTM1が、16ビットバス150bとの間で16ビットデータを転送し、直交変換メモリTM2が、16ビットバス150cとの間で16ビットデータを転送し、直交変換メモリTM3が、16ビットバス150dとの間で16ビットデータを転送する。したがって、各直交変換メモリTM0−TM3において16ビットデータの転送を行なうためには、データ転送マスク信号MDM0およびMDM1が直交変換メモリTM0−TM3に共通に与えられ、16ビット単位でデータのアクセスが制御される。   Through the connection path of bus selectors 140a-140c and 142a-142c shown in FIG. 30, the orthogonal transformation memory TM0 transfers 16-bit data to and from the 16-bit bus 150a, and the orthogonal transformation memory TM1 is connected to the 16-bit bus 150b. 16-bit data is transferred between them, the orthogonal transformation memory TM2 transfers 16-bit data to and from the 16-bit bus 150c, and the orthogonal transformation memory TM3 transfers 16-bit data to and from the 16-bit bus 150d. To do. Therefore, in order to transfer 16-bit data in each orthogonal transform memory TM0 to TM3, data transfer mask signals MDM0 and MDM1 are commonly applied to orthogonal transform memories TM0 to TM3, and data access is controlled in units of 16 bits. Is done.

図32は、8ビットモード時におけるデータ転送ステータスの遷移を示す図である。ステータスIDLEは、待機状態であり、転送指示(読出指示MREN)が与えられるまで、データアクセスを停止する。ステータスST0は、データ転送指示が与えられると、直交変換メモリTM0−TM3からデータの読出を行なう。この場合、直交変換メモリTM0−TM3から読出されたデータは、64ビットバッファ68に格納される。   FIG. 32 is a diagram showing transition of the data transfer status in the 8-bit mode. Status IDLE is in a standby state, and stops data access until a transfer instruction (read instruction MREN) is given. Status ST0 reads data from orthogonal transformation memories TM0 to TM3 when a data transfer instruction is given. In this case, the data read from the orthogonal transformation memories TM0 to TM3 is stored in the 64-bit buffer 68.

ステータスST1は、直交変換メモリTM0−TM3および64ビットバッファからのデータ読出および主演算回路ブロックへのデータの転送を行なう。このステータスST1においては、直交変換メモリから読出されたデータの半分が64ビットバッファ68へ格納され、残りの半分の直交変換メモリからの読出データと64ビットバッファ68の格納データが主演算回路へ与えられる。このステータスST0からステータスST1への遷移時に、転送カウンタRCNTのカウント値が1増分される。前述のように、8ビットモード時においては、カウント値RCNT[!2,!0;5:3]がアドレスとして利用される。従って、最初のサイクルにおいては、アドレス24が直交変換メモリTM0−TM3において指定される。   Status ST1 reads data from orthogonal transformation memories TM0 to TM3 and the 64-bit buffer and transfers data to the main arithmetic circuit block. In this status ST1, half of the data read from the orthogonal transformation memory is stored in the 64-bit buffer 68, and the read data from the remaining half of the orthogonal transformation memory and the data stored in the 64-bit buffer 68 are applied to the main arithmetic circuit. It is done. At the time of transition from status ST0 to status ST1, the count value of the transfer counter RCNT is incremented by one. As described above, in the 8-bit mode, the count value RCNT [! 2 ,! 0; 5: 3] is used as the address. Accordingly, in the first cycle, the address 24 is designated in the orthogonal transformation memories TM0 to TM3.

ステータスST2は、64ビットバッファメモリから主演算回路ブロックへのデータ読出であり、このステータスST2においては、64ビットバッファメモリに格納された64ビットデータが主演算回路へ転送される。これにより、1つの64個のデータの1ビットの主演算回路へのデータの転送が完了する。この動作を、データの各ビットごとに繰返し実行する。ステータスST1からステータスST2の間で、マット転送アドレスカウンタ168(図26参照)のカウント値WCNT[0]を更新する。   The status ST2 is data reading from the 64-bit buffer memory to the main arithmetic circuit block. In the status ST2, 64-bit data stored in the 64-bit buffer memory is transferred to the main arithmetic circuit. This completes the transfer of the data of one 64 pieces of data to the 1-bit main arithmetic circuit. This operation is repeated for each bit of data. The count value WCNT [0] of the mat transfer address counter 168 (see FIG. 26) is updated between the status ST1 and the status ST2.

図33は、ステータスST0のデータの流れを模式的に示す図である。このステータスST0においては、データ転送マスク信号MDM0およびMDM1に従って直交変換メモリTM0−TM3の上位または下位の16ビットの転送にマスクがかけられる。図33においては、データ転送マスク信号MDM0が“0”であり、また、データ転送マスク信号MDM1が“1”であり、マスクをかける状態に設定される場合を一例として示す。   FIG. 33 is a diagram schematically showing the flow of data of status ST0. In this status ST0, the transfer of the upper 16 bits or lower 16 bits of the orthogonal transformation memories TM0 to TM3 is masked according to the data transfer mask signals MDM0 and MDM1. FIG. 33 shows an example in which the data transfer mask signal MDM0 is “0” and the data transfer mask signal MDM1 is “1”, and the masking state is set.

この場合、直交変換メモリTM0−TM3において、メモリブロックBKaの上位16ビットのデータがそれぞれ16ビットデータバス150a−150dに読出される。これらのデータバス150a−150dに読出されたデータは、マット転送アドレスカウンタのカウント値WCNT[0]が“0”であるため、図29に示すバス切換回路190により64ビットバッファ68に格納される。このとき、64ビットバッファ68の格納データは、ステータスST2においてバス切換回路192により選択されて主演算回路に転送される。   In this case, in the orthogonal transformation memories TM0 to TM3, the upper 16-bit data of the memory block BKa is read to the 16-bit data buses 150a to 150d, respectively. The data read to these data buses 150a to 150d is stored in the 64-bit buffer 68 by the bus switching circuit 190 shown in FIG. 29 because the count value WCNT [0] of the mat transfer address counter is “0”. . At this time, the data stored in the 64-bit buffer 68 is selected by the bus switching circuit 192 in the status ST2 and transferred to the main arithmetic circuit.

したがって、ステータスST0においては、直交変換メモリTM0−TM3から読出されたデータは、主演算回路ブロックへは転送されず、64ビットバッファへ格納され、直行変換メモリからの読出データ自体は、主演算回路へは転送されない。   Therefore, in the status ST0, the data read from the orthogonal transformation memories TM0 to TM3 is not transferred to the main arithmetic circuit block, but is stored in the 64-bit buffer, and the read data from the direct conversion memory itself is the main arithmetic circuit. Is not forwarded to.

図34は、ステータスST1におけるデータの流れを模式的に示す図である。ステータスST1において、ステータスST0からの遷移時に、転送アドレスカウンタRCNTのカウント値が1更新される。8ビットモード時においては、カウント値RCNT[!2,!0;5:3]がアドレスとして利用され、ステータスST0においてアドレス24が指定されると、このステータスST1においては、アドレス16が指定される。この場合、メモリブロックBKbが、直交変換メモリTM0−TM3それぞれにおいてアドレス指定されて、各直交変換メモリにおいてデータの読出が実行される。この場合においても、カウントビットRCNT[1]は、“0”であり、転送マスク信号MDM0およびMDM1は、それぞれ“0”および“1”であり、直交変換メモリTM0−TM3の上位16ビットの領域、すなわちX方向のアドレス0から15の領域のデータの読出が実行される。   FIG. 34 is a diagram schematically showing the flow of data in status ST1. In the status ST1, at the time of transition from the status ST0, the count value of the transfer address counter RCNT is updated by 1. In 8-bit mode, the count value RCNT [! 2 ,! 0; 5: 3] is used as an address, and when address 24 is specified in status ST0, address 16 is specified in status ST1. In this case, the memory block BKb is addressed in each of the orthogonal transform memories TM0 to TM3, and data reading is executed in each orthogonal transform memory. Also in this case, the count bit RCNT [1] is “0”, the transfer mask signals MDM0 and MDM1 are “0” and “1”, respectively, and the upper 16-bit area of the orthogonal transformation memories TM0 to TM3 That is, reading of data in the area of addresses 0 to 15 in the X direction is executed.

転送アドレスカウンタ168(図26参照)のカウント値WCNT[0]が更新され1となる。したがって、この場合には、図26に示すバス切換回路190はこのデータバス150a−150dの各々の下位8ビットのデータとバッファ68の下位領域に格納されるデータを選択してバッファ68へ格納する。したがってバッファ68へは、先のサイクルに書込まれた32ビットデータが上位16ビット領域に格納され、この直交変換メモリTM0−TM3のX方向のアドレス8から15の領域のデータがバッファ68の下位32ビット領域に格納される。   The count value WCNT [0] of the transfer address counter 168 (see FIG. 26) is updated to “1”. Therefore, in this case, the bus switching circuit 190 shown in FIG. 26 selects the lower 8-bit data of each of the data buses 150 a to 150 d and the data stored in the lower area of the buffer 68 and stores them in the buffer 68. . Therefore, the 32-bit data written in the previous cycle is stored in the upper 16-bit area in the buffer 68, and the data in the area of addresses 8 to 15 in the X direction of the orthogonal transformation memories TM0 to TM3 is stored in the lower half of the buffer 68. Stored in a 32-bit area.

このバッファ68へのデータ格納と並行して、バッファ68の上位32ビットデータと、データバス150UL上のデータ、すなわちデータバス150a−150dそれぞれの上位8ビットのデータ、すなわち直交変換メモリTM0−TM3のX方向のアドレス0から7の上位8ビットのデータが主演算回路へ転送される。   In parallel with the data storage in the buffer 68, the upper 32-bit data of the buffer 68 and the data on the data bus 150UL, that is, the upper 8-bit data of the data buses 150a to 150d, that is, the orthogonal transformation memories TM0 to TM3 The upper 8-bit data of addresses 0 to 7 in the X direction is transferred to the main arithmetic circuit.

ステータスST2は、バッファ68からの64ビットデータが主演算回路へ転送される状態であり、直交変換メモリが、次いで、ステータスIDLEへ復帰する。   The status ST2 is a state in which 64-bit data from the buffer 68 is transferred to the main arithmetic circuit, and the orthogonal transformation memory then returns to the status IDLE.

次のステータスST0においては、転送アドレスカウンタRCNTのカウントビットRCNT[1]が、“1”となり、図35に示すように、転送マスク指示信号MDM0およびMHDM1がそれぞれ“1”および“0”となる。この場合には、直交変換メモリTM0−TM3のX方向のアドレス0から15の領域にアクセスに対しマスクがかけられ、アドレス16から31の領域のデータの転送が実行される。転送動作は、先の図33および図34に示す動作と同じ動作が繰返される。   In the next status ST0, the count bit RCNT [1] of the transfer address counter RCNT becomes “1”, and as shown in FIG. 35, the transfer mask instruction signals MDM0 and MHDM1 become “1” and “0”, respectively. . In this case, the area of addresses 0 to 15 in the X direction of the orthogonal transformation memories TM0 to TM3 is masked for access, and data in the areas of addresses 16 to 31 is transferred. In the transfer operation, the same operations as those shown in FIGS. 33 and 34 are repeated.

したがって、直交変換メモリTM0−TM3に格納されるデータを、偶数データ、奇数データの最下位ビットから交互に読出し、データ0からデータ511の最下位ビットをすべて転送した後に、次いで再びデータ0からデータ511の次の上位ビット[1]の転送を実行する。   Therefore, the data stored in the orthogonal transformation memories TM0 to TM3 are alternately read from the least significant bit of the even data and the odd data, and all the least significant bits of the data 0 to the data 511 are transferred, and then the data from the data 0 to the data again. The next upper bit [1] of 511 is transferred.

図36は、8ビットモード時におけるデータの直交変換メモリ、64ビットバッファおよび主演算回路インターフェイス(I/F)へ接続されるインタフェース(I/F)バスへのデータの流れを示す図である。   FIG. 36 is a diagram showing the flow of data to the interface (I / F) bus connected to the orthogonal transform memory of data, the 64-bit buffer, and the main arithmetic circuit interface (I / F) in the 8-bit mode.

図36において、各データ転送サイクルごとに、マット転送アドレスカウンタのカウント値WCNT[0]が“0”および“1”を繰返す。マットアドレスMADDは、24、16、24、16,25,17、…のシーケンスで変化する。8ビットモードにおいては、図36に示すように、転送サイクルのカウント値、すなわち転送アドレスカウンタのカウントビットRCNT[1]の値に従って、転送マスク指示信号MDM0およびMDM1が、2転送サイクルごとに、“0”および“1”を繰返す。   In FIG. 36, the count value WCNT [0] of the mat transfer address counter repeats “0” and “1” for each data transfer cycle. The mat address MADD changes in the sequence of 24, 16, 24, 16, 25, 17,. In the 8-bit mode, as shown in FIG. 36, according to the count value of the transfer cycle, that is, the value of the count bit RCNT [1] of the transfer address counter, the transfer mask instruction signals MDM0 and MDM1 are “ Repeat “0” and “1”.

まず、サイクル1において、直交変換メモリTM0−TM3から、アドレス24に従って、偶数データD0−D126の最下位ビットD0[0]−D126[0]が読出される。このサイクル1は、ステータスST0であり、直交変換メモリTM0−TM3から読みされたデータは、64ビットバッファ68に全て格納される。   First, in cycle 1, the least significant bits D0 [0] to D126 [0] of the even data D0 to D126 are read from the orthogonal transformation memories TM0 to TM3 according to the address 24. This cycle 1 is the status ST0, and all the data read from the orthogonal transformation memories TM0 to TM3 are stored in the 64-bit buffer 68.

サイクル2において、カウント値WCNT[0]が“1”となり、アドレスMADDが16となる。直交変換メモリTM0−TM3において、奇数データD1−D127の最下位ビットD1[0]−D127[0]が、アドレス16から読出される。バッファ68に対しては、32ビットの奇数データの最下位ビットD65[0]−D127[0]により、偶数データの最下位ビットデータD0[0]−D62[0]が置換される。このとき、64ビットバッファからは、既にデータビットD0[0]−D62[0]が読出されており、インタフェースバスへは、64ビットバッファ68からの偶数データの最下位ビットビットD0[0]−D62[0]および直交変換メモリTM0−TM3から読出された奇数データの最下位ビットD1[0]−D63[0]が、バス切換回路192により出力される。この転送サイクル1は、ステータスST1である。   In cycle 2, the count value WCNT [0] becomes “1” and the address MDD becomes 16. In the orthogonal transformation memories TM0 to TM3, the least significant bits D1 [0] to D127 [0] of the odd data D1 to D127 are read from the address 16. For the buffer 68, the least significant bit data D0 [0] -D62 [0] of even data is replaced by the least significant bits D65 [0] -D127 [0] of odd data of 32 bits. At this time, the data bits D0 [0] -D62 [0] have already been read from the 64-bit buffer, and the least significant bit bits D0 [0]-of the even data from the 64-bit buffer 68 are read to the interface bus. D62 [0] and the least significant bits D1 [0] -D63 [0] of the odd data read from the orthogonal transformation memories TM0 to TM3 are output by the bus switching circuit 192. This transfer cycle 1 is status ST1.

サイクル3において、再びカウント値WCNT[0]が“0”となり、またアドレスMADDが、24となる。この場合、転送アドレスカウントビットRCNT[1]に従ってデータ転送マスク信号MDM0およびMDM1がそれぞれ“1”および“0”となる。したがって、直交変換メモリTM0−TM3からは、下位16ビット領域の偶数データの最下位ビットD128[0]−D256[0]が読出され、64ビットバッファ68に格納される。このとき、64ビットバッファ68の格納する偶数データのビットD64[0]−D126[0]および奇数データのビットD65[0]−D127[0]が、バス切換回路により選択されてインターフェイスバス上に転送される。この転送サイクル3は、ステータスST2である。   In cycle 3, the count value WCNT [0] becomes “0” again and the address MADD becomes 24. In this case, data transfer mask signals MDM0 and MDM1 are set to “1” and “0”, respectively, in accordance with transfer address count bit RCNT [1]. Therefore, the least significant bits D128 [0] -D256 [0] of the even data in the lower 16-bit area are read from the orthogonal transformation memories TM0 to TM3 and stored in the 64-bit buffer 68. At this time, the even data bits D64 [0] -D126 [0] and the odd data bits D65 [0] -D127 [0] stored in the 64-bit buffer 68 are selected on the interface bus by the bus switching circuit. Transferred. This transfer cycle 3 is status ST2.

以降、この動作が繰返し実行される。すなわち、64ビットバッファへの書込については、バッファの全体の更新、バッファの半分の更新を繰返し実行し、一方、64ビットバッファからの読出については、64ビットバッファ全体の読出および64ビットバッファの半分の更新対象のデータの32ビットと直交変換メモリTM0−TM3から読出されたデータの32ビットデータの読出を繰返し実行する。   Thereafter, this operation is repeatedly executed. That is, for writing to the 64-bit buffer, the entire buffer is updated and half of the buffer is updated repeatedly, while for reading from the 64-bit buffer, the entire 64-bit buffer is read and the 64-bit buffer is read. Reading of half of the 32 bits of data to be updated and 32 bits of data read from the orthogonal transformation memories TM0 to TM3 are repeatedly executed.

サイクル64において、直交変換メモリTM0−TM3のアドレス7の奇数データの最上位ビットD385[7]−D511[7]が読出される。このサイクル64においては、ステータスST1であり、64ビットバッファ68の半分の領域の更新が行なわれ、64ビットバッファへ、アドレス7の奇数データD449−D511の最上位ビットD449[7]−D511[7]が格納される。バッファ68においては、非更新データとして、偶数データの最上位ビットD448[7]−D510[7]が再格納される。   In cycle 64, the most significant bits D385 [7] -D511 [7] of the odd-numbered data at address 7 of the orthogonal transformation memories TM0 to TM3 are read. In this cycle 64, the status ST1 is reached, the half of the 64-bit buffer 68 is updated, and the most significant bits D449 [7] -D511 [7 of the odd-numbered data D449-D511 at the address 7 are updated to the 64-bit buffer. ] Is stored. In the buffer 68, the most significant bits D448 [7] -D510 [7] of even data are re-stored as non-updated data.

この64ビットバッファへのデータの格納と並行して、また、偶数データD384−D446の最上位ビットD384[7]−D446[7]および64ビットバッファの更新対象のデータビットD385[7]−D447[7]が、インターフェイスバス上に読出される。   In parallel with the storage of data in the 64-bit buffer, the most significant bits D384 [7] -D446 [7] of the even-numbered data D384-D446 and the data bits D385 [7] -D447 to be updated in the 64-bit buffer. [7] is read on the interface bus.

サイクル65において、64ビットバッファの格納する偶数データの最上位ビットD448[7]−D510[7]および奇数データの最上位ビットD449[7]−D511[7]を読出すことにより、すべてのデータの転送が完了する。   In cycle 65, all the data are read by reading the most significant bits D448 [7] -D510 [7] of the even data stored in the 64-bit buffer and the most significant bits D449 [7] -D511 [7] of the odd data. Transfer is complete.

したがって、バッファ68に対し先読込を行なうため、1サイクルのレイテンシが生じるものの、64アドレス更新で読出された512個の8ビットデータを、65サイクルですべて転送することができる。   Therefore, since pre-reading is performed with respect to the buffer 68, although one cycle of latency occurs, 512 8-bit data read by updating 64 addresses can be transferred in 65 cycles.

B:16ビットモード
16ビットモードにおいては、直交変換メモリTM0−TM3に格納されるデータのビット幅が、8ビットモード時と異なるだけである。したがって、バス接続は、8ビットモード時と同じであり、またリードイネーブル信号/MRE0−/MRE3と、転送マスク信号MDM0およびMDM1は、8ビットモード時と同じ態様で生成される。単に、読出転送アドレスMADDが、カウント値RCNT[!0;5:2]に従って生成されるため、読出アドレスが、16、0、16、0、17、1、…のシーケンスで生成されるだけであり、メモリセルのデータの転送態様は8ビットモードと同じである。また、この16ビットモードにおいても、65サイクルで、256個の16ビットデータをすべて転送することができる。
B: 16-bit mode In the 16-bit mode, the bit width of data stored in the orthogonal transformation memories TM0 to TM3 is only different from that in the 8-bit mode. Therefore, the bus connection is the same as in the 8-bit mode, and read enable signals / MRE0- / MRE3 and transfer mask signals MDM0 and MDM1 are generated in the same manner as in the 8-bit mode. The read transfer address MADD is simply the count value RCNT [! 0; 5: 2], the read address is generated only in the sequence of 16, 0, 16, 0, 17, 1,..., And the data transfer mode of the memory cell is an 8-bit mode. Is the same. Also in this 16-bit mode, all 256 pieces of 16-bit data can be transferred in 65 cycles.

C:32ビットモード
図37は、32ビットモード時の直交変換メモリTM0−TM3と64ビットデータバス55の接続を概略的に示す図である。図37において、バスセレクタ140aは、32ビット幅指定信号BWS3に従って直交変換メモリTM0の下位16ビットポートLを、16ビットデータバス150bに結合する。バスセレクタ140bおよび142cは、それぞれ、直交変換メモリTM2の上位16ビットポートUおよび下位16ビットポートLを、それぞれ16ビットデータバス150aおよび150bに結合する。
C: 32-bit Mode FIG. 37 is a diagram schematically showing the connection between the orthogonal transformation memories TM0 to TM3 and the 64-bit data bus 55 in the 32-bit mode. In FIG. 37, the bus selector 140a couples the lower 16-bit port L of the orthogonal transformation memory TM0 to the 16-bit data bus 150b in accordance with the 32-bit width designation signal BWS3. Bus selectors 140b and 142c couple upper 16-bit port U and lower 16-bit port L of orthogonal transformation memory TM2 to 16-bit data buses 150a and 150b, respectively.

バスセレクタ142aおよび142bは、それぞれ、32ビット幅指定信号BWS32に従って、直交変換メモリTM1の上位16ビットポートUおよび下位16ビットポートLを、それぞれ16ビットデータバス150cおよび150dに結合する。セレクタ140cは、32ビット幅指定信号BWS32に従って直交変換メモリTM3の上位16ビットポートUを、16ビットデータバス150cに結合する。   Bus selectors 142a and 142b couple upper 16-bit port U and lower 16-bit port L of orthogonal transformation memory TM1 to 16-bit data buses 150c and 150d, respectively, according to 32-bit width designation signal BWS32. The selector 140c couples the upper 16-bit port U of the orthogonal transformation memory TM3 to the 16-bit data bus 150c according to the 32-bit width designation signal BWS32.

直交変換メモリTM0の上位16ビットポートUは、16ビットデータバス150aに結合され、直交変換メモリTM3の下位16ビットポートLは、16ビットデータバス150dに結合される。   The upper 16-bit port U of the orthogonal transformation memory TM0 is coupled to the 16-bit data bus 150a, and the lower 16-bit port L of the orthogonal transformation memory TM3 is coupled to the 16-bit data bus 150d.

図29に示すように、32ビットモード時においては、バッファ更新回路170内のバス切換回路190は、64ビットデータバス55からの64ビットバッファ68に転送し、転送データ選択回路172内のバス切換回路192も、64ビットバッファ68からの64ビットデータを主演算回路インターフェイス(I/F)へ転送する。したがって、このデータバス55上に伝達された64ビットデータは、バッファ68に一旦格納された後、主演算回路I/Fへ転送される。   As shown in FIG. 29, in the 32-bit mode, the bus switching circuit 190 in the buffer update circuit 170 transfers the data from the 64-bit data bus 55 to the 64-bit buffer 68, and the bus switching in the transfer data selection circuit 172. The circuit 192 also transfers 64-bit data from the 64-bit buffer 68 to the main arithmetic circuit interface (I / F). Therefore, the 64-bit data transmitted on the data bus 55 is temporarily stored in the buffer 68 and then transferred to the main arithmetic circuit I / F.

図38は、32ビットモードにおけるアクセスシーケンスを模式的に示す図である。リードイネーブル信号/MRE0および/MRE1は、それぞれ、転送アドレスカウンタRCNTの最上位ビットRCNT[5]に従って生成され、リードイネーブル信号/MRE2および/MRE3は、このカウント値RCNT[5]の反転値に従って生成される(図28参照)。読出アドレスMADDは、下位のカウントビットRCNT[4:0]に従って生成される(図27参照)。 また、転送マスク信号MDM0およびMDM1は、32ビットモード時においては、ともに非活性状態の“0”に設定される。   FIG. 38 schematically shows an access sequence in the 32-bit mode. The read enable signals / MRE0 and / MRE1 are generated according to the most significant bit RCNT [5] of the transfer address counter RCNT, and the read enable signals / MRE2 and / MRE3 are generated according to the inverted value of the count value RCNT [5]. (See FIG. 28). The read address MADD is generated according to the lower count bits RCNT [4: 0] (see FIG. 27). Transfer mask signals MDM0 and MDM1 are both set to “0” in an inactive state in the 32-bit mode.

したがって、最初の32サイクルにおいては、直交変換メモリTM0およびTM1が、各々活性化され、読出アドレスMADDが、アドレス0から31を示す間、これらの直交変換メモリTM0およびTM1とデータバス150a−150dとの間でデータ転送を実行する。バッファ68を通して、データ読出から1サイクル遅れて、32連続アドレスの64ビットデータが、主演算回路インターフェイス(I/F)へ順次転送される。   Therefore, in the first 32 cycles, orthogonal transformation memories TM0 and TM1 are activated, respectively, and while read address MADD indicates addresses 0 to 31, these orthogonal transformation memories TM0 and TM1 and data buses 150a-150d Data transfer between the two. Through the buffer 68, 64-bit data of 32 consecutive addresses is sequentially transferred to the main arithmetic circuit interface (I / F) with a delay of 1 cycle from the data reading.

この間、直交変換メモリTM2およびTM3は、非活性状態であり、このデータ転送動作に対しては影響は及ぼさない。   During this time, the orthogonal transformation memories TM2 and TM3 are inactive and have no effect on the data transfer operation.

図39は、32ビットモードにおける後半のデータの読出時のデータの流れを模式的に示す図である。最初の32サイクルにより、前半の連続データD0−D63の転送が完了すると、転送アドレスカウンタRCNTの最上位カウントビットRCNT[5]が“1”となる。したがって、次のサイクルからは、直交変換メモリTM0およびTM1に対するリードイネーブル信号/MRE0および/NRE1は、ともに“1”となり、直交変換メモリTM0およびTM1へのアクセスは停止される。一方、直交変換メモリTM2およびTM3に対するリードイネーブル信号/MRE2および/MRE3がともに“0”となり、これらの直交変換メモリTM2およびTM3へのアクセスが許可される。   FIG. 39 is a diagram schematically showing a data flow when reading the latter half of data in the 32-bit mode. When the transfer of the first half continuous data D0 to D63 is completed in the first 32 cycles, the most significant count bit RCNT [5] of the transfer address counter RCNT becomes “1”. Therefore, from the next cycle, the read enable signals / MRE0 and / NRE1 for the orthogonal transformation memories TM0 and TM1 are both “1”, and access to the orthogonal transformation memories TM0 and TM1 is stopped. On the other hand, the read enable signals / MRE2 and / MRE3 for the orthogonal transformation memories TM2 and TM3 are both "0", and access to these orthogonal transformation memories TM2 and TM3 is permitted.

この場合、転送アドレスカウンタRCNTのカウント値RCNT[4:0]に従って、アドレス0からアドレス31が順次指定されて、データバス150a−150d上に、後半の連続データD64−D127が、ビットシリアル態様で転送される。   In this case, addresses 0 to 31 are sequentially designated according to the count value RCNT [4: 0] of the transfer address counter RCNT, and the second half of the continuous data D64 to D127 is transmitted in a bit serial manner on the data buses 150a to 150d. Transferred.

この32ビットモードにおいては、8ビットモードと同様のステータス制御が実行される。バス切換回路190および192におけるバス切換が固定的に設定され、バッファの半分の更新が行なわれずバッファの全更新が行なわれるため、ステータスST1が、省略されるように見えるが、転送アドレスカウンタおよびマット転送アドレスカウンタの更新動作は、8ビットモードと同様であり、8ビットモード時と同様の転送制御により、確実に、アドレスを更新して、32ビットデータの転送を行なうことができる。   In this 32-bit mode, status control similar to that in the 8-bit mode is executed. Since the bus switching in the bus switching circuits 190 and 192 is fixedly set and half of the buffer is not updated and the buffer is fully updated, the status ST1 seems to be omitted, but the transfer address counter and mat The update operation of the transfer address counter is the same as that in the 8-bit mode, and 32-bit data can be transferred reliably by updating the address by the same transfer control as in the 8-bit mode.

D:64ビットモード
図40は、64ビットモード時のバスセレクタ140a−140cおよび142a−142cの接続態様を概略的に示す図である。この64ビットモードにおいては、図のX方向に整列する直交変換メモリが並行してイネーブルされる。したがって、バスセレクタ140aは、直交変換メモリTM0の下位16ビットポートLを、16ビットデータバス150bに結合する。バスセレクタ140bおよび142cは、直交変換メモリTM2の上位16ビットポートUおよび下位16ビットポートLを、それぞれ、16ビットデータバス150cおよび150dに結合する。バスセレクタ142aおよび142bは、直交変換メモリTM1の上位16ビットポートUおよび下位16ビットポートLを、それぞれ、16ビットデータバス150aおよび150bに結合する。バスセレクタ142cは、直交変換メモリTM3の上位16ビットポートUを16ビットデータバス150cに結合する。
D: 64-bit mode FIG. 40 schematically shows a connection mode of bus selectors 140a-140c and 142a-142c in the 64-bit mode. In the 64-bit mode, orthogonal transform memories aligned in the X direction in the figure are enabled in parallel. Therefore, the bus selector 140a couples the lower 16-bit port L of the orthogonal transformation memory TM0 to the 16-bit data bus 150b. Bus selectors 140b and 142c couple upper 16-bit port U and lower 16-bit port L of orthogonal transform memory TM2 to 16-bit data buses 150c and 150d, respectively. Bus selectors 142a and 142b couple upper 16-bit port U and lower 16-bit port L of orthogonal transform memory TM1 to 16-bit data buses 150a and 150b, respectively. The bus selector 142c couples the upper 16-bit port U of the orthogonal transformation memory TM3 to the 16-bit data bus 150c.

これらのバスセレクタ140a−140cおよび142a−142cの接続経路は、64ビット幅指示信号BWS64に従って設定される。64ビットモードにおいては、図28に示すように、リードイネーブル信号/MRE0および/MRE2は、転送アドレスカウンタRCNTのカウント値RCNT[5]の反転値に従って生成され、リードイネーブル信号/MRE1および/MRE3は、転送アドレスカウンタRCNTのカウント値RCNT[5]に従って生成される。従って、最初の32サイクルは、直交変換メモリTM1およびTM3に対してデータの読出が実行され、後半の32サイクルにおいては、直交変換メモリTM0およびTM2に対してデータの読出が実行される。   Connection paths of these bus selectors 140a-140c and 142a-142c are set according to a 64-bit width instruction signal BWS64. In the 64-bit mode, as shown in FIG. 28, read enable signals / MRE0 and / MRE2 are generated according to the inverted value of count value RCNT [5] of transfer address counter RCNT, and read enable signals / MRE1 and / MRE3 are The transfer address counter RCNT is generated according to the count value RCNT [5]. Accordingly, data is read from the orthogonal transformation memories TM1 and TM3 in the first 32 cycles, and data is read from the orthogonal transformation memories TM0 and TM2 in the latter 32 cycles.

図41は、64ビットモードの最初のサイクル0からサイクル31におけるアクセス態様を概略的に示す図である。直交変換メモリTM1およびTM3に対するリードイネーブル信号/MRE0および/MRE3は、上述のように、これらのサイクル0−31の間活性状態である。したがって、サイクル0から31においては、直交変換メモリTM1およびTM3においてアドレス0から31まで順次メモリセルが選択され、それぞれデータバス150a−150d上に、連続する64個のデータD0−D63が、ビットシリアル態様で転送される。   FIG. 41 schematically shows an access mode in the first cycle 0 to cycle 31 in the 64-bit mode. Read enable signals / MRE0 and / MRE3 for orthogonal transformation memories TM1 and TM3 are active during these cycles 0-31 as described above. Therefore, in cycles 0 to 31, memory cells are sequentially selected from addresses 0 to 31 in the orthogonal transformation memories TM1 and TM3, and 64 continuous data D0 to D63 are respectively bit-serialized on the data buses 150a to 150d. Transferred in a manner.

直交変換メモリTM1およびTM3の64ビットデータの下位31ビットの転送が完了すると、転送アドレスカウンタRCNTの最上位ビットRCNT[5]が“1”となる。この場合、図42に示すように、直交変換メモリTM1およびTM3に対するリードイネーブル信号/MRE1および/MRE3が“1”となり、直交変換メモリTM1およびTM3はディスエーブル状態に設定される。一方、直交変換メモリTM0およびTM2に対するリードイネーブル信号/MRE0および/MRE2が、“0”となり、直交変換メモリTM0−TM2に対するデータアクセスが実行される。残りのカウント値RCNT[4:0]に従ってアドレス0から31の64ビットデータの上位32ビットのデータが、それぞれデータバス150a−150dに、ビットシリアル態様で転送される。   When the transfer of the lower 31 bits of the 64-bit data of the orthogonal transformation memories TM1 and TM3 is completed, the most significant bit RCNT [5] of the transfer address counter RCNT becomes “1”. In this case, as shown in FIG. 42, the read enable signals / MRE1 and / MRE3 for the orthogonal transformation memories TM1 and TM3 are set to “1”, and the orthogonal transformation memories TM1 and TM3 are set to a disabled state. On the other hand, the read enable signals / MRE0 and / MRE2 for the orthogonal transformation memories TM0 and TM2 become “0”, and data access to the orthogonal transformation memories TM0 to TM2 is executed. According to the remaining count value RCNT [4: 0], the upper 32 bits of the 64-bit data at addresses 0 to 31 are transferred to the data buses 150a to 150d in a bit serial manner.

64ビットモードにおいては、バス切換回路190および192は、ビット幅指定信号BWS32/64に従って、その接続経路が、64ビットバッファと64ビットデータを転送するように固定される。従って、直交変換メモリTM1およびTM3の組から読出された64ビットデータおよび直交変換メモリTM0およびTM2から読出された64ビットデータは、32ビットモード時と同様、データバス55から64ビットバッファ68に一旦格納された後、主演算回路I/Fへ転送される。従って、この64ビットモードにおいても、64アドレスの64ビットデータを65サイクルで転送することができる。   In the 64-bit mode, bus switching circuits 190 and 192 are fixed so that the connection path transfers 64-bit data to and from the 64-bit buffer according to bit width designation signal BWS 32/64. Therefore, the 64-bit data read from the set of the orthogonal transformation memories TM1 and TM3 and the 64-bit data read from the orthogonal transformation memories TM0 and TM2 are temporarily transferred from the data bus 55 to the 64-bit buffer 68, as in the 32-bit mode. After being stored, it is transferred to the main arithmetic circuit I / F. Therefore, even in this 64-bit mode, 64-bit data at 64 addresses can be transferred in 65 cycles.

この場合、先の8ビットモード、16ビットモードおよび32ビットモードと異なり、データバス55上には、64ワードのデータが順次そのデータ番号順に配列され、偶数データおよび奇数データのグループには分離されない。しかしながら、説明するように、データ配列が64ビットモード時において他のモード時と異なっていても特に問題は、生じない。   In this case, unlike the previous 8-bit mode, 16-bit mode, and 32-bit mode, 64-word data is sequentially arranged in the order of the data numbers on the data bus 55, and is not separated into even-numbered data and odd-numbered data groups. . However, as will be described, no particular problem occurs even if the data arrangement is different in the 64-bit mode from that in the other modes.

すなわち、図43に示すように、主演算回路内のメモリセルマットにおいては、エントリパラレルかつビットシリアル態様で演算処理が実行される。メモリセルマット30に対しては、内部データバス200を介して主演算回路ブロックI/Fから64ビットデータがビットシリアル態様で順次転送されて格納される。エントリERY0−ERY(M−1)に、演算対象のデータが格納され、それぞれ対応の演算器(ALU)31との間でビットシリアル態様で演算処理が実行される。したがって、エントリERY0、ERY1、…ERY(M−2)、およびERY(M−1)において演算データの組、たとえば2項演算の場合のデータの組(Da,Db)、(Dc,Dd)、…、(De,Df)、および(Dg,Dh)がそれぞれ格納されれば、エントリパラレルかつビットシリアル態様で演算処理を実行することができる。このメモリセルマット30において、エントリERY0からERY(M−1)に従って、データ番号順に順次データを配列することは特に要求されない。   That is, as shown in FIG. 43, in the memory cell mat in the main arithmetic circuit, arithmetic processing is executed in an entry parallel and bit serial manner. For memory cell mat 30, 64-bit data is sequentially transferred and stored in a bit serial manner from main operation circuit block I / F via internal data bus 200. Data to be calculated is stored in the entries ERY0 to ERY (M-1), and calculation processing is executed in a bit-serial manner with the corresponding calculation units (ALU) 31 respectively. Therefore, in the entries ERY0, ERY1,... ERY (M-2) and ERY (M-1), a set of operation data, for example, a data set (Da, Db), (Dc, Dd) in the case of binary operation, .., (De, Df), and (Dg, Dh) can be stored, respectively, the arithmetic processing can be executed in an entry parallel and bit serial manner. In memory cell mat 30, it is not particularly required to sequentially arrange data in the order of data numbers in accordance with entries ERY0 to ERY (M-1).

メモリセルマット30から直交変換回路へのデータ転送時には、直交変換回路40からメモリセルマット30へ転送されたデータ配列順序と同じデータ配列順序で転送される。この後、直交変換回路における直交変換メモリTM0−TM3に従って、直交変換が行なわれて、内部システムバスへ転送される。   When data is transferred from the memory cell mat 30 to the orthogonal transformation circuit, the data is transferred in the same data arrangement order as that transferred from the orthogonal transformation circuit 40 to the memory cell mat 30. Thereafter, orthogonal transformation is performed in accordance with the orthogonal transformation memories TM0 to TM3 in the orthogonal transformation circuit, and transferred to the internal system bus.

メモリセルマット30から、すなわち主演算回路20から直交変換回路の直交変換メモリTM0−TM3へのデータ転送は、図37から図42において示すデータ転送方向が逆になるだけである。すなわち、主演算回路に含まれるコントローラ(22)からの転送指示に従って、リードイネーブル信号に代えてライトイネーブル信号(/MWE0−/MWE3)がデータ読出時と同様シーケンスで活性化される。データの書込がデータ読出に代えてこれらの直交変換メモリTM0−TM3において行なわれればよい。   Data transfer from the memory cell mat 30, that is, from the main arithmetic circuit 20 to the orthogonal transformation memories TM0 to TM3 of the orthogonal transformation circuit, is merely the reverse of the data transfer direction shown in FIGS. That is, in accordance with a transfer instruction from the controller (22) included in the main arithmetic circuit, the write enable signal (/ MWE0− / MWE3) is activated in the same sequence as the data read in place of the read enable signal. Data writing may be performed in these orthogonal transformation memories TM0 to TM3 instead of data reading.

この主演算回路内のメモリセルマットから直交変換回路へのデータ転送時におけるバッファ68へのデータ格納および読出ならびにバス切換回路170および172およびバスセレクタ140a−140c、142a−142cの接続態様は、直交変換回路から主演算回路へのデータ転送時と同じである。したがって、図26に示す構成において、主演算回路のメモリコントローラの読出指示MRENに代えて書込指示MWENが、転送アドレス発生回路160および転送制御回路166へ与えられて、ステータスレジスタの初期設定が行なわれればよい。   The data storage and reading to the buffer 68 and the connection mode of the bus switching circuits 170 and 172 and the bus selectors 140a to 140c and 142a to 142c at the time of data transfer from the memory cell mat to the orthogonal transformation circuit in the main arithmetic circuit are orthogonal. This is the same as when data is transferred from the conversion circuit to the main arithmetic circuit. Therefore, in the configuration shown in FIG. 26, write instruction MWEN is applied to transfer address generation circuit 160 and transfer control circuit 166 in place of read instruction MREN of the memory controller of the main arithmetic circuit, and the status register is initialized. It only has to be done.

また、直交変換回路と主演算回路との間のデータ転送時には、上述の説明においては、偶数データが先にアクセスされ、次いで奇数データがアクセスされている。しかしながら、この順序は逆であってもよい。連続するデータ群において偶数データの組および奇数データの組が交互にアクセスされればよい。   Further, at the time of data transfer between the orthogonal transform circuit and the main arithmetic circuit, in the above description, even data is accessed first, and then odd data is accessed. However, this order may be reversed. It suffices that even-numbered data sets and odd-numbered data sets are accessed alternately in a continuous data group.

なお、64ビットモードにおいても、ステータスレジスタに格納されるステータス情報は、図32に示すステータス情報と同じであり、同様の制御を行ない、バス接続経路を切換え、発生するアドレスの範囲を変更するだけである(転送アドレスカウンタRCNTのカウントアップ動作は同じである)。   Even in the 64-bit mode, the status information stored in the status register is the same as the status information shown in FIG. 32. The same control is performed, the bus connection path is switched, and the range of generated addresses is changed. (The count-up operation of the transfer address counter RCNT is the same).

上述の説明においては、最小データビット幅が、8ビットを想定している。最小データビット幅が4ビットの場合には、以下のように構成する。システムバスとの間の転送時には、直交変換メモリTM0−TM3を、各々、32アドレス16ビットのメモリに分割する。各分割メモリとの間で8ビット単位でデータの転送を行う。4個の分割メモリとの間のデータ転送の態様は、2個の直交変換メモリとの間の8ビットデータ転送と同じである。主演算回路との間のデータ転送時には、8ビットモード時と同様のバス接続を行い、全分割メモリに対して8ビット単位で偶数アドレスおよび奇数アドレスを交互に切換えてデータの転送を行う。64ビットバッファへのアクセス態様は、8ビットモード時と同様である。この場合においても、各分割メモリにおいて、偶数データおよび奇数データの組が2つあり、アドレス領域が4分割されるため、合計64サイクルで分割メモリに対してデータの転送を行うことができる。すなわち、16ビット単位のマスクに代えて8ビット単位のマスクをかける構成が利用されればよい。   In the above description, the minimum data bit width is assumed to be 8 bits. When the minimum data bit width is 4 bits, the configuration is as follows. At the time of transfer to and from the system bus, the orthogonal transform memories TM0 to TM3 are each divided into memories of 32 addresses and 16 bits. Data is transferred to / from each divided memory in units of 8 bits. The mode of data transfer between the four divided memories is the same as that of 8-bit data transfer between the two orthogonal transformation memories. When transferring data to and from the main arithmetic circuit, the same bus connection as in the 8-bit mode is performed, and data transfer is performed by alternately switching even addresses and odd addresses in units of 8 bits to all the divided memories. The access mode to the 64-bit buffer is the same as in the 8-bit mode. Even in this case, each divided memory has two sets of even data and odd data, and the address area is divided into four, so that data can be transferred to the divided memory in a total of 64 cycles. That is, a configuration in which an 8-bit mask is used instead of a 16-bit mask may be used.

従って、転送されるデータのビット幅は、8、16、32および62ビットの組に限定されない。システムバスのビット幅の1/2のビット幅のデータバスを用いて、システムバスと直交変換回路の間でデータの転送を行い、主演算回路との間でシステムバスと同一のビット幅のデータバスを用いて転送することができればよい。   Therefore, the bit width of the transferred data is not limited to a set of 8, 16, 32, and 62 bits. Data is transferred between the system bus and the orthogonal transformation circuit using a data bus having a bit width that is ½ of the system bus bit width, and data having the same bit width as that of the system bus is transferred to the main arithmetic circuit. What is necessary is just to be able to transfer using a bus | bath.

なお、この発明に従う直交変換回路の構成を一般化すると、以下のようにその構成を表わすことができる。   When the configuration of the orthogonal transform circuit according to the present invention is generalized, the configuration can be expressed as follows.

[条件]
システムの転送データの最小ビット幅:M、
システムデータバスのビット幅: K、
直交変換回路内のシステム側のデータバス(50)のビット幅:L、
直交変換回路内の主演算側データバス(55)のビット幅 :K、
主演算回路側バッファメモリのビット幅: K。
[conditions]
Minimum bit width of system transfer data: M,
System data bus bit width: K,
Bit width of the data bus (50) on the system side in the orthogonal transformation circuit: L,
Bit width of main operation side data bus (55) in orthogonal transformation circuit: K,
Bit width of main arithmetic circuit side buffer memory: K.

[直交変換メモリの構成]
数N=L・M/K、
システムバス側アドレス:L、
主演算回路側アドレス: M・N。
[Orthogonal transformation memory configuration]
Number N = L · M / K,
System bus side address: L,
Main arithmetic circuit side address: MN.

[主演算回路側アクセスシーケンス]
転送データビット幅:J、
1転送サイクルで活性化される直交変換メモリの数:
INT{(L/J)}、関数INT{}は、(L/J)より小さくない最も近い整数を示す;
1システムサイクルにおいて活性化される直交変換メモリの数:
MIN{(L/J)、(K/L)}、関数MIN{}は、(L/J)および(K/L)の小さいほうを示す。
[Main arithmetic circuit side access sequence]
Transfer data bit width: J,
Number of orthogonal transform memories activated in one transfer cycle:
INT {(L / J)}, function INT {} indicates the nearest integer not less than (L / J);
Number of orthogonal transform memories activated in one system cycle:
MIN {(L / J), (K / L)} and function MIN {} indicate the smaller of (L / J) and (K / L).

直交変換メモリへのアクセスビット幅:MIN(2・J,M・N)。
[主演算回路側]
1転送サイクルで活性化される直交変換メモリの数:
MIN{(J/L),(K/L)}、
直交変換メモリへのアクセス幅:
MIN{2・J,M・N}、
(i)メモリアクセス幅が2・Jのとき:
Kビットバッファへの半分更新および全部更新を繰返して転送、
(ii)メモリアクセス幅がM・Nのとき:
全転送サイクル、Kビットバッファを通して転送。
Access bit width to the orthogonal transformation memory: MIN (2 · J, MN).
[Main arithmetic circuit side]
Number of orthogonal transform memories activated in one transfer cycle:
MIN {(J / L), (K / L)},
Access width to orthogonal transformation memory:
MIN {2 · J, MN},
(I) When the memory access width is 2 · J:
Transfer half-update and full update to K-bit buffer repeatedly,
(Ii) When the memory access width is MN:
All transfer cycles, transfer through K-bit buffer.

以上のように、この発明に従えば、バスの接続を切換えるとともに、アドレスをデータビット幅に応じて設定して、直交変換メモリとシステムバスとの間でデータを転送し、直交変換回路と主演算回路の間では、バッファを通してデータを転送している。したがって、バス幅を変更することなく、直交変換回路内の直交変換メモリの全メモリ領域を利用して、複数種類のビット幅のデータをデータバスの全ビット幅を利用して転送することができ、効率的にデータを転送することができる。   As described above, according to the present invention, the bus connection is switched, the address is set according to the data bit width, the data is transferred between the orthogonal transformation memory and the system bus, and the orthogonal transformation circuit and the main bus are transferred. Data is transferred between the arithmetic circuits through a buffer. Therefore, data of multiple types of bit widths can be transferred using all bit widths of the data bus using the entire memory area of the orthogonal transformation memory in the orthogonal transformation circuit without changing the bus width. Can transfer data efficiently.

また、この直交変換回路は、並列演算処理装置におけるシステム側と主演算回路内におけるメモリセルマットとの間でのデータ配列の直交変換を行なっている。しかしながら、直交変換操作は、一般に、行列演算処理において必要とされる。したがって、この発明に従う直交変換回路を、そのような行列演算処理を実行するシステム内に設けることにより、効率的にデータを転送して複数種類のビット幅のデータの行列演算処理を実行することができる。   In addition, this orthogonal transform circuit performs orthogonal transform of the data array between the system side in the parallel arithmetic processing unit and the memory cell mat in the main arithmetic circuit. However, the orthogonal transform operation is generally required in matrix calculation processing. Therefore, by providing the orthogonal transformation circuit according to the present invention in a system that executes such matrix calculation processing, it is possible to efficiently transfer data and execute matrix calculation processing of a plurality of types of bit width data. it can.

この発明に従う直交変換回路は、演算用メモリセルマットのエントリそれぞれに演算器が設けられる並列演算処理装置に対して適用することにより、データ転送を効率的に行なうことができ、より処理性能を改善することができる。   By applying the orthogonal transform circuit according to the present invention to a parallel arithmetic processing device in which an arithmetic unit is provided for each entry of the arithmetic memory cell mat, data transfer can be efficiently performed and processing performance is further improved. can do.

また、行列の乗算を行なう回路装置に対して行列の転置を行なう回路部分にこの発明に従う直交変換回路を適用することにより、高速でデータを転送し、種々のビット幅のデータに対して転置行列を生成して行列の乗算を行なうことができる。   Further, by applying the orthogonal transform circuit according to the present invention to a circuit portion that performs matrix transposition for a circuit device that performs matrix multiplication, data is transferred at high speed, and transpose matrix for data of various bit widths. Can be generated to perform matrix multiplication.

また、このような行列の乗算に限定されず、行列の転置操作が必要な回路部分に対して本発明に従う直交変換回路を適用することにおいて、効率的な直交変換を行なうことができ、ベクトル乗算処理などの処理を、種々のデータビット幅のデータに対して効率的に実行することができる。   Further, the present invention is not limited to such matrix multiplication, and by applying the orthogonal transformation circuit according to the present invention to a circuit portion that requires matrix transposition operation, efficient orthogonal transformation can be performed, and vector multiplication Processing such as processing can be efficiently performed on data of various data bit widths.

この発明に従う直交変換回路が適用される信号処理システムの全体の構成を概略的に示す図である。1 is a diagram schematically showing an overall configuration of a signal processing system to which an orthogonal transform circuit according to the present invention is applied. 図1に示す主演算回路内における演算操作時のデータの流れを概略的に示す図である。It is a figure which shows roughly the flow of the data at the time of arithmetic operation in the main arithmetic circuit shown in FIG. システム側と主演算回路内のメモリセルマットの間のデータ転送時のデータの流れを概略的に示す図である。It is a figure which shows roughly the data flow at the time of the data transfer between the system side and the memory cell mat in a main arithmetic circuit. この発明の実施の形態1に従う直交変換回路の全体の構成を概略的に示す図である。It is a figure which shows roughly the whole structure of the orthogonal transformation circuit according to Embodiment 1 of this invention. 図4に示す2ポート直交変換メモリの構成を概略的に示す図である。FIG. 5 is a diagram schematically showing a configuration of a 2-port orthogonal transformation memory shown in FIG. 4. 図5に示す直交変換メモリのメモリセルの構成の一例を示す図である。FIG. 6 is a diagram illustrating an example of a configuration of a memory cell of the orthogonal transform memory illustrated in FIG. 5. 図4に示す2ポート直交変換メモリのビット構成を概略的に示す図である。FIG. 5 is a diagram schematically showing a bit configuration of the 2-port orthogonal transform memory shown in FIG. 4. この発明の実施の形態1に従う直交変換回路のシステムとの間でのデータ転送時のデータ配列を概略的に示す図である。It is a figure which shows roughly the data arrangement at the time of the data transfer between the systems of the orthogonal transformation circuit according to Embodiment 1 of this invention. 図8に示す直交変換メモリのデータ転送動作を示すタイミング図である。FIG. 9 is a timing chart showing a data transfer operation of the orthogonal transform memory shown in FIG. 8. 図8に示す直交変換メモリの前半のデータ転送時の格納データの配置を概略的に示す図である。FIG. 9 is a diagram schematically showing an arrangement of stored data at the time of data transfer in the first half of the orthogonal transform memory shown in FIG. 8. 図8に示す直交変換メモリの後半のサイクルにおけるデータの配置を概略的に示す図である。FIG. 9 is a diagram schematically showing an arrangement of data in the latter half cycle of the orthogonal transformation memory shown in FIG. 8. 16ビットデータ転送時のデータ転送動作を示すタイミング図である。FIG. 10 is a timing diagram illustrating a data transfer operation during 16-bit data transfer. 直交変換メモリにおける32ビットデータの格納配置を概略的に示す図である。It is a figure which shows roughly the storage arrangement | positioning of 32-bit data in an orthogonal transformation memory. 図13に示す32ビットデータの転送動作を示すタイミング図である。FIG. 14 is a timing diagram illustrating a transfer operation of the 32-bit data illustrated in FIG. 13. 図4に示すシステムバス側制御部の構成を概略的に示す図である。It is a figure which shows schematically the structure of the system bus side control part shown in FIG. 図15に示すシステムバス側制御部の8ビットデータおよび16ビットデータ転送時のバス接続経路およびアドレス発生シーケンスの一例を概略的に示す図である。FIG. 16 is a diagram schematically showing an example of a bus connection path and an address generation sequence when 8-bit data and 16-bit data are transferred by the system bus side control unit shown in FIG. 15. 図15に示すすしてむバス側制御部の32ビットデータおよび64ビットデータ転送時のバス接続経路およびアドレス発生シーケンスの一例を概略的に示す図である。FIG. 16 is a diagram schematically showing an example of a bus connection path and an address generation sequence when transferring 32-bit data and 64-bit data of the bus-side control unit shown in FIG. 15. 図15に示す転送クロック信号および切換制御信号を発生する部分の構成の一例を示す図である。FIG. 16 is a diagram illustrating an example of a configuration of a part that generates a transfer clock signal and a switching control signal illustrated in FIG. 15. 図18に示す信号発生部の動作を示すタイミング図である。FIG. 19 is a timing diagram illustrating an operation of the signal generation unit illustrated in FIG. 18. 図4に示すシステムバス側制御部の直交変換メモリ制御部の構成を概略的に示す図である。FIG. 5 is a diagram schematically showing a configuration of an orthogonal transformation memory control unit of the system bus side control unit shown in FIG. 4. 図20に示す制御部の8ビットデータ転送時の動作を示すタイミング図である。FIG. 21 is a timing chart showing an operation at the time of 8-bit data transfer of the control unit shown in FIG. 20. 図20に示す制御部の16ビットデータ転送時の動作を示すタイミング図である。FIG. 21 is a timing diagram illustrating an operation of the control unit illustrated in FIG. 20 during 16-bit data transfer. 図20に示す制御部の32ビットおよび64ビットデータ転送時の動作を示すタイミング図である。FIG. 21 is a timing chart showing an operation at the time of 32-bit and 64-bit data transfer of the control unit shown in FIG. 20. 図20に示すシステムバス側制御部の変更例の要部の構成を概略的に示す図である。It is a figure which shows schematically the structure of the principal part of the example of a change of the system bus side control part shown in FIG. 図4に示す主演算回路側制御部のバス接続部の構成の一例を概略的に示す図である。FIG. 5 is a diagram schematically illustrating an example of a configuration of a bus connection unit of a main arithmetic circuit side control unit illustrated in FIG. 4. 図4に示す主演算回路側制御部のデータ転送制御部の構成の一例を概略的に示す図である。FIG. 5 is a diagram schematically illustrating an example of a configuration of a data transfer control unit of the main arithmetic circuit side control unit illustrated in FIG. 4. 図26に示す転送アドレス発生回路の構成の一例を示す図である。FIG. 27 is a diagram showing an example of a configuration of a transfer address generation circuit shown in FIG. 26. 図26に示す転送制御回路の構成の一例を示す図である。FIG. 27 is a diagram illustrating an example of a configuration of a transfer control circuit illustrated in FIG. 26. 図26に示すバッファ更新回路および転送データ選択回路の構成をより具体的に示す図である。FIG. 27 is a diagram more specifically showing the configuration of a buffer update circuit and a transfer data selection circuit shown in FIG. 26. 図25に示すバスセレクタの8ビットデータ転送時の接続経路を概略的に示す図である。FIG. 26 is a diagram schematically showing a connection path during 8-bit data transfer of the bus selector shown in FIG. 25. 図30に示す接続における8ビットデータ転送時の直交変換メモリにおけるデータ配列を概略的に示す図である。FIG. 31 is a diagram schematically showing a data array in an orthogonal transformation memory at the time of 8-bit data transfer in the connection shown in FIG. 30. 8ビットデータ転送時のステータス遷移を概略的に示す図である。It is a figure which shows roughly the status transition at the time of 8-bit data transfer. 図32に示すステータスST0におけるデータ転送態様を概略的に示す図である。FIG. 33 schematically shows a data transfer mode in status ST0 shown in FIG. 32. 図32に示すステータスST1におけるデータ転送経路を概略的に示す図である。FIG. 33 schematically shows a data transfer path in status ST1 shown in FIG. 32. 8ビットデータ転送時の後半データの転送態様を概略的に示す図である。It is a figure which shows roughly the transfer aspect of the latter half data at the time of 8-bit data transfer. 8ビットデータ転送時のデータの流れを概略的に示す図である。It is a figure which shows roughly the flow of the data at the time of 8-bit data transfer. 32ビットデータ転送時の主演算回路側制御部におけるバスセレクタの接続経路を概略的に示す図である。It is a figure which shows roughly the connection path | route of the bus selector in the main arithmetic circuit side control part at the time of 32-bit data transfer. 図37に示す32ビットモード転送配置におけるデータ転送シーケンスを概略的に示す図である。FIG. 38 schematically shows a data transfer sequence in the 32-bit mode transfer arrangement shown in FIG. 37. 図37に示す接続配置における32ビットデータ転送時の後半データの転送シーケンスを概略的に示す図である。It is a figure which shows roughly the transfer sequence of the latter half data at the time of 32-bit data transfer in the connection arrangement | positioning shown in FIG. 主演算回路ブロック側制御部のバスセレクタの64ビットデータ転送時の接続経路を概略的に示す図である。It is a figure which shows roughly the connection path | route at the time of 64-bit data transfer of the bus selector of the main arithmetic circuit block side control part. 図40に示す接続配置におけるデータ転送シーケンスの前半サイクルのデータ転送シーケンスを概略的に示す図である。FIG. 41 is a diagram schematically showing a data transfer sequence in the first half cycle of a data transfer sequence in the connection arrangement shown in FIG. 40. 図40に示す接続配置における後半データの転送経路を概略的に示す図である。FIG. 41 is a diagram schematically showing a transfer path of latter half data in the connection arrangement shown in FIG. 40. 主演算回路内のメモリセルマットへのデータ転送シーケンスおよび演算シーケンスを概略的に示す図である。It is a figure which shows roughly the data transfer sequence to the memory cell mat in a main arithmetic circuit, and an arithmetic sequence.

符号の説明Explanation of symbols

1 信号処理システム、2 システムLSI、20 主演算回路、24 システムバスI/F、30 メモリセルマット、31 演算器(ALU)、40 直交変換回路、7 内部システムバス、FB1−FBh 基本演算ブロック、TM0−TM3 2ポート直交変換メモリ、50,55 内部データバス、60 システムバス側制御部、65 主演算回路側制御部、68 64ビットバッファ、70 メモリセルアレイ、72 システムバス側書込/読出回路、74 システムバス側セル選択回路、76 主演算回路側書込/読出回路、78 主演算回路側セル選択回路、MC メモリセル、100 64ビットレジスタ、SL0−SL3,SSL0−SSL3 セレクタ、104 ビット幅設定レジスタ、102 アドレスレジスタ、120−123 書込/読出制御信号発生回路、130 書込マスク指示信号発生回路、140a−140c,142a−142c バスセレクタ、160 ビット幅設定レジスタ、162 ステータスレジスタ、164 転送アドレス発生回路、166 転送制御回路、168 マット転送アドレスカウンタ、170 バッファ更新回路、172 転送データ選択回路、RCLT 転送アドレスカウンタ、180 アドレス発生回路、182a−182d 読出活性化回路、184 転送マスク発生回路、190,192 バス切換回路。   1 signal processing system, 2 system LSI, 20 main arithmetic circuit, 24 system bus I / F, 30 memory cell mat, 31 arithmetic unit (ALU), 40 orthogonal transform circuit, 7 internal system bus, FB1-FBh basic arithmetic block, TM0-TM3 2-port orthogonal transformation memory, 50, 55 internal data bus, 60 system bus side control unit, 65 main arithmetic circuit side control unit, 68 64-bit buffer, 70 memory cell array, 72 system bus side write / read circuit, 74 System bus side cell selection circuit, 76 Main arithmetic circuit side write / read circuit, 78 Main arithmetic circuit side cell selection circuit, MC memory cell, 100 64-bit register, SL0-SL3, SSL0-SSL3 selector, 104 bit width setting Register, 102 address register, 120-123 Read / write control signal generation circuit, 130 write mask instruction signal generation circuit, 140a-140c, 142a-142c bus selector, 160-bit width setting register, 162 status register, 164 transfer address generation circuit, 166 transfer control circuit, 168 mat Transfer address counter, 170 Buffer update circuit, 172 Transfer data selection circuit, RCLT Transfer address counter, 180 address generation circuit, 182a-182d Read activation circuit, 184 Transfer mask generation circuit, 190, 192 Bus switching circuit

Claims (10)

各々が第1ポートおよび第2ポートを有し、前記第1および第2のポートを介して転送されるデータの配列が互いに直交関係にある複数の直交変換メモリ、および
前記複数の直交変換メモリの第1のポートに共通に結合され、各前記直交変換メモリの第1のポートを介して入出力可能なデータビット幅に等しくかつ外部のデータバスのビット幅よりも小さなビット幅を有する第1のデータバス、
前記複数の直交変換メモリの第2のポートに共通に結合され、各前記直交変換メモリの第2のポートを介して入出力可能なデータのビット幅よりも大きなビット幅を有する第2のデータバス、
前記第1のデータバスを介してのデータ転送時、転送データのビット幅を有するビット幅情報に従って、前記複数の直交変換メモリに対するアドレスおよび転送制御信号を前記複数の直交変換メモリ個々に生成するとともに、前記直交変換メモリの第1のポートと前記第1のデータバスとの接続経路を設定するシステム側制御回路、および
前記第2のデータバスを介してのデータ転送時、前記第2のデータバス上のデータを選択的に格納して転送するバッファを含み、前記第2のデータバスを介してのデータ転送時、前記ビット幅情報に従って、前記複数の直交変換メモリに対するバス接続経路の設定を行なうとともにアドレスおよび転送制御信号を各前記直交変換メモリ個々に生成し、さらに、前記バッファに対するデータの書込および読出を選択的に行なって、前記第2のポートからのデータと前記バッファからのデータとから最終の転送データを生成する主演算回路側制御回路を備える、直交変換回路。
A plurality of orthogonal transformation memories each having a first port and a second port, and an array of data transferred via the first and second ports being orthogonal to each other; and A first port coupled in common to the first port and having a bit width equal to a data bit width that can be input / output via the first port of each of the orthogonal transformation memories and smaller than a bit width of an external data bus; Data bus,
A second data bus coupled in common to the second ports of the plurality of orthogonal transformation memories and having a bit width larger than the bit width of the data that can be input / output via the second ports of the orthogonal transformation memories; ,
At the time of data transfer via the first data bus, addresses and transfer control signals for the plurality of orthogonal transform memories are individually generated in accordance with the bit width information having the bit width of the transfer data. A system-side control circuit for setting a connection path between the first port of the orthogonal transformation memory and the first data bus, and the second data bus during data transfer via the second data bus Including a buffer for selectively storing and transferring the above data, and setting a bus connection path for the plurality of orthogonal transformation memories according to the bit width information at the time of data transfer via the second data bus In addition, an address and a transfer control signal are generated individually for each of the orthogonal transformation memories, and further, data is written to and read from the buffer. An orthogonal transform circuit comprising a main arithmetic circuit side control circuit that selectively outputs data and generates final transfer data from data from the second port and data from the buffer.
前記システム側制御回路は、
前記複数の直交変換メモリ個々に対して所定数のビット単位でデータ転送にマスクをかけるマスク信号を生成する手段を備える、請求項1記載の直交変換回路。
The system side control circuit is:
2. The orthogonal transform circuit according to claim 1, further comprising means for generating a mask signal for masking data transfer in units of a predetermined number of bits for each of the plurality of orthogonal transform memories.
前記システム側制御回路は、上位ビットデータおよび下位ビットデータの一方を前記ビット幅設定情報に従って各前記直交変換メモリの第1のポートの上位ビットおよび下位ビットが、前記第1のデータバスの上位および下位ビットデータバスの共通のバスに結合するように、前記複数の直交変換メモリ個々に前記第1のポートと前記第1のデータバスとの接続経路を設定するバスセレクタを備える、請求項1記載の直交変換回路。   The system-side control circuit is configured such that the upper bit and the lower bit of the first port of each of the orthogonal transformation memories are set to the upper and lower bits of the first data bus according to the bit width setting information. The bus selector for setting a connection path between the first port and the first data bus for each of the plurality of orthogonal transformation memories so as to be coupled to a common lower bit data bus. Orthogonal transformation circuit. 前記システム側制御回路は、前記データビット幅情報に従って、外部からのアドレスの上位ビットおよび下位ビットの一方のアドレスを選択して各前記直交変換メモリに対するアドレス信号を生成するアドレス選択回路を備える、請求項1記載の直交変換回路。   The system-side control circuit includes an address selection circuit that generates an address signal for each of the orthogonal transformation memories by selecting one of an upper bit and a lower bit of an external address according to the data bit width information. Item 4. An orthogonal transform circuit according to item 1. 前記システム側制御回路は、前記データビット幅情報に従って前記複数の直交変換メモリを個々に活性化する選択回路を含み、前記選択回路は、前記データビット幅情報に従って前記複数の直交変換メモリの並行して活性化されるメモリの数および活性化シーケンスを設定する、請求項1記載の直交変換回路。   The system-side control circuit includes a selection circuit that individually activates the plurality of orthogonal transformation memories according to the data bit width information, and the selection circuit is configured to parallel the plurality of orthogonal transformation memories according to the data bit width information. The orthogonal transform circuit according to claim 1, wherein the number of activated memories and an activation sequence are set. 前記主演算回路側御回路は、
転送サイクル数をカウントする多ビット転送アドレスカウンタと、
前記ビット幅情報に従って、前記転送アドレスカウンタのカウントビットを並び換えて前記複数の直交変換メモリに対するアドレスを生成するアドレス選択回路を備える、請求項1記載の直交変換回路。
The main arithmetic circuit side control circuit is:
A multi-bit transfer address counter that counts the number of transfer cycles;
The orthogonal transformation circuit according to claim 1, further comprising an address selection circuit that rearranges count bits of the transfer address counter according to the bit width information to generate addresses for the plurality of orthogonal transformation memories.
前記主演算回路側制御回路は、
前記ビット幅情報に従って前記複数の直交変換メモリの上位データビット領域および下位データビット領域へのアクセスを選択的にマスクする回路を備える、請求項1記載の直交変換回路。
The main arithmetic circuit side control circuit is:
2. The orthogonal transform circuit according to claim 1, further comprising a circuit that selectively masks access to the upper data bit region and the lower data bit region of the plurality of orthogonal transform memories according to the bit width information.
前記主演算回路側制御回路は、
前記ビット幅情報とデータ転送サイクル数情報とに従って、前記複数の直交変換メモリの前記第2のポートに対するアクセスを活性化する活性化信号を前記複数の直交変換メモリ個々に発生する転送制御回路を備える、請求項1記載の直交変換回路。
The main arithmetic circuit side control circuit is:
A transfer control circuit for generating an activation signal for activating access to the second port of the plurality of orthogonal transform memories in accordance with the bit width information and the data transfer cycle number information; The orthogonal transform circuit according to claim 1.
前記直交変換メモリの第2のポートは最終的にインタフェースとの間でデータを転送し、
前記主演算側制御回路は、
前記第2のデータバスを介してのデータ転送サイクル数をカウントするマット転送カウンタと、
前記マット転送カウンタのカウント値と前記ビット幅情報とに従って、前記第2のデータバスと前記バッファとの間のデータ転送経路を設定するバッファ更新回路と、
前記マット転送カウンタのカウント値と前記ビット幅情報とに従って、前記第2のデータバスおよび前記バッファと前記インタフェースとの間の接続経路を設定する転送データ選択回路を備える、請求項1記載の直交変換回路。
The second port of the orthogonal transform memory finally transfers data to and from the interface;
The main arithmetic control circuit is
A mat transfer counter for counting the number of data transfer cycles via the second data bus;
A buffer update circuit for setting a data transfer path between the second data bus and the buffer according to the count value of the mat transfer counter and the bit width information;
2. The orthogonal transform according to claim 1, further comprising: a transfer data selection circuit that sets a connection path between the second data bus and the buffer and the interface according to the count value of the mat transfer counter and the bit width information. circuit.
前記バッファ更新回路は、前記ビット幅情報が第1のビット幅を指定するときには前記転送サイクルごとに前記第2のデータバスの全データビットと前記バッファとの間の転送および前記第2のデータバスの半分のデータビットと前記バッファの半分のデータビットの前記バッファへの転送とを繰返すように、前記データ転送経路を設定し、
前記転送データ選択回路は、前記ビット幅情報が前記第1のビット幅を示すとき、前記第2のデータバスの残りの半分のデータビットおよび前記バッファの残りの半分のビットの転送と前記バッファの全ビットの転送とを繰返すように前記接続経路を設定する、請求項9記載の直交変換回路。
The buffer update circuit performs transfer between all the data bits of the second data bus and the buffer and the second data bus every transfer cycle when the bit width information specifies the first bit width. The data transfer path to repeat the transfer of half of the data bits and half of the data bits of the buffer to the buffer,
When the bit width information indicates the first bit width, the transfer data selection circuit transfers the remaining half of the data bits of the second data bus and the remaining half of the buffer, and The orthogonal transform circuit according to claim 9, wherein the connection path is set so as to repeat transfer of all bits.
JP2007317186A 2007-12-07 2007-12-07 Orthogonal transformation circuit Expired - Fee Related JP5145581B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007317186A JP5145581B2 (en) 2007-12-07 2007-12-07 Orthogonal transformation circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007317186A JP5145581B2 (en) 2007-12-07 2007-12-07 Orthogonal transformation circuit

Publications (2)

Publication Number Publication Date
JP2009140323A JP2009140323A (en) 2009-06-25
JP5145581B2 true JP5145581B2 (en) 2013-02-20

Family

ID=40870850

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007317186A Expired - Fee Related JP5145581B2 (en) 2007-12-07 2007-12-07 Orthogonal transformation circuit

Country Status (1)

Country Link
JP (1) JP5145581B2 (en)

Also Published As

Publication number Publication date
JP2009140323A (en) 2009-06-25

Similar Documents

Publication Publication Date Title
JP6029923B2 (en) Method and apparatus for reading NAND flash memory
JP4989900B2 (en) Parallel processing unit
US7562198B2 (en) Semiconductor device and semiconductor signal processing apparatus
JP3853736B2 (en) User configurable on-chip memory system
US7840762B2 (en) Multi-path accessible semiconductor memory device having mailbox areas and mailbox access control method thereof
JP5261803B2 (en) High-speed fanout system architecture and input / output circuit for non-volatile memory
JP4978473B2 (en) SRAM circuit and buffer circuit using the same
KR100642436B1 (en) Pipe latch circuits of multi-bit pre-fetch type semiconductor memory device with improved structure
JP2008090419A (en) Integrated circuit device
JP2001273774A5 (en)
US8862836B2 (en) Multi-port register file with an input pipelined architecture with asynchronous reads and localized feedback
TWI497495B (en) Method and apparatus for reading nand flash memory
JP4854277B2 (en) Orthogonal transformation circuit
JP4708723B2 (en) Semiconductor memory device
JP5145581B2 (en) Orthogonal transformation circuit
KR20190028127A (en) Data control circuit, semiconductor memory apparatus and semiconductor system including the same
US7386650B2 (en) Memory test circuit with data expander
JP2005182538A (en) Data transfer device
JPH10177790A (en) Pre-fetch method of memory element and memory structure adapting this method
JPH0844560A (en) Memory control circuit and integrated circuit element incorporating this circuit
JP6493044B2 (en) Multiprocessor system
Donchev et al. External memory controller for Virtex II Pro
JP4557179B2 (en) Microcomputer device
JPH07226079A (en) Semiconductor memory
JPH1145207A (en) Data bus conversion system

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20100602

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100826

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121030

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121106

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees