Skip to content
Extraits de code Groupes Projets
make_mif_fpga.py 949 octets
Newer Older
  • Learn to ignore specific revisions
  • ############################################################################
    ################ Write input arrays to MIF format files ####################
    ############################################################################
    import sys, os
    import math
    
    import numpy as np
    
    def make_mif_fpga(filename,dataTensor,bitwidth):
      # // Internal variables
      Ndepth = np.size(dataTensor);
      dataTensor = np.reshape(dataTensor,(-1,));
    
      # // Write file
      fileID = open(filename,'w');
      # Dimensions
      fileID.write(f'DEPTH = {Ndepth};\n',);
      fileID.write(f'WIDTH = {bitwidth};\n');
      fileID.write('\n');
      fileID.write('ADDRESS_RADIX = DEC;\n');
      fileID.write('DATA_RADIX = HEX;\n');
      fileID.write('\n');
      fileID.write('CONTENT\n');
      fileID.write('BEGIN\n');
      # Write data
      for i in range(Ndepth):
        fileID.write(f'{i} : {hex(dataTensor[i])};\n');
      fileID.write('END;\n');
      # close document
      fileID.close();