Line 23... |
Line 23... |
//------------------------------------------------------
|
//------------------------------------------------------
|
// Revision Number : 3
|
// Revision Number : 3
|
// Date of Change : 30th April 2003
|
// Date of Change : 30th April 2003
|
// Modifier : Thorn Aitch
|
// Modifier : Thorn Aitch
|
// Description : Release Version 1.0
|
// Description : Release Version 1.0
|
|
//------------------------------------------------------
|
|
// Revision Number : 4
|
|
// Date of Change : 10th December 2003
|
|
// Modifier : Thorn Aitch
|
|
// Description : Release Version 1.1
|
|
// Inhibit substitution of "x"
|
|
// except for defalut statement whose
|
|
// case describes all logic spaces.
|
//======================================================
|
//======================================================
|
// Copyright (C) 2002-2003, Thorn Aitch
|
// Copyright (C) 2002-2003, Thorn Aitch
|
//
|
//
|
// Designs can be altered while keeping list of
|
// Designs can be altered while keeping list of
|
// modifications "the same as in GNU" No money can
|
// modifications "the same as in GNU" No money can
|
Line 494... |
Line 502... |
DATO_PREV[15: 8] <= MA_DW[15: 8];
|
DATO_PREV[15: 8] <= MA_DW[15: 8];
|
DATO_PREV[ 7: 0] <= MA_DW[ 7: 0];
|
DATO_PREV[ 7: 0] <= MA_DW[ 7: 0];
|
end
|
end
|
default: // 2'b11 don't care
|
default: // 2'b11 don't care
|
begin
|
begin
|
DATO_PREV[31:24] <= 8'hxx;
|
DATO_PREV[31:24] <= MA_DW[31:24]; // Thorn Aitch 2003/12/10
|
DATO_PREV[23:16] <= 8'hxx;
|
DATO_PREV[23:16] <= MA_DW[23:16]; // Thorn Aitch 2003/12/10
|
DATO_PREV[15: 8] <= 8'hxx;
|
DATO_PREV[15: 8] <= MA_DW[15: 8]; // Thorn Aitch 2003/12/10
|
DATO_PREV[ 7: 0] <= 8'hxx;
|
DATO_PREV[ 7: 0] <= MA_DW[15: 8]; // Thorn Aitch 2003/12/10
|
end
|
end
|
endcase
|
endcase
|
end
|
end
|
|
|
// output
|
// output
|
Line 536... |
Line 544... |
else
|
else
|
IF_DR <= IF_DR_PREV[15:0];
|
IF_DR <= IF_DR_PREV[15:0];
|
end
|
end
|
else
|
else
|
// IF from IF_BUF
|
// IF from IF_BUF
|
if ((IF_STATE[2] == 1'b1) && (IF_STATE[0] == 1'b1)) // `S_IFIN or `S_MAEX_IFIN
|
//if ((IF_STATE[2] == 1'b1) && (IF_STATE[0] == 1'b1)) // `S_IFIN or `S_MAEX_IFIN
|
IF_DR <= IF_IF_BUF;
|
// IF_DR <= IF_IF_BUF; // Thorn Aitch 2003/12/10
|
else
|
//else // Thorn Aitch 2003/12/10
|
IF_DR <= 32'hxxxxxxxx;
|
// IF_DR <= 32'hxxxxxxxx; // Thorn Aitch 2003/12/10
|
|
IF_DR <= IF_IF_BUF; // Thorn Aitch 2003/12/10
|
end
|
end
|
// output
|
// output
|
//always @(posedge CLK) begin
|
//always @(posedge CLK) begin
|
// if ((MEMEND == 1'b1) & ((STATE == `S_IFEX) | ((STATE[2] == 1'b1) && (STATE[0] == 1'b1))))
|
// if ((MEMEND == 1'b1) & ((STATE == `S_IFEX) | ((STATE[2] == 1'b1) && (STATE[0] == 1'b1))))
|
// begin
|
// begin
|
Line 615... |
Line 624... |
end
|
end
|
2'b10: begin //long
|
2'b10: begin //long
|
MA_DR[31:0] <= MA_DR_PREV[31:0];
|
MA_DR[31:0] <= MA_DR_PREV[31:0];
|
end
|
end
|
default : begin
|
default : begin
|
MA_DR[31:0] <= 32'hxxxxxxxx;
|
//MA_DR[31:0] <= 32'hxxxxxxxx; // Thorn Aitch 2003/12/10
|
|
MA_DR[31:0] <= MA_DR_PREV[31:0]; // Thorn Aitch 2003/12/10
|
end
|
end
|
endcase
|
endcase
|
end
|
end
|
// output
|
// output
|
//always @(posedge CLK) begin
|
//always @(posedge CLK) begin
|