Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
17267 Discussions

Help to translate verilog to vhdl

CHerb4
Beginner
2,087 Views

Greetings, first to say that I am new to the forum and I really do not know if this is the correct section for this type of questions.

I have limited knowledge in vhdl but I am totally new in verilog. A couple of days ago I try to translate a project from verilog to vhdl, for this I am using a translator, but even so I am finding lines that I can not translate to vhdl (lines 1, 2, 3, 8, 11, 15, 36, 51).

`define SDREADRANGE 16*idx+15:16*idx // Incrementing indexes within generate below `define SBUSRANGE 32*idx+31:32*idx // Incrementing indexes within generate below `define SDRECRANGE 9*idx+8:9*idx // Incrementing indexes within generate below generate genvar idx; for (idx=0; idx<=31; idx = idx+1) begin : sdma_engines   // Create a unique register block address: 32 SDMA engines with 64 bytes each = 2K wire i_aen = i_aen_sdma_engines & (i_host_addr[10:6] == idx );       wire [31:0] sdma_dq = i_sdma_dq[`SBUSRANGE]; wire [8:0] sdma_record_size = i_sdma_record_size[`SDRECRANGE];     // SDMA engines use PTIQ's 8-(31+8) wire [7:0] ptiq_number = 8'd8 + idx;   g1_sdma_engine U_sdma_engine (   // Clock and Reset .i_rst ( i_rst ), // input // .i_clk ( i_clk ), // input //   // ======= Local Bus Interface ======= .i_lclk ( i_lclk ), // input // .i_host_addr ( i_host_addr[5:1] ), // input [5:1] // .i_cs ( i_cs ), // input // .i_rnw ( i_rnw ), // input // .i_aen ( i_aen ), // input // .i_host_data ( i_host_data ), // input [15:0] // .o_host_data ( odata_engines[`SDREADRANGE] ), // output [15:0] // .o_ta ( sdma_otas[idx] ), // output //   // Interface to source logic .i_sdma_enc ( i_sdma_enc[idx] ), // output // .i_sdma_record_added_tk ( i_sdma_record_added_tk[idx] ), // input // .o_sdma_ffren ( o_sdma_ffren[idx] ), // output // .i_sdma_ff_almost_full ( i_sdma_ff_almost_full[idx] ), // input // .i_sdma_dq ( sdma_dq ), // input [31:0] // .i_sdma_eof ( i_sdma_eof[idx] ), // input // .i_sdma_record_size ( sdma_record_size ), // input [8:0] //   // Backplane Interface via arbiter. Write fully-formed TLP's .o_tlp_request ( s_request[idx] ), // output // .i_tlp_grant ( s_grant[idx] ), // input // .o_tlp_data ( s_data[`SBUSRANGE] ), // output [31:0] // .o_tlp_eof ( s_eof[idx] ), // output // .o_tlp_wen ( s_wen[idx] ), // output //   // ptiq .i_ptiq_number ( ptiq_number ), // input [7:0] // .o_ptiq_dav ( o_sdma_ptiq[idx] ) // output //     ); end endgenerate

Cualquier ayuda es muy bienvenida, gracias de antemano.

 

 

 

 

0 Kudos
0 Replies
Reply