Ignore:
Timestamp:
07/22/10 10:33:08 (14 years ago)
Author:
dneise
Message:
possible to switch off SPI SCLK now.
see new revision of simple_daq in tools/FAD/
File:
1 edited

Legend:

Unmodified
Added
Removed
  • FPGA/FAD/stable/FACT_FAD/FACT_FAD_lib/hdl/w5300_modul.vhd.bak

    r246 r260  
    4949      ram_addr       : OUT    std_logic_vector (RAM_ADDR_WIDTH-1 DOWNTO 0);
    5050      data_valid     : IN     std_logic;
     51          data_valid_ack : OUT    std_logic := '0';
    5152      busy           : OUT    std_logic                     := '1';
    5253      write_header_flag, write_end_flag : IN std_logic;
     
    6465     
    6566      denable : out std_logic := '0'; -- default domino wave off
    66       dwrite_enable : out std_logic := '0' -- default DWRITE low.
     67      dwrite_enable : out std_logic := '0'; -- default DWRITE low.
     68      sclk_enable : out std_logic := '1' -- default DWRITE HIGH.
    6769   );
    6870
     
    7476
    7577type state_init_type is (INTERRUPT, RESET, WRITE_REG, READ_REG, WRITE_DATA,
    76                          INIT, IM, MT, STX, STX1, STX2, STX3, SRX, SRX1, SRX2, SRX3, MAC, MAC1, MAC2, GW, GW1, SNM, SNM1, IP, IP1,
     78                         INIT, IM, MT, STX, STX1, STX2, STX3, SRX, SRX1, SRX2, SRX3, MAC, MAC1, MAC2, GW, GW1, SNM, SNM1, IP, IP1, TIMEOUT, RETRY,
    7779                         SI, SI1, SI2, SI3, SI4, SI5, SI6,      ESTABLISH, EST1, CONFIG, MAIN, CHK_RECEIVED, READ_DATA);
    7880type state_write_type is (WR_START, WR_LENGTH, WR_WAIT1, WR_01, WR_02, WR_03, WR_04, WR_05, WR_06, WR_07, WR_08, WR_FIFO, WR_FIFO1, WR_ADC, WR_ADC1, WR_ADC2,
     
    349351                                                par_data (7 downto 0) <= conv_std_logic_vector(IP_ADDRESS (3),8);
    350352                                                state_init <= WRITE_REG;
     353                                                next_state <= TIMEOUT;
     354                                        when TIMEOUT =>
     355                                                par_addr <=     W5300_RTR;
     356                                                par_data <= X"07D0"; -- 0x07D0 = 200ms
     357                                                state_init <= WRITE_REG;
     358                                                next_state <= RETRY;
     359                                        when RETRY =>
     360                                                par_addr <=     W5300_RCR;
     361                                                par_data <= X"0008";
     362                                                state_init <= WRITE_REG;
    351363                                                next_state <= SI;
    352364
     
    431443                                            s_trigger <= '0';
    432444                                          end if;
    433             if (chk_recv_cntr = 10) then
     445            if (chk_recv_cntr = 1000) then
    434446              chk_recv_cntr <= 0;
    435447              state_read_data <= RD_1;
     
    437449              busy <= '1';
    438450            else
     451              busy <= '0';
     452              data_valid_ack <= '0';
    439453              chk_recv_cntr <= chk_recv_cntr + 1; 
    440454                                                  if (data_valid = '1') then
     455                                                    data_valid_ack <= '1';
    441456                local_write_length <= write_length;
    442457                local_ram_start_addr <= ram_start_addr;
     
    552567                  next_state <= CONFIG;
    553568                else
    554                   busy <= '0';
     569--                busy <= '0';
    555570                  next_state <= MAIN;
    556571                end if;
     
    726741                                                                state_write <= WR_08;
    727742                                                        when others =>
    728                                                                 busy <= '0';
     743--                                                      busy <= '0';
    729744                                                                state_init <= next_state_tmp;
    730745                                                                state_write <= WR_START;
Note: See TracChangeset for help on using the changeset viewer.