文章 ID: 000086112 內容類型: 產品資訊與文件 最近查看日期: 2012 年 09 月 11 日

我該如何在不多次使用 MegaWi3d 外掛程式管理器的情況下,立即複製具有不同初始化檔案的相同記憶體區塊的多重副本?

環境

BUILT IN - ARTICLE INTRO SECOND COMPONENT
描述

您可以將初始化檔案名稱作為參數,傳遞至頂級設計中每個 ROM 或 RAM 實例的 MegaWilbyd® 生成檔案。若要這麼做,請使用下列程式來編輯 MegaWilbyd 外掛程式管理器所產生的包裝檔,並即時記錄設計中的實例。以下範例使用 Verilog HDL 作為 ROM 記憶體區塊。

  1. 將參數init_file的定義新增到 MegaWipard 產生的包裝檔案中,如下所示:

    parameter init_file = "";

  2. 修改包裝檔案中的超級功能即時,以指派新的 init_file 參數為 altsyncram_component.init_file 參數值,如下所示。此變更使 MegaWi 生自訂 ROM 模組參數化,並允許自訂 ROM 的即時化來定義初始化檔案的價值。

    defparam
        altsyncram_component.init_file = init_file,

  3. 刪除現有的值 altsyncram_component.init_file 參數,如果包裝檔案中有一個。下列是修改後的包裝檔案的範例:

    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. 針對頂級設計中的每一個 ROM 實例,請設定 init_file 參數至所需的初始化檔案名稱。

    下列範例顯示模組的 my_rom 一個即時化,其中使用 defparam 將 .mif 初始化檔案傳遞至參數 init_file 。此設計可包含許多此 ROM 的即時性,每一個使用不同的初始化檔案,透過設定 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

相關產品

本文章適用於 1 產品

Stratix® II FPGA

這個頁面的內容綜合了英文原始內容的人工翻譯譯文與機器翻譯譯文。本內容是基於一般資訊目的,方便您參考而提供,不應視同完整或準確的內容。如果這個頁面的英文版與譯文之間發生任何牴觸,將受英文版規範及管轄。 查看這個頁面的英文版。