-
Data: 2014-07-09 00:28:56
Temat: Re: VHDL - RAM obsługujący read-during-write
Od: Adam Górski <gorskiamalpa@wpkropkapl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2014-07-08 21:07, Jakub Rakus pisze:
> Przeglądając tutoriale na temat sposobów pisania kodu HDL tak, żeby
> syntetyzator maksymalnie wykorzystał specjalizowane bloki FPGA natknąłem
> się na prosty przykład pamięci RAM obsługującej operacje typu read
> during write:
>
> ARCHITECTURE rtl OF single_clock_ram IS
> TYPE MEM IS ARRAY(0 TO 31) OF STD_LOGIC_VECTOR(2 DOWNTO 0);
> SIGNAL ram_block: MEM;
> BEGIN
> PROCESS (clock)
> BEGIN
> IF (clock'event AND clock = '1') THEN
> IF (we = '1') THEN
> ram_block(write_address) <= data;
> END IF;
> q <= ram_block(read_address);
> -- VHDL semantics imply that q doesn't get data
> -- in this clock cycle
> END IF; END PROCESS; END rtl;
>
> Nie do końca rozumiem dlaczego niby to:
> q <= ram_block(read_address);
> ma się wykonać dopiero przy następnym wejściu w proces? Że niby jak jest
> spełniony IF we='1' to wszystko poza nim się nie wykona?
>
Poczytaj o różnicach pomiędzy signal i variable.
Wprost mówiąc :
Jeżeli sygnały ( signal ) wewnątrz procesu mają przypisaną nową
"wartość" to jest ona "widziana" dopiero po restarcie procesu.
Jeżeli zmienne ( variable ) wewnątrz procesu mają przypisaną nową
"wartość" to jest ona "widziana" już w następnej "instrukcji" sekwencyjnej.
Tak proces "wykonuje" się sekwencyjnie ( zaraz mnie ktoś zamorduje ).
Pzdr
Adam
---
Ta wiadomość e-mail jest wolna od wirusów i złośliwego oprogramowania, ponieważ
ochrona avast! Antivirus jest aktywna.
http://www.avast.com
Następne wpisy z tego wątku
- 09.07.14 00:39 Adam Górski
- 09.07.14 23:29 Jakub Rakus
Najnowsze wątki z tej grupy
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
Najnowsze wątki
- 2025-02-25 Tak wiem.... To oczywiste ale jak oni dzisiaj dziadują na materiale
- 2025-02-25 rozliczenia policji
- 2025-02-25 Echhhhhh. Marzy mi się SWAP Audi A2 z 1.8 T ;-)
- 2025-02-25 Warszawa => Analityk Biznesowo-Systemowy <=
- 2025-02-25 Warszawa => SQL Developer <=
- 2025-02-25 Zbigniew Ziobro śmie sugerować "niedostatki niezawisłości" sędzi (wątpliwości co do bezstronności)
- 2025-02-25 Kraków => DevOps Engineer (Junior/Regular) <=
- 2025-02-25 Kraków => Front-end Developer <=
- 2025-02-25 Szpital
- 2025-02-24 Gniazdo + wtyk
- 2025-02-24 Dyrektor Toyoty miał rację. Elektryki to ślepa uliczka
- 2025-02-24 Białystok => System Architect (Java background) <=
- 2025-02-24 Białystok => System Architect (background deweloperski w Java) <=
- 2025-02-24 Białystok => Solution Architect (Java background) <=
- 2025-02-24 Warszawa => Data Engineer (Tech Leader) <=