OpenCores
URL https://opencores.org/ocsvn/xilinx_virtex_fp_library/xilinx_virtex_fp_library/trunk

Subversion Repositories xilinx_virtex_fp_library

[/] [xilinx_virtex_fp_library/] [trunk/] [GeneralPrecMAF/] [shifter.v] - Diff between revs 3 and 5

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 3 Rev 5
Line 45... Line 45...
                genvar i;
                genvar i;
                for (i = 0; i <= SHIFT_SIZE - 1; i = i + 1)
                for (i = 0; i <= SHIFT_SIZE - 1; i = i + 1)
                begin : BARREL_SHIFTER_GENERATION
                begin : BARREL_SHIFTER_GENERATION
                        if (DIRECTION == 1)
                        if (DIRECTION == 1)
                        begin : LEFT
                        begin : LEFT
                                //begin : 1st_check
 
                                        genvar j;
                                        genvar j;
                                        for (j = 0; j <= OUTPUT_SIZE - 1; j = j + 1)
                                        for (j = 0; j <= OUTPUT_SIZE - 1; j = j + 1)
                                        begin : MUX_GEN_L
                                        begin : MUX_GEN_L
                                                if (j < 2 ** i)
                                                if (j < 2 ** i)
                                                begin : ZERO_INS_L
                                                begin : ZERO_INS_L
Line 59... Line 58...
                                                if (j >= 2 ** i)
                                                if (j >= 2 ** i)
                                                begin : BIT_INS_L
                                                begin : BIT_INS_L
                                                        assign a_temp_d[i][j] = (shft[i] == 1'b0) ? a_temp_q[i][j] : a_temp_q[i][j-2**i];
                                                        assign a_temp_d[i][j] = (shft[i] == 1'b0) ? a_temp_q[i][j] : a_temp_q[i][j-2**i];
                                                end
                                                end
                                        end
                                        end
                                //end
 
                                  end
                                  end
 
 
                        if (DIRECTION == 0)
                        if (DIRECTION == 0)
                        begin : RIGHT
                        begin : RIGHT
                                //begin : 2nd_check
 
                                        genvar j;
                                        genvar j;
                                        for (j = 0; j <= OUTPUT_SIZE - 1; j = j + 1)
                                        for (j = 0; j <= OUTPUT_SIZE - 1; j = j + 1)
                                        begin : MUX_GEN_R
                                        begin : MUX_GEN_R
                                                if (OUTPUT_SIZE - 1 < 2 ** i + j)
                                                if (OUTPUT_SIZE - 1 < 2 ** i + j)
                                                begin : ZERO_INS_R
                                                begin : ZERO_INS_R
Line 78... Line 75...
                                                if (OUTPUT_SIZE - 1 >= 2 ** i + j)
                                                if (OUTPUT_SIZE - 1 >= 2 ** i + j)
                                                begin : BIT_INS_R
                                                begin : BIT_INS_R
                                                        assign a_temp_d[i][j] = (shft[i] == 1'b0) ? a_temp_q[i][j] : a_temp_q[i][j+2**i];
                                                        assign a_temp_d[i][j] = (shft[i] == 1'b0) ? a_temp_q[i][j] : a_temp_q[i][j+2**i];
                                                end
                                                end
                                        end
                                        end
                                //end
 
                        end
                        end
 
 
                        if (PIPELINE != 0)
                        if (PIPELINE != 0)
                        begin : PIPELINE_INSERTION
                        begin : PIPELINE_INSERTION
                                if (POSITION[i] == 1'b1)
                                if (POSITION[i] == 1'b1)

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.