Need information about building an HCA IP

5 views
Skip to first unread message

Shekhar

unread,
Jun 27, 2008, 3:42:33 PM6/27/08
to InfiniBand
Hello All,
I am trying to develop a HCA IP for simple send/receive operations.
I have few questions:
1.How does HCA get configured?How does software interect with hardware?
Through Verbs.But how?Is there any configuration space where
configuration is written?
2.What is a Queue pair?Is it a software Queue or a hardware FIFO?
How are WQE's accessed by the HCA?
3.How is data buffer to be sent accessed?
4.How is data packetised?Is it done in software or in transport layer?
If in transport layer,how?
5.How is the virtual to physical address translation done?
6.What happens when a HCA is plugged to the fabric for the first time?
How does it configure itself?

more questions may come.
Currently I am referring to Infiniband Architecture Specification
Volume 1 and 2,Release 1.2.What are other online resources where I can
get the details of Infiniband architecture?
Does anyone have ebook:Infiniband Network Architecture by Mindshare?
I need information urgently.

Ali Ayoub

unread,
Jun 29, 2008, 10:28:29 AM6/29/08
to InfiniBand
Hi Sehkhar, see below:

On Jun 27, 10:42 pm, Shekhar <spdandav...@yahoo.com> wrote:
> Hello All,
> I am trying to develop a HCA  IP for simple send/receive operations.
> I have few questions:

What you mean by "HCA IP"?

> 1.How does HCA get configured?How does software interect with hardware?
> Through Verbs.But how?Is there any configuration space where
> configuration is written?

Once you bring up a Subnet Manager on your subnet, all HCAs LIDs are
configured and you should be able to create and send/receives via
InfiniBand QPs.

> 2.What is a Queue pair?Is it a software Queue or a hardware FIFO?
> How are WQE's accessed by the HCA?

HCA hardware is aware of IB QPs, this should be transparent for the
user.

> 3.How is data buffer to be sent accessed?
> 4.How is data packetised?Is it done in software or in transport layer?
> If in transport layer,how?

Transparent for the user.

> 5.How is the virtual to physical address translation done?
> 6.What happens when a HCA is plugged to the fabric for the first time?
> How does it configure itself?

The SM configures it.

> more questions may come.
> Currently I am referring to Infiniband Architecture Specification
> Volume 1 and 2,Release 1.2.What are other online resources where I can
> get the details of Infiniband architecture?

http://openfabrics.org
http://www.mellanox.com/pdf/whitepapers/IB_Intro_WP_190.pdf
Also, most of your questions are answered in IB Architecture spec.

I recommend you install latest OFED package, and read infiniabnd/
verbs.h
header file, use 'man <verb-name>' from Linux prompt for usage of each
InfiniBand verb.

You can also check few examples for QP usage in user space:

1. Go to http://openfabrics.org, Downloads, OFED, and download latest
tgz
2. Install libibverbs source RPM
3. Go to /usr/src/<OS-NAME>/SOURCES/
4. tar -xzf ./libibverbs-*.tar.gz
5. Read ./libibverbs-1.1.1/examples/*

> Does anyone have ebook:Infiniband Network Architecture by Mindshare?
> I need information urgently.

Sorry I don't have any ebooks on InfiniBand.

Shekhar, please tell us what you're trying to do, so it would be
easier to help you.

Ali Ayoub.

spdan...@gmail.com

unread,
Jun 30, 2008, 1:21:44 PM6/30/08
to InfiniBand
Hello Ali,
I am trying to develop the HCA protocol stack consisting of the
Transport,Link and Physical layer in the Hardware using HDL.
I want to do only the send/recieve operations.I need information on
Hardware side.My questions are,
1.Is there a configuration space/registers in HCA hardware where the
OS or the SM might be writing the initial configuration?If so where?
2.What is a work request?what are its contents?How does the HCA
hardware access it?
3.What is a QP?A s/w data structure or a H/W FIFO?
4.How are send queue/recieve queue or completion queue accessed by
hardware?
5.How is data buffer in memory(the data to be transferred) accessed by
the HCA hardware?

Regards,
Shekhar
> http://openfabrics.orghttp://www.mellanox.com/pdf/whitepapers/IB_Intro_WP_190.pdf
> Also, most of your questions are answered in IB Architecture spec.
>
> I recommend you install latest OFED package, and read infiniabnd/
> verbs.h
> header file, use 'man <verb-name>' from Linux prompt for usage of each
> InfiniBand verb.
>
> You can also check few examples for QP usage in user space:
>
> 1. Go tohttp://openfabrics.org, Downloads, OFED, and download latest
Reply all
Reply to author
Forward
0 new messages