Adding Case Sensitivity to Calibre

One annoyance that has been plaguing me for quite some time is the case insensitivity that is default to Calibre (PEX, LVS, etc.).  The claim is that case sensitivity is a bad design practice (true), but that doesn’t mean that all case should be thrown out the window.  My convention is to generally use camel case formatting for terminals and signals in circuit designs, for example “mainClockInput”.  When running PEX on a layout with this pin name, Calibre will by default replace it with “MAINCLOCKINPUT”.  This has a lot of undesirable side effects.

To fix it required a bit of searching, but the solution is quite simple.  In the PEX options tab (which can be activated by selecting Setup->PEX Options), first check the box labeled “Include SVRF Commands.”  Then add the following two lines into the command box:

  • SOURCE CASE YES
  • LAYOUT CASE YES

This tells the tool to be sensitive to case in both the layout and netlist.  Be warned, that now “a” and “A” will be two different nets.

Here is a screen shot for reference: