LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Cvs-checkins > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: cvs at opencores.org<cvs@o...>
    Date: Mon Mar 24 20:37:34 CET 2008
    Subject: [cvs-checkins] MODIFIED: spi_slave ...
    Top
    Date: 00/08/03 24:20:37

    Modified: spi_slave/rtl/vhdl opb_if.vhd
    Log:
    added Register C_ADR_RX_CRC. C_ADR_TX_CRC


    Revision Changes Path
    1.3 spi_slave/rtl/vhdl/opb_if.vhd

    http://www.opencores.org/cvsweb.shtml/spi_slave/rtl/vhdl/opb_if.vhd.diff?r1=1.2&r2=1.3

    (In the diff below, changes in quantity of whitespace are not shown.)

    Index: opb_if.vhd
    ===================================================================
    RCS file: /cvsroot/dkoethe/spi_slave/rtl/vhdl/opb_if.vhd,v
    retrieving revision 1.2
    retrieving revision 1.3
    diff -u -b -r1.2 -r1.3
    --- opb_if.vhd 28 Nov 2007 22:04:47 -0000 1.2
    +++ opb_if.vhd 24 Mar 2008 19:37:34 -0000 1.3
    @@ -30,7 +30,8 @@
    C_FAMILY : string := "virtex-4";
    C_SR_WIDTH : integer := 8;
    C_FIFO_SIZE_WIDTH : integer := 4;
    - C_DMA_EN : boolean := true);
    + C_DMA_EN : boolean := false;
    + C_CRC_EN : boolean := false);
    port (
    -- OPB-Bus Signals
    OPB_ABus : in std_logic_vector(0 to C_OPB_AWIDTH-1);
    @@ -68,7 +69,10 @@
    opb_tx_dma_num : out std_logic_vector(C_WIDTH_DMA_NUM-1 downto 0);
    opb_rx_dma_addr : out std_logic_vector(C_OPB_DWIDTH-1 downto 0);
    opb_rx_dma_ctl : out std_logic_vector(0 downto 0);
    - opb_rx_dma_num : out std_logic_vector(C_WIDTH_DMA_NUM-1 downto 0));
    + opb_rx_dma_num : out std_logic_vector(C_WIDTH_DMA_NUM-1 downto 0);
    + -- rx crc
    + opb_rx_crc_value : in std_logic_vector(C_SR_WIDTH-1 downto 0);
    + opb_tx_crc_value : in std_logic_vector(C_SR_WIDTH-1 downto 0));
    end opb_if;

    architecture behavior of opb_if is
    @@ -127,7 +131,7 @@
    Sln_toutSup <= '0';

    --* convert Sln_DBus_big_end to little mode
    - conv_big_Sln_DBus_proc: process(Sln_DBus_big_end)
    + conv_big_Sln_DBus_proc : process(Sln_DBus_big_end)
    begin
    for i in 0 to 31 loop
    Sln_DBus(31-i) <= Sln_DBus_big_end(i);
    @@ -135,7 +139,7 @@
    end process conv_big_Sln_DBus_proc;

    --* convert OPB_ABus to big endian
    - conv_big_OPB_ABus_proc: process(OPB_ABus)
    + conv_big_OPB_ABus_proc : process(OPB_ABus)
    begin
    for i in 0 to 31 loop
    OPB_ABus_big_end(31-i) <= OPB_ABus(i);
    @@ -143,7 +147,7 @@
    end process conv_big_OPB_ABus_proc;

    --* convert OPB_DBus to little mode
    - conv_big_OPB_DBus_proc: process(OPB_DBus)
    + conv_big_OPB_DBus_proc : process(OPB_DBus)
    begin
    for i in 0 to 31 loop
    OPB_DBus_big_end(31-i) <= OPB_DBus(i);
    @@ -153,7 +157,7 @@
    --* control OPB requests
    --*
    --* handles OPB-read and -write request
    - opb_slave_proc: process (OPB_Rst, OPB_Clk)
    + opb_slave_proc : process (OPB_Rst, OPB_Clk)
    begin
    if (OPB_Rst = '1') then
    -- OPB
    @@ -249,8 +253,17 @@
    Sln_DBus_big_end(C_WIDTH_DMA_NUM-1 downto 0) <= opb_rx_dma_num_int;
    end if;

    + when C_ADR_RX_CRC =>
    + if C_CRC_EN then
    + Sln_DBus_big_end(C_OPB_DWIDTH-1 downto C_SR_WIDTH) <= (others => '0');
    + Sln_DBus_big_end(C_SR_WIDTH-1 downto 0) <= opb_rx_crc_value;
    + end if;

    -
    + when C_ADR_TX_CRC =>
    + if C_CRC_EN then
    + Sln_DBus_big_end(C_OPB_DWIDTH-1 downto C_SR_WIDTH) <= (others => '0');
    + Sln_DBus_big_end(C_SR_WIDTH-1 downto 0) <= opb_tx_crc_value;
    + end if;
    when others =>
    null;
    end case;



     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.