发明名称 Atomic memory update unit and methods
摘要 In an aspect, an update unit can evaluate condition(s) in an update request and update one or more memory locations based on the condition evaluation. The update unit can operate atomically to determine whether to effect the update and to make the update. Updates can include one or more of incrementing and swapping values. An update request may specify one of a pre-determined set of update types. Some update types may be conditional and others unconditional. The update unit can be coupled to receive update requests from a plurality of computation units. The computation units may not have privileges to directly generate write requests to be effected on at least some of the locations in memory. The computation units can be fixed function circuitry operating on inputs received from programmable computation elements. The update unit may include a buffer to hold received update requests.
申请公布号 US9466091(B2) 申请公布日期 2016.10.11
申请号 US201414494496 申请日期 2014.09.23
申请人 Imagination Technologies Limited 发明人 Clohset Steven J;Redgrave Jason R.;Peterson Luke T
分类号 G06F12/00;G06F13/00;G06T1/60;G06F12/08;G06F12/12 主分类号 G06F12/00
代理机构 Vorys, Sater, Seymour and Pease LLP 代理人 Vorys, Sater, Seymour and Pease LLP ;DeLuca Vincent M
主权项 1. A machine-implemented method of updating a memory, comprising: receiving, from a computation unit, a request to update a memory, the request including a first value to be used to update a specified location in the memory and a condition to be satisfied in order for the first value to be used to update the specified location in the memory, the condition comprising a reference to a second location in the memory, and a criterion to be satisfied by a value in the second location in the memory; accessing the second location in the memory; and determining whether the value in the second location in the memory satisfies the criterion, and if so, then using the first value to update the specified location in the memory atomically, wherein atomically comprises that the value in the specified location in the memory is not changed between a time that the value in the second location in the memory is accessed and a time that the specified location in the memory is updated using the first value.
地址 Kings Langley GB