-
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
- Stare filmy o technice
- Zasilanie własnych konstrukcji przez PoE
- Jak działa domofon?
- Co oni mierzą miernikiem
- 40 lat OrCAD-a
- Multimetr z bluetooth
- Ciekawa mapka z BTS-ami
- Lampy uliczne LED z kubkiem
- Pęczniejące LiPo
- wyłącznik ścienny
- "Wybitna" inteligencja AI
- test stereo
- Bluetooth stereo
- W USA budują pierwszą komercyjną elektrownię fuzji jądrowej
- Weryfikacja myjki ultradźwiękowej
Najnowsze wątki
- 2025-10-19 HYUANDAI NIE POJEDZIE DALEJ! Potrzebuje PILNIE POMOCY!
- 2025-10-18 BLIK a Sprawa Polska
- 2025-10-18 UE i woda pitna do chłodzenia
- 2025-10-18 Zakrzewo => Konsultant SAP HCM <=
- 2025-10-17 "Przypadkowo wylosowany" sędzia odmówił ekstradycji Niemcom za NordStream
- 2025-10-17 Stare filmy o technice
- 2025-10-17 Warszawa => Starszy Konsultant SAP - obszar PP <=
- 2025-10-17 Warszawa => Java Full Stack Developer <=
- 2025-10-17 Warszawa => Konsultant Wiodący SAP PP <=
- 2025-10-17 Warszawa => Key Account Manager (Usługi HR) <=
- 2025-10-17 Ostrów Wielkopolski => Specjalista ds. Marketingu Online (PPC) <=
- 2025-10-17 Gdańsk => Konsultant ds. Wdrożeń ERP (moduł FK) <=
- 2025-10-17 Lublin => Programista Delphi <=
- 2025-10-16 Warszawa => Senior Algorithm Developer (Java/Kotlin) <=
- 2025-10-16 Poznań => SAP HCR Consultant <=