Development of Verification IP of Physical Layer of PCIe
Development of Verification IP of Physical Layer of PCIe
I. INTRODUCTION
The PCI Express architects have taken advantage of latest
advancements in computer design while also carrying over the
most desirable aspects from previous generation bus
architectures. PCI Express, for example, uses the same load-
store mode of communication as PCI and PCI-X. Memory
read, memory write, IO read, IO write, configuration read and
configuration write are all supported by PCI Express. With PCI
and PCI-X, PCI Express is backwards compatible systems in
terms of software. With no changes to present drivers or
application programs, a PCI Express machine will boot an Fig. 1. PCI Express Device Layers
existing OS. PCI Express, like its predecessor buses, offers
chip-to-chip and board-to-board[12]. Transaction Layer Packet (TLP). Information required for
PCI Express is a serial point-to-point interconnect that checking errors at a receiver is added to the packet by Data
allows devices to communicate. Switches are used to connect Link Layer (DLLP). This packet is then scrambled and
several PCI Express devices. Because of point-to-point encoded in the Physical layer and transmitted differentially on
interconnect has a minimal electrical load, transmission and the Link by this Layer's analogue part. The packet is sent to the
reception frequencies can be scaled to much greater numbers. receiving device, which is its neighbour, utilising the available
Serial connectivity between devices results in fewer pins per Lanes of the Link. In the Physical Layer, the receiver device
device, lowering both the cost and the complexity of PCI decodes and descrambles the packet contents and transmits the
Express chip and board design. To connect multiple devices, resulting contents to the top layers[15].
PCI Express uses switch-based technology. A packet-based II. RELATED WORK
communication protocol is used to communicate across the
serial interconnect. This minimizes system cost by keeping the The transaction and data link layers of PCIe are applied
device pin count low[13]. with a novel methodology by Peter B ohm[1]. A sequence of
data modeling phases form the foundation of the technique for
As demonstrated in Figure 1, the PCI Express has a layered developing on-chip protocols, which updates the standard
architecture for device. Transaction Layer, Data Link Layer, modelling as well as validation workflow.
and Physical Layer are the three layers present. Consider a
device's transmit function. The Transaction Layer creates The transactions between the MAC and PHY layers of the
packet contents using information from the device. The packet PCIe Gen5.0 physical layer were verified by Dinesh Mathur
is transmitted to the lower layers. The packet is known as [2]. The RTL is written in the System Verilog, and UVM is
used for verification. The proposed procedure's efficacy is
2
Authorized licensed use limited to: BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE. Downloaded on January 04,2024 at 10:41:45 UTC from IEEE Xplore. Restrictions apply.
link. The receivers deserialize the data and feed it back to the 8) L2: L2 is the state with the least amount of power.
logical sub-block for additional processing on the receive side. Although main power and clocks aren't guaranteed, but we
2) Clock Extraction: In addition to the parallel-to-serial can use AUX power.
conversion mentioned above, the electrical sub-receive block's 9) Disabled: In disabled mode the transmitter has a high
buffer is responsible for retrieving the data's embedded link electrical impedance state and the receiver is turned on and in
clock. low - resistance mode. When it detects two or even more
3) Lane-to-Lane De-Skew: Before combining serial data successive TS1 OS or TS2 OS which has bit of Disable
into a parallel data packet, the receive buffer in the electrical Link set, this state can be retrieved, or when a device receives
sub-block de-skews data from the various lanes of the link. a command from higher layer.
This is required to account for the 20 nanoseconds of lane-to- 10) Loopback: It's designed for usage in testing and fault
lane skew allowed. isolation. Behaviour of entry and exit is only specified. It
4) Differential Signaling: The transmit and receive buffers might happen on a lane or link that has been configured.
on PCI Express are designed to convert logical data symbols 11) Hot Reset: When it detects two or even more successive
into differential signals. TS1 OS or TS2 OS which has Reset bit set, this state can be
5) PLL (Phase Locked Loop) Circuit: A clock obtained retrieved, or when a device receives a command from Data
from a PLL circuit could be used to give internal clocking to Link Layer.
the PCI Express device. A 100 megahertz differential pair
clock is assigned to each PCI Express device. This clock can
be fed into a PLL circuit, which multiplies it by 25 to get the
2.5 GHz frequency.
6) AC coupling: PCI Express eliminates the DC Common
Mode portion by using AC coupling on the transmit side of
the differential pair. As a result, the PCI Express buffer design
process becomes significantly easier.
7) De-Emphasis: To lessen the impacts of inter-symbol
interference, PCI Express employs a concept known as de-
emphasis.
IV. LINK TRAINING AND STATUS STATE MACHINE
Link training is a Physical Layer procedure which
configures and initialises Link in order for typical packet traffic
to pass over the Link. Without the need of any software. As
shown in Figure 3, the LTSSM is responsible for Link
Initialization and Training process.
1) Detect: When the device is powered on, the data link
layer directs an initial state in which the attached remote
device is detected. Fig. 3. LTSSM State Diagram
2) Polling: Bit and symbol locking also lane data rate and
lane polarity are specified in this state. The device sends out V. UVM TESTBENCH ARCHITECTURE
ordered sets and responds to those that are received. UVM has a number of advantages over past verification
3) Configuration: Transmitter and receiver both are mechanisms. It has class based library which is used for
working at the agreed-upon speed. Link-width, lane-reversal, verification, which is supported by all major simulators[9,10].
lane-ordering, and skew management in lanes are all done in This section describes the various UVM testbench
this state. components (shown in Figure 4) that are used in the testbench
4) Recovery: In recovery state, bit lock and symbol lock as to verify the DUT[11,14].
well as lane-to-lane de-skew are re-established.
1) Sequencer: The purpose of this component is really to
5) L0: This state is the typical operating state of the link
execute variety of sequences transmitted to design utilising
that is used to send and receive TLPs and DLLPs. From this
an interface.
stage, it can enter to all low power states.
2) Driver: It receives the randomised sequences from the
6) L0s: L0s is a power saving mode. It takes little amount
sequencer then it drives the signals which are from interface.
of time to exit L0s and return to L0. There is no need to enter
The DUT and the driver communicate at the pin level.
configuration and recovery state.
7) L1: L1 is state which has less power as compared to
L0s. Power saving is more in L1 than in L0s, in return they
have a longer latency period.
3
Authorized licensed use limited to: BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE. Downloaded on January 04,2024 at 10:41:45 UTC from IEEE Xplore. Restrictions apply.
Fig. 4. UVM Testbench Architecture
Fig. 6. 8b/10b encoding
Fig. 9. LTSSM
4
Authorized licensed use limited to: BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE. Downloaded on January 04,2024 at 10:41:45 UTC from IEEE Xplore. Restrictions apply.
REFERENCES
[1] P. Bohm, "Incremental and Verified Modeling of the PCI Express
Protocol," in IEEE Transactions on Computer-Aided Design of
Integrated Circuits and Systems, vol. 29, no. 10, pp. 1495-1508,
Oct. 2010, doi: 10.1109/TCAD.2010.2054990
[2] G. Rohilla, D. Mathur and U. Ghanekar, "Functional Verification of
MAC-PHY Layer of PCI Express Gen5.0 with PIPE Interface using
UVM," 2020 International Conference for Emerging Technology
(INCET), 2020, pp. 1-5, doi: 10.1109/INCET49848.2020.9154176.
[3] Li Jun and Wang Wei, "PCI express interface design and verification
based on Spartan-6 FPGA," 2010 IEEE 12th International Conference
on Communication Technology, 2010, pp. 305-307, doi:
10.1109/ICCT.2010.5689231.
[4] Y. Liu, D. Xu, H. Cai and C. Yang, "System architecture design of PCIe
root complex based on SOPC," 2017 36th Chinese Control Conference
Fig. 10. Console Window 1 (CCC), 2017, pp. 5490-5495, doi: 10.23919/ChiCC.2017.8028228.
[5] Richard A Prasad “DESIGN AND VERIFICATION OF PHY
INTERFACE FOR PCIe GEN 3.0 AND USB GEN 3.1 USING UVM
METHODOLOGY”, International Research Journal of Engineering and
Technology (IRJET) Oct -2017.
[6] Chandana K N “Link Initialization and Training in MAC Layer of PCIe
3.0”, (IJCSIT) International Journal of Computer Science and
Information Technologies, Vol. 6 (3), 2015, 2717-2719.
[7] Ravikumar Javali, Jim Terence Colaco “Efficient Implementation of
High-Speed PCI Express MAC Transmitter with PIPE Interface “, IEEE
SPONSORED 3rd INTERNATIONAL CONFERENCE ON
ELECTRONICS AND COMMUNICATION SYSTEMS (ICECS 2016).
[8] Sagar Kumar K S, “Sampling and Reconstruction of Ordered Sets in
PCIe 3.0”, International Journal of Innovative Research in Science,
Engineering and Technology (An ISO 3297: 2007 Certified
Organization) Vol. 4, Issue 6, June 2015.
[9] Omkar Pataskar, Kshitij Gurjar, Dr. Mrs. V.V. Inagle and Ms. Gokhale,
Fig. 11. Console Window 2 “AMBA AXI4 Interconnect Universal Verification Component”,
Turkish Online Journal of Qualitative Inquiry (TOJQI) Volume 12,
VII. CONCLUSION Issue 9, August 2021.
[10] Paresh Dukare, Dr. Mrs. Ingale and Ms. Gokhale, “Development of
We have implemented the Verification IP of the Physical AMBA ACE Protocol”, 7th International Conference on Computing in
Layer of the PCI Express Protocol in this work. The Physical Engineering and Technology, February 2022.
Layer is in charge of sending and receiving all of the data that [11] Accellera Organization, “Universal Verification Methodology (UVM)
will be transferred through the PCI Express link. The Data 1.2 User Guide”.
Link Layer and the physical PCI Express link communicate [12] PCI Express Base Specification 3.0, PCI-SIG, November 10, 2010.
with the Physical Layer. Both the logical and electrical [13] Mike Jackson and Ravi Budruk, PCI Express Technology, e-book, ver.
sublayers have been implemented. Link training and the Status 1.02, Mindshare Inc.
state machine have also been deployed. Testbench is written in [14] SystemVerilog 3.1a Language Reference Manual, Accellara -
System Verilog UVM to implement the verification IP. Extensions to Verilog-2001, 2004.
Writing numerous testcases and sequences is used to perform [15] PCI Express Base Specification, http//: www.pcisig.com.
PCIe data transmission and reception. The simulation was
successfully obtained using Cadence Xcelium tool.
5
Authorized licensed use limited to: BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE. Downloaded on January 04,2024 at 10:41:45 UTC from IEEE Xplore. Restrictions apply.