Forum: FPGA, VHDL & Co. File einlesen (bisher über package)


von Simon (Gast)


Lesenswert?

Hallo -
bisher hatte ich ein package, um den Inhalt des RAMS zu laden:



package loadram is

  type raminput_type is
  record
    ira  : std_logic_vector(13 downto 0);
    iri  : std_logic_vector(15 downto 0);
    iwr  : std_logic;
    istb : std_logic;
  end record;

  type ramtable_type is
    array(natural range<>) of raminput_type;
  constant ramtable : ramtable_type := (
(ira=>   "00000000" ,iri=>  "000000000" ,iwr=>  '1'),
(ira=>   "00000001" ,iri=>  "000000101" ,iwr=>  '1')
..
..
      );
  end loadram;

Das ganze soll ich nun mit file_open realisieren. Weiss aber nicht wie 
ich das in vhdl  binden soll.
Kann mir da Jemand helfen ?
Wo habe ich Probleme? Beim package kann ich die RAM Daten folgendemassen 
reinschreiben:

    for n in ramtable'range loop
      RAM_ADDR <= ramtable(n).ira;
      RAM_DI   <= ramtable(n).iri;
      RAM_W_RN <= ramtable(n).iwr;
      wait until rising_edge(SYSCLK);
    end loop;  -- n

Wie mache ich das wenn ich ein file einlese ? Wie kann ich den internen 
Signalen dann die einzelnen Werte einer Zeile zuweisen?

Wäre über Hilfe dankbar.

Grüße,
Simon

von bko (Gast)


Lesenswert?

schau mal in die ISE Manuals im
>XST User Guide< im Kapitel >XST HDL Coding Techniques<
unter dem Punkt >Initializing RAM From an External File<
 (bei ISE 9.2 auf Seite 235).
Da sind eine paar schöne Beispiele, die sind Simulierbar und mit der 
Xilinx-Software synthetisierbar.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.