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

Subversion Repositories uart

[/] [uart/] [trunk/] [miniUART.vhd] - Diff between revs 2 and 6

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

Rev 2 Rev 6
Line 22... Line 22...
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- Revision list
-- Revision list
-- Version   Author                 Date                        Changes
-- Version   Author                 Date                        Changes
--
--
-- 0.1      Ovidiu Lupas     15 January 2000                   New model
-- 0.1      Ovidiu Lupas     15 January 2000                   New model
--        ovilup@mail.dnttm.ro
-- 1.0      Ovidiu Lupas     January  2000         Synthesis optimizations
 
-- 2.0      Ovidiu Lupas     April    2000         Bugs removed - RSBusCtrl
 
--          the RSBusCtrl did not process all possible situations
 
--
 
--        olupas@opencores.org
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- Description    : The memory consists of a dual-port memory addressed by
-- Description    : The memory consists of a dual-port memory addressed by
--                  two counters (RdCnt & WrCnt). The third counter (StatCnt)
--                  two counters (RdCnt & WrCnt). The third counter (StatCnt)
--                  sets the status signals and keeps a track of the data flow.
--                  sets the status signals and keeps a track of the data flow.
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Line 125... Line 129...
  RxDev   : RxUnit port map (SysClk,Reset,EnabRX,RxD,Read,FErr,OErr,DRdy,RxData);
  RxDev   : RxUnit port map (SysClk,Reset,EnabRX,RxD,Read,FErr,OErr,DRdy,RxData);
  -----------------------------------------------------------------------------
  -----------------------------------------------------------------------------
  -- Implements the controller for Rx&Tx units
  -- Implements the controller for Rx&Tx units
  -----------------------------------------------------------------------------
  -----------------------------------------------------------------------------
  RSBusCtrl : process(SysClk,Reset,Read,Load)
  RSBusCtrl : process(SysClk,Reset,Read,Load)
     variable StatM : unsigned(4 downto 0);
     variable StatM : Std_Logic_Vector(4 downto 0);
  begin
  begin
     if Rising_Edge(SysClk) then
     if Rising_Edge(SysClk) then
        if Reset = '0' then
        if Reset = '0' then
           StatM := "00000";
           StatM := "00000";
           IntTx_N <= '1';
           IntTx_N <= '1';
Line 144... Line 148...
        end if;
        end if;
        case StatM is
        case StatM is
             when "00001" =>
             when "00001" =>
                  IntRx_N <= '0';
                  IntRx_N <= '0';
                  CSReg(2) <= '1';
                  CSReg(2) <= '1';
 
             when "10001" =>
 
                  IntRx_N <= '0';
 
                  CSReg(2) <= '1';
             when "01000" =>
             when "01000" =>
                  IntTx_N <= '0';
                  IntTx_N <= '0';
             when "11000" =>
             when "11000" =>
                  IntTx_N <= '0';
                  IntTx_N <= '0';
                  CSReg(3) <= '1';
                  CSReg(3) <= '1';
Line 193... Line 200...
     elsif (Load = '1' and Addr = "00") then
     elsif (Load = '1' and Addr = "00") then
        TxData <= DataIn;
        TxData <= DataIn;
     end if;
     end if;
  end process;
  end process;
end uart; --===================== End of architecture =======================--
end uart; --===================== End of architecture =======================--
 
 
 No newline at end of file
 No newline at end of file

powered by: WebSVN 2.1.0

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