Line 4... |
Line 4... |
* email : irezki@gmail.com
|
* email : irezki@gmail.com
|
* Topic : RTL Core
|
* Topic : RTL Core
|
* 2-Dimensional Fast Hartley Transform
|
* 2-Dimensional Fast Hartley Transform
|
*
|
*
|
* Compilation Notes:
|
* Compilation Notes:
|
* 1).Memory
|
* 1).Input Data
|
|
* - no min.negative value
|
|
* 2).Memory
|
* - if you use Xilinx FPGA for prototyping
|
* - if you use Xilinx FPGA for prototyping
|
* compile this code along with
|
* compile this code along with
|
* USE_FPGA_SPSRAM definition and
|
* USE_FPGA_SPSRAM definition and
|
* XilinxCoreLib library,
|
* XilinxCoreLib library,
|
* - otherwise compile this code
|
* - otherwise compile this code
|
* along with USE_ASIC_SPSRAM
|
* along with USE_ASIC_SPSRAM
|
* 2).Multiplier
|
* - max. bitwidth is 16bits
|
|
* 3).Multiplier
|
* - if you use Xilinx FPGA for prototyping
|
* - if you use Xilinx FPGA for prototyping
|
* compile this code along with
|
* compile this code along with
|
* USE_FPGA_MULT definition
|
* USE_FPGA_MULT definition
|
* - otherwise compile this code
|
* - otherwise compile this code
|
* along with USE_ASIC_MULT
|
* along with USE_ASIC_MULT
|
*
|
*
|
* TOP Level
|
* TOP Level
|
* 2D FHT 64 points -> ... clk delay
|
* 2D FHT 64 points -> ... clk delay
|
*
|
*
|
* +------------------------+
|
* +-------------------------+
|
* | |
|
* | |
|
* --->| 2D FHT/64 Points |--->
|
* --->| 2D FHT/8x8 Points |--->
|
* | |
|
* | |
|
* +------------------------+
|
* +-------------------------+
|
* |<---- .. clk delay ---->|
|
* |<---- ... clk delay ---->|
|
*
|
*
|
|
* Input Data : [N-1:0] signed
|
|
* Output Data : [N+5:0] signed
|
*
|
*
|
* Data is coming from somewhere (e.g. memory) with sclk one by one.
|
* Data is coming from somewhere (e.g. memory) with sclk one by one.
|
* 1st step 1D FHT by rows:
|
* 1st step 1D FHT by rows:
|
* - Shift Register for 8 points -> ... clk delay
|
* - Shift Register for 8 points -> ... clk delay
|
* - Alligner
|
* - Alligner
|
Line 61... |
Line 66... |
* EVENT SHALL THE AUTHOR OR AUTHORS BE LIABLE FOR ANY DAMAGES,
|
* EVENT SHALL THE AUTHOR OR AUTHORS BE LIABLE FOR ANY DAMAGES,
|
* INCLUDING INCIDENTAL OR CONSEQUENTIAL DAMAGES, ARISING OUT OF THE
|
* INCLUDING INCIDENTAL OR CONSEQUENTIAL DAMAGES, ARISING OUT OF THE
|
* USE OF THIS CODE.
|
* USE OF THIS CODE.
|
**********************************************************************/
|
**********************************************************************/
|
|
|
// NOTES:
|
|
// 1. Matrix Transposition maximum data width is 16 bits.
|
|
|
|
// ----->>> Define Multiplier Type
|
// ----->>> Define Multiplier Type
|
`define USE_ASIC_MULT
|
//`define USE_ASIC_MULT
|
//`define USE_FPGA_MULT
|
//`define USE_FPGA_MULT
|
|
|
// ----->>> Define Memory Type
|
// ----->>> Define Memory Type
|
//`define USE_FPGA_SPSRAM
|
//`define USE_FPGA_SPSRAM
|
`define USE_ASIC_SPSRAM
|
//`define USE_ASIC_SPSRAM
|
|
|
module fht_8x8_core (
|
module fht_8x8_core (
|
rstn,
|
rstn,
|
sclk,
|
sclk,
|
|
|