eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaProblem z odczytem przez FT2232H w trybie FT245 FIFO synchronicznyRe: Problem z odczytem przez FT2232H w trybie FT245 FIFO synchroniczny
  • Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
    .pl!news.nask.org.pl!news.unit0.net!usenet.blueworldhosting.com!feeder01.bluewo
    rldhosting.com!peer01.iad.highwinds-media.com!news.highwinds-media.com!feed-me.
    highwinds-media.com!nx01.iad01.newshosting.com!newshosting.com!newsfeed.neostra
    da.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrad
    a.pl.POSTED!not-for-mail
    Date: Wed, 02 Jul 2014 12:48:40 +0200
    From: Adam Górski <gorskiamalpa@wpkropkapl>
    User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:24.0) Gecko/20100101 Thunderbird/24.6.0
    MIME-Version: 1.0
    Newsgroups: pl.misc.elektronika
    Subject: Re: Problem z odczytem przez FT2232H w trybie FT245 FIFO synchroniczny
    References: <6...@g...com>
    <53b3235f$0$2145$65785112@news.neostrada.pl>
    <5...@g...com>
    In-Reply-To: <5...@g...com>
    Content-Type: text/plain; charset=ISO-8859-2; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Antivirus: avast! (VPS 140701-0, 2014-07-01), Outbound message
    X-Antivirus-Status: Clean
    Lines: 153
    Message-ID: <53b3e388$0$2358$65785112@news.neostrada.pl>
    Organization: Telekomunikacja Polska
    NNTP-Posting-Host: 89-78-2-59.dynamic.chello.pl
    X-Trace: 1404298120 unt-rea-a-01.news.neostrada.pl 2358 89.78.2.59:2055
    X-Complaints-To: a...@n...neostrada.pl
    X-Received-Bytes: 5226
    X-Received-Body-CRC: 3808357330
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:667254
    [ ukryj nagłówki ]

    W dniu 2014-07-02 01:04, s...@g...com pisze:
    > W dniu wtorek, 1 lipca 2014 23:08:48 UTC+2 użytkownik Adam Górski napisał:
    >> W dniu 2014-07-01 14:06, s...@g...com pisze:
    >>
    >>> Witam,
    >>
    >>>
    >>
    >>> Mam na pok�adzie swojej PCB, FT2232H i FPGA. Zapis z PC do FPGA w trybie
    synchronicznym dzia�a OK, natomiast mam jajca przy odczycie z FPGA do PC.
    >>
    >>>
    >>
    >>> Najpierw hardware w FPGA. Wygl�da to mniej wi�cej tak:
    >>
    >>>
    >>
    >>> USB_CLK: in std_logic;
    >>
    >>> RST : in std_logic;
    >>
    >>> TXE_n : in std_logic;
    >>
    >>> WR_n : out std_logic;
    >>
    >>> USB_DATA: inout std_logic_vector(7 downto 0);
    >>
    >>> RAM_DATA: in std_logic_vector(7 downto 0);
    >>
    >>> RD_ADDR: out std_logic_vector(12 downto 0);
    >>
    >>>
    >>
    >>> signal RD_ADDRs: std_logic_vector(12 downto 0);
    >>
    >>>
    >>
    >>> process (USB_CLK,RST,TXE_n)
    >>
    >>> begin
    >>
    >>> if RST='1' then
    >>
    >>> RD_ADDRs<=(others=>'0');
    >>
    >>> RD_ADDR<=(others=>'0');
    >>
    >>> USB_DATA<=(others=>'Z');
    >>
    >>> WR_n<='1';
    >>
    >>> else
    >>
    >>> if USB_CLK'event and USB_CLK='1' then
    >>
    >>> WR_n<=TXE_n;
    >>
    >>> if TXE='0' then
    >>
    >>> USB_DATA<=RAM_DATA;
    >>
    >>> RD_ADDRs<=RD_ADDRs+1;
    >>
    >>> RD_ADDR<=RD_ADDRs;
    >>
    >>> else USB_DATA<=(others=>'Z');
    >>
    >>> end if;
    >>
    >>> end if;
    >>
    >>> end if;
    >>
    >>> end process;
    >>
    >>>
    >>
    >>> =========
    >>
    >>>
    >>
    >>> I teraz software (Delphi):
    >>
    >>>
    >>
    >>> ResetAddressCounters;
    >>
    >>> ftresult:=FT_Read(FT_HANDLE,@FT_In_Buffer,8192,@Read
    _Result);
    >>
    >>>
    >>
    >>> Za��my, �e chc� odczyta� RAM zaimplementowany w FPGA. Zawarto��
    RAM'u:
    >>
    >>> 0,1,2,3...255,0,1,2....255,....,.... - razem 8kB (taka 32-z�bna pi�a)
    >>
    >>>
    >>
    >>> Przy pierwszym odczycie zawarto�� FT_In_Buffer jest cholera jakby zrotowana w
    prawo o losow� ilo�� adres�w. Np. o trzy adresy, w wyniku czego odczytuj�:
    >>
    >>>
    >>
    >>> 253,254,255,0,1,2,3....255,0,1,2....255,0,1,2....252
    >>
    >>>
    >>
    >>> Ka�dy kolejny odczyt powoduje rotacj� w prawo o dok�adnie 16 bajt�w..
    >>
    >>>
    >>
    >>> Jakieďż˝ porady?
    >>
    >>>
    >>
    >>
    >>
    >> Wycz�ci� fifo przed u�yciem ?
    >
    > Też o tym myślałem. Problem w tym, że w drajverach D2XX od FTDI brak takiej
    funkcji.
    >
    >>
    >> Ustawi� RD_ADDR na pocz�tek po pierwszym odczycie.
    >>
    >> Jak z poziomu pc ustawiasz RD_ADDRES na pocz�tek ? Jaka jest idea
    >>
    >> synchronizacji ?
    >
    > Dokładnie!! Przed każdym rozpoczęciem odczytu daję impuls RST, który
    asynchronicznie zeruje licznik RD_ADDR (popatrz na kod VHDL). Impuls RST generuję
    programowo, działa poprawnie, sprawdziłem na oscylu. Synchronizacja jest banalnie
    prosta. Leci akwizycja danych do bufora w pamięci FPGA i sprawdzam bit statusu
    akwizycji. Jak akwizycja zakończona, to walę 2 komendy opisane w pierwszym poście.
    Aha!! Robiłem eksperymenty i tak np. przy odczycie tylko 512 bajtów z bufora,
    każdorazowo robi mi rotację o jeden bajt. Podejrzewam, że coś jest nawalone w
    drajverach D2XX, albo pieron wie co ?!

    Ok. Jaka to fpga ? Na pewno są tam jakieś mechanizmy dostępu przez jtaga
    : podgląd ram-u , podgląd sygnałów itd czy nawet rejestratory z wyzwalaniem.

    1. Czy jesteś pewien zawartości pamięci - ale tak na 10000%? Czyli np
    rom ze wzorcem. Napisałeś że jest tam jakiś ram, ale może być dwuportowy
    lub inna cholera.

    2. Może być też tak że w momencie rozpoczęcia przesyłania FT czyści
    sobie fifo ,wiec należałoby wpisać do fifo dopiero jak zacznie się
    odczyt po pc stronie. Na pewno jest to w sheecie opisane.

    3. Szukałeś jakiś app note, white papers etc ?

    VHDL nie wygląda źle, może ja bym go zrobił całkowicie synchronicznie,
    albo przynajmniej synchronizował RST do zegara USB_CLK ( albo oba
    powyższe ). Nie widzę reszty wiec nic więcej nie powiem.

    Pzdr.

    Adam Górski


    ---
    Ta wiadomość e-mail jest wolna od wirusów i złośliwego oprogramowania, ponieważ
    ochrona avast! Antivirus jest aktywna.
    http://www.avast.com

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: