The present invention relates generally to communications equipment, and more particularly relates to an apparatus and method for generating an offset test pattern for testing such equipment.
Communications equipment must typically be tested in order to verify proper performance. Such testing can include, for example, development testing, wherein proper functioning of a prototype of a candidate design is verified; acceptance testing, where it is confirmed that an individual component or piece of equipment functions according to specifications; or ongoing field tests, where correct functioning of equipment in the field is monitored. Such testing may be performed, for example, by external test equipment or by built-in self-test (BIST) capability.
One manner of testing communications equipment is to subject the equipment to test patterns that simulate the type of data that the equipment will be handling in use. For example, Fibre Channel Framing and Signaling draft standard FC-FS Rev. 1.80 is a proposed American National Standard for Information Technology. A Fibre Channel jitter tolerance pattern formed by framing an 8b10b encoded random jitter test pattern into a standard frame can be employed with respect to applications of the aforementioned standard. Some types of communications equipment, for example, serializer/deserializers, may have multiple receiver latches. If conventional test techniques are employed with such equipment, each latch may only be exposed to a static pattern, and thus only static mono failure of the given latch may be detected.
Accordingly, it would be desirable to provide an apparatus and method where test patterns can be offset in successive frames, such that more failure modes can be detected than with a test technique where offset is not employed, for equipment having multiple receiver latches, and other equipment that can benefit from pattern offset.
An illustrative method for generating an offset test pattern, according to one aspect of the invention, can include the steps of generating a first group of N consecutive frames each containing a test pattern, where N is greater than or equal to 2 and the N consecutive frames are numbered n=1, 2, . . . , N; and offsetting each of the frames numbered n=2 through N by a predetermined amount relative to the first frame, to enhance diagnostic capabilities of the test pattern.
In another aspect, one exemplary embodiment of an apparatus for testing a communications device can include a pattern generator that is configured to generate a first group of N consecutive frames each containing a test pattern of the kind just described, and an offset constructor coupled to the pattern generator. The offset constructor can be configured to offset frames as described in the preceding paragraph.
In yet another aspect, an apparatus according to another exemplary embodiment of the present invention can be configured to provide BIST capability to a communications circuit, device, or component, such as, for example, an integrated circuit.
A more complete understanding of the present invention, as well as further features and advantages of the present invention, will be obtained by reference to the following detailed description and drawings.
Reference should now be had to
As shown at decision block 110, if there are additional frames to be generated for a given group of frames, the process can loop back to block 104. Thus, by way of example, if N=4, one would traverse blocks 104, 106 (optionally), and 108 initially, and then repeat three times until all four frames had been generated. As indicated at decision block 112, one could then determine if additional groups of frames were required. If such were the case, one would again loop back to block 104. For example, if it were desired to generate two groups of 4 frames each, after generating the first four frames as described above, one would pass from block 110 to block 112, determine that another group of N frames (in this case, 4) was required, and repeat the process for the four additional frames of the second group of four frames. If no additional groups of frames are required, one is done, as per block 114, but it will of course be realized that one can traverse through the method again when additional tests are desired.
The predetermined amount by which a frame is offset from a preceding frame can be any amount that results in the piece of equipment under test being exposed to a desired pattern. In a typical case, the predetermined amount can be a number of bits equal to n−1, that is, each frame can be offset by one bit as compared to a preceding frame. The encoding step can be employed when necessary or desirable, depending on the type of equipment being tested and the applicable standard(s) that govern the equipment, its testing, and its operation. In the Fibre Channel standard mentioned above, 8b10b encoding can be employed. Test patterns according to other standards can be employed. By way of example and not limitation, such other standards can include SAS (serial attached SCSI (small computer system interface)), SATA (serial advanced technology attachment), PCIE (PCI (peripheral components interface) express), and RapidIO (RapidIO interconnect architecture as specified by the RapidIO Trade Association).
As noted, one aspect of the present invention allows the offsetting of frames to enhance diagnostic capabilities of a given test pattern. By way of example, one type of equipment that can benefit from such offsetting is a receiver having two or more latches numbered m=1, 2, . . . , M; such latches can be, e.g., high speed data latches operating at frequencies on the order of GHz. The receiver can be a stand alone unit, or can be associated with a unit having both transmit and receive capability. One exemplary application is to a serializer/deserializer (SerDes). In such a case, the number of frames N in a group of frames undergoing the offset process should be greater than or equal to, and an integer multiple of, M:
N≧M (1)
N=iM (2)
where i is an integer greater than or equal to 1.
Attention should now be given to
Turning now to
The effect over time of the phenomena discussed in the preceding paragraph is best appreciated by viewing
Attention should now be given to
Apparatus 500 can optionally include an encoder 506 interposed between pattern generator 504 and offset constructor 508. Encoder 506 can be configured to receive the first and subsequent groups of N consecutive frames, to encode the frames to generate encoded frames, and to pass the encoded frames to the offset constructor 508. Further, apparatus 500 can optionally include an offset deconstructor 510 that is configured to remove the offset from each of the offset frames, a byte aligner 512 that recognizes frame boundaries via special symbols (useful, for example, in Fibre Channel compliant physical link layer data paths), a decoder 514 (employed when encoder 506 is employed) to decode the encoded frames with the offset removed, and a checker 516 configured to compare the output of the offset deconstructor 510 (passed through the byte aligner 512 and/or decoder 514 as required for a given application) to a reference. The checker 516 can include a comparator 518 (for example a compliant jitter test 10b synchronizer and checker) coupled to a reference 520 (for example an 8b10b reference encoder) for such purpose. Apparatus 500 can further include an interface module 522 configured to interconnect the communications device between the offset constructor 508 and the offset deconstructor 510. The elements 504 through 520 can be coupled as shown in
Reference should now be had to
Different aspects and embodiments of the present invention can be implemented, for example, in dedicated hardware, hardware with application specific firmware, software, or a combination thereof, and the test patterns can be generated, for example, lookup tables or appropriately configured shift registers.
At least a portion of the techniques of the present invention described herein may be implemented in an integrated circuit. In forming integrated circuits, a plurality of identical die are typically fabricated in a repeated pattern on a surface on a semi-conductor wafer. Each die can include an entire circuit or elements as described herein, and can include other structures or circuits. The individual die are cut or diced from the wafer, and then packaged as an integrated circuit. One skilled in the art will know how to dice wafers and package die to produce integrated circuits. Integrated circuits so manufactured are considered part of this invention.
Although illustrative embodiments of the present invention have been described herein, it is to be understood that the invention is not limited to those precise embodiments, and that various other changes and modifications may be made by one skilled in the art without departing from the scope of the invention as set forth in the appended claims.
| Number | Name | Date | Kind |
|---|---|---|---|
| 5003308 | Furniss et al. | Mar 1991 | A |
| 5163057 | Grupp | Nov 1992 | A |
| 5282211 | Manlick et al. | Jan 1994 | A |
| 5392314 | Wolf | Feb 1995 | A |
| 5592674 | Gluska et al. | Jan 1997 | A |
| 5726991 | Chen et al. | Mar 1998 | A |
| 5991344 | Fujii et al. | Nov 1999 | A |
| 6032282 | Masuda et al. | Feb 2000 | A |
| 6041429 | Koenemann | Mar 2000 | A |
| 6041492 | Hishikawa | Mar 2000 | A |
| 6201829 | Schneider | Mar 2001 | B1 |
| 6363060 | Sarkar | Mar 2002 | B1 |
| 6373861 | Lee | Apr 2002 | B1 |
| 6498929 | Tsurumi et al. | Dec 2002 | B1 |
| 6553529 | Reichert | Apr 2003 | B1 |
| 6684350 | Theodoras, II et al. | Jan 2004 | B1 |
| 6834367 | Bonneau et al. | Dec 2004 | B2 |
| 6865660 | Duncan | Mar 2005 | B2 |
| 6977960 | Takinosawa | Dec 2005 | B2 |
| 7042842 | Paul et al. | May 2006 | B2 |
| 7062696 | Barry et al. | Jun 2006 | B2 |
| 7093172 | Fan et al. | Aug 2006 | B2 |
| 7111208 | Hoang et al. | Sep 2006 | B2 |
| 20040003331 | Salmon et al. | Jan 2004 | A1 |
| 20040015761 | Klotz et al. | Jan 2004 | A1 |
| 20040052521 | Halgren et al. | Mar 2004 | A1 |
| 20040177301 | Tarango et al. | Sep 2004 | A1 |
| 20050076280 | Martinez | Apr 2005 | A1 |
| 20050086563 | Carballo | Apr 2005 | A1 |
| 20050166110 | Swanson et al. | Jul 2005 | A1 |
| 20050238127 | Naffziger et al. | Oct 2005 | A1 |
| 20050249001 | Tanaka et al. | Nov 2005 | A1 |
| 20050270870 | Shin et al. | Dec 2005 | A1 |
| 20060010358 | Miller | Jan 2006 | A1 |
| 20060010360 | Kojima | Jan 2006 | A1 |
| 20060156134 | Mukherjee et al. | Jul 2006 | A1 |
| 20060203725 | Paul et al. | Sep 2006 | A1 |
| 20060248424 | Colunga et al. | Nov 2006 | A1 |
| Number | Date | Country |
|---|---|---|
| WO 2005015248 | Feb 2005 | WO |
| Number | Date | Country | |
|---|---|---|---|
| 20060253757 A1 | Nov 2006 | US |