⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pound_defines.h

📁 在cycloneII里实现对FFT的硬件加速
💻 H
字号:
#ifndef _POUND_DEFINES_H_
#define _POUND_DEFINES_H_


#define NUM_ITERATIONS 1000  
#define NUM_POINTS 256       /* Don't touch (input data size) */
#define FFT_SIZE 8           /* Don't touch, this is log2(NUM_POINTS) */
#define PRESCALE 15 
#define BUTTERFLY_SCALE_FACTOR 15

#define BufferRAM1 (alt_16 *)0x0000
#define BufferRAM2 (alt_16 *)0x0200
#define BufferRAM3 (alt_16 *)0x0400
#define BufferRAM4 (alt_16 *)0x0600
#define CosRAM (alt_16 *)0x0800
#define SinRAM (alt_16 *)0x0A00

/* Here is macro to bit reverse an char */
#define bitrev(b) (((b)<<7)&0x80) |  \
      (((b)<<5)&0x40) |  \
      (((b)<<3)&0x20) |  \
      (((b)<<1)&0x10) |  \
      (((b)>>1)&0x08) |  \
      (((b)>>3)&0x04) |  \
      (((b)>>5)&0x02) |  \
      (((b)>>7)&0x01)

/* These pragmas below are pointers to be bound to a specific memory
 * in order to reduce the arbitration (instead of connecting the master to
 * everything */
#pragma altera_accelerate connect_variable accelerator_optimized_fft/tempInputPtr to sdram arbitration_share 100
#pragma altera_accelerate connect_variable accelerator_optimized_fft/tempCosinePtr to sdram arbitration_share 100
#pragma altera_accelerate connect_variable accelerator_optimized_fft/tempOutputPtr to sdram arbitration_share 100
#pragma altera_accelerate connect_variable accelerator_optimized_fft/slaveSelection to sdram

#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedRealCalcDataRead to BufferRAM1/s1
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedRealCalcDataRead to BufferRAM2/s1

#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedRealCalcDataWrite to BufferRAM1/s1
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedRealCalcDataWrite to BufferRAM2/s1

/* Real input data rotations buffers port 2 */
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedRealCalcDataReadPort2 to BufferRAM1/s2
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedRealCalcDataReadPort2 to BufferRAM2/s2

#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedRealCalcDataWritePort2 to BufferRAM1/s2
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedRealCalcDataWritePort2 to BufferRAM2/s2

#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedImagCalcDataRead to BufferRAM3/s1
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedImagCalcDataRead to BufferRAM4/s1

#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedImagCalcDataWrite to BufferRAM3/s1
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedImagCalcDataWrite to BufferRAM4/s1

/* Imaginary input data rotation buffers port 2 */
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedImagCalcDataReadPort2 to BufferRAM3/s2
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedImagCalcDataReadPort2 to BufferRAM4/s2

#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedImagCalcDataWritePort2 to BufferRAM3/s2
#pragma altera_accelerate connect_variable accelerator_optimized_fft/BufferedImagCalcDataWritePort2 to BufferRAM4/s2

#pragma altera_accelerate connect_variable accelerator_optimized_fft/CosineTable to CosRAM

#pragma altera_accelerate connect_variable accelerator_optimized_fft/SineTable to SinRAM


#endif //_POUND_DEFINES_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -