CN112699626B - Scheduling detection method and device, equipment and computer readable storage medium - Google Patents
Scheduling detection method and device, equipment and computer readable storage medium Download PDFInfo
- Publication number
- CN112699626B CN112699626B CN202011628604.2A CN202011628604A CN112699626B CN 112699626 B CN112699626 B CN 112699626B CN 202011628604 A CN202011628604 A CN 202011628604A CN 112699626 B CN112699626 B CN 112699626B
- Authority
- CN
- China
- Prior art keywords
- scheduling
- module
- information
- under test
- device under
- 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.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 35
- 238000012360 testing method Methods 0.000 claims abstract description 93
- 238000012544 monitoring process Methods 0.000 claims abstract description 30
- 238000012795 verification Methods 0.000 claims abstract description 16
- 230000006399 behavior Effects 0.000 claims description 64
- 230000002159 abnormal effect Effects 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 17
- 230000015654 memory Effects 0.000 claims description 16
- 238000000034 method Methods 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 8
- 230000000630 rising effect Effects 0.000 claims description 7
- 239000005043 ethylene-methyl acrylate Substances 0.000 description 10
- 238000004088 simulation Methods 0.000 description 10
- XEBWQGVWTUSTLN-UHFFFAOYSA-M phenylmercury acetate Chemical compound CC(=O)O[Hg]C1=CC=CC=C1 XEBWQGVWTUSTLN-UHFFFAOYSA-M 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 3
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 3
- 101100012902 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FIG2 gene Proteins 0.000 description 3
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004606 Fillers/Extenders Substances 0.000 description 1
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/2851—Testing of integrated circuits [IC]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种调度检测方法及装置、设备、计算机可读存储介质。本申请一实施例中,调度检测方法可以包括:监测被测装置中的调度模块;监测到进入所述调度模块的调度请求时,缓存所述调度请求中的信息;监测到所述调度模块送出的调度反馈时,从缓存中释放相应调度请求的信息;根据所述调度反馈和/或所述调度请求中的信息,验证所述被测装置的调度行为。本申请实施例能够高效地完成芯片的系统级或子系统级验证。
The present application relates to a scheduling detection method and apparatus, device, and computer-readable storage medium. In one embodiment of the present application, the scheduling detection method may include: monitoring the scheduling module in the device under test; when a scheduling request entering the scheduling module is detected, caching the information in the scheduling request; when the scheduling feedback sent by the scheduling module is detected, releasing the information of the corresponding scheduling request from the cache; and verifying the scheduling behavior of the device under test based on the scheduling feedback and/or the information in the scheduling request. The embodiment of the present application can efficiently complete the system-level or subsystem-level verification of the chip.
Description
技术领域Technical Field
本申请涉及通信技术领域,特别是指一种调度检测方法及装置、设备、计算机可读存储介质。The present application relates to the field of communication technology, and in particular to a scheduling detection method and apparatus, device, and computer-readable storage medium.
背景技术Background technique
通常,通过仿真来验证芯片系统级或其子系统级的运行效果。目前,系统级仿真、子系统级仿真主要是通过对芯片系统或子系统中的多个电路模块分别进行模块级仿真来实现。而模块级仿真中,则主要通过将仿真模块(RM)与芯片的调度结果进行时序级比对来实现的,这种时序级比对中仿真模块需要监测芯片的内部信号来保证比对的准确性。而在进行综合网表、PR网表等网表仿真验证时,芯片的内部信号以网表的方式呈现,难以进行精确的采样、定位,给时序级比对带来了较大困难,并且由于芯片中每个电路模块时钟不同且其延迟是动态变化的,因此,针对芯片中各个电子模块进行网表仿真时,采样芯片内部信号时需要针对每个电路模块调试仿真模块的代码,需要耗费大量调试时间,导致效率低下。尤其是在加入了标准延迟格式(Standard Delay Format,SDF)延迟之后,更是如此。Usually, simulation is used to verify the operation effect of the chip system level or its subsystem level. At present, system-level simulation and subsystem-level simulation are mainly realized by performing module-level simulation on multiple circuit modules in the chip system or subsystem. In module-level simulation, it is mainly realized by comparing the simulation module (RM) with the scheduling result of the chip at the timing level. In this timing-level comparison, the simulation module needs to monitor the internal signal of the chip to ensure the accuracy of the comparison. When performing netlist simulation verification such as comprehensive netlist and PR netlist, the internal signal of the chip is presented in the form of a netlist, which is difficult to sample and locate accurately, which brings great difficulties to the timing-level comparison. In addition, since the clock of each circuit module in the chip is different and its delay is dynamically changing, when performing netlist simulation for each electronic module in the chip, it is necessary to debug the code of the simulation module for each circuit module when sampling the internal signal of the chip, which takes a lot of debugging time and leads to low efficiency. This is especially true after the addition of the Standard Delay Format (SDF) delay.
发明内容Summary of the invention
鉴于相关技术中的上述技术问题,本申请提供一种调度检测方法及装置、设备、计算机可读存储介质,以高效地完成芯片的系统级或子系统级验证。In view of the above-mentioned technical problems in the related art, the present application provides a scheduling detection method and apparatus, a device, and a computer-readable storage medium to efficiently complete system-level or subsystem-level verification of a chip.
为达到上述目的,本申请第一方面提供了一种调度检测方法,包括:To achieve the above-mentioned object, the first aspect of the present application provides a scheduling detection method, comprising:
监测被测装置中的调度模块;Monitoring the scheduling module in the device under test;
监测到进入所述调度模块的调度请求时,缓存所述调度请求中的信息;When a scheduling request entering the scheduling module is detected, information in the scheduling request is cached;
监测到所述调度模块送出的调度反馈时,从缓存中释放相应调度请求的信息;When monitoring the scheduling feedback sent by the scheduling module, releasing the information of the corresponding scheduling request from the cache;
根据所述调度反馈和/或所述调度请求中的信息,验证所述被测装置的调度行为。The scheduling behavior of the device under test is verified according to the scheduling feedback and/or information in the scheduling request.
由上,实现了可以通过监测芯片,即被测装置中的调度模块的调度请求和调度反馈来实现被测装置接口信号的检测,进而高效地完成芯片的子系统级调度行为或系统级调度行为的检测,无需多次调试即可实现,可有效节省时间,提高效率。From the above, it is realized that the interface signal of the device under test can be detected by monitoring the chip, that is, the scheduling request and scheduling feedback of the scheduling module in the device under test, thereby efficiently completing the detection of the subsystem-level scheduling behavior or system-level scheduling behavior of the chip, which can be achieved without multiple debugging, effectively saving time and improving efficiency.
至少一些实施例中,所述调度请求中包括报文所属端口号和报文所属优先级;所述缓存所述调度请求中的信息,包括:以调度请求中的报文所属端口和报文所属优先级的组合信息为索引来缓存调度请求中的信息。In at least some embodiments, the scheduling request includes the port number to which the message belongs and the priority level to which the message belongs; and caching the information in the scheduling request includes: caching the information in the scheduling request using the combined information of the port to which the message belongs and the priority level to which the message belongs in the scheduling request as an index.
由上,实现了调度请求中信息的高效存取。From the above, efficient access to information in scheduling requests is achieved.
至少一些实施例中,所述验证所述被测装置的调度行为,包括:验证被测装置的调度行为是否符合预定的调度规则,若符合则说明所述被测装置的调度行为正常,若不符合则说明所述被测装置的调度行为异常;其中,所述调度规则包括如下之一或多项:调度请求中信息的信号时序、调度反馈中信息的信号时序、调度反馈与相应调度请求的随路信息一致性、调度反馈数量与相应调度请求的单元cell数量的一致性、抢占帧功能。In at least some embodiments, verifying the scheduling behavior of the device under test includes: verifying whether the scheduling behavior of the device under test complies with predetermined scheduling rules. If so, it indicates that the scheduling behavior of the device under test is normal; if not, it indicates that the scheduling behavior of the device under test is abnormal; wherein, the scheduling rules include one or more of the following: signal timing of information in a scheduling request, signal timing of information in a scheduling feedback, consistency of on-path information of a scheduling feedback with a corresponding scheduling request, consistency of the number of scheduling feedbacks with the number of cells of a corresponding scheduling request, and a preemptive frame function.
由上,实现了可以通过监测芯片,即被测装置中的调度模块的调度请求和调度反馈实现了被测装置中各种系统级或子系统级调度行为的验证。From the above, it is achieved that various system-level or subsystem-level scheduling behaviors in the device under test can be verified by monitoring the scheduling request and scheduling feedback of the scheduling module in the chip, that is, the device under test.
至少一些实施例中,所述验证所述被测装置的调度行为,包括:每监测到一低优先级的调度反馈,根据所述调度反馈的物理端口号查询缓存中是否存在相同物理端口号的高优先级调度请求的信息,如果存在则说明所述被测装置的抢占帧调度行为异常,如果不存在则说明所述被测装置的抢占帧调度行为正常。In at least some embodiments, verifying the scheduling behavior of the device under test includes: each time a low-priority scheduling feedback is monitored, querying the cache based on the physical port number of the scheduling feedback whether there is information about a high-priority scheduling request with the same physical port number; if so, it indicates that the preemptive frame scheduling behavior of the device under test is abnormal; if not, it indicates that the preemptive frame scheduling behavior of the device under test is normal.
由上,实现了可以通过监测芯片,即被测装置中的调度模块的调度请求和调度反馈来实现被测装置的抢占帧功能的这一调度行为的检测。As described above, it is realized that the scheduling behavior of the preemption frame function of the device under test can be detected by monitoring the scheduling request and scheduling feedback of the scheduling module in the chip, that is, the device under test.
至少一些实施例中,所述验证所述被测装置的调度行为包括:验证对应一调度请求的调度反馈的数量是否匹配该调度请求的信息中的cell个数,如果匹配则说明所述被测装置的调度行为正常,如果不匹配则说明所述被测装置的调度行为异常。In at least some embodiments, verifying the scheduling behavior of the device under test includes: verifying whether the number of scheduling feedbacks corresponding to a scheduling request matches the number of cells in the information of the scheduling request; if they match, it means that the scheduling behavior of the device under test is normal; if they do not match, it means that the scheduling behavior of the device under test is abnormal.
由上,实现了可以通过监测芯片,即被测装置中的调度模块的调度请求和调度反馈来实现对cell个数一致性的检测。From the above, it is realized that the consistency of the number of cells can be detected by monitoring the scheduling request and scheduling feedback of the scheduling module in the monitoring chip, that is, the device under test.
至少一些实施例中,所述验证所述被测装置的调度行为包括:验证调度请求和/或调度反馈中信息的信号上升沿及信号下降沿是否与所述被测装置的时钟二分频对齐,如果是则说明所述被测装置的调度行为正常,如果否则说明所述被测装置的调度行为异常。In at least some embodiments, verifying the scheduling behavior of the device under test includes: verifying whether the signal rising edge and signal falling edge of the information in the scheduling request and/or scheduling feedback are aligned with the clock binary frequency of the device under test, if so, it means that the scheduling behavior of the device under test is normal, if not, it means that the scheduling behavior of the device under test is abnormal.
由上,实现了可以通过监测芯片,即被测装置中的调度模块的调度请求和调度反馈来实现对信号时序的检测。From the above, it is realized that the signal timing can be detected by monitoring the scheduling request and scheduling feedback of the scheduling module in the monitoring chip, that is, the device under test.
至少一些实施例中,所述的调度检测方法还包括:验证所述被测装置的调度行为异常时,生成相应错误信息。In at least some embodiments, the scheduling detection method further includes: generating corresponding error information when verifying that the scheduling behavior of the device under test is abnormal.
由上,实现了异常时错误信息的对应生成,以便于上报和供技术人员查看。From the above, the corresponding generation of error information in the event of an exception is achieved, so as to facilitate reporting and viewing by technical personnel.
本申请第一方面提供了一种调度检测装置,包括:监测模块、缓存模块、释放模块和验证模块;其中,The first aspect of the present application provides a scheduling detection device, comprising: a monitoring module, a cache module, a release module and a verification module; wherein:
监测模块,配置为监测被测装置中的调度模块;A monitoring module configured to monitor a scheduling module in the device under test;
缓存模块,配置为监测到进入所述调度模块的调度请求时,缓存所述调度请求中的信息;a cache module, configured to cache information in the scheduling request when monitoring the scheduling request entering the scheduling module;
释放模块,配置为监测到所述调度模块送出的调度反馈时,从缓存中释放相应调度请求的信息;A release module, configured to release information of a corresponding scheduling request from a cache when monitoring the scheduling feedback sent by the scheduling module;
验证模块,配置为根据所述调度反馈和/或相应调度请求中的信息,验证所述被测装置的调度行为。The verification module is configured to verify the scheduling behavior of the device under test according to the scheduling feedback and/or information in the corresponding scheduling request.
本申请第三方面提供了一种计算设备,包括:通信接口,以及至少一个处理器;其中,所述至少一个处理器用于执行程序指令,所述程序指令当被所述至少一个处理器执行时使得所述计算设备实现上述第一方面所述的方法。A third aspect of the present application provides a computing device, comprising: a communication interface, and at least one processor; wherein the at least one processor is used to execute program instructions, and when the program instructions are executed by the at least one processor, the computing device implements the method described in the first aspect above.
本申请第四方面提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令当被计算机执行时使得所述计算机实现上述第一方面所述的方法。A fourth aspect of the present application provides a computer-readable storage medium having program instructions stored thereon, wherein when the program instructions are executed by a computer, the computer implements the method described in the first aspect above.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
以下参照附图来进一步说明本申请的各个特征和各个特征之间的联系。附图均为示例性的,一些特征并不以实际比例示出,并且一些附图中可能省略了本申请所涉及领域的惯常的且对于本申请非必要的特征,或是额外示出了对于本申请非必要的特征,附图所示的各个特征的组合并不用以限制本申请。另外,在本说明书全文中,相同的附图标记所指代的内容也是相同的。具体的附图说明如下:The following further illustrates the various features of the present application and the connections between the various features with reference to the accompanying drawings. The accompanying drawings are all exemplary, and some features are not shown in actual proportion. Some drawings may omit features that are conventional in the field involved in the present application and are not necessary for the present application, or additional features that are not necessary for the present application may be shown. The combination of the various features shown in the accompanying drawings is not intended to limit the present application. In addition, throughout this specification, the same figure numerals refer to the same content. The specific description of the drawings is as follows:
图1是本申请实施例提供的一种调度检测方法的流程示意图;FIG1 is a schematic diagram of a flow chart of a scheduling detection method provided in an embodiment of the present application;
图2是本申请实施例提供的调度检测装置的结构示意图;FIG2 is a schematic diagram of the structure of a scheduling detection device provided in an embodiment of the present application;
图3是本申请实施例提供的调度检测装置的部署示意图;FIG3 is a schematic diagram of the deployment of a scheduling detection device provided in an embodiment of the present application;
图4是本申请实施例提供的一种计算设备的结构性示意性图。FIG4 is a structural schematic diagram of a computing device provided in an embodiment of the present application.
具体实施方式Detailed ways
说明书和权利要求书中的词语“第一、第二、第三等”或模块A、模块B、模块C等类似用语,仅用于区别类似的对象,不代表针对对象的特定排序,可以理解地,在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。The words "first, second, third, etc." or module A, module B, module C and other similar terms in the specification and claims are only used to distinguish similar objects and do not represent a specific ordering of the objects. It is understandable that the specific order or sequence can be interchanged where permitted so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.
在以下的描述中,所涉及的表示步骤的标号,如S110、S120……等,并不表示一定会按此步骤执行,在允许的情况下可以互换前后步骤的顺序,或同时执行。In the following description, the numbers representing the steps, such as S110, S120, etc., do not necessarily mean that the steps must be executed in this manner. If permitted, the order of the previous and next steps can be interchanged, or they can be executed simultaneously.
说明书和权利要求书中使用的术语“包括”不应解释为限制于其后列出的内容;它不排除其它的元件或步骤。因此,其应当诠释为指定所提到的所述特征、整体、步骤或部件的存在,但并不排除存在或添加一个或更多其它特征、整体、步骤或部件及其组群。因此,表述“包括装置A和B的设备”不应局限为仅由部件A和B组成的设备。The term "comprising" as used in the description and claims should not be interpreted as being limited to what is listed thereafter; it does not exclude other elements or steps. Therefore, it should be interpreted as specifying the presence of the features, integers, steps or components mentioned, but does not exclude the presence or addition of one or more other features, integers, steps or components and groups thereof. Therefore, the expression "a device comprising means A and B" should not be limited to a device consisting of components A and B only.
本说明书中提到的“一个实施例”或“实施例”意味着与该实施例结合描述的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在本说明书各处出现的用语“在一个实施例中”或“在实施例中”并不一定都指同一实施例,但可以指同一实施例。此外,在一个或多个实施例中,能够以任何适当的方式组合各特定特征、结构或特性,如从本公开对本领域的普通技术人员显而易见的那样。References to "one embodiment" or "an embodiment" in this specification mean that a particular feature, structure, or characteristic described in conjunction with the embodiment is included in at least one embodiment of the present application. Therefore, the phrases "in one embodiment" or "in an embodiment" appearing in various places in this specification do not necessarily refer to the same embodiment, but may refer to the same embodiment. In addition, in one or more embodiments, the particular features, structures, or characteristics can be combined in any appropriate manner, as would be apparent to one of ordinary skill in the art from this disclosure.
通过对芯片系统级或子系统级验证的深入研究,发明人发现,芯片的子系统级或系统级的验证,关注重点并不在于芯片内部各个电路模块的具体调度顺序、具体调度时间等细节,而在于芯片的子系统级或系统级的调度行为(即,芯片的宏观调度行为)是否符合相应的调度规则。故而,为解决芯片子系统级或系统级验证中调试时间长、效率低等技术问题,本申请实施例提供了如下的调度检测方法及装置、设备、计算机可读存储介质,其通过监测芯片(即下文中的被测装置(DUT))中调度模块的调度请求和调度反馈来实现被测装置接口信号的检测,进而高效地完成芯片的子系统级调度行为或系统级调度行为的检测,无需多次调试即可实现,可有效节省时间,提高效率。Through in-depth research on chip system-level or subsystem-level verification, the inventors found that the focus of chip subsystem-level or system-level verification is not on the specific scheduling order, specific scheduling time and other details of each circuit module inside the chip, but on whether the scheduling behavior of the chip subsystem-level or system-level (i.e., the macro-scheduling behavior of the chip) complies with the corresponding scheduling rules. Therefore, in order to solve the technical problems of long debugging time and low efficiency in chip subsystem-level or system-level verification, the embodiments of the present application provide the following scheduling detection method and device, equipment, and computer-readable storage medium, which detects the interface signal of the device under test by monitoring the scheduling request and scheduling feedback of the scheduling module in the chip (i.e., the device under test (DUT) hereinafter), and then efficiently completes the detection of the subsystem-level scheduling behavior or system-level scheduling behavior of the chip, which can be achieved without multiple debugging, which can effectively save time and improve efficiency.
图1示出了本申请实施例的调度检测方法100的示例性流程。参见图1所示,本申请实施例的调度检测方法可以包括如下步骤:FIG1 shows an exemplary process of a scheduling detection method 100 according to an embodiment of the present application. Referring to FIG1 , the scheduling detection method according to an embodiment of the present application may include the following steps:
步骤S110,监测被测装置中的调度模块。Step S110: monitoring the scheduling module in the device under test.
步骤S120,监测到进入调度模块的调度请求时,缓存调度请求中的信息。Step S120, when a scheduling request entering the scheduling module is monitored, information in the scheduling request is cached.
步骤S130,监测到调度模块送出的调度反馈时,从缓存中释放相应调度请求的信息。Step S130, when the scheduling feedback sent by the scheduling module is monitored, the information of the corresponding scheduling request is released from the cache.
步骤S140,根据调度反馈和/或调度请求中的信息,验证被测装置的调度行为。Step S140: verify the scheduling behavior of the device under test according to the information in the scheduling feedback and/or the scheduling request.
由上步骤,实现了可以通过监测芯片(即被测装置)中调度模块的调度请求和调度反馈来实现被测装置接口信号的检测,进而高效地完成芯片的子系统级调度行为或系统级调度行为的检测,无需多次调试即可实现,可有效节省时间,提高效率。Through the above steps, it is possible to detect the interface signal of the device under test by monitoring the scheduling request and scheduling feedback of the scheduling module in the chip (i.e., the device under test), thereby efficiently completing the detection of the subsystem-level scheduling behavior or system-level scheduling behavior of the chip, which can be achieved without multiple debugging, effectively saving time and improving efficiency.
图2示出了本申请实施例提供的调度检测装置200的示例性结构。参见图2所示,调度检测装置200可以包括:监测模块210、缓存模块220、释放模块230和验证模块240。其中,FIG2 shows an exemplary structure of a scheduling detection device 200 provided in an embodiment of the present application. Referring to FIG2 , the scheduling detection device 200 may include: a monitoring module 210, a cache module 220, a release module 230, and a verification module 240.
监测模块210,配置为监测被测装置中的调度模块;A monitoring module 210 configured to monitor a scheduling module in the device under test;
缓存模块220,配置为监测到进入所述调度模块的调度请求时,缓存所述调度请求中的信息;The cache module 220 is configured to cache information in the scheduling request when monitoring the scheduling request entering the scheduling module;
释放模块230,配置为监测到所述调度模块送出的调度反馈时,从缓存中释放相应调度请求的信息;A release module 230, configured to release information of a corresponding scheduling request from a cache when monitoring the scheduling feedback sent by the scheduling module;
验证模块240,配置为根据所述调度反馈和/或调度请求中的信息,验证所述被测装置的调度行为。The verification module 240 is configured to verify the scheduling behavior of the device under test according to the information in the scheduling feedback and/or the scheduling request.
图3示出了本申请实施例中调度检测模块、调度模块在DUT中的部署架构示意图。FIG3 shows a schematic diagram of the deployment architecture of the scheduling detection module and the scheduling module in the DUT in an embodiment of the present application.
下面结合图1、图2和图3对本申请实施例的示例性实现方式进行详细说明。An exemplary implementation of the embodiment of the present application is described in detail below in conjunction with FIG. 1 , FIG. 2 and FIG. 3 .
参见下文图3所示,被测装置的调度模块可以通过其入口(例如,入口调度模块)接收来自其上一级模块(例如,图3中所示的入口队列管理模块)的调用请求,调用模块可以通过其出口(例如,图3所示的出口调度模块)向其下一级模块(例如,图3中所示的出口队列管理模块)送出调度反馈,由此,DUT可以对其各个电子模块进行调度以实现DUT的相关功能(例如,DUT应用于交换机时,其相关功能可以是但不限于报文转换、转发等)。实际应用中,调度模块的入口(例如,图3中的入口调度模块)和出口(例如,图3中的出口调度模块)均可以是但不限于软件定义的接口。As shown in FIG. 3 below, the scheduling module of the device under test can receive a call request from its upper-level module (e.g., the inlet queue management module shown in FIG. 3) through its inlet (e.g., the inlet scheduling module), and the calling module can send scheduling feedback to its lower-level module (e.g., the outlet queue management module shown in FIG. 3) through its outlet (e.g., the outlet scheduling module shown in FIG. 3), thereby, the DUT can schedule its various electronic modules to realize the relevant functions of the DUT (e.g., when the DUT is applied to a switch, its relevant functions can be but are not limited to message conversion, forwarding, etc.). In practical applications, the inlet (e.g., the inlet scheduling module in FIG. 3) and the outlet (e.g., the outlet scheduling module in FIG. 3) of the scheduling module can be but are not limited to software-defined interfaces.
步骤S110中,可以针对调度模块的入口和出口同时进行监测,也即同时监测DUT中调度模块的入口调度模块和出口调度模块。每监测到调度请求进入调度模块中则可以继续下述的步骤S120,每监测到调度模块送出调度反馈则可以继续下述的步骤S130。由于调度请求和调度反馈中均携带有被测装置接口信号的相关信息(例如,被测装置接收到的报文、被测装置发出的报文的端口、优先级等),因此,本申请实施例能够通过监测调度模块来实现被测装置接口信号的检测,进而实现被测装置系统级或子系统级的调度行为的高效检测。In step S110, the inlet and outlet of the scheduling module can be monitored simultaneously, that is, the inlet scheduling module and the outlet scheduling module of the scheduling module in the DUT can be monitored simultaneously. Each time a scheduling request is monitored to enter the scheduling module, the following step S120 can be continued, and each time a scheduling feedback is monitored to be sent by the scheduling module, the following step S130 can be continued. Since both the scheduling request and the scheduling feedback carry relevant information of the interface signal of the device under test (for example, the message received by the device under test, the port of the message sent by the device under test, the priority, etc.), therefore, the embodiment of the present application can realize the detection of the interface signal of the device under test by monitoring the scheduling module, thereby realizing efficient detection of the scheduling behavior of the system level or subsystem level of the device under test.
一些实施例中,以图3为例,本文中的调度请求可以是但不限于端口队列调度请求,调度请求中的信息可以包括但不限于如下信息:In some embodiments, taking FIG. 3 as an example, the scheduling request in this document may be, but is not limited to, a port queue scheduling request, and the information in the scheduling request may include, but is not limited to, the following information:
出口队列管理模块(EQM)的队列调度请求(例如,每个报文队列可最多发送2个调度请求);Queue scheduling requests from the egress queue management module (EQM) (e.g., each message queue can send up to 2 scheduling requests);
报文所属端口号,即报文所属端口扩展器(PE,Port Extender)的端口号,对应下文所述的报文调度目的端口号,其包括物理端口号和扩展端口号,扩展端口号可以是可被抢占的媒体访问控制(Preamble MAC,PMAC)端口号或者快速媒体访问控制(Express MAC,EMAC)端口号;The port number to which the message belongs, i.e., the port number of the port extender (PE) to which the message belongs, corresponds to the destination port number of the message scheduling described below, which includes a physical port number and an extended port number. The extended port number may be a preemptible media access control (Preamble MAC, PMAC) port number or an express media access control (Express MAC, EMAC) port number;
报文所属优先级;The priority level of the message;
报文包含的cell个数;The number of cells contained in the message;
报文尾cell未使用字节数;Number of unused bytes in the message tail cell;
报文时戳信息,例如调度请求的接收时刻;Message timestamp information, such as the time when the scheduling request was received;
报文丢弃使能,可以在反馈调度结果时返还;Packet discarding enable can be returned when the scheduling result is fed back;
向出口调度模块(ESCH)发送调度申请的报文的错误标志。An error flag in the message sending the scheduling request to the egress scheduling module (ESCH).
实际应用中,调度模块的一次调度通常由相应调度请求中的报文所属端口、报文所属优先级等信息来标识,调度请求与调度反馈也是通过这些信息来关联。因此,在一些实施例中,步骤S120中可以以调度请求中的报文所属端口号和报文所属优先级的组合信息(例如,由报文所属端口和报文所属优先级计算得到的调度队列号)为索引来缓存调度请求中的信息,以便在步骤S130中针对抢占帧功能等进行验证。In practical applications, a scheduling of the scheduling module is usually identified by information such as the port to which the message belongs and the priority to which the message belongs in the corresponding scheduling request, and the scheduling request and the scheduling feedback are also associated through this information. Therefore, in some embodiments, in step S120, the information in the scheduling request can be cached using the combined information of the port number to which the message belongs and the priority to which the message belongs in the scheduling request (for example, the scheduling queue number calculated from the port to which the message belongs and the priority to which the message belongs) as an index, so as to verify the preemption frame function in step S130.
例如,参见下文图3所示,可以按照报文调度目的端口及其优先级预先创建多个先进先出(FIFO)队列,每个FIFO队列通过报文调度目的端口号和报文优先级的组合信息(例如,由报文调度目的端口号和报文优先级计算得到的调度队列号)来标识。步骤S120中,可以基于调度请求中的报文所属端口号及其报文所属优先级将该调度请求中的信息送入相应FIFO队列中以进行缓存。For example, as shown in FIG. 3 below, multiple first-in-first-out (FIFO) queues may be pre-created according to the message scheduling destination port and its priority, and each FIFO queue is identified by a combination of message scheduling destination port number and message priority (e.g., a scheduling queue number calculated from the message scheduling destination port number and the message priority). In step S120, the information in the scheduling request may be sent to the corresponding FIFO queue for caching based on the port number to which the message belongs and the message priority to which the message belongs in the scheduling request.
一些实施例中,仍以图3为例,调度模块(例如,其经调度模块中ESCH)送出的调度反馈可以是但不限于端口队列调度反馈,该端口队列调度反馈可以分为低优先级和高优先级。In some embodiments, still taking FIG. 3 as an example, the scheduling feedback sent by the scheduling module (for example, via ESCH in the scheduling module) may be but is not limited to port queue scheduling feedback, and the port queue scheduling feedback may be divided into low priority and high priority.
一些实施例中,调度反馈中的信息可以包括但不限于如下信息:In some embodiments, the information in the scheduling feedback may include but is not limited to the following information:
队列调度结果有效指示;Indication of the validity of the queue scheduling result;
调度结果端口号,即调度结果PE端口号;Scheduling result port number, that is, the scheduling result PE port number;
调度结果优先级;Scheduling result priority;
调度结果的cell sof(首位cell标志位);Cell sof (first cell flag) of the scheduling result;
调度结果的cell eof(末尾cell标志位);The cell eof (end cell flag) of the scheduling result;
报文包含的cell个数;The number of cells contained in the message;
报文尾cell未使用字节数;Number of unused bytes in the message tail cell;
调度结果cell对应的老化时标;The aging time scale corresponding to the scheduling result cell;
调度结果cell对应的丢弃登记;Discard registration corresponding to the scheduling result cell;
调度结果cell对应的丢弃标志;The discard flag corresponding to the scheduling result cell;
发送给EQM的实时时戳信息。Real-time time-stamp information sent to EQM.
步骤S130中,可以根据调度反馈中的调度结果端口号和调度结果优先级查询相应的FIFO队列并从中释放对应调度请求的信息。In step S130, the corresponding FIFO queue may be queried according to the scheduling result port number and the scheduling result priority in the scheduling feedback, and the information of the corresponding scheduling request may be released therefrom.
DUT的系统级调度或子系统调度中,调度请求的调度队列号与调度反馈的调度队列号要求一致。这里,调度队列号可以根据端口号和优先级计算得到。例如,调度队列号=port*8+prio,port表示端口号,prio表示优先级。一些实施例中,可以按照调度队列号来缓存调度请求中的信息,步骤S130中可以利用调度反馈中的调度结果端口号和调度结果优先级计算出其调度队列号,再基于该调度队列号释放相应调度请求的信息。In the system-level scheduling or subsystem scheduling of the DUT, the scheduling queue number of the scheduling request is required to be consistent with the scheduling queue number of the scheduling feedback. Here, the scheduling queue number can be calculated based on the port number and priority. For example, the scheduling queue number = port*8+prio, port represents the port number, and prio represents the priority. In some embodiments, the information in the scheduling request can be cached according to the scheduling queue number, and the scheduling queue number can be calculated using the scheduling result port number and the scheduling result priority in the scheduling feedback in step S130, and then the information of the corresponding scheduling request is released based on the scheduling queue number.
步骤S140中,可以利用调度反馈中的信息和/或调度请求中的信息,验证被测装置的调度行为是否符合预定的调度规则,若符合则说明所述被测装置的调度行为正常,若不符合则说明所述被测装置的调度行为异常。由此,可以通过验证是否符合调度规则来达到检测被测装置的调度是否正确的目的。In step S140, the information in the scheduling feedback and/or the information in the scheduling request can be used to verify whether the scheduling behavior of the device under test complies with the predetermined scheduling rules. If it complies, it means that the scheduling behavior of the device under test is normal, and if it does not comply, it means that the scheduling behavior of the device under test is abnormal. Thus, the purpose of detecting whether the scheduling of the device under test is correct can be achieved by verifying whether it complies with the scheduling rules.
具体地,步骤S140中可以针对但不限于如下的调度规则进行验证:调度请求中信息的信号时序、调度反馈中信息的信号时序、调度反馈与相应调度请求的随路信息一致性、调度反馈数量与相应调度请求的单元(cell)数量的一致性、抢占帧功能。由此,基于调度请求和调度反馈等调度模块的入口消息和出口消息,即可实现被测装置的系统级或子系统级调度行为(即,被测装置的宏观调度行为)的检测。若有任一或多项调度规则不满足时即生成相应的错误信息,在上述各项调度规则均满足的情况下可以被测装置的调度行为正确。Specifically, step S140 can verify the following scheduling rules, but is not limited to: the signal timing of the information in the scheduling request, the signal timing of the information in the scheduling feedback, the consistency of the scheduling feedback and the accompanying information of the corresponding scheduling request, the consistency of the number of scheduling feedback and the number of cells of the corresponding scheduling request, and the preemption frame function. Thus, based on the inlet and outlet messages of the scheduling modules such as scheduling requests and scheduling feedback, the system-level or subsystem-level scheduling behavior (i.e., the macro-scheduling behavior of the device under test) can be detected. If any one or more scheduling rules are not met, a corresponding error message is generated. If all the above scheduling rules are met, the scheduling behavior of the device under test can be correct.
实际应用中,信号时序的要求一般是事先约定好的(例如,信号时序的长度不低于两个时钟或者一个时钟等),DUT中各电路模块的信号均需满足该约定。同样地,调度请求和调度反馈也需要满足该信号时序的要求。一些实施例中,步骤S140中,验证调度请求和/或调度反馈中信息的信号上升沿及信号下降沿是否与被测装置的时钟二分频对齐,如果是则说明被测装置的调度行为正常,如果否则说明被测装置的调度行为异常。具体地,验证调度请求中信息的信号时序包括验证调度请求信息中每一信息的信号的上升沿及下降沿是否与该被测装置的时钟二分频对齐,验证调度反馈中信息的信号时序包括验证调度反馈中每一信息的信号的上升沿及下降沿是否与被测装置的时钟二分频对齐。具体地,验证调度请求中一信息的信号时序可以包括信号的上升沿是否和时钟二分频(soc)=0对齐、信号的下降沿是否和soc=1对齐。同样地,验证调度反馈中一信息的信号时序可以包括监测调度反馈中一信息的信号的上升沿是否与被测设备的soc=0对齐、下降沿是否与被测设备的soc=1对齐。In practical applications, the requirements for signal timing are generally agreed upon in advance (for example, the length of the signal timing is not less than two clocks or one clock, etc.), and the signals of each circuit module in the DUT must meet the agreement. Similarly, the scheduling request and scheduling feedback also need to meet the requirements of the signal timing. In some embodiments, in step S140, it is verified whether the rising edge and falling edge of the signal of the information in the scheduling request and/or scheduling feedback are aligned with the clock frequency division of the device under test. If so, it means that the scheduling behavior of the device under test is normal, otherwise it means that the scheduling behavior of the device under test is abnormal. Specifically, verifying the signal timing of the information in the scheduling request includes verifying whether the rising edge and falling edge of the signal of each information in the scheduling request information are aligned with the clock frequency division of the device under test, and verifying the signal timing of the information in the scheduling feedback includes verifying whether the rising edge and falling edge of the signal of each information in the scheduling feedback are aligned with the clock frequency division of the device under test. Specifically, verifying the signal timing of a message in the scheduling request can include whether the rising edge of the signal is aligned with the clock frequency division of the device under test (soc) = 0, and whether the falling edge of the signal is aligned with soc = 1. Similarly, verifying the signal timing of a piece of information in the scheduling feedback may include monitoring whether a rising edge of a signal of the piece of information in the scheduling feedback is aligned with soc=0 of the device under test, and whether a falling edge is aligned with soc=1 of the device under test.
随路信息一般用于恢复报文,因此,需要确保调度反馈中的随路信息与调度请求中的随路信息一致。一些实施例中,步骤S140中可以通过验证调度反馈中的随路信息与相应调度请求中的随路信息是否一致,来确保调度模块的下一级模块在恢复报文时不会出错。具体地,随路信息可以包括报文时戳信息、报文丢弃使能、报文尾单元cell未使用字节数,步骤S140中验证随路信息一致性可以包括:判断调度反馈中的报文时戳信息、报文丢弃使能、报文尾cell未使用字节数与相应调度请求中的对应信息是否相同。The on-path information is generally used to recover the message, therefore, it is necessary to ensure that the on-path information in the dispatch feedback is consistent with the on-path information in the dispatch request. In some embodiments, step S140 can ensure that the next-level module of the dispatch module will not make mistakes when recovering the message by verifying whether the on-path information in the dispatch feedback is consistent with the on-path information in the corresponding dispatch request. Specifically, the on-path information may include message timestamp information, message discard enable, and the number of unused bytes in the message tail cell. Verifying the consistency of the on-path information in step S140 may include: determining whether the message timestamp information, message discard enable, and the number of unused bytes in the message tail cell in the dispatch feedback are the same as the corresponding information in the corresponding dispatch request.
通常,每一调度反馈对应一个单元(cell),每一调度请求可以对应多个cell。一些实施例中,步骤S140中,验证cell数量一致性包括验证对应一调度请求的调度反馈的数量是否匹配该调度请求的信息中的cell个数,也即判断一调度请求的调度反馈数量是否等于其cell个数。如果一调度请求的调度反馈的数量与该调度请求的信息中的cell个数匹配则说明被测装置的调度行为满足cell数量一致性要求,调度行为正常;如果一调度请求的调度反馈的数量与该调度请求的信息中的cell个数不匹配则说明被测装置的调度行为不满足cell数量一致性要求,调度行为异常。Typically, each scheduling feedback corresponds to a cell, and each scheduling request may correspond to multiple cells. In some embodiments, in step S140, verifying the consistency of the number of cells includes verifying whether the number of scheduling feedbacks corresponding to a scheduling request matches the number of cells in the information of the scheduling request, that is, determining whether the number of scheduling feedbacks of a scheduling request is equal to its number of cells. If the number of scheduling feedbacks of a scheduling request matches the number of cells in the information of the scheduling request, it means that the scheduling behavior of the device under test meets the requirements for consistency of the number of cells, and the scheduling behavior is normal; if the number of scheduling feedbacks of a scheduling request does not match the number of cells in the information of the scheduling request, it means that the scheduling behavior of the device under test does not meet the requirements for consistency of the number of cells, and the scheduling behavior is abnormal.
这里,一调度请求的调度反馈数量可以在监测调度反馈的同时进行统计。具体地,每监测到一cell sof为1的调度反馈即开始计数,监测到调度队列号与该调度反馈一致且cell eof为1的调度反馈则结束计数,计数所得的数值即为同一调度请求的调度反馈数量。Here, the number of scheduling feedbacks for a scheduling request can be counted while monitoring the scheduling feedbacks. Specifically, the counting starts when a scheduling feedback with cell sof being 1 is monitored, and the counting ends when a scheduling feedback with a scheduling queue number consistent with the scheduling feedback and cell eof being 1 is monitored. The value obtained by the counting is the number of scheduling feedbacks for the same scheduling request.
至少一些实施例中,抢占帧功能的验证可以包括:每监测到一低优先级调度反馈,根据所述调度反馈的物理端口号查询缓存中是否存在相同物理端口号的高优先级调度请求的信息。如果存在,说明高优先级端口队列调度请求的报文队列没有依据抢占规则进行调度,也即被测装置的此次调度违背了抢占规则,所述被测装置的抢占帧调度行为异常;如果不存在,说明高优先级端口队列调度请求的报文队列的调度满足抢占规则,也即被测装置的此次调度符合抢占规则,所述被测装置的抢占帧调度行为正常。In at least some embodiments, the verification of the preemption frame function may include: each time a low-priority scheduling feedback is monitored, querying the cache based on the physical port number of the scheduling feedback whether there is information about a high-priority scheduling request with the same physical port number. If there is, it means that the message queue of the high-priority port queue scheduling request is not scheduled according to the preemption rule, that is, the scheduling of the device under test violates the preemption rule, and the preemption frame scheduling behavior of the device under test is abnormal; if there is no, it means that the scheduling of the message queue of the high-priority port queue scheduling request meets the preemption rule, that is, the scheduling of the device under test meets the preemption rule, and the preemption frame scheduling behavior of the device under test is normal.
下面以一个示例来详细说明抢占帧功能的验证。The following uses an example to explain the verification of the preemption frame function in detail.
以图3为例,若出口调度模块为KD6630出口调度模块,则其需要支持802.1Qbu/802.3br抢占帧(Frame Preemption)功能。报文调度的逻辑端口可以分为EMAC端口(高优先级)和PMAC端口(低优先级),每一EMAC端口和PMAC端口的组合对应同一个物理端口。假设一物理端口标识为n,那么其对应的EMAC逻辑端口可标识为2n+1,其对应的PMAC逻辑端口可标识为2n。相应的,调度请求为端口队列调度请求,调度反馈为端口队列调度反馈。Taking Figure 3 as an example, if the export scheduling module is the KD6630 export scheduling module, it needs to support the 802.1Qbu/802.3br frame preemption function. The logical ports for message scheduling can be divided into EMAC ports (high priority) and PMAC ports (low priority). Each combination of EMAC port and PMAC port corresponds to the same physical port. Assuming that a physical port is identified as n, then its corresponding EMAC logical port can be identified as 2n+1, and its corresponding PMAC logical port can be identified as 2n. Accordingly, the scheduling request is a port queue scheduling request, and the scheduling feedback is a port queue scheduling feedback.
参见图3所示,可以按照报文调度的目的端口及其物理端口和优先级预先建立多个FIFO队列,每个FIFO队列对应一个报文调度的目的端口的端口号(包括物理端口标识和逻辑端口标识)和优先级的组合。步骤S120中,监测到一端口队列调度请求(高优先级端口队列调度请求或者低优先级端口队列调度请求)后,将其中的信息基于其报文所属端口号和优先级存入相应FIFO队列中。步骤S130中,每监测到一端口队列调度反馈,若该调度反馈的报文所属端口号指示其报文调度的目的端口为物理端口n的PMAC逻辑端口2n,则查询物理端口为n且逻辑端口为EMAC逻辑端口2n+1的FIFO队列是否为空,如果该FIFO队列不为空则说明缓存中仍存在高优先级端口队列调度请求(即物理端口为n且逻辑端口为EMAC逻辑端口2n+1的调度请求)的信息,可以确定被测装置的此次调度违背了EMAC可抢占同物理端口的PMAC调度时隙的抢占规则。如果物理端口为n且逻辑端口为EMAC逻辑端口2n+1的FIFO队列为空,则说明缓存中不存在高优先级端口队列调度请求(即物理端口为n且逻辑端口为EMAC逻辑端口2n+1的调度请求)的信息,此次调度符合EMAC可抢占同物理端口的PMAC调度时隙的抢占规则。As shown in FIG3 , multiple FIFO queues can be pre-established according to the destination port of the message scheduling and its physical port and priority, and each FIFO queue corresponds to a combination of the port number (including the physical port identifier and the logical port identifier) and the priority of the destination port of the message scheduling. In step S120, after a port queue scheduling request (a high priority port queue scheduling request or a low priority port queue scheduling request) is detected, the information therein is stored in the corresponding FIFO queue based on the port number and priority of the message. In step S130, each time a port queue scheduling feedback is detected, if the port number of the message to which the scheduling feedback belongs indicates that the destination port of the message scheduling is the PMAC logical port 2n of the physical port n, then it is queried whether the FIFO queue whose physical port is n and whose logical port is the EMAC logical port 2n+1 is empty. If the FIFO queue is not empty, it means that there is still information of the high priority port queue scheduling request (i.e., the scheduling request whose physical port is n and whose logical port is the EMAC logical port 2n+1) in the cache, and it can be determined that the scheduling of the device under test violates the preemption rule that the EMAC can preempt the PMAC scheduling time slot of the same physical port. If the FIFO queue whose physical port is n and whose logical port is EMAC logical port 2n+1 is empty, it means that there is no information of high-priority port queue scheduling request (i.e., scheduling request whose physical port is n and whose logical port is EMAC logical port 2n+1) in the cache, and this scheduling complies with the preemption rule that EMAC can preempt the PMAC scheduling time slot of the same physical port.
本申请实施例中,步骤S140之后,调度检测方法100还可以包括:步骤S150,验证被测装置的调度行为异常时,生成相应的错误信息。相应的,上述调度检测装置200还可以包括:提示模块250,可以配置为在验证模块240验证被测装置的调度行为异常时,生成相应的错误信息。本申请实施例中,通过错误信息可以实时记录被测装置调度行为的异常情况,便于用户(例如,芯片调试人员)查看被测装置的异常情况来及时修正被测装置的电路设计。In the embodiment of the present application, after step S140, the scheduling detection method 100 may further include: step S150, when verifying that the scheduling behavior of the device under test is abnormal, generating corresponding error information. Accordingly, the above-mentioned scheduling detection device 200 may further include: a prompt module 250, which can be configured to generate corresponding error information when the verification module 240 verifies that the scheduling behavior of the device under test is abnormal. In the embodiment of the present application, the abnormal situation of the scheduling behavior of the device under test can be recorded in real time through the error information, which is convenient for users (for example, chip debuggers) to check the abnormal situation of the device under test and correct the circuit design of the device under test in time.
这里,错误信息可以用于描述发生错误的调度行为及其错误类型。也即,所述错误信息可用于描述被测装置在哪个时刻的调度发生了何种错误。举例来说,错误信息中可以包含报文所属端口号、报文所属优先级、报文时戳信息,用户通过这些信息即可知晓被测装置的哪一次调度发生了错误。此外,该错误信息中还可以包括用于指示具体错误类型的信息。例如,假设被测装置的调度中发生了上述步骤S130中提到的多种调度规则的错误,该错误信息可以包括对应该多种调度规则中每个验证错误的错误码,如此,无需多次软件调试,用户(例如,调试人员)即可通过查看该错误信息全面了解DUT的系统级或子系统级的宏观调度行为是否存在错误、存在哪些错误,方便快捷,省时省力。Here, the error information can be used to describe the scheduling behavior in which the error occurred and its error type. That is, the error information can be used to describe what kind of error occurred in the scheduling of the device under test at which time. For example, the error information can include the port number to which the message belongs, the priority to which the message belongs, and the message timestamp information. The user can know which scheduling of the device under test has an error through this information. In addition, the error information can also include information for indicating the specific error type. For example, assuming that errors in the multiple scheduling rules mentioned in the above step S130 occur in the scheduling of the device under test, the error information can include an error code corresponding to each verification error in the multiple scheduling rules. In this way, without multiple software debugging, the user (for example, the debugger) can fully understand whether there are errors and what errors exist in the macro scheduling behavior of the system level or subsystem level of the DUT by viewing the error information, which is convenient, fast, time-saving and labor-saving.
一些实施例中,步骤S150中,生成错误信息之后,可以将错误信息写入预定文件中。由此,不仅可实时保存错误信息,而且可响应于用户(例如,调试人员)对该预定文件的操作来显示该预定文件中的错误信息,便于用户随时查看错误信息。当然,还可采用其他任何类似的方式来保存错误信息。In some embodiments, in step S150, after the error information is generated, the error information can be written into a predetermined file. Thus, not only can the error information be saved in real time, but also the error information in the predetermined file can be displayed in response to the operation of the user (e.g., a debugger) on the predetermined file, so that the user can check the error information at any time. Of course, any other similar method can also be used to save the error information.
图4是本申请实施例提供的一种计算设备400的结构性示意性图。该计算设备400包括:处理器410、存储器420、通信接口430、总线440。4 is a schematic structural diagram of a computing device 400 provided in an embodiment of the present application. The computing device 400 includes: a processor 410 , a memory 420 , a communication interface 430 , and a bus 440 .
应理解,图4所示的计算设备400中的通信接口430可以用于与其他设备之间进行通信。It should be understood that the communication interface 430 in the computing device 400 shown in FIG. 4 may be used to communicate with other devices.
其中,该处理器410可以与存储器420连接。该存储器420可以用于存储该程序代码和数据。因此,该存储器420可以是处理器410内部的存储单元,也可以是与处理器410独立的外部存储单元,还可以是包括处理器410内部的存储单元和与处理器410独立的外部存储单元的部件。The processor 410 may be connected to a memory 420. The memory 420 may be used to store the program code and data. Therefore, the memory 420 may be a storage unit inside the processor 410, or an external storage unit independent of the processor 410, or a component including a storage unit inside the processor 410 and an external storage unit independent of the processor 410.
可选的,计算设备400还可以包括总线440。其中,存储器420、通信接口430可以通过总线440与处理器410连接。总线440可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。所述总线440可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。Optionally, the computing device 400 may further include a bus 440. The memory 420 and the communication interface 430 may be connected to the processor 410 via the bus 440. The bus 440 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The bus 440 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, FIG. 4 is represented by only one line, but it does not mean that there is only one bus or one type of bus.
应理解,在本申请实施例中,该处理器410可以采用中央处理单元(centralprocessing unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器410采用一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。It should be understood that in the embodiment of the present application, the processor 410 may adopt a central processing unit (CPU). The processor may also be other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc. Alternatively, the processor 410 may adopt one or more integrated circuits to execute relevant programs to implement the technical solutions provided in the embodiment of the present application.
该存储器420可以包括只读存储器和随机存取存储器,并向处理器410提供指令和数据。处理器410的一部分还可以包括非易失性随机存取存储器。例如,处理器410还可以存储设备类型的信息。The memory 420 may include a read-only memory and a random access memory, and provides instructions and data to the processor 410. A portion of the processor 410 may also include a nonvolatile random access memory. For example, the processor 410 may also store information on the device type.
在计算设备400运行时,所述处理器410执行所述存储器420中的计算机执行指令执行上述调度检测方法的操作步骤。When the computing device 400 is running, the processor 410 executes the computer execution instructions in the memory 420 to perform the operation steps of the above-mentioned scheduling detection method.
应理解,根据本申请实施例的计算设备400可以对应于执行根据本申请各实施例的方法中的相应主体,并且计算设备400中的各个模块的上述和其它操作和/或功能分别为了实现本实施例各方法的相应流程,为了简洁,在此不再赘述。It should be understood that the computing device 400 according to the embodiment of the present application can correspond to the corresponding subject in the method according to each embodiment of the present application, and the above-mentioned and other operations and/or functions of each module in the computing device 400 are respectively for realizing the corresponding process of each method of the present embodiment, which will not be repeated here for the sake of brevity.
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行一种调度检测方法,该方法包括上述各个实施例所描述的方案中的至少之一。An embodiment of the present application also provides a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, it is used to execute a scheduling detection method, which includes at least one of the schemes described in the above embodiments.
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。The computer storage medium of the embodiment of the present application can adopt any combination of one or more computer-readable media. Computer-readable media can be computer-readable signal media or computer-readable storage media. Computer-readable storage media can be, for example, but not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or devices, or any combination of the above. More specific examples (non-exhaustive lists) of computer-readable storage media include: electrical connections with one or more wires, portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), optical fibers, portable compact disk read-only memories (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above. In this document, computer-readable storage media can be any tangible medium containing or storing programs, which can be used by instruction execution systems, devices or devices or used in combination with them.
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, which carry computer-readable program code. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。The program code embodied on the computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。Computer program code for performing the operation of the present application can be written in one or more programming languages or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (e.g., using an Internet service provider to connect through the Internet).
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,均属于本申请保护范畴。Note that the above are only preferred embodiments of the present application and the technical principles used. Those skilled in the art will understand that the present application is not limited to the specific embodiments described herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present application. Therefore, although the present application is described in more detail through the above embodiments, the present application is not limited to the above embodiments, and may also include more other equivalent embodiments without departing from the concept of the present application, all of which belong to the scope of protection of the present application.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011628604.2A CN112699626B (en) | 2020-12-31 | 2020-12-31 | Scheduling detection method and device, equipment and computer readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011628604.2A CN112699626B (en) | 2020-12-31 | 2020-12-31 | Scheduling detection method and device, equipment and computer readable storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112699626A CN112699626A (en) | 2021-04-23 |
CN112699626B true CN112699626B (en) | 2024-04-12 |
Family
ID=75513398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011628604.2A Active CN112699626B (en) | 2020-12-31 | 2020-12-31 | Scheduling detection method and device, equipment and computer readable storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112699626B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115389911B (en) * | 2022-08-25 | 2023-04-14 | 北京物芯科技有限责任公司 | Chip scheduler fault judgment method, device, electronic equipment and storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109951880A (en) * | 2019-03-15 | 2019-06-28 | 腾讯科技(深圳)有限公司 | Communication processing method, device, computer-readable medium and electronic equipment |
CN110515819A (en) * | 2019-08-27 | 2019-11-29 | 深圳市网心科技有限公司 | Performance testing method, electronic equipment, scheduling system and medium |
CN111131788A (en) * | 2019-12-27 | 2020-05-08 | 视联动力信息技术股份有限公司 | Monitoring resource state detection method and device and computer readable storage medium |
CN111240822A (en) * | 2020-01-15 | 2020-06-05 | 华为技术有限公司 | Task scheduling method, device, system and storage medium |
CN111781928A (en) * | 2020-06-30 | 2020-10-16 | 杭州海康机器人技术有限公司 | AGV access method, AGV access device, scheduling system, dispatching equipment and storage medium |
-
2020
- 2020-12-31 CN CN202011628604.2A patent/CN112699626B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109951880A (en) * | 2019-03-15 | 2019-06-28 | 腾讯科技(深圳)有限公司 | Communication processing method, device, computer-readable medium and electronic equipment |
CN110515819A (en) * | 2019-08-27 | 2019-11-29 | 深圳市网心科技有限公司 | Performance testing method, electronic equipment, scheduling system and medium |
CN111131788A (en) * | 2019-12-27 | 2020-05-08 | 视联动力信息技术股份有限公司 | Monitoring resource state detection method and device and computer readable storage medium |
CN111240822A (en) * | 2020-01-15 | 2020-06-05 | 华为技术有限公司 | Task scheduling method, device, system and storage medium |
CN111781928A (en) * | 2020-06-30 | 2020-10-16 | 杭州海康机器人技术有限公司 | AGV access method, AGV access device, scheduling system, dispatching equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN112699626A (en) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110221948B (en) | Test script generation method, test script generation device, computer device and storage medium | |
WO2021109767A1 (en) | Network device and method for reducing transmission delay therefor | |
US20090182798A1 (en) | Method and apparatus to improve the effectiveness of system logging | |
CN111796956A (en) | Distributed system fault diagnosis method, device, equipment and storage medium | |
CN105204968A (en) | Method and device for detecting fault memory | |
CN112699626B (en) | Scheduling detection method and device, equipment and computer readable storage medium | |
CN114840350A (en) | A system interaction method and system based on a unified management engine for task processing | |
US20190306074A1 (en) | Data packet management in a memory constrained environment | |
CN111949470A (en) | Chip verification method and device, electronic equipment and storage medium | |
CN114817110B (en) | Data transmission method and device | |
WO2023060978A1 (en) | Autosar software verification method and apparatus, device, and storage medium | |
US9678852B2 (en) | Tracing the operations of a data processing apparatus using trace data source identifiers to respond to flush requests | |
CN117873853B (en) | Data recording method, device, electronic equipment and medium | |
CN111813621B (en) | Data processing method, device, equipment and medium based on Flume data center | |
CN119105981A (en) | A multi-thread transmission device and method | |
CN113760989A (en) | Method, device and equipment for processing unbounded stream data and storage medium | |
CN113518074A (en) | Data message forwarding method, device, equipment and storage medium | |
CN116521496A (en) | Method, system, computer device and storage medium for verifying server performance | |
CN114024872B (en) | Voice semantic platform abnormality alarm method, device, storage medium and apparatus | |
CN115202949A (en) | A chip signal monitoring device, method, computer equipment and storage medium | |
US10846162B2 (en) | Secure forking of error telemetry data to independent processing units | |
CN114461350A (en) | Container usability testing method and device | |
CN106293536A (en) | input/output I/O dispatching method and device | |
CN115712493A (en) | Request processing method, device and system | |
CN111290897A (en) | Asynchronous storage test method, electronic device, computer equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |