CN105630641A - 一种pcie回环自检测的方法 - Google Patents
一种pcie回环自检测的方法 Download PDFInfo
- Publication number
- CN105630641A CN105630641A CN201410583281.8A CN201410583281A CN105630641A CN 105630641 A CN105630641 A CN 105630641A CN 201410583281 A CN201410583281 A CN 201410583281A CN 105630641 A CN105630641 A CN 105630641A
- Authority
- CN
- China
- Prior art keywords
- module
- bag
- sent
- signal
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 9
- 238000005516 engineering process Methods 0.000 claims abstract description 4
- 238000012544 monitoring process Methods 0.000 claims description 10
- 238000000034 method Methods 0.000 claims description 8
- 238000004804 winding Methods 0.000 claims description 7
- 238000012360 testing method Methods 0.000 claims description 5
- 230000002159 abnormal effect Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 claims description 2
- 125000004122 cyclic group Chemical group 0.000 claims 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Landscapes
- Information Transfer Systems (AREA)
Abstract
本发明涉及一种基于UVM平台的PCIE回环自检测技术,其特征在于:将总线接口桥的主模块和从模块通过信号匹配模块连接起来,信号匹配模块通过更改主模块和从模块的输出信号的时序来实现主模块和从模块的自检测,将主模块发送给应用层的读写请求包以及完成包作为应用层发送给从模块的读写请求包以及完成包。
Description
技术领域
本发明涉及一种基于UVM平台的PCIE回环自检测的方法,具体涉及UVM验证平台以及PCIE桥的主从块的连接问题。
背景技术
现有PCIE的总线接口(AXI)桥没有涉及到其中主(master)模块和从(slave)模块相连接的问题。现有的PCIE也没有涉及到使用UVM验证平台来验证PCIE模块。
应用层对PCIE发送数据的时候是通过AXI桥的slave模块来完成的。使用驱动器来模拟应用层,发送存储器写请求相关的信号,例如写地址,写数据等等,发送到AXI桥的slave模块,然后slave模块再发送到PCIE中的XADM模块进行组包,通过PCIE的发送端发送出去。最后,在out_agent中的monitor对mac层的输出端口进行监测,当监测到从应用层发过来的存储器写请求包时,monitor组件通过对该包进行解析,解析出我们需要的数据位,地址位等等,然后通过这些信号,将写数据存放到monitor中的存储器中。同时,monitor会通知driver发送一个相关的完成报文到mac层的输入端。最后通过slave模块发送给应用层,通过监测器来进行监测收集。
当应用层发送存储器读请求包的时候,同样的,driver2会模拟应用层,发送存储器读请求相关的信号,例如读地址,数据包类型,读标志等等信号,然后经过PCIE进行组包,再发送出去,当out_agent中的monitor监测接收到该包的时候,对其进行解析,发现该包是一个读请求包,那么,monitor会将解析出来的读信息(例如读地址等)发送到MEM中读取数据,并将读出来的数据通知给driver,然后driver组合一个带数据的完成包发送到mac层的输入端。最后通过slave模块发送给应用层,通过monitor2来进行监测收集。现有的技术方案需要多个激励产生器,需要多个数据监测器,组件要求多,并且利用率较低,并不是发每种TLP包都会用到各个组件。相应的,在许多的testcase中,有的组件是不工作的。并且,对验证平台的要求极高,各个组件的联系比较多,很容易在平台中产生bug。
发明内容
本发明的目的在于克服上述不足,提供一种基于UVM平台的PCIE回环自检测的方法,减少了UVM平台中的组件,提高UVM平台各组件的利用率,降低平台bug的产生。本发明的目的是这样实现的:一种基于UVM平台的PCIE回环自检测的方法,通过信号匹配模块将AXI桥的master和slave模块连接起来,来实现master和slave的自检测,将master发送给应用层的读写请求包以及完成包,作为应用层发送给slave模块的读写请求包以及完成包。
其进一步的技术方案具体步骤如下:
1)在对于一个存储器写TLP包,通过将transaction产生的数据包发送到sequencer中,然后driver从sequencer中获得数据包并发送给连接mac层接收端的interface,完成对mac层接收端的写存储器包的输入;
2)该包会经过数据链路层的LCRC检测,事物层的ECRC检测,以及事物层的畸形包检测等。如果包的格式、内容等是正确的,则该包会顺利的通过PCIE的三层,进入到AXI桥的master模块;
3)经过上述master模块以后,最后将地址信号、数据信号、标志信号几种信号发送给AXI桥的slave模块;
4)上述slave模块对信号进行组合以后,发送给PCIE中的发送器模块,信号在发送器模块中进行组合,组合成TLP包的格式发送给PCIE事物层的发送端并进行添加ECRC,然后在数据链路层添加LCRC,最后通过mac层发送出去;
5)在mac层的输出端,有一个out_agent组件,out_agent组件中的monitor组件用来监测收集mac层的输出端,并具有解析TLP包的功能。当解析到该TLP包为存储器写TLP包以后,它会将写地址与写数据解析出来,然后将写地址与写数据存放到本地的存储器中。与现有技术相比,本发明的有益效果是:
本发明通过在AXI桥的master模块和slave模块之间添加一个信号匹配模块,将master模块和slave模块连接起来,省去了PCIE需应用层的连接来进行检测的问题;大大减少了UVM平台中的组件,仅需要一个monitor和两个driver就完成了数据的发送与监测,大大减少了工作量,和UVM平台各组件的利用率;减少了interface的定义,仅在PCIE的mac层的发送与输出端定义一个interface,而在PCIE于应用层连接的那一端则不需要重新定义interface。
具体实施方式
本发明涉及一种基于UVM平台的PCIE回环自检测的方法,所述方法通过将总线接口(AXI)桥的主(master)和从(slave)模块连接起来,来实现master和slave的自检测,将master发送给应用层的读写请求包以及完成包,作为应用层发送给slave模块的读写请求包以及完成包。
当我们向PCIE的mac层接收端发送一个读存储器TLP包的时候,读地址应该与之前写tlp包的写地址一致,这样才可以进行读操作,否则,读出的数据可能是存储器中的初始值。同样的,该TLP包会经过PCIE的接收端,进行各种数据包格式以及内容的检测以后发送到接收处理模块(RADM),RADM模块经过判断数据包的类型再送入到AXI桥的master模块,然后master模块将这些信号发送到信号匹配模块signal_match_mstr,该模块对各个信号重新进行调整,调整为可以被AXI桥的slave模块接收的信号,然后将这些信号发送给AXI桥的slave模块。slave模块将信号发送给XADM模块,经过XADM模块的组包操作,进入到PCIE的发送端,经过发送端的ECRC和LCRC的添加,最终由mac层的输出端输出到interface中。同时out_agent中的monitor会对interface中的输出包进行监测收集,收集完一个整TLP包以后,会对该TLP包进行解析,可以解析出该包的类型,地址以及数据(如果带数据)。当发现该包是一个存储器读请求包,那么就会根据地址来读取本地的存储器的数据,然后将该地址和读出的数据组合成一个transaction发送到另一个单独的in_agent1中的driver中。其中,out_agent和in_agent1之间是通过UVM平台中定义的端口相连接的,而out_agent中的port是和其中的monitor的port直接相连,in_agent1中的port是和其中的driver的port直接相连,这样就达到的out_agent中的monitor和in_agent中的driver相连的目的。当in_agent1中的driver接收到out_agent中的monitor发送过来的带有地址和数据的数据包以后,会对该数据包把地址和数据解析出来,然后将地址和数据组合成完成包,包中的其他内容由自己定义,尤其是表示cpl包的类型的比特位。将cpl包组合完成以后,再通过in_agent1中的driver发送到PCIE的接收端的mac层,该完成包再经过PCIE的接收端的mac层、数据链路层(主要对LCRC进行检测)、事物层(主要ECRC检测以及畸形包检测)以后,发送到RADM,RADM检测到该包的数据类型为存储器读的完成包,则会发送到AXI桥的slave模块,该模块将包解析以后再把解析后的信号发送到信号匹配模块(signal_match_slv)。各个信号经过信号匹配以后,会被匹配模块发送到AXI桥的master模块。而此时,AXI桥的master模块会认为是应用层发送过来的模块,并不会报错。然后master模块将信号发送到PCIE发送端的XADM模块进行组包,最后又PCIE发送端mac层的输出端输出。而此时,连接mac层输出端的out_agent又回监测收集到该包,发现该包是一个存储器读的完成包,然后,将该包进行解析,解析出地址与数据以后,与本地的相应的地址所对应的数据进行对比,检查该完成包在PCIE中流动的过程中有没有出现错误。
Claims (2)
1.一种基于UVM平台的PCIE回环自检测技术,其特征在于:将总线接口桥的主模块和从模块通过信号匹配模块连接起来,信号匹配模块通过更改主模块和从模块的输出信号的时序来实现主模块和从模块的自检测,将主模块发送给应用层的读写请求包以及完成包作为应用层发送给从模块的读写请求包以及完成包。
2.根据权利要求1所述一种基于UVM平台的PCIE回环自检测技术,其特征在于所述方法包括以下步骤:
1)在对于一个存储器写TLP包,定义包模块通过将产生的数据包发送到定序器中,然后驱动器从定序器中获得数据包发送给连接物理层接收端的接口,完成了对物理层接收端的写存储器包的输入;
2)该包会经过数据链路层的循环冗余校验,事物层的循环冗余校验,以及事物层的畸形包检测;
3)经过主模块以后,再将地址数据信号发送到信号匹配模块,信号匹配模块会使地址信号先于数据信号一个周期发送给从模块,然后数据信号及数据标志信号发送给总线接口桥的从模块;
4)从模块对信号进行组合以后,发送给PCIE中的发送器,信号在发送器中进行组合,组合成TLP包的格式发送给PCIE事物层的发送端进行添加循环冗余校验,然后在数据链路层添加循环冗余校验,最后通过物理层发送出去;
5)在物理层的输出端有一个输出代理组件,输出代理组件中的数据监测器组件用来监测收集物理层的输出端,并具有解析TLP包的功能,当解析到该TLP包为存储器写TLP包以后,它会将写地址与写数据解析出来,然后将数据存放到本地的存储器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410583281.8A CN105630641A (zh) | 2014-10-27 | 2014-10-27 | 一种pcie回环自检测的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410583281.8A CN105630641A (zh) | 2014-10-27 | 2014-10-27 | 一种pcie回环自检测的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105630641A true CN105630641A (zh) | 2016-06-01 |
Family
ID=56045615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410583281.8A Pending CN105630641A (zh) | 2014-10-27 | 2014-10-27 | 一种pcie回环自检测的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105630641A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111984477A (zh) * | 2020-07-09 | 2020-11-24 | 瑞芯微电子股份有限公司 | 一种PCIe设备信号参数动态校正装置和方法 |
-
2014
- 2014-10-27 CN CN201410583281.8A patent/CN105630641A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111984477A (zh) * | 2020-07-09 | 2020-11-24 | 瑞芯微电子股份有限公司 | 一种PCIe设备信号参数动态校正装置和方法 |
CN111984477B (zh) * | 2020-07-09 | 2022-05-17 | 瑞芯微电子股份有限公司 | 一种PCIe设备信号参数动态校正装置和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103530211B (zh) | 一种基于uvm平台的pcie回环自检测的方法 | |
CN110213143B (zh) | 一种1553b总线ip核及监视系统 | |
CN102420719B (zh) | 一种测试PCIe总线带宽的装置和方法 | |
US20130326280A1 (en) | Debugging method, chip, board, and system | |
CN107766213A (zh) | 一种实现nvme硬盘点灯的方法及系统 | |
CN105700510A (zh) | Can通信系统的错误分散检测方法及can通信系统 | |
CN106569416B (zh) | 一种微控制器的串行接口与仿真调试接口复用方法及装置 | |
CN112527705B (zh) | 一种PCIe DMA数据通路的验证方法、装置及设备 | |
CN113505016B (zh) | 总线传输故障检测方法、总线系统及芯片 | |
CN105446837A (zh) | 检测iic接口器件是否连接的方法、装置以及系统 | |
CN101770416B (zh) | 新一代周边连接接口的总线测试方法 | |
CN107293330B (zh) | 对随机存取存储器ram进行仿真验证的方法和仿真验证系统 | |
KR20200139059A (ko) | 제어기 진단 장치 및 그 방법 | |
CN112249088B (zh) | 双显示系统互诊断与数据同步的方法、双显示系统和列车 | |
CN104780123A (zh) | 一种网络包收发处理装置及其设计方法 | |
CN105630641A (zh) | 一种pcie回环自检测的方法 | |
US8799548B2 (en) | I/O bridge device, response-reporting method, and program | |
CN108614751A (zh) | 一种pcie回环自检测的方法 | |
CN103425123A (zh) | 一种基于软件脚本的can总线自动化测试方法 | |
CN104572515B (zh) | 跟踪模块、方法、系统和片上系统芯片 | |
CN103389924B (zh) | 应用于随机存储器的ecc存储系统 | |
CN112395147B (zh) | Soc上的调试装置 | |
CN107704417A (zh) | 与被测设备通信的方法及其通信系统 | |
CN103531002B (zh) | 一种基于td-scdma的远程调试方法 | |
JP2006301784A (ja) | プログラマブルロジックコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160601 |
|
WD01 | Invention patent application deemed withdrawn after publication |