 
     
    
        
         
     
    
        
        
                        
            
                
                
                
                
            
            
            
                        
                
                
                    URL
                    https://opencores.org/ocsvn/raytrac/raytrac/trunk
                
             
            
            
[/] [raytrac/] [trunk/] [sqrtdiv/] [RLshifter.vhd] - Diff between revs 71 and 72
Go to most recent revision |
Show entire file |
Details |
Blame |
View Log
   
    
      
         | Rev 71 | Rev 72 | 
    
    
      
        | Line 33... | Line 33... | 
      
        |  
 |  
 | 
      
        |  
 |  
 | 
      
        |  
 |  
 | 
      
        | entity RLshifter is
 | entity RLshifter is
 | 
      
        |         generic (
 |         generic (
 | 
      
        |                 shiftFunction   : string  := "INVERSION";
 |                 shiftFunction   : string  := "SQUARE_ROOT";
 | 
      
        |                 mantissa_width  : integer := 18;
 |                 mantissa_width  : integer := 18;
 | 
      
        |                 width                   : integer := 32
 |                 width                   : integer := 32
 | 
      
        |  
 |  
 | 
      
        |         );
 |         );
 | 
      
        |         port (
 |         port (
 | 
      
        | Line 57... | Line 57... | 
      
        |         begin
 |         begin
 | 
      
        |                 expi:= conv_integer(exp);
 |                 expi:= conv_integer(exp);
 | 
      
        |  
 |  
 | 
      
        |                 for i in width-1 downto 0 loop
 |                 for i in width-1 downto 0 loop
 | 
      
        |  
 |  
 | 
      
        |   |                         result(i)<='0';
 | 
      
        |   |  
 | 
      
        |                         if shiftFunction="INVERSION" then
 |                         if shiftFunction="INVERSION" then
 | 
      
        |                                 if i<=width-1-expi and i>=width-expi-mantissa_width then
 |                                 if i<=width-1-expi and i>=width-expi-mantissa_width then
 | 
      
        |                                         result(i)<=mantis(mantissa_width-width+expi+i);
 |                                         result(i)<=mantis(mantissa_width-width+expi+i);
 | 
      
        |                                 else
 |   | 
      
        |                                         result(i)<='0';
 |   | 
      
        |                                 end if;
 |                                 end if;
 | 
      
        |                         end if;
 |                         end if;
 | 
      
        |   |  
 | 
      
        |                         if shiftFunction="SQUARE_ROOT" then
 |                         if shiftFunction="SQUARE_ROOT" then
 | 
      
        |                                 if i>expi then
 |                                 if i<=expi then
 | 
      
        |                                         result(i)<='0';
 |   | 
      
        |                                 else
 |   | 
      
        |                                         result(i)<=mantis(mantissa_width-1-expi+i);
 |                                         result(i)<=mantis(mantissa_width-1-expi+i);
 | 
      
        |                                 end if;
 |                                 end if;
 | 
      
        |                         end if;
 |                         end if;
 | 
      
        |   |  
 | 
      
        |                 end loop;
 |                 end loop;
 | 
      
        |   |  
 | 
      
        |         end process inverse;
 |         end process inverse;
 | 
      
        |   |  
 | 
      
        | end RLshifter_arch;
 | end RLshifter_arch;
 | 
      
        |  No newline at end of file
 |  No newline at end of file
 | 
      
        |   |  
 | 
      
        |   |  
 | 
      
        |  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.