( Post 104 Item 1 ) ---------------------------------------------------
From: hotline@synopsys.com (An Applications Engineer At Synopsys)
Subject: Backspace/Delete Keys Problem with 3.0a on SUN Workstations
John,
Several customers have reported problems with the backspace/delete key on Sun
platforms using v3.0a of Design Analyzer. Could you please post the following
information on ESNUG as quickly as possible? Please do not include my name on
the posting.
Best regards,
[ An Applications Engineer At Synopsys ]
Are your Sun customers seeing Backspace and Delete key problems? Here is an
explanation of why they might be experiencing keyboard binding problems and
the solution to the problems.
The file which has the keyboard bindings is called XKeysymDB. However, it is
not enough that the XKeysymDB file exists on the machine which is running our
application software. The *pathname* to this file must be exactly as it is
listed below because it is hardcoded into the motif libraries, and therefore
into our executable (into dc_view_exec itself). [Note: for sites which have a
file server running the software, the XKeysymDB file must be accessible from
the machine which is running the Synopsys software.]
A directory with a copy of the file or a link to that file with the following
name *must* be created in order for the backspace key to work:
/usr/lib/X11/XKeysymDB
An easy way to check that this path exists is to do a "more" on the above
filename.
The reason why we are seeing this problem in Suns is because Openwindows has
its own version of the XKeysymDB file which is located in $OPENWINHOME/lib.
However, the format of the Sun version of XKeysymDB file does not correspond
exactly to the the format of the MIT X11 XKeysymDB file.
example: Sun XKeysymDB has:
osfXK_BackSpace: 1004FF08
MIT X11 XKeysymDB has:
osfBackSpace :1004FF08
Alright, so why are we having this problem? Because our software (actually,
the motif libraries) is looking for /usr/lib/X11/XKeysymDB. Suns which only
have OpenWindows installed don't even have this directory: /usr/lib/X11.
Another scenario may be that the customer site is using the
$OPENWINHOME/lib/XKeysymDB.
A possible solution that DOESN'T work: copying (or linking) the XKeysymDB file
that is provided with OpenWindows, again,because of the difference explained
above. Instead, we have to have a copy of the MIT XKeysymDB file accessible
by the path /usr/lib/X11/XKeysymDB.
A copy of the MIT XKeysymDB file can be found in $SYNOPSYS/admin/setup.
In the System Installation and Configuration guide, page 2-3, Instructions on
installing X11 on SPARC platforms. If the instructions given there are
followed, the backspace /delete (and possibly other X11 / OpenWindows) problems
will not occur or should disappear.
( Post 104 Item 2 ) ---------------------------------------------------
From: J_BROWN@gpo.nsc.com (Jay Brown - Advanced Comm - x8198)
Subject: Net Connection Corrector Macro For Synopsys-Mentor Users
Synopsys-Mentor Users,
When creating schematic-generating macros for a Mentor design
environment (Neted), Synopsys 2.2 creates error conditions when using
a net connector element ($netcon in gen_lib). If two or more
primary IO on the schematic are shorted together, Synopsys will
add $netcon devices to allow two nets, with different net names,
to be connected. A problem often occurs where Synopsys will put
two $netcon devices between the two nets, creating an unnamed net
between the two. When performing a "Check Sheet", this unnamed
net causes an error condition, thus preventing the creation of an
error-free, Expandable schematic. The solution to this is to
make the manual edits to the schematic and then re-do the Check
Sheet.
Since Synopsys, Inc. has not yet fixed this problem, I have written a
Mentor Human Interface macro to make the corrections and have
attached it below for all to use. I have used it under Mentor
releases 6.x and 7.x. It has been working well for our design
flow but I don't promise high levels of robustness. You may want
to look through the code for holes. I would appreciate any
feedback.
Jay Brown
National Semiconductor
South Portland, Maine
---------- cut here ----------
transcript off
# get all the net connectors
sel prop class c
assign errflag 0 # flag used to see if an error occurred
if ^($select_count > 0) then
assign netcon_array ^$sort_handles($true,$select_handles)
loop i 1 ^$size(netcon_array)
# select the connected nets
unselect all
sel h ^netcon_array[i]
sel pin
sel net
unselect except prop net
if ^($select_count < 2) then
assign errflag 1 # error detected
write line ''
write line ^('ERROR DETECTED: Netcon '&netcon_array[i]&' is connected to '&$select_count&' NET property')
write line '......Executing Netcon Corrector'
# get instance again and determine pin vertices
unselect all
sel h ^netcon_array[i]
assign x1 ^$pin_att($pin_handles(netcon_array[i],'edit')[1],'edit','location')[1]
assign x2 ^$pin_att($pin_handles(netcon_array[i],'edit')[2],'edit','location')[1]
assign y1 ^$pin_att($pin_handles(netcon_array[i],'edit')[1],'edit','location')[2]
assign y2 ^$pin_att($pin_handles(netcon_array[i],'edit')[2],'edit','location')[2]
# Delete net connector and replace with a netroute
delete
netr -s ^x1,^y1,edit
netr ^x2,^y2,edit
end if # correction complete
end loop
end if
if ^(errflag = 1) then
check sheet
bye
else
write line ''
write line 'No netcon errors found...No modifications made'
write line ''
quit
end if
|
|