[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: PCI 64-bit master
Hi,
A little supplement to this wonderful answer.
If your system has total memory of 2GBytes or below, you may never have a
chance to use 64-bit address, no matter what you set for your BAR.
The reason is system software will be smart enough to figure out if a 64-bit
address is needed for a particular memory configuration. If total memory
size is below 2GBytes, half system memory space and half application memory
space will never be beyond 32-bit address. To save a clock time used for
64-bit space, system software will only use 32-bit address.
In our practice, even with a 64-bit BAR, we are prepared to generate 32-bit
PCI cycle if higher 32-bit address is all 0.
Weng Tianxiang
wtx@umem.com
wengtianxiang@yahoo.com
Micro Memory Inc.
9540 Vassar Avenue
Chartsworth, CA 91311
Tel: 818-998-0070
Fax: 818-998-4459
----- Original Message -----
From: Richard Walter <rwalter@brocade.com>
To: 'Tejendra Joshi' <tejendraarunjoshi@yahoo.com>; <pci-sig@znyx.com>
Sent: Wednesday, May 09, 2001 9:50 AM
Subject: RE: PCI 64-bit master
> Tehendra,
>
> There is a difference between 64-bit data path and 64-bit addressing.
>
> When people say their PCI device is a "64-bit PCI device" this usually
means
> that it has a 64-bit data path. ie: There are pins AD[63:0] on the
device.
>
> A 64-bit addressable part contains a 64-bit BAR to allow it to be
configured
> as a target in 64-bit address space.
>
> These two items (64-bit data & 64-bit BAR) are independent of each other
and
> it is possible to have a device that fits in any of the 4 categories of
> having one or the other, neither, or both.
>
> It appears that your device probably has a 64-bit data path, but only
32-bit
> BARs. What this means is that when you talk to your device you must use
> 32-bit addresses. And when your device issues bus master cycles, it will
> attempt to transfer data 64-bits at a time. If your host bridge is also
> 64-bit wide, then this should work and you will see higher throughput than
a
> 32-bit datapath device would show.
>
> Finally, there is a also a difference between supporting 64-bit addressing
> as a target and supporting 64-bit addressing as a master. To support
64-bit
> addressing as a target, a device requires a 64-bit BAR in config space.
To
> support 64-bit addressing as a master, a device only needs to be able to
> generate Dual Address Cycles on the bus. Again, these are independent of
> each other. It might be that your device is only a 32-bit addressed
target,
> but can address a full 64-bit address space.
>
> To answer your specific question, there is nothing that you can do to
force
> the device's BAR to 64-bit address space if it is a 32-bit addressed
device.
> Look at the datasheet for the device at the config space registers. If
the
> BAR is listed as a 64-bit BAR, then it appears that your specific device
is
> malfunctioning. If the BAR is listed as a 32-bit BAR, then it appears
that
> your device is a 32-bit addressed target with 64-bit data path and may or
> may not support 64-bit addressing as a master (you'll need to check the
> documentation for that as well).
>
> -Richard Walter
> Senior Hardware Engineer
> Brocade Communications Systems
> rwalter@brocade.com
> Note: I speak for myself, not for Brocade Communications.
>
>
> -----Original Message-----
> From: Tejendra Joshi [mailto:tejendraarunjoshi@yahoo.com]
> Sent: Wednesday, May 09, 2001 3:06 AM
> To: pci-sig@znyx.com
> Subject: PCI 64-bit master
>
>
> Hi,
>
> I am writing driver for ethernet card. Its 64-bit PCI
> master.
> My PC(mother board) is also 64-bit. I want to map my
> card in 64-bit
> address space but It does not get mapped in 64-bit
> address space.
> It always gives 00 for bit 2 & 3 in memory base
> register indicating
> mapping in 32-bit address space.
>
> How can I map my device in 64-bit address space ?
>
> Thanks
>
> Regards,
> Tejendra
>
> __________________________________________________
> Do You Yahoo!?
> Yahoo! Auctions - buy the things you want at great prices
> http://auctions.yahoo.com/
>
>
>