完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我有一个简单的设计,只是一个顶级模块和一个块ram模块。
首先,我使用Core Generator生成Virtex5块存储器。 其次,我使用Synplify D-2010.03-SP1-1合成顶层模块和块ram模块,并获得扩展名为edf的结果文件。 第三,我使用ISE 10.1实现扩展名为edf的文件,并满足以下错误。 错误:NgdBuild:604 - 无法解析类型为“blk_mem_gen_v2_7_6s_64s_64s”的逻辑块“mem_u”。 引脚名称拼写错误可能导致此错误,缺少edif或ngc文件或类型名称的拼写错误。 目标'virtex5'不支持符号'blk_mem_gen_v2_7_6s_64s_64s'。 我的代码如下: 顶级模块: 模块测试(douta,dina,addra,wea,clka); 输出[63:0] douta; 输入[63:0] dina;输入[5:0] addra;输入wea;输入clka; 电线[63:0] douta; blk_mem_gen_v2_7#(。ADDR_WIDTH(6),。DATA_DEPTH(64),. DATA_WIDTH(64))mem_u(。clka(clka),. dina(dina),。addd(addra),. wea(wea),. douta( douta)); endmodule 块ram模块: 模块blk_mem_gen_v2_7(clka,dina,addra,wea,douta); //合成black_box 参数ADDR_WIDTH = 4;参数DATA_DEPTH = 16;参数DATA_WIDTH = 16; 输入clka;输入[DATA_WIDTH-1:0] dina;输入[ADDR_WIDTH-1:0] addra;输入[0:0] wea;输出[DATA_WIDTH-1:0] douta; BLK_MEM_GEN_V2_7#(。C_ADDRA_WIDTH(ADDR_WIDTH),. C_ADDRB_WIDTH(4),. C_ALGORITHM(1),. C_BYTE_SIZE(9),. C_COMMON_CLK(0),. C_DEFAULT_DATA(“0”),. C_DISABLE_WARN_BHV_COLL(0),. C_DISABLE_WARN_BHV_RANGE( 0),. C_FAMILY( “的Virtex5”),. C_HAS_ENA(0),. C_HAS_ENB(0),. C_HAS_MEM_OUTPUT_REGS_A(0),. C_HAS_MEM_OUTPUT_REGS_B(0),. C_HAS_MUX_OUTPUT_REGS_A(1),. C_HAS_MUX_OUTPUT_REGS_B(0),. C_HAS_REGCEA( 0),. C_HAS_REGCEB(0),. C_HAS_SSRA(0),. C_HAS_SSRB(0),. C_INIT_FILE_NAME( “no_coe_file_loaded”),. C_LOAD_INIT_FILE(0),. C_MEM_TYPE(0),. C_MUX_PIPELINE_STAGES(0),. C_PRIM_TYPE( 1),. C_READ_DEPTH_A(DATA_DEPTH),. C_READ_DEPTH_B(16),. C_READ_WIDTH_A(DATA_WIDTH),. C_READ_WIDTH_B(16),. C_SIM_COLLISION_CHECK( “ALL”),. C_SINITA_VAL( “0”),. C_SINITB_VAL( “0”) ,.C_USE_BYTE_WEA(0),. C_USE_BYTE_WEB(0),. C_USE_DEFAULT_DATA(0),. C_USE_ECC(0),. C_USE_RAMB16BWER_RST_BHV(0),. C_WEA_WIDTH(1),. C_WEB_WIDTH(1),. C_WRITE_DEPTH_A(DATA_DEPTH),. C_WRITE_DEPTH_B(16),. C_WRITE_MODE_A( “WRITE_FIRST”),. C_WRITE_MODE_B( “WRITE_FIRST”),. C_WRITE_WIDTH_A(DATA_WIDTH),. C_WRITE_WIDTH_B(16),. C_X DEVICEFAMILY(“virtex5”))inst(.CLKA(clka),. DINA(dina),. ADDRA(addra),. WEA(wea),. DOUTA(douta),. ENA(),. REGCEA(),. SSRA(),. CLKB(),. DINB(),. ADDRB(),. ENB(),. REGCEB(),. WEB(),. SSRB(),. DOUTB(),. DBITERR(),. SBITERR()); endmodule 请帮帮我。 谢谢! 以上来自于谷歌翻译 以下为原文 I have a simple design, just a top module and a block ram module. First, I generate a Virtex5 block memory with Core Generator. Second, I synthesis the top module and the block ram module with Synplify D-2010.03-SP1-1 and get the result file with extension edf. Third, I use ISE 10.1 implement the file with extension edf, and meet the following erros. Error: NgdBuild:604 - logical block 'mem_u' with type 'blk_mem_gen_v2_7_6s_64s_64s' could not be resolved. A pin name misspelling can cause this, a missing edif or ngc file, or the misspelling of a type name. Symbol 'blk_mem_gen_v2_7_6s_64s_64s' is not supported in target 'virtex5'. My code is below: top module: module test( douta, dina, addra, wea, clka ); output [63:0] douta; input [63:0] dina; input [5:0] addra; input wea; input clka; wire [63:0] douta; blk_mem_gen_v2_7 #(.ADDR_WIDTH(6),.DATA_DEPTH(64),.DATA_WIDTH(64)) mem_u( .clka (clka ), .dina (dina ), .addra (addra ), .wea (wea ), .douta (douta ) ); endmodule block ram module: module blk_mem_gen_v2_7( clka, dina, addra, wea, douta); //synthesis black_box parameter ADDR_WIDTH = 4; parameter DATA_DEPTH = 16; parameter DATA_WIDTH = 16; input clka; input [DATA_WIDTH-1 : 0] dina; input [ADDR_WIDTH-1 : 0] addra; input [0 : 0] wea; output [DATA_WIDTH-1 : 0] douta; BLK_MEM_GEN_V2_7 #( .C_ADDRA_WIDTH(ADDR_WIDTH), .C_ADDRB_WIDTH(4), .C_ALGORITHM(1), .C_BYTE_SIZE(9), .C_COMMON_CLK(0), .C_DEFAULT_DATA("0"), .C_DISABLE_WARN_BHV_COLL(0), .C_DISABLE_WARN_BHV_RANGE(0), .C_FAMILY("virtex5"), .C_HAS_ENA(0), .C_HAS_ENB(0), .C_HAS_MEM_OUTPUT_REGS_A(0), .C_HAS_MEM_OUTPUT_REGS_B(0), .C_HAS_MUX_OUTPUT_REGS_A(1), .C_HAS_MUX_OUTPUT_REGS_B(0), .C_HAS_REGCEA(0), .C_HAS_REGCEB(0), .C_HAS_SSRA(0), .C_HAS_SSRB(0), .C_INIT_FILE_NAME("no_coe_file_loaded"), .C_LOAD_INIT_FILE(0), .C_MEM_TYPE(0), .C_MUX_PIPELINE_STAGES(0), .C_PRIM_TYPE(1), .C_READ_DEPTH_A(DATA_DEPTH), .C_READ_DEPTH_B(16), .C_READ_WIDTH_A(DATA_WIDTH), .C_READ_WIDTH_B(16), .C_SIM_COLLISION_CHECK("ALL"), .C_SINITA_VAL("0"), .C_SINITB_VAL("0"), .C_USE_BYTE_WEA(0), .C_USE_BYTE_WEB(0), .C_USE_DEFAULT_DATA(0), .C_USE_ECC(0), .C_USE_RAMB16BWER_RST_BHV(0), .C_WEA_WIDTH(1), .C_WEB_WIDTH(1), .C_WRITE_DEPTH_A(DATA_DEPTH), .C_WRITE_DEPTH_B(16), .C_WRITE_MODE_A("WRITE_FIRST"), .C_WRITE_MODE_B("WRITE_FIRST"), .C_WRITE_WIDTH_A(DATA_WIDTH), .C_WRITE_WIDTH_B(16), .C_XDEVICEFAMILY("virtex5")) inst ( .CLKA(clka), .DINA(dina), .ADDRA(addra), .WEA(wea), .DOUTA(douta), .ENA(), .REGCEA(), .SSRA(), .CLKB(), .DINB(), .ADDRB(), .ENB(), .REGCEB(), .WEB(), .SSRB(), .DOUTB(), .DBITERR(), .SBITERR()); endmodule Please to help me. Thank you! |
|
相关推荐
1个回答
|
|
它没有找到块ram的网表。
请使用-sd开关将所有相关的ngcs放在项目目录中或指向translate属性中。 以上来自于谷歌翻译 以下为原文 It is not finding the netlist for the block ram. Please put all the related ngcs in the project dir or point in translate properties using -sd switch. |
|
|
|
只有小组成员才能发言,加入小组>>
2388 浏览 7 评论
2803 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2270 浏览 9 评论
3338 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2438 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
767浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
551浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
381浏览 1评论
1974浏览 0评论
691浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 16:02 , Processed in 1.215676 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号