eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaJeszcze raz VHDL - problem ze zwięzłym zapisemRe: Jeszcze raz VHDL - problem ze zwięzłym zapisem
  • Data: 2015-05-27 10:40:30
    Temat: Re: Jeszcze raz VHDL - problem ze zwięzłym zapisem
    Od: "J.F." <j...@p...onet.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Użytkownik napisał w wiadomości grup
    dyskusyjnych:b145b622-569c-4b81-991a-acb893cd1e3f@go
    oglegroups.com...
    W dniu wtorek, 26 maja 2015 10:36:42 UTC+2 użytkownik J.F. napisał:
    >> Czy ja dobrze rozumiem ze mamy rejestr przesuwny o 32 slowach 11
    >> bitowych,
    >> co takt zegara slowa wprowadzamy nowa wartosc, reszte przesuwamy, i
    >> wyliczamy sume pierwszych 16 slow minus suma drugich 16 slow ?

    >Dobrze rozumiesz.

    >> Pomijajac trudnosci jak to zwiezle w VHDL zapisac ... pomysleliscie
    >> jak to powinno byc zrealizowane ? Czy zdajecie sie na
    >> optymalizator ?
    >> :-)
    >>
    >> Bo sumator 32 liczb jest dosc kosztowny, ciekawe - kompilatorowi
    >> pamieci zabraknie przy optymalizacji funkcji, czy zrealizuje
    >> kaskadowo.
    >> A im wiecej slow w tym rejestrze, tym ciezsze zadanie.

    >Robię to na spartanie6 (XCS6LX45) i nie ma żadnego problemu z
    >implementacją.

    A jest jakas szansa zobaczyc jak to kompilator zrobil ?
    Ewentualnie - ile makrocell mu to zajelo, jakie opoznienia wyszly ?

    >> To sie w krzemie realizuje inaczej ...
    >Jak?

    Pomysl pierwszy - rysunek by sie przydal, ale moze sie uda slowami:
    32 rejestry w szeregu, tylko ze na wejsciu kazdego (z wyjatkiem
    pierwszego) z nich umieszczasz sumator A i wyjscia poprzednego
    rejestru.

    Tym sposobem drugi rejestr widzi R1= A+A(-1), [A(-n) - A opoznione
    o n cykli)
    R2 = A+R1 = A+ A(-1) + A(-2) [bo w miedzyczasie sie o cykl opoznilo]
    itd.
    Gdzies w polowie musisz wstawic roznice A-R(15)


    Pomysl drugi - jesli jest zwykla suma, to ona co cykl zmienia sie
    tylko o nowy wyraz, ktory wchodzi do sumy, i ostatni, ktory wypada.
    Czyli wystarczy jeden akumulator S, w ktorym co cykl liczymy
    S = S +A - A(-31)
    Oczywiscie na poczatku trzeba wyzerowac i S i wszystkie rejestry R,
    aby byla zgodnosc :-).

    Ty masz roznice dwoch sum, to sie wyrazenie nieznacznie skomplikuje.

    J.

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: