Research Article
Multiple Memory Structure Bit Reversal Algorithm Based on Recursive Patterns of Bit Reversal Permutation
Algorithm 3
C++ implementation of new BRA with four one-dimensional arrays for split = 2 (BRM_Split_2_4A).
Void mf_ BRM_Split_2_4A (unsigned int ui_NS, int ui_log2NS) | { | unsigned int ui_N | unsigned int ui_EB; | unsigned int ui_t; | unsigned int ui_L; | unsigned int ui_DL; | ui_N = ui_NS; // Number of samples | ui_t = ui_log2NS − 2; | ui_EB = ui_N/4; | ui_L = 1; | unsigned int* BRP1 = new unsigned int[ui_EB]; | unsigned int* BRP2 = new unsigned int[ui_EB]; | unsigned int* BRP3 = new unsigned int[ui_EB]; | unsigned int* BRP4 = new unsigned int[ui_EB]; | BRP10] = 0; | BRP20] = 2; | BRP30] = 1; | BRP40] = 3; | for (unsigned int q = 0; q < ui_t; q++) | { | ui_DL = ui_L + ui_L; | ui_N = ui_N/2; | for (unsigned int j = ui_L; j < ui_DL; j++) | { | BRP1[j] = BRP1[j − ui_L]+ ui_N; | BRP2[j] = BRP1[j] + 2; | BRP3[j] = BRP1[j] + 1; | BRP4[j] = BRP2[j] + 1; | } | ui_L = ui_L + ui_L; | } | delete BRO1; | delete BRO2; | delete BRO3; | delete BRO4; | } |
|