Ignore:
Timestamp:
Dec 21, 2009, 11:55:05 PM (15 years ago)
Author:
demin
Message:

replace 3 ADC FIFO with one large FIFO

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/MultiChannelUSB/adc_fifo.v

    r84 r86  
    11module adc_fifo
     2        #(
     3                parameter       W       =       48 // fifo width
     4        )
    25        (
    36                input   wire                    adc_clk,
    4                 input   wire    [11:0]  adc_data,
     7                input   wire    [W-1:0] adc_data,
    58
    69                input   wire                    clk,
    710                output  wire                    data_ready,
    8                 output  wire    [11:0]  data
     11                output  wire    [W-1:0] data
    912        );
    1013
    11         wire    [11:0]  int_q;
    12         reg             [11:0]  int_data;
     14        wire    [W-1:0] int_q;
     15        reg             [W-1:0] int_data;
    1316       
    14         reg             [1:0]   state;
    15         reg                             int_rdreq, int_data_ready;
     17        reg                             state, int_rdreq, int_data_ready;
    1618        wire                    int_wrfull, int_rdempty;
    1719
     
    2123                .lpm_showahead("ON"),
    2224                .lpm_type("dcfifo"),
    23                 .lpm_width(12),
     25                .lpm_width(W),
    2426                .lpm_widthu(4),
    2527                .rdsync_delaypipe(4),
     
    4648        begin
    4749                case (state)
    48                         2'd0:
     50                        1'b0:
    4951                        begin
    5052                                int_rdreq <= 1'b1;
    5153                                int_data_ready <= 1'b0;
    52                                 state <= 2'd1;
     54                                state <= 1'b1;
    5355                        end
    5456
    55                         2'd1:
     57                        1'b1:
    5658                        begin
    5759                                if (~int_rdempty)
     
    6062                                        int_rdreq <= 1'b0;
    6163                                        int_data_ready <= 1'b1;
    62                                         state <= 2'd0;
     64                                        state <= 1'b0;
    6365                                end
    6466                        end
    65 
    66                         2'd2:
    67                         begin
    68                                 int_data_ready <= 1'b0;
    69                                 state <= 2'd3;
    70                         end
    71 
    72                         2'd3:
    73                         begin
    74                                 state <= 2'd0;
    75                         end
    76 
    7767                endcase
    7868        end
Note: See TracChangeset for help on using the changeset viewer.