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

Subversion Repositories spacewire_light

[/] [spacewire_light/] [trunk/] [rtl/] [vhdl/] [spwamba.vhd] - Diff between revs 6 and 7

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

Rev 6 Rev 7
Line 163... Line 163...
        ahbo:       out ahb_mst_out_type;
        ahbo:       out ahb_mst_out_type;
 
 
        -- Pulse for TimeCode generation.
        -- Pulse for TimeCode generation.
        tick_in:    in  std_logic;
        tick_in:    in  std_logic;
 
 
 
        -- High for one clock cycle if a TimeCode was just received.
 
        tick_out:   out std_logic;
 
 
        -- Data In signal from SpaceWire bus.
        -- Data In signal from SpaceWire bus.
        spw_di:     in  std_logic;
        spw_di:     in  std_logic;
 
 
        -- Strobe In signal from SpaceWire bus.
        -- Strobe In signal from SpaceWire bus.
        spw_si:     in  std_logic;
        spw_si:     in  std_logic;
Line 555... Line 558...
               (v_txfifo_bytepos < 3 and
               (v_txfifo_bytepos < 3 and
                s_txfifo_rdata(34-v_txfifo_bytepos) = '1' and
                s_txfifo_rdata(34-v_txfifo_bytepos) = '1' and
                s_txfifo_rdata(23-8*v_txfifo_bytepos) = '1') then
                s_txfifo_rdata(23-8*v_txfifo_bytepos) = '1') then
                -- This is the last byte in the current word;
                -- This is the last byte in the current word;
                -- OR the current byte is an EOP/EEP marker;
                -- OR the current byte is an EOP/EEP marker;
                -- OR the next byte in the current work is a non-EOP end-of-frame marker.
                -- OR the next byte in the current word is a non-EOP end-of-frame marker.
                v.txfifo_bytepos := "00";
                v.txfifo_bytepos := "00";
                v.txfifo_raddr  := std_logic_vector(unsigned(r.txfifo_raddr) + 1);
                v.txfifo_raddr  := std_logic_vector(unsigned(r.txfifo_raddr) + 1);
            else
            else
                -- Move to next byte.
                -- Move to next byte.
                v.txfifo_bytepos := std_logic_vector(unsigned(r.txfifo_bytepos) + 1);
                v.txfifo_bytepos := std_logic_vector(unsigned(r.txfifo_bytepos) + 1);
Line 829... Line 832...
        msti.rxfifo_empty   <= r.rxfifo_empty;
        msti.rxfifo_empty   <= r.rxfifo_empty;
        msti.rxfifo_nxempty <= v.rxfifo_empty;  -- new value of rxfifo_empty
        msti.rxfifo_nxempty <= v.rxfifo_empty;  -- new value of rxfifo_empty
        msti.txfifo_nxfull  <= r.txfifo_nxfull;
        msti.txfifo_nxfull  <= r.txfifo_nxfull;
        msti.txfifo_highw   <= r.txfifo_highw;
        msti.txfifo_highw   <= r.txfifo_highw;
 
 
 
        -- Pass tick_out signal to output port.
 
        tick_out        <= linko.tick_out;
 
 
        -- Drive APB output signals.
        -- Drive APB output signals.
        apbo.prdata     <= v_prdata;
        apbo.prdata     <= v_prdata;
        apbo.pirq       <= (others => '0');
        apbo.pirq       <= (others => '0');
        apbo.pirq(pirq) <= r.irq;
        apbo.pirq(pirq) <= r.irq;
        apbo.pconfig    <= pconfig;
        apbo.pconfig    <= pconfig;

powered by: WebSVN 2.1.0

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