技術コラム

EFINIX Trion True Dual-Port Memoryでは、Read Enableは実装できない

作成者:mou-mou

DPRAMのVerilog-HDLでの記述については、Efinity® Synthesis User Guideの「RAM」チャプターに記載されています。Simple Dual-Port Memory(1 port read / 1 port write) と True Dual-Port Memory(2 port read / 2 port write)の例があがっております。Simple Dual-Port Memoryにはrd_en信号を使用した例があるのに対して、True Dual-Port Memoryにはrd_en信号を使用した例がありません。

そこで、実際に True Dual-Port Memory Examples にRead Enable信号を記述してみました。

module ram512x8_tdp_mix (wdataA, addrA, clkA, weA, rdataA, wdataB, addrB, clkB, weB, reB, rdataB);
    parameter AWIDTH = 9;
    parameter DWIDTH = 8;
    localparam DEPTH = 1 << AWIDTH;
    localparam MAX_DATA = (1<<DWIDTH)-1;

    input [DWIDTH-1:0] wdataA, wdataB;
    input [AWIDTH-1:0] addrA, addrB;
    input clkA, weA;
    input clkB, weB;
    input reB;
    output reg [DWIDTH-1:0] rdataA, rdataB;
    reg [DWIDTH-1:0] mem [DEPTH-1:0];
    integer i;
    initial begin
        // The memory is initialized with
        // decreasing values startingfrom MAX_DATA
        for (i=0;i<DEPTH;i=i+1)
            mem[i] = MAX_DATA - i;
    end
    always@(posedge clkA) begin
        // Use blocking assignments to for read-first
        rdataA = mem[addrA];
        if (weA) begin
            mem[addrA] = wdataA;
        end
    end
    always@(posedge clkB) begin
        // Use blocking assignments to force write-first
        if (weB) begin
            mem[addrB] = wdataB;
        end
//      rdataB = mem[addrB];
        if (reB) begin            // Read Enable
            rdataB = mem[addrB];
        end
    end
endmodule

すると、以下のエラーが発生しました。

[EFX-0680 ERROR] Dual Ported Memory 'mem' has incompatible Read-Enable signal 'reB'. (C:/Efinity\ram512x8_tdp_mix\ram512x8_tdp_mix.v:13)

Quantum Trion® Primitives User Guide の EFX_RAM_5K と EFX_DPRAM_5Kを見比べると、EFX_RAM_5Kには[RE]ポートが存在しますが、EFX_DPRAM_5Kには[RE]ポートは存在しません。

Simple Dual-Port MemoryにはEFX_RAM_5Kが割り当てらるためRead Enableを実装できるが、True Dual-Port MemoryにはEFX_DPRAM_5Kが割り当てられるためRead Enableは実装できないということになります。

トラックバックURL

URL:https://rightxlight.co.jp/technical/efinix-trion-true-dual-port-memory-read-enable/trackback/

よく読まれている記事はこちら

ソフトウェアからハードウェアまで、
まずはお気軽にご相談下さい。

お電話はこちら

お電話はこちら 06-6309-7782

受付時間:9:00~18:00(土日祝は除く)

メールフォームからはこちら

お問い合わせお問い合わせ

Copyright (C) Since 2011 RIGHTxLIGHT Co., Ltd. All Rights Reserved.

PAGE TOP