ID do artigo: 000086112 Tipo de conteúdo: Documentação e informações do produto Última revisão: 11/09/2012

Como eu instauro cópias mulitiple do mesmo bloco de memória que têm arquivos de inicialização diferentes, sem usar o Gerenciador de plug-in MegaWizard várias vezes?

Ambiente

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Descrição

Você pode fazer isso passando o nome do arquivo de inicialização como parâmetro para o arquivo gerado pelo MegaWizard® para cada instância da ROM ou RAM no design de nível superior. Para isso, use o procedimento a seguir para editar o arquivo de wrapper gerado pelo Gerenciador de plug-in MegaWizard e instanciar as instâncias em seu design. O exemplo a seguir usa Verilog HDL para um bloco de memória ROM.

  1. Adicione a definição do parâmetro init_file ao arquivo de wrapper gerado pelo MegaWizard, da seguinte forma:

    parameter init_file = "";

  2. Modifique a instação de megafunção no arquivo wrapper para atribuir o novo init_file parâmetro como o altsyncram_component.init_file valor do parâmetro, como se segue. Esta alteração torna o módulo DE ROM personalizado gerado pelo MegaWizard parametrizável e permite a instaenciação da ROM personalizada para definir o valor do arquivo de inicialização.

    defparam
        altsyncram_component.init_file = init_file,

  3. Exclua o valor existente do altsyncram_component.init_file parâmetro, se houver um no arquivo wrapper. O seguinte é um exemplo do arquivo de invólucro modificado:

    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. Para cada instância de ROM no design de nível superior, defina o init_file parâmetro para o nome do arquivo de inicialização desejado.

    O exemplo a seguir mostra uma instauração my_rom do módulo, onde o defparam é usado para passar o arquivo de inicialização .mif para o parâmetro init_file. O design pode incluir muitas instações desta ROM, cada uma usando um arquivo de inicialização diferente, configurando o 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

Produtos relacionados

Este artigo aplica-se a 1 produtos

FPGAs Stratix® II

O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês prevalecerá e será a determinante. Exibir a versão em inglês desta página.