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];
  BRP1 0] = 0;
  BRP2 0] = 2;
  BRP3 0] = 1;
  BRP4 0] = 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;
  }