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

Subversion Repositories mlite

[/] [mlite/] [trunk/] [vhdl/] [mem_ctrl.vhd] - Diff between revs 43 and 47

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

Rev 43 Rev 47
Line 145... Line 145...
      end if;
      end if;
   else
   else
      if setup_state = STATE_FETCH then
      if setup_state = STATE_FETCH then
         pause := '1';
         pause := '1';
         byte_sel_next := "0000";
         byte_sel_next := "0000";
 
         if mem_pause = '0' then
         setup_state_next := STATE_ADDR;
         setup_state_next := STATE_ADDR;
 
         end if;
      elsif setup_state = STATE_ADDR then
      elsif setup_state = STATE_ADDR then
         address_next := address_data;
         address_next := address_data;
         if write_next ='1' and address_data(31) = '0' then
         if write_next ='1' and address_data(31) = '0' then
            pause := '1';
            pause := '1';
            byte_sel_next := "0000";
            byte_sel_next := "0000";
 
            if mem_pause = '0' then
            setup_state_next := STATE_WRITE;       --4 cycle access
            setup_state_next := STATE_WRITE;       --4 cycle access
 
            end if;
         else
         else
            if mem_pause = '0' then
            if mem_pause = '0' then
               opcode_next := next_opcode_reg;
               opcode_next := next_opcode_reg;
               setup_state_next := STATE_FETCH;    --2 cycle access
               setup_state_next := STATE_FETCH;    --2 cycle access
            end if;
            end if;
Line 168... Line 172...
         end if;
         end if;
      elsif setup_state = STATE_PAUSE then
      elsif setup_state = STATE_PAUSE then
         address_next := address_data;
         address_next := address_data;
         byte_sel_next := "0000";
         byte_sel_next := "0000";
         opcode_next := next_opcode_reg;
         opcode_next := next_opcode_reg;
 
         if mem_pause = '0' then
         setup_state_next := STATE_FETCH;
         setup_state_next := STATE_FETCH;
      end if;
      end if;
   end if;
   end if;
 
   end if;
 
 
   if nullify_op = '1' then
   if nullify_op = '1' then
      opcode_next := ZERO;  --NOP
      opcode_next := ZERO;  --NOP
   end if;
   end if;
   if reset_in = '1' then
   if reset_in = '1' then

powered by: WebSVN 2.1.0

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