mikrocontroller.net

Forum: FPGA, VHDL & Co. Binärdatei in VHDL Testbench einlesen


Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich möchte in einer Testbench eine Binärdatei einlesen und die Daten an
mein VHDL Design weiterreichen. Genauser gesagt: ich habe einen DVB
Transportstream als Datei vorliegen und möchte diesen byteweise
auslesen.

Textdateien hab ich schon eingelesen und das funktioniert auch ohne
Probleme. Zu Binärdateien habe ich (noch) nicht brauchbaren gefunden.

Hat jemand schonmal so was gemacht?

Gruß Jörn

Autor: Jörn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab ne Lösung gefunden:

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
use IEEE.STD_LOGIC_TEXTIO.ALL;
USE STD.TEXTIO.ALL;

entity tb_test is
end tb_test;

architecture Behavioral of tb_test is

COMPONENT test
    PORT (      data_in: in std_logic_vector( 7 downto 0);
        data_out: in std_logic_vector( 7 downto 0)
       );
end component;

  signal data_in,data_out :  std_logic_vector(7 DOWNTO 0);

begin

UUT: test PORT MAP(
  data_in => data_in,
  data_out => data_out
);


tb_data: process
type characterFile_Typ is file of character;
file f: characterFile_Typ open read_mode is "football.ts";
variable c:character;
begin
    -- init
    data_in<=x"00";
    while not endfile(f) loop
      Read( f=>f,
            value=>c);
     data_in <= CONV_STD_LOGIC_VECTOR(character'pos(c),8);
      wait for 10 ns;
    end loop;
    wait;
end process;
end;

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.