eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaNauka C - co radzicie ?Re: Nauka C - co radzicie ?
  • Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
    From: cepu69 <c...@t...pl>
    Newsgroups: pl.misc.elektronika
    Subject: Re: Nauka C - co radzicie ?
    Date: Mon, 08 Jun 2009 12:41:05 +0200
    Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
    Lines: 40
    Message-ID: <h0ips2$h3l$1@inews.gazeta.pl>
    References: <7...@m...uni-berlin.de>
    <6...@n...onet.pl> <h0bdsi$5pk$1@inews.gazeta.pl>
    <h0bu8p$p8v$1@news.wp.pl>
    NNTP-Posting-Host: 217.153.153.214
    Mime-Version: 1.0
    Content-Type: text/plain; charset=iso-8859-2
    Content-Transfer-Encoding: 8Bit
    X-Trace: inews.gazeta.pl 1244457666 17525 217.153.153.214 (8 Jun 2009 10:41:06 GMT)
    X-Complaints-To: u...@a...pl
    NNTP-Posting-Date: Mon, 8 Jun 2009 10:41:06 +0000 (UTC)
    X-User: cepu69
    User-Agent: KNode/0.10.9
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:565078
    [ ukryj nagłówki ]

    Adam Dybkowski wrote:
    > cepu69 pisze:
    >
    >>> Przykładowo , chcę wysłać bajt danych do portu o określonym adresie. Czy
    >>> są na to funkcje biblioteczne , czy muszę robić wstawki assemblerowe?
    >> DSP TI nie posiada przestrzeni I/O czyli dostep do rejestru wyglada tak
    >> samo :
    >> #define MY_REG_ADDR (0x12345678)
    >>
    >> *(* MY_REG_ADDR) = 0x12345678;
    >>
    >> lub opakowanie w funkcje/metode.
    >
    > Raczej nie wszystkie TI DSP. Na przykład takie TMS320VC5416 (które mocno
    > eksploatujemy w niektórych firmowych sprzętach) mają wydzieloną
    > przestrzeń I/O, oddzielną od pamięci danych i oddzielną pamięć programu.
    > Trzeba nieco więcej naspawać w kodzie aby zrobić dostęp I/O.
    Ja bawilem sie na troche innym "poziomie" stad to podejscie.
    Rodzinna C6000 ma "normalna" 32 bitowa przestrzen adresowa i w ramach
    ciekawostek dropsa np. mimo wlaczonego cache'a danych 1-poziomu nie trzeba
    bylo flushwac buforow, na ktorych pracowalo DMA (tak na marginesie tam
    wszystkie operacje I/O wykonywanem byly przez DMA)

    > Ale i tak przecież nikt zdrowo myślący nie będzie w C pisał
    > przetwarzania sygnałów, FFT czy innego Viterbiego. Od tego są funkcje
    > asemblerowe. A język C w przypadku procków DSP dobrze się sprawdza jako
    > "klej" łączący różne kawałki kodu.
    Tak, ale jest to juz wyzsza szkola jazdy. Na poczatek calkowicie wystarczy C
    szczegolnie, ze TI dostarcza konfigurowalny z poziomu IDE system
    opweracyjny czasu rzeczywistego i wyprodukowanie wlasnej aplikacji
    typu "Hello World" jest proste.

    Natomiast programowanie w asemblerze procesora sygnalowego nalezy zostawic
    na pozniej, szczegolnie gdy w gre wchodzi zrownoleglanie instrukcji ( C6000
    ma dwie jednostki wykonawcze i moze wykonac chyba do 8 instrukcji
    jednoczesnie).

    Co do pisania w C przetwarzania sygnalow TI dostrcza o ile mnie pamiec nie
    myli zestaw makr "przyspieszajacych" kod typu rozwijanie petli.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj

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: