JPH01265358A - Bit reversing circuit - Google Patents
Bit reversing circuitInfo
- Publication number
- JPH01265358A JPH01265358A JP9380988A JP9380988A JPH01265358A JP H01265358 A JPH01265358 A JP H01265358A JP 9380988 A JP9380988 A JP 9380988A JP 9380988 A JP9380988 A JP 9380988A JP H01265358 A JPH01265358 A JP H01265358A
- Authority
- JP
- Japan
- Prior art keywords
- address
- output
- counter
- data
- data stored
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000015654 memory Effects 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 11
- RRLHMJHRFMHVNM-BQVXCWBNSA-N [(2s,3r,6r)-6-[5-[5-hydroxy-3-(4-hydroxyphenyl)-4-oxochromen-7-yl]oxypentoxy]-2-methyl-3,6-dihydro-2h-pyran-3-yl] acetate Chemical compound C1=C[C@@H](OC(C)=O)[C@H](C)O[C@H]1OCCCCCOC1=CC(O)=C2C(=O)C(C=3C=CC(O)=CC=3)=COC2=C1 RRLHMJHRFMHVNM-BQVXCWBNSA-N 0.000 description 5
- 230000000630 rising effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 241001494479 Pecora Species 0.000 description 1
- 238000005553 drilling Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
Landscapes
- Complex Calculations (AREA)
Abstract
Description
【発明の詳細な説明】
〔(既 要〕
ディジタル信号処理プロセッサ(以下DSPと称する)
において高速フーリエ変換(以下FFTと称する)を行
う場合に必要となるデータの並べかえ(ビットリバース
)回路に関し、
PFTを小容量、低コストのメモリで行うビットリバー
ス回、路を提供することを目的とし、第1の記憶手段の
アドレスを示すデータを所定の順序で出力するカウンタ
と、カウンタの出力データのビットを逆順に並べかえる
ビットリバース手段と、カウンタ及びビットリバース手
段の出力の大小を比較する比較手段と、比較手段の出力
に応じて制御手段の出力の制御信号により、カウンタと
ビットリバース手段の出力の一方を選択して出力する選
択手段と、選択手段の出力のアドレスを示すデータを入
力してアドレスに記憶したデータを読み出し、制御手段
の出力制御信号により決められる所定のタイミングで第
2及び第3の記憶手段に記憶したデータを読み出して所
定のアドレスに書き込む第1の記憶手段と、第1の記憶
手段の所定のアドレスに記憶したデータを制御手段の出
力制御信号により決められる所定のタイミングで読み出
して書き込む第2及び第3の記憶手段とで構成する。[Detailed description of the invention] [(Already required)] Digital signal processing processor (hereinafter referred to as DSP)
Regarding the data rearrangement (bit reverse) circuit required when performing fast Fourier transform (hereinafter referred to as FFT) in , a counter that outputs data indicating the address of the first storage means in a predetermined order, a bit reversing means that rearranges the bits of the output data of the counter in reverse order, and a comparison that compares the magnitude of the outputs of the counter and the bit reversing means. a selection means for selecting and outputting one of the outputs of the counter and the bit reversing means according to a control signal output from the control means in accordance with the output of the comparison means; and data indicating an address of the output of the selection means. a first storage means for reading out the data stored in the address in the second and third storage means at a predetermined timing determined by an output control signal of the control means, and writing the data stored in the second and third storage means in the predetermined address; The second and third storage means read and write data stored at a predetermined address in the first storage means at a predetermined timing determined by an output control signal from the control means.
本発明は、DSPにおいてFFTを行う場合に必要とな
るビットリバース回路の改良に関するものである。The present invention relates to an improvement of a bit reverse circuit required when performing FFT in a DSP.
この際、FFTを小容量、低コストのメモリで行うビッ
トリバース回路が要望されている。At this time, there is a demand for a bit reverse circuit that performs FFT using a small-capacity, low-cost memory.
第6図は従来例の回路構成ブロック図である。 FIG. 6 is a block diagram of a circuit configuration of a conventional example.
第7図は従来例の動作を説明する図である。FIG. 7 is a diagram explaining the operation of the conventional example.
第6図において、カウンタ1から例えば3ビツトからな
るアドレスを示す信号データを順に発生するとする。こ
れを第7図に入力アドレスで示している。上記入力アド
レス信号をランダムアクセス・メモリ (以下RAMと
称する)2に入力して、入力アドレス信号で示されるア
ドレスに記憶されたデータをRAM 2から読み出す。In FIG. 6, it is assumed that the counter 1 sequentially generates signal data indicating an address consisting of, for example, 3 bits. This is shown in FIG. 7 using input addresses. The input address signal is input to a random access memory (hereinafter referred to as RAM) 2, and data stored at the address indicated by the input address signal is read from the RAM 2.
一方、カウンタ1の出力の入力アドレス信号をビットリ
バース回路(以下REVと称する)3に入力して、第7
図に示すようにそのビットを逆順に並べかえて出力する
。REV 3の出力を選択回路(以下SELと称する)
4に加える。SEL 4の他方の入力端子にはDSP
(図示しない)からのアドレス信号を加え、DSPか
らの制御信号により一方を選択して出力する。今の場合
、REV 3の出力を選択してRAM 5に加える。第
7図に示すように、RAM2への入力アドレスが例えば
“001”、即ち1番目のアドレスの時、ビットリバー
スアドレスは“100#、即ち4番目のアドレスに変換
されてRAM 5に入力される。そして、前述したRA
M 2の1番目のアドレスに記憶したデータを読み出し
て、RAM5の4番目のアドレスに書き込む。On the other hand, the input address signal output from the counter 1 is input to the bit reverse circuit (hereinafter referred to as REV) 3, and
As shown in the figure, the bits are rearranged in reverse order and output. REV 3 output selection circuit (hereinafter referred to as SEL)
Add to 4. The other input terminal of SEL 4 has a DSP
(not shown), and one of them is selected and output based on a control signal from the DSP. In this case, select the output of REV 3 and add it to RAM 5. As shown in FIG. 7, when the input address to RAM 2 is, for example, "001", that is, the first address, the bit reverse address is converted to "100#," that is, the fourth address, and is input to RAM 5. .And the above-mentioned RA
The data stored at the first address of M2 is read and written to the fourth address of RAM5.
又、RAM 2への入力アドレスが”100”、即ち4
番目のアドレスの時、4番目のアドレスに記憶したデー
タを読み出す。一方、RAM5ではREV 3でビット
リバースして“001”、即ち1番目のアドレス信号を
入力する。そしてRAM 501番目のアドレスに、上
記RAM 2から読み出した4番目のアドレスに記憶し
たデータを書き込む。Also, the input address to RAM 2 is "100", that is, 4.
At the 4th address, the data stored at the 4th address is read. On the other hand, in the RAM 5, bits are reversed by REV 3 and "001", that is, the first address signal is input. Then, the data read out from RAM 2 and stored at the fourth address is written into the 501st address of the RAM.
又、入力アドレス信号が“000”、“111” 、“
010”及び“101”の時は、ビットリバースしても
同じであるためRAM 5にはRAM 2と同じアドレ
スに記憶したデータを書き込む。Also, if the input address signal is “000”, “111”, “
010" and "101" are the same even if the bits are reversed, so the data stored in RAM 5 is written at the same address as RAM 2.
このようにしてデータのビットリバースを行っていた。In this way, data was bit reversed.
しかしながら上述のビットリバース回路においては、例
えばN個のデータに対しては2N個のメモリが必要とな
り、大容量、コスト高となるという問題点があった。However, in the above-mentioned bit reverse circuit, for example, 2N memories are required for N data, resulting in a large capacity and high cost.
したがって本発明の目的は、FFTを小容量、低コスト
のメモリで行うビットリバース回路を提供することにあ
る。Therefore, an object of the present invention is to provide a bit reverse circuit that performs FFT using a small-capacity, low-cost memory.
上記問題点は第1図に示す回路構成によって解決される
。The above problem is solved by the circuit configuration shown in FIG.
即ち第1図において、100は第1の記憶手段2゜Oの
アドレスを示すデータを所定の順序で出力するカウンタ
である。That is, in FIG. 1, 100 is a counter that outputs data indicating the address of the first storage means 2°O in a predetermined order.
300はカウンタの出力データのビットを逆順に並べか
えるビットリバース手段である。300 is a bit reversing means for rearranging the bits of the output data of the counter in reverse order.
600はカウンタ及びビットリバース手段の出力の大小
を比較する比較手段である。Reference numeral 600 denotes comparison means for comparing the magnitude of the outputs of the counter and bit reversing means.
700は比較手段の出力に応じて制御手段650の出力
の制御信号により、カウンタとビットリバース手段の出
力の一方を選択して出力する選択手段である。Reference numeral 700 denotes a selection means for selecting and outputting one of the outputs of the counter and the bit reversing means using a control signal output from the control means 650 in accordance with the output of the comparison means.
200は選択手段の出力のアドレスを示すデータを入力
してアドレスに記憶したデータを読み出し、制御手段の
出力制御信号により決められる所定のタイミングで第2
及び第3の記憶手段800.900に記憶したデータを
読み出して所定のアドレスに書き込む第1の記憶手段で
ある。200 inputs data indicating the address of the output of the selection means, reads out the data stored in the address, and selects the second output at a predetermined timing determined by the output control signal of the control means.
and a first storage means that reads data stored in the third storage means 800 and 900 and writes it to a predetermined address.
800及び900は第1の記憶手段の所定のアドレスに
記憶したデータを制御手段の出力制御信号により決めら
れる所定のタイミングで読み出して書き込む第2及び第
3の記憶手段である。Reference numerals 800 and 900 denote second and third storage means that read and write data stored at predetermined addresses in the first storage means at predetermined timings determined by output control signals from the control means.
第1図において、カウンタ100において、第1の記憶
手段200のアドレスを示すデータを所定の順序で出力
する。カウンタ100の出力をビットリバース手段30
0に加えて、カウンタの出力データのビットを逆順に並
べかえる。In FIG. 1, a counter 100 outputs data indicating addresses of a first storage means 200 in a predetermined order. The bit reversing means 30 converts the output of the counter 100 into
In addition to 0, the bits of the output data of the counter are rearranged in reverse order.
そして比較手段600においてカウンタ及びビットリバ
ース手段の出力の大小を比較し、選択手段700におい
て比較手段の出力に応じて制御手段650の出力の制御
信号により、カウンタとビットリバース手段の出力の一
方を選択して出力する。Comparing means 600 compares the outputs of the counter and bit reversing means, and selecting means 700 selects one of the outputs of the counter and bit reversing means according to the output of the comparing means using the control signal of the output of control means 650. and output it.
第1の記憶手段200において、選択手段の出力のアド
レスを示すデータを入力してアドレスに記憶したデータ
を読み出す。又、制御手段の出力制御信号により決めら
れる所定のタイミングで第2及び第3の記憶手段800
.900に記憶したデータを読み出して所定のアドレス
に書き込む。In the first storage means 200, data indicating the address of the output of the selection means is input and the data stored at the address is read out. Further, the second and third storage means 800 are stored at a predetermined timing determined by the output control signal of the control means.
.. The data stored in 900 is read out and written to a predetermined address.
第2及び第3の記憶手段800 、900において、第
1の記憶手段の所定のアドレスに記憶したデータを制御
手段の出力制御信号により決められる所定のタイミング
で読み出して書き込む。In the second and third storage means 800 and 900, data stored at a predetermined address in the first storage means is read and written at a predetermined timing determined by an output control signal from the control means.
この結果、FFTを小容量、低コストのメモリで行うこ
とができる。As a result, FFT can be performed using a small-capacity, low-cost memory.
第2図は本発明の実施例の回路構成ブロック図である。 FIG. 2 is a circuit configuration block diagram of an embodiment of the present invention.
第3図は実施例の動作を説明する図である。FIG. 3 is a diagram illustrating the operation of the embodiment.
第4図は実施例の動作を説明するタイムチャートである
。FIG. 4 is a time chart explaining the operation of the embodiment.
第5図は実施例の動作を説明するフローチャートである
。FIG. 5 is a flowchart explaining the operation of the embodiment.
全図を通じて同一符号は同一対象物を示す。The same reference numerals indicate the same objects throughout the figures.
第2図において、カウンタ10で発生したアドレス信号
はソフトウェアで作った比較器(以下CMPと称する)
60の一方の入力端子(a)に入力され、上記アドレス
信号がREV30により反転されて他方の入力端子(b
)に入力される。CMP60で両者を比較し、カウンタ
から直接入力した値(a)がREV30の出力値(bl
より小の時だけ、第4図に示すようにCMP60の出力
は“1”となり、この出力が制御回路(以下C0NTと
称する)65に加えられる。これは例えば第3図に示す
入力アドレスが“001” (数字の1)でビットリバ
ースアドレスが“100″′ (数字の4)の場合であ
る。そして第4図Aに示す制御信号が5EL70に加え
られる。CMP60出力の“1”の期間を4等分した最
初の1区間■においてAは0″ となり、5EL70は
カウンタ10の出力を選択して出力する。In FIG. 2, the address signal generated by the counter 10 is connected to a comparator (hereinafter referred to as CMP) created by software.
The address signal is input to one input terminal (a) of REV 60, and the address signal is inverted by REV 30 and sent to the other input terminal (b).
) is entered. Compare the two with CMP60, and the value directly input from the counter (a) is the output value of REV30 (bl
Only when it is smaller, the output of the CMP 60 becomes "1" as shown in FIG. 4, and this output is applied to a control circuit (hereinafter referred to as C0NT) 65. This is the case, for example, when the input address shown in FIG. 3 is "001" (number 1) and the bit reverse address is "100"' (number 4). The control signal shown in FIG. 4A is then applied to 5EL70. In the first section {circle around (2)} which divides the period of "1" of the output of the CMP 60 into four equal parts, A becomes 0'', and the 5EL 70 selects and outputs the output of the counter 10.
上記出力がRAM20に加えられると、RAM20では
1番目のアドレス(上述した“001”)に記憶したデ
ータが読み出され、第4図に示すC0NT65の出力制
御信号Bのパルスの“0”から“1”への立ち上がり部
分を利用して、レジスタ(以下REGと称する) 80
に書き込まれる。When the above output is applied to the RAM 20, the data stored in the first address (“001” mentioned above) is read out in the RAM 20, and the pulse “0” of the output control signal B of the C0NT65 shown in FIG. Register (hereinafter referred to as REG) 80 using the rising portion to 1”
will be written to.
次に第4図に示すAが1″になり、5EL70はREV
30の出力を選択して出力する。この結果、上述の“0
01”をビットリバースした“100”を124M20
に入力して4番目のアドレス(“100”)に記憶した
データを読み出し、第4図に示す制御信号Cのパルスの
“0”から“1”への立ち上がり部分を利用して、RE
G90に書き込む。(第4図■の区間)。Next, A shown in Figure 4 becomes 1'', and 5EL70 becomes REV.
30 outputs are selected and output. As a result, the above “0”
124M20 is “100” which is bit reversed from “01”.
The data stored in the fourth address ("100") is read out, and using the rising part of the pulse of control signal C from "0" to "1" shown in FIG.
Write to G90. (section ■ in Figure 4).
次に第4図に示す■の区間でゲート85に制御信号りが
加えられ、この区間でゲート85がオンとなり導通状態
となって、REG80に記憶したデータが読み出される
。そして第4図に示す制御信号FによりRAM20の4
番目のアドレスに書き込まれる。Next, a control signal is applied to the gate 85 in the section 3 shown in FIG. 4, and in this section the gate 85 is turned on and becomes conductive, and the data stored in the REG 80 is read out. 4 of the RAM 20 by the control signal F shown in FIG.
written to the th address.
次に第4図に示す■の区間では制御信号Aが“0”とな
り、5EL70はカウンタ10の出力アドレス信号(今
の場合“001)を選択してl’lAM20に加える。Next, in the section (■) shown in FIG. 4, the control signal A becomes "0", and the 5EL70 selects the output address signal of the counter 10 (in this case "001") and adds it to the l'lAM20.
同時にゲート95に制御信号Eが加えられ、この区間で
ゲート95がオンとなって、REG90に記憶したデー
タが読み出される。そして第4図に示す制御信号Fのパ
ルスの立ち上がり部分を利用して、上記データがRAM
20の1番目のアドレスに書き込まれる。At the same time, a control signal E is applied to the gate 95, the gate 95 is turned on during this period, and the data stored in the REG 90 is read out. Then, using the rising edge of the pulse of the control signal F shown in FIG.
It is written to the first address of 20.
この結果、RAM20においては、1番目のアドレスじ
001”)に4番目のアドレスのデータが書き込まれ、
4番目のアドレスに1番目のアドレスのデータが書き込
まれたことになる。As a result, in the RAM 20, the data of the fourth address is written to the first address (001"),
This means that the data of the first address has been written to the fourth address.
第3図に示す入力アドレスが“011”、ビットリバー
スアドレスが“110”の場合も上述の場合と同様にし
て行われる。In the case where the input address shown in FIG. 3 is "011" and the bit reverse address is "110", processing is performed in the same manner as in the above case.
尚、第5図に実施例の動作をフローチャートで示してい
る。Incidentally, FIG. 5 shows a flowchart of the operation of the embodiment.
このようにしてデータのビットリバースを行うことがで
きる。In this way, bit reversal of data can be performed.
以上説明したように本発明によれば、FFTを小容量、
低コストのメモリで行うことができる。これは入力デー
タの数が大きいほど、効果も大きくなる。As explained above, according to the present invention, FFT is performed with a small capacity,
This can be done using low-cost memory. The larger the number of input data, the greater the effect.
第1図は本発明の原理図、
第2図は本発明の実施例の回路構成ブロック図、第3図
は実施例の動作を説明する図、
第4図は実施例の動作を説明するタイムチャート、
第5図は実施例の動作を説明するフローチャート、
第6図は従来例の回路構成ブロック図、第7図は従来例
の動作を説明する図である。
図において
100はカウンタ、
200は第1の記憶手段、
300はビットリバース手段、
600は比較手段、
650は制御手段、
700は選択手段、
800は第2の記憶手段、
900は第3の記憶手段
を示す。
第1図
単2図
/l/ = 11/ O
RAM2θ
穴加イタ゛1の動作2説明する図
単 3 図
羊4図
*施f列のa作?脱口月するフローチャート竿 51困Fig. 1 is a diagram of the principle of the present invention, Fig. 2 is a circuit configuration block diagram of an embodiment of the invention, Fig. 3 is a diagram explaining the operation of the embodiment, and Fig. 4 is a timing diagram explaining the operation of the embodiment. FIG. 5 is a flowchart explaining the operation of the embodiment, FIG. 6 is a circuit configuration block diagram of the conventional example, and FIG. 7 is a diagram explaining the operation of the conventional example. In the figure, 100 is a counter, 200 is a first storage means, 300 is a bit reverse means, 600 is a comparison means, 650 is a control means, 700 is a selection means, 800 is a second storage means, 900 is a third storage means shows. Figure 1 Single 2 Figure /l/ = 11/ O RAM2θ Hole Drilling Timer 1 Operation 2 Diagram Explaining Single Figure 3 Figure Sheep Figure 4 *A work in row f? Flowchart rod that takes off the mouth 51 troubles
Claims (1)
定の順序で出力するカウンタ(100)と、該カウンタ
の出力データのビットを逆順に並べかえるビットリバー
ス手段(300)と、 該カウンタ及びビットリバース手段の出力の大小を比較
する比較手段(600)と、 該比較手段の出力に応じて制御手段(650)の出力の
制御信号により、該カウンタと該ビットリバース手段の
出力の一方を選択して出力する選択手段(700)と、 該選択手段の出力のアドレスを示すデータを入力して該
アドレスに記憶したデータを読み出し、制御手段の出力
制御信号により決められる所定のタイミングで第2及び
第3の記憶手段(800、900)に記憶したデータを
読み出して所定のアドレスに書き込む第1の記憶手段(
200)と、 該第1の記憶手段の所定のアドレスに記憶したデータを
制御手段の出力制御信号により決められる所定のタイミ
ングで読み出して書き込む第2及び第3の記憶手段(8
00、900)とを有することを特徴とするビットリバ
ース回路。[Scope of Claims] A counter (100) that outputs data indicating the address of the first storage means (200) in a predetermined order, and a bit reversing means (300) that rearranges the bits of the output data of the counter in reverse order. a comparing means (600) for comparing the magnitude of the outputs of the counter and the bit reversing means; and a control signal of the output of the control means (650) according to the output of the comparing means. a selection means (700) for selecting and outputting one of the outputs; inputting data indicating the address of the output of the selection means and reading out the data stored at the address; The first storage means (reads the data stored in the second and third storage means (800, 900) at a timing and writes it to a predetermined address.
200), and second and third storage means (8) for reading and writing data stored at a predetermined address of the first storage means at a predetermined timing determined by an output control signal of the control means.
00, 900).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9380988A JPH01265358A (en) | 1988-04-15 | 1988-04-15 | Bit reversing circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9380988A JPH01265358A (en) | 1988-04-15 | 1988-04-15 | Bit reversing circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01265358A true JPH01265358A (en) | 1989-10-23 |
Family
ID=14092731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9380988A Pending JPH01265358A (en) | 1988-04-15 | 1988-04-15 | Bit reversing circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01265358A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008021200A (en) * | 2006-07-14 | 2008-01-31 | Fujitsu Ltd | Data position conversion device and data position conversion method |
-
1988
- 1988-04-15 JP JP9380988A patent/JPH01265358A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008021200A (en) * | 2006-07-14 | 2008-01-31 | Fujitsu Ltd | Data position conversion device and data position conversion method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7707328B2 (en) | Memory access control circuit | |
JPH0528765A (en) | Memory control circuit | |
JP2003007054A (en) | Semiconductor memory | |
US20060059320A1 (en) | Memory control device | |
JP5446384B2 (en) | Interface circuit, memory system, and access control method | |
JPH01265358A (en) | Bit reversing circuit | |
US6862667B2 (en) | Synchronous DRAM utilizable as shared memory | |
JPH05210572A (en) | Memory controller | |
JPH0556598B2 (en) | ||
JPH0830434A (en) | Memory access controller | |
JPS63163938A (en) | Dynamic ram controller | |
JP2595998B2 (en) | Electronic musical instrument | |
JP3469923B2 (en) | Binary output signal programmer | |
JPH0512104A (en) | Data storage controller | |
KR910006792B1 (en) | Access memory expansion circuit of direcrt memory access controller | |
KR950008663B1 (en) | Dram access control apparatus | |
JP2590695B2 (en) | Time division switch circuit | |
JPS63129436A (en) | Processor integrated circuit | |
JPH06110777A (en) | Gate array controller | |
KR19980028922A (en) | Semiconductor memory device | |
JPH03116256A (en) | Memory device | |
JPH05289938A (en) | Memory access device | |
JPH06301629A (en) | Main storage device | |
JPH06119236A (en) | Main storage control circuit | |
JPS6231091A (en) | System for controlling refresh of dynamic memory |