This function takes an existing array and creates a file readable by AIEsimulator and x86simulator. The input array can be of any real or complex data type.
- Complex data types are automatically detected, therefore only
the data type (for example,
int16) needs to be specified. - The function also accepts the PLIO width and uses the data type to calculate the number of columns in the file. If the PLIO width is less than the size of the data type, the function returns an error.
Syntax
xmcVitisWrite(fileName,arrayIn,dataType,widthPLIO)
Where:
-
fileNameis the output file name. -
arrayInis the Input array. -
dataTypeis the datatype of the data. -
widthPLIOis the PLIO width (must be 32, 64, or 128)
The following table shows the list of datatypes and maximum possible columns in the output file, based on the PLIO width.
| Data Types | Data Size (bits) | Maximum Possible Columns |
|---|---|---|
| int8 | 8 | 16 |
| int16 | 16 | 8 |
| int32 | 32 | 4 |
| int64 | 64 | 2 |
| uint8 | 8 | 16 |
| uint16 | 16 | 8 |
| uint32 | 32 | 4 |
| uint64 | 64 | 2 |
| cint16 | 32 | 4 |
| cint32 | 64 | 2 |
| float | 32 | 4 |
| cfloat | 64 | 2 |
Example
cfloat and the PLIO width is set to
128.A = [
3.142 + 1.463i,
6.288 + 3.079i,
3.333 + 1.493i,
3.781 + 8.781i,
3.142 + 1.463i]
xmcVitisWrite("Output.txt",A,'cfloat',128);
The file saves as Output.txt in the working directory, as specified in the function call. The file content is as follows.
"3.142 1.463
6.288 3.079
3.333 1.493
3.781 8.781
3.142 1.463"
The columns are calculated automatically based on the size of the data type and the PLIO width. The function divides a complex number into two columns in the file, corresponding to real and imaginary parts in that order. A file with complex values has at least two columns, while one with real values has at least one.