-
Data: 2011-05-03 20:49:51
Temat: Re: verilog początki co żle?
Od: Konop <k...@g...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]>> Powyżej masz dwa "procesy" w których przypisujesz out_data (a więc
>> pośrednio out) - w pierwszym całe out(3 downto 0) a w drugim samo
>> out(3). Coś takiego się nie syntetyzuje bo kompilator nie wie co zrobić
> Już to poprawiłem. Wychodzi mi że kompilator nie chce przyjąć dwóch
> procesów (always @). Zaremowanie linijek od resetu asynchronicznego lub
> właściwego zlicznia pomaga. Tyle że nigdzie nie przeczytałem że nie może
> być kilku bloków od innych warunków. Poza tym ktoś w książce podał zły
> (niekompilowalny) przykład? Zastanawiam się czy ten web ISE nie ma jakiś
> ograniczeń, lub ja go źle skonfigurowałem.
To nie błąd konfiguracji, to specyfika języka (VHDL ma też podobnie)
Musisz pamiętać o tym, że to jest język OPISU SPRZĘTU... a nie język
programowania... To znaczy, każdy blok always opisuje jakiś sprzęt... i
teraz okazuje się, że sygnał out jest generowany przez dwa różne bloki...
To trochę tak, jakbyś rysował schemat układu... Jeden "blok" (always) to
jakby jedna kartka schematu... co Ci wyjdzie, jak na dwóch różnych
kartkach będziesz miał wyjścia o tej samej nazwie?? Który schemat ma
sterować tym wyjściem?? Raz ten, raz ten, ale skąd układ ma wiedzieć
kiedy który?? Musisz to tak rozrysować/rozpisać, aby miało to sens...
Więc sygnał wyjściowy może być przypisywany TYLKO W JEDNYM BLOKU ALWAYS.
W przeciwnym wypadku dostaniesz błąd...
Natomiast nic nie stoi na przeszkodzie, żeby w jednym bloku przypisywać
wiele sygnałów...
Twój licznik powinien wyglądać mniej więcej tak:
always @(load or reset or posedge cp)
if(reset)
out <= 0;
else if(load)
out <= in;
else if(posedge cp)
out <= out + 1;
To tak z pamięci piszę, więc nie kopiuj tego w prost, ale wyczuj ogólną
ideę.... Aha, oczywiście jest to licznik z asynchronicznym resetem,
asynchronicznym load'em, i reset ma wyższy priorytet niż load, cp ma
najniższy...
--
Pozdrawiam
Konop
--
Pozdrawiam
Konop
Najnowsze wątki z tej grupy
- Kod zniżkowy w TME do 26.09.2025
- SFP, 10G, simplex sc/apc
- [słabe wiatry powodują - przyp. JMJ] Energetyczny paraliż w Niemczech
- NxtPaper
- Programiści nie przestają zadziwiać świat
- Długi kabel zasilający a na końcu procek
- Dlaczego nam nie idzie
- Co czujnik to inna temperatura
- Jak naprawić pilota
- Dlaczego TMP wer. 2.0 nie może być sprzedawany jako patyk USB lub karta PCIe 1x?!?
- produkcja w UE
- Pamięć SRAM nie działa z Z80182
- plyta indukcyjna - naprawa
- założyłem kamerę
- syrenki alarmów
Najnowsze wątki
- 2025-09-18 pierwszy tel kupiłem za 1250zł
- 2025-09-17 jak się kupuje elektryczny?
- 2025-09-17 Kod zniżkowy w TME do 26.09.2025
- 2025-09-17 Ukraińcy uważają polski sys. antydronowy za najlepszy na Świecie, a rząd w III Rzeczy (pospolitej) woli sys. niemiecki
- 2025-09-17 Ukraińcy uważają polski sys. antydronowy za najlepszy na Świecie, a rząd w III Rzeczy (pospolitej) woli sys. niemiecki
- 2025-09-17 Warszawa => Dyrektor pionu IT <=
- 2025-09-17 Rzeszów => International Freight Forwarder <=
- 2025-09-16 China => Production Coordinator / Representant Product Dev <=
- 2025-09-16 Warszawa => Project Manager (AI and innovation) <=
- 2025-09-15 "Jeden telefon z Waszyngtonu i nasze samoloty nie wystartują" - czyli to co każdy koder wie
- 2025-09-15 UE chce uruchomić SI "Chat Control" na kompach wszystkich euroPejczyków
- 2025-09-15 Sejm odrzucił zakaz idelogii banderyzmu
- 2025-09-15 Nieprawidłowe parkowanie
- 2025-09-15 Poznań => Konsultant SAP HCM <=
- 2025-09-15 Warszawa => Specjalista rekrutacji IT <=