-
Data: 2009-05-22 19:47:32
Temat: Re: FPGA, VHDL detekcja zbocza i problemy
Od: Jerry1111 <j...@w...pl.pl.wp> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]k...@g...com wrote:
> Niestety to tylko teoria, w praktyce prawie połowę zboczy sygnału
> HOST_DIOR_N "gubie", kiedy próbuje je wykrywać w procesie
> zsynchronizowanym z głównym zegarem...
>
> Prosty przykład:
>
> 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;
HOST_DIOR_N jest synchroniczny z Twoim zegarem? Nie? To masz hazard.
Daj przerzutnik D na noge Altery i opiero potem do 'if' - pomoze.
Niestety wyjdzie Ci latencja 1CLK, i na to nie ma rady (chyba ze
asynchronicznie wszystko zrobisz).
> 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....
>
> Przykład drugi:
>
> process(HOST_DIOR_N,KEY0)
> begin
> if KEY0='0' then
> debug_cnt<=(others=>'0');
> elsif HOST_DIOR_N'event and HOST_DIOR_N='1' then
> debug_cnt<=debug_cnt+1;
> end if;
> end process;
>
> W tym przypadku debug_cnt zawiera już właściwą wartość, zgodną z
> ilością zboczy narastających sygnału HOST_DIOR_N. Ja potrzebuję jednak
> mieć synchronizację z CLK głównym więc nie mogę sobie pozwolić na
> takie rozwiązanie.
Tutaj HOST_DIOR_N nie musi byc synchronicznie z Twoim zegarem - dlatego
dziala.
--
Jerry1111
Następne wpisy z tego wątku
- 22.05.09 21:10 Konop
- 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
- Sterownik kotła CO praca PWM
- Jakie baterie A23 i LR44?
- OLED SSD1306 - degradacja?
- Który symulator AVR jest ,,prawilny"?
- 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
Najnowsze wątki
- 2025-11-23 konpederacki debil o fotelikach
- 2025-11-22 Sterownik kotła CO praca PWM
- 2025-11-22 Fwd: Fwd: jesienne paragony grozy
- 2025-11-22 Fwd: jesienne paragony grozy
- 2025-11-22 Fwd: Stopa z gwintem
- 2025-11-22 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-11-22 Warszawa => Solution Architect (Workday) - Legal Systems <=
- 2025-11-22 Warszawa => Senior Cloud Engineer - AWS <=
- 2025-11-22 Wrocław => Programista React ze znajomością C++ <=
- 2025-11-22 Stopa z gwintem
- 2025-11-22 Białystok => Dynamics 365 Commerce/POS Developer <=
- 2025-11-22 Elektryki to jednak smrody
- 2025-11-22 Warszawa => Programista Microsoft Dynamics 365 Finance & Operations (D
- 2025-11-22 Warszawa => Starszy Programista C <=
- 2025-11-22 Żerniki => Dyspozytor Międzynarodowy <=




Ile kosztują tanie mieszkania w polskich metropoliach?