Gast
#1025438
hallo, ich möchte eine Sinustabelle über eine Textdatei in einen selbst angelegten Speicher speichern und später weiterverarbeiten. es werden keine fehlermeldungen ausgegeben, allerdings liegt in meinen speicher nur die zahl 1. kann mir vielleicht einer einen tip geben, wo mein fehler liegen könnte? Teile des Programmcodes: ----------------------------------------------------------------------- architecture funktion of oszillator is signal phase_width: integer := number_phase*(8*8); -- Gesamte Bitlänge der Dateninfo signal data_clk: std_logic; -- Takt: Datenabfrage signal write_clk: std_logic; -- Schreibtakt signal baud_clk: std_logic; -- Baudtakt type sinmemory is array (0 to 7) of integer; signal sinetable: sinmemory; ------------------------------------------------------------------------ -- Sinustabelle einlesen sinustabelle: process(clk) variable sincounter: integer range 0 to 7; variable fstatus: FILE_OPEN_STATUS; begin for j in 0 to 7 loop read(sinus_data, sinetable(sincounter)); sincounter := sincounter + 1; end loop; end process sinustabelle; ------------------------------------------------------------------------ -- Sinus erzeugen sine: process variable sinecounter: integer range 0 to 7; begin wait until rising_edge (data_clk); sinus <= conv_std_logic_vector(sinetable(sinecounter), 12); sinecounter := sinecounter + 1; end process sine; ---------------------------------------------------------------------- die textdatei sieht so aus: 0 71 100 71 0 -71 -100 -71