mirror of
				https://github.com/openhwgroup/cvw
				synced 2025-02-11 06:05:49 +00:00 
			
		
		
		
	turn off IDIVONFPU when FSUPPORTED=0. Already checked in sim, but need it in synth too for feature sweep
This commit is contained in:
		
							parent
							
								
									96556064a4
								
							
						
					
					
						commit
						acc2db256f
					
				@ -74,8 +74,8 @@ localparam ICACHE_LINELENINBITS = 32'd512;
 | 
			
		||||
 | 
			
		||||
// Integer Divider Configuration
 | 
			
		||||
// IDIV_BITSPERCYCLE must be 1, 2, or 4
 | 
			
		||||
localparam IDIV_BITSPERCYCLE = 32'd4;
 | 
			
		||||
localparam IDIV_ON_FPU = 1;
 | 
			
		||||
localparam IDIV_BITSPERCYCLE = 32'd2;
 | 
			
		||||
localparam IDIV_ON_FPU = 0;
 | 
			
		||||
 | 
			
		||||
// Legal number of PMP entries are 0, 16, or 64
 | 
			
		||||
localparam PMP_ENTRIES = 32'd16;
 | 
			
		||||
 | 
			
		||||
@ -131,7 +131,7 @@ module datapath import cvw::*;  #(parameter cvw_t P) (
 | 
			
		||||
  if (P.F_SUPPORTED) begin:fpmux
 | 
			
		||||
    mux2  #(P.XLEN)  resultmuxM(IEUResultM, FIntResM, FWriteIntM, IFResultM);
 | 
			
		||||
    mux2  #(P.XLEN)  cvtresultmuxW(IFResultW, FCvtIntResW, FCvtIntW, IFCvtResultW);
 | 
			
		||||
    if (P.IDIV_ON_FPU) begin
 | 
			
		||||
    if (P.IDIV_ON_FPU & P.F_SUPPORTED) begin
 | 
			
		||||
      mux2  #(P.XLEN)  divresultmuxW(MDUResultW, FIntDivResultW, IntDivW, MulDivResultW);
 | 
			
		||||
    end else begin 
 | 
			
		||||
      assign MulDivResultW = MDUResultW;
 | 
			
		||||
 | 
			
		||||
@ -57,7 +57,7 @@ module mdu import cvw::*;  #(parameter cvw_t P) (
 | 
			
		||||
  // Start a divide when a new division instruction is received and the divider isn't already busy or finishing
 | 
			
		||||
  // When IDIV_ON_FPU is set, use the FPU divider instead
 | 
			
		||||
  // In ZMMUL, with M_SUPPORTED = 0, omit the divider
 | 
			
		||||
  if ((P.IDIV_ON_FPU) || (!P.M_SUPPORTED)) begin:nodiv  
 | 
			
		||||
  if ((P.IDIV_ON_FPU & P.F_SUPPORTED) || (!P.M_SUPPORTED)) begin:nodiv  
 | 
			
		||||
    assign QuotM = 0;
 | 
			
		||||
    assign RemM = 0;
 | 
			
		||||
    assign DivBusyE = 0;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user