当前位置:网站首页>4. PCIe interface timing
4. PCIe interface timing
2022-08-05 00:45:00 【jjinl】
In the previous article, I briefly introduced the IPcore interface.In general, the interface is as shown below
Data is received and sent through transmit TLP interface and Receive TLP interface.The timing of sending and receiving data only describes the relationship between these interfaces.Take the interface timing of PCIe x1 from the manual
Data sending
The picture above is the x4 interface. The 5G IP we use, the timing is similar to this, but the tx_val will be valid at intervals.The above timing
Before EP sends data, first send tx_req_vc0 high, indicating request to send, wait for tx_rdy_vc0 to be high to start sending, when tx_rdy_vc0 is high, place data on yx_data_vc0 on the rising edge of the next clock, and pull high tx_st_vc0 signal. tx_rdy_vc0 remains high until the last data of the TLP packet, so this tx_rdy_vc0 signal can be used as a read enable signal for non-pipeline fifo.
tx_end_vc0, indicating that the data line is the last data of TLP.
tx_ca_*h_vc0 and tx_ca_*d_vc0 must be checked before each request is sent, and the corresponding value will be decremented by one after the transmission is completed. These two types of flags indicate whether the upper port has resources to forward your sent data
The above picture is the timing of sending two data
The sending timing of the above picture is only the header, there is no data corresponding to tx_ca_*d_vc0 and there is no change
The last data sent in the above picture is not enough 64bit, at this time the dwen signal indicates that 63:32bit is valid
Burst mode, send two TLP packets, the req signal remains valid until the last TLP packet sends the rdy signal
Void the TLP packet, pull the tx_nlfy signal high at any time, void this TLP packet, no need to send the tx_end signal again
When the x4 in the above figure is downgraded to x1, the sequence diagram is the same as above. The x1 used in our project is the same as above.In this figure, when tx_val is high, the signal changes
Data reception
When a TLP data packet is sent, rx_st_vc0 will be pulled high, at this time the first data will appear on the data line, one data per clock, when rx_end_vc0 is high, it means that the data line islast data.If there is an ECRC error, rx_ecrc_err_vc0 will be pulled high at the last data moment; if there is a problem with the length of the TLP, rx_malf_tlp_vc0 will be pulled high
tlp receive data
Receive ECRC error
There is a problem with the TLP length
边栏推荐
- Software testing interview questions: test life cycle, the test process is divided into several stages, and the meaning of each stage and the method used?
- Getting Started with Kubernetes Networking
- SV 类的虚方法 多态
- Software testing interview questions: What are the seven-layer network protocols?
- 软件测试面试题:手工测试与自动测试有哪些区别?
- JWT简单介绍
- C# const readonly static 关键字区别
- Software Testing Interview Questions: What's the Key to a Good Test Plan?
- 2022 Hangzhou Electric Multi-School 1004 Ball
- ora-01105 ora-03175
猜你喜欢
If capturable=False, state_steps should not be CUDA tensors
ora-01105 ora-03175
TinyMCE disable escape
DHCP的工作过程
JWT简单介绍
could not build server_names_hash, you should increase server_names_hash_bucket_size: 32
### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionExcep
[230] Execute command error after connecting to Redis MISCONF Redis is configured to save RDB snapshots
4. PCIe 接口时序
进程间通信和线程间通信
随机推荐
JVM类加载简介
OPENWIFI实践1:下载并编译SDRPi的HDL源码
3. pcie.v 文件
tiup update
The principle of NMS and its code realization
CNI (Container Network Plugin)
Difference between MBps and Mbps
Bit rate vs. resolution, which one is more important?
GCC:屏蔽动态库之间的依赖
MongoDB搭建及基础操作
Matlab uses plotting method for data simulation and simulation
2022杭电多校训练第三场 1009 Package Delivery
Software Testing Interview Questions: What aspects should be considered when designing test cases, i.e. what aspects should different test cases test against?
torch.autograd.grad求二阶导数
软件测试面试题:您以往所从事的软件测试工作中,是否使用了一些工具来进行软件缺陷(Bug)的管理?如果有,请结合该工具描述软件缺陷(Bug)跟踪管理的流程?
oracle create tablespace
TinyMCE disable escape
ora-00604 ora-02429
码率vs.分辨率,哪一个更重要?
Software testing interview questions: What is the difference between load testing, capacity testing, and strength testing?