At 04:02 PM 11/21/01 +0300, ElectronTrade (info) wrote:
>Thank you very much for explanation. But I asked about other.

Well, I was laying a foundation, aware that there may be complications.

>I have gate on first list. One input connected to bus via wire with
>netlabel. This net (with netlabel) is going out bus on other side of 
>schematic and
>connected to port. Port has same name with netlabel. On second list
>this port connected with resistor.

Let's see if I have got this right. There are quite a few scenarios that 
might be described as Mr. Potapoff described it. So I will start with what 
I think is the simplest representation of what he wrote, I hope it is 
understandable.
w = wire, e = bus entry, b = bus "wire".

On one sheet:

(gate pin)www[NETLABEL/net1]wwweeebbbbb/(BUSLABEL/net[1..8])bbb

(PORT/net[1..8])

This will not work. A port does not automatically connect to a named net. 
there are good reasons for this as you will understand if you realize that 
ports exist precisely because we want to avoid dependence on net names on a 
sheet.

But perhaps this is not what Mr. Potapoff meant. In any case, this works 
for me:

On the lower sheet:

(gate pin)www[NETLABEL/net1]www

bbb(BUSLABEL/net[1..8]bbb(PORT.net[1..8]

To make it clear, this would *also* produce the same connectivity (with the 
same connectivity scope, Ports and Sheet Symbol Connections):

(gate pin)www[NETLABEL/data1]www

bbb(BUSLABEL/data[1..8]bbb(PORT.net[1..8]

Similar requirements exist for connections to sheet entries.

What is connected to the sheet entry or port translates net names from 
sheet level to inter-sheet level (i.e., the port name). In the second 
example that works, the name data1 is picked up by the bus label data[1..8] 
and then this is translated to port net[1..8] by the fact that the latter 
is directly connected to the bus label.

This is an exception to the rule that bus lines are graphical only.

However, there is no need for any additional bus lines. In fact no bus line 
is necessary if the bus label's hot spot is on the sheet entry or port's 
hot spot (just as is true with pins and net labels.)

Note that the net will be named in the net list according to the name it 
has internally on the highest level of the hierarchy where it is present, 
unless it has no name on that level, in which case it will be assigned a 
unique generic name (like Net00001 or I forget what Protel specifically 
does). It will *not* be assigned a name from a lower level and it will not 
be assigned the port name. If you want to control the naming of nets in a 
hierarchical schematic with port/sheet symbol connectivity, give the net 
its name on the highest level.

I urge readers to carefully read this, to experiment with a simple 
schematic as I did, and try to understand the matter thoroughly; I put a 
resistor on one blank schematic, connected wires and net labels net1 and 
net2 to it, then I created a sheet symbol for it on another schematic, 
which is now by definition higher level, and placed another resistor on 
that sheet with net labels net1 and net2. This will not accomplish 
connection, as you will quickly find if you run ERC from the higher level.

To get this to connect, I found that it was necessary to have a bus symbol 
directly connected to the port or sheet symbol. Once the bus symbol existed 
and was connected, it established connectivity for all its member nets.

If you wait to understand this until you are faced with a persistent ERC 
error that will not go away, and the schematic is complex, you will have a 
much harder time.

I have been confused about this many times, but by trial and error I found 
ways to make it work, I had learned that the direct bus connection to the 
port symbol was necessary. But not until now had I understood the true and 
necessary logic behind it. Port/Sheet Symbol connectivity *must* rename 
nets, and therefore the names alone don't establish connection. We might 
think that a Port named Data[1..2] would automatically connect to net 
labels Data1 and Data2 or to bus label Data[1..2], but it doesn't. It 
doesn't because we want to control the name translation by how we connect 
the Port.

I'm not sure I have ever seen this explanation before.

(One tiny bit of potential confusion: Buses are labeled with "Net Labels.")

In any case, I thank Mr. Potapoff, one of our esteemed Russian colleagues, 
for persistently asking the question. I hope that I answered it. If not, at 
least some heat and light were created.


[EMAIL PROTECTED]
Abdulrahman Lomax
Easthampton, Massachusetts USA

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* To post a message: mailto:[EMAIL PROTECTED]
*
* To leave this list visit:
* http://www.techservinc.com/protelusers/leave.html
*
* Contact the list manager:
* mailto:[EMAIL PROTECTED]
*
* Forum Guidelines Rules:
* http://www.techservinc.com/protelusers/forumrules.html
*
* Browse or Search previous postings:
* http://www.mail-archive.com/proteledaforum@techservinc.com
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Reply via email to