mirror of
				https://github.com/openhwgroup/cvw
				synced 2025-02-11 06:05:49 +00:00 
			
		
		
		
	Changed some flops to settable
This commit is contained in:
		
							parent
							
								
									965946cae3
								
							
						
					
					
						commit
						8d08ca6a1e
					
				| @ -81,6 +81,18 @@ module flopenr #(parameter WIDTH = 8) ( | ||||
|     else if (en) q <= #1 d; | ||||
| endmodule | ||||
| 
 | ||||
| // flop with enable, asynchronous set
 | ||||
| module flopens #(parameter WIDTH = 8) ( | ||||
|   input  logic             clk, set, en, | ||||
|   input  logic [WIDTH-1:0] d,  | ||||
|   output logic [WIDTH-1:0] q); | ||||
| 
 | ||||
|   always_ff @(posedge clk, posedge set) | ||||
|     if (set)   q <= #1 1; | ||||
|     else if (en) q <= #1 d; | ||||
| endmodule | ||||
| 
 | ||||
| 
 | ||||
| // flop with enable, asynchronous load
 | ||||
| module flopenl #(parameter WIDTH = 8, parameter type TYPE=logic [WIDTH-1:0]) ( | ||||
|   input  logic clk, load, en, | ||||
|  | ||||
| @ -137,7 +137,7 @@ module csrm #(parameter | ||||
|     else if (`BUILDROOT == 1) | ||||
|       flopenr #(32)   MCOUNTERENreg(clk, reset, WriteMCOUNTERENM, CSRWriteValM[31:0], MCOUNTEREN_REGW); | ||||
|     else | ||||
|       flopenl #(32)   MCOUNTERENreg(clk, reset, WriteMCOUNTERENM, CSRWriteValM[31:0], 32'hFFFFFFFF, MCOUNTEREN_REGW); | ||||
|       flopens #(32)   MCOUNTERENreg(clk, reset, WriteMCOUNTERENM, CSRWriteValM[31:0], MCOUNTEREN_REGW); | ||||
|   endgenerate | ||||
|   flopenr #(32)   MCOUNTINHIBITreg(clk, reset, WriteMCOUNTINHIBITM, CSRWriteValM[31:0], MCOUNTINHIBIT_REGW); | ||||
| 
 | ||||
|  | ||||
| @ -100,7 +100,7 @@ module csrs #(parameter | ||||
|       else if (`BUILDROOT == 1) | ||||
|         flopenr #(32)   SCOUNTERENreg(clk, reset, WriteSCOUNTERENM, CSRWriteValM[31:0], SCOUNTEREN_REGW); | ||||
|       else | ||||
|         flopenl #(32)   SCOUNTERENreg(clk, reset, WriteSCOUNTERENM, CSRWriteValM[31:0], 32'hFFFFFFFF, SCOUNTEREN_REGW); | ||||
|         flopens #(32)   SCOUNTERENreg(clk, reset, WriteSCOUNTERENM, CSRWriteValM[31:0], SCOUNTEREN_REGW); | ||||
|       if (`N_SUPPORTED) begin | ||||
|         logic WriteSEDELEGM, WriteSIDELEGM; | ||||
|         assign WriteSEDELEGM = CSRSWriteM && (CSRAdrM == SEDELEG); | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user