Surya, Both of the examples are legal. See P1800 Annex F. The first example is equivalent to import "DPI-C" function int XYZ_1(bit yi[][][1:0][2:0], bit[5:0] b); Nothing wrong with that. In the second example, you can use the mental model that yi is an open array with 2 dimensions, but the least-rapidly-varying dimension has a constrained length. Thus any actual argument bound to the yi formal must have a fixed outer dimension length of two. Only the inner dimension has bounds that can vary from call to call. BTW, the SV-CC is the committee that handles DPI, and open arrays are a DPI topic. Regards, Doug > -----Original Message----- > From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On > Behalf Of Surya Pratik Saha > Sent: Wednesday, December 21, 2005 3:30 AM > To: sv-bc@eda.org > Cc: Trainee19 (Moumita Das) > Subject: [sv-bc] Open array mixed with normal array > > SV supports open array for DPI construct. It is not clear > whether open array > can be mixed up with normal array or not. Please can you > someone clarify whether > the following two examples are correct or not. > > e.g. 1 > module top; > typedef bit array_int[1:0][2:0]; > > import "DPI" function int XYZ_1(array_int yi[][], bit[5:0] b); > > endmodule > > e.g. 2 > module top; > > import "DPI" function int XYZ_1(input logic yi[1:0][]); > > endmodule > > Regards > Surya. > >Received on Wed Dec 21 10:27:48 2005
This archive was generated by hypermail 2.1.8 : Wed Dec 21 2005 - 10:28:45 PST