mirror of
				https://github.com/openhwgroup/cvw
				synced 2025-02-11 06:05:49 +00:00 
			
		
		
		
	Merged BMU
This commit is contained in:
		
						commit
						7e947023c1
					
				@ -101,6 +101,8 @@ module bmuctrl(
 | 
				
			|||||||
                                  BMUControlsD = `BMUCTRLW'b000_10_001_1_1_0_1_0_0_0_0_0;  // sign extend instruction
 | 
					                                  BMUControlsD = `BMUCTRLW'b000_10_001_1_1_0_1_0_0_0_0_0;  // sign extend instruction
 | 
				
			||||||
                                else if ((Rs2D[4:2]==3'b000) & ~(Rs2D[1] & Rs2D[0]))
 | 
					                                else if ((Rs2D[4:2]==3'b000) & ~(Rs2D[1] & Rs2D[0]))
 | 
				
			||||||
                                  BMUControlsD = `BMUCTRLW'b000_10_000_1_1_0_1_0_0_0_0_0;  // count instruction
 | 
					                                  BMUControlsD = `BMUCTRLW'b000_10_000_1_1_0_1_0_0_0_0_0;  // count instruction
 | 
				
			||||||
 | 
					        17'b0110011_0000100_100: if (`XLEN == 32)
 | 
				
			||||||
 | 
					                                  BMUControlsD = `BMUCTRLW'b000_10_001_1_1_0_1_0_0_0_0_0;  // zexth (rv32)
 | 
				
			||||||
        17'b0110011_0100000_111: BMUControlsD = `BMUCTRLW'b111_01_111_1_0_0_1_1_0_0_0_0;  // andn
 | 
					        17'b0110011_0100000_111: BMUControlsD = `BMUCTRLW'b111_01_111_1_0_0_1_1_0_0_0_0;  // andn
 | 
				
			||||||
        17'b0110011_0100000_110: BMUControlsD = `BMUCTRLW'b110_01_111_1_0_0_1_1_0_0_0_0;  // orn
 | 
					        17'b0110011_0100000_110: BMUControlsD = `BMUCTRLW'b110_01_111_1_0_0_1_1_0_0_0_0;  // orn
 | 
				
			||||||
        17'b0110011_0100000_100: BMUControlsD = `BMUCTRLW'b100_01_111_1_0_0_1_1_0_0_0_0;  // xnor
 | 
					        17'b0110011_0100000_100: BMUControlsD = `BMUCTRLW'b100_01_111_1_0_0_1_1_0_0_0_0;  // xnor
 | 
				
			||||||
@ -116,6 +118,7 @@ module bmuctrl(
 | 
				
			|||||||
      if (`XLEN==32)
 | 
					      if (`XLEN==32)
 | 
				
			||||||
        casez({OpD, Funct7D, Funct3D})
 | 
					        casez({OpD, Funct7D, Funct3D})
 | 
				
			||||||
          17'b0110011_0000100_100: BMUControlsD = `BMUCTRLW'b000_10_001_1_1_0_1_0_0_0_0_0;  // zexth (rv32)
 | 
					          17'b0110011_0000100_100: BMUControlsD = `BMUCTRLW'b000_10_001_1_1_0_1_0_0_0_0_0;  // zexth (rv32)
 | 
				
			||||||
 | 
					          17'b0010011_0110000_101: BMUControlsD = `BMUCTRLW'b001_00_111_1_1_0_1_0_1_0_0_0;  // rori (rv32)                          
 | 
				
			||||||
        endcase
 | 
					        endcase
 | 
				
			||||||
      else if (`XLEN==64)
 | 
					      else if (`XLEN==64)
 | 
				
			||||||
        casez({OpD, Funct7D, Funct3D})
 | 
					        casez({OpD, Funct7D, Funct3D})
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user