mirror of
				https://github.com/openhwgroup/cvw
				synced 2025-02-11 06:05:49 +00:00 
			
		
		
		
	Fixed bug in basic gshare.
This commit is contained in:
		
							parent
							
								
									6d604f7af5
								
							
						
					
					
						commit
						1af7b8051e
					
				| @ -42,7 +42,7 @@ module gsharebasic #(parameter k = 10, | ||||
|   input logic             BranchInstrE, BranchInstrM, PCSrcE | ||||
| ); | ||||
| 
 | ||||
|   logic [k-1:0]            IndexNextF, IndexE; | ||||
|   logic [k-1:0] 		  IndexNextF, IndexM; | ||||
|   logic [1:0]              DirPredictionD, DirPredictionE; | ||||
|   logic [1:0]              NewDirPredictionE, NewDirPredictionM; | ||||
| 
 | ||||
| @ -52,19 +52,19 @@ module gsharebasic #(parameter k = 10, | ||||
| 
 | ||||
|   if(TYPE == 1) begin | ||||
| 	assign IndexNextF = GHR ^ {PCNextF[k+1] ^ PCNextF[1], PCNextF[k:2]}; | ||||
| 	assign IndexE = GHRM ^ {PCM[k+1] ^ PCM[1], PCM[k:2]}; | ||||
| 	assign IndexM = GHRM ^ {PCM[k+1] ^ PCM[1], PCM[k:2]}; | ||||
|   end else if(TYPE == 0) begin | ||||
| 	assign IndexNextF = GHRNext; | ||||
| 	assign IndexE = GHRE; | ||||
| 	assign IndexM = GHRM; | ||||
|   end | ||||
|    | ||||
|   ram2p1r1wbe #(2**k, 2) PHT(.clk(clk), | ||||
|     .ce1(~StallF), .ce2(~StallM & ~FlushM), | ||||
|     .ce1(~StallF), .ce2(~StallW & ~FlushW), | ||||
|     .ra1(IndexNextF), | ||||
|     .rd1(DirPredictionF), | ||||
|     .wa2(IndexE), | ||||
|     .wa2(IndexM), | ||||
|     .wd2(NewDirPredictionM), | ||||
|     .we2(BranchInstrM & ~StallW & ~FlushW), | ||||
|     .we2(BranchInstrM), | ||||
|     .bwe2(1'b1)); | ||||
| 
 | ||||
|   flopenrc #(2) PredictionRegD(clk, reset,  FlushD, ~StallD, DirPredictionF, DirPredictionD); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user