Zapraszam do wzięcia udziału w osiedlowej ankiecie urynalnej, w ramach programu badań Kolejowego Instytutu Kodeiny i Telewizorów (w skrócie KIKT) z siedzibą Radzionkowie! ʕʔ
#filozofia #wody #mateusz #liturgia #bangladesz #ewakuacja #hologram #wrangler #synteza #bierznia #defekacja #raciborz
DziecizChoroszczy - Zapraszam do wzięcia udziału w osiedlowej ankiecie urynalnej, w r...

źródło: temp_file.png3447172087652299467

Pobierz

Gdzie najlepiej i najwygodniej robić siku?

  • Do butelki 2.8% (1)
  • Do blaszanego wiaderka w kącie pokoju 5.6% (2)
  • Pod blokiem 13.9% (5)
  • Do umywalki 19.4% (7)
  • Do nocnika 5.6% (2)
  • Do kwiatów doniczkowych 13.9% (5)
  • Na klatce schodowej 0% (0)
  • Koledze na buzię 8.3% (3)
  • Pod siedzibą PIS 11.1% (4)
  • W pieluszkę :3 19.4% (7)

Oddanych głosów: 36

  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Projekt oscyloskopu cyfrowego. Trochę czasu minęło odkąd wszystko zacząłem, jakiś miesiąc - przez ten czas do ogarnięcia było sporo dużych i drobnych problemów, które potrafiły zająć cały dzień.. Zdecydowanie projektowanie czegoś na FPGA wymaga dużej trzeźwości umysłu. W sumie spędziłem może nad tym projektem z 100 roboczogodzin.

W ostatnim wpisie pokazałem Wam połączony moduł ADC, pamięć RAM i interfejs VGA, wraz z niewielką ilością systemu napisanego w VHDL. Dało to w efekcie prosty oscyloskop z buforem obrazu, który później rozwinąłem o obsługę dwóch enkoderów i przycisków do skalowania/przesuwania w czasie i zdałem jako projekt z elektroniki na zaliczenie na 5.0 ;-)

Projekt pozostawiony na tamtym etapie nie nazwał bym rozwojowym - implementacja kolejnych funkcjonalności nie należała do przyjemnych i zdecydowanie brakowało już na tym etapie architektury mikroprocesora, który zajął by się renderowaniem obrazu. Oczywiście poszedłem w tym kierunku ;-)

Altera
Visher - Projekt oscyloskopu cyfrowego. Trochę czasu minęło odkąd wszystko zacząłem, ...

źródło: comment_yKlgVPc8UOU7D9ZREo85MjJeETRcFpTB.jpg

Pobierz
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Elo Mirko. Pamiętacie jak tydzień temu mówiłem, że idę w kierunku oscyloskopu? Nie kłamałem i swoje przez ten tydzień zrobiłem ( ͡° ͜ʖ ͡°) Jest i gfycat na dole ( ͡° ͜ʖ ͡°) Pod punktami informacje co dalej z projektem

Trochę to trwało, bo wyszedł dodatek do Wiedźmina, ale pomimo tego udało mi się zrobić to co chciałem. Po kolei:

1) Nauczyłem się obsługiwać wbudowaną pamięć RAM w układach MAX10. Z dostępnych 378 kb (kilo BITÓW) pamięci utworzyłem bufor na 8-kolorowy obraz 320 x 240 px. Mało, ale daje to sporo czasu na renderowanie. Przy 60 FPS 1024x786 (taki mam monitor, wyświetlam na nim tylko fragment 320 x 240), po wyrenderowaniu pierwszych 240 linii, zostaje mi czas 546 linii. Jedna linia trwa 0.021 ms, czyli mam 11.46 ms na wyrenderowanie obrazu. Póki co renderowanie realizuję przy pomocy bardzo prostej architektury procesora, który maksymalnie (bez błędów zapisu do pamięci) daje się taktować
Visher - Elo Mirko. Pamiętacie jak tydzień temu mówiłem, że idę w kierunku oscyloskop...

źródło: comment_YX1P0z92fKFIu29AN2sOiZcdHCEHN66T.jpg

Pobierz
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Visher: Nie chcę Ci podcinać skrzydeł ale raczej nie masz szans konkurować na rynku oscyloskopów USB z chińczykami (chociażby). Za $100 można już na aliexpress przebierać w modelach, a według Twoich wyliczeń (zakładam, że są poprawne) nie pokrywa to nawet kosztów komponentów. A gdzie produkcja (produkt z układami BGA trudno będzie sprzedać jako kit), testowanie, pisanie softu czy zysk. Nie mówiąc o inwestorze/dystrybutorze, który będzie też chciał swoją działkę. Polecam
  • Odpowiedz
@olewales: odnosząc się do rynku konsumentów i przedsiębiorców bardziej miałem na myśli to, czy budowa czegoś takiego gdziekolwiek by się przydała. Głównie informacja, czy ktoś by chciał mieć wygodny interfejs w komputerze, bo choć tak naprawdę byłem tylko w jednym warsztacie elektronicznym pewnej firmy z różnymi "poważnymi" maszynami: stanowisko na sito do pasy lutowniczej, piec do lutowania (w formie taśmy), maszyna do automatycznego nakładania elementów SMD i parę innych podobnych, oraz innymi lżejszyi urządzeniami elektronicznymi: oscyloskop, generator, miernik, zasilacz - to nie przypominam sobie żeby tam stał komputer. Czasem jak trzeba to pojawiał się laptop. I to mnie zastanawia.
Bo dla hobbysty, myślę że to nie problem, zwykle komputer jest na tym samym biurku, a nikt nie chce płacić za twardą plastikową obudowę i dziesiątki przycisków oraz trwałych enkoderów.

Do projektu budżetowego jestem zdecydowanie za mały. Sam nie dam rady - w sumie to robić to samemu, to ciężka sprawa. Tym bardziej że do tej pory byłem gościem od kodzenia. Dopiero od 2 lat poznaję tajniki elektroniki, automatyki, druku 3D - z naciskiem na to pierwsze - a w przyszłości chciał bym to wszystko jakoś połączyć.

Na sam pomysł pracy inżynierskiej też bardzo patrzę przez palce - ale to głównie dlatego że narobię się, za przeproszeniem, jak s-------n, robiąc coś co równie dobrze mogło by być pracą magisterską, a nie będzie to ciekawe i nikt nie doceni aspektu edukacyjnego projektu - poza przyszłym pracodawcą, zapewne. Z tym przekazaniem praw autorskich to mnie zaciekawiłeś, bo cokolwiek by to nie było, na pracę inżynierską chciałem zawsze zrobić coś, co
  • Odpowiedz
UART skończony, teraz pora na 8-kolorowe VGA :-)

I to nie byle jakie, bo od razu skok w 1920 x 1080 @ 60 fps - z zegarem 148,5 MHz! Bo mnie stać ;-)

Taki testowy ekran jak na obrazku zajmuje 50 na 8000 bloków logicznych w moim układzie FPGA. Choć brzmi to obiecująco jeżeli myśleć o tym ile można w taki układ wpakować funkcji, to mimo tego podobno szybko zaczyna miejsca brakować - zobaczymy. Niektóre układy mogą mieć takich bloków setki tysięcy.

Obecnie
Visher - UART skończony, teraz pora na 8-kolorowe VGA :-)

I to nie byle jakie, bo ...

źródło: comment_ljITNk4VBphsl5BDIF9Wvfzf2G1Q8j4v.jpg

Pobierz
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

UART, ciągle UART. Przyczynę poprzedniego problemu znalazłem, zawiniło txIdle które było w stanie wysokim przez dwa cykle i dwukrotnie zwiększyło indeks po pierwszym znaku, przeskakując na trzeci. Wynikało to ze złego przekazywania zmiennej w procesie do sygnału - wołam @olewales

Problem rozwiązałem rozszerzając kod UART.vhd tak, aby przy dłuższym czasie trwania txIdle, nie przeskakiwało do kolejnego znaku. I fajnie, niby powinno działać.

Przy okazji nauczyłem się obsługiwać symulator ModelSim - jakie to fajne! Zdecydowanie potrzebne narzędzie przy testowaniu, dodatkowo pozwala wykryć pewne błędy już w działającym programie, które kompilator przepuści (co mu się dziwić).
Visher - UART, ciągle UART. Przyczynę poprzedniego problemu znalazłem, zawiniło txIdl...

źródło: comment_Uttil5ouGIUCZP1dJIAxofc3OqMllhy7.jpg

Pobierz
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Zmagania z FPGA i VHDL ciąg dalszy ;-)

Tym razem rzuciłem sobie wyzwanie napisać UARTa, poszło całkiem sprawnie i czuję większa swobodę w tym języku konfiguracji. Póki co zaimplementowałem samo nadawanie które na ogół działa, cechuje się jednak dziwnym błędem - zawsze wcina drugi znak. Jakikolwiek by nie był, cokolwiek by przed nim nie stało.. Pozostałe znaki w napisach o różnej długości są spoko, problem przy różnych baudach (testowałem 9600 i 38400). To samo na PuTTY oraz Realterm.

Wrzucam kod, ktoś coś widzi, wiecie o co może chodzić?

Plik
Visher - Zmagania z FPGA i VHDL ciąg dalszy ;-) 

Tym razem rzuciłem sobie wyzwanie...

źródło: comment_WDOwVE0BJ7UQVWtuR68VNtf4y3YOvDg6.jpg

Pobierz
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

No, to pierwszy krok w FPGA mam już za sobą - nie mniej jednak jeszcze mnóstwo przede mną. Na ten moment udało mi się zrobić całkiem zgrabny debouncer przycisku z podziałem na sam debouncer i licznik, który to zaaplikowałem dla czterech pinów. Kod jest tu:

http://pastebin.com/fB0nYThM

Wszelkie uwagi mile widziane :) Staram się jeszcze zrozumieć sens podziału na jednostki, architektury i komponenty oraz jak nimi operować. Konkretnie sposób w jaki dochodzi do instancjalizacji jednostek (skąd on wie jaką architekturę wziąć?)

Wołam
Visher - No, to pierwszy krok w FPGA mam już za sobą - nie mniej jednak jeszcze mnóst...

źródło: comment_KloDqPjcmjE27kpVgI9EuTbCQS4ovtXF.jpg

Pobierz
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@fhrh: ciężko mi odpowiedzieć, na Politechnice mam dostęp do biblioteki i tam wygrzebuję informacje z paru książek naraz i łącze to w całość. Żadna nie nauczyła mnie sama z siebie tego co tu pokazałem - też nie czytałem żadnej od początku do końca. Do tego internet - videotutoriale na YT, stackoverflow-podobne serwisy, gotowe programy...
  • Odpowiedz
Piszę sobie licznik do debouncera przycisku (napisałem sam debouncer w jednym pliku i działał, ale teraz chcę podzielić to na dwa pliki i dwie osobne jednostki: uogólniony licznik i debouncer) i mam problem z instrukcją:

Q <= '1' when (clkCounter = target) else '0';
Kod wygląda tak:

http://pastebin.com/UzSgSGPi
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@a231: czekałem na kolejne części kursu, ale się nie doczekałem i wziąłem sprawy w swoje ręce. Kurs Veriloga + konfiguracja JTAGa, nauka jak działa mapowanie pinów, ip i tego typu zagadnienia i jazda.

Polecam filmik od Ben Hecka.
d15ea5e - @a231: czekałem na kolejne części kursu, ale się nie doczekałem i wziąłem s...
  • Odpowiedz
  • 1
@Supercoolljuk2: reklama ma to do siebie, ze mija sie z prawda. Dla przecientnego kowalskiego to co naturalne = zdrowe. Nawet gdyby to byla toksyna muchomora. A to co syntetyczne, daje raka. (np taka insulina wytwarzana sztucznie)
  • Odpowiedz