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

Subversion Repositories s1_core

[/] [s1_core/] [trunk/] [hdl/] [rtl/] [sparc_core/] [sparc_ifu_wseldp.v] - Diff between revs 105 and 113

Show entire file | Details | Blame | View Log

Rev 105 Rev 113
Line 16... Line 16...
// You should have received a copy of the GNU General Public
// You should have received a copy of the GNU General Public
// License along with this work; if not, write to the Free Software
// License along with this work; if not, write to the Free Software
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
// 
// 
// ========== Copyright Header End ============================================
// ========== Copyright Header End ============================================
 
`ifdef SIMPLY_RISC_TWEAKS
 
`define SIMPLY_RISC_SCANIN .si(0)
 
`else
 
`define SIMPLY_RISC_SCANIN .si()
 
`endif
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
/*
/*
//  Module Name: sparc_ifu_wsel
//  Module Name: sparc_ifu_wsel
//  Description:
//  Description:
//     Way selects removed from icache and done here
//     Way selects removed from icache and done here
Line 70... Line 75...
   //------------------
   //------------------
 
 
   assign   clk = rclk;
   assign   clk = rclk;
 
 
   // flop and decode waysel
   // flop and decode waysel
   dff #(2) asiway_reg(.din (ifq_erb_asiway_f),
   dff_s #(2) asiway_reg(.din (ifq_erb_asiway_f),
                       .q   (asiway_s),
                       .q   (asiway_s),
                       .clk (clk), .se(se), .si(), .so());
                       .clk (clk), .se(se), `SIMPLY_RISC_SCANIN, .so());
   assign   dec_asiway_s_l[0] = ~(~asiway_s[1] & ~asiway_s[0]);
   assign   dec_asiway_s_l[0] = ~(~asiway_s[1] & ~asiway_s[0]);
   assign   dec_asiway_s_l[1] = ~(~asiway_s[1] &  asiway_s[0]);
   assign   dec_asiway_s_l[1] = ~(~asiway_s[1] &  asiway_s[0]);
   assign   dec_asiway_s_l[2] = ~( asiway_s[1] & ~asiway_s[0]);
   assign   dec_asiway_s_l[2] = ~( asiway_s[1] & ~asiway_s[0]);
   assign   dec_asiway_s_l[3] = ~( asiway_s[1] &  asiway_s[0]);
   assign   dec_asiway_s_l[3] = ~( asiway_s[1] &  asiway_s[0]);
 
 
Line 154... Line 159...
 
 
// Everything below can be ignored for physical implementation
// Everything below can be ignored for physical implementation
// monitor for waysel -- moved here from itlb
// monitor for waysel -- moved here from itlb
// Keeping this around for 0-in. cmp level check is in icache_mutex_mon.v
// Keeping this around for 0-in. cmp level check is in icache_mutex_mon.v
 
 
 
`ifdef DEFINE_0IN
 
   always @ (negedge clk)
 
     begin
 
        if (!((waysel_buf_s1 == 4'b0001) ||
 
              (waysel_buf_s1 == 4'b0010) ||
 
              (waysel_buf_s1 == 4'b0100) ||
 
              (waysel_buf_s1 == 4'b1000) ||
 
              (waysel_buf_s1 == 4'b0000)))
 
          begin
 
             // 0in <fire -message "FATAL ERROR: icache waysel not mutex"
 
             //$error("IC_WAYSEL", "FATAL ERROR: icache waysel not mutex %b",
 
             //       waysel_buf_s1);
 
          end
 
     end // always @ (negedge clk)
 
`endif
 
 
endmodule // sparc_ifu_wseldp
endmodule // sparc_ifu_wseldp
 
 
 
 
 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.