← Back to team overview

kicad-developers team mailing list archive

Re: [update] [PATCH] Differential pair DRC Errors

 

Le 01/03/2017 à 16:43, Tomasz Wlostowski a écrit :
> On 13.02.2017 18:04, Tomasz Wlostowski wrote:
>> On 13.02.2017 17:26, Jon Evans wrote:
>>> I verified using Novak's test case on the Launchpad bug report.  DRC
>>> error is generated if the distance between the tracks is exactly equal
>>> to the clearance. 
>>> If you increase the spacing by the minimum distance recognized by the
>>> software's precision, the DRC passes.
>>> So, I think it's an issue of DRC specification -- The code currently
>>> requires that the clearance be *larger* than the minimum in the design
>>> rules.
>>> The diff pair router is setting the spacing to the minimum (exactly)
>>> which causes this bug.
>>>
>>> IMHO, the DRC code should be changed to "larger or equal to", but I am
>>> not sure if there is some subtle reason why it is implemented this way.
>>> If you tell KiCad that you can go down to 2mm clearance, you should be
>>> able to design something with *exactly* 2mm clearance :-)
>>
>> Hi guys,
>>
>> The issue is a bit more complex: it's a mix of DRC's floating point
>> inaccuracies as well as ill-defined (rounding-error-wise) fixed point
>> calculations in the 'gateway' computation part of the diff pair code.
>> I'll fix it when my time permits (certainly before v5.0).
>>
> 
> Hi again,
> 
> I've fixed the rounding issues in the P&S code (patch attached), now the
> diff pair gap should always equal the specified value. The DRC checker
> still produces some errors, though. I've identified their source is the
> DRC::checkMarginToCircle() function. The current clearance test
> algorithm is quite complex for me to understand, so I couldn't see any
> obvious rounding/comparison issues...
> 
> @Jean-Pierre: could you have a look at the attached PCB file and the DRC
> errors it produces? A trivial clearance check (see code below) finds no
> clearance errors.
> 
> Cheers,
> Tom
> 

OK, I'll have a look at it.


-- 
Jean-Pierre CHARRAS


References