UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 23012

11.1 EDK - 36Kb の IOCM ブロック RAM に対し、64Kb ブロック RAM が必要か

説明

キーワード : BRAM, controller, CNTRL, base, address, コントローラ, ベース, アドレス

アプリケーションは 32Kb を少し超える程度 (約 36Kb) です。資料によれば、64Kb メモリが必要とありますが、そのうち 28Kb は無駄になります。28Kb を無駄にせず、 4Kb のメモリを追加するだけで済ませる方法はありますか。

ソリューション

IOCM はバスとしてインスタンシエートされているため、複数の IOCM ブロック RAM コントローラをインスタンシエートすることは可能です。

36Kb 使用したい場合、その配分は次のようになります。

# 4KB の IOCM コントローラ 1 つ。ベース アドレスは 0xFFFF7000、そして High アドレスは 0xFFFF7FFF
# 32KB の IOCM コントローラ 1 つ。ベース アドレスは 0xFFFF8000 そして High アドレスは 0xFFFFFFFF

つまり 36Kb の隣接する IOCM ブロック RAM メモリをインスタンシエートしていることになります。ソフトウェア側で、リンカ スクリプトを変更し、隣接した ICOM メモリを 1 つのメモリのようにします。次は、この方法をインプリメントするための MHS ファイルの一部です。

-----------------------------------------------------------------------------------
BEGIN isocm_v10
PARAMETER INSTANCE = iocm
PARAMETER HW_VER = 2.00.a
PARAMETER C_ISCNTLVALUE = 0x81
PORT ISOCM_Clk = sys_clk_s
PORT sys_rst = sys_bus_reset
END

BEGIN isbram_if_cntlr
PARAMETER INSTANCE = iocm_cntlr
PARAMETER HW_VER = 3.00.a
PARAMETER C_BASEADDR = 0xffff8000
PARAMETER C_HIGHADDR = 0xffffffff
BUS_INTERFACE ISOCM = iocm
BUS_INTERFACE DCR_WRITE_PORT = isocm_porta
BUS_INTERFACE INSTRN_READ_PORT = isocm_portb
END

BEGIN bram_block
PARAMETER INSTANCE = isocm_bram
PARAMETER HW_VER = 1.00.a
BUS_INTERFACE PORTA = isocm_porta
BUS_INTERFACE PORTB = isocm_portb
END

BEGIN isbram_if_cntlr
PARAMETER INSTANCE = iocm_cntlr_1
PARAMETER HW_VER = 3.00.a
PARAMETER C_BASEADDR = 0xFFFF7000
PARAMETER C_HIGHADDR = 0xFFFF7FFF
BUS_INTERFACE ISOCM = iocm
BUS_INTERFACE DCR_WRITE_PORT = isocm_porta_1
BUS_INTERFACE INSTRN_READ_PORT = isocm_portb_1
END

BEGIN bram_block
PARAMETER INSTANCE = isocm_bram_1
PARAMETER HW_VER = 1.00.a
BUS_INTERFACE PORTA = isocm_porta_1
BUS_INTERFACE PORTB = isocm_portb_1
END


AR# 23012
日付 12/15/2012
ステータス アクティブ
種類 一般
このページをブックマークに追加