Line 30... |
Line 30... |
// 382@130
|
// 382@130
|
|
|
module aeMB2_exec (/*AUTOARG*/
|
module aeMB2_exec (/*AUTOARG*/
|
// Outputs
|
// Outputs
|
sfr_mx, mul_mx, msr_ex, mem_ex, bsf_mx, bpc_ex, alu_mx, alu_ex,
|
sfr_mx, mul_mx, msr_ex, mem_ex, bsf_mx, bpc_ex, alu_mx, alu_ex,
|
|
exc_ill,
|
// Inputs
|
// Inputs
|
rd_of, ra_of, opd_of, opc_of, opb_of, opa_of, imm_of, grst, gpha,
|
rd_of, ra_of, opd_of, opc_of, opb_of, opa_of, imm_of, grst, gpha,
|
gclk, dena
|
gclk, dena
|
);
|
);
|
parameter AEMB_IWB = 32;
|
parameter AEMB_IWB = 32;
|
Line 67... |
Line 68... |
input [4:0] ra_of; // To intu0 of aeMB2_intu.v
|
input [4:0] ra_of; // To intu0 of aeMB2_intu.v
|
input [4:0] rd_of; // To intu0 of aeMB2_intu.v
|
input [4:0] rd_of; // To intu0 of aeMB2_intu.v
|
// End of automatics
|
// End of automatics
|
/*AUTOWIRE*/
|
/*AUTOWIRE*/
|
|
|
|
|
|
output exc_ill;
|
|
|
|
reg exc_ill; // illegal instruction exception
|
|
|
|
//TODO: OPTIMISE!
|
|
wire wILL =
|
|
//(opc_of == 6'o23) | (opc_of == 6'o24) | (opc_of == 6'o25) | (opc_of == 6'o26) | opc_of == 6'o27) |
|
|
//(opc_of == 6'o32) | (opc_of == 6'o34) | (opc_of == 6'o35) | (opc_of == 6'o36) | opc_of == 6'o37) |
|
|
(opc_of == 6'o63) | (opc_of == 6'o67) | (opc_of == 6'o73) | (opc_of == 6'o77); // illegal load/store
|
|
|
|
always @(posedge gclk)
|
|
if (grst) begin
|
|
/*AUTORESET*/
|
|
// Beginning of autoreset for uninitialized flops
|
|
exc_ill <= 1'h0;
|
|
// End of automatics
|
|
end else if (dena) begin
|
|
exc_ill <= #1 wILL;
|
|
end
|
|
|
aeMB2_bsft
|
aeMB2_bsft
|
#(/*AUTOINSTPARAM*/
|
#(/*AUTOINSTPARAM*/
|
// Parameters
|
// Parameters
|
.AEMB_BSF (AEMB_BSF))
|
.AEMB_BSF (AEMB_BSF))
|
bsft0
|
bsft0
|
Line 132... |
Line 154... |
.dena (dena),
|
.dena (dena),
|
.gpha (gpha));
|
.gpha (gpha));
|
|
|
endmodule // aeMB2_exec
|
endmodule // aeMB2_exec
|
|
|
/*
|
|
$Log: not supported by cvs2svn $
|
|
Revision 1.3 2008/04/26 01:11:30 sybreon
|
|
Fixed minor typos.
|
|
|
|
Revision 1.2 2008/04/26 01:09:06 sybreon
|
|
Passes basic tests. Minor documentation changes to make it compatible with iverilog pre-processor.
|
|
|
|
Revision 1.1 2008/04/18 00:21:52 sybreon
|
|
Initial import.
|
|
*/
|
|
No newline at end of file
|
No newline at end of file
|