1. An amine flux composition comprising, as an initial component:
an amine fluxing agent represented by formula I:
wherein R1, R2, R3 and R4 are independently selected from a hydrogen, a substituted C1-80 alkyl group, an unsubstituted C1-80 alkyl group, a substituted C7-80 arylalkyl group and an unsubstituted C7-80 arylalkyl group; wherein R7 and R8 are independently selected from a C1-20 alkyl group, a substituted C1-20 alkyl group, a C6-20 aryl group and a substituted C6-20 aryl group or wherein R7 and R8, together with the carbon to which they are attached, form a C3-20 cycloalkyl ring optionally substituted with a C1-6 alkyl group; wherein R10 and R11 are independently selected from a C1-20 alkyl group, a substituted C1-20 alkyl group, a C6-20 aryl group and a substituted C6-20 aryl group or wherein R10 and R11, together with the carbon to which they are attached, form a C3-20 cycloalkyl ring optionally substituted with a C1-6 alkyl group; and, wherein R9 is selected from a hydrogen, a C1-30 alkyl group, a substituted C1-30 alkyl group, a C6-30 aryl group and a substituted C6-30 aryl group.
2. The amine flux composition of claim 1, wherein the substitutions in the substituted C1-80 alkyl group and the substituted C7-80 arylalkyl group, from which R1, R2, R3 and R4 are selected, are selected from at least one of an \u2014OH group, an \u2014OR5 group, a \u2014COR5\u2014 group, a \u2014COR5 group, a \u2014C(O)R5 group, a \u2014CHO group, a \u2014COOR5 group, an \u2014OC(O)OR5 group, a \u2014S(O)(O)R5 group, a \u2014S(O)R5 group, a \u2014S(O)(O)NR52 group, an \u2014OC(O)NR62 group, a \u2014C(O)NR62 group, a \u2014CN group, a \u2014N(R6)\u2014 group and a \u2014NO2 group; wherein R5 is selected from a C1-28 alkyl group, a C3-28 cycloalkyl group, a C6-15 aryl group, a C7-28 arylalkyl group and a C7-28 alkylaryl group; wherein R6 is selected from a hydrogen, a C1-28 alkyl group, a C3-28 cycloalkyl group, a C6-15 aryl group, a C7-28 arylalkyl group and a C7-28 alkylaryl group.
3. The amine flux composition of claim 1, wherein R1, R2, R3 and R4 are independently selected from a hydrogen, a \u2014CH2CH(OH)R18 and a \u2014CH2CH(OH)CH2\u2014O\u2014R18 group; wherein R18 is selected from a hydrogen, a C1-28 alkyl group, a C3-28 cycloalkyl group, a C6-28 aryl group, a C7-28 arylalkyl group and a C7-28 alkylaryl group; wherein R7 and R8 are both a methyl group; wherein R10 and R11 are both a methyl group; and, wherein R9 is selected a methyl group and a phenyl group; and wherein zero to three of R1, R2, R3 and R4 is(are) hydrogen.
4. The amine flux composition of claim 3, wherein zero to three of R1, R2, R3 and R4 is(are) hydrogen.
5. The amine flux composition of claim 1, further comprising a solvent, wherein the solvent is an organic solvent selected from hydrocarbons, aromatic hydrocarbons, ketones, ethers, alcohols, esters, amides, glycols, glycol ethers, glycol derivatives and petroleum solvents.
6. The amine flux composition of claim 1, further comprising at least one of:
an inorganic filler; a thixotropic agent; and an antioxidant.
7. The amine flux composition of claim 1, further comprising:
an additive selected from matting agents, coloring agents, defoaming agents, dispersion stabilizers, chelating agents, thermoplastic particles, UV impermeable agents, flame retardant and reducing agents.
8. The amine flux composition of claim 1, further comprising, as initial components:
0 to 95 wt % of a solvent,
0 to 30 wt % of a thickening agent,
0 to 30 wt % of a thixotropic agent, and
0 to 30 wt % of an antioxidant.
9. The amine flux composition of claim 1, further comprising: a solder powder.
10. A method of applying solder to an electrical contact, comprising:
providing an electrical contact;
providing an amine flux composition according to claim 1;
applying the amine flux composition to the electrical contact;
providing a solder;
melting the solder; and,
displacing the amine flux composition applied to the electrical contact with the molten solder;
wherein the molten solder makes physical contact with the electrical contact and bonds to the electrical contact.
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. A method for simultaneously performing vertical scaling and 4:2:2 to 4:2:0 color format conversion on incoming color space component data of a video frame, the incoming color space component data having first color space component data, second color space component data, and third color space component data, the method comprising the following steps:
separating each byte of the first, second, and third color space component data;
determining a scaling factor, the scaling factor indicating a number of bytes to average;
first performing an f:1 scale down for each byte of the first color space component data when the scaling factor is equal to f; and
second performing a 2f:1 scale down for each byte of the second and third color space component data when the scaling factor is equal to f.
2. The method according to claim 1, wherein the first performing step is performed when f is an integer greater than 1.
3. A method for simultaneously performing vertical scaling and 4:2:2 to 4:2:0 color format conversion on incoming Y, U, and V data of a video frame, the method comprising the following steps:
separating each byte of the Y, U, and V data;
determining a scaling factor, the scaling factor indicating a number of bytes to average;
first performing an f:1 scale down for each Y byte when the scaling factor is equal to f; and
second performing a 2f:1 scale down for each U and V byte when the scaling factor is equal to f.
4. The method according to claim 3, wherein the first performing step is performed when f is an integer greater than 1.
5. A method for simultaneously performing vertical scaling and 4:2:2 to 4:2:0 color format conversion on incoming 4:2:2 color space component data of a video frame, the incoming color space component data having first color space component data, second color space component data, and third color space component data, the method comprising the following steps:
separating the incoming 4:2:2 color space component data into the first color space component data, the second color space component data, and the third color space component data;
first performing vertical scaling on the first color space component data, the second color space component data, and the third color space component data; and
second performing a 4:2:2 to a 4:2:0 color format conversion on the first color space component data, the second color space component data, and the third color space component data, the second performing step being executed simultaneously with the first performing step.
6. The method according to claim 5, the video frame having a plurality of horizontal scan lines, the method being performed in response to a signal indicating a start of a new horizontal scan line.
7. A method for simultaneously performing vertical scaling and 4:2:2 to 4:2:0 color format conversion on incoming 4:2:2 color space component data of a video frame, the incoming color space component data having first color space component data, second color space component data, and third color space component data, the method comprising the following steps:
separating the incoming 4:2:2 color space component data into the first color space component data, the second color space component data, and the third color space component data;
multiplexing the first, second, and third color space component data to allow one of the first, second, and third color space component data to be scaled;
horizontally scaling the multiplexed color space component data;
first performing vertical scaling on the multiplexed color space component data; and
second performing a 4:2:2 to a 4:2:0 color format conversion on the multiplexed color space component data, the second performing step being executed simultaneously with the first performing step.
8. A method for performing a DCT on a line of pixels to create a DCT coefficient y(u), the method comprising the following steps:
accepting a sequence of pixels;
performing a cosine operation on adjacent sets of the sequence of pixels without storing the sequence in a buffer more than 16 bits in size; and
generating a sequence of one dimensional DCT coefficients in response to the step of performing.
9. A method for performing a DCT on a line of pixels to create a DCT coefficient y(u), the method comprising the following steps:
accepting a sequence of pixels; and
performing a one dimensional DCT on the sequence of pixels without a buffer through use of a register.
10. A method for performing a one dimensional DCT on a line of pixels to create a DCT coefficient y(u), the method comprising the following steps:
accepting a plurality of pixels, each of the plurality of pixels xi designated by an integer i, where i is an integer selected from the group consisting of 0, 1, 2, 3, 4, 5, 6, and 7;
performing a cosine operation on ((2i1) * u16) to create a result, where u is an integer selected from the group consisting of 0, 1, 2, 3, 4, 5, 6, and 7, and where u designates a DCT coefficient;
multiplying the pixel xi and the result of the cosine operation to create a value for summation;
repeating the steps of performing and multiplying for each of the plurality of pixels, the step of repeating further including the step of successively adding the value for summation to create a summed value;
determining a constant, the constant being 1sqrt(2) when u is 0, the constant otherwise being 1;
multiplying the summed value by the constant to create a product; and
dividing the product by 2.
11. The method according to claim 10, the method further comprising the following steps:
selecting a quantizer q(u) corresponding to the DCT coefficient y(u), where u is an integer selected from the group consisting of 0, 1, 2, 3, 4, 5, 6, and 7, where the quantizer q(0) is about 5.656, the quantizer q(1) is about 11.0, the quantizer q(2) is about 13.0, the quantizer q(3) is about 15.0, the quantizer q(4) is about 17.0, the quantizer q(5) is about 19.0, the quantizer q(6) is about 21.0, and the quantizer q(7) is about 23.0; and
dividing the DCT coefficient y(u) by the quantizer q(u).
12. A method for compressing a DCT coefficient, the method comprising the following steps:
accepting a plurality of DCT coefficients;
generating a pattern code for the plurality of DCT coefficients, the pattern code having a plurality of bits, each one of the plurality of bits corresponding to one of the plurality of DCT coefficients, the each one of the plurality of bits being 0 when the DCT coefficient is 0, and otherwise being 1;
identifying nonzero DCT coefficients using the pattern code;
encoding each zero DCT coefficient with zero bits;
preparing a coefficient table, the coefficient table having a plurality of code pairs, each of the plurality of pairs having a length code and a Huffman code;
preparing a pattern table, the pattern table having a plurality of code pairs, each of the plurality of pairs having a length code and a Huffman code;
performing a table lookup for each non-zero DCT coefficient within the coefficient table; and
performing a table lookup for the pattern code within the pattern table.
13. The method according to claim 12, the step of generating further comprising the following steps:
performing a bitwise OR operation for each one of the plurality of DCT coefficients.
14. A method for Huffman encoding a DCT coefficient, the method comprising the following steps:
accepting a plurality of DCT coefficients;
selecting one of the plurality of DCT coefficients;
generating a pattern code for the selected DCT coefficient; and
performing a table lookup for the pattern code and the selected DCT coefficient.
15. A method for Huffman encoding a plurality of DCT coefficients, the method comprising the following steps:
accepting a plurality of DCT coefficients;
generating a pattern code having a plurality of bits corresponding to the plurality of DCT coefficients; and
performing a table lookup for the pattern code and the plurality of DCT coefficients.
16. A method for compressing a DCT coefficient, comprising:
performing a one-dimensional bufferless discrete cosine transform on live video signal data to create a plurality of DCT coefficients; and
Huffman encoding each of the plurality of DCT coefficients.
17. A method for compressing a DCT coefficient, comprising:
performing a one-dimensional bufferless discrete cosine transform on live video signal data to create a plurality of DCT coefficients;
selecting one of the plurality of DCT coefficients;
generating a pattern code for the selected DCT coefficient; and
performing a table lookup for the pattern code and the selected DCT coefficient.
18. The method according to claim 17, the selecting step further including the following step:
adjusting the DCT coefficient if the DCT coefficient is a DC component.
19. A method for compressing a plurality of DCT coefficients, comprising:
first performing a one-dimensional bufferless discrete cosine transform on live video signal data to create a plurality of DCT coefficients;
generating a pattern code for the plurality of DCT coefficients; and
second performing a table lookup for the pattern code and each one of the plurality of DCT coefficients.
20. The method according to claim 19, wherein the generating step includes the following sub-step:
generating a pattern code having a plurality of bits, each one of the plurality of bits corresponding to one of the plurality of DCT coefficients, the each one of the plurality of bits being 0 when the corresponding DCT coefficient is 0, and otherwise being 1.
21. The method according to claim 19, the generating step including the following sub-step:
performing a bitwise OR operation for each one of the plurality of DCT coefficients.
22. The method according to claim 19, the second performing step including the following sub-steps:
preparing a coefficient table, the coefficient table having a plurality of code pairs, each of the plurality of code pairs having a length code and a Huffman code;
preparing a pattern table, the pattern table having a plurality of code pairs, each of the plurality of code pairs having a length code and a Huffman code;
performing a table lookup for each non-zero DCT coefficient within the coefficient table; and
performing a table lookup for each pattern code within the pattern table.
23. A method for capturing live video signal data using bufferless data compression, the method comprising the following steps:
vertically scaling the live video signal data;
performing a 4:2:2 to 4:2:0 color format conversion simultaneous with the vertical scaling step;
performing a one-dimensional bufferless discrete cosine transform on the scaled live video signal data to create a plurality of scaled DCT coefficients; and
Huffman encoding each of the plurality of scaled DCT coefficients.
24. The method according to claim 23, the method further including the following steps:
sending each of the Huffman encoded DCT coefficients via a USB interface to a USB bus.
25. An apparatus for simultaneously performing vertical scaling and 4:2:2 to 4:2:0 color format conversion on incoming 4:2:2 color space component data of a video frame, the incoming color space component data having first color space component data, second color space component data, and third color space component data, the apparatus comprising:
an accumulator having a first input operatively coupled to the incoming color space component data, a second input operatively coupled to an initializer value for rounding accumulated data, a third input operatively coupled to a component signal adapted for selecting the first, second, or third color space component to be scaled, a fourth input operatively coupled to a set_initial signal used to reset the accumulator, a fifth input for receiving intermediate accumulation results, and an output producing a sum of the incoming color space component data;
a shifter having a first input operatively coupled to the accumulator output, a second input indicating a number of bits to shift the sum right, and an output;
a multiplexer having a first input operatively coupled to the accumulator output, a second input operatively coupled to the shifter output, a select line operatively coupled to a final_shift signal indicating when a final shift is to be performed, and an output, the select line selecting the second input when the final shift is to be performed, and otherwise selecting the first input; and
a buffer control module for storing the multiplexer output, the buffer control module adapted for providing the multiplexer output to a DCT module when the final_shift signal indicates the final shift is to be performed, and otherwise providing the multiplexer output to the fifth accumulator input.
26. An apparatus for simultaneously performing vertical scaling and 4:2:2 to 4:2:0 color format conversion on incoming 4:2:2 color space component data of a video frame, the incoming color space component data having first color space component data, second color space component data, and third color space component data, the apparatus comprising:
means for adding vertically aligned component data values to produce a sum;
shifting means for shifting the sum right to average the sum over a number of lines for a given scaling factor; and
multiplexing means for providing the averaged sum to a DCT module.
27. An apparatus for capturing live video signal data using bufferless data compression, the apparatus comprising:
means for vertically scaling the live video signal data simultaneous with a 4:2:2 to 4:2:0 color format conversion;
means for performing a one-dimensional bufferless discrete cosine transform on the scaled live video signal data to create a plurality of scaled DCT coefficients; and
means for Huffman encoding each of the plurality of scaled DCT coefficients.
28. An apparatus for Huffman encoding a DCT coefficient, comprising:
means for selecting a DCT coefficient;
means for generating a pattern for the DCT coefficient; and
means performing a table lookup for the pattern and the DCT coefficient.
29. An apparatus for compressing a DCT coefficient, comprising:
means for performing a one-dimensional bufferless discrete cosine transform on live video signal data to create a plurality of scaled DCT coefficients; and
means for Huffman encoding each of the plurality of scaled DCT coefficients.
30. An apparatus for compressing a DCT coefficient, comprising:
means for performing a one-dimensional bufferless discrete cosine transform on live video signal data to create a plurality of scaled DCT coefficients;
means for selecting one of the plurality of scaled DCT coefficients;
means for generating a pattern code for the selected one of the plurality of scaled DCT coefficients; and
means performing a table lookup for the pattern code and the scaled DCT coefficients.
31. An apparatus for compressing a plurality of DCT coefficients, comprising:
means for performing a one-dimensional bufferless discrete cosine transform on live video signal data to create a plurality of scaled DCT coefficients;
means for generating a pattern code for the plurality of scaled DCT coefficients; and
means performing a table lookup for the pattern code and the scaled DCT coefficients.