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

Subversion Repositories aemb

[/] [aemb/] [trunk/] [rtl/] [verilog/] [aeMB_ibuf.v] - Diff between revs 96 and 103

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

Rev 96 Rev 103
Line 1... Line 1...
/* $Id: aeMB_ibuf.v,v 1.8 2007-12-25 22:15:09 sybreon Exp $
/* $Id: aeMB_ibuf.v,v 1.9 2008-01-19 16:01:22 sybreon Exp $
**
**
** AEMB INSTRUCTION BUFFER
** AEMB INSTRUCTION BUFFER
** Copyright (C) 2004-2007 Shawn Tan Ser Ngiap <shawn.tan@aeste.net>
** Copyright (C) 2004-2007 Shawn Tan Ser Ngiap <shawn.tan@aeste.net>
**
**
** This file is part of AEMB.
** This file is part of AEMB.
Line 22... Line 22...
module aeMB_ibuf (/*AUTOARG*/
module aeMB_ibuf (/*AUTOARG*/
   // Outputs
   // Outputs
   rIMM, rRA, rRD, rRB, rALT, rOPC, rSIMM, xIREG, rSTALL, iwb_stb_o,
   rIMM, rRA, rRD, rRB, rALT, rOPC, rSIMM, xIREG, rSTALL, iwb_stb_o,
   // Inputs
   // Inputs
   rBRA, rMSR_IE, rMSR_BIP, iwb_dat_i, iwb_ack_i, sys_int_i, gclk,
   rBRA, rMSR_IE, rMSR_BIP, iwb_dat_i, iwb_ack_i, sys_int_i, gclk,
   grst, gena
   grst, gena, oena
   );
   );
   // INTERNAL
   // INTERNAL
   output [15:0] rIMM;
   output [15:0] rIMM;
   output [4:0]  rRA, rRD, rRB;
   output [4:0]  rRA, rRD, rRB;
   output [10:0] rALT;
   output [10:0] rALT;
Line 47... Line 47...
 
 
   // SYSTEM
   // SYSTEM
   input         sys_int_i;
   input         sys_int_i;
 
 
   // SYSTEM
   // SYSTEM
   input         gclk, grst, gena;
   input         gclk, grst, gena, oena;
 
 
   reg [15:0]     rIMM;
   reg [15:0]     rIMM;
   reg [4:0]      rRA, rRD;
   reg [4:0]      rRA, rRD;
   reg [5:0]      rOPC;
   reg [5:0]      rOPC;
 
 
Line 142... Line 142...
        /*AUTORESET*/
        /*AUTORESET*/
        // Beginning of autoreset for uninitialized flops
        // Beginning of autoreset for uninitialized flops
        rSTALL <= 1'h0;
        rSTALL <= 1'h0;
        // End of automatics
        // End of automatics
     end else begin
     end else begin
        rSTALL <= #1 !rSTALL & (fMUL | fBSF);
        rSTALL <= #1 (!rSTALL & (fMUL | fBSF)) | (oena & rSTALL);
     end
     end
 
 
endmodule // aeMB_ibuf
endmodule // aeMB_ibuf
 
 
/*
/*
 $Log: not supported by cvs2svn $
 $Log: not supported by cvs2svn $
 
 Revision 1.8  2007/12/25 22:15:09  sybreon
 
 Stalls pipeline on MUL/BSF instructions results in minor speed improvements.
 
 
 Revision 1.7  2007/11/22 15:11:15  sybreon
 Revision 1.7  2007/11/22 15:11:15  sybreon
 Change interrupt to positive level triggered interrupts.
 Change interrupt to positive level triggered interrupts.
 
 
 Revision 1.6  2007/11/14 23:39:51  sybreon
 Revision 1.6  2007/11/14 23:39:51  sybreon
 Fixed interrupt signal synchronisation.
 Fixed interrupt signal synchronisation.

powered by: WebSVN 2.1.0

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