Forum Discussion
Altera_Forum
Honored Contributor
13 years agoI think I find out the issue:
module subfifo_fifo_0 ( // inputs: avalonmm_write_slave_address, avalonmm_write_slave_write, avalonmm_write_slave_writedata, avalonst_source_ready, rdclock, rdreset_n, wrclock, wrreset_n, // outputs: avalonmm_write_slave_waitrequest, avalonst_source_data, avalonst_source_valid ) ; output avalonmm_write_slave_waitrequest; output [ 31: 0] avalonst_source_data; output avalonst_source_valid; input avalonmm_write_slave_address; input avalonmm_write_slave_write; input [ 31: 0] avalonmm_write_slave_writedata; input avalonst_source_ready; input rdclock; input rdreset_n; input wrclock; input wrreset_n; wire [ 31: 0] avalonmm_map_data_in; wire avalonmm_write_slave_waitrequest; wire [ 31: 0] avalonst_map_data_out; wire [ 31: 0] avalonst_source_data; reg avalonst_source_valid; wire [ 31: 0] data; wire [ 31: 0] q; wire rdclk; wire rdempty; wire rdreq; wire wrclk; wire wrfull; wire wrreq; wire wrreq_driver; //the_dcfifo_with_controls, which is an e_instance subfifo_fifo_0_dcfifo_with_controls the_dcfifo_with_controls ( .data (data), .q (q), .rdclk (rdclk), .rdempty (rdempty), .rdreq (rdreq), .wrclk (wrclk), .wrfull (wrfull), .wrreq (wrreq), .wrreset_n (wrreset_n) ); //in, which is an e_avalon_slave assign avalonmm_write_slave_waitrequest = wrfull; //the_map_avalonmm_to_avalonst, which is an e_instance subfifo_fifo_0_map_avalonmm_to_avalonst the_map_avalonmm_to_avalonst ( .avalonmm_data (avalonmm_map_data_in), .avalonst_data (avalonst_map_data_out) ); assign wrreq_driver = (avalonmm_write_slave_address == 0) & avalonmm_write_slave_write; assign avalonmm_map_data_in = avalonmm_write_slave_writedata; assign wrreq = wrreq_driver; assign data = avalonst_map_data_out; assign wrclk = wrclock; assign rdclk = rdclock; assign avalonst_source_data = q; assign rdreq = !rdempty & avalonst_source_ready; always @(posedge rdclk or negedge rdreset_n) begin if (rdreset_n == 0) avalonst_source_valid <= 0; else avalonst_source_valid <= !rdempty & avalonst_source_ready; end //out, which is an e_atlantic_master endmodule