-
Data: 2009-05-22 21:10:32
Temat: Re: FPGA, VHDL detekcja zbocza i problemy
Od: Konop <k...@g...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> process(CLK,KEY0)
> begin
> if KEY0='0' then
> debug_cnt<=(others=>'0');
> dior_edge<='0';
> elsif CLK'event and CLK='1' then
> if HOST_DIOR_N='1' and dior_edge='0' then
> debug_cnt<=debug_cnt+1;
> dior_edge<='1';
> else
> dior_edge<='0';
> end if;
> end if;
> end process;
Ja tu widzę inny (niż widzi Jerry) problem. Nie wiem, czy on powoduje to
o czym piszesz... teoretycznie może (przepełnienie ;))... Sam napisałeś,
że sygnał HOST_DIOR_N jest *kilkanaście* *razy* *wolniejszy* od sygnału
CLK. Rozumiem, że ma po prostu dłuższy okres i stan aktywny HOST_DIOR_N
trwa ponad 1 cykl zegara CLK, tak?? To teraz przeanalizuj co się będzie
działo w przypadku, gdy będziesz miał HOST_DIOR_N = 1 przez 10 taktów
CLK. Kolejne numerki to kolejne zbocza narastające CLK
1) dior_edge = 0, więc dodajemy 1 i dajemy dior_edge<=1
2) poniewaz warunek HOST_DIOR_N='1' _and_ dior_edge='0' NIE JEST
spełniony, "wykonywane" jest dior_edge<=0 !!
3) identyczny z 1)
itd: 2=4=6=8=10 i 1=3=5=7=9 :)...
Efekt - zliczasz 5 impulsów, a chciałeś 1 ;)... wystarczy tego enda
rozbić na dwa ify i będzie po sprawie ;)...
if HOST_DIOR_N='1'
if dior_edge='0' then debug_cnt<=debug_cnt+1;****
dior_edge<='1';
else
dior_edge<='0';
end if;
W lini z **** na końcu nie jestem pewny czy nie trzeba dawać end if, nie
pamiętam po prostu dokładnie składni VHDLa ;)...
> Moim skromnym zdaniem powinno to zliczać w debug_cnt ilość wystąpień
> narastających zboczy sygnału HOST_DIOR_N, który jest kilkanaście razy
> wolniejszy od CLK... I co się okazuje? Zmienna debug_cnt zawiera około
> połowę mniejszą wartość niż powinna....
Fakt, że zmienna powinna zawierać zdecydowanie większą wartość niż
powinna, ale może przepełnienie robi swoje?? ;)... Nie wiem jak
deklarujesz tę zmienną i ile teoretycznie możesz tam zliczać ;)...
Pozdrawiam
Konop
Następne wpisy z tego wątku
- 22.05.09 21:14 Konop
- 22.05.09 21:16 Konop
- 22.05.09 23:02 Jerry1111
- 23.05.09 05:20 k...@g...com
- 23.05.09 06:21 J.F.
- 23.05.09 08:07 k...@g...com
- 23.05.09 09:09 Jerry1111
- 24.05.09 00:09 JA
Najnowsze wątki z tej grupy
- Disk on Module, czym to odczytać?
- Pasta ochronna? Lutownicza?
- zagadka pneumatyczna
- Klip testowy, jak sie to używa
- Jak sie smazy elektronike z odleglosci kilkuset metrów?
- William Shockley, co-inventor of the transistor
- Gazowy kocioł CO regulacja cyklingu i regulacja pogodowa
- Zamek elektroniczny
- szablon do pasty DIY
- Głośnik potrzebny
- Silikonowy przewód ekranowany
- Wtyk bananowy ekranowany
- Co może być gorsze od pożaru elektryka?
- daltonizm
- Mały Linux
Najnowsze wątki
- 2025-11-16 PESEL i problemy
- 2025-11-16 Jak przywrócić motyw?
- 2025-11-16 policja ochrania
- 2025-11-16 Disk on Module, czym to odczytać?
- 2025-11-16 Disk on Module, czym to odczytać?
- 2025-11-15 zaściankowe bydło
- 2025-11-15 Pasta ochronna? Lutownicza?
- 2025-11-14 "Partia rządzi, partia radzi. Partia nigdy cię nie zdradzi..."
- 2025-11-14 Czyja PRAWNA wina: Ukraina zestrzeliła ruski pocisk Iskander na ambasadę Azerbejdżanu
- 2025-11-14 Warszawa => Junior Rekruter <=
- 2025-11-14 Myślenice => Specjalista ds. kontrolingu <=
- 2025-11-14 Warszawa => Fullstack PHP Developer <=
- 2025-11-14 Warszawa => Mid/Senior IT Recruiter <=
- 2025-11-14 Zakrzewo => SAP HCM Consultant <=
- 2025-11-14 zagadka pneumatyczna




Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei