Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

VHDL problem z pętlą

ziemniak121
-
-
Posty:1
Rejestracja:10 mar 2010, o 16:18
Lokalizacja:GDA
VHDL problem z pętlą

Postautor: ziemniak121 » 10 mar 2010, o 16:29

Witam

Mam taki problem, iż musiałem stworzyć koder oraz dekoder o pewnych parametrach co jest rzeczą mało ważną. Wszystko pięknie śmiga ale, potrzebuję zrobić to tak aby wszystkie wartości 12 bitowe zostały wrzucone i zakodowane. Pytanie jak to zrobić :) na pewno jakoś trzeba by to zrobić pętlą, czy ma ktoś jakiś pomysł ? Chodzi o to, że na wejsciu mam wpisany aktualnie 111011100111, a chciałbym żeby ten program zrobił to dla wartości od 111111111111 do 000000000000.

Kod wygląda następująco:

library ieee;
use ieee.std_logic_1164.all;


entity koder is
PORT(
data :in std_logic_vector(11 downto 0):="111011100111";
dataq :out std_logic_vector(7 downto 0)
);
end koder;

architecture rtl of koder is

begin
process(data)
begin

if data(10).
.
.
.
.
.

end if;

end process;
end rtl;

Piotr Czak
-
-
Posty:22
Rejestracja:1 lut 2009, o 20:07
Lokalizacja:Wejherowo

Postautor: Piotr Czak » 16 mar 2010, o 14:53

Witam,

rozumiem, że chodzi Ci o napisanie TestBencha który będzie generować wartości dla data w podanym zakresie? Jeśli tak to:

Kod: Zaznacz cały

library ieee; use ieee.std_logic_1164.all; use IEEE.STD_LOGIC_unsigned.all; entity koder_tb is end koder_tb; architecture sim of koder_tb is component koder is PORT( data :in std_logic_vector(11 downto 0):="111011100111"; dataq :out std_logic_vector(7 downto 0) ); end component; signal S_data : std_logic_vector(11 downto 0) := (others => '0'); signal S_dataq : std_logic_vector(7 downto 0) begin U0 : koder PORT map( data => S_data, dataq => S_dataq ); process begin S_data <= S_data + "1"; wait for 100ns; end process; end sim;
mam nadzieję że nic nie pomyliłem.

Pozdrawiam
Piotr

Wróć do „PLD/FPGA i inne zagadnienia techniki cyfrowej”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 10 gości