1460740600-4bfd5086-4852-4648-b009-a3fe27f58130

1. An remote transceiver for use in a system having a plurality of remote transceivers that transmit synchronous time division multiplexed frames of upstream data to a central transceiver on a shared medium on the same frequency, comprising:
a time division multiplexed receiver having clock and carrier recovery circuits, for recovering a master clock and master carrier transmitted downstream and generating local clock and carrier signals that are synchronized with the recovered master clock and master carrier, and having conventional demodulator, demultiplexer and detector circuits to recover downstream payload data;
a time division multiplexed transmitter coupled to receive upstream payload data and said local clock and local carrier signals and including a circuit to organize said payload data into timeslots with preamble data known to said central transceiver inserted into at least some of said timeslots so as to cause said preamble data to be received by said central transceiver preceding reception of any payload data when data in said timeslots is transmitted, and said transmitter including circuitry to transmit said payload data and preamble data in said time slots, but said transmitter having an improvement comprising a ranging circuit that carries out a ranging protocol with a central transceiver to determine a transmit frame timing delay which, when imposed by said time division multiplexed transmitter prior to transmission of each upstream frame, will cause frame synchronization to exist such that each upstream frame transmitted by said remote transceiver arrives at said central transceiver timed so as to have its timeslot boundaries exactly lined up in time with the timeslot boundaries of upstream frames transmitted by other remote transceivers that have already achieved frame synchronization.
2. The apparatus of claim 1 wherein said central transceiver sends downstream frames to each remote transceiver and is structured to use any modulation scheme and a time division multiple access multiplexing scheme to transmit a master clock reference and master carrier references as well as payload data to said remote transcievers, and wherein said synchronous time division multiplexed transmitter generates upstream frames of the same size as said downstream frames and said ranging circuitry is structured to establish said transmit frame timing delay such that upstream frames transmitted by said remote unit modem have their frame boundaries aligned in time not only with the frame boundaries of other remote transceivers which have achieved frame synchronization but also correctly aligned in time with frame boundaries estabished by an upstream frame counter in said central transceiver.
3. The apparatus of claim 2 further comprising a frequency converter coupled to said remote transceiver transmitter for converting the output frequency of said transmitter to a frequency that does not interfere with downstream transmissions from said central transceiver or with any other transmissions on said shared medium.
4. The apparatus of claim 1 wherein said remote transmitter transmits upstream frames with a gap between each frame during which no upstream payload data is transmitted, and wherein said ranging circuitry comprises means for carrying out a ranging process before any upstream payload data is sent comprising an iterative trial and error adjustment of said transmit frame timing delay followed by transmission of a ranging signal and continuing this iterative process until a message is received from said central transceiver that said ranging signal has arrived in a gap, and then for transmitting identification information during an authentication interval that identifies this particular remote transceiver, and then for cooperating with said central transceiver to carry out a fine tuning process to adjust said transmit frame timing delay such that the frame and timeslot boundaries of frames and timeslots transmitted by said remote transceiver exactly line up in time at the input to said central transceiver with frames and timeslots transmitted by other remote transceivers that have achieved frame synchronization.
5. The apparatus of claim 1 wherein said remote unit transmitter transmits upstream frames with a gap between each frame during which no upstream payload data is transmitted, and wherein said ranging circuitry comprises a computer programmed to coordinate the implementation of a trial and error ranging process prior to transmission of any upstream data, said ranging process comprised of the steps of said computer setting an initial transmit frame timing delay value and transmitting that value to said time division multiplexed transmitter of said remote transceiver, and said transmitter using said value to time the transmission of a ranging signal and then said computer iteratively changing the transmit frame timing delay value and causing said transmitter to transmit another ranging signal until one or more messages are received by said receiver from said central transceiver indicating that said ranging signal has been received and by how much and in what direction to adjust said transmit frame timing delay value to achieve frame synchronization, said computer then setting said transmit frame timing delay value at said value which causes frame synchronization to exist and thereafter using said value for subsequent transmission of upstream frames of payload data.
6. The apparatus of claim 1 wherein said transmitter transmits data upstream to said central transceiver in frames separated by gaps, and wherein said computer is further programmed to transmit identification information to said central transceiver during an authentication interval after said receiver first receives a message a said ranging signal has been found in a gap by said central transceiver, said identification information comprising transmission of said ranging signal in a unique sequence that identifies said remote transceiver during an authentication interval comprised of a plurality of gaps, said unique sequence comprised of transmission of ranging signals during a predetermined number of said gaps that do not have to be contiguous and silence during the remaining gaps of said authentication interval, and further programmed to determine if after sending said identification information said receiver receives a message directed to said remote transceiver indicating said central transceiver has received said identification information and knows who sent said ranging signal, and further programmed to monitor said receiver for reception of a fine tuning message from said central transceiver indicating by how much and in which direction to adjust said transmit frame timing delay to achieve frame synchronization.
7. A synchronous multiplexed central transceiver for use in a digital data communication system comprised of said central transceiver coupled by a shared transmission medium to a plurality of remote transceivers, comprising:
a downstream transmitter means for using time division multiple access, synchronous time division multiple access, frequency division multiple access, inverse Fourier, synchronous code division multiple access or digital multitone multiplexing and a modulation technique compatible with said remote transceivers to transmit data from different services downstream to said plurality of remote transceivers;
an upstream TDMA or SCDMA receiver means for using a master clock in said synchronous multiplexed central transceiver and known preamble data transmitted by each said remote transceiver prior to transmission of any upstream payload data to determine phase and amplitude offsets for each remote transceiver’s upstream time division multiplexed or synchronous code division multiplexed transmissions; and
ranging means for receiving ranging transmissions from said remote transceivers and sending messages to said remote transceivers as part of a predetermined protocol designed to achieve frame synchronization such that each frame of code division multiplexed or time division multiplexed data transmitted from a remote transceiver that arrives at said receiver means arrives with its frame boundaries virtually exactly aligned in time with the frame boundaries of frames transmitted from other remote transceivers that have already achieved frame synchronization.
8. The apparatus of claim 7 further comprising:
a master clock oscillator coupled to said transmitter means and said receiver means;
a master carrier oscillator coupled to said transmitter and and said receiver means; and
wherein said receiver means includes means for using said master clock and master carrier signals and preamble data received from each remote transceiver to receive upstream data therefrom.
9. The apparatus of claim 8 wherein said receiver means includes conventional clock and carrier recovery circuits to recover the chip clock or symbol clock and carrier signal used by each remote transceiver to transmit upstream preamble and payload data and for using said recovered clock and carrier signals to receive said upstream preamble and payload signals.
10. A process of synchronous time division or code division multiplexed upstream transmissions of digital data to a headend transceiver on the same frequency over a shared transmission medium from a plurality of distributed remote transceivers all at different distances from a headend transceiver comprising the steps:
receiving at a remote transceiver upstream digital payload data from one or more sources and organizing said data into frames of symbols to be transmitted, each frame comprised of a plurality of timeslots each containing symbols derived from said upstream digital payload data;
iteratively transmitting a ranging signal, and determining a transmit frame timing delay value for said ranging signal which, when imposed for transmission of said ranging signal, causes said ranging signal to arrive at a reference time in a gap in upstream transmissions during which no remote transceiver is allowed to transmit upstream payload data, said transmit frame timing delay value being such that if it is imposed before transmission of each frame of upstream symbols, each frame of upstream symbols transmitted from said remote transceiver will arrive at said headend transceiver with its frame boundaries and timeslot boundaries aligned virtually exactly in time with the frame and timeslot boundaries of other frames of upstream symbols transmitted by other remote transceivers which have achieved frame synchronization.
11. The process of claim 10 wherein said determining step comprises the following steps:
iteratively transmitting said ranging signal prior to transmission of any payload data;
adjusting a transmit frame timing delay value before the transmission of each ranging signal until a message is received from said central transceiver that a ranging signal has been detected in a gap that exists between each upstream frame of payload data during which gap transmission of payload data by any remote transceiver is not allowed;
when said message that a ranging signal has been found in a gap is received, transmitting identification data from said remote transceiver to said headend transceiver that identifies said remote transceiver;
receiving a message that indicates that only one remote transceiver’s ranging signal has been found in the gap and giving the identification of that remote transceiver and comparing that identification to the identification of said remote transceiver that transmitted said ranging signal;
if there is a match, using data in a message indicating by how much and in which direction to adjust the transmit frame timing delay of said remote transceiver that transmitted said ranging signal to adjust said transmit frame timing delay such that said ranging signal arrives at a reference time in each gap; and
thereafter using said transmit frame timing delay to transmit upstream frames of payload data.
12. The process of claim 10 wherein said determining step comprises the following steps:
transmitting one or more ranging signals from a remote transceiver;
in the headend transceiver, determining the identity of the remote transceiver that transmitted the ranging signal;
in said headend transceiver, calculating how far off the ranging signal transmitted by a particular remote transceiver is from a reference time in a gap in upstream transmissions during which no remote transceiver may transmit anything other than ranging signals;
sending a downstream message from said headend transceiver to the remote transceiver which transmitted said ranging signal instructing it by how much to adjust its transmit frame timing delay so as to achieve frame synchronization such that frames transmitted by said remote transceiver will arrive at said headend transceiver with their frame boundaries virtually exactly aligned in time with frame boundaries of frames transmitted by other remote transceivers that have already achieved frame synchronization;
in the remote transceiver which transmitted said ranging signal, adjusting said transmit frame timing delay per the instructions from said headend transceiver, and, thereafter, using said transmit frame timing delay for subsequent upstream frame transmissions.
13. A plurality of computer data signals encoding digital upstream data from different sources, each computer data signal embodied in a carrier wave of the same frequency and transmitted from one of a plurality of physically distributed transmitters on a shared transmission medium toward a spread spectrum receiver, each computer data signal organized in numbered frames where each frame is comprised of individual elements transmitted in individual timeslots, each timeslot containing spread spectrum data representing the summation of partial products resulting from the spreading of the spectrum of digital upstream data of one or more logical channels from one or more of said different sources, each logical channel having its spectrum spread by a different spreading code, and wherein each frame having a particular number transmitted from a transmitter has its frame and timeslot boundaries virtually exactly aligned in time with frames of like number from all other said transmitters which have achieved frame synchronization.
14. A ranging process carried out in a system comprised of a headend modem coupled via a hybrid fiber coaxial cable system to a plurality of remote modem, comprising the steps:
in a headend modem, transmitting a ranging solicitation message which defines the frame indices of X number of frames the gaps therebetween being designated a ranging interval, X being a number of frames which depends upon the maximum distance and the total turn around time for transmissions between said headend modem and the remote modem which is farthest from said headend modem;
transmitting a ranging signal sequence from a remote modem, said ranging signal sequence comprising a start bit followed by series of an even number of ranging ID pulses with one ranging ID pulse transmitted during each of a plurality of frames, each ranging ID pulse having two possible states, a first state, hereafter referred to a logical one, comprised of the transmission of a barker code and a second state, hereafter referred to as a logical zero, comprising not transmitting a barker code, said start bit comprising a logical one, and said ranging signal sequence comprising a logical one as said start bit followed by an even number of logical ones and logical zeroes in a sequence which is unique to said remote transceiver which transmitted said ranging signal sequence and where said ranging signal sequence has exactly half said ranging ID pulses being logical ones;
in a headend modem, listening for barker codes during Y middle chip times of each of said X gaps of said ranging interval and converting the pattern of ranging ID pulses heard during said Y middle chip times of each gap into a vector having Y elements, each element corresponding to one chip time, where each element of said vector is a logical one if a barker code was heard during a chip time which corresponds to said element and is a logical zero if no barker code was heard during said chip time;
in said headend transceiver, converting said X vectors which are Y elements long into Y vectors which are X elements long with a first element of each of said Y vectors being the logical one or logical zero value heard during the first chip time of said Y middle chips of a corresponding one of said X gaps of said ranging interval, and a second element of each of said Y vectors being the logical one or logical zero value heard during the second chip time of said Y middle chips of a corresponding one of said X gaps of said ranging interval and so on for all the elements of said Y vectors;
in said headend transceiver, analyzing each of said Y vectors for the presence of one or more ranging signal sequences comprised of a start bit followed by a ranging ID sequence comprising an even number of logical ones and logical zeroes which are evenly divided between logical ones and logical zeroes;
if no valid ranging ID sequence is found, transmitting a signal to all said remote transceivers indicating said gaps of said ranging interval were devoid of valid ranging ID sequences;
if only one or more valid ranging ID sequences are found in said Y vectors, sending a message to all remote transceivers indicating a valid ID was found and giving the list of valid IDs found;
if a non valid ID sequence is found in said Y vectors, sending a downstream message to all said remote transceivers indicating a collision has occurred during said ranging interval;
in said remote transceivers, if the ranging ID of said remote transceiver is not detected in a valid ID list received from said headend transceiver, increasing a power level for transmission of said ranging signal sequence and scanning all relevant delays by transmitting ranging signal sequences at each of a plurality of delay values at the new power level during subsequent ranging intervals until the ranging ID of said remote transceiver is found on a valid ID list received from said headend transceiver, or all relevant delays at the new power level are exhausted without receiving the ranging ID of said remote transceiver on a valid ID list, and then raising transmit power in said remote unit modem to a new higher level and repeating the processing of scanning all relevant delays and repeating this process until a power and delay value are found which causes said remote transceiver to detect a valid ID of said remote transceiver in a ranging interval and sends said valid ID back to said remote transceiver thereby stopping scanning of a power-delay plane at the power and delay value which caused said headend receiver to hear said ranging ID of said remote transceiver;
sending to each remote transceiver whose valid ID has been found a fine tuning adjustment message indicating in which direction and by how much to adjust its delay value so as to achieve precise frame synchronization; and
in each remote transceiver, which receives said fine tuning adjustment message, adjusting said delay value by the amount indicated in said fine tuning adjustment message and using said adjusted delay value for subsequent upstream payload data transmissions.
15. A boundless ranging process comprising:
A) sending a ranging solicitation message from a central unit modem and listening during the gaps between X number of frames where X frames equals or exceeds the total turn around time for transmissions between said central unit modem and the farthest remote unit modem to which it is connected;
B) each remote unit modem which needs to perform ranging picks an initial power on the low end of a power range and transmits ranging ID sequence of Barker codes to said central unit modem continuously during Y consecutive subsequent frames after receiving said ranging solicitation message using an initial transmit frame timing delay value (hereafter just \u201cdelay value\u201d) which is increased by a predetermined amount during each subsequent transmission of a Barker code, where Y is the number of frames in a ranging signal sequence and is an odd number and wherein said ranging ID sequence includes a start bit;
C) receiving an activity detected in frame message from said central unit modem;
D) in each said remote unit modem which is ranging, assuming said remote unit modem is the one who hit the gap, and setting said delay value back to the value it had X frames earlier and starting a negotiation protocol with said central unit modem by sending one Barker code at a time and waiting for a reply from said central unit modem over Y\u22121 consecutive frames;
E) if no reply is received, incrementing said delay value and sending another Barker code and waiting Y\u22121 consecutive frames for a reply from said central unit modem;
F) repeating step E until a reply message is received from said central unit modem or all delay are exhausted;
G) if all delays are exhausted, incrementing the power of transmission and repeating steps D, E and F and G until a reply is received from said central unit modem;
H) receiving a reply message from said central unit modem inviting remote unit modem to send its ranging ID, and responding thereto by sending said ranging ID sequence of Barker codes over Y consecutive frames;
I) in said central unit modem, looking for a valid ranging ID sequence over the next Y consecutive frames, and, if a valid ranging ID sequence is found, broadcasting a message to all remote unit modems indicating, for each valid ranging ID sequence found, the ranging ID sequence(s) found by said central unit modem and the frame number of the frame in which said start bit of said valid ID sequence was found;
J) one or more remote unit modems recognizes its ranging ID sequence in said broadcast message, and uses said frame number in which said start bit of said ranging ID sequence was found to calculate and offset value and uses said offset value to make a fine tuning adjustment of its delay value to achieve precise frame synchronization.
16. The process of claim 15 further comprising the steps:
K) in said central unit modem, sending a downstream message containing a valid ranging ID sequence previously found and inviting transmission of another randomly selected ranging ID sequence by said remote unit modem which transmitted said valid ranging ID sequence detected by said central unit modem;
L) said remote unit modem with said valid ranging ID sequence randomly selects another ranging ID sequence and transmits it using the same delay value and power setting previously used to transmit said valid ranging ID sequence found by said central unit modem;
M) in said central unit modem, listening for another ranging ID sequence, and if a ranging ID sequence is detected, broadcasting the ranging ID sequence detected;
N) in said remote unit modem, receiving said broadcast of said ranging ID sequence found by said central unit modem, and if there is a match to the ranging ID sequence said remote unit modem transmitted, terminating said ranging process.
17. The process of claim 16 further comprising the steps:
O) if said central unit modem detects contentions after inviting transmission of another ranging ID sequence, broadcasting a message indicating contentions have been detected;
P) in each remote unit modem which is ranging, starting a binary tree algorithm contention resolution process to determine whether to terminate the ranging process or continue said ranging process.
18. A boundless ranging process comprising:
A) soliciting ranging continuously from a central unit modem, and analyzing each X frames following transmission of a downstream Barker code for activity where the time consumed by X frames equals the total turnaround time for a transmission between the farthest remote unit modem in the system and said central unit modem;
B) each remote unit modem which needs to perform ranging, picking an initial power level on the low end of a range of available transmit power levels and an initial transmit frame timing delay value (hereafter delay value) in a range of available delay values, and transmitting a single Barker code in each consecutive upstream frame gap with a predetermined increase in said delay value in each subsequent frame;
C) repeating step B until all delay values have been tried at said initial power level without receiving an activity detected message from said central unit modem, and then increasing said power level and then transmitting a single Barker code in each consecutive upstream frame gap with a predetermined increase in said delay value in each subsequent frame;
D) when said central unit modem detects activity in the gap of a particular frame number, sending a downstream activity detected message indicating the frame number in which activity was found and stopping all ranging solicitation messages thereby preventing any new remote unit modem from starting ranging processing after activity is first detected;
E) each remote unit modem which was ranging assumes it is the remote unit modem whose Barker code was found in a gap by said central unit modem, and sets its delay value at the delay value for the Barker code transmission during the frame number identified in said activity detected message and transmits another Barker code and waits for a reply from said central unit modem over a predetermined number of the next frames;
F) if no reply is received, continuing to send Barker codes, one per frame over the next predetermined number of frames, and increasing the value of said delay in each successive frame by the same amount said delay was previously increased after each transmission in step B;
G) when said central unit modem detects a Barker code inside a gap, it sends a begin contention resolution message indicating a pulse was detected in frame #N where N is the frame number in which the pulse was detected and requesting the remote unit modems to start a contention resolution protocol;
H) each remote unit modem which is ranging sends a ranging ID sequence comprised of a start bit followed by an even number of one and zero bits in successive frames where a one bit represents the transmission of a Barker code during said frame and a zero bit represents the lack of transmission of a Barker code during a frame, and wherein the sequence of one and zero bits is unique to each remote unit modem and wherein the number of one bits is exactly half the total number of one and zero bits;
I) creating in said central unit modem, Y vectors each of which has a X elements, where Y is equal to the number of frames in said total turn around time during which said central unit modem listens for Barker codes arriving in gaps after said begin contention resolution message, and wherein X represents the number of chip times in the middle of each gap during which said central unit modem listens for Barker codes during said Y frames, each element being a logic if a Barker code was heard during the corresponding chip time and a logic 0 if no Barker code was heard during the corresponding chip time;
J) looking for valid ranging ID sequences in said Y vectors and examining each of said Y vectors to determine if there are contentions;
K) if a valid ranging ID sequence is found, noting the frame number during which said start bit of said valid ranging ID sequence was found and broadcasting a confirmation message that indicates a valid ranging ID sequence was found during a particular frame number and giving the valid ranging ID sequence(s) found along with the frame number during which arrived the start bit of each valid ranging ID sequence found and a number of chip times said start bit was offset from a reference time in said gap during which said start bit arrived;
L) in said remote unit modem, calculating an offset from data received in messages from said central unit modem and using said offset to adjust said delay value to achieve precise frame synchronization in this boundless ranging process.

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. In a combined language compiler product for a computer system, a method of compiling a code comprising a plurality of code statements combined language compiler product said method comprising the steps of:
(a) parsing said plurality of code statements into a combined representation of said plurality of code statements;
(b) splitting said combined representation into a plurality of sets of code statements, each said set comprising a plurality of independently compilable code statements;
(c) compiling each said set of code statements; and
(d) merging each said set of compiled statements into a single executable program.
2. In a combined language compiler product for a computer system, a method of compiling a code comprising a plurality of code statements using said combined language compiler product, said method comprising the steps of:
(a) parsing said plurality of code statements into a combined representation of said plurality of code statements;
(b) splitting said combined code into a plurality of sets of code statements;
(c) using at least two compilers to compile said plurality of sets of code statements; wherein each said set is compilable by one said compiler; and
(d) merging each said set of compiled statements into a single executable program.
3-38. (canceled)
39. In a combined language compiler product for a computer system, a method of compiling of a hybrid source code using said combined language compiler product, said method comprising the steps of:
(a) parsing a plurality of statements of said hybrid source code;
(b) splitting said hybrid source code into a plurality of sets of code statements, each said set comprising a plurality of code statements compilable by one said compiler;
(c) compiling each said set of code statements; and
(d) merging each said compiled code statement into a single executable program.
40. In a combined language compiler product for a computer system, a method of compiling of a hybrid source code using said combined language compiler product, said method comprising the steps of:
(a) parsing said plurality of code statements of said hybrid source code into a combined representation;
(b) splitting said combined representation into a plurality of sets of hybrid code statements;
(c) using at least two compilers to compile said plurality of sets of hybrid code statements; wherein each said set is compilable by one said compiler; and
(d) merging each said set of compiled statements into a single executable program.
41-44. (canceled)
45. A combined language compiler product for a computer system, comprising;
(a) a merged syntax defining a plurality of acceptable code statements;
(b) a splitter configured to split said combined code into a plurality of sets of code statements;
(c) a compiler configured to compile each said set of code statements; and
(d) a post-compiler level merger configured to merge each said compiled code statement into a single executable program.
46. A combined hybrid language product for a computer system, comprising:
(a) a syntax of a hybrid language defining a plurality of acceptable code statements;
(b) a splitter configured to split said hybrid code into a plurality of sets of code statements, each said set comprising a plurality of code statements, each said code statement compilable independently;
(c) a compiler configured to compile each said set of code statements;
(d) a checker configured to check whether each said compiled code statement satisfies the semantics of said hybrid language; and
(e) a post-compiler level merger configured to merge each said compiled code statement into a single executable program.
47. A computer-usable apparatus useful in association with a combined language compiler, said combined language compiler configured to compile a plurality of code statements; said computer-usable apparatus including computer-readable code instructions configured to cause said combined language compiler to execute the steps of:
(a) defining a plurality of acceptable statements of a combined code;
(b) splitting said combined code into a plurality of sets of code statements, each said set comprising a plurality of code statements compilable independently;
(c) compiling each said set of code statements; and
(d) merging each said compiled code statement into a single executable program.
48. A computer data signal embodied in a carrier wave comprising:
(a) a first merged source code segment comprising a plurality of code statements; wherein each said code statement is configured to be compiled independently;
(b) a split source code segment comprising a plurality of sets of code statements;
(c) a combined compiled source code segment comprising a plurality of compiled source code segments; and
(d) a second merged source code segment comprising a plurality of compiled code statements as a single executable program.
49. (canceled)
50. A computer-readable code embedded in a storage medium, wherein said computer readable code is manipulated by a combined language compiler, said combined language compiler configured to compile a plurality of code statements written using a plurality of computer languages, said combined language compiler configured to execute the steps of:
(a) accepting a combined code comprising a plurality of code statements;
(b) splitting said combined code into a plurality of sets of code statements, each said set comprising a plurality of independently compilable code statements;
(c) compiling each said set of code statements; and
(d) merging each said compiled code statement into a single executable program.
51. (canceled)
52. In a combined language compiler product for a computer system, a method of compiling hybrid source code using said combined language compiler product, said method comprising the steps of:
(a) parsing said plurality of code statements of said hybrid source code into a combined representation, wherein said step (a) of parsing said plurality of hybrid code statements further includes the step of using at least two computer languages to write said plurality of hybrid source code statements;
(b) splitting said combined representation into a plurality of sets of hybrid code statements;
(c) using at least two compilers to compile said plurality of sets of hybrid code statements; wherein each said set is compilable by one said compiler; and
(d) merging each said set of compiled statements into a single executable program.
53. In a combined language compiler product for a computer system, a method of compiling hybrid source code using said combined language compiler product, said method comprising the steps of:
(a) parsing said plurality of code statements of said hybrid source code into a combined representation;
(b) splitting said combined representation into a plurality of sets of hybrid code statements, wherein said step (b) of splitting said hybrid code into said plurality of sets of code statements further comprises the steps of:
splitting said hybrid code at a specification level into two different trial codes, wherein said first trial code includes a first plurality of code modules including a first plurality of internal module computations, a first plurality of inter-module communications, and a first level of reactivity, and wherein said second trial code includes a second plurality of code modules including a second plurality of internal module computations, a second plurality of inter-module communications, and a second level of reactivity;
comparing said first trial code with said second trial code;
assessing the difference in compilation time and the difference in execution time between said two trial codes; and
selecting an optimum trial code;

(c) using at least two compilers to compile said plurality of sets of hybrid code statements; wherein each said set is compilable by one said compiler; and
(d) merging each said set of compiled statements into a single executable program.
54. In a combined language compiler product for a computer system, a method of compiling hybrid source code using said combined language compiler product, said method comprising the steps of:
(a) parsing said plurality of code statements of said hybrid source code into a combined representation;
(b) splitting said combined representation into a plurality of sets of hybrid code statements, wherein said step (b) of splitting said hybrid code further includes the step of splitting said hybrid code at a compilation level into a plurality of reactive code statements and a plurality of non-reactive code statements;
(c) using at least two compilers to compile said plurality of sets of hybrid code statements; wherein each said set is compilable by one said compiler; and
(d) merging each said set of compiled statements into a single executable program.
55. In a combined language compiler product for a computer system, a method of compiling hybrid source code using said combined language compiler product, said method comprising the steps of:
(a) parsing said plurality of code statements of said hybrid source code into a combined representation;
(b) splitting said combined representation into a plurality of sets of hybrid code statements, wherein said step (b) of splitting said hybrid code further includes the step of splitting said hybrid code based on an implementation method;
(c) using at least two compilers to compile said plurality of sets of hybrid code statements; wherein each said set is compilable by one said compiler; and
(d) merging each said set of compiled statements into a single executable program.

1460740592-e88af942-c9a3-4054-9ccf-d40874bd00bb

What is claimed is:

1. A mechanical linkage for connecting a first load-carrying member to a second load-carrying member, said linkage comprising:
a ball for attachment to the first member; and
an elongated race for attachment to the second member, said race formed with an aperture surrounded by a first face, a second face opposed to said first face and two opposed end surfaces, said first face being formed as a first channel and said second face being formed as a second channel oriented substantially parallel to said first channel, said channels for holding said ball within said aperture when said ball is attached to the first member.
2. A linkage as recited in claim 1 wherein said ball is formed with a hole for attachment to the first member.
3. A linkage as recited in claim 1 wherein said race is formed with an extension having a recess for attachment of said race to the second member.
4. A linkage as recited in claim 1 wherein said ball is a first ball and further comprising a second ball for confined movement within said aperture, said second ball formed with a hole for mounting said second ball on the second member to attach said race to said second member.
5. A linkage as recited in claim 1 wherein said first channel is oriented in a first direction and has a circular cross-section in a plane normal to said first direction, and said second channel has a circular cross-section in said plane.
6. A linkage as recited in claim 5 wherein said ball has a spherical surface that defines a center for said ball and is formed with a cylindrical thru-hole extending through said center of said ball.
7. A linkage as recited in claim 6 wherein said cylindrical thru-hole has two openings and the distance between said openings is less than the minimum distance between said first face and said second face.
8. A linkage as recited in claim 7 wherein the distance between said center and said spherical surface of said ball is greater than the minimum distance between said first face and said second face.
9. A linkage as recited in claim 8 wherein the distance between said center of said ball and said spherical surface of said ball is less than the maximum distance between said first face and said second face.
10. A linkage as recited in claim 7 wherein the radius of curvature of said spherical surface of said ball is less than the radius of curvature of said circular cross-section of said first channel.
11. A linkage as recited in claim 1 wherein each said end surface is formed as a semi-circle to connect said first face to said second face.
12. A linkage as recited in claim 11 wherein each said end surface is formed as a channel to establish a continuous channel surrounding said aperture.
13. A mechanical linkage for connecting a first load-carrying member to a second load-carrying member, said linkage comprising:
a first ball for attachment to the first member;
a second ball for attachment to the second member; and
an elongated race that defines an axis and is formed with an aperture surrounded by two opposed faces and two opposed end surfaces, each said face being formed as a channel with said channels being oriented substantially parallel to said axis to hold said balls in said aperture when said first ball is attached to the first member and said second ball is attached to the second member.
14. A linkage as recited in claim 13 wherein said first ball is formed with a hole for attachment to the first member and said second ball is formed with a hole for attachment to the second member.
15. A linkage as recited in claim 13 wherein each said channel has a circular cross-section in a plane normal to said axis.
16. A linkage as recited in claim 13 wherein said first ball has a spherical surface that defines a center for said first ball and is formed with a cylindrical thru-hole extended through said center of said first ball, and said second ball has a spherical surface that defines a center for said second ball and is formed with a cylindrical thru-hole extended through said center of said second ball.
17. A system for force transmission comprising:
a first load-carrying member;
a second load-carrying member;
a ball attached to said first member; and
an elongated race attached to said second member, said race formed with an aperture surrounded by a first face, a second face opposed to said first face and two opposed end surfaces, said first face being formed as a first channel and said second face being formed as a second channel oriented substantially parallel to said first channel, said channels for holding said ball within said aperture.
18. A system as recited in claim 17 wherein said first member comprises an anti-swaybar arm and said second member comprises a control arm.
19. A system as recited in claim 17 wherein said race is formed with an extension having a recess to attach said race to said second member.
20. A system as recited in claim 17 wherein said ball is a first ball and further comprising a second ball for confined movement within said aperture, said second ball mounted on said second member to attach said race to said second member.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

What is claimed is:

1. An apparatus for performing spectroscopic ellipsometry measurements on a sample, comprising:
a source which emits broadband radiation;
a polarizer that polarizes the broadband radiation, to produce a sampling beam;
substantially achromatic optics that focuses the sampling beam to a small spot on the sample, said optics including a spherical mirror and at least two refractive elements, said sampling beam incident on the mirror from a direction away from an axis of the mirror, wherein at least one of said elements corrects spherical aberration caused by off axis reflection from the mirror;
an analyzer that analyses radiation of the sampling beam that has interacted with the sample, thereby producing an output beam; and
detector means for detecting the output beam to provide a detected output; and
means for processing the detector means output to determine changes of polarization state in amplitude and phase of the sampling beam caused by interaction with the sample.
2. The apparatus of claim 1, wherein said at least two refractive elements comprise two or more lenses.
3. The apparatus of claim 2, wherein said two or more lenses include a meniscus lens.
4. The apparatus of claim 3, said meniscus lens correcting or over correcting the spherical aberration caused by off axis reflection from the mirror.
5. The apparatus of claim 2, wherein one of said lenses is positive and another one of said lenses is negative.
6. The apparatus of claim 2, wherein the Abbe numbers of said two lenses differ by no more than 2%.
7. The apparatus of claim 2, wherein two of said lenses comprise substantially the same optical material.
8. The apparatus of claim 2, wherein two of said lenses comprise optical material(s) that transmit(s) ultraviolet radiation and is or are not birefringent.
9. The apparatus of claim 2, wherein two of said lenses comprise calcium fluoride or fused silica.
10. The apparatus of claim 2, wherein two of said lenses have surfaces that face each other, said surfaces being of different shapes or curvatures.
11. The apparatus of claim 1, wherein said optics is substantially achromatic over at least the visible and ultraviolet wavelengths.
12. The apparatus of claim 11, wherein said optics is substantially achromatic over ultraviolet wavelengths including ultraviolet wavelengths greater than about 250 nm.
13. The apparatus of claim 11, wherein said optics is substantially achromatic over ultraviolet wavelengths including ultraviolet wavelengths greater than about 190 nm.
14. The apparatus of claim 1, wherein said optics focuses the sampling beam to a spot on the sample less than 40 by 40 microns in dimensions.
15. The apparatus of claim 1, wherein said optics focuses the sampling beam at an incidence angle of between about 60 degrees to about 80 degrees from a normal direction to the sample.
16. The apparatus of claim 1, further comprising an aperture placed in an optical path between the source and the polarizer, or between the polarizer and the optics.
17. The apparatus of claim 1, further comprising an apodizer that limits numerical aperture of the sampling beam prior to reflection by the mirror to less than about 0.03.
18. The apparatus of claim 1, wherein angle of incidence of the sampling beam to the axis of the mirror is substantially within the range of 1 to 10 degrees.
19. An apparatus for performing spectroscopic measurements on a sample, comprising:
a source which provides a sampling beam of broadband radiation for interaction with the sample;
detector means; and
substantially achromatic optics that focuses the sampling beam to a small spot on the sample or that focuses, from a small spot on the sample into a modified beam to the detector means, radiation of the sampling beam that has interacted with the sample, said optics including a spherical mirror and at least two lenses, said sampling or modified beam incident on the mirror from a direction away from an axis of the mirror, wherein at least one of said lenses corrects spherical aberration caused by off axis reflection from the mirror, said optics being substantially achromatic over visible and ultraviolet wavelengths.
20. The apparatus of claim 19, wherein said two or more lenses include a meniscus lens.
21. The apparatus of claim 20, said meniscus lens correcting or over correcting the spherical aberration caused by off axis reflection from the mirror.
22. The apparatus of claim 19, wherein one of said lenses is positive and another one of said lenses is negative.
23. The apparatus of claim 19, wherein the Abbe numbers of said two lenses differ by no more than 2%.
24. The apparatus of claim 19, wherein two of said lenses comprise substantially the same optical material.
25. The apparatus of claim 19, wherein two of said lenses comprise calcium fluoride or fused silica.
26. The apparatus of claim 19, wherein two of said lenses have surfaces that face each other, said surfaces being of different shapes or curvatures.
27. The apparatus of claim 19, wherein said optics is substantially achromatic over ultraviolet wavelengths including ultraviolet wavelengths greater than about 250 nm.
28. The apparatus of claim 19, wherein said optics is substantially achromatic over ultraviolet wavelengths including ultraviolet wavelengths greater than about 190 nm.
29. The apparatus of claim 19, wherein said optics focuses the sampling beam to a spot on the sample less than 40 by 40 microns in dimensions.
30. The apparatus of claim 19, wherein said optics focuses the sampling beam at an incidence angle of between about 60 degrees to about 80 degrees from a normal direction to the sample.
31. The apparatus of claim 19, wherein two of said lenses comprise optical material(s) that transmit(s) ultraviolet radiation and is or are not birefringent.
32. The apparatus of claim 19, further comprising an apodizer that limits numerical aperture of the sampling beam prior to reflection by the mirror or of the modified beam after reflection by the mirror to less than about 0.03.
33. The apparatus of claim 19, wherein angle of incidence of the sampling or modified beam to the axis of the mirror is substantially within the range of 1 to 10 degrees.
34. An apparatus for performing spectroscopic measurements on a sample, comprising:
a source which provides a sampling beam of broadband radiation for interaction with the sample;
detector means; and
substantially achromatic optics that focuses the sampling beam to a small spot on the sample or that focuses, from a small spot on the sample into a modified beam to the detector means, radiation of the sampling beam that has interacted with the sample, said optics including a spherical mirror and at least two lenses, said sampling or modified beam incident on the mirror from a direction away from an axis of the mirror, wherein at least one of said lenses corrects spherical aberration caused by off axis reflection from the mirror, and wherein at least one of the lenses is a meniscus lens.
35. The apparatus of claim 34, wherein two of said lenses comprise substantially the same optical material.
36. The apparatus of claim 34, wherein two of said lenses comprise optical material(s) that transmit(s) ultraviolet radiation and is or are not birefringent.
37. The apparatus of claim 34, wherein one of said lenses is positive and another one of said lenses is negative.
38. An apparatus for performing spectroscopic measurements on a sample, comprising:
a source which provides a sampling beam of broadband radiation for interaction with the sample;
detector means; and
substantially achromatic optics that focuses the sampling beam to a small spot on the sample or that focuses, from a small spot on the sample into a modified beam to the detector means, radiation of the sampling beam that has interacted with the sample, said optics including a spherical mirror and at least two lenses, said sampling or modified beam incident on the mirror from a direction away from an axis of the mirror, at least one of said lenses correcting spherical aberration caused by off axis reflection from the mirror, wherein two of said lenses have substantially opposite magnification powers.
39. The apparatus of claim 38, wherein at least one of said lenses is a meniscus lens that corrects or over corrects spherical aberration caused by off axis reflection from the mirror.
40. The apparatus of claim 38, wherein two of said lenses comprise substantially the same optical material.
41. The apparatus of claim 38, wherein two of said lenses comprise optical material(s) that transmit(s) ultraviolet radiation and is or are not birefringent.
42. A method for performing spectroscopic ellipsometry measurements on a sample, comprising:
providing broadband radiation;
polarizing the broadband radiation, to produce a sampling beam;
focusing the sampling beam to a small spot on the sample by means of substantially achromatic optics that includes a spherical mirror and at least two refractive elements, said sampling beam incident on the mirror from a direction away from an axis of the mirror, wherein at least one of said elements corrects spherical aberration caused by off axis reflection from the mirror;
analyzing radiation of the sampling beam that has interacted with the sample, thereby producing an output beam; and
detecting the output beam to provide a detected output; and
processing the detected output to determine changes of polarization state in amplitude and phase of the sampling beam caused by interaction with the sample.
43. A method for performing spectroscopic measurements on a sample, comprising:
providing a sampling beam of broadband radiation for interaction with the sample;
focusing the sampling beam to a small spot on the sample, or radiation of the sampling beam that has interacted with the sample from a small spot on the sample into a modified beam by means of optics, said optics including a spherical mirror and at least two lenses, said sampling or modified beam incident on the mirror from a direction away from an axis of the mirror, wherein at least one of said lenses corrects spherical aberration caused by off axis reflection from the mirror, said optics being substantially achromatic over visible and ultraviolet wavelengths; and
detecting radiation of the sampling beam that has interacted with the sample.
44. An apparatus for performing spectroscopic ellipsometry measurements on a sample, comprising:
a source which emits broadband radiation;
a polarizer that polarizes the broadband radiation, to produce a sampling beam for interaction with the sample;
an analyzer;
substantially achromatic optics that focuses, from a small spot on the sample into a modified beam to the analyzer, radiation of the sampling beam that has interacted with the sample, said analyzer providing an output beam in response thereto, said optics including a spherical mirror and at least two refractive elements, said modified beam incident on the mirror from a direction away from an axis of the mirror, wherein at least one of said elements corrects spherical aberration caused by off axis reflection from the mirror;
detector means detecting the output beam to provide a detected output; and
means for processing the detected output to determine changes of polarization state in amplitude and phase caused by interaction with the sample.
45. The apparatus of claim 44, wherein said at least two refractive elements comprise two or more lenses.
46. The apparatus of claim 45, wherein said two or more lenses include a meniscus lens.
47. The apparatus of claim 46, said meniscus lens correcting or over correcting the spherical aberration caused by off axis reflection from the mirror.
48. The apparatus of claim 45, wherein one of said lenses is positive and another one of said lenses is negative.
49. The apparatus of claim 45, wherein two of said lenses have substantially the same Abbe numbers.
50. The apparatus of claim 45, wherein two of said lenses comprise substantially the same optical material.
51. The apparatus of claim 45, wherein two of said lenses comprise optical material(s) that transmit(s) ultraviolet radiation and is or are not birefringent.
52. The apparatus of claim 45, wherein two of said lenses comprise calcium fluoride or fused silica.
53. The apparatus of claim 45, wherein two of said lenses have surfaces that face each other, said surfaces being of different shapes or curvatures.
54. The apparatus of claim 44, wherein said optics is substantially achromatic over at least the visible and ultraviolet wavelengths.
55. The apparatus of claim 44, wherein said optics is substantially achromatic over ultraviolet wavelengths including ultraviolet wavelengths greater than about 250 nm.
56. The apparatus of claim 44, wherein said optics is substantially achromatic over ultraviolet wavelengths including ultraviolet wavelengths greater than about 190 nm.
57. The apparatus of claim 44, wherein said optics focuses onto the detector means the output beam that originated from a spot on the sample less than 40 by 40 microns in dimensions.
58. The apparatus of claim 44, wherein said optics focuses the output beam at a collection angle of between about 60 degrees to about 80 degrees from a normal direction to the sample.
59. The apparatus of claim 44, further comprising an aperture placed in an optical path between the source and the analyzer, or between the analyzer and the optics.
60. A method for performing spectroscopic ellipsometry measurements on a sample, comprising:
providing broadband radiation;
polarizing the broadband radiation, to produce a sampling beam for interaction with the sample;
focusing by means of optics, from a small spot on the sample into a modified beam, radiation of the sampling beam that has interacted with the sample, said optics including a spherical mirror and at least two refractive elements, said modified beam being incident on the mirror from a direction away from an axis of the mirror, wherein at least one of said elements corrects spherical aberration caused by off axis reflection from the mirror;
analyzing radiation of the modified beam to produce an output beam;
detecting the output beam to provide a detected output; and
processing the detected output to determine changes of polarization state in amplitude and phase of the sampling beam caused by interaction with the sample.