OpenCores
URL https://opencores.org/ocsvn/yac/yac/trunk

Subversion Repositories yac

[/] [yac/] [trunk/] [rtl/] [vhdl/] [cordic_iterative_wb.vhd] - Diff between revs 5 and 7

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 5 Rev 7
Line 441... Line 441...
        -- single cordic calculation is done:
        -- single cordic calculation is done:
        -- save the result and start the next one or
        -- save the result and start the next one or
        -- go back to idle
        -- go back to idle
        if state.st = ST_WAIT and cordic_done = '1' then
        if state.st = ST_WAIT and cordic_done = '1' then
          MEM_START := to_integer( state.cnt & "00" ); -- state.cnt * 4
          MEM_START := to_integer( state.cnt & "00" ); -- state.cnt * 4
          MEM( MEM_START+0 ) <= ( others => '0' );
          MEM( MEM_START+0 ) <= ( others =>  cordic_x_o( cordic_x_o'high ));
          MEM( MEM_START+1 ) <= ( others => '0' );
          MEM( MEM_START+1 ) <= ( others =>  cordic_y_o( cordic_y_o'high ) );
          MEM( MEM_START+2 ) <= ( others => '0' );
          MEM( MEM_START+2 ) <= ( others =>  cordic_a_o( cordic_a_o'high ) );
          MEM( MEM_START+0 )( cordic_x_o'range ) <= cordic_x_o;
          MEM( MEM_START+0 )( cordic_x_o'range ) <= cordic_x_o;
          MEM( MEM_START+1 )( cordic_y_o'range ) <= cordic_y_o;
          MEM( MEM_START+1 )( cordic_y_o'range ) <= cordic_y_o;
          MEM( MEM_START+2 )( cordic_a_o'range ) <= cordic_a_o;
          MEM( MEM_START+2 )( cordic_a_o'range ) <= cordic_a_o;
 
 
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.