Changeset 1006


Ignore:
Timestamp:
07/18/14 14:17:31 (3 years ago)
Author:
prasanthi
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • design/trunk/cmn_eth/R5.0/src/cmn_eth_rx_user_pkt_ctl.v

    r974 r1006  
    1010module cmn_eth_rx_user_pkt_ctl 
    1111( 
    12         input                                                           i_clk,  
    13         input                                                                   i_rst, 
     12        input           i_clk,  
     13        input           i_rst, 
    1414 
    1515        // CMD FIFO INTERFACE // 
    16         input           [31:0]                          i_ff_data,  
    17         output  reg                                             o_ff_data_re, 
    18         input                                                                   i_ff_empty_flg, 
     16        input   [31:0]          i_ff_data,  
     17        output  reg             o_ff_data_re, 
     18        input                   i_ff_empty_flg, 
    1919 
    2020        // ETH INTERFACE // 
    21         output  reg                                             o_sof,  
    22         output  reg                                             o_eof, 
    23         output  reg [31:0]              o_data, 
    24         output  reg                                             o_data_we, 
    25         input                                                                   i_ff_full_flg, 
     21        output  reg             o_sof,  
     22        output  reg             o_eof, 
     23        output  reg [31:0]      o_data, 
     24        output  reg             o_data_we, 
     25        input                   i_ff_full_flg, 
    2626//      output  reg             o_ff_full_err, 
    2727 
    2828        // MEM INTERFACE // 
    29         output  reg [11:0]              o_mem_addr, 
    30         output  reg                                             o_mem_data_re, 
    31         input   [31:0]                          i_mem_data, 
     29        output  reg [11:0]      o_mem_addr, 
     30        output  reg             o_mem_data_re, 
     31        input   [31:0]          i_mem_data, 
    3232 
    3333        // MCTL INTERFACE // 
    34         output  reg                                             o_rpt_pkt_size_err 
    35 //      input                                                                   i_ctl_endian    // '1' - big endian, '0' - little endian                 
     34        output  reg             o_rpt_pkt_size_err 
     35//      input   i_ctl_endian    // '1' - big endian, '0' - little endian                 
    3636); 
    3737         
     
    5757  // state definitions 
    5858        parameter [3:0] S_IDLE                          = 4'b0000,   
    59                                                                         S_CMD_WAIT              = 4'b0001,       
    60                                                                         S_CMD_FETCH     = 4'b0010,       
    61                                                                         S_ETYPE_WAIT    = 4'b0011,       
    62                                                                         S_ETYPE                         = 4'b0100,  
    63                                                                         S_PYLD                          = 4'b0101, 
    64                                                                         S_PYLD_EOF              = 4'b0111;  
     59                S_CMD_WAIT              = 4'b0001,       
     60                S_CMD_FETCH     = 4'b0010,       
     61                S_ETYPE_WAIT    = 4'b0011,       
     62                S_ETYPE         = 4'b0100,  
     63                S_PYLD          = 4'b0101, 
     64                S_PYLD_EOF      = 4'b0111;  
    6565 
    6666        reg [3:0] state;  
     
    6868 
    6969        always @(posedge i_clk)  
    70                 if (i_rst) 
    71                         begin 
    72                                 o_ff_data_re <= 1'b0; 
    73                           o_sof <= 1'b0;  
    74         o_eof <= 1'b0; 
    75         o_data <= 32'h0000_0000; 
    76         o_data_we <= 1'b0; 
    77                           o_mem_addr <= 12'h000;         
    78         o_mem_data_re <= 1'b0; 
    79                                 o_rpt_pkt_size_err <= 1'b0; 
    80                                 state <= S_IDLE; 
     70        if (i_rst) 
     71        begin 
     72          o_ff_data_re <= 1'b0; 
     73          o_sof <= 1'b0;  
     74          o_eof <= 1'b0; 
     75          o_data <= 32'h0000_0000; 
     76          o_data_we <= 1'b0; 
     77          o_mem_addr <= 12'h000;         
     78          o_mem_data_re <= 1'b0; 
     79          o_rpt_pkt_size_err <= 1'b0; 
     80          state <= S_IDLE; 
    8181 
    82                                 dsize <= 16'h0000; 
    83                                 dtemp <= 16'h0000; 
     82          dsize <= 16'h0000; 
     83          dtemp <= 16'h0000; 
    8484 
    85                         end  
    86                 else 
    87                         begin 
    88                                 o_ff_data_re <= 1'b0; 
    89                           o_sof <= 1'b0;  
    90         o_eof <= 1'b0; 
    91         o_data_we <= 1'b0; 
    92         o_mem_data_re <= 1'b0; 
    93                                 o_rpt_pkt_size_err <= 1'b0; 
     85        end  
     86        else 
     87        begin 
     88          o_ff_data_re <= 1'b0; 
     89          o_sof <= 1'b0;  
     90          o_eof <= 1'b0; 
     91          o_data_we <= 1'b0; 
     92          o_mem_data_re <= 1'b0; 
     93          o_rpt_pkt_size_err <= 1'b0; 
    9494                         
    95                                 case (state)     
    96                                         S_IDLE : begin 
    97                                                 if (!i_ff_empty_flg) begin 
    98                                                         o_ff_data_re <= 1'b1; 
    99                                                         state <= S_CMD_WAIT; 
     95        case (state)     
     96                                    S_IDLE : begin 
     97                                         if (!i_ff_empty_flg) begin 
     98                                               o_ff_data_re <= 1'b1; 
     99                                                state <= S_CMD_WAIT; 
    100100                                          end  
    101101                                                else  
    102                                                         state <= S_IDLE;         
     102                                                state <= S_IDLE;         
    103103 
    104104                                        end 
Note: See TracChangeset for help on using the changeset viewer.