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

Subversion Repositories spdif_interface

[/] [spdif_interface/] [trunk/] [rtl/] [vhdl/] [gen_event_reg.vhd] - Diff between revs 39 and 42

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

Rev 39 Rev 42
Line 43... Line 43...
----------------------------------------------------------------------
----------------------------------------------------------------------
--
--
-- CVS Revision History
-- CVS Revision History
--
--
-- $Log: not supported by cvs2svn $
-- $Log: not supported by cvs2svn $
 
-- Revision 1.4  2004/07/11 16:19:50  gedra
 
-- Bug-fix.
 
--
-- Revision 1.3  2004/06/06 15:42:20  gedra
-- Revision 1.3  2004/06/06 15:42:20  gedra
-- Cleaned up lint warnings.
-- Cleaned up lint warnings.
--
--
-- Revision 1.2  2004/06/04 15:55:07  gedra
-- Revision 1.2  2004/06/04 15:55:07  gedra
-- Cleaned up lint warnings.
-- Cleaned up lint warnings.
Line 75... Line 78...
end gen_event_reg;
end gen_event_reg;
 
 
architecture rtl of gen_event_reg is
architecture rtl of gen_event_reg is
 
 
  signal evt_internal, zero: std_logic_vector(DATA_WIDTH - 1 downto 0);
  signal evt_internal, zero: std_logic_vector(DATA_WIDTH - 1 downto 0);
  signal zevent: std_logic_vector(DATA_WIDTH - 1 downto 0);
 
 
 
begin
begin
 
 
  evt_dout <= evt_internal when evt_rd = '1' else (others => '0');
  evt_dout <= evt_internal when evt_rd = '1' else (others => '0');
  zero <= (others => '0');
  zero <= (others => '0');
Line 104... Line 106...
  EVTREG: for k in evt_din'range generate
  EVTREG: for k in evt_din'range generate
    EBIT: process (clk, rst)
    EBIT: process (clk, rst)
    begin
    begin
      if rst = '1' then
      if rst = '1' then
        evt_internal(k) <= '0';
        evt_internal(k) <= '0';
        zevent(k) <= event(k);
 
      else
      else
        if rising_edge(clk) then
        if rising_edge(clk) then
          zevent(k) <= event(k);
          if event(k)= '1' then    -- set event
          if event(k) /= zevent(k) then    -- set event
 
            evt_internal(k) <= '1';
            evt_internal(k) <= '1';
          elsif evt_wr = '1' and evt_din(k) = '1' then -- clear event
          elsif evt_wr = '1' and evt_din(k) = '1' then -- clear event
            evt_internal(k) <= '0';
            evt_internal(k) <= '0';
          end if;
          end if;
        end if;
        end if;

powered by: WebSVN 2.1.0

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