Simulation device and simulation method therefor

US10162913B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10162913-B2
Application numberUS-201214233610-A
CountryUS
Kind codeB2
Filing dateJul 20, 2012
Priority dateJul 22, 2011
Publication dateDec 25, 2018
Grant dateDec 25, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The present invention relates to a simulation method and device. According to the present invention, a simulation method using a plurality of blocks comprises: a dividing step of dividing a simulation into computation operations for performing unique operations on the blocks and communication operations for data exchanges between different blocks; a grouping step of performing a grouping between the interdependent computation and communication operations; and a simulation performing step of performing an operation included in each group using the blocks according to whether or not the level of interdependency between the computation and communication operations is resolved.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method for performing simulation by a simulation device using a plurality of blocks, the method comprising: extracting communication operations from a simulation operation, each of the communication operations being for exchanging data between different blocks, each block simulating an electronic element; sorting the communication operations based on dependency between the communication operations; extracting computation operations for the plurality of blocks, at least one computation operation of the computation operations being for performing function of a block associated with the communication operations; grouping at least one computation operation and at least one communication operation into groups from the computation operations and the communication operations for the plurality of blocks, the at least one computation operation and the at least one communication operation included in one group being dependent on each other; and executing operations included in each group using the plurality of blocks based on dependency between the operations. 2. The method of claim 1 , wherein the executing of the operations comprises: selecting a certain block; selecting computation operations to be executed by the selected block from respective groups; selecting computation operation independent from communication operation and closest to next communication operation among the selected computation operations; and executing the selected computation operation. 3. The method of claim 2 , wherein the executing of the operations comprises executing, when an execution time of the communication operation arrives in executing the computation operation, the communication operation. 4. A simulation device for performing simulation using a plurality of blocks, the device comprising: a memory configured to store at least one group constituting the simulation; and at least one processor configured to control a plurality of blocks when performing the simulation, wherein the at least one processor configured to: extract communication operations from a simulation operation, each of the communication operations being for exchanging data between different blocks, each block simulating an electronic element, sort the communication operations based on dependency between the communication operations, extract computation operations for the plurality of blocks, at least one computation operation of the computation operations being for performing function of a block associated with the communication operations, group at least one computation operation and at least one communication operation into groups from the computation operations and the communication operations for the plurality of blocks, the at least one computation operation and the at least one communication operation included in one group being dependent on each other, and execute operations included in each group using the plurality of blocks based on dependency between the operations. 5. The device of claim 4 , wherein the at least one processor is further configured to: select a certain block, select computation operations to be executed by the selected block from respective groups, select computation operation independent from communication operation and closest to next communication operation among the selected computation operations, and execute the selected computation operation. 6. The device of claim 5 , wherein the at least one processor is further configured to execute, when an execution time of the communication operation arrives in executing the computation operation, the communication operation. 7. A method for performing simulation by a simulation device in a distributed system including at least two nodes connected to each other and having a plurality of blocks, the method comprising: configuring a block at each node, the block simulating an electronic element; receiving, if an operation request is transmitted from a first node, the requested operation at the block included in the first node; pre-processing, at the block included in the first node, the requested operation before the second node processes the requested operation; transferring, at the block included in the first node, the operation request to the second node; receiving, at the block included in the first node, a processing result transmitted by the second node, the processing result being generated by the second node; and adjusting a pre-processing result based on comparing the processing result with the pre-processing result to optimize the simulation of the simulation device. 8. The method of claim 7 , further comprising: updating at the block, the pre-processing result by receiving a processing result transmitted by the second node. 9. The method of claim 8 , wherein the updating comprises updating difference between time taken for performing pre-processed service and the time taken for performing post-processed service. 10. The method of claim 8 , wherein the pre-processing comprises performing, when the block receives an operation request for a memory, a read or write function. 11. The method of claim 8 , wherein the pre-processing comprises by-passing, when the block receives a computation request for an active device, the operation request. 12. The method of claim 8 , wherein the pre-processing comprises performing, when the block receives an operation request for a passive device, a service according to behavior model of the passive device. 13. A simulation device for performing simulation in a distributed system, the device comprising: at least one processor; and at least two nodes each including a plurality blocks, each block simulating an electronic element, wherein the at least one processor is configured to: receive, if an operation request is transmitted from a first node, the requested operation at a block included in the first node, pre-process, at the block included in the first node, the requested operation before the second node processes the requested operation, transfer, at the block included in the first node, the operation request to the second node, receive, at the block included in the first node, a processing result transmitted by the second node, the processing result being generated by the second node, and adjust a pre-processing result based on comparing the processing result with the pre-processing result to optimize the simulation of the simulation device. 14. The device of claim 13 , wherein the at least one processor is further configured to transfer, after pre-processing, the operation request from the block to the second node and update the pre-processing result by receiving a processing result transmitted by the second node. 15. The device of claim 14 , wherein the at least one processor is further configured to update difference between time taken for performing pre-processed service and the time taken for performing post-processed service. 16. The device of claim 15 , wherein the at least one processor is further configured to perform, when the block receives an operation request for a memory, a read or write function. 17. The device of claim 15 , wherein the at least one processor is further configured to by-pass, when the block receives a computation request for an active device, the operation request. 18. The device of claim 15 , wherein the at least one processor is further configured to perform, when an operation request is received for a passive device, a service according to behavior model of the passive device.

Assignees

Inventors

Classifications

  • for systems · CPC title

  • Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs (mappping at compile time, see G06F8/451) · CPC title

  • Performance evaluation by simulation · CPC title

  • Task decomposition · CPC title

  • by assessing time · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10162913B2 cover?
The present invention relates to a simulation method and device. According to the present invention, a simulation method using a plurality of blocks comprises: a dividing step of dividing a simulation into computation operations for performing unique operations on the blocks and communication operations for data exchanges between different blocks; a grouping step of performing a grouping betwee…
Who is the assignee on this patent?
Kim Kyoung Hoon, Kim Joong Baik, Lee Seung Wook, and 1 more
What technology area does this patent fall under?
Primary CPC classification G06F11/3495. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 25 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).