Procesor wejscia-wyjscia w FPGA

Jan Dubiec napisal(a):

Moment, znacznei latwiej zrozumiec przeplywy sygnalow na schemacie blokowym niz w postaci tekstu programu. Jak dla mnie nie ma tu zadnej dyskusji. Tekst latwiej edytowac, komentowac, szybciej sie go pisze. W mojej firmie 99% modulow to AHDL. Powstalo raptem kilka schematow i to tylko ze wzgledu na uwarunkowania zewnetrzne.

Reply to
Marcin E. Hamerla
Loading thread data ...

Marcin E Hamerla wrote on Mon, 03 Jan 2005 13:07:28 +0100:

[.....]

Tak, ale mowa jest o rysowaniu schematu urządzenia z wykorzystaniem biblioteki elementów emulujących standartowe kości TTL/CMOS.

Regards, /J.D.

Reply to
Jan Dubiec

Jan Dubiec napisal(a):

I mowa jest tez o symetrycznym opisie HDL przy uzyciu makrofunkcji TTL?

Reply to
Marcin E. Hamerla

Nie, no bo i po co?

Regards, /J.D.

Reply to
Jan Dubiec

Jan Dubiec napisal(a):

Nie rozumiem o co Ci chodzi zatem. Znaczy, rozumiem, ze taki sposob porownania to ustawianie sobie chlopca do bicia.

Reply to
Marcin E. Hamerla

Marcin E Hamerla wrote on Tue, 04 Jan 2005 09:19:36 +0100:

Nic z tych rzeczy. Dotykamy tutaj problemu projektowanie/synteza behawioralna czy RT/gate level. Stosując graficzny opis projektu jesteś skazany na RTL/gate level: składasz projekt z funktorów, przerzutników i/lub bardziej złożonych elementów (multipleksery, sumatory itp). Stosując opis tekstowy masz wybór: możesz stosować podejście behawioralne (zwięzły i przejrzysty opis tekstowy, oddający funkcjonalność projektu bez wniakania w szczegóły) lub RT/gate level (opis rozwlekły, w zasadzie taki schemat zapisany w formie tekstowej). Jak dotąd wystarcza mi podejście behawioralne. Oczywiście nic nie jest za darmo, i na podstawie opisu behawioralnego syntezer wygeneruje gorszy "kod", tzn. taki który wymaga więcej zasobów w PLD. Jest to sytuacja analogiczna do problemu assembler czy jezyk wysokiego poziomu w przypadku programowania uC.

Regards, /J.D.

Reply to
Jan Dubiec
Reply to
Piotr Wyderski

Jan Dubiec napisal(a):

Ja nie jestem mocny z teorii i nie rozumiem roznicy. I w jednym i w drugim podejsciu tworzysz rownania korzystajac z negatorow / ANDow / ORow / XORow / itd. Czy wezmiesz ANDa z biblioteki czy wstawisz & wyjdzie na to samo. Rysujac schemat robisz strukture hierarchiczna taka jak w HDL. Spotkalem sie z opiniami, ze najlepsza metoda projektowania PLD jest robienie blokow niskiego poziomu w HDL, a top_level jako schemat. Wtedy masz samodokumnetujacy sie projekt. Ale u mnie robimy wszystko w HDL - wieksza wygoda.

Reply to
Marcin E. Hamerla

Chodzi o to że stosując opis tekstowy w HDL możesz używać podejścia behawioralnego, czego nie możesz zrobić przy rysując schemat. Poniżej masz przykład 11 bitowego rejestru przesuwającego w VHDL-u. Nie musisz męczyć się malowaniem 11 przerzutników w schematorze albo opisem tekstowym przy podejściu "gate level synthesis" ponieważ syntezer wygeneruje za Ciebie 11 odpowiednio połączonych przerzutników. W sam raz shiftery są w bibliotekach schematorów chyba wszystkich narzędzi do projektowania PLD, ale można sobie przecież wyobrazić jakiś mniej standartowy element. Ponadto poniższy opis jest niezależny od narzędzia/docelowego układu.

entity shift_reg is port( I: in std_logic; clock: in std_logic; shift: in std_logic; Q: out std_logic ); end shift_reg;

architecture shift_reg_arch of shift_reg is

-- initialize the declared signal signal S: std_logic_vector(10 downto 0):="11111111111";

begin process(I, clock, shift, S) begin

-- everything happens upon the clock changing if clock'event and clock='1' then if shift = '1' then S <= I & S(10 downto 1); end if; end if;

end process; -- concurrent assignment Q <= S(0);

end shift_reg_arch;

To ma swoje zalety, ale szczerze mówiąc nie jestem w pełni przekonany czy jako top level lepszy jest schemat czy plik tekstowy. Mam jeszcze za mało doświadczenia.

No i macie przynajmniej spójne źródła. Tzn. wszystko zapisane w ten sam sposób w plikach tego samego typu. I to jest IMO duży plus. Problem w tym że stworzenie pliku "top level" jest IMO bardzie upierdliwe niż namalowanie kilku(nastu/dziesięciu) odpowiednio połączonych prostokątów. Prznajmniej w VHDL-u.

Regards, /J.D.

Reply to
Jan Dubiec

No można, ale czy taka wielopoziomowa dekompozycja pozwoli szybciej osiągnąć założony cel? IMO, póki co, nie. A stosowanie opisu behawioralnego pozwala ograniczyć do minimum grzebanie się w szczegółach implementacji, a więc szybsze efektu końcowego.

No właśnie, gdy takowe powstaną. :-) Ja przynajmniej o takich narzędziach jeszcze nie słyszałem. Chociaż początki już są - diagramy stanów można już sobie malować - vide StateCAD w Webpacku.

Regards, /J.D.

Reply to
Jan Dubiec

Piotr Wyderski napisal(a):

Duze maszyny stanow. Zwroc uwage na ilosc wejsciowej komorki w CPLD i w FPGA. Male CPLD zajmuja z kolei mniej miejsca niz FPGA i mniej kosztuja.

Reply to
Marcin E. Hamerla

Czasem jest, a czasem nie jest.

A juz zupelnie nie widze sensu rysowania zlozonej funkcji kombinacyjnej za pomoca bramek, i to w dodatku koniecznie zestawu kiedys zrobionego w TTL ..

J.

Reply to
J.F.

Zgadza sie, dlatego zaproponowalem podejscie hybrydowe:

Pozdrawiam Piotr Wyderski

Reply to
Piotr Wyderski

J.F. napisal(a):

I dlatego w schematorach sa biblioteki elementow typu dekodery, sumatory, itd.

Reply to
Marcin E. Hamerla

Jan Dubiec napisal(a):

Wydaje mi sie, ze to moze miec znaczenie w duzych firmach, gdzie wiecej niz jedna osoba musi sie zajmowac danym projektem. W malej firmie to nie musi byc az tak istotne. Ja sie staram wszystko w mojej firmie, malej przeciez, dobrze dokumentowac (elektronicznie), ale ten top level w postac sch nie uznaje za wazna sprawe. Wazniejsza dla mnie jest latwosc modyfikowania plikow tekstowych.

Reply to
Marcin E. Hamerla

Prawdziwe, prawdziwe :-) do EP1C6 pakuje 2 sztuki 16bit Niosa i jest jeszcze troche luzu, albo

1szt 32bit Niosa (za to z duzymi peryferiami) i tez jest jeszcze troche luzu. Obudowa TQFP144, wiec nie problem polutowac. IMO zapomnij o CPLD i o FPGA na 5V - to juz sa zabytki...
Reply to
jerry1111

jerry1111 wrote on Wed, 12 Jan 2005 18:46:48 +0100: [.....]

A jakiego toolchain-a używa się do tworzenia softu pod NIOS(II)? Chodzi mi o kompilator, linker, itp. Czy jakieś narzędzia są dostarczane razem z NIOSem czy trzeba za nie zapłacić dodatkowo? A jakiego evalboard-a byś polecił? Chodzi mi o coś do $200 (wliczając koszty przesyłki, VAT i inne opłaty). Chciałem sobie kupić

formatting link
w PL oficjalnymi kanałami jest to nieosiągalne. Przez internet też nie ponieważ tandeciarze z Future nawet sklepu internetowego zrobić nie potrafią (kliknij na "Buy Now"). :-(

BTW. Myślałem że nieżyjesz. ;-)

Regards, /J.D.

Reply to
Jan Dubiec

Jan Dubiec napisał(a):

najtańsze co znalazłem to

formatting link
myślę, że osiągalne na przykłąd przez Javilogic

a jakie podają powody oficjalnej nieobecności???

Reply to
Tawez

Tawez wrote on Thu, 13 Jan 2005 11:48:40 +0100: [.....]

na swoim WWW. ;-)

[.....]

Ponieważ w Polsce (i chyba w całej Europie) Alterę sprzedaje EBV i trochę Arrow. Ameryka Pólnocna jest z kolei podzielona pomiędzy Future i Arrow. Logika marketingowców i handlarzy jest jednak zdecydowanie inna niż logika ludzi technicznych. ;-)

Regards, /J.D.

Reply to
Jan Dubiec

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.