TY - JOUR
T1 - A Special Function Unit for Database Operations (SFU-DB)
T2 - Design and Performance Evaluation
AU - Lam, Herman
AU - Lee, C.
AU - Su, Stanley Y.W.
PY - 1991/3
Y1 - 1991/3
N2 - This paper describes the design and analysis of a special function unit for database operations (SFU-DB) which uses a novel hardware sorting module, the Automatic Retrieval Memory (ARM). The SFU-DB is a functionally independent unit that efficiently performs certain nonnumeric operations. It can function as a coprocessor for a host CPU or as a special processing unit in a highly parallel processing system. The ARM implements in hardware a true “distribution-based” sort algorithm that requires no comparison operations. Without performing any comparison, the SFU-DB avoids the lower bound constraint on comparison-based sorting algorithms and achieves, for the worst case, a complexity of O(n) for both execution time and main memory size. Using the fundamental sort algorithm with slight modifications, the SFU-DB also uses the ARM as an engine for other primitive database operations such as relational join, elimination of duplicates, set union, set intersection, and set difference, also with complexity of O(n). Finally, the SFU-DB/ARM architecture is rather simple and requires only a modest amount of specialized hardware. The specialized hardware has been designed and simulated for fabrication using CMOS gate arrays and the remainder of the SFU-DB has been simulated in software using Turbo Pascal running on an IBM-PC.
AB - This paper describes the design and analysis of a special function unit for database operations (SFU-DB) which uses a novel hardware sorting module, the Automatic Retrieval Memory (ARM). The SFU-DB is a functionally independent unit that efficiently performs certain nonnumeric operations. It can function as a coprocessor for a host CPU or as a special processing unit in a highly parallel processing system. The ARM implements in hardware a true “distribution-based” sort algorithm that requires no comparison operations. Without performing any comparison, the SFU-DB avoids the lower bound constraint on comparison-based sorting algorithms and achieves, for the worst case, a complexity of O(n) for both execution time and main memory size. Using the fundamental sort algorithm with slight modifications, the SFU-DB also uses the ARM as an engine for other primitive database operations such as relational join, elimination of duplicates, set union, set intersection, and set difference, also with complexity of O(n). Finally, the SFU-DB/ARM architecture is rather simple and requires only a modest amount of specialized hardware. The specialized hardware has been designed and simulated for fabrication using CMOS gate arrays and the remainder of the SFU-DB has been simulated in software using Turbo Pascal running on an IBM-PC.
UR - http://www.scopus.com/inward/record.url?scp=0026121202&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0026121202&partnerID=8YFLogxK
U2 - 10.1109/12.76403
DO - 10.1109/12.76403
M3 - Article
AN - SCOPUS:0026121202
SN - 0018-9340
VL - 40
SP - 263
EP - 275
JO - IEEE Transactions on Computers
JF - IEEE Transactions on Computers
IS - 3
ER -