Area parameter calculation method based on virtual prototype platform

By calculating and integrating operational operator parameters and BRAM parameters on the virtual prototype platform, the problem of the inability to effectively integrate area parameters in the early stage of SoC design in the existing technology is solved, and the accurate calculation and evaluation of area parameters are achieved, and design efficiency and product quality are improved.

CN120145952APending Publication Date: 2025-06-13GUANGDONG UNIV OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510229893.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-28
Publication Date
2025-06-13

AI Technical Summary

Technical Problem

The existing virtual prototype platform was unable to effectively integrate area parameters in the early stages of SoC design, resulting in the inability to accurately perform area optimization and evaluation.

Method used

By calculating operational operator parameters and BRAM parameters on the virtual prototype platform and integrating them into the virtual prototype platform, a method of calculating area parameters based on virtual prototype is provided. The method includes calculating operation operator parameters based on the number of operators that occur in the loop body, and calculating BRAM parameters based on the use of resources.

Benefits of technology

The accurate calculation and evaluation of area parameters in the early stage of SoC design is realized, providing the possibility of spatial exploration of area parameters in the early stage of design, and improving design efficiency and product quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120145952A_ABST
    Figure CN120145952A_ABST
Patent Text Reader

Abstract

The invention aims to provide an area parameter calculation method based on a virtual prototype platform. The method comprises the following steps: calculating operator parameters according to the number of operators appearing in a loop body; calculating BRAM parameters according to the use condition of the resources; and integrating the operator parameters and the BRAM parameters on a virtual prototype platform. According to the method, the vacancy of a virtual prototype platform on area parameter integration can be made up, the challenge that the area parameter cannot be calculated in the early stage of SoC design due to the vacancy is overcome, and the possibility of space exploration on the area parameter in the early stage of SoC design is provided.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of integrated circuit technology, and particularly to a method for calculating area parameters based on a virtual prototype platform. Background Art

[0002] In the context of the rapid development of modern computing technology, the complexity of SoC design is increasing day by day, and the market's requirement for the product launch speed is also getting higher and higher. Driven by Gordon Moore's prediction about technological progress, the complexity of SoCs continues to increase, and the performance requirements are also rising. In order to remain competitive in the fierce market competition, the design and development cycle of SoCs needs to be significantly shortened, while ensuring high performance and high reliability of the products. The traditional design process of hardware first and software later can no longer meet the needs of rapid iteration. Therefore, the electronic system level (ESL) design method has become a key technology to solve this problem. By building a virtual prototype in the early stage of the design process, the design team can achieve co-development of hardware and software. This method not only speeds up the design cycle of SoCs, but also enables more comprehensive parameter evaluation and verification in the early stage of design, greatly improving the design efficiency and product quality. The virtual prototype technology thus plays a crucial role in the field of SoC design, enabling designers to discover and solve potential problems before the actual manufacture of the product, effectively promoting the rapid development and innovation of SoC technology.

[0003] In electronic system design, power, performance, and area (PPA) optimization are key factors in integrated circuit and processor design. Area optimization is particularly important because it directly relates to manufacturing cost and chip implementability. Considering area parameters as early as possible in the design process can significantly reduce the need for late-stage modifications, thus saving time and cost. However, current virtual prototypes rarely integrate these parameters, especially area parameters.

[0004] Early integration of area parameters on a virtual prototype (VP) platform is crucial for exploring the space of different design options at the initial stage of design. This method can not only quickly identify and solve potential design problems during the development process, but also optimize the design to achieve higher resource efficiency and cost-effectiveness. By using the electronic system level (ESL) design method, designers can simulate and evaluate the impact of different hardware configurations on area, and how these configurations affect the overall PPA metrics. Integrating area-related parameters in the virtual prototype becomes particularly important. This integration can provide detailed insights into area efficiency in the early stage of the design process, helping the design team make more informed decisions. Therefore, exploring the addition of area parameters in the virtual prototype is not only possible, but also an important step in driving the development of electronic system design forward. Summary of the Invention

[0005] The object of the present invention is to provide a method for calculating area parameters based on a virtual prototype platform, which can make up for the gap in the integration of area parameters in the virtual prototype platform, overcome the challenge of being unable to calculate area parameters in the early stage of SoC design due to this gap, and provide the possibility of spatial exploration of area parameters in the early stage of SoC design.

[0006] A method for calculating area parameters based on a virtual prototype platform, comprising:

[0007] Calculating operator parameters according to the number of operators appearing in the loop body;

[0008] Calculating BRAM parameters according to the usage of resources;

[0009] Integrating the operator parameters and the BRAM parameters in the virtual prototype platform.

[0010] Preferably, the calculating operator parameters according to the number of operators appearing in the loop body includes:

[0011] Detecting the loop through the PC value, and counting the operands appearing in different loops;

[0012] Selecting the maximum value of the sum of operands in each single iteration of all different loops as the result of the operator.

[0013] Preferably, the calculating BRAM parameters according to the usage of resources includes:

[0014] Modeling the BRAM usage of the accessed component models, specifically including two components: the prediction table of the branch predictor and the data memory;

[0015] Using the following formula to calculate the total BRAM usage corresponding to the component access amount and adding the results:

[0016]

[0017] Where Bits Compoments refers to the access amount of different components, and Bits BRAM is the storage of one BRAM.

[0018] Preferably, the detecting the loop through the PC value and counting the operands appearing in different loops includes:

[0019] Defining a structure LoopTracker in the header file (iss.h) of the instruction simulator, where the structure includes functions Loop_Detect() and Calculate() and key parameters LoopPoints and PcHistory;

[0020] Among them, LoopPoints is a hash table that records the starting point of the loop and its corresponding PC position, and PcHistory is a stack;

[0021] The Loop_Detect() function includes two parameters, namely the pc value and the corresponding number of operands pcOperationsValue;

[0022] The Loop_Detect() function detects whether there is a record of the loop point for the current PC by checking if there is the same PC value in LoopPoints;

[0023] When the program execution encounters a certain PC position, the system checks whether the PC has already appeared in the history record. If so, it means that a loop has been formed.

[0024] Preferably, the step of selecting the maximum value of the sum of the operands in each single iteration of all different loops as the result of the operation operator includes:

[0025] Define in the C file of the instruction simulator to count different parameters of each operator;

[0026] Without distinguishing whether a certain pc is in a certain loop, perform statistics on the operands of the pc values of all instructions related to the operation operator. By passing the pc value and Num_Operator as parameters to the Loop_Detect(pc, pcOperationsValue) function in the LoopTracker structure;

[0027] The Calculate() function calculates the maximum number of operands of all different loops as the result of the parameters of the final operation operator.

[0028] Preferably, the step of modeling the BRAM usage for the accessed component specifically includes two components: the prediction table of the branch predictor and the data memory:

[0029] For branch prediction, when updating the table entries, count the number of accessed table entries through a set, and multiply the statistical value of the set by the corresponding table entry width to obtain the access amount to the branch predictor;

[0030] For the data memory, define a set. When the program executes to the load and store instructions, insert a count value into the set under the corresponding instructions;

[0031] For different data sizes, define three sets, set_byte, set_halfword, set_word;

[0032] Add the access amounts of the branch predictor and the data memory, and divide the total access amount by BitsBRAM That is, the number of consumed BRAM blocks is obtained.

[0033] An area parameter calculation system based on a virtual prototype platform, comprising:

[0034] An operation operator parameter calculation module, configured to calculate operation operator parameters according to the number of operators appearing in the loop body;

[0035] A BRAM parameter calculation module, configured to calculate BRAM parameters according to the usage of resources;

[0036] A parameter integration module, configured to integrate the operation operator parameters and the BRAM parameters on the virtual prototype platform.

[0037] An electronic device, comprising: a chip, a processor, and a memory, where the memory is used to store computer program code, and the computer program code includes computer instructions. When the chip executes the computer instructions, the electronic device executes an area parameter calculation method based on a virtual prototype platform.

[0038] A computer-readable storage medium stores a computer program, and the computer program includes program instructions. When the program instructions are executed by a processor of an electronic device, the processor is caused to execute an area parameter calculation method based on a virtual prototype platform.

[0039] The beneficial effects of the present invention are as follows: 1. The present invention defines a new area parameter based on a virtual prototype, providing the possibility for early area evaluation of an SoC; 2. The present invention defines and integrates two area parameters (operation operators and BRAM), with more diverse dimensions. Description of the Drawings

[0040] The drawings here are incorporated into the specification and form a part of the specification, indicating the embodiments that conform to the present invention and are used together with the specification to explain the principles of the present invention.

[0041] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, for those of ordinary skill in the art, other drawings can also be obtained based on these drawings without creative efforts.

[0042] Figure 1 It is a flowchart of the area parameter calculation method based on the virtual prototype platform of the present invention;

[0043] Figure 2 It is a schematic diagram of the pseudocode of the operation operator parameters of the present invention;

[0044] Figure 3 Schematic diagram of the hardware structure of an electronic device according to the present invention. Specific implementation manners

[0045] The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0046] It should be noted that all directional indications (such as up, down, left, right, front, back...) in the embodiments of the present invention are only used to explain the relative positional relationship and movement conditions between components in a specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indication will also change accordingly.

[0047] In addition, the descriptions involving "first", "second", etc. in the present invention are only for descriptive purposes, and cannot be understood as indicating or implying their relative importance or implicitly indicating the quantity of the indicated technical features. Thus, the features defined with "first" and "second" may explicitly or implicitly include at least one such feature. In addition, the technical solutions between various embodiments can be combined with each other, but it must be based on the fact that those of ordinary skill in the art can implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be considered that such a combination of technical solutions does not exist and is not within the protection scope required by the present invention.

[0048] Performing early integration of area parameters on a virtual prototype (VP) platform is crucial for exploring the space of different design options at the early stage of design. This method can not only quickly identify and solve potential design problems during the development process, but also optimize the design to achieve higher resource efficiency and cost-effectiveness. By using electronic system level (ESL) design methods, designers can simulate and evaluate the impact of different hardware configurations on area, and how these configurations affect the overall PPA metrics. Integrating area-related parameters in the virtual prototype becomes particularly important. This integration can provide detailed insights into area efficiency at the early stage of the design process, helping the design team make more informed decisions. Therefore, exploring the addition of area parameters in the virtual prototype is not only possible, but also an important step in driving the development of electronic system design forward.

[0049] The present invention defines a new virtual prototype-based area parameter, making it possible to perform area assessment for SoC at an early stage; the present invention defines and integrates two area parameters (operation operators and BRAMs), with more diverse dimensions.

[0050] Embodiment 1

[0051] Area parameter calculation method based on virtual prototype platform, referring to Figure 1 , including:

[0052] S100, calculate the operation operator parameters according to the number of operators in the loop body;

[0053] S200, calculate the BRAM parameters according to the resource usage;

[0054] S300, integrate the operation operator parameters and the BRAM parameters on the virtual prototype platform.

[0055] The purpose of the present invention is to make up for the gap in the integration of area parameters in the virtual prototype platform, overcome the challenge of being unable to calculate area parameters in the early stage of SoC design due to this gap, and provide the possibility of spatial exploration of area parameters in the early stage of SoC design.

[0056] Preferably, S100, calculating the operation operator parameters according to the number of operators in the loop body includes:

[0057] S110, detect the loop through the PC value, and count the operands appearing in different loops;

[0058] S120, select the maximum value of the sum of operands in each single iteration of all different loops as the result of the operation operator.

[0059] The operation operator parameters proposed by the present invention are essentially the statistics of the number of operators appearing in the loop body. To achieve the integration of this parameter in the virtual prototype, it is first necessary to detect the loop body of the input information flow. Specifically, the present invention detects the loop through the PC value, and counts the operands (the number of times instructions such as add, sub, mul appear) appearing in different loops. Since the access to components in multiple loop iterations is approximately the same, further the present invention only counts the total number of operands appearing in one iteration of different loops, and finally the present invention selects the maximum value of the sum of operands in each single iteration of all different loops as the result of the operation operator.

[0060] Preferably, S200, calculating the BRAM parameters according to the resource usage includes:

[0061] Model the BRAM usage for the components to be accessed, specifically including two components: the prediction table of the branch predictor and the data memory;

[0062] Use the following formula to calculate the total BRAM usage corresponding to the component access amount, and add the results:

[0063]

[0064] Among them, Bits Compoments refers to the access volume of different components. Bits BRAM is the storage of a piece of BRAM.

[0065] For the parameter design of BRAM, the present invention refers to the design method in FPGA. When performing resource estimation, local read / write operations consume BRAM resources. These resources are provided in the form of blocks, and each block in the present invention is defined to contain 18K bits of FPGA elements for data storage. In the design of the present invention, the present invention models the BRAM usage for relevant accessed component models, specifically including two components: the prediction table of the branch predictor and the data memory. Here, the present invention ignores the consideration of cache. The present invention uses the following formula to calculate the total BRAM usage corresponding to the component access volume and adds up the results:

[0066]

[0067] Among them, Bits Compoments refers to the access volume of different components. Bits BRAM is the storage of a piece of BRAM, which is defined as 18K bits of FPGA elements in the present invention.

[0068] Preferably, by detecting the loop through the PC value, the statistics of the operands appearing in different loops include:

[0069] Define a structure LoopTracker in the header file (iss.h) of the instruction simulator. The structure includes functions Loop_Detect() and Calculate(), as well as key parameters LoopPoints and PcHistory;

[0070] Among them, LoopPoints is a hash table that records the start point of the loop and its corresponding PC position, and PcHistory is a stack;

[0071] The Loop_Detect() function includes two parameters, namely the pc value and the corresponding number of operands pcOperationsValue;

[0072] The Loop_Detect() function detects whether there is a record of the loop point for the current PC by looking up whether there is the same PC value in LoopPoints;

[0073] When the program execution encounters a certain PC position, the system checks whether the PC has already appeared in the history record. If so, it means that a loop is formed.

[0074] Appendix Figure 2The pseudo-code for the operation operator parameters is shown. First, the present invention needs to define a structure LoopTracker in the header file (iss.h) of the instruction simulator. This structure includes functions such as Loop_Detect() and Calculate(), as well as key parameters such as LoopPoints and PcHistory. Among them, LoopPoints is a hash table that records the starting points of loops and their corresponding PC positions, and PcHistory is a stack. The Loop_Detect() function has two parameters, namely the pc value and the corresponding number of operands (pcOperationsValue). This function first detects whether there is a record of a loop point for the current PC by looking up whether there is the same PC value in LoopPoints. That is, when a certain PC position is encountered during the execution of the program, the system will check whether this PC has already appeared in the historical record. If so, it means that a loop has been formed. In addition, it also maintains the mapping of the count, starting point, and operands for each loop. In this way, the loop structure in the program can be effectively tracked, and the operands of the loop can be calculated.

[0075] In the C file of the instruction simulator (iss.cpp), different parameters of each operator (Num_Operator) are defined. Here, it does not distinguish whether a certain pc is in a certain loop, but instead performs the statistics of the operands for the pc values of all instructions related to the operation operator. The screening of this statistic is achieved by passing the pc value and Num_Operator as parameters to the Loop_Detect(pc, pcOperationsValue) function in the above-mentioned LoopTracker structure. The Calculate() function will calculate the maximum number of operands of all different loops, and this is used as the result of the final operation operator parameter.

[0076] Preferably, selecting the maximum value of the sum of the operands in each single iteration of all different loops as the result of the operation operator includes:

[0077] Define the different parameters of each operator in the C file of the instruction simulator;

[0078] Without distinguishing whether a certain pc is in a certain loop, perform the statistics of the operands for the pc values of all instructions related to the operation operator, and pass the pc value and Num_Operator as parameters to the Loop_Detect(pc, pcOperationsValue) function in the LoopTracker structure;

[0079] The Calculate() function calculates the maximum number of operands of all different loops as the result of the final operation operator parameter.

[0080] Preferably, model the BRAM usage for the accessed component models, specifically including two components: the prediction table of the branch predictor and the data memory, including:

[0081] For branch prediction, when updating the table entries, count the number of accessed table entries through a set, and multiply the statistical value of the set by the corresponding table entry width to obtain the access amount to the branch predictor;

[0082] For data memory, define a set. When the program executes load and store instructions, insert a count value into the set under the corresponding instructions;

[0083] For different data sizes, define three sets: set_byte, set_halfword, and set_word;

[0084] Add the access amounts of the branch predictor and the data memory, and divide the total access amount by Bits BRAM That is, obtain the corresponding number of consumed BRAM blocks.

[0085] Specifically, for branch prediction, when updating its table entries, the present invention counts the number of accessed table entries through a set, and multiplying the statistical value of the set by the corresponding table entry width can obtain the access amount to the branch predictor. For data memory, the present invention defines a set. When the program executes load and store instructions (LB, LBU, LH, LHU, LW, SB, SBU, SH, SHU, SW), the present invention inserts a count value into the set under the corresponding instructions. For different data sizes, three sets are defined: set_byte, set_halfword, and set_word. Taking set_byte as an example, it is for LB, LBU, SB, and SBU instructions, and the data types accessed by these instructions are byte (8 bits). Multiplying the set count of set_byte by 8 can obtain the corresponding access amount, and so on. Finally, add the access amounts of the branch predictor and the data memory, and divide the total access amount by Bits BRAM That is, obtain the corresponding number of consumed BRAM blocks.

[0086] Embodiment 2

[0087] An area parameter calculation system based on a virtual prototype platform, including:

[0088] An operation operator parameter calculation module for calculating operation operator parameters according to the number of operators appearing in the loop body;

[0089] A BRAM parameter calculation module for calculating BRAM parameters according to the usage of resources;

[0090] A parameter integration module is used to integrate arithmetic operator parameters and BRAM parameters on a virtual prototype platform.

[0091] Embodiment 3

[0092] An electronic device includes: a chip, a processor, and a memory. The memory is used to store computer program code, and the computer program code includes computer instructions. When the chip executes the computer instructions, the electronic device executes an area parameter calculation method based on a virtual prototype platform.

[0093] Reference Figure 3 , the electronic device 2 includes a processor 21, a memory 22, an input device 23, and an output device 24. The processor 21, the memory 22, the input device 23, and the output device 24 are coupled through a connector, and the connector includes various interfaces, transmission lines, or buses, etc., which are not limited in the embodiments of the present invention. It should be understood that in various embodiments of the present invention, coupling means being interconnected in a specific manner, including being directly connected or indirectly connected through other devices. For example, they can be connected through various interfaces, transmission lines, buses, etc.

[0094] The processor 21 can be one or more graphics processing units (GPUs). When the processor 21 is a single GPU, the GPU can be a single-core GPU or a multi-core GPU. Optionally, the processor 21 can be a processor group composed of multiple GPUs, and multiple processors are coupled to each other through one or more buses. Optionally, the processor can also be other types of processors, etc., which are not limited in the embodiments of the present invention.

[0095] The memory 22 can be used to store computer program instructions and various computer program codes including the program code for executing the solution of the present invention. Optionally, the memory includes, but is not limited to, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), or a compact disc read-only memory (CD-ROM), and the memory is used for relevant instructions and data.

[0096] The input device 23 is used to input data and / or signals, and the output device 24 is used to output data and / or signals. The output device 24 and the input device 23 can be independent devices or an integrated device.

[0097] Embodiment 4

[0098] A computer-readable storage medium stores a computer program, and the computer program includes program instructions. When the program instructions are executed by a processor of an electronic device, the processor is caused to execute a method for calculating area parameters based on a virtual prototype platform.

[0099] The present invention defines a new area parameter based on a virtual prototype, which makes it possible to perform area evaluation on an SoC in the early stage; the present invention defines and integrates two area parameters (operation operators and BRAMs), and the dimensions are more diverse.

[0100] The above are only specific embodiments of the present invention, which enable those skilled in the art to understand or implement the present invention. Various modifications to these embodiments will be obvious to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to these embodiments shown herein, but rather will be accorded the widest scope consistent with the principles and novel features claimed herein.

Claims

1. The area parameter calculation method based on the virtual prototype platform is characterized by: include: Calculate the operator parameters according to the number of operators appearing in the loop body; Calculate BRAM parameters based on resource usage; The operation operator parameters and the BRAM parameters are integrated on a virtual prototype platform.

2. The area parameter calculation method based on the virtual prototype platform according to claim 1 is characterized in that: The calculation of the operator parameters according to the number of operators appearing in the loop body includes: Detect loops through PC values ​​and count the number of operations that appear in different loops; The maximum value of the sum of operands in each single iteration of all different loops is selected as the result of the operation operator.

3. The area parameter calculation method based on the virtual prototype platform according to claim 1 is characterized in that: Calculating the BRAM parameters according to resource usage includes: Modeling BRAM usage for accessed components, specifically including the branch predictor table and data memory; Use the following formula to calculate the total BRAM usage corresponding to the number of component accesses and add the results: Bits Compoments Refers to the number of visits to different components, Bits BRAM A BRAM storage.

4. The area parameter calculation method based on the virtual prototype platform according to claim 2 is characterized in that: The detecting loop by PC value and counting the number of operations appearing in different loops include: A structure LoopTracker is defined in the header file (iss.h) of the instruction simulator, which includes Loop_Detect() and Calculate() functions as well as LoopPoints and PcHistory key parameters; Among them, LoopPoints is a hash table that records the loop starting point and its corresponding PC position, and PcHistory is a stack; The Loop_Detect() function includes two parameters, namely the pc value and the corresponding number of operations pcOperationsValue; The Loop_Detect() function detects whether the current PC has a loop point record by looking for the same PC value in LoopPoints; When a PC position is encountered during program execution, the system checks whether the PC has appeared in the history record. If so, it means a loop has been formed.

5. The area parameter calculation method based on the virtual prototype platform according to claim 2 is characterized in that: The step of selecting the maximum value of the sum of operands in each single iteration in all different loops as the result of the operation operator includes: Define different parameters of each statistical operator in the C file of the instruction simulator; Regardless of whether a certain pc is in a certain loop, the pc values ​​of all operator-related instructions are counted as operands, and the pc value and Num_Operator are passed as parameters to the Loop_Detect(pc,pcOperationsValue) function in the LoopTracker structure; The Calculate() function calculates the maximum number of operations of all different loops as the result of the final operator parameter.

6. The area parameter calculation method based on the virtual prototype platform according to claim 3 is characterized in that: The BRAM usage modeled for the accessed component specifically includes the prediction table of the branch predictor and the data memory. For branch prediction, when a table entry is updated, the number of table entries accessed is counted through a set, and the statistical value of the set multiplied by the corresponding table entry width is the number of visits to the branch predictor; For data memory, define a set. When the program executes the load and store instructions, insert a count value into the set under the corresponding instruction. For different data sizes, three sets are defined: set_byte, set_halfword, and set_word; Add the number of accesses to the branch predictor and data memory, and divide the total number of accesses by Bits BRAM That is, the corresponding number of consumed BRAM blocks is obtained.

7. The area parameter calculation system based on the virtual prototype platform is characterized by: include: An operator parameter calculation module is used to calculate the operator parameters according to the number of operators appearing in the loop body; A BRAM parameter calculation module, used to calculate BRAM parameters according to resource usage; A parameter integration module is used to integrate the operation operator parameters and the BRAM parameters on a virtual prototype platform.

8. An electronic device, characterized in that: include: A chip, a processor and a memory, wherein the memory is used to store computer program codes, wherein the computer program codes include computer instructions, and when the chip executes the computer instructions, the electronic device executes the area parameter calculation method based on the virtual prototype platform as described in any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, wherein the computer program includes program instructions. When the program instructions are executed by a processor of an electronic device, the processor executes the area parameter calculation method based on a virtual prototype platform according to any one of claims 1 to 6.