Silicon Graphics Patent Grants

System and method for uncached store buffering in a microprocessor

Granted: October 5, 1999
Patent Number: 5963981
In a microprocessor system utilizing a cache memory, an uncached store buffer is provided for efficiently providing uncached store data and uncached store addresses to a multiplexed system interface address/data bus. The uncached store buffer includes detector means, coupled to receive uncached store addresses, for detecting on-the-fly successive uncached store addresses which are identical, and for detecting on-the-fly successive uncached store addresses which are sequential. The…

System and method for scheduling an event subject to the availability of requested participants

Granted: October 5, 1999
Patent Number: 5963913
A system and method are provided for scheduling an event subject to the availability of requested participants. A server application (16) receives event information submitted by a scheduler using a client application (12) to access an event definition page (50). The event information provides one or more options for scheduling an event and lists a plurality of requested participants. Responsive to receiving the event information, the server application (16) creates an event reply page…

Cable management system for a computer

Granted: September 28, 1999
Patent Number: 5957556
A computer system includes seveal computing areas which are connected to one another by a number of cables. The cables are necessary to carry information from one computing area to another computing area. The cables can be thought of as the information highway between computing areas. The computer system has a first housing which has a frame. The frame includes an elongated hollow corner post that has an opening along the length of the corner post. The hollow portion of the corner post…

System method and computer program product for dynamically sizing hash tables

Granted: September 28, 1999
Patent Number: 5960434
The present invention is a system, method, and computer program product for dynamically sizing a hash table when the average number of records per bucket in the hash table exceeds a maximum average number of records per bucket. In one embodiment, the hash table employs a modulo hashing function. In a second embodiment, the number of buckets is grown by a multiple of the previous number of buckets and records are re-hashed using a lazy re-hashing modulo algorithm that re-hashes records in…

Method, system, and computer program product for computing histogram aggregations

Granted: September 28, 1999
Patent Number: 5960435
A data record transformation that computes histograms and aggregations quickly for an incoming record stream. The data record transformation computes histograms and aggregations in one-step, thereby, avoiding the creation of a large intermediate result. The data record transformation operates in a streaming fashion on each record in an incoming record stream. Little memory is required to operate on one record or a few records at a time. According to a first embodiment, a method, system,…

Invalidating instructions in fetched instruction blocks upon predicted two-step branch operations with second operation relative target address

Granted: September 21, 1999
Patent Number: 5954815
A computing system that contains an apparatus comprising an instruction memory to store a plurality of lines of a plurality of instructions, and a branch memory to store a plurality of branch prediction entries, each branch prediction entry containing information for predicting whether a branch designated by a branch instruction stored in the instruction memory will be taken when the branch instruction is executed. Each branch prediction entry includes a branch target field for…

Method, system, and computer program product for bump mapping in tangent space

Granted: September 7, 1999
Patent Number: 5949424
A method, system, and computer program product for accelerated shading of an object surface by bump mapping in tangent space. A tangent space transform module builds a tangent space transform matrix M(p) having elements comprised of normal, tangent, and binormal vector components determined at a surface point on the object surface. The tangent space transform module further transforms shading vectors, such as, lighting and viewing vectors, into a tangent space defined by the tangent…

System and method for color space conversion

Granted: August 31, 1999
Patent Number: 5946113
A system and method for converting a color uses an extended color space to convert a color from a first color space to a second color space. The extended color space is extended from the second color space. In other words, the extended color space has increased valid component ranges compared with the second color space to accommodate the conversion of any valid colors from the first color space. Subsequent operations on the converted color in the extended color space occur without the…

Texture mapping circuit for performing data interpolations

Granted: August 24, 1999
Patent Number: 5943058
A method and apparatus for producing output values corresponding to pixels of an input image. A coordinate translation circuit for is provided for performing coordinate translation from input pixel color components to corresponding texture coordinates. The texture coordinates collectively determine a texture address. The coordinate translation circuit also generates a set of interpolation factors in one embodiment used to resample around the point in texture space defined by the texture…

Apparatus and method for error concealment in an audio stream

Granted: August 24, 1999
Patent Number: 5943347
A method for concealing errors during transmission of audio data packets. Initially, the fundamental pitch period of a data packet is determined. A value indicating this fundamental pitch period is added as a preamble to the data packet prior to its transmission. When a data packet is received, it is checked for dropped or corrupted data. If there are any errors, the fundamental pitch period is replicated with the data from the previous frame the requisite number of times and substituted…

Computer graphics silhouette load management

Granted: August 10, 1999
Patent Number: 5936626
A method of displaying an object in a real-time simulation using silhouette load mangement techniques, whereby a minimal number of polygons is used in the display process. Two-dimensional silhouettes are created by taking snapshots of three-dimensional models at various angles of view. These silhouettes are stored in texture memory. The appropriate silhouette is selected for display depending upon the angle from which that object is viewed. As the angle of view changes, a different…

System and method for buffering multiple frames while controlling latency

Granted: August 3, 1999
Patent Number: 5933155
A system and method for managing multiple frame buffers. The system includes multiple frame buffers, and thus reduces the risk of dropped frames. The system controls and bounds render-to-display latency, and provides an application friendly and effective interface to the frame buffers. The system operates by estimating a latency of a frame that is yet to be rendered. The system determines whether the latency is greater than a target latency. If the latency is greater than the target…

Low-latency real-time dispatching in general purpose multiprocessor systems

Granted: July 27, 1999
Patent Number: 5928322
A low-latency real-time dispatching scheme performed by the operating system of a general purpose multiprocessor system having N processors, assigns a priority to each of multiple real-time threads to be executed on the N processors. The multiple real-time threads include up to N top priority real-time threads, which are bound to a corresponding processor. The assigned priority of each bound real-time thread is the highest priority for being executed on its corresponding processor, and…

System and method for using dependency graphs for the control of a graphics creation process

Granted: July 27, 1999
Patent Number: 5929864
A system and method for merging all subsystems within a graphics system into a single control entity, referred to herein as a dependency graph. The term "dependency graph" refers to a set of dependency nodes and the information flowing between the dependency nodes. Seamless interaction is accomplished by defining a strongly typed, rigidly enforced interface to the set of dependency nodes. Any dependency node that wants to interact with another dependency node must do so through a…

Method, system, and computer program product for visualizing an evidence classifier

Granted: July 27, 1999
Patent Number: 5930803
A method, system, and computer program product visualizes the structure of an evidence classifier. An evidence inducer generates an evidence classifier based on a training set of labeled records. A mapping module generates visualization data files. An evidence visualization tool uses the visualization data files to display an evidence pane and/or a label probability pane. A first evidence pane display view shows a normalized conditional probability of each label value, for each attribute…

Sliding door assembly for a computer housing

Granted: July 20, 1999
Patent Number: 5924780
A door assembly which includes a door that slides open and closed to alternatively expose and cover components of a computer system. The door assembly includes a rack and pinion system that prevents racking of the door. The non-racking feature allows for the door to be wider than prior art doors such that more components may be easily accessed by a computer user. The door assembly also includes a spring assembly for automatically closing the door, a dampener for moderating the movement…

Display and control of menus with radial and linear portions

Granted: July 20, 1999
Patent Number: 5926178
A menu may be displayed combining a radial marking menu portion and a linear menu portion. Item selection in the linear portion is performed by location selection using a pointing device. Item selection in the marker portion is determined by the pattern of a stroke made by the pointing device with the system ignoring linear menu items across which the stoke completely passes. Linear menu items may be non-hierarchically related to the radial items. Linear and radial portions may be…

Cross-module optimization for dynamically-shared programs and libraries

Granted: July 13, 1999
Patent Number: 5923882
A system and method of eliminating some of the indirect addressing associated with Position Independent Code (PIC). The invention applies cross-module optimization to dynamic linking of shared libraries. A definition table is built that defines where each symbol within an application program and associated shared library is defined. Also stored in the definitions table is an associated attribute. The definition table is utilized to eliminate indirect addressing wherever possible. As a…

High bandwidth PCI to packet switched router bridge having minimized memory latency

Granted: June 22, 1999
Patent Number: 5915104
In a computer system, a mechanism for minimizing memory latencies. An improved, high-speed packet switched router is used to route packets quickly and efficiently between the microprocessor and the main memory. The computer system also supports PCI devices by implementing a bridge which acts as an interface between the PCI bus and the packet switched router. In order to minimize the memory latencies for PCI based memory accesses through the bridge, a plurality of read and write buffers…

Latching assembly for a computer

Granted: June 1, 1999
Patent Number: 5907962
A computer which includes a computer chassis and a door is disclosed. The chassis includes a slot and the door includes a corresponding slot which are aligned when the door is in the closed position so as to create an opening which extends through the chassis and through the door. A tab assembly is inserted into the opening. The tab assembly includes two tabs which are coupled together such that the tabs may move laterally with respect to each other. The tabs may be moved into an…