MBS2TIFF/GDS Revision History



MBS2TIFF/GDS - a MEBES to GDSII/TIFF/BITMAP conversion utility

Version 1.18 10-16-11

Sub micron window error

This version fixes the issue with the command line option -window:llx,lly,urx,ury
where if urx-llx or ury-lly were less than 1um the analysis window would revert to the home view.

Multi threading

This version supports multi-threading and striping of data when the -union[:M] value is used. Now data compaction takes advantage of as many cores are available (up to a maximum of 4). Before the user had to make a judicious choice for the optional value of M (the number of items to be collected before unionization would occur on output to the GDSII stream) in a trade off between processing time and generating GDSII minimizing the number of artifacts resulting from fractured MEBES data. On modern platforms the user can specify M to be 500000 or 5000000 (the current default is still 5000).


Version 1.17 08-06-10

window command line option

This version fixes the window command line option. Previous versions only allowed window conversion within the GUI.


Version 1.16 10-2-08

Slice code 99

This version supports slice code 99 (9 inch), 88 (8 inch), 77 (14 inch) in the job deck.
Use the mbs2tiff -h command line option to see the new -slice options.

Union option for compact output GDSII file

We now recommend using -union:50000 - this improves the compaction of the output GDSII file.
Vertex count are guaranteed to never exceed MAXPTS value (see -maxpts command line option).


Version 1.15 9-2-08

Improved MEBES reader

This version of mbs2tiff/gdsii fixes a bug in the MEBES V reader.


Version 1.13 7-21-08

Standard output

This version of mbs2tiff/gdsii is capable of sending the output to the standard output instead of a file.


MBS2TIFF/GDS - a MEBES to GDSII/TIFF/BITMAP conversion utility

Version 1.11 12-18-04

New Feature - Layer Mapping

First release of MBS2TIFF/GDS. Supports Job deck, and Window extraction. Runs as a standalone application or as DLL for companies who OEM the software.

Job deck levels can be mapped to different layers
in the GDSII o/p. By default, ofcourse, job deck levels
are mapped to the same layer numbers in GDSII extracted
o/p. This feature is only available for command line
run (with -nogui).


Command line option, which helps for this feature is,


-levels:l1[-m1],l2[-m2]


where,
 l1,l2 are the original level numbers to be extracted
 m1,m2 are the respective mapped layers in GDSII o/p (optional)
 This command, ofcourse, is valid only for MEBES job deck
 data.


Examples:


i) mbs2tiff inputmebes.jb out.gds -nogui -gds -levels:1,2,3


This implies to extract levels 1, 2 and 3 from inputmebes.jb job deck
to GDSII o/p. Since no mapping is done, output GDSII file out.gds
will have respective layers 1, 2 and 3.


ii) mbs2tiff inputmebes.jb out.gds -nogui -gds -levels:1-55,2,3-44


This implies to extract levels 1, 2 and 3 from inputmebes.jb job deck
to GDSII o/p. Level 1 is mapped to 55 and level 3 is mapped to 44.
Level 2 is not mapped to any other. Output GDSII file out.gds
will have respective layers 55, 2 and 44.


To use this feature from libmbsext.so/mbsextract.dll directly use:


MBSEXTRACT_API int acsMBS_SetLevelMap(const short inLevel, const
  short outLevel);


This function will set the input level(inLevel) to desired output
layer(outLevel) in GDSII o/p. User should call this function
for each level, which needs different mapping before calling any
extract GetROIImage functions(extract functions).


b) Silent mode(-silent) does not pop up any messages or
dialog boxes. In the previous versions, it use to message once the
extraction is done. However, this was unsuitable for the batch(command) mode
run and hence the change.

Bug fix - Layer default in MEBES to GDSII

Default layer was different in the extracted GDSII o/p from a single MEBES pattern, on Solaris and Windows. This was the case whenever -union option was used. This has been fixed.

Bug fix - Global Mirroring in Job Deck file

Global Mirroring option in MEBES job deck was not in effect for GDSII extraction. This has been fixed.


Version 1.10 09-28-04

First Release

First release of MBS2TIFF/GDS. Supports Job deck, and Window extraction. Runs as a standalone application or as DLL for companies who OEM the software.

GDSII output is supported in addition to Windows Bitmap and TIFF format in this version. All the Chip specification's in the MEBES job deck are represented as structure in GDSII format. All the levels in the job deck are represented as layers in GDSII format. Internally, each chip's level is a structure in itself in GDSII world and all it's placements(ROWS in job deck) are AREF's in GDSII world.

Command Line Options

Here are the command line argument options,


mbs2tiff [options] input_file output_file


options


-nogui
  Run in comamnd line mode.
  No Mbs2tiff main dialog box will be popped up.  On Windows, 
  only the progress dialog box will pop up, which can be disabled
  with -silent option.


-silent
  Disable percent progress messages.
  This will help if someone wants to run the program in the back
   ground without any pop-up or print messages, except the
   status message when finished extracting.


-win:llx,lly,urx,ury 
  Specify extract window in microns(MEBES units).
  llx,lly are the lower left  x co-ordinate and y co-ordinate respectively.
  urx,ury are the upper right x co-ordinate and  y co-ordinate respectively.


-levels:l1,l2,l3
  Specify levels in the job deck to be extracted.
  l1,l2,l3 are the level numbers.
  This is valid only for job deck data MEBES data.


-tiff
  Specify TIFF output format.
  This is the default format.


-gds
  Specify GDSII output format.


-bitmap
  Specify Windows bitmap  output format(Windows only).


-log:LOGFILENAME
  Specify log file LOGFILENAME to be created. 


-width:WIDTH
  Specify output width equal to WIDTH in pixels(dots). 
  Default width is 1000 pixels(dots).
  This is valid only for TIFF/BITMAP output format.


-height:HEIGHT
  Specify output height equal to HEIGHT in pixels(dots)
  Default width is 1000 pixels(dots).
  This is valid only for TIFF/BITMAP output format.


-union:POLYNUM
  By default, the mbs2gds program will not perform a union boolean
  operation on the MEBES trapezoids as this results in the fastest
  conversion. However the resulting GDSII file can be huge because
  MEBES stores each figure much more compactly than GDSII does.
  The -union:POLYNUM directs the program to read in the specified
  number of polygons and to attempt to unionize them into larger more
  complex polygons. This will greatly decrease the size of the resulting
  GDSII stream file. If the value of POLYNUM is very large the time
  it takes to perform the unionization can grow exponentially.
  Our experiments with a few files indicate a value of 500 for POLYNUM
  gives reasonably good compression without a large penalty in conversion
  speed.
  This is valid only for GDSII output format.
Window Clipping

Depending on the extract window, if some portion of the pattern array in job deck is entirely inside the extract window, then those patterns are extracted as AREF in GDSII world. The patterns, which are clipped with the extract window are obviously flattened using boolean operation. So, creating array references is by default and only works for job deck MEBES data. We do not create strutures for an array of polygons in a pattern, which we do in mbs2gds with -aref option.

mbsextract.dll (Windows) , libmbsext.so (Solaris)

Updated functions:
If the extract window is inside the home extents of the MEBES data 
and if there is no data in that extract window, library creates a empty
file. However, in the previous versions, we did not have a way to know
about this case.
Following 2 functions have been updated in this version to help in this case,
a) int acsMBS_GetROIImageBits (int OutputWidth, int outputHeight, unsigned
   char **Image, long *ImageSize) 
   This function returns with ImageSize assigned to 0, which indicates that
   the bitmap bits does not have any data.
b) * int acsMBS_GetROIImageToDisk (int outputWidth, int outputHeight, const
  char *filename, long *ImageSize) 
   This function returns with an warning code of 6, which indicates that empty file
   is created.


New functions added,


* int acsMBS_Init(char *ParentDir);
  This function should be called before using any other functions to initialize
  the library.
  Argument Values
  ParentDir : Parent Directory of the program using the library.


* int acsMBS_Close();
 This function should be called just before application exit's to clean up 
  the library, if not clean. 




Data Sheet Download Price


ARTWORK CONVERSION SOFTWARE, INC.       Company Profile
417 Ingalls St., Santa Cruz, CA 95060    Tel (831) 426-6163     Fax 426-2824    email: info@artwork.com