Table look-up method with adaptive hashing
First Claim
1. A method of controlling a system using control data stored in a data table within a controller memory unit indexed as a function of a measurable parameter of the system, the method comprising the steps of:
- establishing a hash table in said memory unit having hash index values;
linking various values of said measurable parameter to said hash index values with a hash function;
forming key elements for each of the linked values of said measurable parameter, each key element including a hash index value, an index value for said data table and a weight value;
selecting for inclusion in the hash table only key elements for which said weight value exceeds a specified weight, and chaining the selected key elements to a respective hash index value in said hash table;
obtaining a sample of said measurable parameter;
determining a hash index value corresponding to said sample, probing the key elements chained to the determined hash index to locate a key element for said sample, and locating control data stored for said sample using a data table index value of the located key element;
probing said data table to locate the control data for said sample if a key element for said sample is not located in said hash table; and
controlling said system using the located control data.
5 Assignments
0 Petitions
Accused Products
Abstract
Accessed memory locations of a data table are assigned weights based on usage history, and a hash table chains the highest-weight key values to an abbreviated hash index. The hash table includes keys having at least a predetermined weight so that highly accessed keys are identified by hashing. Additionally, the keys chained to a given hash index are ordered based on their weight in order to optimize the overall data retrieval time. The weights assigned to accessed keys are updated over time so that the content of the hash table is adaptively updated to suit the current table look-up requirements.
-
Citations
5 Claims
-
1. A method of controlling a system using control data stored in a data table within a controller memory unit indexed as a function of a measurable parameter of the system, the method comprising the steps of:
-
establishing a hash table in said memory unit having hash index values; linking various values of said measurable parameter to said hash index values with a hash function; forming key elements for each of the linked values of said measurable parameter, each key element including a hash index value, an index value for said data table and a weight value; selecting for inclusion in the hash table only key elements for which said weight value exceeds a specified weight, and chaining the selected key elements to a respective hash index value in said hash table; obtaining a sample of said measurable parameter; determining a hash index value corresponding to said sample, probing the key elements chained to the determined hash index to locate a key element for said sample, and locating control data stored for said sample using a data table index value of the located key element; probing said data table to locate the control data for said sample if a key element for said sample is not located in said hash table; and controlling said system using the located control data. - View Dependent Claims (2, 3, 4, 5)
-
Specification