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

Subversion Repositories next186

[/] [next186/] [trunk/] [Next186_ALU.v] - Diff between revs 16 and 17

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

Rev 16 Rev 17
Line 214... Line 214...
                                FOUT[0] = LONIBBLE;
                                FOUT[0] = LONIBBLE;
                                FOUT[4] = LONIBBLE;
                                FOUT[4] = LONIBBLE;
                        end
                        end
                        5'b10000, 5'b10001 : begin      // MUL, IMUL
                        5'b10000, 5'b10001 : begin      // MUL, IMUL
                                ALUOUT = STAGE[1] ? MUL[31:16] : MUL[15:0];
                                ALUOUT = STAGE[1] ? MUL[31:16] : MUL[15:0];
                                FOUT[0] = WORD ? !zero | (ALUOP[0] & MUL[15]): |MUL[15:8] | (ALUOP[0] & MUL[7]); //07Jul2013 - fixed OV/CY flags for IMUL
//07Jul2013 - fixed OV/CY flags for IMUL
 
                                if(ALUOP[0]) FOUT[0] = WORD ? MUL[31:16] != {16{MUL[15]}} : MUL[15:8] != {8{MUL[7]}}; // IMUL
 
                                else FOUT[0] = WORD ? !zero : |MUL[15:8];        // MUL
                                FOUT[11] = FOUT[0];
                                FOUT[11] = FOUT[0];
                        end
                        end
                        5'b11001: begin         // flag op
                        5'b11001: begin         // flag op
                                FOUT[11:8] = FIN[11:8];
                                FOUT[11:8] = FIN[11:8];
                                FOUT[7] = FIN[7];
                                FOUT[7] = FIN[7];

powered by: WebSVN 2.1.0

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