Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add "What is included" section to README #24

Merged
merged 7 commits into from
Jan 17, 2025
Merged
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,45 @@

Intel® P4 Studio Software Development Environment (SDE) is a set of packages for programming Intel’s line of programmable Ethernet Switches. The package also contains scripts for building and installing SDE. The fully automated script (`install.sh`) introduced in this release internally invokes the existing command line interface tool (`p4studio`) to ease the build and installation process. The following sections describe how to build, install, and run the Intel P4 Studio SDE.

# What is included

The following things are included in this repository:

+ Driver software
+ The Barefoot Runtime Interface (BRI), which consists of:
+ The locally callable BfRt API, with bindings in C and C++.
+ The gRPC-based protocol, called BF Runtime, together with the
server implementation in C++ and both C++ and Python client
bindings (others can be generated using the provided proto files).
+ The additional bfrt_grpc.client Python module provides
easier-to-use, simplified interface to BF Runtime (used for most
PTF tests).
+ An x86_64 binary of the simulation model
+ Note: Source code for the simulation model is in the process of
being released to open source, but that is not yet complete.
+ Example P4_16 programs and PTF tests
+ Git submodule referring to the latest version of the P4 compiler
in the repository https://github.com/p4lang/p4c tested with this code.
+ bfrt_python code is included, but the build process needs some fixes
before this is available for use.

This supports developing and compiling P4 programs for Tofino 1 and 2,
developing control plane software that runs with the simulation model
(but not a real hardware board with Tofino switch ASICs - see below),
and simulating its execution on the model.

Some things not included, that one must get from Intel:

+ P4Insight GUI for visualizing the hardware resources used by P4 programs
after they have been successfully compiled.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove the word "successfully" -- P4i is often quite useful precisely when the programs are not successfully compiled.

+ Note: P4.org personnel are in communication with Intel to see if this
can be released as open source soon.
+ BSPs (Board Support Packages) that enable the SDE to access and
configure hardware on a physical board, e.g. configuring physical
Ethernet ports.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

... and manage related components, such as repeaters, retimers, SFPs, QSFPs, etc.

+ Drivers for Serdes on the ASICs. These are not necessary for running
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ASIC-specific SerDes drivers. These are not necessary to run the simulation model, but essential for running the code on the real ASICs

the simulation model.

# Setup

```bash
Expand Down