ahdl - detektor sekwencji + alu (dlugie)

Witam! Mam prosbe o wskazowki dotyczace projektu, ktory mecze od tygodnia... napisalem sobie taki detektor: SUBDESIGN detector ( i[7..0], zegar, reset :INPUT; o :OUTPUT; -- o=B"1" oznacza "sekwencja wykryta" ) VARIABLE us: MACHINE WITH STATES(s1,s2,s3,s4,s5,s6); BEGIN us.clk = zegar; us.reset = reset;

IF us == s1 THEN IF i[] == B"00011000" THEN us = s2; --wykrywam sobie jakies sekwencje ELSE us = s1; END IF; END IF;

[ciach - tutaj przejscia innych stanow]

END;

i takie alu: INCLUDE "LPM_AND.INC"; CONSTANT N=8;

-- 8-bitowa szyna danych SUBDESIGN alu ( a[7..0], b[7..0] : Input; o[7..0] : Output; --wynik lpm_and ) VARIABLE dane : lpm_and WITH ( LPM_WIDTH = 8, LPM_SIZE = 2 ); BEGIN FOR i IN N-1 TO 0 GENERATE dane.data[0][i] = a[i]; dane.data[1][i] = b[i]; END GENERATE; o[]=dane.result[]; END;

No i tutaj proste rzeczy (jak dla mnie) sie skonczyly - glowie sie teraz, jak to polaczyc ze soba. Cel jest taki, ze jak detektor wykryje sekwencje to alu przetwarza dwa nastepne bajty pojawiajace sie na szynie danych. I wlasnie z tym mam najwiekszy problem - jak przechwycic dwie kolejne wartosci do alu (bo w tej mojej wersji mam 2 wejscia - a[] i b[]).

Szperanie w google przez caly dzien - nic, AHDL tutorial tez nic nie wniosl nowego.

Bede wdzieczny za jakies wskazowki. Pozdrawiam Michal

PS. Acha - automat _ma_ byc na IF..ELSE.. a w alu _ma_ byc LPM_AND (a nie tablica prawdy i zwykly AND)

Reply to
Michal Matyjek
Loading thread data ...

"Michal Matyjek" [...]

odpisalem na onetcie i tam odpowiedz widac, na moim serwerze z jakis powodow nie :(

formatting link
-> rozmaitosci -> elektronika

JA

Reply to
JA

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.