ID de l'article: 000086112 Type de contenu: Information et documentation de produit Dernière révision: 11/09/2012

Comment corriger instantanément des copies du même bloc mémoire qui possèdent des fichiers d’initialisation différents, sans utiliser plusieurs fois le gestionnaire de plug-in MegaWizard ?

Environnement

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Descriptif

Pour ce faire, vous pouvez transmettre le nom du fichier d’initialisation en tant que paramètre au fichier généré par MegaWizard® pour chaque instance de la ROM ou de la RAM dans la conception de haut niveau. Pour ce faire, utilisez la procédure suivante pour modifier le fichier de l’emballage généré par le gestionnaire de plug-in MegaWizard et activer instantanément les instances dans votre conception. L’exemple suivant utilise Verilog HDL pour un bloc mémoire rom.

  1. Ajoutez la définition du paramètre init_file au fichier de l’emballage généré par MegaWizard, comme suit :

    parameter init_file = "";

  2. Modifiez l’instancation megafunction dans le fichier de l’emballage pour attribuer la nouvelle init_file paramètre comme le altsyncram_component.init_file valeur des paramètres, comme suit. Ce changement rend le module de ROM personnalisé généré par MegaWizard paramétrable, et permet l’instanciation de la ROM personnalisée pour définir la valeur du fichier d’initialisation.

    defparam
        altsyncram_component.init_file = init_file,

  3. Supprimer la valeur existante du altsyncram_component.init_file paramètre, s’il existe un paramètre dans le fichier de l’emballage. Vous trouverez ci-dessous un exemple de fichier de l’emballage modifié :

    module my_rom (address, clock, q);
       input [2:0] address;
       input clock;
       output [7:0] q;

       parameter init_file = "";
       wire [7:0] sub_wire0;
       wire [7:0] q = sub_wire0[7:0];
       altsyncram altsyncram_component (
       ...
       defparam
           altsyncram_component.init_file = init_file, ...

  4. Pour chaque instance de ROM dans la conception de haut niveau, définissez la init_file paramètre au nom du fichier d’initialisation souhaité.

    L’exemple suivant montre une instanciation du my_rom module, où la defparam est utilisée pour passer le fichier d’initialisation .mif au paramètre init_file . La conception peut inclure de nombreuses instanciations de cette ROM, chacune utilisant un fichier d’initialisation différent, en paramétrant la defparam.

    module top_level_roms (addr, clk, q);
       output [7:0] q;
       input clk;
       input [2:0] addr;

       my_rom u1 (.address(addr),.clock(clk),.q(q));
          defparam u1.init_file = "rom_test.mif";
    endmodule

Produits associés

Cet article concerne 1 produits

FPGA Stratix® II

Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.