[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
FW: Re[2]: PCI I/O Space Consumption Limitation
- To: Mailing List Recipients <pci-sig-request@znyx.com>
- Subject: FW: Re[2]: PCI I/O Space Consumption Limitation
- From: "Taylor, Mike" <mike@buntypost.dundee.ncr.com>
- Date: Thu Aug 22 09:12 GMT 1996
- Encoding: 136 TEXT
- Resent-Date: Thu Aug 22 09:12 GMT 1996
- Resent-From: pci-sig-request@znyx.com
- Resent-Message-Id: <"qFIO53.0.a_6.GT17o"@dart>
- Resent-Sender: pci-sig-request@znyx.com
I thought PCI/ISA bridges used subtractive decode and therefore were only
active in address spaces not acknowledged by any PCI bus. Aliasing by an
ISA card would therefore be prevented in any PCI used I/O space. The 256
bytes per I/O BAR restriction is therefore not due to ISA limitations.
However, page 197 states that devices which consume more space than they
use, need not respond to the unused portion. Does this mean that an ISA
bus can respond to such an unused portion of a PCI card's space?
Mike.
----------
From: pci-sig-request[SMTP:pci-sig-request@znyx.com]
Sent: 21 August 1996 21:04
To: Mailing List Recipients
Cc: pci-sig
Subject: Re[2]: PCI I/O Space Consumption Limitation
The restriction for the 256 byte I/O space comes from the fact that
some ISA devices do not decode addresses above SA9 on the bus. These
devices use addresses x100-x3ffH and there aliases like 1100-13ff,
2100-23ff,etc. So, PCI devices are not assigned any address between
x100-x3ff. In every 1K of I/O space available only the first 256 bytes
are allocatable to PCI while the 768 bytes remain reserved for ISA
devices. If PCI devices are allocated between x100-x3ff there is a
possibility that some ISA devices using aliased address may not seen
by their S/W. I have seen some of the old PCI VGA cards using aliases
of their VGA addresses which the BIOS has no way of finding out. The
only way to avoid this problem is to assign only the first 256 bytes
of every 1K of I/O space.
______________________________ Reply Separator
_________________________________
Subject: RE: PCI I/O Space Consumption Limitation
Author: Belvin Stephen E <belvin_stephen_e@smtp2.space.honeywell.com> at
Internet
Date: 8/21/96 7:32 PM
Tripathi:
Thanks for responding to yet another of my questions. As far as the
discussion on page 197 goes, you're right that it is trying to suggest
that
designers memory map I/O. My concern is that it doesn't suggest that an
I/O
BAR be used to represent no more than 256 bytes, it *requires* it.
In my system, I have a non-prefetch memory BAR that, when properly
configured, allows the expansion bus registers to be accessed via PCI
memory
operations. I have also assigned a large, dedicated I/O space to allow
access
to the expansion bus bridge I/O section if enabled (256 KB total, or 4K
per
node).
I would like to express my disappointment that the I/O space
restriction is
not a SHOULD (or even a PLEASE).
Steve
- - - - - - - - - - - - -
On Aug 21, 1996, Devendra K Tripathi wrote:
> It may be pointed here that you have to have a Memory BAR for
> every I/O BAR. The point is that PCI does not encourage to use
> I/O space at all. Obiously you have some reason to use such big
> I/O spaces instead of mapping them to memory, but it may be
> worth reveiwing those constraints.
>
> Thanks,
> Tripathi.
On Aug 21, 1996, Steve Belvin wrote:
>> Hi.
>> I am developing a PCI expansion bus bridge and am concerned
>> about what appears to be an I/O space consumption limitation.
>> Page 197 of the PCI Rev 2.1 spec states "Devices that map
>> control functions into I/O space may not consume more than
>> 256 bytes per I/O Base Address Register." In response to
>> this and repeated recommendations to minimize I/O space, I
>> find that many devices are encouraged to minimize I/O space.
>> In one book I read that "... subsystem designers should
>> design a function so as to require no more than 32 bytes of
>> user-definable configuration data."
>> I am well aware of the shrinking Intel I/O space problem
>> but not all systems have I/O space limitations. My system
>> will use a MIPS processor and we plan to implement a large
>> I/O space (from 10KB to 1MB). Where practical, we follow
>> IEEE Std 1212 register definitions as a guide, where I/O
>> space is sacrificed for well organized control and status
>> registers. Fire Wire also follows this in its register
>> organization.
>> I would think PowerPC host bridges would not find 10-20KB
>> of I/O space to be a problem.
>> My question is:
>>
>> o Do designers follow the statement on page 197 and
>> implement multiple I/O BARs where more than 256 bytes of
>> I/O space are consumed?
>>
>> TIA.
>> Steve Belvin
------ Message Header Follows ------
Received: from netcomsv.netcom.com by american.megatrends.com
(PostalUnion/SMTP(tm) v2.1.8d for Windows NT(tm))
id AA-1996Aug21.193220.1665.22241; Wed, 21 Aug 1996 19:32:22 -0400
Received: from znyx.com by netcomsv.netcom.com with SMTP
(8.6.12/SMI-4.1)
id QAA20415; Wed, 21 Aug 1996 16:07:31 -0700
Resent-From: pci-sig-request@znyx.com
Received: by znyx.com (5.65/1.35)
id AA25176; Wed, 21 Aug 96 16:07:49 -0700
Resent-Date: 21 Aug 1996 19:09:30 -0400
Message-Id: <9608212305.AA25108@znyx.com>
Date: 21 Aug 1996 19:09:30 -0400
From: "Belvin Stephen E" <belvin_stephen_e@smtp2.space.honeywell.com>
Subject: RE: PCI I/O Space Consumption Limitation
Cc: "PCI Reflector" <pci-sig@znyx.com>
Resent-Message-Id: <"VtLcE3.0.U86.CPv6o"@dart>
X-Mailing-List: <pci-sig@znyx.com> archive/latest/3519
X-Loop: pci-sig@znyx.com
Precedence: list
Resent-Sender: pci-sig-request@znyx.com
To: Mailing List Recipients <pci-sig-request@znyx.com>
h \ I