Does anyone have any scripts that perform custom DRC checks on a DxDesigner schematic that they would be willing to share?
I don't know of any scripts, but you might save a file called "VerifyDefaults.ini" in a global path mentioned in the WDIR variable to set some DRC default settings for everybody using the DRC in DxD.
Hope that helps.
try this and paste it to a vbs file, starting with double click:
' Find dashboard
set Dash = GetObject(,"Viewlogic.Document")
active_prj = Dash.PrimaryDirectory
Set fso = CreateObject("Scripting.FileSystemObject")
' output window clear
Set myShell = CreateObject("WScript.shell")
Set WshSysEnv = myShell.Environment("PROCESS")
temp_dir = WshSysEnv("TEMP")
' Add a verify settings file here from the project path
DrcIniFile = "Q:\addons\7.9.3EE\MGC_CONFIG\customized\DxD_Verify_drc121_flat.ini"
' startting Check
Dash.OutputView.DisplayMessage "Starting DRC " & active_prj & " ... ", "Dashboard"
DRC_Exe = "C:\Mentor\7.9.3EE\SDD_HOME\wv\win32\bin\vdrc.exe"
' link here to your directory
DefinitionsFile = "Q:\addons\7.9.3EE\MGC_CONFIG\standard.orig\VerifyDefaults.ini"
myshell.run "cmd.exe /c " & mgc_prefix & DRC_Exe & " -proj " & active_prj & " -set " & DrcIniFile & " -def " & DefinitionsFile & " -hier -block flat" , 0, true
set myShell = Nothing
Dash.OutputView.DisplayMessage "DRC 121 finished." & vbCrLf & vbCrLf, "Dashboard"
Thank you both Henning and Andreas. However, I'm not looking for a way to use the existing Verify function within DxD, but rather to create my own DRC rules that Verify cannot yet do. I've made suggestions to Mentor for DxD Verify improvements via the ideas website, but it can take years for Mentor to implement those ideas, if they even get accepted. By using a custom script, I may be able to implement my own rules (or replicate the existing rules with the improvements I'm looking for), without having to wait. However, it's a lot of work to write DxD scripts, and I just don't have that kind of time. Also, the automation documentation isn't very good, making it all the more difficult to create such scripts. If the documentation had more examples, it might be doable, which is why my original post was asking for such examples.
Did you get anywhere with writing your own custom DRC checks? Also, do you have links to the Ideas that you have submitted so I can see if that is something that I would be interested in and vote on them
I have not done any work on creating custom DRC checks or scripts. I also have not received any additional information or example scripts that do custom DRC checks. Unfortunately, I don't really have the time to pursue anything like this (I'd probably hire an intern to do the work, if I had a starting point to give them). For now, what we've done is go through the entire set of DRC checks and decide which ones to enable and disable, how to set them each up for the best success, and how to deal with common failures. Still, the tool can report hundreds of errors/warnings that can safely be ignored, particularly on schematics with FPGAs and processors with lots of GPIO.
Here's a list of the Mentor Ideas that I've authored that have direct or indirect effects on DRC/Verify:
Add configuration for IODesigner to add no-connect and intrasheet symbols - D12517
Flag individual Verify/DRC warnings/errors for ignore - D7357
Enhance Verify to account for IODesigner Schematic Update Flow - D12518
Enhance DRC-106 and DRC-117 to ignore differential pairs
Enhancements to support DRC-117 for GPIO pins
Create an editor for verify_defaults.ini
Enhance DRC-108 to optionally ignore dangling nets - D8525
Enhance DRC-105 to ignore input pins connected only to analog pins - D8524
Enhance DRC-117 and -118 to recognize resistor arrays and networks - D8548
Looks like I had already voted for most of them, but I found a couple of ones that I have missed. I am going through the process right now of coming up with a standard VerifyDefaults.ini, which it sounds like you have already done.
Here are two that I have created:
Create a new property that is equivalent to the property "Power Supply Net", but for ground nets
Add Option to ignore Bidirectional pins from DRC-116
Hi jzelno and jeff@viavi
we are in the process of verify configuration, too. Are you willing to share your VerifyDefaults.ini with me. As the documentation has not so many examples, I think it would be good to see a real implementation.
I would be willing to share mine with you, but I'm really not happy with it. Too many false positives
I created an idea that relates to this question, it is located atAllow the use of Automation to create custom Verify rules
Retrieving data ...