OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 10526|回复: 13

[ALTERA] 例化两个ROM时编译报错的问题

[复制链接]

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
74
金钱
74
注册时间
2020-4-3
在线时间
12 小时
发表于 2020-4-27 19:01:22 | 显示全部楼层 |阅读模式
1金钱
在VGA(基于ROM)显示的基础上,我想要显示两幅图片,并通过按键选择想要显示的图片。所以使用了两个显示模块,在每个模块里例化了一块ROM,储存图片信息。
其顶层原理图一。但是运行过程中一直报错(图二)。最开始使用的图片为100*100,后来改成40*40的后还是不行。请问是哪里出了问题,或者说我要想显示两幅图片该怎么改进。
此外我做了另一个实验,通过按键显示图片和彩条,只使用了一个ROM的情况下,是可以通过按键选择显示图片或彩条的。
两个显示模块的代码如下:
显示一:
module vga_display1(
    input             vga_clk,              //VGA驱动时钟
    input             sys_rst_n,            //复位信号
        input      [1:0] xuanze1,      //选择信号

    input      [ 9:0] pixel_xpos,           //像素点横坐标
    input      [ 9:0] pixel_ypos,           //像素点纵坐标   
    output     [15:0] pixel_data            //像素点数据
    );   

//parameter define   
parameter  H_DISP = 10'd640;                //分辨率——行
parameter  V_DISP = 10'd480;                //分辨率——列

localparam POS_X  = 10'd270;                //图片区域起始点横坐标
localparam POS_Y  = 10'd190;                //图片区域起始点纵坐标
localparam WIDTH  = 10'd100;                //图片区域宽度
localparam HEIGHT = 10'd100;                //图片区域高度
localparam TOTAL  = 14'd10000;              //图案区域总像素数
localparam BLACK  = 16'b00000_000000_00000; //屏幕背景色

//reg define
wire        rom_rd_en;                      //读ROM使能信号
reg  [13:0] rom_addr;                       //读ROM地址
reg         rom_valid;                      //读ROM数据有效信号

//wire define   
wire [15:0] rom_data;                       //ROM输出数据

//*****************************************************
//**                    main code
//*****************************************************

//从ROM中读出的图像数据有效时,将其输出显示
assign pixel_data = (rom_valid && xuanze== 2'b10) ? rom_data : BLACK; //改过的

//当前像素点坐标位于图案显示区域内时,读ROM使能信号拉高
assign rom_rd_en = (pixel_xpos >= POS_X) && (pixel_xpos < POS_X + WIDTH)
                    && (pixel_ypos >= POS_Y) && (pixel_ypos < POS_Y + HEIGHT)
                     ? 1'b1 : 1'b0;

//控制读地址
always @(posedge vga_clk or negedge sys_rst_n) begin         
    if (!sys_rst_n) begin
        rom_addr   <= 14'd0;
    end
    else if(rom_rd_en) begin
        if(rom_addr < TOTAL - 1'b1)
            rom_addr <= rom_addr + 1'b1;    //每次读ROM操作后,读地址加1
        else
            rom_addr <= 1'b0;               //读到ROM末地址后,从首地址重新开始读操作
    end
    else
        rom_addr <= rom_addr;
end

//从发出读使能到ROM输出有效数据存在一个时钟周期的延时
always @(posedge vga_clk or negedge sys_rst_n) begin         
    if (!sys_rst_n)
        rom_valid <= 1'b0;
    else
        rom_valid <= rom_rd_en;
end

//通过调用IP核来例化ROM
pic_rom1        pic_rom_inst(
        .clock   (vga_clk),
        .address (rom_addr),
        .rden    (rom_rd_en),
        .q       (rom_data)
        );

endmodule

显示二:
module vga_display2(
    input             vga_clk,              //VGA驱动时钟
    input             sys_rst_n,            //复位信号

    input      [ 9:0] pixel_xpos,           //像素点横坐标
    input      [ 9:0] pixel_ypos,           //像素点纵坐标   
    output     [15:0] pixel_data            //像素点数据
    );   

//parameter define   
parameter  H_DISP = 10'd640;                //分辨率——行
parameter  V_DISP = 10'd480;                //分辨率——列

localparam POS_X  = 10'd270;                //图片区域起始点横坐标
localparam POS_Y  = 10'd190;                //图片区域起始点纵坐标
localparam WIDTH  = 10'd100;                //图片区域宽度
localparam HEIGHT = 10'd100;                //图片区域高度
localparam TOTAL  = 14'd10000;              //图案区域总像素数
localparam BLACK  = 16'b00000_000000_00000; //屏幕背景色

//reg define
wire        rom_rd_en;                      //读ROM使能信号
reg  [13:0] rom_addr;                       //读ROM地址
reg         rom_valid;                      //读ROM数据有效信号

//wire define   
wire [15:0] rom_data;                       //ROM输出数据

//*****************************************************
//**                    main code
//*****************************************************

//从ROM中读出的图像数据有效时,将其输出显示
assign pixel_data = rom_valid ? rom_data : BLACK;

//当前像素点坐标位于图案显示区域内时,读ROM使能信号拉高
assign rom_rd_en = (pixel_xpos >= POS_X) && (pixel_xpos < POS_X + WIDTH)
                    && (pixel_ypos >= POS_Y) && (pixel_ypos < POS_Y + HEIGHT)
                     ? 1'b1 : 1'b0;

//控制读地址
always @(posedge vga_clk or negedge sys_rst_n) begin         
    if (!sys_rst_n) begin
        rom_addr   <= 14'd0;
    end
    else if(rom_rd_en) begin
        if(rom_addr < TOTAL - 1'b1)
            rom_addr <= rom_addr + 1'b1;    //每次读ROM操作后,读地址加1
        else
            rom_addr <= 1'b0;               //读到ROM末地址后,从首地址重新开始读操作
    end
    else
        rom_addr <= rom_addr;
end

//从发出读使能到ROM输出有效数据存在一个时钟周期的延时
always @(posedge vga_clk or negedge sys_rst_n) begin         
    if (!sys_rst_n)
        rom_valid <= 1'b0;
    else
        rom_valid <= rom_rd_en;
end

//通过调用IP核来例化ROM
pic_rom2        pic_rom_inst(
        .clock   (vga_clk),
        .address (rom_addr),
        .rden    (rom_rd_en),
        .q       (rom_data)
        );

endmodule


图一

图一
批注 2020-04-27 184155.png

最佳答案

查看完整内容[请看2#楼]

你的ROM设置的深度为16384,位宽为16,共两个ROM,所以消耗的存储资源为:16384*16*2=524288,而EP4CE10的存储资源为423936,所以超出了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

2013

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5618
金钱
5618
注册时间
2018-10-21
在线时间
1591 小时
发表于 2020-4-27 19:01:23 | 显示全部楼层
RmjZZ 发表于 2020-4-30 18:10
我把文件一块弄过来了

你的ROM设置的深度为16384,位宽为16,共两个ROM,所以消耗的存储资源为:16384*16*2=524288,而EP4CE10的存储资源为423936,所以超出了。
QQ截图20200506133531.png
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2020-4-28 01:25:00 | 显示全部楼层
帮顶
回复

使用道具 举报

3

主题

2013

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5618
金钱
5618
注册时间
2018-10-21
在线时间
1591 小时
发表于 2020-4-28 09:24:38 | 显示全部楼层
从报错结果来看,应该是使用的RAM资源超出了板载的最大RAM资源。
回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
74
金钱
74
注册时间
2020-4-3
在线时间
12 小时
 楼主| 发表于 2020-4-28 14:10:49 | 显示全部楼层
QinQZ 发表于 2020-4-28 09:24
从报错结果来看,应该是使用的RAM资源超出了板载的最大RAM资源。

使用一个ROM时储存100*100像素的图片可以,但是使用两个ROM分别储存40*40的就不行了
回复

使用道具 举报

3

主题

2013

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5618
金钱
5618
注册时间
2018-10-21
在线时间
1591 小时
发表于 2020-4-29 09:28:54 | 显示全部楼层
RmjZZ 发表于 2020-4-28 14:10
使用一个ROM时储存100*100像素的图片可以,但是使用两个ROM分别储存40*40的就不行了

理论上可以存储两个40*40,ROM的大小设置的正确吗?另外在综合报告里,可以看到资源占用的情况。
回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
74
金钱
74
注册时间
2020-4-3
在线时间
12 小时
 楼主| 发表于 2020-4-29 11:01:21 | 显示全部楼层
QinQZ 发表于 2020-4-29 09:28
理论上可以存储两个40*40,ROM的大小设置的正确吗?另外在综合报告里,可以看到资源占用的情况。

C:\Users\20153\Desktop\M毕设\周记\批注 2020-04-29 105424.png
ROM大小的设置应该是没问题的。
回复

使用道具 举报

3

主题

2013

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5618
金钱
5618
注册时间
2018-10-21
在线时间
1591 小时
发表于 2020-4-29 11:16:09 | 显示全部楼层
RmjZZ 发表于 2020-4-29 11:01
ROM大小的设置应该是没问题的。

你把编译报告截图看下
回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
74
金钱
74
注册时间
2020-4-3
在线时间
12 小时
 楼主| 发表于 2020-4-29 11:52:25 | 显示全部楼层
QinQZ 发表于 2020-4-29 11:16
你把编译报告截图看下

Info: Running Quartus II 64-Bit Analysis & Synthesis
        Info: Version 13.1.0 Build 162 10/23/2013 SJ Full Version
        Info: Processing started: Wed Apr 29 10:36:35 2020
Info: Command: quartus_map --read_settings_files=on --write_settings_files=off 1 -c 1
Info (11104): Parallel Compilation has detected 4 hyper-threaded processors. However, the extra hyper-threaded processors will not be used by default. Parallel Compilation will use 2 of the 2 physical processors detected instead.
Info (12021): Found 1 design units, including 1 entities, in source file pic_rom1.v
        Info (12023): Found entity 1: pic_rom1
Info (12021): Found 1 design units, including 1 entities, in source file pic_rom2.v
        Info (12023): Found entity 1: pic_rom2
Info (12021): Found 1 design units, including 1 entities, in source file vga_display2.v
        Info (12023): Found entity 1: vga_display2
Info (12021): Found 1 design units, including 1 entities, in source file vga_display1.v
        Info (12023): Found entity 1: vga_display1
Info (12021): Found 1 design units, including 1 entities, in source file vga_driver.v
        Info (12023): Found entity 1: vga_driver
Info (12021): Found 1 design units, including 1 entities, in source file choose.v
        Info (12023): Found entity 1: choose
Info (12021): Found 1 design units, including 1 entities, in source file vga_pll.v
        Info (12023): Found entity 1: vga_pll
Info (12021): Found 1 design units, including 1 entities, in source file vga_pic.bdf
        Info (12023): Found entity 1: vga_pic
Info (12127): Elaborating entity "vga_pic" for the top level hierarchy
Info (12128): Elaborating entity "vga_driver" for hierarchy "vga_driver:inst3"
Info (12128): Elaborating entity "vga_pll" for hierarchy "vga_pll:inst"
Info (12128): Elaborating entity "altpll" for hierarchy "vga_pll:inst|altpll:altpll_component"
Info (12130): Elaborated megafunction instantiation "vga_pll:inst|altpll:altpll_component"
Info (12133): Instantiated megafunction "vga_pll:inst|altpll:altpll_component" with the following parameter:
        Info (12134): Parameter "bandwidth_type" = "AUTO"
        Info (12134): Parameter "clk0_divide_by" = "2"
        Info (12134): Parameter "clk0_duty_cycle" = "50"
        Info (12134): Parameter "clk0_multiply_by" = "1"
        Info (12134): Parameter "clk0_phase_shift" = "0"
        Info (12134): Parameter "compensate_clock" = "CLK0"
        Info (12134): Parameter "inclk0_input_frequency" = "20000"
        Info (12134): Parameter "intended_device_family" = "Cyclone IV E"
        Info (12134): Parameter "lpm_hint" = "CBX_MODULE_PREFIX=vga_pll"
        Info (12134): Parameter "lpm_type" = "altpll"
        Info (12134): Parameter "operation_mode" = "NORMAL"
        Info (12134): Parameter "pll_type" = "AUTO"
        Info (12134): Parameter "port_activeclock" = "PORT_UNUSED"
        Info (12134): Parameter "port_areset" = "PORT_USED"
        Info (12134): Parameter "port_clkbad0" = "PORT_UNUSED"
        Info (12134): Parameter "port_clkbad1" = "PORT_UNUSED"
        Info (12134): Parameter "port_clkloss" = "PORT_UNUSED"
        Info (12134): Parameter "port_clkswitch" = "PORT_UNUSED"
        Info (12134): Parameter "port_configupdate" = "PORT_UNUSED"
        Info (12134): Parameter "port_fbin" = "PORT_UNUSED"
        Info (12134): Parameter "port_inclk0" = "PORT_USED"
        Info (12134): Parameter "port_inclk1" = "PORT_UNUSED"
        Info (12134): Parameter "port_locked" = "PORT_USED"
        Info (12134): Parameter "port_pfdena" = "PORT_UNUSED"
        Info (12134): Parameter "port_phasecounterselect" = "PORT_UNUSED"
        Info (12134): Parameter "port_phasedone" = "PORT_UNUSED"
        Info (12134): Parameter "port_phasestep" = "PORT_UNUSED"
        Info (12134): Parameter "port_phaseupdown" = "PORT_UNUSED"
        Info (12134): Parameter "port_pllena" = "PORT_UNUSED"
        Info (12134): Parameter "port_scanaclr" = "PORT_UNUSED"
        Info (12134): Parameter "port_scanclk" = "PORT_UNUSED"
        Info (12134): Parameter "port_scanclkena" = "PORT_UNUSED"
        Info (12134): Parameter "port_scandata" = "PORT_UNUSED"
        Info (12134): Parameter "port_scandataout" = "PORT_UNUSED"
        Info (12134): Parameter "port_scandone" = "PORT_UNUSED"
        Info (12134): Parameter "port_scanread" = "PORT_UNUSED"
        Info (12134): Parameter "port_scanwrite" = "PORT_UNUSED"
        Info (12134): Parameter "port_clk0" = "PORT_USED"
        Info (12134): Parameter "port_clk1" = "PORT_UNUSED"
        Info (12134): Parameter "port_clk2" = "PORT_UNUSED"
        Info (12134): Parameter "port_clk3" = "PORT_UNUSED"
        Info (12134): Parameter "port_clk4" = "PORT_UNUSED"
        Info (12134): Parameter "port_clk5" = "PORT_UNUSED"
        Info (12134): Parameter "port_clkena0" = "PORT_UNUSED"
        Info (12134): Parameter "port_clkena1" = "PORT_UNUSED"
        Info (12134): Parameter "port_clkena2" = "PORT_UNUSED"
        Info (12134): Parameter "port_clkena3" = "PORT_UNUSED"
        Info (12134): Parameter "port_clkena4" = "PORT_UNUSED"
        Info (12134): Parameter "port_clkena5" = "PORT_UNUSED"
        Info (12134): Parameter "port_extclk0" = "PORT_UNUSED"
        Info (12134): Parameter "port_extclk1" = "PORT_UNUSED"
        Info (12134): Parameter "port_extclk2" = "PORT_UNUSED"
        Info (12134): Parameter "port_extclk3" = "PORT_UNUSED"
        Info (12134): Parameter "self_reset_on_loss_lock" = "OFF"
        Info (12134): Parameter "width_clock" = "5"
Info (12021): Found 1 design units, including 1 entities, in source file db/vga_pll_altpll.v
        Info (12023): Found entity 1: vga_pll_altpll
Info (12128): Elaborating entity "vga_pll_altpll" for hierarchy "vga_pll:inst|altpll:altpll_component|vga_pll_altpll:auto_generated"
Info (12128): Elaborating entity "7408" for hierarchy "7408:inst5"
Info (12130): Elaborated megafunction instantiation "7408:inst5"
Info (12128): Elaborating entity "choose" for hierarchy "choose:inst4"
Warning (10235): Verilog HDL Always Construct warning at choose.v(11): variable "picture1" is read inside the Always Construct but isn't in the Always Construct's Event Control
Warning (10235): Verilog HDL Always Construct warning at choose.v(13): variable "picture2" is read inside the Always Construct but isn't in the Always Construct's Event Control
Info (12128): Elaborating entity "vga_display1" for hierarchy "vga_display1:inst1"
Info (12128): Elaborating entity "pic_rom1" for hierarchy "vga_display1:inst1|pic_rom1:pic_rom_inst"
Info (12128): Elaborating entity "altsyncram" for hierarchy "vga_display1:inst1|pic_rom1:pic_rom_inst|altsyncram:altsyncram_component"
Info (12130): Elaborated megafunction instantiation "vga_display1:inst1|pic_rom1:pic_rom_inst|altsyncram:altsyncram_component"
Info (12133): Instantiated megafunction "vga_display1:inst1|pic_rom1:pic_rom_inst|altsyncram:altsyncram_component" with the following parameter:
        Info (12134): Parameter "address_aclr_a" = "NONE"
        Info (12134): Parameter "clock_enable_input_a" = "BYPASS"
        Info (12134): Parameter "clock_enable_output_a" = "BYPASS"
        Info (12134): Parameter "init_file" = "./tupian/2.1.mif"
        Info (12134): Parameter "intended_device_family" = "Cyclone IV E"
        Info (12134): Parameter "lpm_hint" = "ENABLE_RUNTIME_MOD=NO"
        Info (12134): Parameter "lpm_type" = "altsyncram"
        Info (12134): Parameter "numwords_a" = "16384"
        Info (12134): Parameter "operation_mode" = "ROM"
        Info (12134): Parameter "outdata_aclr_a" = "NONE"
        Info (12134): Parameter "outdata_reg_a" = "UNREGISTERED"
        Info (12134): Parameter "widthad_a" = "14"
        Info (12134): Parameter "width_a" = "16"
        Info (12134): Parameter "width_byteena_a" = "1"
Info (12021): Found 1 design units, including 1 entities, in source file db/altsyncram_h2b1.tdf
        Info (12023): Found entity 1: altsyncram_h2b1
Info (12128): Elaborating entity "altsyncram_h2b1" for hierarchy "vga_display1:inst1|pic_rom1:pic_rom_inst|altsyncram:altsyncram_component|altsyncram_h2b1:auto_generated"
Info (12021): Found 1 design units, including 1 entities, in source file db/decode_jsa.tdf
        Info (12023): Found entity 1: decode_jsa
Info (12128): Elaborating entity "decode_jsa" for hierarchy "vga_display1:inst1|pic_rom1:pic_rom_inst|altsyncram:altsyncram_component|altsyncram_h2b1:auto_generated|decode_jsa:rden_decode"
Info (12021): Found 1 design units, including 1 entities, in source file db/mux_iob.tdf
        Info (12023): Found entity 1: mux_iob
Info (12128): Elaborating entity "mux_iob" for hierarchy "vga_display1:inst1|pic_rom1:pic_rom_inst|altsyncram:altsyncram_component|altsyncram_h2b1:auto_generated|mux_iob:mux2"
Info (12128): Elaborating entity "vga_display2" for hierarchy "vga_display2:inst2"
Info (12128): Elaborating entity "pic_rom2" for hierarchy "vga_display2:inst2|pic_rom2:pic_rom_inst"
Info (12128): Elaborating entity "altsyncram" for hierarchy "vga_display2:inst2|pic_rom2:pic_rom_inst|altsyncram:altsyncram_component"
Info (12130): Elaborated megafunction instantiation "vga_display2:inst2|pic_rom2:pic_rom_inst|altsyncram:altsyncram_component"
Info (12133): Instantiated megafunction "vga_display2:inst2|pic_rom2:pic_rom_inst|altsyncram:altsyncram_component" with the following parameter:
        Info (12134): Parameter "address_aclr_a" = "NONE"
        Info (12134): Parameter "clock_enable_input_a" = "BYPASS"
        Info (12134): Parameter "clock_enable_output_a" = "BYPASS"
        Info (12134): Parameter "init_file" = "./tupian/2.2.mif"
        Info (12134): Parameter "intended_device_family" = "Cyclone IV E"
        Info (12134): Parameter "lpm_hint" = "ENABLE_RUNTIME_MOD=NO"
        Info (12134): Parameter "lpm_type" = "altsyncram"
        Info (12134): Parameter "numwords_a" = "16384"
        Info (12134): Parameter "operation_mode" = "ROM"
        Info (12134): Parameter "outdata_aclr_a" = "NONE"
        Info (12134): Parameter "outdata_reg_a" = "UNREGISTERED"
        Info (12134): Parameter "widthad_a" = "14"
        Info (12134): Parameter "width_a" = "16"
        Info (12134): Parameter "width_byteena_a" = "1"
Info (12021): Found 1 design units, including 1 entities, in source file db/altsyncram_i2b1.tdf
        Info (12023): Found entity 1: altsyncram_i2b1
Info (12128): Elaborating entity "altsyncram_i2b1" for hierarchy "vga_display2:inst2|pic_rom2:pic_rom_inst|altsyncram:altsyncram_component|altsyncram_i2b1:auto_generated"
Info (286030): Timing-Driven Synthesis is running
Info (16010): Generating hard_block partition "hard_block:auto_generated_inst"
        Info (16011): Adding 1 node(s), including 0 DDIO, 1 PLL, 0 transceiver and 0 LCELL
Info (21057): Implemented 232 device resources after synthesis - the final resource count might be different
        Info (21058): Implemented 4 input pins
        Info (21059): Implemented 18 output pins
        Info (21061): Implemented 145 logic cells
        Info (21064): Implemented 64 RAM segments
        Info (21065): Implemented 1 PLLs
Info: Quartus II 64-Bit Analysis & Synthesis was successful. 0 errors, 2 warnings
        Info: Peak virtual memory: 4665 megabytes
        Info: Processing ended: Wed Apr 29 10:36:57 2020
        Info: Elapsed time: 00:00:22
        Info: Total CPU time (on all processors): 00:00:03
Info (11104): Parallel Compilation has detected 4 hyper-threaded processors. However, the extra hyper-threaded processors will not be used by default. Parallel Compilation will use 2 of the 2 physical processors detected instead.
Info (119006): Selected device EP4CE10F17C8 for design "1"
Info (21077): Core supply voltage is 1.2V
Info (21077): Low junction temperature is 0 degrees C
Info (21077): High junction temperature is 85 degrees C
Info (15535): Implemented PLL "vga_pll:inst|altpll:altpll_component|vga_pll_altpll:auto_generated|pll1" as Cyclone IV E PLL type
        Info (15099): Implementing clock multiplication of 1, clock division of 2, and phase shift of 0 degrees (0 ps) for vga_pll:inst|altpll:altpll_component|vga_pll_altpll:auto_generated|wire_pll1_clk[0] port
Info (171003): Fitter is performing an Auto Fit compilation, which may decrease Fitter effort to reduce compilation time
Info (176444): Device migration not selected. If you intend to use device migration later, you may need to change the pin assignments as they may be incompatible with other devices
        Info (176445): Device EP4CE6F17C8 is compatible
        Info (176445): Device EP4CE15F17C8 is compatible
        Info (176445): Device EP4CE22F17C8 is compatible
Info (169124): Fitter converted 5 user pins into dedicated programming pins
        Info (169125): Pin ~ALTERA_ASDO_DATA1~ is reserved at location C1
        Info (169125): Pin ~ALTERA_FLASH_nCE_nCSO~ is reserved at location D2
        Info (169125): Pin ~ALTERA_DCLK~ is reserved at location H1
        Info (169125): Pin ~ALTERA_DATA0~ is reserved at location H2
        Info (169125): Pin ~ALTERA_nCEO~ is reserved at location F16
Warning (15714): Some pins have incomplete I/O assignments. Refer to the I/O Assignment Warnings report for details
Info (176045): Design uses memory blocks. Violating setup or hold times of memory block address registers for either read or write operations could cause memory contents to be corrupted. Make sure that all memory block address registers meet the setup and hold time requirements.
Critical Warning (169085): No exact pin location assignment(s) for 22 pins of 22 total pins
        Info (169086): Pin vga_hs not assigned to an exact location on the device
        Info (169086): Pin vga_vs not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[15] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[14] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[13] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[12] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[11] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[10] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[9] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[8] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[7] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[6] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[5] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[4] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[3] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[2] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[1] not assigned to an exact location on the device
        Info (169086): Pin vga_rgb[0] not assigned to an exact location on the device
        Info (169086): Pin xuanzw[0] not assigned to an exact location on the device
        Info (169086): Pin xuanzw[1] not assigned to an exact location on the device
        Info (169086): Pin sys_rst_n not assigned to an exact location on the device
        Info (169086): Pin sys_clk not assigned to an exact location on the device
Critical Warning (332012): Synopsys Design Constraints File file not found: '1.sdc'. A Synopsys Design Constraints File is required by the TimeQuest Timing Analyzer to get proper timing constraints. Without it, the Compiler will not properly optimize the design.
Info (332144): No user constrained generated clocks found in the design
Info (332144): No user constrained base clocks found in the design
Info (332096): The command derive_clocks did not find any clocks to derive.  No clocks were created or changed.
Info (332143): No user constrained clock uncertainty found in the design. Calling "derive_clock_uncertainty"
Info (332154): The derive_clock_uncertainty command did not apply clock uncertainty to any clock-to-clock transfers.
Info (332130): Timing requirements not specified -- quality metrics such as performance may be sacrificed to reduce compilation time.
Info (176353): Automatically promoted node vga_pll:inst|altpll:altpll_component|vga_pll_altpll:auto_generated|wire_pll1_clk[0] (placed in counter C0 of PLL_1)
        Info (176355): Automatically promoted destinations to use location or clock signal Global Clock CLKCTRL_G3
Info (176353): Automatically promoted node sys_rst_n~input (placed in PIN M2 (CLK2, DIFFCLK_1p))
        Info (176355): Automatically promoted destinations to use location or clock signal Global Clock CLKCTRL_G4
        Info (176356): Following destination nodes may be non-global or may not use global or regional clocks
                Info (176357): Destination node 7408:inst5|4~0
Info (176353): Automatically promoted node 7408:inst5|4~0
        Info (176355): Automatically promoted destinations to use location or clock signal Global Clock
Info (176233): Starting register packing
Info (176235): Finished register packing
        Extra Info (176219): No registers were packed into other blocks
Info (176214): Statistics of I/O pins that need to be placed that use the same VCCIO and VREF, before I/O pin placement
        Info (176211): Number of I/O pins in group: 20 (unused VREF, 2.5V VCCIO, 2 input, 18 output, 0 bidirectional)
                Info (176212): I/O standards used: 2.5 V.
Info (176215): I/O bank details before I/O pin placement
        Info (176214): Statistics of I/O banks
                Info (176213): I/O bank number 1 does not use VREF pins and has undetermined VCCIO pins. 5 total pin(s) used --  12 pins available
                Info (176213): I/O bank number 2 does not use VREF pins and has undetermined VCCIO pins. 1 total pin(s) used --  18 pins available
                Info (176213): I/O bank number 3 does not use VREF pins and has undetermined VCCIO pins. 0 total pin(s) used --  26 pins available
                Info (176213): I/O bank number 4 does not use VREF pins and has undetermined VCCIO pins. 0 total pin(s) used --  27 pins available
                Info (176213): I/O bank number 5 does not use VREF pins and has undetermined VCCIO pins. 0 total pin(s) used --  25 pins available
                Info (176213): I/O bank number 6 does not use VREF pins and has undetermined VCCIO pins. 1 total pin(s) used --  13 pins available
                Info (176213): I/O bank number 7 does not use VREF pins and has undetermined VCCIO pins. 0 total pin(s) used --  26 pins available
                Info (176213): I/O bank number 8 does not use VREF pins and has undetermined VCCIO pins. 0 total pin(s) used --  26 pins available
Info (171121): Fitter preparation operations ending: elapsed time is 00:00:05
Info (170189): Fitter placement preparation operations beginning
Error (170040): Can't place all RAM cells in design
        Info (170034): Selected device has 46 memory locations of type M9K. The current design requires 64 memory locations of type M9K to successfully fit.
        Info (170033): Memory usage required for the design in the current device: 139% M9K memory block locations required
Info (170190): Fitter placement preparation operations ending: elapsed time is 00:00:00
Info (11888): Total time spent on timing analysis during the Fitter is 0.02 seconds.
Error (171000): Can't fit design in device
Info (144001): Generated suppressed messages file E:/QuartusCode/TupianYuanlitu/output_files/1.fit.smsg
Error: Quartus II 64-Bit Fitter was unsuccessful. 2 errors, 3 warnings
        Error: Peak virtual memory: 5048 megabytes
        Error: Processing ended: Wed Apr 29 10:37:17 2020
        Error: Elapsed time: 00:00:17
        Error: Total CPU time (on all processors): 00:00:05
回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
74
金钱
74
注册时间
2020-4-3
在线时间
12 小时
 楼主| 发表于 2020-4-29 11:53:28 | 显示全部楼层
QinQZ 发表于 2020-4-29 11:16
你把编译报告截图看下

我没找到上传图片的地方,就把编译报告复制过来了
回复

使用道具 举报

3

主题

2013

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5618
金钱
5618
注册时间
2018-10-21
在线时间
1591 小时
发表于 2020-4-29 20:30:40 | 显示全部楼层
RmjZZ 发表于 2020-4-29 11:53
我没找到上传图片的地方,就把编译报告复制过来了

看编译报告看不出来啊,编辑模式改成高级模式,可以贴图片
回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
74
金钱
74
注册时间
2020-4-3
在线时间
12 小时
 楼主| 发表于 2020-4-30 18:06:17 | 显示全部楼层
QinQZ 发表于 2020-4-29 20:30
看编译报告看不出来啊,编辑模式改成高级模式,可以贴图片

批注 2020-04-29 114837.png 批注 2020-04-29 105424.png
这样的可以吗
回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
74
金钱
74
注册时间
2020-4-3
在线时间
12 小时
 楼主| 发表于 2020-4-30 18:10:44 | 显示全部楼层
QinQZ 发表于 2020-4-29 20:30
看编译报告看不出来啊,编辑模式改成高级模式,可以贴图片

我把文件一块弄过来了

TupianYuanlitu.rar

2.06 MB, 下载次数: 2

回复

使用道具 举报

6

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
74
金钱
74
注册时间
2020-4-3
在线时间
12 小时
 楼主| 发表于 2020-5-6 13:47:34 | 显示全部楼层
QinQZ 发表于 2020-5-6 13:37
你的ROM设置的深度为16384,位宽为16,共两个ROM,所以消耗的存储资源为:16384*16*2=524288,而EP4CE10 ...

哦哦,谢啦,这就去改。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 17:14

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表