 
     
    
        
         
     
    
        
        
                        
            
                
                
                
                
            
            
            
                        
                
                
                    URL
                    https://opencores.org/ocsvn/potato/potato/trunk
                
             
            
            
[/] [potato/] [trunk/] [src/] [pp_alu_control_unit.vhd] - Diff between revs 3 and 14
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
   
    
      
         | Rev 3 | Rev 14 | 
    
    
      
        | Line 87... | Line 87... | 
      
        |                                         when b"110" =>
 |                                         when b"110" =>
 | 
      
        |                                                 alu_op <= ALU_OR;
 |                                                 alu_op <= ALU_OR;
 | 
      
        |                                         when b"111" =>
 |                                         when b"111" =>
 | 
      
        |                                                 alu_op <= ALU_AND;
 |                                                 alu_op <= ALU_AND;
 | 
      
        |                                         when others =>
 |                                         when others =>
 | 
      
        |                                                 alu_op <= ALU_NOP;
 |                                                 alu_op <= ALU_INVALID;
 | 
      
        |                                 end case;
 |                                 end case;
 | 
      
        |                         when b"01100" => -- Register-register operations
 |                         when b"01100" => -- Register-register operations
 | 
      
        |                                 alu_x_src <= ALU_SRC_REG;
 |                                 alu_x_src <= ALU_SRC_REG;
 | 
      
        |                                 alu_y_src <= ALU_SRC_REG;
 |                                 alu_y_src <= ALU_SRC_REG;
 | 
      
        |  
 |  
 | 
      
        | Line 119... | Line 119... | 
      
        |                                         when b"110" =>
 |                                         when b"110" =>
 | 
      
        |                                                 alu_op <= ALU_OR;
 |                                                 alu_op <= ALU_OR;
 | 
      
        |                                         when b"111" =>
 |                                         when b"111" =>
 | 
      
        |                                                 alu_op <= ALU_AND;
 |                                                 alu_op <= ALU_AND;
 | 
      
        |                                         when others =>
 |                                         when others =>
 | 
      
        |                                                 alu_op <= ALU_NOP;
 |                                                 alu_op <= ALU_INVALID;
 | 
      
        |                                 end case;
 |                                 end case;
 | 
      
        |   |                         when b"00011" => -- Fence instructions, ignored
 | 
      
        |   |                                 alu_x_src <= ALU_SRC_REG;
 | 
      
        |   |                                 alu_y_src <= ALU_SRC_REG;
 | 
      
        |   |                                 alu_op <= ALU_NOP;
 | 
      
        |                         when b"11100" => -- System instructions
 |                         when b"11100" => -- System instructions
 | 
      
        |                                 alu_x_src <= ALU_SRC_CSR;
 |                                 alu_x_src <= ALU_SRC_CSR;
 | 
      
        |                                 alu_y_src <= ALU_SRC_NULL;
 |                                 alu_y_src <= ALU_SRC_NULL;
 | 
      
        |                                 alu_op <= ALU_ADD;
 |                                 alu_op <= ALU_ADD;
 | 
      
        |                         when others =>
 |                         when others =>
 | 
      
        |                                 alu_x_src <= ALU_SRC_REG;
 |                                 alu_x_src <= ALU_SRC_REG;
 | 
      
        |                                 alu_y_src <= ALU_SRC_REG;
 |                                 alu_y_src <= ALU_SRC_REG;
 | 
      
        |                                 alu_op <= ALU_NOP;
 |                                 alu_op <= ALU_INVALID;
 | 
      
        |                 end case;
 |                 end case;
 | 
      
        |         end process decode_alu;
 |         end process decode_alu;
 | 
      
        |  
 |  
 | 
      
        | end architecture behaviour;
 | end architecture behaviour;
 | 
      
        |  
 |  
 | 
      
        |  No newline at end of file
 |  No newline at end of file
 | 
    
   
 
 
         
                
        
            
            
        
        
             
    
        © copyright 1999-2025
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.