ISE Simulator: Could not read binray file because it was not written by Xilinx Simulator

Gast #837963
Lesenswert?

hallo,

ich will einen digitalen Filter mit dem Xilinx ISE Simulator simulieren 
und habe dazu meine Eingangswerte binär in einer Datei stimulus.dat. 
Diese sollen mit dem Xilinx ISE eingelsen simuliert und dann wieder in 
eine andere Datei geschrieben werden.
Dies funktioniert auch wunderbar, wenn ich es mit ModelSim simuliere, 
aber der Standardsimulator bringt mir den Fehler:


ERROR:Simulator:29 - at 0 ns : Could not read binary file
   ..\data_scripts\stimulus.bin, because it was not written by Xilinx 
Simulator
   on line 85 in file "J:/plb_alt/tb_fir/f.vhd"


Leider muss ich es aber mit dem ISE Simulator zum laufen bringen.
Hier meine einfachste Programmvariante:


read_input: process
   type char_file is file of character;
   file c_file_handle: char_file;
   variable C: character;
begin
   file_open(c_file_handle, "..\data_scripts\stimulus.bin", READ_MODE);
   while not endfile(c_file_handle) loop

  read (c_file_handle, c);
  din(7 downto 0) <= conv_std_logic_vector(character'pos(c), 8);
  read (c_file_handle, c);
  din(15 downto 8) <= conv_std_logic_vector(character'pos(c), 8);

   end loop;
   file_close(c_file_handle);
end process;


... das traurige daran is blos, dass das hier fast 1:1 aus den Language 
Templates des XILINX ISE raus ist.

muss ich den Simulator vielleicht mit irgendwelchen Parametern 
aufrufen???
Gast #837981
Lesenswert?

sorry, formatierung vergessen:

1
read_input: process
2
   type char_file is file of character;
3
   file c_file_handle: char_file;
4
   variable C: character;
5
begin
6
   file_open(c_file_handle, "..\data_scripts\stimulus.bin", READ_MODE);
7
   while not endfile(c_file_handle) loop
8

9
  read (c_file_handle, c);
10
  din(7 downto 0) <= conv_std_logic_vector(character'pos(c), 8);
11
  read (c_file_handle, c);
12
  din(15 downto 8) <= conv_std_logic_vector(character'pos(c), 8);
13

14
   end loop;
15
   file_close(c_file_handle);
16
end process;
Gast #840041
Lesenswert?

@Rick

danke für den Tipp.
hab mal die xst.pdf durchgepflügt. Da steht schon einiges über File IO 
drin. Mich wundert nur, dass das Programm mit ModelSim funktioniert, 
aber der ISE Simulator nicht will. Anscheinend nimmt es ModelSim einfach 
nicht so streng mit den Formaten.

chris
Gast #906200
Lesenswert?

so, wenn noch jemand anders das problem haben sollte. anscheinend 
braucht der xilinx simulator eine präambel, damit er erkennt, dass die 
datei von ihm ist. jedenfalls habe ich mit dem write-befehl einfach eine 
neue datei erstellt und nachher wieder gelesen.

die präambel lautet:  ÖÉÊÓ«§¨ und danach noch ein linefeed.
ich habe eine funktionierende datei mit "hallo" drin angehängt...


chris
Angehängte Dateien:
Gast #1320851
Lesenswert?

Ich versuche eine BMP Datei mit dem xilinx simulator zu öffnen. Was 
natürlich nicht geht (s.o.) Modelsim läuft bei mir leider nicht, und 
immer wenn ich versuche die Präambel in das BMP File einzufügen, meldet 
der simulator bein Lesen , das die Datei corrupt sei. Es muss doch 
irgendwie eine Möglichkeit geben, eine normale BMP datei zu öffnen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren