1. A unidirectional transducer for a SAW filter comprising:
a piezoelectric substrate;
a first electrode formed on said substrate and comprising a plurality of electrode fingers, said electrode fingers each having a width about 8 in a propagation direction of a fundamental surface acoustic wave with a propagation wavelength ; and
a second electrode formed on said substrate so as to be substantially parallel to said first electrode, and comprising a plurality of first and second electrode fingers, said first electrode fingers each having a width about 8 in the propagation direction of the fundamental surface acoustic wave, and said second electrode fingers each having a width about 38 in the propagation direction of the fundamental surface acoustic wave:
a first group comprising the second electrode finger, the electrode finger arranged at a center distance 38 in a direction opposite to said propagation direction from said second electrode, and the first electrode finger arranged at a center distance 58 in a direction opposite to said propagation direction from said second electrode finger;
a second group comprising the second electrode finger arranged at center distance 108 in said propagation direction from said second electrode in said first group, the electrode finger arranged at a center distance 138 in said propagation direction from said second electrode in said first group, and the first electrode finger arranged at a center distance 158 in said propagation direction from said second electrode finger in said first group; and
a third group comprising the first electrode finger arranged at a center distance 38 in said propagation direction from said second electrode in said first group, the first electrode finger arranged at a center distance 58 in said propagation direction from said second electrode in said first group, and the first electrode finger arranged at a center distance 78 in said propagation direction from said second electrode finger in said first group.
2. A SAW filter comprising: a substrate; an input transducer formed on said substrate, in which an electric signal is input form external and in which said electrical signal is transformed into a surface acoustic wave; and an output transducer formed on said substrate, in which the surface acoustic wave excited in said input transducer is transformed into the electric signal, and in which said electric signal is output to external;
at least one of said input and output transducers comprising a unidirectional transducer, said transducer comprising:
a first electrode formed on said substrate and comprising a plurality of electrode fingers, said electrode fingers each having a width about 8 in a propagation direction of a fundamental surface acoustic wave with a propagation wavelength ; and
a second electrode formed on said substrate so as to be substantially parallel to said first electrode, and comprising a plurality of first and second electrode fingers, first electrode fingers each having a width about 8 in the propagation direction of the fundamental surface acoustic wave, and said second electrode fingers each having a width about 38 in the propagation direction of the fundamental surface acoustic wave;
a first group comprising the second electrode finger, the electrode finger arranged at a center distance 38 in a direction opposite to said propagation direction from said second electrode, and the first electrode finger arranged at a center distance 58 in a direction opposite to said propagation direction from said second electrode finger;
a second group comprising the second electrode finger arranged at a center distance 108 in said propagation direction from said second electrode in said first group, the electrode finger arranged at a center distance 138 in said propagation direction from said second electrode in said first group, and the first electrode finger arranged at a center distance 158 in said propagation direction from said second electrode finger in said first group; and
a third group comprising the first electrode finger arranged at a center distance 38 in said propagation direction from said second electrode in said first group, the first electrode finger arranged at a center distance 58 in said propagation direction from said second electrode in said first group, and the first electrode finger arranged at a center distance 78 in said propagation direction from said second electrode finger in said first group.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method for carrying out a procedure on a computer system having a memory, the memory containing user context data and global data, comprising: executing a first server, wherein the first server comprises a computer-executable function for performing a first sub-task of the procedure; carrying out the first sub-task including manipulating the global data; sending the user context data to a second server; executing the second server, wherein the second server comprises a computer-executable function for performing a second sub-task of the procedure; and carrying out the second sub-task including manipulating the global data and using the user context data, wherein the first and second servers execute with the user context data and the global data stored in a cache such that, for each server, global data in the cache is given priority over user context data in the cache.
2. The method of claim 1, further comprising storing the user context data in a work packet and sending the work packet from the first server to the second server, wherein the work packet contains an action code for describing an action to be performed by the second server.
3. The method of claim 2, wherein the work packet contains a reply state, and the method further comprises: causing the second server to update the work packet by replacing a value contained in the action code with a value contained in the reply state; and causing the second server to send the updated work packet back to the first server.
4. The method of claim 1, further comprising: in response to receiving at the first server a first work-packet containing the user context data, causing the first server to partly perform the first sub-task using the first work packet, sending a second work packet containing the user context data from the first server to the second server, causing the second server to perform the second sub-task using the second work packet and store a result of the second sub-task in the second work packet, and sending the second work packet from the second server to the first server, wherein the result is usable by the first server to complete the performance of the first sub-task.
5. The method of claim 4, where in the second work packet is linked as a child to the first work packet.
6. The method of claim 1, wherein the computer system has a first CPU and a second CPU, and the cache is comprised of a first area usable by the first CPU and a second area usable by the second CPU, and the executable code of the first server is optimized to fit in the first area and the executable code of the second server is optimized to fit in the second area.
7. The method of claim 1, wherein the procedure is a search of a database index tree containing a plurality of nodes that contain node data, the first sub-task is to examine a node and the second sub-task is to perform an inputoutput operation for retrieving the node from memory and storing the node in the cache.
8. The method of claim 7, further comprising: in response to receiving at the first server a first work packet containing the user context data, causing the first server to determine if a node is in the cache; and if the node is determined not to be in the cache, sending a second work packet containing the user context data from the first server to the second server, causing the second server to retrieve the node from a main memory using the second work packet and store the node in the cache, causing the second server to store a reference to the node in the cache in the second work packet, and sending the second work packet from the second server to the first server, wherein the first server responds to the receipt of the second work packet by searching the node in the cache.
9. The method of claim 8, wherein the first work packet contains a reference to a parent work packet.
10. The method of claim 1, wherein the computer system has a plurality of CPUs, and at least one server executes on only one CPU at a time.
11. The method of claim 1, wherein the computer system has a plurality of CPUs, and at least two instances of one of the servers execute concurrently on different CPUs.
12. The method of claim 1, wherein the computer system has a first CPU and a second CPU, and the work packet has a designated value, and wherein one of the servers executes on the first CPU when the designated value falls within a first range and executes on the second CPU when the designated value falls within a second range.
13. The method of claim 1, wherein additional user context data and global data is not stored in the cache.
14. A computer-readable medium having stored thereon a computer program for carrying out a procedure with two or more sub-tasks on a computer system having a cache, global data and a user context, the computer program comprising: a server for each sub-task, wherein each server comprises a computer executable function for performing its respective sub-task on the global data using the user context and each server executes with the global data and the user context stored in the cache such that, for each server, global data in the cache is given priority over user context data in the cache; and a work packet for transferring the user context between two or more of the servers.
15. The computer-readable medium of claim 14, further comprising an action code located in the work packet for describing an action to be performed by a server.
16. The computer-readable medium of claim 14, further comprising a reply state code for the work packet, the reply state code being usable by a server to gain information about results of a function executed by another server.
17. The computer-readable medium of claim 14, further comprising: a first work packet for a first server; a second work packet for a second server, wherein the first work packet is usable by the first server to perform a first sub-task on the global data and the second work packet is usable by the second server to receive the user context from the first server, perform the second task, and return a result of the second task to the first server.
18. The computer-readable medium of claim 17, wherein the second work, packet is linked as a child to the first work packet.
19. The computer-readable medium of claim 14, wherein the computer system has a first CPU and a second CPU, and the cache is comprised of a first area usable by the first CPU and a second area usable by the second CPU, and the first server is optimized to fit in the first area and the second server is optimized to fit in the second area.
20. The computer-readable medium of claim 14, wherein the procedure is a search of a database index tree containing a plurality of nodes that contain node data, the first sub-task is to examine a node and the second sub-task is to perform an inputoutput operation for retrieving the node from memory.
21. The computer-readable medium of claim 14, wherein the computer system has a plurality of CPUs, and at least one of the servers is configured execute on only one CPU at a time.
22. The computer-readable medium of claim 14, wherein the computer system has a plurality of CPUs and at least one of the servers is configured to run concurrently as at least two instances on different CPUs.
23. The computer-readable medium of claim 14, wherein the computer system has a first CPU and a second CPU, a designated value field is defined for work packet, and wherein at least one of the servers executes on the first CPU when the designated value falls within a first range and executes on the second CPU when the designated value falls within a second range.
24. A computer-readable medium having stored thereon a data structure, the data structure comprising: a work packet for transferring user context information between at least two servers, wherein each server comprises at least one function for performing a sub-task of a computer-executable procedure to manipulate a global data set using the user context information and each server executes with the user context information and the global data set in a cache such that, for each server, the global data set in the cache is given priority over user context information in the cache.
25. The computer-readable medium of claim 24, wherein the work packet has defined therein an action code for describing an action to be performed by one of the servers.
26. The computer-readable medium of claim 25, wherein the work packet has defined therein a reply state usable by one of the servers to send a result of its sub-task to another server.
27. A computer-readable medium having stored thereon a data structure, the data structure comprising: a first server defining comprising at least one function for performing a sub-task of a computer-executable procedure to manipulate a global data set, wherein the first server executes the function in response to receipt of a first work packet, the first work packet containing user context information usable by the first server to perform the sub-task, wherein the first server transmits the user context information to a second server using a second work packet, and wherein each server executes with the global data set and the user context information in a cache such that, for each server, the global data set in the cache is given priority over user context information in the cache.
28. The computer-readable medium of claim 27, wherein the second server stores a result of a second sub-task performed on the global data set in the second work packet and returns the second work packet to the first server.
29. A computer-readable medium having computer-executable instructions for performing a method, on a computer system having a memory, the memory containing user context-data and global data, the method comprising: executing a first server wherein the first server comprises a computer-executable function for performing a first sub-task of the procedure: carrying out the first sub-task including manipulating the global data: sending the user context data to a second server executing the second server, wherein the second server comprises a computer-executable function for performing a second sub-task of the procedure; and carrying out the second sub-task including manipulating the global data and using the user context data, wherein the first and second servers execute with the user context data and the global data stored in a cache such that, for each server global data in the cache is given priority over user context data in the cache.
30. The computer-readable medium of claim 29 having further computer-executable instruction for: storing the user context data in a work packet and sending the work packet from the first server to the second server, wherein the work packet contains an action code for describing an action to be performed by the second server.
31. The computer-readable medium of claim 30, wherein the work packet contains a reply state, and the computer-readable medium has further computer-executable instructions for causing the second server to update the work packet by replacing a value contained in the action code with a value contained in the reply state; and causing the second server to send the updated work packet back to the first server.
32. The computer-readable medium of claim 29, having further computer-executable instructions for: in response to receiving a first work packet containing the user context-data, causing the first server to partially complete the first sub-task using the first work packet, sending a second work packet containing the user context data from the first server to the second server, causing the second server to perform the second sub-task using the second work packet and store a result of the second sub-task in the second work packet, and sending the second work packet to the first server, wherein the result is usable by the first server to fully complete the first sub-task.
33. The computer-readable medium of claim 29, wherein the computer system has a first, CPU and a second CPU, and the cache is comprised of a first area usable by the first CPU and a second area usable by the second CPU, and the executable code of the first server is optimized to fit in the first area and the executable code of the second server is optimized to fit in the second area.
34. The computer-readable medium of claim 29, wherein the procedure is a search of a database index tree containing a plurality of nodes that contain node data, the first sub-task is to examine a node and the second sub-task is to perform an inputoutput operation for retrieving the node from memory and storing the node in the cache.
35. The computer-readable medium of claim 34 having further computer-executable instruction for: in response to receiving a first work packet containing the user context data, causing the first sever to determine if a node is in the cache; and if the node is determined not to be in the cache, sending a second work packet containing the user context data from the first server to the second server, causing the second server to retrieve the node from a main memory using the second work packet and store the node in the cache; causing the second server to store a reference to the node in the cache in the second work packet, and sending the second work packet from the second server to the first server, wherein the first server searches the node in the cache.
36. The computer-readable medium of claim 35, wherein the first work packet contains a reference to a parent work packet.
37. The computer-readable medium of claim 29, wherein the computer system has plurality of CPUs, and least one server executes on only one CPU at a time.
38. The computer-readable medium of claim 29, wherein the computer system has a plurality of CPUs, and at least two instances of one of the servers execute concurrently on different CPUs.
39. The computer readable medium of claim 29, wherein the computer system has a first CPU and a second CPU, and the work packet has a designated value, and wherein one of the servers executes on the first CPU when the designated value falls within a first range and executes on the second CPU when the designated value falls within a second range.