Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


Ng, TX

Alvan Ng, Austin, TX US

Patent application numberDescriptionPublished
20080250371Delay Budget Allocation with Path Trimming - Systems and methods for determining delay budget allocations for circuit elements. One embodiment comprises a method including defining timing edges and corresponding timing paths in an integrated circuit design, and determining delay budget allocations for each of the edges based on required arrival time and design slack (S,T) pairs associated with the different timing paths. The required arrival time is a maximum time when associated with forward paths, and a minimum time when associated with backward paths. (S,T) pairs associated with some timing paths are discarded (i.e., the corresponding timing paths are trimmed) to reduce the complexity of the delay budget allocation computations. Remaining (S,T) pairs are used to determine scaling factors for significant timing paths through the edges. The smallest of the scaling factors for each edge can be multiplied by an initial delay associated with the edge to produce a delay budget allocation associated with the edge.10-09-2008
20090144688Systems and Methods for Probabilistic Interconnect Planning - Systems and methods for interconnect planning which utilize probabilistic methodologies. One embodiment comprises a method for planning interconnect models in an integrated circuit design. Nets and a set of interconnect models that can be used to connect the pins of each net are first defined. For each net, the probability that each interconnect model will be used to connect the pins of the net is evaluated. Tiles in the integrated circuit design are then assigned probabilities indicating the likelihood that each of the interconnect models will traverse the tiles. A map is then generated to indicate probabilistic routing characteristics (e.g., probabilities of wire congestion, interconnect component congestion, power densities, interconnect model usage) based on the probabilities assigned to each of the tiles in the integrated circuit design. The map may then be output (e.g., printed or otherwise displayed) to a user or stored for later use.06-04-2009

Alvan W. Ng, Austin, TX US

Patent application numberDescriptionPublished
20080228974Design Structure for a Livelock Resolution Circuit - A design structure for a livelock resolution circuit is provided. When a bus unit detects a timeout condition, or potential timeout condition, the bus unit activates a livelock resolution request signal. A livelock resolution unit receives livelock resolution requests from the bus units and signals an attention to a control processor. The control processor performs actions to attempt to resolve the livelock condition. Once a bus unit that issued a livelock resolution request has managed to successfully issue its command, it deactivates its livelock resolution request. If all livelock resolution request signals are deactivated, then the control processor instructs the bus and all bus units to resume normal activity. On the other hand, if the control processor determines that a predetermined amount of time passes without any progress being made, it determines that a hang condition has occurred.09-18-2008
20080301374STRUCTURE FOR DYNAMIC LIVELOCK RESOLUTION WITH VARIABLE DELAY MEMORY ACCESS QUEUE - A design structure for resolving the occurrence of livelock at the interface between the processor core and memory subsystem controller. Livelock is resolved by introducing a livelock detection mechanism (which includes livelock detection utility or logic) within the processor to detect a livelock condition and dynamically change the duration of the delay stage(s) in order to alter the “harmonic” fixed-cycle loop behavior. The livelock detection logic (LDL) counts the number of flushes a particular instruction takes or the number of times an instruction re-issues without completing. The LDL then compares that number to a preset threshold number. Based on the result of the comparison, the LDL triggers the implementation of one of two different livelock resolution processes. These processes include dynamically configuring the delay queue within the processor into one of two different configurations and changing the sequence and timing of handling memory access instructions, based on the specific configuration of the delay queue.12-04-2008
20090164682Livelock Resolution - A mechanism is provided for resolving livelock conditions in a multiple processor data processing system. When a bus unit detects a timeout condition, or potential timeout condition, the bus unit activates a livelock resolution request signal. A livelock resolution unit receives livelock resolution requests from the bus units and signals an attention to a control processor. The control processor performs actions to attempt to resolve the livelock condition. Once a bus unit that issued a livelock resolution request has managed to successfully issue its command, it deactivates its livelock resolution request. If all livelock resolution request signals are deactivated, then the control processor instructs the bus and all bus units to resume normal activity. On the other hand, if the control processor determines that a predetermined amount of time passes without any progress being made, it determines that a hang condition has occurred.06-25-2009
20100153647Cache-To-Cache Cast-In - A data processing system includes a first processing unit and a second processing unit coupled by an interconnect fabric. The first processing unit has a first processor core and associated first upper and first lower level caches, and the second processing unit has a second processor core and associated second upper and lower level caches. In response to a data request, a victim cache line is selected for castout from the first lower level cache. The first processing unit issues on the interconnect fabric a lateral castout (LCO) command that identifies the victim cache line to be castout from the first lower level cache and indicates that a lower level cache is an intended destination. In response to a coherence response indicating success of the LCO command, the victim cache line is removed from the first lower level cache and held in the second lower level cache.06-17-2010
20100235576Handling Castout Cache Lines In A Victim Cache - A victim cache memory includes a cache array, a cache directory of contents of the cache array, and a cache controller that controls operation of the victim cache memory. The cache controller, responsive to receiving a castout command identifying a victim cache line castout from another cache memory, causes the victim cache line to be held in the cache array. If the other cache memory is a higher level cache in the cache hierarchy of the processor core, the cache controller marks the victim cache line in the cache directory so that it is less likely to be evicted by a replacement policy of the victim cache, and otherwise, marks the victim cache line in the cache directory so that it is more likely to be evicted by the replacement policy of the victim cache.09-16-2010
20100235584Lateral Castout (LCO) Of Victim Cache Line In Data-Invalid State - A victim cache line having a data-invalid coherence state is selected for castout from a first lower level cache of a first processing unit. The first processing unit issues on an interconnect fabric a lateral castout (LCO) command identifying the victim cache line to be castout from the first lower level cache, indicating the data-invalid coherence state, and indicating that a lower level cache is an intended destination of the victim cache line. In response to a coherence response to the LCO command indicating success of the LCO command, the victim cache line is removed from the first lower level cache and held in a second lower level cache of a second processing unit in the data-invalid coherence state.09-16-2010
20100262784Empirically Based Dynamic Control of Acceptance of Victim Cache Lateral Castouts - A second lower level cache receives an LCO command issued by a first lower level cache on an interconnect fabric. The LCO command indicates an address of a victim cache line to be castout from the first lower level cache and indicates that the second lower level cache is an intended destination of the victim cache line. The second lower level cache determines whether to accept the victim cache line from the first lower level cache based at least in part on the address of the victim cache line indicated by the LCO command. In response to determining not to accept the victim cache line, the second lower level cache provides a coherence response to the LCO command refusing the identified victim cache line. In response to determining to accept the victim cache line, the second lower level cache updates an entry corresponding to the identified victim cache line.10-14-2010

Patent applications by Alvan W. Ng, Austin, TX US

Alvan Wing Ng, Austin, TX US

Patent application numberDescriptionPublished
20090063735Method and Apparatus for Operating an Age Queue for Memory Request Operations in a Processor of an Information Handling System - A processor includes a processor core with a core interface unit that includes an age queue and a request queue. The core interface unit receives load requests from the processor core. The request queue stores the requests in respective slots of the request queue. The age queue stores ID tags in respective age queue slots. Each ID tag in the age queue corresponds to a respective address of a load instruction in the request queue. In one embodiment, ID tags propagate through the age queue at a fixed rate of two at a time from a tail of the age queue to a head of the age queue. Arbitration control circuitry generates an enable bit vector that identifies the oldest ID tag in the age queue corresponding to the oldest load request in the request queue. The arbitration circuitry selects the identified oldest instruction in the request queue as the next to dispatch. In one embodiment, the core interface unit exhibits an input frequency that is a multiple of an internal operating frequency of the core interface unit.03-05-2009
20090064068Method and Apparatus for Evaluating the Timing Effects of Logic Block Location Changes in Integrated Circuit Design - An integrated circuit (IC) floorplan system includes an integration design system that executes IC floorplan software on a semiconductor die IC model. The IC floorplan software includes a timing tool database of the IC model. IC integrators utilize the IC floorplan software to evaluate logic block moves within the IC model. The IC floorplan software analyzes wire interconnect signal propagation time delays that result from prospective logic block moves with the IC model. The IC floorplan software reports back in real time whether or not a prospective move of a logic block from one location to another in the IC model will cause a timing failure due to a wire interconnect time delay exceeding a predetermined timing parameter.03-05-2009

Patent applications by Alvan Wing Ng, Austin, TX US

Boon Loong Ng, Richardson, TX US

Patent application numberDescriptionPublished
20120026972APPARATUS AND METHOD FOR SUPPORTING RANGE EXPANSION IN A WIRELESS NETWORK - A wireless network for communicating with a mobile station capable of operating in a range expansion mode. The wireless network comprises a macro-base station (BS) operable to communicate with the mobile station and a micro-base station (BS) in a coverage area associated with the macro-BS. The macro-BS transmits to the micro-BS a first control message indicating a range expansion (RE) capability of the mobile station. In response, the micro-BS transmits to the macro-BS PCFICH information associated with the micro-BS. The macro-BS transmits the PCFICH information to the mobile station and the mobile station uses the PCFICH information to perform a handover procedure to the micro-BS.02-02-2012

Gregory C. Ng, Austin, TX US

Patent application numberDescriptionPublished
20100106759Methods and apparatus for reordering data - A data reordering system for determining addresses associated with a vector of transformed data and corresponding method of reordering transformed data, where the data reordering system includes: a first transform function coupled to a data vector and operable to provide the vector of transformed data; a reordering function, including a plurality of counters, that is operable to determine a plurality of offset addresses, with a, respective, offset address for each element in the vector of transformed data; and an adder operable to add a base address that corresponds to the first address to the each, respective, offset address to provide a sequence of addresses suitable for accessing the vector of transformed data to provide a re-sequenced vector of transformed data.04-29-2010
20100239006VIDEO DECODER PLUS A DISCRETE COSINE TRANSFORM UNIT - A video encoder and a decoder analyze the spatial content video data in an H.264 stream using the discrete cosine transform (DCT). Although the DCT is computed as part of the H.264 encoding process, it is not computed as part of the decoding process. Thus, one would compute the DCT of the video data after it has been reconstructed by the video decoder for video post-processing or enhanced video encoding. A method for accelerating the computation of the DCT at the decoder side when transmitting intra-mode macroblocks uses information computed by the encoder and transmitted as part of the H.264 video stream.09-23-2010

Hang Ng, Austin, TX US

Patent application numberDescriptionPublished
20090187643System and Method for Configuring Networked Enterprise Information Handling System Solutions From a Product and Options Template - Networked enterprise information handling system solutions are configured by reference to a components template having plural components, each component having one or more associated attributes, such as in an XML structure. A selector interface provides end user access to the component template to accept end user inputs for products and constraints. A configuration engine applies selected products and constraints to products and constraints of the component template to automatically generate an enterprise solution of networked information handling systems.07-23-2009

Mom-Eng Ng, Austin, TX US

Patent application numberDescriptionPublished
20110301889FLEXIBLE POWER REPORTING IN A COMPUTING SYSTEM - A system and method for efficient reporting of power usage. A power reporting unit within a processor receives a power consumption number once every sample interval from a power monitor. The power monitor determines a power consumption number based on data corresponding to activity levels of one or more functional blocks within the processor. This data corresponds to each of a number of sampled signals within the one or more functional blocks rather than temperature. Thus, the data is independent of environment temperature variations. An average power consumption number is computed based on received power consumption numbers for a running time interval, wherein the running time interval is larger than the sample interval. This value is conveyed to an external agent, such as a controller for a data center rack system. Responsive to receiving and processing the average power consumption number, the external agent may perform one or more actions. For example, the external agent may cause changes in a cooling system.12-08-2011