學習NIOS。打算用pll準備好信號和keyin信號組合,只有這兩個都為高時,CPU才正常運行,但是程序提示以下錯誤:
Error (12153): Can't elaborate top-level user hierarchy
程序源碼如下:
module qsysDDS(
input wire clk24M, // 27MHz輸入信號
//SDRam接口
output wire SD_mem_cs_n, // .mem_cs_n
output wire SD_mem_cke, // .mem_cke
output wire SD_mem_ras_n, // .mem_ras_n
output wire SD_mem_cas_n, // .mem_cas_n
output wire SD_mem_we_n, // .mem_we_n
output wire [1:0] SD_mem_ba, // .mem_ba
output wire [10:0] SD_mem_addr, // .mem_addr
inout wire [31:0] SD_mem_dq, // .mem_dq
output wire [3:0] SD_mem_dqm, // .mem_dm
output wire SD_mem_clk,
//SRAM
inout wire [15:0] sram_dq, // .sram.DQ
output wire [18:0] sram_addr, // .ADDR
//output wire sram_upb_n, // .UB_n
//output wire sram_lowb_n, // .LB_n
output wire sram_wr_n, // .WE_n
output wire sram_ce_n, // .CE_n
output wire sram_oe_n, // .OE_n
//EPCs接口
output wire epcs_dclk, // .dclk
output wire epcs_sce, // .sce
output wire epcs_sdo, // .sdo
input wire epcs_data0, //
//usart
input wire uart_1_rxd, // .rxd
output wire uart_1_txd, // .txd
//kEY led
input wire [1:0] key, // pio_key.export
output wire [1:0] led, // pio_led.export
inout wire iic_bus_scl, // .scl_pad_io
inout wire iic_bus_sda // .sda_pad_io
);
wire [1:0]myiic_in_port;
wire [1:0]myiic_out_port;
wire cpuclk;
wire cpurst;
wire pll_locked;
assign iic_bus_scl = myiic_out_port[0]?1'bz:0;
assign iic_bus_sda = myiic_out_port[1]?1'bz:0;
assign myiic_in_port[0] = iic_bus_scl;
assign myiic_in_port[1] = iic_bus_sda;
//鎖相環準備好,并且Key沒有按下,則復位信號為高
assign cpurst = pll_locked & key[0];
syspll u1(
.inclk0 (clk24M),
.c0 (cpuclk),
.c1 (SD_mem_clk),
.locked (pll_locked)
);
core u0 (
.clk_in_clk (cpuclk), // clk_clk_in.clk
.rxd_to_the_uart (uart_1_rxd), // uart_external_connection.rxd
.txd_from_the_uart (uart_1_txd), // .txd
.ledout_export (led), // ledout.export
.zs_addr_from_the_sdram (SD_mem_addr), // sdram_wire.addr
.zs_ba_from_the_sdram (SD_mem_ba), // .ba
.zs_cas_n_from_the_sdram (SD_mem_cas_n), // .cas_n
.zs_cke_from_the_sdram (SD_mem_cke), // .cke
.zs_cs_n_from_the_sdram (SD_mem_cs_n), // .cs_n
.zs_dq_to_and_from_the_sdram (SD_mem_dq), // .dq
.zs_dqm_from_the_sdram (SD_mem_dqm), // .dqm
.zs_ras_n_from_the_sdram (SD_mem_ras_n), // .ras_n
.zs_we_n_from_the_sdram (SD_mem_we_n_), // .we_n
.reset_reset_n (cpurst), // reset.reset_n
.keyin_export (key), // keyin.export
.iic_in_port (myiic_in_port), // iic.in_port
.iic_out_port (myiic_out_port),
.sram_DQ (sram_dq), // sram.DQ
.sram_ADDR (sram_addr), // .ADDR
.sram_UB_n (sram_upb_n), // .UB_n
.sram_LB_n (sram_lowb_n), // .LB_n
.sram_WE_n (sram_wr_n), // .WE_n
.sram_CE_n (sram_ce_n), // .CE_n
.sram_OE_n (sram_oe_n), // .OE_n
.epcsrom_dclk (epcs_dclk), // epcsrom.dclk
.epcsrom_sce (epcs_sce), // .sce
.epcsrom_sdo (epcs_sdo), // .sdo
.epcsrom_data0 (epcs_data)
);
endmodule
請朋友們幫忙看看。
|