Design support device and method for selecting component or system
The design support device automates the component selection process by grouping and evaluating data, addressing the inefficiencies and variability in manual selection methods, enhancing efficiency and standardization.
Patent Information
- Application Number
- PCT/JP2024/020934
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-06-07
- Publication Date
- 2025-12-11
AI Technical Summary
The process of selecting critical components for a product is labor-intensive, requiring significant time and expertise, leading to variations in evaluation and judgment due to reliance on individual designer skills, and lacks efficiency and labor-saving measures.
A design support device and method that includes a storage for candidate part data, a control program, and functional units for grouping, evaluating, and generating evaluation items, reducing the number of steps and labor required for component selection.
The solution automates and streamlines the component selection process, reducing labor and standardizing the evaluation criteria, thereby minimizing variations and increasing efficiency.
Smart Images

Figure JP2024020934_11122025_PF_FP_ABST
Abstract
Description
Design support device and component or system selection method
[0001] The present invention relates to a design support device and a method for selecting a part or a system.
[0002] Conventionally, in the process of selecting key parts suited to a product's required specifications, a product designer selects key parts in the following manner, for example: (1) The designer collects information on candidate parts (hereinafter referred to as candidate parts) from multiple component manufacturers; (2) Based on the product's required specifications and the collected information, the designer compares, organizes, and analyzes the specification data of the multiple candidate parts, and evaluates the candidate parts; (3) Based on the evaluation results, the designer decides which candidate parts to use in the product.
[0003] The above-mentioned critical components are the core components of a product, such as SoC (System on a Chip) and MCU (Micro Controller Unit). A collection of components that provide a specific function is sometimes called a system. The selection of a critical system requires the same selection process as for critical components. However, to avoid complicating the explanation, in the following explanation, the term "system" will be omitted and the term "components" will be used.
[0004] Patent Document 1 states that "in the extraction of required specifications, a characteristic tree is constructed that classifies common characteristics and variable characteristics, and functional proposals and non-functional proposals based on characteristic analysis, the required items are evaluated, and a list of proposals for the requirements is output. In addition, multiple characteristic tree patterns are set in advance in a characteristic tree pattern table, and a characteristic tree is constructed by selecting a characteristic tree pattern from a specific tree pattern table, and the attributes of the characteristic items corresponding to the required items are evaluated and recommended points are presented."
[0005] Japanese Patent Application Laid-Open No. 2006-127397
[0006] The design engineer must spend a great deal of time on the above-mentioned selection process. There are three main reasons for this:
[0007] First, the selection of critical parts is a process in which the designer must grasp the details of the specifications and functions of the candidate parts, compare and examine them carefully, and then make a decision. As design materials for the selection, the designer may create a table (hereafter referred to as a specification comparison table) that compares the specifications of each candidate part, and compare and examine the details of the specifications. In addition, if the candidate parts are still under development by the parts manufacturer, the designer may contact the manufacturer multiple times to obtain detailed information.
[0008] Second, the selection of critical parts may involve the designer deriving the necessary conditions and constraints for the product's functionality from the product's required specifications and the specifications of candidate parts, and then analyzing, evaluating, and judging the candidate parts based on these conditions. This work requires the designer to have the logical and rational perspective and judgment skills of a seasoned engineer. By repeating the analysis, evaluation, and judgment cycle multiple times, the designer can resolve any unclear points and evaluate candidate parts that meet the above conditions. If the designer lacks experience or technical judgment, they will need to repeat the cycle again to improve their proficiency, resulting in significant duplication of work and rework. Furthermore, because the selection of critical parts was previously based on the skills and experience of the designer, labor-saving measures were not being implemented.
[0009] Third, to comply with product development process standards, it is necessary to compile and document the criteria and rationale for selecting critical components as design documents. Examples of standards include quality management standards such as ISO 9001 and IATF 16949, and functional safety standards such as IEC 61508 and ISO 26262. These design documents should clearly describe the evaluation criteria for candidate components (hereinafter referred to as evaluation criteria), the evaluation criteria for each candidate component, the specification information that serves as the basis for the evaluation, the overall evaluation, and the components that have been selected. These details can be summarized, for example, in a table. Creating these design documents also requires a significant amount of man-hours for designers.
[0010] As such, the selection of important parts is one factor that increases the man-hours required by designers for development, so reducing the labor required for this selection process is an issue.In addition, because the process is likely to reflect the individual intentions and judgments of designers, there can be variation in the evaluation and judgment of candidate parts.
[0011] The present invention has been made in view of the above circumstances, and has as its object to reduce the labor required for selecting important parts and the number of steps required for the selection work.
[0012] A design support device according to the present invention comprises a storage for storing data on candidate parts or candidate systems, a memory for storing a control program, and a processor for executing the control program, wherein the processor executes the control program to perform at least one of reading, writing, editing, deleting, saving, and moving the data; a first grouping unit for extracting sentences, words, and units from the data read from the storage, and grouping the extracted sentences into first groups based on the extracted sentences, the words, and the units; an evaluation item generation unit for extracting at least one sentence from the grouped sentences for each of the first groups, and generating first evaluation items by processing the extracted sentence and a sentence extracted from an evaluation item in a past decision table for the part or the system or a sample sentence of the evaluation item stored in the storage; and a weighting unit for determining a weight for each of the first evaluation items based on description information of the data stored in the storage, and generating the first evaluation item. a necessary condition extraction unit that extracts, from the data, necessary requirements for the design of the company's products or systems and conditions for the candidate parts or systems that satisfy the necessary requirements; a necessary condition reflection unit that generates second evaluation items that reflect the necessary requirements and the conditions by linking the necessary requirements and the conditions to first evaluation items that are highly relevant to the necessary requirements and the conditions and adding a statement equivalent to whether the conditions are satisfied to the content of the linked first evaluation items, and modifying the linked first evaluation items or adding new evaluation items; and a first deliverable generation unit that generates a first deliverable in the form of a table, relational database, list, matrix, or text that includes the candidate parts or candidate systems, the first evaluation items, the weights for the first evaluation items, the second evaluation items, and marks or words that indicate the second evaluation items.
[0013] According to the present invention, the work of selecting important components or important systems to be mounted on a product can be made labor-saving, and the number of steps required for the selection work can be reduced.
[0014] Problems, configurations, and effects other than those described above will become apparent from the following description of the embodiments.
[0015] FIG. 1 is a block diagram showing an example of the configuration of a design support device according to an embodiment of the present invention. FIG. 2 is a diagram showing example hardware configurations of a processor and memory according to an embodiment of the present invention, for each of different multi-core configurations. FIG. 3 is a flowchart explaining the overall control processing according to an embodiment of the present invention. FIG. 4 is a flowchart explaining details of steps S105 to S111, which are a portion of the control processing in FIG. 3. FIG. 5 is a flowchart explaining details of steps S111 to S130, which are a portion of the control processing in FIG. 3. FIG. 6 is a flowchart explaining details of steps S120 to S127, which are processing by an evaluation unit for a candidate part or candidate system according to an embodiment of the present invention. FIG. 7 is a diagram showing an example of a first deliverable according to an embodiment of the present invention. FIG. 8 is a diagram showing an example of a second deliverable according to an embodiment of the present invention. FIG. 9 is a diagram showing an example of a radar chart according to an embodiment of the present invention. FIG. 10 is a block diagram showing an example of the configuration of a design support system according to a modified embodiment of an embodiment of the present invention.
[0016] [Details of the Problems] First, the details of the problems in the conventional selection process will be described.
[0017] Patent Document 1 describes a mechanism that, when requirements for a system are input, constructs a characteristic tree that classifies common characteristics and variable characteristics, and functional and non-functional proposals through characteristic analysis, evaluates the requirements, and outputs a list of proposals for the requirements, as well as a mechanism that sets multiple characteristic tree patterns in a characteristic tree pattern table in advance, selects a characteristic tree pattern from a specific tree pattern table to construct a characteristic tree, evaluates the attributes of the characteristic items corresponding to the requirements, and presents recommended points.
[0018] Furthermore, Patent Document 1 describes a mechanism in which the degree of requirement, which is a lower-level attribute of the characteristic tree table, can be selected from mandatory, conditional, none, and suggestion.
[0019] Furthermore, Patent Document 1 describes a system that allows users to assign points to each item of lower-level attributes in the characteristic tree table, and to set weighting points for the classification, demand, and stability of lower-level attributes, and calculate recommended points.
[0020] However, the above-described mechanism described in Patent Document 1 is not a mechanism for parts selection work. Therefore, it may not be a fundamental solution to the large number of steps required for the selection work. There are three reasons for this, for example:
[0021] First, Patent Document 1 describes a mechanism for classifying requirement items down to a lower level through characteristic analysis, constructing a characteristic tree, and outputting a proposal list, but does not describe expanding the requirement items down to the part conditions under which the requirement items are met, and generating and evaluating requirement items for the parts. Furthermore, while Patent Document 1 describes a mechanism for selecting the requirement levels as described above, it does not describe the ability to similarly output requirement items and requirement levels broken down to the part requirement levels as a proposal list.
[0022] Second, the contents of the proposal list output by the technology of Patent Document 1 are based on the stored contents of the characteristic tree table and do not comprehensively describe the decision-making information necessary for component selection. As a result, the information described may be insufficient as design materials compiled in accordance with standards. Examples of the missing information include evaluation items specific to component selection, their weights and evaluations, and overall evaluation and selection decision results of the components.
[0023] Third, Patent Document 1 does not mention efficiency or labor savings in parts selection. For example, the recommendation points are used to calculate the degree of recommendation of characteristics that have an impact when required target characteristics are not input, and there is no mention of using them as evaluation indices for parts selection. Also, because weighting points can be set by the user, calculation of the recommendation points also requires user intervention. Furthermore, user involvement is suggested for inputting required items and inputting them into the request receiving means. The use of the Delphi method or the like as a means for determining whether required items are functional or non-functional similarly suggests user involvement.
[0024] [One embodiment] A design support system according to one embodiment of the present invention (hereinafter also referred to as this embodiment) is configured to solve the above-mentioned problems. In this specification and drawings, components having substantially the same functions or configurations are designated by the same reference numerals, and redundant explanations will be omitted.
[0025] 1 is a block diagram showing an example of the configuration of a design support device 100 according to an embodiment. Note that since the user of this design support device 100 is a designer, the designer will also be referred to as a user in the following description.
[0026] The design support device 100 has an internal configuration including an input / output interface 120, a processor 130, a memory 140, an internal storage 150, and a communication interface 160. These components are connected to each other via an internal bus 101 of the design support device 100.
[0027] The memory 140 stores a control program 145 of the design support device 100. The control program 145 includes various functional units (see FIGS. 3 to 6 described below) that are realized when the processor 130 executes the control program 145.
[0028] The internal storage 150 stores a component or system data file A151 and a component or system selection-dedicated database A152. The component or system selection-dedicated database A152 is a database that organizes and accumulates data generated by the control processing executed by the design support device 100. In the drawing, "component or system" is abbreviated as "component / system" and "database" is abbreviated as "DB." The same applies to other names in the drawing. In the following description, the component or system data file A151 is abbreviated as "data file A151," and the component or system selection-dedicated database A152 is abbreviated as "selection-dedicated database A152."
[0029] Furthermore, sample sentences for evaluation items and sample data 153 as samples of major items (hereinafter abbreviated as major items) of evaluation items are stored in the internal storage 150. This sample data may be organized and stored in a dedicated selection database A 152. The evaluation items and major items are part of the first deliverable shown in FIG. 7, which will be described later.
[0030] Furthermore, the design support device 100 is configured to have an input device 110 and a display device 115 outside the housing of the design support device 100. The input device 110 is connected to an input / output interface 120 via a communication cable 111. The display device 115 is connected to the input / output interface 120 via a communication cable 116. Therefore, the input device 110 and the display device 115 are each connected to the design support device 100 via the input / output interface 120.
[0031] The communication cable 111 is a data communication cable, such as a USB (Universal Serial Bus) cable, and the communication cable 116 is a video data communication cable, such as an HDMI (High-Definition Multimedia Interface) (registered trademark) cable.
[0032] Note that the portions of the communication cables 111 and 116 that extend outside the housing of the design support device 100 can be removed or replaced as desired. The communication cables 111 and 116 have connectors (not shown) for interconnecting the cables at the boundary between the inside and outside of the housing of the design support device 100. Similarly, the communication cable 171 (described later) that extends outside the housing of the design support device 100 can also be removed or replaced as desired. The boundary between the inside and outside of the housing of the design support device 100 also has a connector (not shown) for interconnecting the cables. Furthermore, the input device 110 and the display device 115 can be removed or replaced as desired. However, the input device 110 and the display device 115 may also be configured to be integrated with the housing of the design support device 100.
[0033] The input device 110 receives input from a user (not shown) of the design support device 100 to operate the design support device 100, input from the user to store data in the internal storage 150 or to operate stored data, etc. The input device 110 is, for example, a keyboard, a mouse, or operation buttons.
[0034] The display device 115 can display the status (standby / operating / running / stopped / error, etc.) of the design support device 100. The display device 115 can also display the contents of the data file A151, the status and contents of the selection-dedicated database A152, and data, results, or deliverables generated by the control processing of the design support device 100 (see FIGS. 7 to 9 described below). The display device 115 is, for example, a liquid crystal display.
[0035] The input device 110 and the display device 115 may be configured to have built-in sound output devices (not shown). In this case, the input device 110 can output an operation sound, for example, when it receives the above-mentioned input from the user. Similarly, the display device 115 can output a sound effect, for example, when the state of the design support device 100 being displayed transitions to another state or when the contents of the displayed data file A151 are changed. In addition, the display device 115 can output a sound effect when displaying data, results, or deliverables.
[0036] The control program 145 incorporates the contents of the control processing of the design support device 100 by function. Therefore, the control processing is executed by the processor 130 reading the control program 145 stored in the memory 140. This control processing includes control processing of the data file A151 and the selection-dedicated database A152. The control processing also includes control processing with the network via the communication interface 160, control processing of the external storage server 155 and the user terminal device 175, and control processing for collecting data on components or systems from the public web server 185 of the component or system manufacturer or vendor, as will be described later. Note that the control program 145 may be stored in the internal storage 150 except when the design support device 100 is executing a control processing, and the control program 145 may be loaded into the memory 140 each time the design support device 100 executes a control processing.
[0037] The processor 130 is, for example, a system on a chip (SoC) or a microcontroller unit (MCU). The processor 130 is not limited to a single processor, and may be configured using any of multi-core processors such as dual-core, triple-core, quad-core, and hexa-core processors as shown in FIG. 2 (described later).
[0038] The memory 140 is, for example, a non-volatile memory such as a static random access memory (SRAM) or a volatile memory such as a dynamic random access memory (DRAM).
[0039] The design support device 100 is connected to an in-house communication network 170 via a communication interface 160 and a communication cable 171. The communication cable 171 is, for example, a LAN (Local Area Network) cable. Note that the in-house communication network 170 is not limited to a LAN and may be a WAN (Wide Area Network).
[0040] The external storage server 155 and the user terminal device 175 are connected to an internal company communication network 170 via a communication cable 171. The internal company communication network 170 is connected to the Internet 180 via a communication cable 181. The communication cable 181 is, for example, a WAN cable.
[0041] Note that illustrations and descriptions of communication devices such as gateways, routers, and switches that are connected to or intervening between the internal communication network 170 and the Internet 180, as well as various application servers such as firewalls and DNS (Domain Name System), are omitted.
[0042] The external storage server 155 stores a component or system data file B156 and a component or system selection-dedicated database B157. The external storage server 155 is a storage that stores design documents and design information related to a company's own products or systems manufactured in-house. The term "company's products" as used here refers to products developed or sold under the company's own brand. In this embodiment, products for which any of the planning, development, manufacturing, or sales processes are outsourced will also be referred to as "company's products." The same applies to in-house systems. In the following description, the component or system data file B156 will be abbreviated as "data file B156," and the component or system selection-dedicated database B157 will be abbreviated as "selection-dedicated database B157."
[0043] The terms "parts," "products," and "systems" used in this specification will now be explained. First, products developed or manufactured by a company will be explained. The company refers to the company where the design support device 100 is installed or the company to which the user who uses the design support device 100 belongs.
[0044] (1) In-house Products or In-house Systems In-house products or in-house systems include those that were manufactured in the past and those that are currently being manufactured, that is, those that are currently being manufactured using data, results, or deliverables of the design support device 100. Examples of in-house products or in-house systems include an electronic control unit (ECU) for an advanced driver assistance system (ADAS) and an ECU for an electric vehicle (EV).
[0045] Next, we will explain about parts or systems that our company procures from external manufacturers, etc. The other companies are companies other than our own company.
[0046] (2) Components or Systems Components or systems include those that have been selected in the past and those that are currently being selected, that is, those that are currently being selected using the design support device 100. The above (1) in-house products or in-house manufactured systems and (2) components or systems include current components that are currently being evaluated using the design support device 100 and past components that are used as reference data.
[0047] Finally, there are decision tables and the like that are used in components or systems other than the component or system being evaluated.
[0048] (3) Decision tables for other parts or systems There is a common format for decision tables, regardless of whether the parts or systems being procured from other companies are similar to the company's own products. Therefore, decision tables for other parts or systems can be used as reference data for creating a decision table.
[0049] Returning to the explanation of Figure 1, data file B156, an example of data stored in the external storage server 155, is composed of a group of data files of design materials related to the company's products or systems. Design material data files include, for example, design documents, requirements specifications, development study reports for the company's products or systems, specification comparison tables comparing the functions and performance of candidate parts or systems, and electronic document files containing detailed specifications and functions of candidate parts or systems. Design material data files also include design materials related to other company's products or systems in the past, as well as past decision tables for parts or systems created or generated when selecting other candidate parts or systems in the past. Examples of electronic documents containing detailed specifications and functions include data sheets, hardware manuals, and operating instructions for candidate parts or systems. The decision table is a table that summarizes two or more candidate options, evaluations of the options, and the information used for the evaluation when a user makes a decision.
[0050] Data file A151, which is an example of data stored in the internal storage 150, is a data file group similar to the above-mentioned data file B156. The design support device 100 may periodically synchronize data file A151 with data file B156 and update them to match the newer file group. Furthermore, in order to reduce the capacity of the internal storage 150, data file A151 may be a copy of a partial file group required for selecting candidate parts or candidate systems from data file B156.
[0051] The user terminal device 175 enables a user to input and operate the design support device 100, display data and deliverables, and the like from outside the design support device 100, and is, for example, a laptop PC (Personal Computer) or smartphone used by a designer for work. The user terminal device 175 includes an input device (not shown) and a display device (not shown) therein. Therefore, by operating the user terminal device 175, a user can input predetermined operations and give instructions to the design support device 100. In addition, the user terminal device 175 can display results of control processing of the design support device 100 to the user.
[0052] When a user operates the design support device 100 using the user terminal device 175, communication between the user and the design support device 100 is established via the in-house communication network 170. When the user operates the design support device 100 using the input device 110 and the display device 115, the user can directly operate the design support device 100. In this way, the user may operate the design support device 100 directly on the same floor of the building where the design support device 100 is installed, or may operate the design support device 100 via the in-house communication network 170 at a location remote from the design support device 100.
[0053] The design support device 100 automatically or manually collects electronic materials, public information, etc., describing detailed specifications and functions of candidate parts or candidate systems from public web servers 185 of component or system manufacturers or vendors connected to the Internet 180. The design support device 100 then stores the collected materials, information, etc., as data file A 151 in the internal storage 150. Similarly, the design support device 100 stores the collected information as data file B 156 in the external storage server 155.
[0054] The design support device 100 may use AI (Artificial Intelligence) or an algorithm to automatically collect data such as electronic documents and public information on candidate parts or candidate systems without human intervention from terminals or servers connected to the in-house communication network 170 or the Internet 180. In this case, the design support device 100 may store the automatically collected documents, information, etc. in the internal storage 150 as data file A151 and in the external storage server 155 as data file B156.
[0055] The selection-dedicated database B157 is a database in which design data related to the company's products or systems is organized and stored. The selection-dedicated database B157 stores data on the company's past products or systems. The selection-dedicated database B157 also stores data on parts or systems that are currently or have been used in the company's products or systems. The selection-dedicated database B157 may also store the same data as the selection-dedicated database A152 in addition to the above data. In this case, the selection-dedicated database B157 synchronizes with the selection-dedicated database A152 and stores a copy of the data from database A152.
[0056] As described above, the design support device 100 can access the internal storage 150, and the data file A151 and selection-dedicated database A152 stored in the internal storage 150, through control processing executed by the processor 130 reading the control program 145 stored in the memory 140. Similarly, the design support device 100 can access the external storage server 155, and the data file B156 and selection-dedicated database B157 stored in the external storage server 155, via the communication interface 160, through control processing executed by the processor 130 reading the control program 145 stored in the memory 140.
[0057] A user of the design support device 100 can use the input device 110, the display device 115, or the user terminal device 175 to access the internal storage 150 and the data file A151 and the selection-dedicated database A152 stored in the internal storage 150 as needed. The user can then read, write, edit, delete, save, and move files and data in the data file A151 and the database A152 as needed.
[0058] Similarly, a user of the design support device 100 can use the input device 110, the display device 115, and the user terminal device 175 to access the external storage server 155 and the data file B156 and selection-dedicated database B157 stored in the external storage server 155 as needed. The user can then read, write, edit, delete, save, and move files and data in the data file B156 and the database B157 as needed.
[0059] However, from the viewpoint of information security, user access to database A 152 and database B 157 and user's ability to read, write, edit, delete, save, and move data within each database may be partially or completely restricted. Authorization for database access and operation may be granted to each user.
[0060] The above is the description of the configuration of the design support device 100.
[0061] <Explanation of Multi-Core Configuration of Processor> Next, the multi-core configuration of the processor 130 and memory 140 of the design support device 100 will be described.
[0062] 2 is a diagram showing examples of hardware configurations of the processor 130 and memory 140 for different multi-core configurations. The processor 130 is configured with multiple cores and an L2 cache, and the memory 140 is configured with an SRAM as main memory and a low-power double data rate (LPDDR) or double-data rate (DDR) memory. When the storage capacity of the control program 145 is large or when parallel processing is performed, the processor 130 distributes processing among the cores in the multi-core configuration to increase processing speed, or uses different cores depending on the data size of the program being executed.
[0063] 2 shows a dual-core example. The processor 130 with a dual-core configuration has two cores, a core 1 and a core 2.
[0064] 2 shows a quad-core example. The quad-core processor 130 has four cores, core 1 to core 4.
[0065] 2 shows a hexa-core example. The hexa-core processor 130 has six cores, core 1 to core 6.
[0066] 2 shows an example of an octa-core processor 130. The processor 130 has eight cores, core 1 to core 8.
[0067] The processor 130 shown in each of the above configuration examples has an L2 cache adjacent to each core. L2 cache is an abbreviation for LEVEL 2 cache memory, and is adjacent to the core and used as a data cache between cores.
[0068] The memory 140 may be configured solely with SRAM. To increase the storage capacity of the memory 140, an LPDDR or DDR is added as shown in the figure.
[0069] Next, examples of control processing executed by the design support device 100 will be described with reference to Figures 3 to 6. This control processing is executed by the design support device 100 in order to logically and rationally determine which candidate a user should adopt when there are two or more candidates for a core component or core system to be incorporated into a company's product or system.
[0070] <Example of Control Processing> Fig. 3 is a flowchart illustrating the overall control processing, in which steps S105 to S130 are partially omitted.
[0071] FIG. 4 is a flowchart for explaining in detail steps S105 to S111, which are part of the control process shown in FIG.
[0072] FIG. 5 is a flowchart illustrating in detail steps S111 to S130, which are part of the control process in FIG.
[0073] 6 is a flowchart illustrating in detail steps S120 to S127 of the candidate part or candidate system evaluation process. The control process of steps S120 to S127 is also a part of the control process of FIG.
[0074] In Figures 3 to 6, each process that is part of the control process executed by the processor 130 reading the control program 145 stored in the memory 140 may be represented by the name of the functional unit that executes each process.
[0075] As described above, the control processing of the design support device 100 is executed by the processor 130 reading the control program 145 stored in the memory 140. The individual contents constituting the control processing are incorporated into the control program 145 for each specific functional unit. The processing by each functional unit, which represents the detailed processing of the control processing of the design support device 100, is all part of the processing performed by the processor 130 in accordance with the control program 145 loaded into the memory 140. Therefore, processing by a certain functional unit may be described as being performed by the processor 130 using the memory 140.
[0076] First, in step S101, the processor 130 executes processing by the data processing execution unit. In the processing by the data processing execution unit, the processor 130 uses the memory 140 to access the internal storage 150 and the data file A151 or the selection-dedicated database A152 stored in the internal storage 150. Then, the processor 130 and the memory 140 execute at least one of the operations of reading, writing, editing, deleting, saving, and moving files or data from the data file A151 or the selection-dedicated database A152.
[0077] Furthermore, in processing by the data processing execution unit, the processor 130 uses the memory 140 to access the external storage server 155 and the data file B156 or selection-dedicated database B157 stored in the external storage server 155 via the communication interface 160 and the internal communication network 170. The processor 130 and the memory 140 then execute at least one of the operations of reading, writing, editing, deleting, saving, and moving files and data from the data file B156 or the selection-dedicated database B157.
[0078] Note that access by the processor 130 and memory 140 to the selection-dedicated database A 152 or the selection-dedicated database B 157, and any of the operations of reading, writing, editing, deleting, saving, and moving data in each database, are executed in parallel when any of the functional units shown in Figures 3 to 6 are executed. To avoid complicating the explanation, these explanations will be omitted in the following explanations of each functional unit.
[0079] Furthermore, in the processing by the data processing execution unit in step S101, the processor 130 uses the memory 140 to collect files and data of materials related to the candidate parts or candidate systems, and stores them as data file A151 in the internal storage 150. The files and data are collected, for example, from the external storage server 155, the user terminal device 175, or the public web server 185 of the manufacturer or vendor of the parts or system. The collected files and data may also be stored in the external storage server 155. In this case, the processor 130 stores the collected files and data in the external storage server 155 as data file B156.
[0080] The data processing execution unit also executes processing in step S 102. In the processing by the data processing execution unit in step S 102, the processor 130 reads the data of the data file A 151 or the data file B 156 into the memory 140.
[0081] Furthermore, in the processing by the data processing execution unit in step S102, the processor 130 uses the memory 140 to access the selection-dedicated database A152 and the database B157, extracts highly relevant data from data generated in past component or system selections, and reads the data into the memory 140. For example, the relevance of the data extracted by the data processing execution unit is calculated each time the extraction process is performed. Alternatively, information on the relevance may be stored in the selection-dedicated database A152 and the database B157 in advance, and data with a relevance higher than a threshold value may be extracted as highly relevant data.
[0082] In step S103, processing by the first grouping unit is executed. In the processing by the first grouping unit, processor 130 uses memory 140 to access data file A151, selection-dedicated database A152, data file B156, and selection-dedicated database B157. Processor 130 then extracts sentences, words, and units from the data related to the candidate parts or candidate systems read from the accessed databases, and groups the extracted sentences into a first group based on any of the extracted sentences, words, and units.
[0083] Data on candidate parts or systems is usually organized by description information. "By description information" refers to distinguishing between each source of information, such as past design documents, design specifications, and requirement specifications for other products or systems manufactured by the company, and decision tables created or generated in the past when selecting other candidate parts or systems. "By description information" also refers to distinguishing between each source of information, not only past documents but also design documents, design specifications, requirement specifications, data sheets, hardware manuals, operation manuals, and other information sources that detail the specifications and functions of the candidate parts or systems, as well as past documents. If the contents of the source of information are organized by file, "by description information" can also be referred to as "by file type."
[0084] The extraction process from the data by the first grouping unit is performed by first extracting from the data sorted by description information, sections where information relating to candidate parts or candidate systems is particularly collected. The sections where information is collected are, for example, overviews, objectives, conclusions, and specification tables (including requirement specification tables, design specification tables, control specification tables, and comparison specification tables) sorted by description information.
[0085] Next, the first grouping unit extracts paragraphs or blocks of text from the collected information, and then divides the text into sentences, words, and units. By extracting sentences, words, and units by the first grouping unit, a sentence A can be expressed, for example, by the following formula (1).
[0086]
[0087] In formula (1), the description information number is a number for identifying which description information sentence A is included in. The relevant location is identification information for identifying where sentence A is included in the description information (e.g., which page and line). Words 1 to 5, numerical values 1 and 2, and units 1 and 2 are words and units extracted in order from sentence A grouped by the first grouping unit. Note that words include subjects, nouns, verbs, adjectives, adjectival verbs, and adverbs, but do not include articles, conjunctions, particles, or punctuation marks. Specifically, units include DMIPS, FLOPS, Pixels / s, TOPS, MB, GB, °C, W, mm, and units, as shown in FIG. 7 . Also included are m, kg, N, J, Pa, K, V, A, Ω, F, l, and s. For example, when the phrase "50 TOPS" is extracted from sentence A, "50" is the numerical value and "TOPS" is the unit.
[0088] Let us now consider the case where the above sentence A is "By installing eight cores, it has a maximum application processing performance of 150k DMIPS." The first grouping unit can express sentence A using formula (1) as A(CN.1, p2 - L3) = {By installing eight cores, it has a maximum application processing performance of 150k DMIPS}. Words are divided into the smallest meaningful parts. Here, CN (Class Number) represents the classification number of the information file where sentence A is located, p represents the page where sentence A is located, and L represents the line where sentence A is located.
[0089] When multiple sentences are grouped by the first grouping unit, the grouped sentences also contain numerical information. However, because the numerical values themselves are not particularly important during the first grouping, the numerical values are often interpreted as degrees. However, the numerical values appear as evaluation information for the evaluation items of the second deliverable shown in Figures 8 and 9 (described below). For example, 100 kDMIPS represents the performance of an application core or real-time core, and 80 TOPS represents the performance of AI. Therefore, if sentence A shown in formula (1) containing a numerical value is temporarily stored in memory 140, for example, it is read from memory 140 when the second deliverable (described below) is generated, and the numerical portion is extracted.
[0090] When the first grouping unit represents sentences using formula (1), multiple sentences can be grouped based on the matching of words, units, partial matching, matching rate, etc. contained in each sentence. For example, if sentence A is as described above and sentence B is "A CPU core for applications has achieved reduced power consumption per computing performance," sentence A and sentence B are grouped together. The reason for this is that sentence A and sentence B are processed as one group due to the matching of the common words "application, core, performance" contained in sentence A and sentence B.
[0091] The types of cores in an SoC include application cores (referred to as A cores) and real-time cores (referred to as R cores). Therefore, it is better to distinguish between A cores and R cores in the grouping process.
[0092] The first grouping unit may prioritize groupings based on the description number, relevant section, word, and unit. For example, with regard to the description number, if it is detected that similar information is listed in multiple descriptions (for example, if the titles of the descriptions are similar), the first grouping unit prioritizes the description numbers. This is because, with regard to relevant sections, adjacent pieces of information often contain similar content. Also, with regard to words and units, even if the match rate between multiple sentences is low, if either the proper nouns or proper units partially match, the content is often similar.
[0093] This concludes the description of the processing by the first grouping unit in step S103.
[0094] In step S104, processing by the evaluation item generation unit is executed. In the processing by the evaluation item generation unit, processor 130 uses memory 140 to extract, for each first group formed by the processing by the first grouping unit in step S103, at least one sentence that has a strong characteristic in the first group from the sentences grouped and extracted. Processor 130 may also extract several sentences that have a strong characteristic in the first group.
[0095] The evaluation item generation unit then generates first evaluation items by processing the extracted statements and statements extracted from evaluation items in past decision tables of other components or systems stored as part of data file A151 and data file B156, or sample statements of evaluation items stored as sample data 153 in internal storage 150. If the selection-dedicated database A152 and database B157 contain data on evaluation items previously generated by design support device 100, processor 130 uses memory 140 to refer to the data and process the evaluation items. Furthermore, the evaluation item generation unit performs processing to extract and reference high-quality evaluation items using past decision tables of other components or systems. High-quality evaluation items are, for example, evaluation items created by experienced engineers.
[0096] A sentence with the strongest characteristics of a group is one whose content and the words and units contained therein have the strongest match rate, or the strongest degree of association or central word, among the grouped sentences. The match rate is as described in the control process of step S103.
[0097] The degree of association and central word can be determined by known text mining techniques (for example, http: / / www.ic.daito.ac.jp / ~mizutani / mining / collocation.html: searched May 10, 2024), and therefore will not be discussed in this specification. This known technique describes that if collocation is defined as the appearance of a "certain word" connected consecutively with a "specific word," then the "certain word" is the central word (node), and that collocation provides a clue to the association between words.
[0098] Sample statements for evaluation items include the following (1) to (12): (1) Main use (2) (Name of sample type) Sample availability date (or sales start date) (3) Mass production start date (or PPAP approval date) (4) Estimated price (or sales price) (5) (Part name or system sub-component name) performance (6) (Function name) compatibility (7) Security, safety (8) Type, number (9) Temperature, power, voltage, current, dimensions, size, specifications (10) Internal track record (11) Support level (12) Ease of maintenance
[0099] The main use of sample sentence (1) in the evaluation item is shown in Figures 7 and 8, which will be described later. PPAP (Production Part Approval Process) refers to the production part approval process. Support adequacy refers to the support system of the parts or system manufacturer.
[0100] Here, we will explain processing. Processing means converting the most distinctive sentences extracted from the group into expressions that conform to the evaluation items in the referenced decision table, samples, and evaluation items in previously generated data. Processing refers to the evaluation item generation unit adding at least one of the following processes (A) to (C).
[0101] (A) The evaluation item generation unit converts the sentence with the unit to a noun-ending sentence and discards the following sentences and phrases.
[0102] (B) The evaluation item generation unit adds a specific unit name to evaluation items related to performance, capacity, temperature, power, voltage, current, dimensions, specifications, and characteristics. It does nothing for items for which the unit cannot be found in the data.
[0103] (C) If the content of an evaluation item does not fall under (A) or (B) above, and is a noun that does not fall under, for example, degree, level, or schedule, the evaluation item generation unit determines that the item is an evaluation item that asks whether or not it exists, and performs processing to add [Y / N] after the noun. [Y / N] means YES or NO.
[0104] A supplementary explanation regarding (A) is provided. The content of the evaluation items belonging to the major category "Price, Schedule, etc." in Figures 7 and 8 (described later) is often provided by manufacturers in the form of charts or other information, so users must read the content of the evaluation items from charts or other information. Therefore, evaluation items belonging to other major categories often fall under the processing of (A).
[0105] Regarding (B), in FIG. 7 described later, for example, the evaluation items belonging to the major category "performance and functionality" are GPU performance [FLOPS] and ISP performance [Pixels / s]. Also, the evaluation items belonging to the major category "hardware requirements" are operating temperature [°C] and power consumption [W].
[0106] Regarding (C), the following explanation is provided. In FIG. 7, which will be described later, this corresponds to the evaluation items Hardware Security Module [Y / N] and OTA (Over The Air) compatibility [Y / N], which are evaluation items belonging to the major category "Performance / Function." Also, this corresponds to the evaluation item Internal performance [Y / N], which is evaluation item belonging to the major category "Other / Non-functional requirements."
[0107] In addition, processing may be a process in which the evaluation item generation unit performs at least one of the processes (A) to (C) above, and then connects some sentences or nouns extracted from the group with sentences or nouns extracted from the evaluation items of the above decision table, sample, or past generation data referenced by the evaluation item generation unit.
[0108] After the above processing, the first evaluation item generated by the evaluation item generation unit may have similar content to the evaluation items in the referenced decision table, sample, or past generated data. In this case, the evaluation item referenced by the evaluation item generation unit may be processed to be generated as the first evaluation item.
[0109] In step S105, the weight determination unit executes a process. In the process by the weight determination unit, the processor 130 determines a weight for each of the first evaluation items using the memory 140. The processor 130 determines the weight for each type of file contained in the data file A151 and the data file B156. This description information is data read from the internal storage 150 or the external storage server 155. If the selection-dedicated database A152 and the database B157 contain data on evaluation items and weights previously generated by the design support system 100, the processor 130 also references this data using the memory 140 to determine the weight. The weight determination unit then determines the weight for the first evaluation item using the determined weight, for example, by using the averaging method or the multiplication method. The weight determination for each type of description information is as described in the control process of step S103.
[0110] There are four methods for determining weights, for example, the simple average method, the weighted average method, the multiplication method, and the weighted multiplication method. It is preferable that the user be able to select and change any of the methods as appropriate in the settings of the design support system 100. However, it is also possible to set the weighted average method as the initial setting, and not have the user be involved in selecting and changing the weight determination method.
[0111] The simple average method can be expressed by the following equation (2).
[0112]
[0113] In formula (2), W i is the weight of the evaluation item, i is the number assigned to each evaluation item, A to E are the types of information written, W A ~W E is the weight for each described information, and n is the number of types of described information (for example, if there are five types of described information, A to E, n=5).
[0114] The types of information described can be expressed, for example, as follows: A is a decision table for another past candidate part or candidate system. B is a data sheet for the candidate part or candidate system. C is a manual for the candidate part or candidate system. D is a requirements specification for the company's own product or system in which the candidate part or candidate system is to be incorporated. E is a review report for the company's own product or system in which the candidate part or candidate system is to be incorporated.
[0115] Furthermore, if other data files (for example, specification comparison tables, design documents, etc.) related to the candidate parts or candidate systems exist in the data file A151 and the data file B156, the weight determination unit performs processing to add the type of description information as a type E or later (for example, F). By adding the type of description information E or later in this way, the weight determined by the weight determination unit is i This can further improve the calculation accuracy.
[0116] Furthermore, data on evaluation items and weights previously generated by the design support device 100 may be stored in the selection dedicated database A 152 and the database B 157, and the past evaluation items may be similar to the first evaluation item. In this case, the weight determination unit may refer to such data and perform processing to add them as types of description information after E. i and the value of W A ~W E The value of W can be determined as a value equal to or greater than 0, including a decimal point. In this embodiment, the weight determination unit determines W as a value in the range of 1.0 to 5.0. i and the value of W A ~W EAlso, taking into consideration the significant figures at the time of calculation by the weight determination unit, the value of W i may be rounded to an integer.
[0117] The weighted average method can be expressed by the following equation (3).
[0118]
[0119] In formula (3), a to e are weighting coefficients for each described information, and each is a value between 0 and 1.0. However, the weighting coefficients for each described information are set to values as expressed by the following formula (4). W in formula (3) i , W A ~W E , n are as explained in equation (2).
[0120] The numerical values a to e in formula (4) may be set and changed as appropriate by the user, or may be determined automatically by the processor 130. "Automatically" means, for example, that the weight determination unit assigns a weight coefficient to each piece of described information based on the quality and quantity of the information for each piece of described information and the degree of relevance with the evaluation items.
[0121] The multiplication method can be expressed by the following equation (5). i , W A ~W E , n are as explained in equation (2).
[0122]
[0123] The weighted multiplication method can be expressed by the following equation (6).
[0124]
[0125] In equation (6), W i , W A ~W E , n, and a to e are as explained in formula (2) and formula (3). However, unlike formula (3), a to e in formula (6) are numerical values greater than or equal to 0 and less than or equal to 2.0, and do not satisfy the relationship in formula (4).
[0126] Next, the weight determination unit determines the weight W for each piece of written information in the same manner as in the explanation of formula (2). A ~W E An example of determining the weight W will be described below. A ~W E is determined to be, for example, a value in the range of 1.0 to 5.0.
[0127] W A Regarding the first evaluation item generated by the evaluation item generation unit in step S104, the weight determination unit extracts weights for similar evaluation items from the past decision table. Then, the weight determination unit sets the extracted weight value as W A is determined as the value of
[0128] W B and W C The weight determining unit determines the value of , for example, based on the following conditions (1) to (5).
[0129] (1) If the content is related to the first evaluation item and the written information includes units related to performance or reaction speed, increase the value (for example, to about 4.0).
[0130] (2) For content related to the first evaluation item, among the grouped sentences generated by the processing by the evaluation item generation unit in step S104, if the number of sentences or amount of information (number of words and units, number of characters) is large, the value will be increased (for example, about 4.0).
[0131] (3) The content related to the first evaluation item is given a larger value the earlier it is described in the summary of the information, and the later it is described, the smaller the value (for example, 2.0 to 4.0).
[0132] (4) If the content is related to the first evaluation item and the description contains words including registered trademark marks, the value will be set to a medium level (for example, 3.0 to 4.0) because the description conforms to the de facto standard.
[0133] (5) If the written information does not contain any content related to the first evaluation item, set a lower value (e.g., 1.0 to 2.0).
[0134] W D and WE The value of is determined based on, for example, (1), (2A), (3A), (4A), and (5). Here, (1) and (5) have the same conditions as those described above, but (2A), (3A), and (4A) have different conditions. The conditions of (2A), (3A), and (4A) are explained below.
[0135] (2A) If the content is related to the first evaluation item and the description information includes a description of requirements or demands for the candidate part or candidate system, increase the value (for example, 4.0 to 4.5).
[0136] (3A) The content related to the first evaluation item is given a larger value the higher it is listed in the table of written information, and a smaller value the lower it is listed (e.g., 2.0 to 4.0).
[0137] (4A) If the written information includes a table comparing the performance, characteristics, and specifications of the candidate parts or systems, and the table items and the text before and after the table (for example, within a few pages of the written information file) contain content related to the first evaluation item, the value should be large (for example, 4.5 to 5.0); if not, the value should be medium (for example, 3.0 to 4.0). The reason for the large value is that these contents are likely to be important requirements or demands for the candidate parts or systems.
[0138] This concludes the explanation of the weight determination unit in step S105.
[0139] The control process of steps S106 to S111 will be described with reference to FIG.
[0140] In step S106, the processor 130 uses the memory 140 to determine whether at least one specific content is included in the data of the description information files related to the candidate parts or systems included in each of the data file A 151 and the data file B 156. The specific content may be, for example, content related to performance, processing speed, communication speed, safety function, functional safety level, reliability function, security function, AI, machine learning, or deep learning.
[0141] If the processor 130 determines that the above content is included (step S106: YES), the process proceeds to processing by the weight increase determination unit in step S107. On the other hand, if the processor 130 determines that the above content is not included (step S106: NO), the process proceeds to processing by the necessary condition extraction unit in step S108.
[0142] In step S107, processing by the weight increase determination unit is executed. In the processing by the weight increase determination unit, processor 130 uses memory 140 to verify whether the data in the description information files for the candidate parts or candidate systems contained in data file A151 and data file B156 contains content related to the first evaluation item. Furthermore, processor 130 verifies whether the data in the description information files contains at least one of the following: performance, processing speed, communication speed, safety function, functional safety level, reliability function, security function, AI, machine learning, and deep learning. If at least one of the above content items is included, processor 130 increases the weight assigned to each description information item compared to when the above content items are not included.
[0143] The weight determined for each piece of written information is, for example, W A ~W E In the process by the weight determining unit in step S105, when the weighted average method or the weighted multiplication method is used, the weight coefficients a to e for each described information may be set to larger values.
[0144] In step S108, the essential condition extraction unit executes processing. In the essential condition extraction unit processing, processor 130 uses memory 140 to refer to the data in the description information files for the candidate parts or candidate systems contained in data file A 151 and data file B 156. Processor 130 then extracts, from the data, essential requirements for the design of the company's products or systems and the conditions (referred to as essential conditions) for the candidate parts or candidate systems that satisfy these essential requirements.
[0145] Essential requirements refer to the requirements for the functioning of the product or system developed by the user (such as customer requirements). On the other hand, essential conditions are the conditions that the candidate parts or candidate systems adopted by the user must satisfy in order to satisfy essential requirements, specifically specifications, performance values, and their thresholds. Therefore, essential requirements are a higher-level concept, while essential conditions are a lower-level concept.
[0146] For example, the company's product is a centralized electronic control unit (ECU) to be installed inside an automobile. For example, suppose that a requirements specification file for the development of the company's product contains a description of one of the product design requirements: "If a failure occurs during autonomous driving, the failure must be detected within 50 ms and the system must transition to fail-safe operation." In this case, a candidate component is an SoC. Suppose that a review report file for the development of the company's product contains a description of the condition for satisfying this requirement: "The performance of the SoC's real-time core must be 100 kDMIPS (kilo Dhrystone Million Instructions Per Second) or higher." The process by the essential condition extraction unit in step S108 extracts such product design requirements and the conditions for satisfying the essential requirements.
[0147] In step S109, the processor 130 uses the memory 140 to determine whether or not the essential requirements extracted by the processing by the essential condition extraction unit in step S108 include numerical values or threshold values. If the processor 130 determines that the extracted essential requirements include numerical values or threshold values (step S109: YES), the process proceeds to processing by the numerical condition incorporation unit in step S110. On the other hand, if the processor 130 determines that the extracted essential requirements do not include numerical values or threshold values (step S109: NO), the process proceeds to processing by the essential condition reflection unit in step S111.
[0148] In the example shown in the explanation of the processing by the essential condition extraction unit in step S108, the essential condition includes a threshold of 50 ms or less, so the process transitions to processing by the numerical condition incorporation unit in step S110. In this example, the essential condition includes a threshold, but possible upper and lower limits, boundary values, dimensional values, specifications, design values, numbers, time, etc. may also be included as limit values or numerical values.
[0149] In step S110, processing by the numerical condition incorporation unit is executed. In the processing by the numerical condition incorporation unit, processor 130 uses memory 140 to incorporate numerical values or threshold values into the conditions for the candidate parts or candidate systems for satisfying the essential requirements extracted by the processing by the essential condition extraction unit in step S108. These conditions may already include numerical values or threshold values at the extraction stage. However, if they do not include numerical values or threshold values, processor 130 performs additional processing to match the essential requirements with data in the description information file and determine numerical values or threshold values for satisfying the essential requirements. The data in the description information file is, for example, data listed in a data sheet for the candidate parts or candidate systems.
[0150] In step S111, the essential condition reflecting unit executes processing. In the processing by the essential condition reflecting unit, the processor 130 uses the memory 140 to link the essential requirements and the conditions of the candidate components or candidate systems to a first evaluation item that is highly relevant to the essential requirements and the conditions. The processor 130 then adds a statement indicating whether the above conditions are satisfied to the content of the sentence of the linked first evaluation item, thereby modifying the linked first evaluation item or adding a new evaluation item. Through this processing, the processor 130 generates a second evaluation item that reflects the essential requirements and the above conditions. For example, in the example described in the processing by the essential condition extracting unit in step S108, if the first evaluation item is "real-time core performance," the second evaluation item generated by the processor 130 would be "whether the real-time core performance satisfies 100 kDMIPS" (see FIG. 7, described later).
[0151] Next, the control processing of steps S112 to S130 will be described with reference to Fig. 5. The "evaluation items" described in the following steps S112 to S118 all represent the first and second evaluation items. Note that when the evaluation items are classified by the control processing of steps S112 to S118, the first and second evaluation items are both classified under the main items, as shown in Figs. 7 to 9.
[0152] In step S112, the processor 130 determines whether or not to classify the evaluation items using the memory 140. If the processor 130 determines that the evaluation items should be classified (step S112: YES), the process proceeds to control processing in step S113. On the other hand, if the processor 130 determines that the evaluation items should not be classified (step S112: NO), the process proceeds to processing by the first deliverable generation unit in step S119.
[0153] The processor 130 determines whether to classify the evaluation items based on, for example, the result of the next selection "Classify / Do not classify evaluation items" made by the user through initial settings or pre-settings of the design support device 100. Alternatively, the determination of whether to classify the evaluation items may be made based on the result of the selection "(same as the above selection)" input by the user using the input device 110 or the user terminal device 175 when the control processing by the processor 130 reaches step S112. The choice of which selection to make depends on whether it is desired to organize the details of the decisions and grounds made by the design support device 100 in the selection of candidate parts or candidate systems and generate them as visually easy-to-understand deliverable materials.
[0154] For example, in order to comply with the product development process standards mentioned in the third section of [Problem to be Solved by the Invention], it is better to select "Classify Evaluation Items" and classify the evaluation items into major categories. Furthermore, when generating deliverables (described later), if a radar chart (see Figure 10 below) is also generated with the major categories as the evaluation axis, the deliverables will be visually easier to understand.
[0155] The user may select "Do not classify evaluation items" when there is no need to keep them as strict deliverable documents or when the user wants to know the selection results more quickly by omitting some of the control processing of the design support device 100. When the user selects "Do not classify evaluation items," the columns of major items and the rows of subtotals are removed from Figures 8 and 9, but the evaluation items, item numbers, weights, etc. remain the same, and a table or data is output.
[0156] In step S113, the processor 130 uses the memory 140 to determine whether the evaluation item is new. If the processor 130 determines that the evaluation item is new (step S113: YES), the process proceeds to control processing in step S115. On the other hand, if the processor 130 determines that the evaluation item is not new (step S113: NO), the process proceeds to control processing in step S114. This determination is made to determine that the evaluation item is new if it is a first evaluation item generated by the processing by the evaluation item generation unit in step S104 or a second evaluation item generated by the processing by the essential condition reflection unit in step S111, and does not fall under any of the following evaluation items: the following evaluation items are, for example, evaluation items previously generated by the control processing of the design support device 100, evaluation items listed in a decision table for another component or system, or evaluation items stored as sample data 153 in the internal storage 150 of the design support device 100.
[0157] In step S114, the processor 130 classifies the evaluation items based on existing data using the memory 140. The existing data includes past decision tables for other parts or systems stored as part of the data file A 151 and the data file B 156, and samples of the evaluation items and major items stored in the sample data 153. The existing data also includes data on evaluation items previously generated by the design support system 100 and stored in the selection-dedicated database A 152 and the database B 157.
[0158] In the process of classifying evaluation items, processor 130 extracts from existing data evaluation items that have substantially the same content as the first evaluation item generated by the evaluation item generation unit in step S104 and the second evaluation item generated by the essential condition reflection unit in step S111. Furthermore, processor 130 extracts the major categories of the extracted evaluation items and the hierarchical relationships between the evaluation items and the major categories. The reason for regarding the evaluation items as having substantially the same content is that they can be considered to have the same content even if the sentences in the evaluation items have different articles, conjunctions, conjunctions, or punctuation.
[0159] Whether or not evaluation items have the same content can be determined by the degree of match between the sentences of the evaluation items; for example, if there is a match rate of about 90%, it is determined that the content is almost the same. If existing data contains evaluation items and their sub-items, it is easy to extract the hierarchical relationships. This is because they are organized in database format, table format, list format, tree format, etc.
[0160] Next, processor 130 uses memory 140 to classify the extracted major items into major items of the first evaluation item and the second evaluation item based on the first evaluation item, the second evaluation item, the evaluation items and major items extracted by processor 130, and the hierarchical relationship between the evaluation items and major items. Furthermore, processor 130 classifies the first evaluation item and the second evaluation item into those major items.
[0161] The second evaluation items are generated based on the first evaluation items through processing by the essential condition reflection unit in step S111. Therefore, the processor 130 processes the major items of the second evaluation items so as to classify them into the same major items as the first evaluation items that served as the basis for the second evaluation items. Examples of sample major items for evaluation items include price, schedule, functionality, security, maintenance, hardware requirements, software requirements, interface, non-functional requirements, and others. Furthermore, the samples of major items may be enriched with names of components and systems that are expected to be used in different fields, names of subsystems that make up the systems, and the like.
[0162] In step S115, processing by the second grouping unit is executed. In processing by the second grouping unit, the processor 130 uses the memory 140 to extract words and units contained in the first evaluation item and the second evaluation item. Then, the processor 130 groups the first evaluation item and the second evaluation item into a second group based on either the first evaluation item, the second evaluation item, or the extracted words and units. The evaluation items can be roughly grouped using the names of the units contained in the evaluation items. For example, the evaluation items can be grouped to a certain extent using only the units, without assigning major item names to any of groups such as schedule, price, performance, function, part, maintenance, hardware requirements, software requirements, safety, security, non-functional requirements, etc.
[0163] Furthermore, the second grouping unit can improve the accuracy of grouping by matching words contained in the evaluation items with units. As mentioned above, since the second evaluation items are generated based on the first evaluation items, the second evaluation items are classified into the same group as the first evaluation items that were the basis for them. Separately, because price depends on the schedule, a process is added to group evaluation items related to schedule and evaluation items related to price in the same group. Furthermore, grouping the use and price of a component or system in the same group improves visualization when generating deliverables, so this process is also added.
[0164] In step S116, the major heading name determination unit executes processing. In the processing by the major heading name determination unit, the processor 130 uses the memory 140 to determine, for each second group formed by the second grouping unit in step S115, a superordinate term of a word included in the first evaluation item and the second evaluation item in the second group. The processor 130 then determines one or two words with a high frequency of superordinate terms as the major heading name.
[0165] The design support device 100 determines the superordinate term of the word by using a publicly known technique such as a web service on the Internet 180 via the communication interface 160 and the internal communication network 170. The major category names determined by the major category name determination unit in step S116 are, for example, price / schedule, performance / function, memory, and external interface shown in FIG.
[0166] In step S117, the evaluation item classification unit executes processing. In the processing by the evaluation item classification unit, processor 130 uses memory 140 to classify, for each second group formed by the processing by the second grouping unit in step S115, the first evaluation items and second evaluation items in the second group into major items corresponding to the major item names determined by the processing by the major item name determination unit in step S116.
[0167] In step S118, the processor 130 uses the memory 140 to determine whether classification of all evaluation items has been completed. If the processor 130 determines that classification of all evaluation items has been completed (step S118: YES), the process proceeds to processing by the first deliverable generation unit in step S119. On the other hand, if the processor 130 determines that classification of all evaluation items has not been completed (step S118: NO), the process proceeds to processing by the second grouping unit in step S115. "All evaluation items" refers to all evaluation items, including the first evaluation items generated by the processing by the evaluation item generation unit in step S104 and the second evaluation items generated by the processing by the essential condition reflection unit in step S111. However, this does not include first evaluation items previously generated by the processing by the evaluation item generation unit in step S104 or second evaluation items previously generated by the processing by the essential condition reflection unit in step S111.
[0168] Furthermore, among the evaluation items generated by the processing by the evaluation item generation unit in step S104, processor 130 automatically excludes, using memory 140, evaluation items that are invalid in terms of sentences, words, grammar, etc. and therefore do not make sense as evaluation items, as well as evaluation items that resulted in a generation error. Therefore, automatically excluded evaluation items are not included in "all evaluation items." In the control processing of step S114, if a major item of the evaluation items is missing from the existing data, the missing major item can be supplemented by transitioning from the control processing of step S118 to the control processing of step S115.
[0169] In step S119, a first deliverable generation unit executes processing. In the processing by the first deliverable generation unit, processor 130 uses memory 140 to generate a first deliverable that includes candidate parts or candidate systems, first evaluation items, weights for the first evaluation items, second evaluation items, and marks or words indicating the second evaluation items in any one of the following formats: a table, a relational database, a list, a matrix, or text.
[0170] Here, the first deliverable will be described.
[0171] 7 is a diagram showing an example of a first deliverable. The first deliverable shown in FIG. 7 represents a case where the candidate part is an SoC and processor 130 classifies the evaluation items into major items in steps S112 to S118. In this case, the first deliverable is composed of major items, evaluation items, item numbers, and required / weighted items.
[0172] Regarding b2' and b5', which are indicated by shading the item numbers in Figure 7, the corresponding evaluation items are second evaluation items. The mark indicating a second evaluation item is M (the initial letter of Must). The first deliverable shown in Figure 7 is an example of a first deliverable generated by the first deliverable generation unit in the selection-dedicated database A152 in relational database format, which is then further generated as a tabular file. The first deliverable generation unit does not need to organize the first deliverable data in relational database format or tabular format. In this case, the first deliverable generation unit may generate the first deliverable in a list format with line breaks added to the first deliverable data, or in a text format with delimiters and spaces added. The first deliverable generation unit may also generate the first deliverable in the matrix format shown in the following equation (7).
[0173]
[0174] In formula (7), P i indicates the name of each major item, Q i are the evaluation items, R i is the number assigned to each evaluation item, S i is the weight value of each requirement identification or evaluation item.
[0175] This concludes the explanation of the first deliverable. Next, the control process of steps S120 to S127 will be explained with reference to FIG.
[0176] 6 is a flowchart illustrating in detail steps S120 to S127, which are the processes of the candidate part or candidate system evaluation unit, as described above. Processor 130 uses memory 140 to execute the control processes of steps S120 to S127, thereby performing the evaluation process by the candidate part or candidate system evaluation unit and the process of generating a second deliverable.
[0177] In step S120, processing is performed by the evaluation point determination unit. In the processing by the evaluation point determination unit, processor 130 determines an evaluation point for the first evaluation item for each candidate component or candidate system using memory 140. Processor 130 uses memory 140 to access data file A 151 and data file B 156 and extracts content and specifications related to the first evaluation item from materials related to the candidate components or candidate systems (e.g., data sheets, hardware manuals, operating instructions, and materials provided by manufacturers).
[0178] Similarly, the processor 130 accesses the selection-specific database A 152 and database B 157, and extracts the details and specifications related to the first evaluation item from the data on the candidate parts or candidate systems, if any.
[0179] The evaluation point determination unit then determines an evaluation point for the first evaluation item for each candidate part or candidate system based on the extracted content and specifications. The evaluation point may be determined as a numerical value equal to or greater than 0, but as an example, an integer in the range of 1 to 5 is used. The evaluation points can be determined by determining the evaluation point for each candidate part or candidate system based on the degree of completeness of functions related to the evaluation item, or by determining the evaluation point using absolute or relative evaluation based on numerical values related to the evaluation item (e.g., performance values or specifications). The processor 130 uses the memory 140 to determine the content of the evaluation item and determine the evaluation point using the appropriate method.
[0180] In step S121, the multiplication value calculation unit executes a process. In the process by the multiplication value calculation unit, the processor 130 uses the memory 140 to calculate the weights for the first evaluation items (W in Equations (2), (3), (5), and (6)). i ) and the evaluation score for the first evaluation item for each candidate component or each candidate system (the evaluation score determined in the control process of step S120).
[0181] When the processor 130 classifies the evaluation items in the control process of steps S112 to S118 shown in FIG. 5, the processor 130 may perform a process of adding up the calculated multiplication values for evaluation items classified by the same major category, either by candidate component or by candidate system, as a subtotal. This subtotal is calculated for each major category. Furthermore, the processor 130 may perform a process of assigning points to each major category so that the sum of the assigned points for the major categories is 100.
[0182] In step S122, processing is performed by the overall evaluation point calculation unit. In the processing by the overall evaluation point calculation unit, processor 130 uses memory 140 to calculate, for each candidate component or each candidate system, the sum of the multiplication values calculated in the processing by the multiplication value calculation unit in step S121 as the overall evaluation point. If the processing by the multiplication value calculation unit in step S121 calculates subtotals for each major item for each candidate component or each candidate system, the sum of the subtotals for the major items may be calculated as the overall evaluation point.
[0183] As explained in step S121 above, an example will be described in which a subtotal is calculated for each major category, and a score is assigned to each major category so that the sum of the assigned scores for the major categories is 100. In this case, the processing of the multiplication value calculation unit realized by processor 130 first multiplies the weight of a first evaluation item belonging to a certain major category by the evaluation score for each candidate part for that first evaluation item. Similarly, for all first evaluation items belonging to the same major category, the weight and evaluation score are multiplied. Then, all of these multiplied values are added together. This added value is conveniently referred to as X. Next, the weights of all first evaluation items belonging to the same major category are added together. This added value is then multiplied by a value set as the highest individual evaluation score. This multiplied value is conveniently referred to as Y. The subtotal of the evaluation scores for the major category can be calculated by dividing X by Y and multiplying this divided value by the assigned score for that major category. In calculating the subtotal of the evaluation points for each major item, the order of calculation may be reversed, and X may be multiplied by the score allocated to the major item, and then this multiplied value may be divided by Y. Similarly, subtotals of the evaluation points for other major items may be calculated. Then, by adding up the subtotals of the evaluation points for all major items through processing by the overall evaluation point calculation unit implemented by processor 130, the overall evaluation point for the candidate part can be calculated.
[0184] The above explanation can be expressed in the form of equations (8) and (9).
[0185] Subtotal of evaluation points for major items = {sum of each (weight of first evaluation item × evaluation point for first evaluation item) within the major item / (sum of weight of first evaluation item within the major item × maximum set value of individual evaluation points)} × allocation of major items ... (8)
[0186] Overall evaluation score = the sum of the subtotals of the evaluation scores for all major items ... (9)
[0187] However, in formulas (8) and (9), the evaluation score, subtotal, and overall evaluation score are calculated for each candidate component or each candidate system. Furthermore, the maximum setting value for each individual evaluation score is 5, for example, if each individual evaluation score can be determined as a numerical value in the range of 1 to 5.
[0188] An example will be described for the SoC manufactured by Company A in FIG. 8 , with the major category "price, schedule, etc." Processor 130 calculates X = 2 × 4 + 1 × 2 + 1 × 2 + 2 × 3 + 5 × 2 = 28 using the subexpression "sum of each (weight of first evaluation item × evaluation score for first evaluation item) within the major category" of equation (8). Then, processor 130 calculates Y = (2 + 1 + 1 + 2 + 5) × 5 = 55 using the subexpression "sum of weights of first evaluation items within the major category × highest evaluation score" of equation (8). Next, processor 130 divides the previously calculated X = 28 [points] by the later calculated Y = 55 [points] using equation (8). Processor 130 multiplies this divided value by the allocated score of 20 for the major category using the remaining subexpressions of equation (8) to calculate the subtotal of the evaluation score for the major category. This allows the subtotal of 10.2 for the evaluation score of the major category "Price, Schedule, etc." for the SoC manufactured by Company A to be calculated. Subtotals of the evaluation scores for other major categories can be calculated using the same procedure. Then, using equation (9), processor 130 calculates the sum of the subtotals of the evaluation scores for all major categories, and sets this sum as the overall evaluation score for the SoC manufactured by Company A. This overall evaluation score is the 64.8 in the overall result row at the bottom of Figure 9 and in the evaluation score column for the SoC manufactured by Company A. The reason why the overall evaluation score for the SoC manufactured by Company B has not been calculated in Figure 9 will be explained later.
[0189] When processing as in equation (8), there is no constraint that the weights of the first evaluation items belonging to each major category must be set to the lowest "1" or the highest "5" and the weights between the first evaluation items must be adjusted relatively. Similarly, there is no constraint that the evaluation scores for each candidate part must be set to the lowest "1" or the highest "5" and the evaluation scores must be adjusted relatively. Therefore, the processing by the overall evaluation score calculation unit has the advantage that weights can be set and evaluation scores can be assigned without adjusting the weights or evaluation scores between the first evaluation items belonging to the major category and the evaluation scores for each candidate part due to such constraints. Of course, such constraints do not arise even if the evaluation items are not classified into each major category.
[0190] In step S123, processing by the evaluation determination unit is executed. In the processing by the evaluation determination unit, processor 130 uses memory 140 to determine an evaluation for the second evaluation item for each candidate component or each candidate system. The evaluation for the second evaluation item is an evaluation by the evaluation determination unit of whether or not the essential conditions are satisfied. Processor 130 uses memory 140 to determine an evaluation for the second evaluation item based on the content and specifications for the first evaluation item extracted in the processing by the evaluation point determination unit in step S120 and the content and specifications for the essential conditions included therein. In the evaluation by the evaluation determination unit, if the essential conditions are satisfied, it is determined as OK, and if the essential conditions are not satisfied, it is determined as NG.
[0191] In step S124, the non-selection determination unit executes a process. In the process by the non-selection determination unit, processor 130 uses memory 140 to determine whether a candidate component or a candidate system that has at least one evaluation result for the second evaluation item that corresponds to not satisfying the essential condition (evaluation result in step S123 being NG) is a failure in selection, regardless of the overall evaluation score.
[0192] In step S125, processing is performed by the first selection determination unit. In the processing by the first selection determination unit, the processor 130 uses the memory 140 to determine whether the candidate parts or systems for which the evaluation for all second evaluation items is equivalent to being satisfied (the evaluation in the processing in step S123 is OK) are passed in selection. The term "all second evaluation items" here refers to all second evaluation items generated by the processing in step S111 by the essential condition reflection unit, as described in step S118 of FIG. 5 . However, this does not include second evaluation items previously generated by the processing in step S111.
[0193] Furthermore, among the second evaluation items generated by the processing of step S111, the processor 130 automatically excludes, using the memory 140, evaluation items that are invalid in terms of sentences, words, grammar, etc. and therefore do not make sense as evaluation items, and evaluation items that have resulted in a generation error. Therefore, the automatically excluded evaluation items are not included in "all second evaluation items."
[0194] In step S126, processing by the second selection determination unit is executed. In the processing by the second selection determination unit, processor 130 uses memory 140 to determine whether to select a candidate component or a candidate system for which the selection determination result is "pass" and which has a higher overall evaluation score than the other candidate components or candidate systems. If processor 130 selects only one of the candidate components or candidate systems, it may determine that the one with the highest overall evaluation score among the top candidate components or candidate systems is to be selected. Furthermore, if processor 130 selects multiple candidate components or candidate systems, it may determine that the one with the highest overall evaluation score among the top candidate components or candidate systems is to be selected first.
[0195] In step S127, processing by the second deliverable generation unit is executed. In the processing by the second deliverable generation unit, processor 130 uses memory 140 to generate the overall evaluation score, the selection determination result, and the candidate parts or systems determined to be selected in any one of the formats of a table, a relational database, a list, a matrix, or text. These generated by the processing by the second deliverable generation unit will be referred to as second deliverables.
[0196] 8 and 9 are diagrams showing an example of the second deliverable. Because the second deliverable has many items, it is cut off midway and shown in FIGS. 8 and 9.
[0197] The second deliverable in Figures 8 and 9 represents a case where the candidate part is an SoC, and processor 130 classifies the evaluation items into major items in the control processing of steps S112 to S118, and then, through the additional processing of step S121, calculates subtotals, sets points for each major item, and apportions the points so that the total sum of the major item points is 100.
[0198] In addition to data on the major items, evaluation items, item numbers, and required / weighted items, this second deliverable also includes evaluation data on candidate parts, including a SoC manufactured by Company A (product name AAA-AA) and a SoC manufactured by Company B (product name BBB-BB). As shown in the evaluation items "Main Use" and "Estimated Price" under the major item "Price, Schedule, etc.", the SoC manufactured by Company A is a high-performance or custom product for ADAS, and is an expensive product, whereas the SoC manufactured by Company B is a general-purpose automotive product, and is inexpensive but not high-performance. Therefore, adopting the SoC manufactured by Company B was expected to reduce the price. Although not shown, if candidate parts from three or more companies are to be evaluated, simply add more SoC columns to the second deliverable.
[0199] 8 and 9 show the second deliverables generated in relational database format in the selection-dedicated database A152 by the processing of the second deliverable generation unit, which are then further generated as a table-format file. The format of the list, matrix, or text is the same as that described in step S119. However, the matrix format can be generated as the second deliverable by adding more rows and columns to equation (7) and increasing the number of matrix elements.
[0200] The evaluation of the second evaluation items, whose item numbers are b2' and b5' shaded in the figure, is either OK or NG. The overall evaluation score and selection results show that the SoC manufactured by Company A passes the evaluation of the second evaluation items with no NGs, resulting in an overall evaluation score of 64.8 points, as shown in FIG. 9 . A perfect overall evaluation score would be 100 points. The SoC manufactured by Company B fails the evaluation of the second evaluation items with one or more NGs, so the processor 130 does not calculate an overall evaluation score. Therefore, the processor 130 of the design support device 100 determines that the SoC manufactured by Company A should be selected.
[0201] 8 and 9 are examples of the second deliverable when the candidate parts are SoCs, but the second deliverable may be generated by adding parts other than SoCs, such as MCUs, to the candidate parts (by adding columns in FIGS. 8 and 9). Of course, the second deliverable may be generated by using each company's MCU as the candidate part, without mixing SoCs and MCUs.
[0202] The second deliverable generation unit in step S127 may be added with a function for generating a radar chart using the aforementioned major items as evaluation axes. Therefore, this radar chart may be added to the second deliverable. The radar chart can be generated when the evaluation items are classified into major items in the control processing of steps S112 to S118.
[0203] FIG. 10 is a diagram showing an example of a radar chart when the radar chart is generated.
[0204] The radar chart in Figure 10 further visualizes the evaluation data for the SoCs of Company A and Company B, which are the second deliverables shown in Figures 8 and 9. This radar chart uses the evaluation axes of the major evaluation items. The six major items in Figures 8 and 9 are price / schedule, performance / function, memory, external interface, hardware requirements, and other / non-functional requirements, which gives the radar chart a hexagonal shape. The evaluation score for each evaluation axis is calculated by dividing the subtotal of the evaluation scores for each major item of the SoCs of Company A and Company B by the score allocated to each major item. Therefore, the evaluation score for each evaluation axis on the radar chart is normalized to a value between 0 and 1. For example, the score allocated to the major items price / schedule is 20. The subtotal for the SoC manufactured by Company A for this major item is 10.2, and the subtotal for the SoC manufactured by Company B is 17.1. Therefore, the evaluation points for price, schedule, etc. are calculated as 0.51 for Company A's SoC and 0.86 for Company B's SoC. Similarly, evaluation points are calculated for the other major items. The radar chart in Figure 10 is then formed by connecting the evaluation points on each item axis.
[0205] However, the radar chart in Fig. 10 does not use the data of the subtotal total, which is the overall result shown in Fig. 9, or the data of the NG judgment result. Also, the radar chart does not use the evaluation data (e.g., OK or NG) for the second evaluation items (e.g., b2' and b5') shown in Fig. 8. However, the evaluation point data for the first evaluation items (e.g., b2 and b5) that were the basis for generating the second evaluation items are reflected in the radar chart.
[0206] The radar chart described above makes it easier for the user to visually recognize the differences in performance, functionality, etc. between the SoCs manufactured by company A and company B.
[0207] Returning to FIG. 5, the control process will be further described.
[0208] In step S128, processor 130 determines whether or not the user of design support device 100 will confirm the first or second deliverable, using memory 140. The control processing in step S128 and the next step S129 is processing for enabling the user to confirm the deliverable generated by design support device 100 immediately after generation.
[0209] In step S128, if it is determined that the user will check the first or second deliverable (step S128: YES), the process proceeds to control step S129. On the other hand, if it is determined that the user will not check the first or second deliverable (step S128: NO), the process proceeds to control step S130.
[0210] This determination is made based on the result of the selection of the next item, "Display the deliverable on the display device 115 or the user terminal device 175 for confirmation / Do not confirm," selected by the user through initial settings or presettings of the design support device 100. Alternatively, this determination may be made based on the result of the selection, "Display the deliverable on the display device 115 or the user terminal device 175 for confirmation / Do not confirm," input by the user using the input device 110 or the user terminal device 175 when the control process reaches step S128.
[0211] If the user checks the deliverables after the control processing of steps S101 to S130 is completed, the user can check the deliverables as needed, regardless of the control processing of step S128.
[0212] In step S129, processor 130 uses memory 140, display device 115, and input / output interface 120 to display the first or second deliverable on display device 115. Alternatively, processor 130 uses memory 140, user terminal device 175, and communication interface 160 to display the first or second deliverable on user terminal device 175. Then, the user operates the display of the deliverable using input device 110 or user terminal device 175. Furthermore, if necessary, the user may operate to print the deliverable.
[0213] Returning to FIG. 5, the control process will be further described.
[0214] In step S130, processing is performed by the data processing execution unit. In the processing by the data processing execution unit in step S130, the processor 130 uses the memory 140 to access the internal storage 150, the data file A151 inside the internal storage 150, and the selection-dedicated database A152, and stores the data of the generated deliverable in the database A152. Also, in this processing, the processor 130 files the data of the generated deliverable and adds it to the data file A151 for storage. The processor 130 may store the data of the generated deliverable directly in the internal storage 150.
[0215] Furthermore, in the processing by the data processing execution unit in step S130, the processor 130 uses the memory 140 and the communication interface 160 to access the external storage server 155, the data file B156 inside the external storage server 155, and the selection-dedicated database B157, and stores the data of the generated deliverable in the database B157. Also, in this processing, the processor 130 files the data of the generated deliverable and adds it to the data file B156 for storage. The data of the generated deliverable may be stored directly in the external storage server 155.
[0216] After the data processing execution unit executes the process in step S130, the control process ends and the design support device 100 enters a standby state.
[0217] This concludes the description of the control process executed by the design support device 100.
[0218] <Effects> The design support device 100 according to the above-described embodiment enables labor savings and a significant reduction in the number of steps required for the selection of important components or systems. The number of steps required for the designer performing the selection work to grasp the situation, analyze the situation, and rework the process can be significantly reduced. For example, the number of steps can be reduced to about one-fifth of that required for conventional manual work.
[0219] Furthermore, it enables selection work based on logical, rational, consistent viewpoints and judgment equivalent to that of a skilled engineer, regardless of the experience of the designer. Therefore, even if the designer's skills are inexperienced, the quality of this work can be improved to the level of that of a skilled engineer. This also has the effect of reducing the variation in work quality between designers.
[0220] Furthermore, the design support device 100 can organize the details of the decisions and grounds for component selection or system selection and generate a visually easy-to-understand deliverable. Therefore, in addition to being able to clarify the selection process performed by the designer, it is also possible to leave this deliverable as design documentation that complies with the standards for the product development process, for example.
[0221] In the above description of this embodiment, the process of selecting components or systems has been described in detail using the example flowcharts in FIGS. 3 to 6, the example deliverables in FIGS. 7 to 9, Equations (1) to (9), and their detailed explanations. Therefore, this embodiment is also useful as a technique for selecting components or systems. When used as a technique, the character "part" in the flowcharts S101 to S130 in FIGS. 3 to 6 and their detailed explanations can be replaced with "step." However, the characters for "part," "inside," "outside," "all," "part," and "partial" should not be replaced as they are. For example, a weight determination part can be replaced with a weight determination step.
[0222] Furthermore, the effectiveness of this technique can be further improved by using AI, machine learning, or deep learning in combination with the design support device 100, or by incorporating AI, machine learning, or deep learning into the algorithms internal to the design support device 100.
[0223] Furthermore, although the present embodiment has been described using an example of an SoC as a candidate part, the design support device 100 can be widely applied to products that incorporate parts or systems. It can also be applied to information systems as long as their functions and specifications can be compared.
[0224] <Modification> The design support device 100 shown in Fig. 1 can also be linked with a company's own design system. In this case, the company's design system is connected to an in-house network 170 instead of the external storage server 155 in Fig. 1. The entire configuration in which the design support device 100 and the company's own design system are linked in this way will be referred to as a design support system.
[0225] FIG. 11 is a block diagram showing an example of the configuration of a design support system 10A according to a modified example of the embodiment.
[0226] The design support system 10A includes a design support device 100, a design system 200, and a user terminal device 175.
[0227] The design system 200 includes an input / output interface, a processor, a memory, an internal storage 210, and a communication interface, similar to the design support device 100. The input / output interface, the processor, the memory, and the communication interface of the design system 200 have the same functions as those of the design support device 100, and therefore will not be illustrated or described here.
[0228] The internal storage 210 stores a design data file 211 and a design database 212. The data stored in the design data file 211 is a file of design data related to the company's own products or systems, some of which is similar to the data file B156 shown in Fig. 1. The design database 212 is a database that stores design data related to the company's own products or systems, some of which is similar to the selection-dedicated database B157 shown in Fig. 1.
[0229] A user can use a user terminal device 175 to operate the design support device 100 and the design system 200 that make up the design support system 10A via an in-house network 170.
[0230] In the design support system 10A configured in this manner, the design support device 100 can access and use data in the internal storage 210 of the design system 200 via the internal communication network 170. Similarly, in the design support system 10A, the design system 200 can access and use data in the internal storage 150 of the design support device 100 via the internal communication network 170.
[0231] Furthermore, the design support system 10A may be configured to cooperate with a server (not shown) of another company's design system. In this case, the design support system 10A is configured to cooperate with the server of the other company's design system via the Internet 180.
[0232] Here, in order to improve data confidentiality and prevent data from being read in the event of data leakage, data generated by the design support device 100 and design system 200 that make up the design support system 10A may be subjected to encryption processing.
[0233] The present invention is not limited to the above-described embodiments, and various other applications and modifications are possible without departing from the spirit of the present invention as defined in the claims. The above-described embodiments provide detailed and specific descriptions of the device configurations in order to clearly explain the present invention, and the present invention is not necessarily limited to devices that include all of the described configurations. Furthermore, it is possible to replace part of the configurations of the embodiments described here with configurations of other embodiments, and it is also possible to add configurations of other embodiments to the configurations of one embodiment. Furthermore, it is also possible to add, delete, or replace part of the configurations of each embodiment with other configurations.
[0234] Furthermore, the connecting lines between the components on the drawings and the lines in the flowcharts are those that are considered necessary for explanation, and not all lines are necessarily shown. In reality, it can be considered that almost all components are interconnected.
[0235] Furthermore, some or all of the above configurations, functions, control processes, etc. may be implemented in hardware, for example, by designing them as integrated circuits. Furthermore, the above configurations, functions, control processes, etc. may be implemented in software by a processor interpreting and executing a program that implements each function. Information such as the programs, tables, and files that implement each function can be stored in a memory, a recording device such as a hard disk or SSD (Solid State Drive), or a recording medium such as an IC card, SD card, or DVD.
[0236] 100...design support device, 130...processor, 140...memory, 145...control program, 150...internal storage, 151...part or system data file A, 152...part or system selection dedicated database A, 153...sample data, 155...external storage server, 156...part or system data file B, 157...part or system selection dedicated database B, 175...user terminal device, 200...design system, 10A...design support system, 210...internal storage
Claims
1. A system comprising: a storage for storing data on candidate parts or candidate systems; a memory for storing a control program; and a processor for executing the control program, wherein the processor executes the control program to perform at least one of reading, writing, editing, deleting, saving, and moving the data; a first grouping unit for extracting sentences, words, and units from the data read from the storage, and grouping the extracted sentences into first groups based on the extracted sentences, words, and units; an evaluation item generation unit for extracting at least one sentence from the grouped sentences for each of the first groups, and generating first evaluation items by processing the extracted sentence and a sentence extracted from an evaluation item in a past decision table for the part or the system, or a sample sentence of the evaluation item stored in the storage; and a weight determination unit for determining a weight for each of the first evaluation items based on the description information of the data stored in the storage, and determining a weight for the first evaluation item using the determined weight by the averaging method or the multiplication method. a required condition reflection unit that links the required requirements and the conditions to first evaluation items that are highly relevant to the required requirements and the conditions, and generates second evaluation items that reflect the required requirements and the conditions by adding a statement equivalent to whether the conditions are satisfied to the content of the linked first evaluation item, and modifying the linked first evaluation item or adding a new evaluation item; and a first deliverable generation unit that generates a first deliverable that puts the candidate parts or candidate systems, the first evaluation items, the weights for the first evaluation items, the second evaluation items, and marks or words indicating that they are the second evaluation items in any of the following formats: a table, relational database, list, matrix, or text.
2. The design support device according to claim 1, wherein the data is composed of at least one of the following written information: a past decision table for a part or system, a data sheet or manual for the candidate part or system, a design document or requirements specification for the company's own product or system, a review report for the development of the company's own product or system, or a table comparing the functions and performance of the candidate part or system.
3. The design support device according to claim 1, wherein the processor executes the control program to realize a numerical condition incorporating section that incorporates a numerical value or a threshold value for satisfying the essential requirement into the condition.
4. The design support device according to claim 1, wherein execution of the control program by the processor realizes: a second grouping unit that extracts words and units contained in the first evaluation item and the second evaluation item, and groups the first evaluation item and the second evaluation item into second groups based on the first evaluation item, the second evaluation item, or the extracted words and units; a major category name determination unit that, for each of the second groups, finds broader conceptual terms of the words contained in the first evaluation item and the second evaluation item in the second group, and determines one or two words that appear frequently among the broader conceptual terms as major category names; and an evaluation item classification unit that, for each of the second groups, classifies the first evaluation item and the second evaluation item in the second group into broader categories corresponding to the major category names.
5. The design support device of claim 1, wherein when the processor executes the control program, a weighting judgment unit is realized that increases the weighting of judgments made for each of the described information when the described information related to the first evaluation item includes at least one of the following content related to performance, processing speed, communication speed, safety function, functional safety level, reliability function, security function, AI, machine learning, and deep learning in the candidate part or the candidate system, compared to when the described information does not include said content.
6. When the processor executes the control program, the following are produced: an evaluation score determination unit that determines an evaluation score for the first evaluation item for each of the candidate parts or candidate systems; a multiplication value calculation unit that calculates the multiplication value of the weight for the first evaluation item and the evaluation score for the first evaluation item for each of the candidate parts or candidate systems; an overall evaluation score calculation unit that calculates the sum of the multiplication values as an overall evaluation score for each of the candidate parts or candidate systems; an evaluation determination unit that determines an evaluation for the second evaluation item for each of the candidate parts or candidate systems; a non-selection determination unit that determines the selection result as fail for a candidate part or a candidate system that has at least one evaluation corresponding to not satisfying the condition in the evaluation for the second evaluation item, regardless of the overall evaluation score; a first selection determination unit that determines the selection result as pass for a candidate part or a candidate system that has evaluations corresponding to satisfied for all of the second evaluation items; and a second selection determination unit that determines to select a candidate part or a candidate system that has the evaluation result as pass and has a higher overall evaluation score than the other candidate parts or candidate systems. a second product generation unit that generates a second product in the form of a table, a relational database, a list, a matrix, or text, which contains the overall evaluation score, the selection determination result, and the candidate parts or the candidate systems determined to be selected.
7. The design support device according to claim 6, wherein the processor executes the control program to realize the following processes: the multiplication value calculation unit multiplies, for each first evaluation item belonging to the same major item, the weight of the first evaluation item by the evaluation score for each candidate part for the first evaluation item, divides the sum of the multiplied values by the product of the sum of the weights of the first evaluation items belonging to the same major item by the maximum set value of the individual evaluation scores, and multiplies the divided value by the allocated score for the major item, thereby calculating a subtotal of the evaluation scores for the major items; and the overall evaluation score calculation unit calculates the sum of the subtotals of the evaluation scores for all major items and sets the value of the sum as the overall evaluation score for the candidate part or the candidate system.
8. A data storage step of storing data of candidate parts or candidate systems in a storage; a data processing execution step of executing at least one of reading, writing, editing, deleting, saving, and moving the data; a first grouping step of extracting sentences, words, and units from the data read from the storage, and grouping the extracted sentences into first groups based on the extracted sentences, the words, and the units; an evaluation item generation step of extracting at least one sentence from the grouped sentences for each of the first groups, and generating first evaluation items by processing the extracted sentence and a sentence extracted from an evaluation item in a past decision table for the part or the system, or a sample sentence of the evaluation item stored in the storage; a weight determination step of determining a weight for each of the first evaluation items based on the description information of the data stored in the storage, and determining a weight for the first evaluation item using the determined weight by an averaging method or a multiplication method. A component or system selection method comprising: an essential condition extraction step of extracting, from the data, essential requirements for the design of the company's own product or system, and conditions for the candidate component or the candidate system to satisfy the essential requirements; an essential condition reflection step of linking the essential requirements and the conditions to a first evaluation item that is highly relevant to the essential requirements and the conditions, and generating a second evaluation item that reflects the essential requirements and the conditions by adding a statement equivalent to "whether the condition is satisfied" to the content of the linked first evaluation item, and modifying the linked first evaluation item or adding a new evaluation item; and a first deliverable generation step of generating a first deliverable that puts the candidate component or the candidate system, the first evaluation item, the weight for the first evaluation item, the second evaluation item, and a mark or word indicating that it is the second evaluation item in any one of a table, relational database, list, matrix, or text format.
9. The method for selecting a part or system according to claim 8, wherein the data is composed of at least one of the following written information: a past decision table for the part or system, a data sheet or manual for the candidate part or system, a design document or requirements specification for the company's own product or system, a review report for the development of the company's own product or system, or a table comparing the functions and performance of the candidate part or system.
10. The method for selecting a part or system according to claim 8, further comprising a step of incorporating a numerical condition into said condition a numerical value or a threshold value for satisfying said essential requirement.
11. The method for selecting a component or a system according to claim 8, comprising: a second grouping step of extracting words and units contained in the first evaluation item and the second evaluation item, and grouping the first evaluation item and the second evaluation item into second groups based on the first evaluation item, the second evaluation item, or the extracted words and units; a major category name determination step of, for each of the second groups, determining broader conceptual terms of the words contained in the first evaluation item and the second evaluation item in the second group, and determining one or two words with a high frequency of appearance among the broader conceptual terms as major category names; and an evaluation item classification step of, for each of the second groups, classifying the first evaluation item and the second evaluation item in the second group into major categories corresponding to the broad category names.
12. A method for selecting a component or system as described in claim 8, further comprising a weighting judgment step for increasing the weighting of judgment for each of the described information when the described information related to the first evaluation item includes at least one of the following content related to performance, processing speed, communication speed, safety function, functional safety level, reliability function, security function, AI, machine learning, or deep learning in the candidate component or the candidate system, compared to when the described information does not include said content.
13. An evaluation score determination step for determining an evaluation score for the first evaluation item for each of the candidate parts or candidate systems; a multiplication value calculation step for calculating the multiplication value of the weight for the first evaluation item and the evaluation score for the first evaluation item for each of the candidate parts or candidate systems; an overall evaluation score calculation step for calculating the sum of the multiplication values as an overall evaluation score for each of the candidate parts or candidate systems; an evaluation determination step for determining an evaluation for the second evaluation item for each of the candidate parts or candidate systems; a non-selection determination step for determining a selection result as fail for a candidate part or a candidate system for which at least one evaluation for the second evaluation item is equivalent to not satisfying the condition, regardless of the overall evaluation score; a first selection determination step for determining a selection result as pass for a candidate part or a candidate system for which evaluations for all of the second evaluation items are equivalent to being satisfied; and a second selection determination step for determining to select a candidate part or a candidate system for which the evaluation result is pass and which has a higher overall evaluation score than the other candidate parts or candidate systems.
9. The component or system selection method according to claim 8, further comprising: a second product generation step of generating a second product that presents the overall evaluation score, the selection determination result, and the candidate component or system determined to be selected in any one of a table, a relational database, a list, a matrix, and a text format.
14. The method for selecting a part or system according to claim 13, wherein the multiplication value calculation step includes a process of multiplying, for each first evaluation item belonging to the same major item, the weight of the first evaluation item by the evaluation score for each candidate part for the first evaluation item, dividing the sum of the multiplied values by the product of the sum of the weights of the first evaluation items belonging to the same major item by the maximum set value of the individual evaluation scores, and multiplying the divided value by the score allocated to the major item to calculate a subtotal of the evaluation scores for the major items; and the overall evaluation score calculation step includes a process of calculating the sum of the subtotals of the evaluation scores for all major items and setting the value of the sum as the overall evaluation score for the candidate part or the candidate system.
Citation Information
Patent Citations
Material characteristic evaluation support system
JP2008052465A
Information providing device, information providing method and computer program
JP2023170072A
Material specification information server, material selection assistance method, and material selection assistance system
WO2019049856A1