Abstract:
PROBLEM TO BE SOLVED: To provide a system, capable of verifying while retaining the confidentiality for a supplier, in traceability for a supply chain. SOLUTION: For a private supplier, a group signature is applied. The private supplier is registered with a certifying authority apparatus 500 previously, and conducts the group signature, based on a certificate issued by the certifying authority apparatus 500. An open supplier and the private supplier sign, when a component is shipped and form a signature chain. A verifier apparatus 400 receives the signature chain, together with a shipped product from a supplier/manager apparatus 100, separates the signature of the open supplier from the signature chain, and verifies the private supplier by the group signature. The private supplier is identified by an auditor system 600 as a third party requested from the verifier apparatus 400 by using a group private key. COPYRIGHT: (C)2007,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To provide a technique to divide the regions of a block diagram including a block other than coded object by changing the disposition of the block other than coded object to optimize the operation speed after coding.SOLUTION: A block diagram is converted and abstracted into a task graph of DAG. A series-parallel tree (SPT) is obtained by analyzing the structure of the task graph. The SPT includes: an S-node from which a serial execution node branches; and a P-node from which parallel execution node branches. The SPT is converted into another SPT until no P-node exists prior to the block other than coded object. A corresponding block diagram is divided, and a code is generated for each region; and compiled and allotted to a different processor or core to execute a block following the P-node of the obtained SPT in parallel. The task graph of the DAG is deformed so that scattered blocks other than coded object are preferably merged.
Abstract:
PROBLEM TO BE SOLVED: To parallelize programs shown by, for example, a block diagram. SOLUTION: In the block diagram, when outputs of functional blocks 1214 and 1216 which do not have internal states are used by a functional block A which has an internal state, the functional block A is referred to as a use block of a functional block not having the internal state. When an output of the functional block A having the internal state is used for calculation as an input of the functional block not having the internal state, the functional block A is referred to as a definition block of the functional block not having the internal state. By visiting each functional block as a node, the number of use block sets/definition block sets is calculated per functional block based on a connection relationship between the functional block having the internal state and the functional block not having the internal state, and strands 1202 to 1212 are allocated based on the number. By this, the block diagram is divided into the strands and processing is parallelized. COPYRIGHT: (C)2011,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To provide a mail transmission/reception method and a mail transmission/reception system provided with an affinity to a present mail system and capable of specifying the leakage origin of a mail address. SOLUTION: The mail address configuration method comprises: a stage of transmitting the identifier of a receiver and the identifier of a transmitter to the mail server of the receiver; a stage of having the mail server calculate a value for which the identifier of the receiver, the identifier of the transmitter and a nonce issued by the mail server are ciphered with a secret key that only the mail server knows and transmit it to the receiver; and a stage of imparting the domain name of the receiver to the ciphered value and configuring the mail address (LD address) for sending mail to the receiver by the transmitter. Also, the mail transmission method comprises a stage of transmitting the mail address configured by the mail address configuration method to the transmitter. COPYRIGHT: (C)2006,JPO&NCIPI
Abstract:
PROBLEM TO BE SOLVED: To reduce a computational complexity for simultaneous ordinary differential equations by a computer. SOLUTION: This system calculates a difference ▵ between a calculation term of order N and a calculation term of order N+1, when solving an individual ordinary differential equation of the simultaneous ordinary differential equations, by an embedding type Runge-Kutta method such as a Runge-Kutta Vehrberg method, determines whether the difference is smaller than a prescribed threshold value ▵ 0 or not, determines a step size according to a prescribed calculation expression determined by a ▵ 0 /▵, when the ▵≤▵ 0 , to be advanced to the next calculation, and issues a recalculation command to only a strand of calculating the ordinary differential equation generating an error brought into ▵>▵ 0 . The step size determined by a ▵ 0 /▵ is set in the recalculation strand. The calculation of the whole of the simultaneous ordinary differential equations is progressed when the error gets smaller than the prescribed threshold value ▵ 0 therefrom, by recalculation with an interpolation value, since a pace is matched with that of a strand for calculating the other ordinary differential equation not generating an error. COPYRIGHT: (C)2011,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To reduce accumulation of an error by calculating the error of prediction systematically in quickening a processing loop by speculative pipelining in a multi-core or multi-processor system. SOLUTION: In an environment of a multi-core or a multi-processor system, the processing of each of the loops of a control block is suitably assigned to individual cores or processors as individual threads by a speculative pipelining method. A correction value is calculated by using the prediction variable value of the pertinent thread with respect to output based on the prediction input. The calculation of the correction value is applied as the gradient value as the approximate value of the primary differential coefficient of the prediction variable value. Generally, for a simulation system, there are several variable values, so that the primary differential coefficients are represented as a Jacobian matrix. Then, a matrix whose components are respectively the gradient value as the approximate value of the primary differential coefficient is called a Jacobian matrix. The calculation of the correction value is performed on the basis of the Jacobian matrix defined in this way. COPYRIGHT: (C)2011,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To speed up iteratively executed processing when generating clusters in order to assign processing to individual processors in a multi-processor environment. SOLUTION: In a full vehicle simulation system, when clusters are formed based on strongly connected components, a single cluster identified as a fat cluster, in which there are at least a predetermined number of blocks or an expected processing time exceeds a predetermined threshold, is subjected to unrolling processing to make multiple copies of the processing of the fat cluster and to assign the copies to individual processors. Thus, the processing is executed by the multiple processor devices in a pipelined manner, so that the processing can be quickly achieved. When one time processing result of the fat cluster to be iteratively executed depends on the previous processing results, an input value needed for execution is generated based on certain prediction, and the fat cluster is speculatively executed. COPYRIGHT: (C)2010,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To provide a technique that can accelerate execution parallelized on multi processors or multiple cores, by well-balanced segmentation of a code of a model.SOLUTION: Blocks with internal states and blocks without any outputs among functional blocks included in a block diagram describing a model are focused on, and segments consisting of sets of blocks needed to calculate inputs to each block with an internal state and each block without any outputs are extracted by traversing a graph from the blocks with internal states and the blocks without any outputs in the opposite direction of the dependencies, where blocks can be duplicated among segments. Next, the segments are merged to reduce duplication, and the number of segments is reduced to a number for parallel execution. Here, the duplication between the segments is reduced by merging segments with many of the same blocks, and the number for parallel execution is typically the number of available cores or processors.
Abstract:
PROBLEM TO BE SOLVED: To accelerate execution of a program by parallelization in a simulation system. SOLUTION: A functional block is divided into strands, and a strand with the largest calculation time is found from a strand set (a step 604). In the strand with the largest calculation time, a movable block is found (a step 606), the calculation time of the strand as a result of moving to a strand in an input direction or an output direction according to nature of the movable block, and moving of the block between strands in which reduction of calculation time with an original strand becomes maximum is performed (a step 614). Thus, processing returns to a step of finding a strand with the largest calculation time. When it reaches a state where the calculation time of the block no longer decreases even when the movable block is moved (a step 612), the processing is ended. The strand of the functional block obtained in this way is converted into a corresponding source code such as C, and is further complied to be assigned to an individual core or an individual processor in order to execute it. COPYRIGHT: (C)2011,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To provide a code generation technology can generate an executable code optimized as much as possible regarding resource utilization and execution speed, on hybrid systems comprising a plurality of computer systems which can be connected to one another via a network. SOLUTION: An optimized executable code is generated by the processing of generating an optimization table about library components of a source code, automatic computing resource assignment using the resultant optimization table, and the execution of network embedding for hybrid systems which are connected to one another via the network. COPYRIGHT: (C)2011,JPO&INPIT