[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: Dealing with really high-pin-count parts



DJ Delorie wrote:
Any suggestions as to how to break them down into smaller symbols
and have them combine at the netlisting stage? I'm sure it's been
done before, I just can't find any docs...

I just did this for the m32c chip. One symbol for the CPU half (3.3v), the other for the GPIO half (5v).

Just number the pins in a non-overlapping way, and make sure both
symbols in your schematics have the same refdes, and it all just
works.

I have a perl script that takes a number of symbols, and makes sure
you've listed each pin exactly once.  Attached.

#!/usr/bin/perl
# -*- perl -*-

$min =  99999;
$max = -99999;

while (<>) {
    s/[\r\n]+$//;
    if (/^pinnumber=(.*)/) {
	$pin{$1} ++;
	$min = $1 if $min > $1;
	$max = $1 if $max < $1;
    }
}

for ($i=$min; $i<=$max; $i++)
{
    if ($pin{$i} != 1) {
	if ($pin{$i} > 0) {
	    print "Too many: $i\n";
	} else {
	    print "Missing: $i\n";
	}
	$bad = 1;
    }
}

if ($bad) {
    print "Pins $min .. $max present\n";
} else {
    print "Pins $min .. $max all present\n";
}

DJ,

Perhaps, this tip and the perl script belong in the FAQ for gschem at the wiki.


Best

Marvin