Fajfer2 wrote: No a mają one możliwość generowania kodu dla opisu za pomocą grafu ?
Są darmowe narzędzia, które przekształcają graficzny graf (kółka, strzałki etc) na pełny opis HDL jako FSM (Finite State Machine), jest tego pełno. Ja tam preferuje ręczny coding maszyny.
Fajfer2 wrote: Jeśli chodzi o uC to mają większe możliwości gdy idzie o rozbudowę softu, dodanie jakiś skomplikowanych obliczeń, nie pochłonie większości zasobów pamięci, a w wersji sprzętowej to może być problem. Robiłem kiedyś taki projekt odbiornika RC5 w VHDL, szło to zrobić, nawet w miarę przejrzyście wyglądało.
Zdecydowanie nie, i zdecydowanie nie wolno ograniczać się do jednego typu scalaka, w szczególności uC, bo to jest przesada z deczka, jak można zrobić to na innych układach i prościej. Mikroproprocesor bije na głowę uC, to mam je wykorzystywać ? Mimo, że obecnie robię projekty na ARM9 oraz Cortex-A8, to nie będę ich tam pchał, gdzie nie trzeba, bo poco mi obsługa OpenGL z iMX50 ? A CPLD do zastosowań funkcji logicznych, obsługi pamięci (jako kontroler framebuffer'a) czy jako generatory do wyświetlaczy TFT są dla mnie niezastąpione, jako dodatkowe wsparcie dla uC. Każdy scalak ma Swoje przeznaczenie, a jak kolega autor korzystał z poczciwych układów logicznych, to najrozsądniejszym wyborem są właśnie układy CPLD.
Gdyby nie FPGA, to cała elektronika cyfrowa by jeszcze raczkowała. CPLD nie nadają się do takich rzeczy jak piszesz, to jak szukanie dziury w całym. To samo mogę napisać, że Linuxa nie postawię na uC (brak np MMU itp).
Fajfer2 wrote: Ale jakoś ciężej by mi przychodziło abstrakcyjne myślenie o danym zagadnieniu jeśli muszę w symulacji sprawdzać takty zegara i reakcje poszczególnych bloków (które sam utworzyłem). Bardziej to przypomina w tym sensie projektowanie z użyciem asemblera (mimo że VHDL bardzo przypomina Pascal, C).
Jeśli nie rajcuje cię takie sprawdzanie, to istnieje takie coś jak SystemC czy System Verilog, gdzie można testować układy abstrakcyjnie w C++, w ten sposób testuje się OS przed wypuczeniem na daną architekturę. W dodatku sam Verilog ładnie i szlachetnie można łączyć z C czy z funkcjami np. Matlab'a. Typowa symulacja (testbench), jest faktycznie na poziomie sprzętu, ale takie testy jakie chciałeś zrobić z RC5, to powinieneś skorzystać z SystemC.
Fajfer2 wrote: No chyba żeby robić coś takiego jak połączenie (nie wiem czy tak się da) zaprojektowanych jednostek + zaprojektowany w tym samym układzie automat i teraz pisać do niego mikrokod.
CPLD + pamięć zewnętrzna flash na rozkazy lub inne źródło, sprawdza się i się tak stosuje i praktykuje. Via Picoblaze...
Fajfer2 wrote: A jak zasoby pozwolą, to zaimplementować choćby nawet '51 lub AVR(y?)+ nasz własny układ sprzętowej obróbki danych - wszystko w jednym FPGA.
Jest sporo ciekawszych soft-procesorów niż wyżej wymienione,... Są FPGA z wbudowanym rdzeniem np. nawet z Cortex-M3, a nawet dodają matryce analogowe FPAA, istne cudeńka.