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

Subversion Repositories aemb

[/] [aemb/] [trunk/] [rtl/] [verilog/] [aeMB2_exec.v] - Diff between revs 191 and 202

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

Rev 191 Rev 202
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

powered by: WebSVN 2.1.0

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