Large Sets of Frequency Hopped Waveforms with

0 downloads 0 Views 11MB Size Report
Aug 6, 1993 - Submitted to the Department of Electrical Engineering and ... the Golomb-Costas method that generates O(N2) codes is analyzed. ... Mom and Dad for their support; and (most of all) Memo. ... 4 Signal Theory Correlation. 40 ..... Aside from Costas arrays, many other techniques exist that trade-off the mul-.
Large Sets of Frequency Hopped Waveforms with Nearly Ideal Orthogonality Properties by Scott Thurston Rickard Jr. S.B. Mathematics, Massachusetts Institute of Technology (1992) Submitted to the Department of Electrical Engineering and Computer Science in partial fulfillment of the requirements for the degrees of Master of Science in Electrical Engineering and Computer Science and Bachelor of Science in Computer Science and Engineering at the MASSACHUSETTS INSTITUTE OF TECHNOLOGY August 1993 c Scott Thurston Rickard Jr.

S.B. Mathematics, Massachusetts Institute of Technology (1992), MCMXCIII. All rights reserved. Author . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Department of Electrical Engineering and Computer Science August 6, 1993 Certified by . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . J. Robert Fricke Assistant Professor, Department of Ocean Engineering Thesis Supervisor Certified by . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mark Dzwonczyk Senior Technical Staff, The Charles Stark Draper Laboratory, Inc. Thesis Supervisor Accepted by . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Frederic R. Morgenthater Chairman, Committee on Graduate Students

Large Sets of Frequency Hopped Waveforms with Nearly Ideal Orthogonality Properties by Scott Thurston Rickard Jr. S.B. Mathematics, Massachusetts Institute of Technology (1992) Submitted to the Department of Electrical Engineering and Computer Science on August 6, 1993, in partial fulfillment of the requirements for the degrees of Master of Science in Electrical Engineering and Computer Science and Bachelor of Science in Computer Science and Engineering

Abstract Significant performance improvements would be realized in many sonar systems if only it were possible to have multiple pings in the water at any given time. Examples are multi-user systems and phased arrays. The use of orthogonal frequency hopped codes is one way to achieve multiple, simultaneous access. These codes can be designed to have nearly ideal auto-ambiguity and low cross-ambiguity properties. In some applications it may be desirable to use codes drawn form a very large set, say O(10 000). This thesis discusses how such a set can be generated. More generally, code set size is shown to be limited by auto/cross ambiguity properties and timebandwidth product. For codes with N frequency hops, more than O(N ) codes are sought. A comparison of various code generation techniques is made, showing that most fall in to the category of O(N ), while others are non-linear in N . In particular, the Golomb-Costas method that generates O(N 2 ) codes is analyzed. These codes are “full,” which means that every available frequency is used in every code. The Reed-Solomon method, in contrast, generates O(N k ) codes, where k is a trade-off parameter proportional to sidelobe level in the auto/cross-ambiguity function. ReedSolomon codes, however, are not “full.” The trade-offs between fullness, number of codes, and code performance is illustrated. Computer simulations and results from a series of ocean tests confirm the theoretical claims. Thesis Supervisor: J. Robert Fricke Title: Assistant Professor, Department of Ocean Engineering Thesis Supervisor: Mark Dzwonczyk Title: Senior Technical Staff, The Charles Stark Draper Laboratory, Inc.

to Mom and Dad, for their unyielding love and support...

Acknowledgments Many Individuals played significant roles in the development of this thesis. Foremost, I would like to thank my two thesis advisors, Mark Dzwonczyk and Professor Robert Fricke. Mark’s professional guidance and leadership over the past year have been invaluable. Professor Fricke far exceeded the role of academic advisor. His openness to new ideas and passion for learning will inspire me for a lifetime. I feel privileged to have been the student of these two teachers. The research done in this thesis was sponsored by the Draper Fellowship Program under Internal Research and Development Project #454, Intelligent Sonobuoy, at The Charles Stark Draper Laboratory. I wish to express my gratitude to the Laboratory for the generous support of my graduate studies at MIT. I would also like to thank Tom Austin and Roger Stokey of the Woods Hole Oceanographic Institute for allowing me to use their ”cutting edge” sonar tracking system for the ocean tests in Chapter 5. Special thanks go to Tom for his incredible patience with my sonar education. Additionally, I would like to express my gratitude to three educators whose investments in me have hopefully only begun to show. Thanks go to my undergraduate advisor, Professor John Guttag, for keeping me focused,m to Charles Koppelman, for sharing his love of mathematics, and to Lewis Dutrow, for sharing his love of music. Finally, I would like to thank my family and friends fr their backing in this endeavor. Thanks to Carole and Edward Somol for thinking of me so often over the past five years; to my roommates (Kyle and Walt) and the INCA Team graduate students (Paul, Paul, and Pete) for helping me to maintain my sanity though an ecxtrmeley intense summer; to Katherine and Chuck Benson for the understanding and love; to Mom and Dad for their support; and (most of all) Memo.

Contents 1 Introduction

12

1.1

Author’s Contributions . . . . . . . . . . . . . . . . . . . . . . . . . .

14

1.2

Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

2 Background

16

2.1

Frequency Hopped Waveforms . . . . . . . . . . . . . . . . . . . . . .

17

2.2

Costas Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

2.2.1

The Auto-Correlation Function . . . . . . . . . . . . . . . . .

18

2.2.2

The Cross-Correlation Function . . . . . . . . . . . . . . . . .

20

2.2.3

Costas Set Size Bound with Ideal Cross-Correlation. . . . . . .

22

Nearly Ideal Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23

2.3

3 Code Generation Techniques

24

3.1

Finite Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

3.2

The Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

25

3.2.1

Welch-Costas . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

3.2.2

Golomb-Costas . . . . . . . . . . . . . . . . . . . . . . . . . .

26

3.2.3

Linear Congruences . . . . . . . . . . . . . . . . . . . . . . . .

29

3.2.4

Quadratic Congruences . . . . . . . . . . . . . . . . . . . . . .

29

3.2.5

Extended Quadratic Congruences . . . . . . . . . . . . . . . .

30

3.2.6

Cubic Congruences . . . . . . . . . . . . . . . . . . . . . . . .

30

3.2.7

Hyperbolic Congruences . . . . . . . . . . . . . . . . . . . . .

30

3.2.8

Reed-Solomon . . . . . . . . . . . . . . . . . . . . . . . . . . .

31

4

3.3

Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

3.4

Bounds for full and non-full codes set size. . . . . . . . . . . . . . . .

34

3.4.1

Full Code Set Size . . . . . . . . . . . . . . . . . . . . . . . .

34

3.4.2

Non-Full Code Set Size . . . . . . . . . . . . . . . . . . . . . .

35

3.4.3

Thoughts on the Bounds . . . . . . . . . . . . . . . . . . . . .

36

Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

38

3.5

4 Signal Theory Correlation

40

4.1

Cross-Correlation . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

41

4.2

Auto-Correlation: Sidelobe Region . . . . . . . . . . . . . . . . . . .

44

4.2.1

Zero-Doppler Axis . . . . . . . . . . . . . . . . . . . . . . . .

44

4.2.2

|τ | < t∆ Column . . . . . . . . . . . . . . . . . . . . . . . . .

46

4.2.3

Off-Center Region and Off-Axis Correlation . . . . . . . . . .

46

4.2.4

Sidelobe Region Correlation Summary . . . . . . . . . . . . .

47

Auto-Correlation: Center Region . . . . . . . . . . . . . . . . . . . .

47

4.3.1

Full Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

48

4.3.2

Non-Hit and Total Correlation . . . . . . . . . . . . . . . . . .

58

4.3.3

Non-Full Codes . . . . . . . . . . . . . . . . . . . . . . . . . .

59

Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

61

4.3

4.4

5 Waveform Performance

64

5.1

N vs. T B Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

65

5.2

N vs. T B Choices . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

68

5.2.1

Minimal Sidelobe Region Choice . . . . . . . . . . . . . . . . .

68

5.2.2

Nyquist Choice . . . . . . . . . . . . . . . . . . . . . . . . . .

71

5.2.3

Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . .

74

Computer Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . .

76

5.3.1

The Simulation Waveforms . . . . . . . . . . . . . . . . . . . .

76

5.3.2

The Simulations . . . . . . . . . . . . . . . . . . . . . . . . . .

77

5.3.3

Simulation Conclusions . . . . . . . . . . . . . . . . . . . . . .

85

Ocean Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

86

5.3

5.4

5.4.1

Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

86

5.4.2

Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

88

5.4.3

Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

88

5.4.4

Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . .

95

6 Conclusions A Open Problems

96 100

List of Figures 2-1 Array (4, 3, 2, 1) and hopped waveform. . . . . . . . . . . . . . . . .

18

2-2 4-by-4 Costas array. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20

2-3 Cii (u, r) for the staircase array and Costas array.

. . . . . . . . . . .

21

2-4 Ideal “thumbtack” auto-ambiguity surface. . . . . . . . . . . . . . . .

21

3-1 Set size for WC(o), GC(*), RS with k = 3(+), and the O(N ) schemes(x). 33 3-2 Comparison of the set sizes of RS(+) with k = 3 and GC(*) vs. BFn,k (dashed) and BNn,k (solid). . . . . . . . . . . . . . . . . . . . . .

37

4-1 Two codes perfectly aligned, τ = 0. . . . . . . . . . . . . . . . . . . .

42

4-2 Two codes with 0 < τ < t∆ . . . . . . . . . . . . . . . . . . . . . . . .

43

4-3 Regions of different correlation. . . . . . . . . . . . . . . . . . . . . .

45

4-4 Two codes with |τ | > t∆ . . . . . . . . . . . . . . . . . . . . . . . . . .

45

4-5 Auto-overlap of code with |τ | > t∆ and discrete freq. shift s. . . . . .

47

4-6 T1

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

51

4-7 T2 with t∆ f∆ = 1 (N = 10). . . . . . . . . . . . . . . . . . . . . . . .

51

4-8 T2 with t∆ f∆ = 5 and with t∆ f∆ = .5 (N = 10). . . . . . . . . . . . .

52

4-9 T3 with t∆ f∆ = 1 (N = 10). . . . . . . . . . . . . . . . . . . . . . . .

52

4-10 T3 for t∆ f∆ = 2 and t∆ f∆ = .5 (N = 10). . . . . . . . . . . . . . . . .

53

4-11 Center region hit correlation with t∆ f∆ = 1 (N = 10) . . . . . . . . .

54

4-12 Center region hit correlation with t∆ f∆ = 2 (N = 10) . . . . . . . . .

55

4-13 Maximum hit correlation(solid) and approximation(dashed) in the center region. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

56

4-14 Center region hit correlation with t∆ f∆ = .5 (N = 10) . . . . . . . . .

58

7

4-15 Center region ambiguity for the first(left) and second(right) non-full signals, t∆ f∆ = 1 (N = 10). . . . . . . . . . . . . . . . . . . . . . . .

62

5-1 Sidelobe region correlation bound. . . . . . . . . . . . . . . . . . . . .

66

5-2 Center region correlation bound. . . . . . . . . . . . . . . . . . . . . .

67

5-3 Comparison of center(solid) and sidelobe(dotted) region correlation with T B = 500. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

67

5-4 Center region maximal sidelobe for the Nmsr choice. . . . . . . . . . .

70

5-5 Center region maximal sidelobe for the Nnyq choice. . . . . . . . . . .

73

5-6 Comparison of center region maximal sidelobe for the Nmsr and Nnyq choices.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

75

5-7 Ambiguity surface for GCmsr1 . . . . . . . . . . . . . . . . . . . . . . .

78

5-8 Discrete ambiguity surface for GCmsr1 . . . . . . . . . . . . . . . . . .

79

5-9 Ambiguity surface for RSmsr1 . . . . . . . . . . . . . . . . . . . . . . .

79

5-10 Discrete ambiguity surface for RSmsr1 . . . . . . . . . . . . . . . . . .

81

5-11 Time maximum plot for GCmsr1 and GCnyq1 . . . . . . . . . . . . . . .

81

5-12 Zero-Doppler axis zoom-in for GCnyq1 (a), RSnyq1 (b), RSnyq2 (c), and RSnyq3 (d). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

83

5-13 Time axis maximum cross-correlation of RSnyq1 with RSnyq2 and GCnyq1 with GCnyq2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

84

5-14 Shallow Water Multipath. . . . . . . . . . . . . . . . . . . . . . . . .

87

5-15 WHOI test setup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

87

5-16 Zero-Doppler axis correlation for GC1 . . . . . . . . . . . . . . . . . .

90

5-17 Time axis maximum correlation for GC1 . . . . . . . . . . . . . . . . .

90

5-18 Zero-Doppler axis correlation for RS1 . . . . . . . . . . . . . . . . . .

91

5-19 Time axis maximum correlation for RS1 . . . . . . . . . . . . . . . . .

91

5-20 Zero-Doppler correlation for RS2 . . . . . . . . . . . . . . . . . . . . .

92

5-21 Time axis maximum correlation for GC2 . . . . . . . . . . . . . . . . .

92

5-22 Zero-Doppler close-up comparison for RS1 (a), GC1 (b), and RS2 (c). .

93

5-23 Zero-Time shift close-up comparison for RS1 (a), GC1 (b), and RS2 (c).

93

5-24 GC zero-Doppler cross-correlation. . . . . . . . . . . . . . . . . . . .

94

5-25 RS zero-Doppler cross-correlation. . . . . . . . . . . . . . . . . . . . .

94

List of Tables 3.1

Welch-Costas number of codes and maximum number of cross hits. .

27

3.2

Golomb-Costas number of codes and maximum number of cross hits.

28

3.3

A comparison of code set size and correlation bounds. . . . . . . . . .

33

3.4

Sample values for BFn,k and BNn,k . . . . . . . . . . . . . . . . . . . . .

37

5.1

Time-bandwidth products for GC and RS for primes ≤ 50. . . . . . .

77

5.2

Sidelobe and center region maximum correlation: Golomb-Costas. . .

80

5.3

Sidelobe and center region maximum correlation: Reed-Solomon. . . .

82

5.4

Cross Correlation Upper Bounds and Actual Values for Simulation Waveforms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

84

Chapter 1 Introduction Frequency hopped coding is a special case of code-division multiplexing that allows multiple users to simultaneously access a communication medium. Unlike the techniques of time-division and frequency-division multiplexing, which preallocate partitions of the medium to each user, frequency hopped coding allows users to communicate at any time over the entire spectrum. This added degree of freedom is achieved through the assignment of orthogonal codewords to each user. Each codeword stipulates a series of time based ‘hops’ to different sections of the spectrum. The orthogonality properties of the codes limit the worst-case number of ‘hops’ that can overlap when two users communicate at the same time. Since the users may communicate at any time and the environment may modulate the codewords, these properties must hold for all possible time/frequency shifts of the codes. For example, Titlebaum[1] proposes a method of generating a set of N codewords, each with N hops, based on the theory of linear congruences. Two distinct codewords from this set will overlap in at most one hop for any possible two dimensional shifting. This favorable cross ambiguity between codewords allows simultaneous access. Frequency hopped codewords have also be designed for use in radar and sonar imaging systems. Rather than a large set of mutually orthogonal codewords, these systems typically require one codeword with ideal auto-orthogonality. Costas[2] proposes a type of frequency hopped codeword that has such properties.

12

Proper choice of burst waveform parameters is shown to result in a detection waveform having range and Doppler resolution properties consistent with the overall signal duration and bandwidth. The range-Doppler sidelobe peaks are well-controlled so that the ideal “thumbtack” ambiguity function behavior is closely approximated by the synthesis procedure presented[2, p. 996]. The resulting Costas waveforms (called Costas arrays) are ideal for range/Doppler determination in radar and sonar systems. Significant performance improvements would be realized in many sonar and radar systems if a union of these two frequency hopped schemes were possible. The bounded cross-ambiguity of pairs of codewords would allow multiple interrogations of the environment. The bounded auto-ambiguity sidelobes would lead to highly accurate range/Doppler calculations. Unfortunately, the set of Costas arrays for a given N is not the answer. Certain pairs of Costas arrays can exhibit near worst-case cross-ambiguity, and thus, Costas arrays in general cannot be used for multiple access. Nevertheless, certain pairs of Costas arrays and certain subsets of the set of Costas arrays for a given N have been shown to have low cross-correlation[3, 4, 5, 6]. Aside from Costas arrays, many other techniques exist that trade-off the multiple user cross-ambiguity concerns with those for auto-ambiguity range/Doppler calculation[7, 8, 9, 10]. While most of these techniques do not have the ideal properties for either concern, they do asymptotically approach optimal performance for a large number of hops. Most of the above referenced schemes generate O(N ) codes where N is the number of hops per code. For some applications, this order of growth is insufficient. For example, a multi-buoy sonar imaging system being developed at The Charles Stark Draper Laboratory, Inc. requires on the order of O(10 000) waveforms. Sonar constraints for this system limit the time-bandwidth product (T B) of the waveforms to be approximately 1000. Previous research has shown that in order for the waveforms to perform favorably, N must be at least an order of magnitude smaller than T B[11]. Obviously, the O(N ) schemes will not generate enough codes. Do techniques exist

that generate more than O(N ) codes? At what expense (e.g. performance, generation complexity) are these extra codes generated?

1.1

Author’s Contributions

In this thesis, Chapter 3 compares eight different algebraic code generation schemes and reveals that only two generate more than O(N ) codes1 . The first, the GolombCostas method generates O(N 2 ) Costas arrays. These codes are “full,” meaning every available frequency bin is used in every code. The cross-ambiguity properties of the Golomb codes, found via computer search, are shown to be erratic, that is, highly dependent on N . The Reed-Solomon method, in contrast, generates O(N k ) codes, where k is a trade-off parameter proportional to the sidelobe level in the auto/cross ambiguity function. The Reed-Solomon codes, however, are “non-full.” This nonfullness is later shown to have a detrimental effect on waveform performance. In an attempt to explain the disparity between the number of codes generated by the Reed-Solomon method and the rest of the existing techniques, using combinatorics, an upper bound for the number of full and non-full codes that have bounded auto/cross ambiguity is established. Chapter 4 reveals a performance limitation of frequency hopped waveforms whose hops are sinusoids centered at different frequencies. It is shown that, in general, there exists a sidelobe in the auto-ambiguity surface with height ≈ 1/π. The correlation properties near the mainlobe are investigated and expressions are derived that formalize the trade-off between performance near the mainlobe and performance in the remainder of the auto-ambiguity surface. This analysis is performed for both full and non-full codes revealing that non-full codes perform worse along the zero-Doppler axis and near the mainlobe in the auto-correlation ambiguity surface. In Chapter 5, expressions are derived that relate code set size, time-bandwidth product, and signal performance. These expressions are generated for the two choices 1

To my knowledge, these eight schemes are the only existing schemes in open literature which generate at least O(N ) codes.

of N to T B relationship that are common in publication. Computer simulations confirm the theoretical claims. Based on the simulations, a third choice of N to T B relationship is proposed that decreases the correlation near the mainlobe and allows for larger code sets. Chapter 5 also includes the results form a series of shallow water ocean tests conducted at the Woods Hole Oceanographic Institute. The test results match the theory and simulation results extremely well and demonstrate the robustness of frequency hopped coding.

1.2

Outline

Chapter 2 provides a cursory look at sonar operation followed by a formal definition of frequency hopped waveforms. The array analogs of these waveforms is then introduced. This array representation is used throughout the thesis and is the vehicle for demonstrating discrete correlation. Auto-correlation and cross-correlation, the performance criterion which motivate the use of frequency hopped waveforms, are defined using Costas arrays as examples. A combinatorial proof that large sets of Costas arrays cannot achieve ideal cross-correlation follows. An extension of this technique is used to prove the bounds for “full” and “non-full” codes in section 3.4. Chapter 3 provides a brief review of finite field theory; all of the coding schemes are based on this theory. The generating methods, discrete correlation properties and code set sizes for the eight schemes are listed and the code set sizes are compared. Chapter 4 translates the discrete array domain into the continuous waveform domain. The performance of the waveforms is shown to be affected by the “nonhit” case, a condition ignored in the discrete environment. Chapter 5 contains signal theory simulations and ocean tests that demonstrate the links between coding scheme, T B, and waveform performance. Appendix A contains a list of unsolved problems that arose over the course of this thesis research.

Chapter 2 Background Sonar relies on the propagation and reverberation of sound. In an active system, a projecting transducer creates a sound wave and receiving transducers listen for echoes off of objects in the surrounding environment. The reverberation signal carries three types of information. The round trip time from send to receive reveals the range of the object. The frequency shift of the signal reveals the relative velocity (Doppler) of the object. The strength and phase shift of the reverberation reveals the nature of the object. Typically, these values are obtained by matched filtering the reverberation sound. The shape of the projected signal affects the filter’s ability to recognize the return. For example, if the signal resembles a time shifted version of itself, the filter might incorrectly determine the range of the object. A filter’s ability to correctly determine the range and Doppler of an object depends on how little the projected signal resembles time and frequency shifts of itself. If multiple signals are in the water at the same time, the filter must reject all non-matched signals. A filter’s ability to reject a non-matched waveform depends on how little the non-matched waveform resembles time and frequency shifts of the filter’s matched signal.

16

2.1

Frequency Hopped Waveforms

Many applications that require signals with low ambiguity, signals that do not resemble shifts of themselves, use frequency hopped waveforms. These waveforms are based on the division of the available bandwidth into M equal bins. The projected signal consists of a pulse train of N bins. Only one bin is transmitted at any time in order to maximize the energy per pulse, a desirable characteristic of sonar applications. Rather than isonifying the entire bin, frequency hopped codes usually project a continuous wave centered at the median of each bin. Formally, a bandwidth B is divided into M frequencies which approximately span the bandwidth, producing an effective bin bandwidth of f∆ = B/M . Successive frequencies differ by this bandwidth: fi+1 = fi + f∆ ,

i = 1, . . . , M.

(2.1)

For each of the frequencies we define pi (t), an elementary pulse, sometimes referred to as a chip, of length t∆ :    ej2πfi t

for 0 ≤ t ≤ t∆ ,

 0

otherwise.

pi (t) = 

(2.2)

The frequency hopped signal, s(t), is defined as a uniform train of N consecutive pulses: si (t) =

N X

pin [t − (n − 1)t∆ ],

(2.3)

n=1

where in is an element of (1, . . . , M ).

The signal length is N t∆ and the time-

bandwidth product is, T B = (N t∆ )(M f∆ ).

(2.4)

It is useful to represent the frequency hopped pattern as a simple list of the firing order of the frequency numbers: F H = (i1 , i2 , . . . , iN ).

(2.5)

Figure 2-1: Array (4, 3, 2, 1) and hopped waveform. This representation conveniently removes references to specific bandwidths and frequencies.

2.2 2.2.1

Costas Arrays The Auto-Correlation Function

Using frequency hopped waveforms, Costas[2] designed a class of coded waveforms that has nearly ideal range-Doppler ambiguity properties. A Costas waveform, which is formally defined later, uses every frequency bin once. This condition combined with the definition of the frequency hopped waveform stipulates that N = M . Thus, for Costas codes, F H is simply an ordering of (1, 2, . . . , N ). Codes that fill every available frequency bin, such as Costas codes, are called “full” codes. The hopped signals can be viewed as an N -by-N array. Each column represents one time step of time t∆ . Each row represents one frequency bin of bandwidth f∆ . A dot placed in position (x, y) in the array means that from time xt∆ to (x + 1)t∆ the waveform consists of the pulse py centered at frequency fy . For full codes, one dot will be in each row and one dot will be in each column. Figure 2-1 shows an example array, (4, 3, 2, 1), and its corresponding waveform. We now formalize the concept of auto ambiguity. From signal theory, the normalized correlation between waveform si (t) and a copy of itself shifted by τ in time and ν in frequency is,

1 Z +∞ ∗ Ψii (τ, ν) = s (t)si (t − τ )ej2πνt dt. N t∆ −∞ i

(2.6)

This is the matched filter response to received signal si shifted in time by τ and in frequency by ν[11]. This function is also called the auto-correlation function1 . The array analog of this equation can be viewed as taking a copy of the array, shifting it up u = v/f∆ boxes and to the right r = t/t∆ boxes, and counting the number of dots of overlap, Cii (u, r)2 . These overlaps are called “hits.” The optimal signal will never contain more than one “hit” for any non-zero shifting (an overlap of one dot always exists for some shifting),

max Cii (u, r) = 1,

for all 0 ≤ u, r ≤ N, (u, r) 6= (0, 0).

(2.7)

Signals that satisfy this equation have ideal auto-correlation properties; full codes that satisfy this equation are Costas arrays. Figure 2-2 shows an example 4-by-4 Costas array. Note that the array in Figure 2-1 is not a Costas array. In fact, staircase waveforms, like the one in Figure 2-1, can be made to overlap in N − 1 dots by shifting up and to the left one bin. The discrete correlation surfaces generated for the staircase and Costas arrays are shown in Figure 2-3. In Figure 2-3, the staircase waveform has high correlation along the u + r = 0 line meaning that along this line, the waveform resembles itself. On the other hand, the Costas waveform does not significantly resemble itself for any time/Doppler shifting. Thus, the Costas array is a better signal for accurate range/Doppler determination. In general, waveforms that have correlation surfaces with a high central peak and low surrounding region are ideal for use in sonar systems. Correlation surfaces that 1

In this thesis, the terms auto ambiguity and auto-correlation are used interchangeably to reference the surface generated by Equation 2.6. In the literature, the term auto-correlation commonly refers only to the zero-Doppler axis of Equation 2.6. That is, Equation 2.6 with ν = 0. I refer to this correlation specifically as the zero-Doppler ambiguity or zero-Doppler auto-correlation. 2 This is not entirely true. Dots that are close to overlapping in the vertical direction do contribute some correlation. The amount of contribution, however, is dependent on specific signal characteristics (bandwidth, signal length). Since the array abstraction is independent of these concerns, this “non-hit” correlation is ignored for the time being. In Chapter 4, it is shown to be significant, but predictable.

Figure 2-2: 4-by-4 Costas array. have this shape are said to have an ideal “thumbtack” ambiguity function due to the obvious likeness (see Figure 2-4). There are N ! arrays that meet the conditions of one dot per row and one dot per column, but far fewer meet the ideal Costas auto-correlation condition. No mathematical technique has been developed to determine the number of distinct Costas arrays that exist for a given N . Golomb and Taylor[12] provide a list of the number of Costas arrays for N ≤ 13 determined by exhaustive computer search. Silverman et al.[13] extends this list to N ≤ 17. Golomb and Taylor[12], Golomb[14], and Popovic[15] list various algebraic constructions of Costas arrays for selective N .

2.2.2

The Cross-Correlation Function

While Costas arrays exhibit perfect auto-correlation properties, two distinct arrays can have a worst-case cross-correlation of N − 1 overlaps. The cross-correlation between two different arrays is important when multiple signals are in the water at the same time. For a filter matched to signal si to perform well in the presence of another signal sj , si must not resemble any non-zero time/frequency shifting of itself and si must not resemble any time/frequency shifting (including zero) of sj . The cross-correlation ambiguity function between two signal si and sj is a generalization of Equation 2.6: Ψij (τ, ν) =

1 Z +∞ ∗ s (t)sj (t − τ )ej2πνt dt. N t∆ −∞ i

(2.8)

Figure 2-3: Cii (u, r) for the staircase array and Costas array.

Figure 2-4: Ideal “thumbtack” auto-ambiguity surface.

This is the response of the filter matched to signal si to received signal sj shifted in time by τ and in frequency by ν[11]. The array abstraction of counting the number of overlap dots for various shifts still holds. However, in the case of cross-correlation, a zero shift must also result in overlap ≤ 1. Arrays si and sj that satisfy Equation 2.9 possess ideal cross-correlation properties with respect to each other, max Cij (u, r) = 1,

2.2.3

for all 0 ≤ u, r ≤ N .

(2.9)

Costas Set Size Bound with Ideal Cross-Correlation.

How large a set of Costas arrays can be constructed that meets Equation 2.9? Consider the set of lines that connect the N dots of a Costas array. There are N (N − 1) of them. If the line from dot a to dot b and the line from dot b to dot a are considered equivalent, this value can be halved. All N (N − 1)/2 lines must be distinct for the array to meet the auto-correlation requirements. That is, no two can have the same slope and length. If two lines do have the same slope and length, a shifting exists such that the first line of one array can be made to overlap with the second line of the copy of the array. This would produce a two dot overlap violating Equation 2.7. Now consider the total number of possible distinct lines that can exist in an N by-N array. That is, how many lines with different slope and length fit into an N -by-N array? There are (N − 1)2 with negative slope and and equivalent amount with a positive slope for a total of 2(N − 1)2 . Returning to the cross-correlation of Costas arrays, no two arrays in the set can contain the same line. Assuming that the 2(N − 1)2 lines could be perfectly divided to create the largest possible set of orthogonal Costas arrays, the set would contain at most, 2(N − 1)2 [lines] 4(N − 1) = ≤ 3 [arrays]. N (N − 1)/2 [lines per array] N

(2.10)

This result is surprising, considering that with N = 13 there are almost 13, 000 Costas arrays. No four of them can be chosen to make an orthogonal set.

The above analysis assumed that arrays could be constructed from the remaining lines after the first array was chosen. This is not the case. Freedman and Levanon[16] show that no two orthogonal Costas arrays exist for N > 3. This vector counting technique will be extended in Section 3.4 to upper bound the number of “full” and “non-full” arrays with bounded but not ideal auto and cross-correlation.

2.3

Nearly Ideal Codes

Despite this result, Costas arrays can still be used in multi-signal systems. Jaffe and Cassereau[17] use Costas arrays for a multibeam imaging system that emits different Costas arrays in different directions. They were able to create a large set of orthogonal signals because the speeds of the objects in their system were slow enough that they could neglect frequency shifts. Later work by Jaffe et al.[18] considered frequency shifts. The codes used in this application exhibited perfect cross-correlation but neglected auto-correlation concerns all together; N − 1 hits occurred in the worstcase. Chang[5] and Drumheller & Titlebaum[3] analyzed sets of Costas arrays that have bounded maximum cross-correlation. Full arrays other than Costas arrays have been generated that achieve a compromise between auto-correlation and cross-correlation concerns[1, 7, 8, 9]. The arrays used in these applications bound the auto-correlation and cross-correlation values, satisfying Equation 2.11 and Equation 2.12; max Cii (u, r) = kauto ,

for all 0 ≤ u, r ≤ N, (u, r) 6= (0, 0).

(2.11)

max Cij (u, r) = kcross ,

for all 0 ≤ u, r ≤ N .

(2.12)

Chapter 3 Code Generation Techniques This chapter examines the discrete correlation properties of frequency hopped waveforms and shows how they effect code set size. The generating function, correlation properties, and set size for eight existing coding schemes are listed. Because most of these methods rely on finite fields, a brief explanation of finite field theory is provided. The Golomb-Costas and Reed-Solomon schemes are singled out for generating more than O(N ) codes for N hops. Using an extension of the combinatorial technique used in Section 2.2.3, upper bounds are placed on the number of codes that can be generated with nearly ideal auto/cross ambiguity properties.

3.1

Finite Fields

A finite field with q elements exists only when q is a prime or a power of a prime. These fields are called Galois fields and are denoted by GF (q). Galois fields where q = p, where p is prime, can be represented as the set of integers modulo p under the operations of addition and multiplication. All finite fields consisting of k elements are isomorphic. That is, aside from the labeling of the elements, all fields with k elements are the same. Every GF (q) contains at least one element which when raised to successive powers, generates an ordering of the elements of GF (q). This element is called primitive. For example, 2 is a primitive element of GF (11) and thus (21 , 22 , 23 , . . . , 210 ) is an ordering 24

of (1, 2, 3, . . . , 10). (21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 210 ) mod 11 = (2, 4, 8, 5, 10, 9, 7, 3, 6, 1) Note that this ordering continues for higher powers; (211 , 212 , . . . , 220 ) mod 11 yields the same set. This illustrates the cyclic nature of primitive elements in GF (q) and is formalized below: αx = αy in GF (q) if and only if x ≡ y

(mod q − 1).

(3.1)

There are φ(q−1) distinct primitive elements in GF (p). Here φ(x) refers to Euler’s totient function and is defined to be the number of positive integers less than x that are relatively prime to x. There is no known formula for finding one of the primitive elements of GF (q). However, once one has been found by searching, the rest can be generated based on the following. Let Px be the set of φ(x) positive integers relatively prime to x. If α is a primitive element of GF (q), then, α1 , αr2 , αr3 , . . . , αrφ(q−1) ,

where ri ∈ P(q−1) ,

(3.2)

is the complete set of primitive elements for GF (q). For example, in GF (11), 2 is a primitive element and P10 = (1, 3, 7, 9). Therefore, (21 , 23 , 27 , 29 ) mod 11 = (2, 8, 7, 6) is the complete set of primitive elements for GF (11). Proofs of these claims can be found in Baker[19] and Stark[20].

3.2

The Schemes

Most of the following schemes generate codes using the theory of finite fields and thus limit the choices of N for which codes can be generated. For the following methods, q is a power of a prime, p is an odd prime, and n is a positive integer. All arithmetic is either performed modp or modq; the difference is made clear by context.

3.2.1

Welch-Costas

The Welch-Costas method (WC) generates a (p − 1)-by-(p − 1) array by placing a dot in position (i, j) if and only if i = αj [12]. (i, j) = (i, αi ),

for all i = 1, . . . , p − 1.

(3.3)

Thus, each primitive element generates one Welch-Costas array for a total of φ(p − 1) arrays1 . These arrays are Costas arrays and therefore by definition have a maximum auto-correlation sidelobe of 1/N . A cross-correlation upper bound for pairs of WelchCostas arrays is established in Drumheller and Titlebaum[3]. Titlebaum and Maric[4] show that the worst-case number of cross hits for the set of Welch-Costas arrays is p−1 . 2

Titlebaum and Maric prove this worst-case is realized for primes of the form

2e + 1 where e is an even number. However, they conjecture that for primes of the form 2p + 1, p a prime, the maximum number of hits will be comparatively small. Table 3.1 shows the size of WC and the maximum number of cross-correlation hits between any pair of codes for primes less than 200. The left half of the table is from [4]. The right half was found via computer search as part of this thesis research. Note Titlebaum and Maric’s conjecture continues to hold for the right half of the table. Namely, the primes 107, 167, and 179 (the only three of the form 2p + 1), clearly have the lowest number of cross-correlation hits.

3.2.2

Golomb-Costas

The Golomb-Costas method (GC) generates a (q − 2)-by-(q − 2) array by placing a dot in position (i, j) if and only if αi + β j = 1 where α and β are primitive elements of GF (q)[12]. This can be stated equivalently, (i, j) = (i, logβ (1 − αi )), 1

for all i = 1, . . . , q − 2.

(3.4)

Actually, each primitive element can be used to generate p − 1 arrays since circular horizontal shifts of these arrays are still Costas arrays. These shifted arrays are not included in the WelchCostas set because they obviously have extremely poor cross-correlation properties.

prime # codes max hits 5 2 2 7 2 2 11 4 3 13 4 6 17 8 8 19 6 6 23 10 4 29 12 14 31 8 10 37 12 18 41 16 20 43 12 14 47 22 5 53 24 26 59 28 5 61 16 30 67 20 22 71 24 14 73 24 36 79 24 26 83 40 5 89 40 44

prime # codes 97 32 101 40 103 32 107 52 109 36 113 48 127 36 131 48 137 64 139 44 149 72 151 40 157 48 163 54 167 82 173 84 179 88 181 48 191 72 193 64 197 84 199 60

max hits 48 50 34 5 54 56 42 26 68 46 74 50 78 54 6 86 6 90 38 96 98 66

Table 3.1: Welch-Costas number of codes and maximum number of cross hits.

prime # codes max hits 5 4 2 7 4 2 11 16 4 13 16 5 17 64 7 19 36 6 23 100 6 29 144 13 31 64 9 37 144 17

prime # codes 41 256 43 144 47 484 53 576 59 784 61 256 67 400 71 576 73 576 79 576

max hits 19 13 8 25 12 29 21 13 35 25

Table 3.2: Golomb-Costas number of codes and maximum number of cross hits. Each pair of primitive elements generates a Golomb-Costas array. There are [φ(q−1)]2 ways to pair up primitive elements and, therefore, there are [φ(q −1)]2 Golomb-Costas arrays. These arrays are Costas arrays and thus have ideal, 1/N , auto-correlation properties. A cross-correlation upper bound for pairs of Golomb-Costas arrays is established in Drumheller and Titlebaum[3]. Drumheller and Titlebaum prove the correlation between a Golomb-Costas array generated from primitive elements (α, β) and one generated from primitive elements (σ, ρ) is bounded by max(l, m) where α = σ l and β = ρm . Using this bound, Equation 3.3, and the fact that q − 1 and q − 2 are relatively prime, the bound for the cross-correlation for the entire GolombCostas set becomes q − 2, which reveals nothing. Table 3.2 lists the set size and max cross-correlation of Golomb-Costas codes for primes less than 80. These values were determined by computer. Based on these values, it appears that the crosscorrelation is bounded by

q−3 , 2

but I have been unable to prove this bound2 . Note

that there appears to be a relationship between the maximum number of hits for the Welch-Costas and Golomb-Costas methods. For primes of the form 2p + 1, GC cross-correlation is at a minimum3 . Surprisingly, for all other primes less than 80 (excluding 3 and 19), the GC maximum hits is one less that of WC4 . 2

See Open Problem 1 in Appendix A See Open Problem 2 in Appendix A 4 See Open Problem 3 in Appendix A 3

3.2.3

Linear Congruences

The linear congruence method (LC), described in Titlebaum[1], creates an n-by-n array. A scheme equivalent to this one, with the restriction that n is prime, is called the “wheel of fortune” method in Jaffe et al.[18]. Dots are placed in the array based on the following rule: (i, j) = (i, ai mod n),

for all i = 0, 1, . . . , n − 1, where 1 ≤ a ≤ n − 1.

(3.5)

These codes were designed to have ideal cross-correlation properties. Thus the maximum number of hits between two codes is one. However, this ideal cross-correlation was achieved at the expense of the auto-correlation properties which reach a maximum n − 1 hits in the worst-case. Note that with a = 1, the array generated is the staircase pattern. There are n − 1 choices for a and thus this scheme generate n − 1 codes. The LC code set is “full” if and only if n is prime.

3.2.4

Quadratic Congruences

The quadratic congruence method (QC), described in Titlebaum et al.[10], generates a p-by-p array using the following rule: (i, j) = (i, a

i(i + 1) ), 2

for all i = 0, . . . , p − 1, where 1 ≤ a ≤ p − 1.

(3.6)

QC codes have optimal auto-correlation properties (at most one hit) and near-optimal cross-correlation properties (at most two hits). QC codes are “non-full,” using only half of the available frequency bins per code. With p − 1 choices for a, there are p − 1 QC codes for a given p.

3.2.5

Extended Quadratic Congruences

The extended quadratic congruence method (EQC), described in Bellegarda and Titlebaum[9, 21], generates a p-by-p array using the following rule: 

(i, j) =  i,

a i(i+1) , 2 b i(i+1) + (a − b) 2

if 0 ≤ i ≤ p2 −1 8

, if

p−1 2

p−1 2

≤i≤p−1

  

(3.7)

Here, a and b are chosen from (1, 2, . . . , p−1) such that a and b are not both quadratic residues or quadratic non-residues of p. The

(p−1)2 2

“full” codewords that result each

have an auto-correlation bound of four hits. For the cross-correlation bound, these codes are divided into

p−1 2

sets. For each of these sets, the p − 1 codewords in the set

have a maximum of six cross hits. This bound does not apply to the cross-correlation between sets.

3.2.6

Cubic Congruences

The cubic congruence method (CC), described in Maric and Titlebaum[8], generates p − 1 codes of size p-by-p based on the following rule: (i, j) = (i, ai3 ),

for all i = 0, . . . , p − 1 where 1 ≤ a ≤ p − 1.

(3.8)

CC codes have a maximum of two and three hits for their auto and cross-correlation properties. CC codes are “full” and only exist when p is of the form 3m + 2.

3.2.7

Hyperbolic Congruences

The hyperbolic congruence method (HC), described in Maric and Titlebaum[22], generates p − 1 codes of size (p − 1)-by-(p − 1) using the following rule: (i, j) = (i, ai−1 ),

for all i = 1, . . . , p − 1, where 1 ≤ a ≤ p − 1.

(3.9)

Here, i−1 is the inverse of i in GF (p). That is, ii−1 ≡ 1. HC codes are “full” and have a maximum of two hits for their auto and cross-correlation.

3.2.8

Reed-Solomon

Reed-Solomon codes (RS), proposed by Mersereau and Seay[7, 11], are constructed using a generating matrix. T



0             

1 n1 .. . nk−1

            



 1    α   .  ..

1

1

...

α2 .. .

α3 .. .

...

k

2k

3k

 

α

α

α

T i 1         q−1 α = 1   i2    =  .   .. .   .  .

... α



1

(q−1)k

=1

 



 

iq−1

(3.10)

 

Here, α is a primitive element of GF (q) and n1 , . . . , nk−1 are elements of GF (q). The generated vector, ~i = (i1 , i2 , . . . , iq−1 ), is the firing order for the frequency bins. The RS arrays have size q-by-(q − 1), so at least one frequency hop is not used in every code. The RS technique generates q k−1 codes, one for each generating vector ~n and have an auto- and cross-correlation maximum hit bound of k. Some properties of RS Consider the case where k = 1. Here, the generating vector is ~n = (0, 1) and the one resulting waveform is ~n = (α, α2 , α3 , . . . , αq−1 ). Notice that this is a full code that is also generated by the Welch-Costas scheme5 . When k = 2 (at most two hits), the ~n = (0, 1) code is still present in the RS set; it now corresponds to ~n = (0, 1, 0). In addition to this code, there are q − 1 codes corresponding to the generating vector ~n = (0, 1, c) where 1 ≤ c ≤ q − 1. These codes all occupy half of the available frequencies6 . 5

This is not entirely true. As stated before, the RS scheme has q available frequencies and only uses at most q − 1 of them for any given waveform. Thus, it is impossible for any RS waveform to be truly full. In this case, f0 has been left out. Note that f0 does not occur in the Welch-Costas scheme. Thus the Welch-Costas version of this array is full. 6 This is a hypothesis based on empirical results. See Open Problem 4.

As k increases, new codes are added to the existing RS set, rather than a new RS set being created. For example, with k = 4 there are q 3 − q 2 codes that have at most 4 auto/cross hits, q 2 − q codes that have at most 3 auto/cross hits, q − 1 codes that have at most two auto/cross hits, and the ideal initial array. This demonstrates that the RS scheme contains many codes that perform better than the k upper bound. As for the fullness of the codes corresponding to k ≥ 3, empirical tests show that the RS codes typically have an average fullness ranging from 50% to 70% depending on the specific choice of k and N .

3.3

Comparison

Table 3.3 shows a summary of the attributes of the generating methods. The “N ” column refers to the allowable choices for the number of hops for the given method. Figure 3-1 shows a graph of the number of codes generated for all the techniques for N ≤ 200. Note that: • GC and RS are the only two schemes to generate more than O(N ) codes. • The size of GC is highly dependent on p. For example, with p = 59, GC contains 784 codes. However, with p = 61, GC only has 256 codes. This is due to the erratic behavior of Euler’s totient function. It is possible to show that φ(N ) grows at O(N/ log log N )[23]. Thus, GC grows at O(N 2 /(log log N )2 )7 . • The RS method grows at O(N k−1 ). With k=3, the RS method generates significantly more codes than any of the other techniques and these codes have comparable correlation properties. Thus, RS offers the advantage of much larger code set sizes than the other techniques. However, the RS codes are non-full; this non-fullness does adversely affect the continuous auto-correlation function. Chapter 4 investigates the differences in correlation performance between full and non-full codes. 7

For simplicity, the order or growth of GC was listed in the abstract as being O(N 2 ).

generation method N set size Welch-Costas p−1 φ(N ) Golomb-Costas q − 2 [φ(N + 1)]2 Linear Congruence n N −1 Quadratic Congruence p N −1 Ex. Quad. Congruence p N −1 Cubic Congruence p N −1 Hyperbolic Congruence p − 1 N Reed-Solomon q N k−1

autocorr crosscorr fullness 1 Table 3.1 full 1 Table 3.2 full n−1 1 full (if n = p) 1 2 non-full 4 6 full 2 3 full 2 2 full k k non-full

Table 3.3: A comparison of code set size and correlation bounds.

Figure 3-1: Set size for WC(o), GC(*), RS with k = 3(+), and the O(N ) schemes(x).

3.4

Bounds for full and non-full codes set size.

Why is it possible to generate factors of N more codes using the RS method? The following two bounds provide an upper limit on the number of full and the number of non-full codes that can be generated for a given number of hops by any scheme. They suggest that the added freedom of frequency placement in non-full codes allows the RS scheme to generate larger code sets.

3.4.1

Full Code Set Size

It was shown in Section 2.2.3 that no more than 4(N − 1)/N Costas arrays can have ideal cross-correlation properties. This bound is now extended to apply to Fn,k . Fn,k is defined to be largest set of n-by-n arrays possible with auto-correlation sidelobes ≤

k n

for any array in the set and cross-correlation ≤

k n

for any two arrays in the set.

We are only considering arrays that satisfy the one dot per column and one dot per row rule (i.e. full codes), a rule justified by Costas[2] for sonar frequency hopped signals. First, define a κ-connection to be a selection of κ dots from an n-by-n array. There n n! exist = κ!(n−κ)! ways to choose κ dots from an n-by-n array. For this proof, we κ define κ = k + 1. n If the auto-correlation sidelobes of an array are ≤ nk , then the κ-connections κ of that array must be distinct, not equal in the presence of two dimensional shifting. n If the κ-connections are not distinct, a shifting exists that results in κ overlaps, κ violating the upper bound on the sidelobe. If the total number of distinct κ-connections that are possible to embed in an nby-n array could be determined, an upper bound, BFn,k , could be established on the size of Fn,k simply by dividing this number by the number of distinct κ-connections that are required for one array. For a κ-by-κ array, there exist κ! distinct κ-connections. We can expand this κ-by-κ by adding n − κ blank rows to give us all distinct κ-connections in an n-by-κ n − 1 array. There exist ways to add these blank rows. Adding blank columns in κ−1

the same way gives us all the distinct κ-connections in an n-by-n array. Thus, the total number of distinct κ-connections possible in an n-by-n array becomes,  n − 1 2

κ!

κ−1

(3.11)

Dividing by the number of distinct κ-connections required, we get, BFn,κ−1 =

κ2 (n − 1)! κ2 (n − 1)(n − 2)(n − 3) . . . (n − κ + 1) = . n(n − κ)! n

(3.12)

Substituting k + 1 for κ, BFn,k =

(k + 1)2 (n − 1)(n − 2)(n − 3) . . . (n − k) ≥ |Fn,k |. n

(3.13)

n−1 ≥ |Fn,1 |, n

(3.14)

With k = 1 (κ = 2), BFn,1 = 4

which is exactly the bound proved by the vector analysis on Costas arrays.

3.4.2

Non-Full Code Set Size

We can also apply this combinatorial technique to determine BNn,k , an upper bound for |Nn,k |; Nn,k is the set of arrays, one dot per column but no restriction of the number of dots per row (a total of n dots), that meets the above auto/cross bounds for Fn,k . Relaxing the conditions for dot placement in the Nn,k arrays results in a larger number of possible κ-connections for an n-by-n array. There are nκ ways to place κ dots in an n-by-κ array (one dot per column). Of these nκ , (n − 1)κ do not have a dot in the first row and therefore are just shifts of other κ-connections already counted in the nκ . Thus, the number of distinct κ-connections for an n-by-κ array is nκ −(n−1)κ . As before, adding blank columns, the total number of distinct κ-connections for an

n-by-n array (with one dot per column) is, n−1

n−κ

(nκ − (n − 1)κ ).

Auto-correlation concerns still require that an array’s

(3.15) n

κ

κ-connections be dis-

tinct. Thus, n−1

BNn,κ−1 =

n−κ

(nκ − (n − 1)κ ) n

=

κ κ (n − (n − 1)κ ). n

(3.16)

κ Substituting, k + 1 for κ, BNn,k =

k + 1 k+1 (n − (n − 1)k+1 ) ≥ |Nn,k |. n

(3.17)

4n − 2 ≥ |Nn,1 |, n

(3.18)

With k = 1 (κ = 2), BNn,1 =

which is slightly higher than the |Fn,1 | bound but approaches the same limit, 4.

3.4.3

Thoughts on the Bounds

What do these bounds mean? Why are they useful? These bounds mean that for a given N and k, no scheme can generate more than BNn,k non-full codes or BFn,k full codes that meet k/N good auto/cross ambiguity. For example, for N = 15 and k = 2, it is impossible to generate more than 126 non-full codes (or more than 109 full codes). Some sample values for BFn,k and BNn,k are shown in Table 3.4. Note that, as expected, BNn,k > BFn,k for all n ≥ 2 and n > k ≥ 1. The plot in Figure 3-2 compares the size of the code sets of the GC and RS methods to BFn,k and BNn,k . Both bounds are shown for k = 2 and k = 3. For the RS scheme, as before, k = 3. These bounds do not, however, fully explain why the RS scheme generates factors of N more codes than the full schemes. The values in Table 3.4 are relatively close, while the code set sizes for the full and non-full schemes discussed in this thesis are

orders of magnitude apart. Aside from the factor of k, the RS method is nearly optimal, generating the same order of codes as BNn,k . Why is it that no full scheme comes close to BFn,k ? (n, k) BFn,k (3,1) 2.6 (4,1) 3 (100,1) 3.96 (3,2) 6 (4,2) 13 (5,2) 21 (6,2) 30 (10,2) 64 (20,2) 153 (60,2) 513

BNn,k 3.3 3.5 3.98 19 27 36 45 81 171 531

(n, k) BFn,k (5,3) 76 (10,3) 806 (20,3) 4651 (30,3) 11 693 (60,3) 52 014 (10,4) 7560 (20,4) 116´280 (40,4) 1 233 765 (10,5) 54 435 (50,5) 1.6 × 108

BNn,k 295 1375 5935 13 696 56 176 20 475 180 975 1 522 000 281 135 2.1 × 108

Table 3.4: Sample values for BFn,k and BNn,k .

Figure 3-2: Comparison of the set sizes of RS(+) with k = 3 and GC(*) vs. BFn,k (dashed) and BNn,k (solid).

A possible explanation is based on the fact that BFn,k and BNn,k are upper bounds. They both assume that the set of κ-connections can be divided in a way such that codes can be created. This is almost surely impossible. Because the conditions for creating a full code are more restrictive than those for non-full codes, BFn,k is likely to be not as tight as BNn,k . Accounting for this added restriction might further explain the disparity of full vs. non-full code set sizes. The fact that none of the full techniques discussed generate close to the bound supports this conjecture8 . In any case, the tightness of these bounds must be established9 .

3.5

Conclusions

Of the eight code generation schemes discussed in this chapter, only the GolombCostas and the Reed-Solomon generate more than O(N ) codes. Specifically, the Reed-Solomon method generates N k−1 codes with k/N auto/cross ambiguity sidelobes. The Golomb-Costas method generates φ(N )2 codes with 1/N auto ambiguity sidelobes and erratic cross ambiguity properties. The RS codes are non-full, while the GC codes are full. In an attempt to explain the disparity in code set size between the RS and all other methods, upper bounds were placed on maximum possible set size for a given choice of N and k. These bounds suggest that the added freedom for frequency placement in non-full codes allow for the larger set sizes. In the next chapter, the continuous domain replaces the discrete and the signal theoretic properties of frequency hopped codes is established.

8

The fact that the size of RS grows at the same rate as BNn,k for a constant k suggests that RS might be Nn,k . That is, considering the restrictions of array construction from the set of κconnections could account for difference between BNn,k and the size of RS. If this were the case, Nn,k = RS. 9 See Open Problem6 in Appendix A

Chapter 4 Signal Theory Correlation The auto/cross ambiguity bounds for the coding schemes in Chapter 3 assume that continuous wave sinusoids centered at different frequencies have no correlation. While this is true for infinitely long signals, it is not true for finite length signals, and especially not true for the short duration chips that are used in frequency hopped codes. This correlation can be determined and, as a result, the non-hit contribution to the ambiguity function has been bounded for many of the schemes described in Chapter 31 . Based on the bound of this non-hit correlation and the discrete correlation properties, Bellegarda and Titlebaum[9] describe a method for determining an upper bound for the sidelobes of the auto ambiguity surface and the entire cross ambiguity surface. This method is used in Section 4.1 to establish bounds for the crosscorrelation function and in Section 4.2 to establish bounds for the sidelobe region of the auto-correlation function, which is the region of the auto-correlation ambiguity surface with |τ | ≥ t∆ or |ν| ≥ f∆ . These bounds, along with the center region bounds (see below), determine the accuracy of signal detection, establishing the robustness of the signal. The bounds on the sidelobe region of the ambiguity surface do not apply to the center region. The center region correlation, correlation for τ ≤ t∆ and ν ≤ f∆ , is extremely complicated due to the fact that every hop is hitting at least partially 1 Recall from Chapter 2 that the “non-hit” correlation is the correlation between chips centered at different frequencies.

40

for all τ in this region. In the middle of the center region is a narrow spike, the mainlobe. The narrowness of this spike determines that range/Doppler resolution of the signal. Additionally, the sidelobes in the center region affect the signal detection properties. A high sidelobe in the center region (as in the sidelobe region) can cause a false detection. In Section 4.3 the behavior of the center region correlation for full and non-full codes is investigated.

4.1

Cross-Correlation

This section is based on computation done in [9]. This method is also used in [1, 6, 7, 11, 24]. Recall the chip from Chapter 2,

pi (t) =

  

√ 1 ej2πfi t N t∆

  0

for 0 ≤ t ≤ t∆ ,

(4.1)

otherwise.

The chip has been normalized so that the entire code word will have unit energy for the purpose of comparison. From [9], the cross-correlation Cab (τ ) between two chips, one centered at fa the other at fb , shifted in time by τ is given by, Cab (τ ) =

Z

+∞

−∞

pa (t + τ )p∗b (t) dt.

(4.2)

Using the definition of the elementary pulse, Equation 2.2, this simplifies to, ej2πfa τ (ej2π(fa −fb )(t∆ −τ ) − 1) N t∆ j2π(fa − fb ) (1 − |τ |/t∆ ) ejπ(2fa τ −(fa −fb )(t∆ −τ )) sin((1 − τ /t∆ )πt∆ (fa − fb )) = . . (4.3) N (1 − |τ |/t∆ )πt∆ (fa − fb )

Cab (τ ) =

Taking the magnitude, (1 − |τ |/t ) sin[(1 − |τ |/t )πt |f − f |] ∆ ∆ a b ∆ |Cab (τ )| = . . N (1 − |τ |/t∆ )πt∆ |fa − fb |

(4.4)

Figure 4-1: Two codes perfectly aligned, τ = 0. With fa = fb , the hit case, |Cab (τ )| ≤ 1/N − |τ |/N t∆ . With fa 6= fb , noting that | sin(x)| ≤ 1, |Cab (τ )| ≤ 1/πN t∆ |fa − fb |. Using Equation 2.1, |fa − fb | = f∆ |a − b|, the maximum cross-correlation between two chips, 0 ≤ τ ≤ t∆ , becomes:   

1 N



1 , πN t∆ f∆ |a−b|

|Cab (τ )| ≤ 



|τ | , N t∆

if a = b

(4.5)

if a 6= b.

Using Equation 4.5 we now bound the cross-correlation of two codes with maximum kc cross-correlation hits2 . That is, for any time/frequency shifting of the codes, at most kc hits occur. First we look at the hit case. From the discrete analysis, we know we have at most kc perfect overlaps for any given shifting. Figure 4-1 shows two signals, si and sj , perfectly aligned3 . Even if the codes are not perfectly aligned, as in Figure 4-2, we can still have a maximum contribution of kc /N to the cross-correlation for the hit case. This is because the left τ of the lower code’s bins aligned with the right τ of the upper code’s bins can hit ∆ kc times, and thus contribute at most kc τ /t . Similarly, the right t∆ − τ with the N

left can also hit at most kc times for a maximal correlation of kc 1−τN/t∆ . These two correlations sum to kc /N . We now bound the non-hit correlation. Referring to Figure 4-2, there are 2N − 1 2

Here, kc is short for kcross from Equation 2.12. Here, si and sj are the firing orders of the frequency bins. For example, si could be (1, 4, 2, 3) corresponding to the Costas array in Figure 2-2. 3

Figure 4-2: Two codes with 0 < τ < t∆ . separate contributions to the correlation. The sum of these contributions will upper bound the cross-correlation. For example, with ν = 0 and τ < t∆ |Ψij (τ, 0)| < Cu1 (τ )Cl1 (τ ) + Cu1 (τ )Cl2 (τ ) + Cu2 (τ )Cl2 (τ ) + · · · + CuN (τ )ClN (τ ). (4.6) In the worst-case, 2kc of these terms will be hits4 , so for the non-hit case we look at the remaining 2N − 2kc − 1 terms. Using an argument similar to the one used in the hit case, we know that if the lower code were shifted up in frequency by f∆ (one bin), at most 2kc of these terms would become hits. This also holds true if the lower code were shifted down by f∆ . Similarly, if we shift up (or down), by any integer multiple of f∆ , we will always have at most 2kc overlaps. Since we can only have 2N − 2kc − 1 of these overlaps, clearly the maximal cross-correlation will occur if the overlaps are as close in frequency as possible. This occurs when we have 4kc overlaps off by one f∆ (2kc for up, 2kc for down), 4kc overlaps off by 2f∆ , and so on, until we have accounted for all 2N − 2kc − 1 possible non-hit overlaps. This upper limit, for both the hit and non-hit case, is formalized as, kc + |Ψij (τ, ν)| < N 4

c −1 e d 2N −2k 4k c X

b=1

4kc . πN t∆ f∆ b

(4.7)

Again, we have a maximum of 2kc hits (instead of kc ) because the codes are slightly mis-aligned. Thus, the lower code’s left τ of each of the bins with the upper code’s right τ can hit at most kc times and the lower code’s right t∆ − τ with the upper code’s left t∆ − τ can hit at most kc times.

Note when 2N − 2kc − 1 (2N −2kc −1 (mod 4kc )) c −1 e . πN t∆ f∆ d 2N −2k 4k

(mod 4kc ) 6= 0, we have overbounded Equation 4.7 by

Using the fact that,

c

1 1

+

1 2

+ ··· +

1 x

≤ 1 + ln x, Equation 4.7

becomes, &

'

kc 4kc 2N − 2kc − 1 kc 4kc N |Ψij (τ, ν)| < + (1+ln )< + (1+ln ). (4.8) N πN t∆ f∆ 4kc N πN t∆ f∆ 2kc From the definition of the frequency hopped waveform, T B = N 2 t∆ f∆ . Thus, |Ψij (τ, ν)|
t∆ . With |τ | > t∆ , at least one full chip of each code does not overlap and there are at most 2N − 3 contributions to the correlation (see Figure 4-4). By the same argument used in Section 4.1, a maximum 4ka of these can be off by one f∆ , 4ka of these can be off

Figure 4-3: Regions of different correlation. by two f∆ , and so on5 . Thus, the zero-Doppler auto-correlation outside of the center region is bounded by, −3 e d 2N 4k

|Ψii (τ, ν)| ≤ 4ka

a X

b=1

1 4ka N < (1 + ln(N/2ka )) πN t∆ f∆ b πT B

(4.10)

Figure 4-4: Two codes with |τ | > t∆ . For non-full codes, at most ka hits can occur for zero-Doppler shifts. Thus the bound in Equation 4.7 holds with a slight adjustment in the bounds of the sum 5

Here, we replace kc with ka because we are calculating the auto-correlation function bound.

(because |τ | > t∆ ), ka + |Ψii (τ, ν)| ≤ N

a −3 e d 2N −k 4k a X

b=1

ka 4ka N 4ka < + (1 + ln(N/2ka )). πN t∆ f∆ b N πT B

(4.11)

Note that more correlation along the zero-Doppler axis means less correlation elsewhere.

4.2.2

|τ | < t∆ Column

First, consider the τ = 0 axis. Along this axis, no hits will occur for |ν| > f∆ , but the N non-hits will all have the same frequency difference. When ν = f∆ , the frequency differences will be at a minimum and the bound on the correlation will be at a maximum. Now consider a shifting in time by τ , |τ | < t∆ , along this axis (see Figure 4-5). As in the above τ = 0 case, the maximum bound on the correlation will occur for ν = f∆ . Shifting in time by τ moves into at most ka hits. The correlation of the ka hits (with t∆ > τ ) is < ka τ /N t∆ which is obviously < ka /N . We still have the N terms from the τ = 0 case plus N − ka − 1 other terms. By the same argment used in Section 4.1, at most 2ka of these terms can be off by f∆ , 2ka off by 2f∆ , and so on. Thus the bound becomes, d N −ka −1 e

2ka N X X ka 1 2ka 1 1 |Ψii (τ, ν)| < + + N πN t∆ f∆ b=1 b πN t∆ f∆ b=1 b N 2ka N ka + (1 + ln(N )) + (1 + ln(N/ka )). < N πT B πT B

(4.12)

Note that full codes can only have ka off by one f∆ , instead of 2ka , resulting in the bound being slightly higher than necessary. Again, this is because along the zero-Doppler axis, no hits occur.

4.2.3

Off-Center Region and Off-Axis Correlation

For the off-center region and off-axis correlation, we will have 2N − 3 contributions to the correlation, since τ > t∆ . By the same argument used in Section 4.1, 2ka of

Figure 4-5: Auto-overlap of code with |τ | > t∆ and discrete freq. shift s. these may be hits contributing a total of ka /N . A maximum 4ka of these can be off by one f∆ , 4ka of these can be off by two f∆ , and so on. Thus, the correlation outside of the center region and off the axis is bounded by, ka |Ψii (τ, ν)| ≤ + N

4.2.4

a −3 e d 2N −2k 4k a X

b=1

4ka ka 4ka N < + (1 + ln(N/2ka )). πN t∆ f∆ b N πT B

(4.13)

Sidelobe Region Correlation Summary

The overall bound for the auto-correlation sidelobe and cross-correlation surface is the same for both full and non-full codes (Equation 4.13). However, along the zeroDoppler axis, full codes perform O(k/N ) better.

4.3

Auto-Correlation: Center Region

The center region correlation behavior is extremely complex. Obviously, for τ = 0 and ν = 0, we will have a spike of height 1. This spike is often called the mainlobe. The ultimate range/Doppler resolution of the signal is based on the narrowness of the mainlobe. The height of the next greatest peak (maximum sidelobe) in the region surrounding the mainlobe greatly affects signal performance6 . In this section, these 6

Peaks in the ambiguity surface, aside from the mainlobe, are called sidelobes regardless of whether they appear in the sidelobe or center region.

two issues, mainlobe resolution and center region correlation, are shown to be different for full and non-full codes.

4.3.1

Full Codes

This section is based on Costas[2]. Substituting the definition of the frequency hopped waveform (Equation 2.3) into the auto-correlation function (Equation2.6) results in, N N X 1 Z +∞ X Ψii (τ, ν) = pa (t − (a − 1)t∆ + τ ) × p∗b (t − (b − 1)t∆ )ej2πνt dt. (4.14) N t∆ −∞ a=1 b=1

This equation governs the auto-correlation of a frequency hopped waveform. In this section, we consider only the contributions to the auto-correlation from the hit cases in the range |τ | ≤ t∆ and |ν| ≤ f∆ . That is, only consider the terms of the above product where both pulses are at the same frequency. The sum of these terms, P

hit(

×

P

), is formally defined as, X

hit(

×

X

) = p1 (t + τ )p∗1 (t) + p2 (t + τ − t∆ )p∗2 (t − t∆ ) + · · · + pN (t + τ − (N − 1)t∆ )p∗N (t − (N − 1)t∆ ).

(4.15)

Using the definition of the pulse, Equation 2.2, this simplifies to, X

hit(

×

X

)=

N X

ej2πfa τ .

(4.16)

a=1

Note that there is also correlation from the non-hit cases; we will consider the contribution from the N −1 terms of non-hit overlap at the end of this section. Substituting Equation 4.16 into Equation 4.14 yields,

Ψhit(P × P) (τ, ν) =

Z at∆ −τ N 1 X ej2πfa τ ej2πνt dt. N t∆ a=1 (a−1)t∆

(4.17)

sin N l/2 , sin l/2

(4.18)

Using the identity, N −1 X r=0

ejlr = ej(N −1)l/2 .

and the fact that, fa = f1 + (a − 1)f∆ , this simplifies to, |Ψhit(P × P) (τ, ν)| = (1 − τ /t∆ ) ·

sin πν(t∆ − τ ) sin N π(f∆ τ + t∆ ν) · , πν(t∆ − τ ) N sin π(f∆ τ + t∆ ν)

(4.19)

where 0 ≤ τ ≤ t∆ . This equation governs the hit correlation in the center region for full codes. Resolution As noted in Costas[2], using Equation 4.19 we can determine the width in time and frequency of the spike, and thus the range/Doppler resolution of the system. Along the zero-Doppler axis, ν = 0, the third term governs the range resolution. The zeros closest to the peak occur at τ = ±1/N f∆ . Thus the range resolution is 2/N f∆ . Along the τ = 0 axis, zeros occur at ν = ±1/N t∆ and the Doppler resolution is 2/N t∆ . Costas[2] points out that the range/Doppler resolution of full frequency hopped signals is consistent with the time bandwidth product of the signal. Sidelobe Bounds A bound for the correlation properties in the center region is not known. While Costas[2] provides a detailed mathematical analysis of the correlation of full codes, no bound is established for the highest off spike peak in the center region. In fact, [1, 2, 6, 7, 8, 9, 10, 11, 24] all concentrate their analysis on the sidelobe region. Comments on the center region correlation in these papers is usually limited to qualitative remarks based on empirical tests. Below an analysis of the Equation 4.19 results in an approximation for the maximum off mainlobe peak in the center region. First note that the hit correlation in the center region is symmetric with respect to the τ axis, ν axis, and the origin. Thus for simplicity, we need only consider the correlation surface in the first quadrant. Consider the three terms of Equation 4.19. T1 = (1 − τ /t∆ )

(4.20)

sin πν(t∆ − τ ) πν(t∆ − τ )

(4.21)

sin N π(f∆ τ + t∆ ν) N sin π(f∆ τ + t∆ ν)

(4.22)

T2 = T3 =

The first is a triangular envelope along the τ axis, shown in Figure 4-6. The second is a sinc function. Along the ν = 0 axis and the τ = t∆ line, T 2 = 1. If t∆ f∆ = 17 , T2 slopes down, in two dimensions, to a zero at (τ, ν) = (0, f∆ ). If t∆ f∆ < 1, T2 reaches a minimal value of at (τ, ν) = (0, f∆ ). If t∆ f∆ > 1, the sinc function behavior becomes apparent. These three behaviors are demonstrated in Figure 4-7 and Figure 4-8. The third term has the dominating behavior. For the choice t∆ f∆ = 1, T3 is shown in Figure 4-9. Note that along lines of the form, f∆ τ + t∆ ν = c, where c is a constant (0 ≤ c ≤ f∆ + t∆ ), the value of T3 is constant. For f∆ τ + t∆ ν = 0, that is (τ, ν) = (0, 0), T3 = 1. As f∆ τ + t∆ ν gets larger, T3 goes through N − 2 tightly bounded peaks before reaching a maximum value of one again when f∆ τ + t∆ ν = 1. In fact, T3 becomes one whenever f∆ τ + t∆ ν = k, where k is any positive integer. Figure 4-10 shows examples of T3 for t∆ f∆ 6= 1. Where does the maximum correlation occur? I have been unable to find a general solution for the maximum off mainlobe correlation in the center region. However, using the above knowledge of the shape of T1 , T2 , and T3 , we can learn much about the maximum correlation for various t∆ f∆ choices. Looking at T3 , it becomes apparent that the maximum correlation will likely occur along the f∆ τ + t∆ ν = 1 line where T3 = 1. Other choices for f∆ τ + t∆ ν are likely to correlate less. For f∆ τ + t∆ ν < 1, the peaks of T3 are much less than one. For f∆ τ + t∆ ν > 1, T1 limits the correlation for larger τ and T2 limits the correlation for larger ν (when τ is small). Figure 4-11 shows |Ψhit(P × P) (τ, ν)| for t∆ f∆ = 1 and Figure 4-12 shows |Ψhit(P × P) (τ, ν)| for t∆ f∆ = 2. Note the maximum in both cases occurs along the f∆ τ + t∆ ν = 1 line.

7 The choices for the product t∆ f∆ decide the relationship of N to T B. The trade-offs involved for these choices is discussed in Chapter 5

Figure 4-6: T1

Figure 4-7: T2 with t∆ f∆ = 1 (N = 10).

Figure 4-8: T2 with t∆ f∆ = 5 and with t∆ f∆ = .5 (N = 10).

Figure 4-9: T3 with t∆ f∆ = 1 (N = 10).

Figure 4-10: T3 for t∆ f∆ = 2 and t∆ f∆ = .5 (N = 10). The other obvious choice for maximal correlation is along the first ridge of T3 , N (f∆ τ + t∆ ν) = 3/2. This line becomes significant when t∆ f∆ < 1 and is discussed later. If we restrict f∆ τ + t∆ ν = 1, ν=

1 − f∆ τ . t∆

(4.23)

Substituting into Equation 4.19, |Ψhit(P × P) (τ,

sin π(1 − f∆ τ )(1 − τ /t∆ ) 1 − f∆ τ )| = (1 − τ /t∆ ) · . t∆ π(1 − f∆ τ )(1 − τ /t∆ )

(4.24)

This expression is valid for τ ≤ 1/f∆ . Taking the derivative with respect to τ results in Equation 4.24 achieving its maximum value for a τ that satisfies, π(1 − f∆ τ )(1 − τ /t∆ )(1 + 1/f∆ t∆ ) = tan π(1 − f∆ τ )(1 − τ /t∆ ).

(4.25)

Figure 4-11: Center region hit correlation with t∆ f∆ = 1 (N = 10) τ = 1/f∆ is one obvious solution, and for this τ the correlation becomes, |Ψhit(P × P) (1/f∆ , 0)| ≥ 1 −

1 N2 . ≥1− t∆ f∆ TB

(4.26)

This is only true if 1/f∆ ≤ t∆ . Otherwise, the τ shift would be greater than t∆ , the maximum possible shift. Therefore, Equation 4.26 is valid for t∆ f∆ ≥ 1. While the maximum off spike peak will not necessarily occur when τ = 1/f∆ , Equation 4.26 does reveal a fundamental correlation trade-off. This shows the center region correlation is inversely related to the sidelobe region correlation. Referring back to Equation 4.13, as T B grows for a constant N , the sidelobe region maximal correlation shrinks. This result shows that as T B grows for a constant N , or stated equivalently, as t∆ f∆ grows for a constant N , the center region correlation increases. This trade-off is discussed more fully in Chapter 5. How close is Equation 4.26 to the actual maximal hit correlation? The results ∆τ from a computer search for the maximum value of |Ψhit(P × P) (τ, 1−f )| are shown t∆

Figure 4-12: Center region hit correlation with t∆ f∆ = 2 (N = 10) ∆τ in Figure 4-13. This graph shows the correlation maximum of |Ψhit(P × P) (τ, 1−f )| t∆

and |Ψhit(P × P) (1/f∆ , 0)| for 0 ≤ t∆ f∆ ≤ 7.5. Note that for large t∆ f∆ , 1 −

1 t∆ f∆

is

a good approximation for the center region hit correlation. The rapid drop off from τ = 1 to τ = .5 is caused by the f∆ τ + t∆ ν = 1 line being shifted out of the center region window. Points of higher correlation exist along the f∆ τ + t∆ ν = 1 line, but they are for ν > f∆ . The values for higher ν (ν > f∆ ) are represented by the dotted line in Figure 4-13. Note the surprising fact that as t∆ f∆ → 0, the maximum off peak correlation approaches a constant. This can be explained by rewriting Equation 4.24 with x = τ /t∆ (0 ≤ x ≤ 1), |Ψhit(P × P) | =

sin π(1 − t∆ f∆ x)(1 − x) . π(1 − t∆ f∆ x)

(4.27)

As t∆ f∆ → 0, this equation becomes sin π(1 − x)/π. For x = .5 (τ = t∆ /2), |Ψhit(P × P) | = 1/π. Based on this result, it is clear that the maximum off spike peak cannot be made lower than 1/π. Figure 4-13 and Equation 4.26 show that this peak only gets larger for larger t∆ f∆ choices. This reveals a performance limitation

Figure 4-13: Maximum hit correlation(solid) and approximation(dashed) in the center region. of frequency hopped waveforms which use sinusoids centered at different frequencies as hops. It is conceivable, however, that the non-hit correlation could interfere with this peak, lowering it. This interference would be code dependent and it is not clear how to design signals which would have this property. The code sets considered in this thesis certainly were not designed with this performance issue in mind and it is unlikely that any of the codewords lower this peak by a significant amount8 . While Equation 4.26 reveals much about the correlation behavior for t∆ f∆ ≥ 1, it tells us nothing for t∆ f∆ = 1 and for t∆ f∆ < 1. Returning to Equation 4.19, consider 8

Even if a signal was designed (or found) that interfered favorably with this peak, the fact that the non-hit correlation was significant enough to lower the peak would mean that the non-hit correlation was significant. Thus, all the peaks of the non-hit correlation would have to coincide with destructively interefering peaks in the hit correlation. A truly well designed signal indeed.

t∆ f∆ = 1. Substituting f∆ = 1/t∆ , Equation 4.24 becomes, (1 − τ /t∆ ) ·

sin π(1 − τ /t∆ )2 π(1 − τ /t∆ )2

(4.28)

This function is the center region correlation along the f∆ τ + t∆ ν = 1 line with t∆ f∆ = 1. Taking the derivative with respect to τ , we find this function has a maximum value when, tan(π(1 − τ /t∆ )2 ) = 2π(1 − τ /t∆ )

(4.29)

This equation is satisfied when τ ≈ .3909t∆ . For this τ the correlation becomes ≈ .4803. As t∆ f∆ moves from 1 to .5, the maximum correlation in the center region will move from the f∆ τ + t∆ ν = 1 ridge onto the N (f∆ τ + t∆ ν) = 3/2 ridge, the ridge closest to the mainlobe in Figure 4-11. This is because as t∆ f∆ goes from 1 to .5, the center region window shrinks and contains less and less of the f∆ τ + t∆ ν = 1 line. When t∆ f∆ = .5 the f∆ τ +t∆ ν = 1 line is no longer contained in T3 and the maximum will occur along the N (f∆ τ + t∆ ν) = 3/2 line. Restricting N (f∆ τ + t∆ ν) = 3/2, ν=

3 2N

− f∆ τ , t∆

(4.30)

and Equation 4.19 becomes,

|Ψhit(P × P) (τ,

3 2N

3

−f τ

sin π( 2N t∆ ∆ )(1 − τ /t∆ ) − f∆ τ 1 )| = (1 − τ /t∆ ) · · 3 3π . (4.31) −f τ t∆ π( 2N ∆ )(1 − τ /t∆ ) N sin 2N t∆

This equation is valid for τ ≤

3 . 2N f∆

For N ≥ 5, direct calculation shows that

1/ sin(3π/2N ) < 1/4. Thus |Ψhit(P × P) | < 1/4 if N ≥ 5 and t∆ f∆ ≤ .5. Figure 414 shows the center region ambiguity surface with t∆ f∆ = .5 and N = 10. Note the maximal correlation occurs along the N (f∆ τ + t∆ ν) = 3/2 line. The correlation is much improved over the t∆ f∆ = 1 case. However, this is because the maximum sidelobe caused by the f∆ τ + t∆ ν = 1 line is outside the center region, not because it

Figure 4-14: Center region hit correlation with t∆ f∆ = .5 (N = 10) has been eliminated.

4.3.2

Non-Hit and Total Correlation

So far, in the analysis of the center region the non-hit contributions have been ignored. That is, for a τ shifting in time, we have ignored the N − 1 contributions from chips centered at different frequencies. Using the technique described in Section 4.1, this non-hit contribution can be bounded by, d N −1 e

2ka X 2ka 1 2ka N < (1 + ln(N/2ka )). πN f∆ t∆ b=1 b πT B

(4.32)

Thus, using Equation 4.26, we can approximate the maximum sidelobe peak in the center region, 1−

N2 2ka N + (1 + ln(N/2ka )). TB πT B

(4.33)

This equation is only an approximation of the maximum correlation and not an upper bound because Equation 4.26 is simply a the hit contribution for (τ, ν) = (1/f∆ , 0)

and not necessarily the maximal hit correlation. As Figure 4-13 shows, Equation 4.26 approaches the actual maximum correlation for larger t∆ f∆ products. Thus, this approximation is only valid for larger t∆ f∆ products. Despite this limitation, Equation 4.33 does capture the basic relationship between T B, N , and signal performance in the center region. That relationship being, as N increases for a constant T B, the hit correlation decreases while the non-hit correlation increases. This trade-off is explained in more detail in Chapter 5.

4.3.3

Non-Full Codes

A general closed form solution, such as Equation 4.19, is not possible for non-full P

codes. This is because the product hit(

×

P

) is dependent on the specific frequencies

which are repeated for the particular code. Thus, the form of |Ψhit(P × P) (τ, ν)| would be code dependent. Bellegarda et al.[10] compares the properties of full code and non-full code center region correlation. It is noted that non-full codes have more and higher peaks in the center region. The narrowness of the spike is claimed to vary based on the “rms bandwidth (spectral variance).” In their examples, the non-full code spike is shown to be narrower in one case and wider in another than that of the full code counterpart (same number of hops). One obvious explanation for the increased correlation in the center region of nonfull codes is the presence of zero-Doppler hits. If the same frequency is repeated back to back in a code, τ /N t∆ can be added to the correlation for 0 ≤ τ ≤ t∆ . In [10] however, there were no back to back repeated frequencies in the codes tested. The hit correlation of non-full codes must therefore be different (contain higher peaks) than that of full codes. The fact that non-full codes contain higher peaks implies that non-full codes also have regions of lower correlation. However, the ideal code would have smooth, tightly bounded off mainlobe correlation, so this erratic behavior is unattractive. In order to better understand the center region correlation properties of non-full codes, we consider two types of non-full signals. These signals will be constructed so

that the identity in Equation 4.18 may be used to generate a closed form solution for the center region correlation. The first signal, repeats every N/xth frequency N/x times. The second signal uses only the lowest x frequencies, repeating each of them N/x times. Each of these signals use x of the N available frequencies. In the first signal, X

hit(

×

X

)=

x N X ej2πf(aN/x) τ . x a=1

(4.34)

Substituting back into Equation 4.14, Ψhit(P × P) (τ, ν) =

Z at∆ −τ x N X j2πf(aN/x) τ ej2πνt dt e xN t∆ a=1 (a−1)t∆

(4.35)

Using the identity Equation 4.18 and the fact that, f(aN/x) = f1 + (a − 1)(N/x)f∆ , this simplifies to, |Ψhit(P × P) (τ, ν)| = (1 − τ /t∆ ) ·

sin πν(t∆ − τ ) sin xπ((N/x)f∆ τ + t∆ ν) · . (4.36) πν(t∆ − τ ) x sin π((N/x)f∆ τ + t∆ ν)

In the second signal, X

hit(

×

X

)=

x N X ej2πfa τ . x a=1

(4.37)

Substituting back into Equation 4.14, Ψhit(P × P) (τ, ν) =

Z at∆ −τ x N X j2πfa τ e ej2πνt dt xN t∆ a=1 (a−1)t∆

(4.38)

Using the identity Equation 4.18, |Ψhit(P × P) (τ, ν)| = (1 − τ /t∆ ) ·

sin πν(t∆ − τ ) sin xπ(f∆ τ + t∆ ν) · . πν(t∆ − τ ) x sin π(f∆ τ + t∆ ν)

(4.39)

The first signal has the same range resolution as the full codes. However, the Doppler resolution of the first signal and both the range and Doppler resolution of the second code have been increased (i.e., made worse) by a factor of N/x.

As for the correlation properties, only the third term has changed in comparison with the Equation 4.19. The change of N to x in both Equation 4.36 and Equation 4.39 will result in there being fewer peaks before the first ridge of height one in T3 . For the first signal, the factor of N/x in the sine in the denominator causes the unity ridge of T3 to occur along the (N/x)f∆ τ +t∆ ν = 1 line. This line is closer to the mainlobe than the f∆ τ + t∆ ν = 1 line. This results in higher sidelobes; the maximum sidelobe is significantly higher. Additionally, this slope change caused by the N/x factor brings more peaks of height one from T3 into the center region. This results in the more and higher peaks that are expected based on the results in Titlebaum et al.[10]. In contrast, the second signal has a smoother sidelobe region. The smaller peaks leading up to the f∆ τ + t∆ ν = 1 line have correlation values similar to that of the full case. The maximum sidelobe for this signal is the slightly higher than the full case peak. However, this signal did have the worst range/Doppler characteristics. Figure 4-15 shows the center region hit correlation for both non-full signals with N = 10 and t∆ f∆ = 1. These two examples show that non-full codes can perform both substantially worse and marginally worse than their non-full counterpoints. While neither of these example produced a narrower mainlobe, the fact that they are somewhat “ordered” in their non-fullness may affect their resolution. Perhaps less “ordered” non-full codes posses narrower mainlobes. Nevertheless, these two signals show that the worse performance of non-full codes is caused by two factors: (1) the obvious O(1/N ) increases caused by back to back frequency repeats, and (2) the change in the nature of the center region hit correlation.

4.4

Conclusions

The bound on the auto-correlation sidelobes and entire cross-correlation surface is the same for both full and non-full codes. However, in the important zero-Doppler case, full-codes out perform non-full because, by definition, full codes have no hits along this axis. The largest performance difference occurs in the center region, where

Figure 4-15: Center region ambiguity for the first(left) and second(right) non-full signals, t∆ f∆ = 1 (N = 10). full codes have much better behavior. This performance difference is attributed to two factors. First, the reduced frequency diversity of non-full codes causes the hit correlation to peak at higher levels than that of full codes. Second, the hits along the zero-Doppler axis cause the non-hit correlation of non-full codes to be O(k/N ) worse.

Chapter 5 Waveform Performance This chapter examines the relationship between code set size, time-bandwidth product and signal performance. In the previous chapter, it was shown that the discrete correlation predictions of Chapter 3 only account for part of the actual signal correlation. This unaccounted for part, the non-hit correlation, was shown to be dependent on the relationship between N and T B. Thus, ultimate waveform performance is determined by the choice of coding scheme from Chapter 3 and the relationship of N to T B. Additionally, the size of N , along with the choice of coding scheme, determines the number of waveforms that can be generated (code set size). In this chapter, Section 5.1 discusses the general trade-offs involved in the choice of N to T B relationship. The trade-off of hit vs. non-hit correlation is shown to limit the performance in both the sidelobe and center regions. A comparison of the correlation bounds for both regions for variable N and constant T B reveals the fundamental trade-off of center region vs. sidelobe region correlation. The Section 5.2 looks at two N to T B relationships popular in the literature. For each of these choices, expressions are derived relating T B, a measure of cost in sonar systems, to the number of codes and the properties of those codes generated using the Golomb-Costas and Reed-Solomon schemes. Computer simulations (Section 5.3) and results from a series of ocean tests (Section 5.4) verify the theoretical claims. Based on the simulation results, a new choice of N to T B relationship is proposed.

64

5.1

N vs. T B Issues

In the last chapter it was shown that the maximum sidelobe in the sidelobe region (for both full and non-full codes) is bounded by, |Ψii (τ, ν)|
T B. Instead, the maximum center region hit correlation values from Figure 4-13 were used along with the non-hit term of Equation 5.2. The shape of this plot is similar to that of the sidelobe region correlation (Figure 5-1). Overlaying these two plots, Figure 5-1 and Figure 5-2, reveals the fundamental trade-off of sidelobe region vs. center region correlation involved in the choice of N to T B relationship. Figure 5-3 shows the sidelobe and center region bounds for T B = 500. Note that the minimum value for the sidelobe region (N ≈ 10) does not line up with the minimum value for the center region (N ≈ 30). In fact, at the minimum sidelobe region correlation (N ≈ 10), the center region correlation is extremely high (≈ .8 − .9). As N goes from 10 to 30, the center region correlation reaches its lowest value but the sidelobe region bound approximately doubles. The fact that these minimums do not line up means that the choice of N to T B relationship is really a choice between sidelobe region performance and center region performance. The two choices of N to T B relationship that are common in publication are examined in the next section.

Figure 5-2: Center region correlation bound.

Figure 5-3: Comparison of center(solid) and sidelobe(dotted) region correlation with T B = 500.

5.2

N vs. T B Choices

There are two choices of N to T B relationship that are popular in the literature. The first, described in Titlebaum[1], optimizes the performance in the sidelobe region. This choice unfortunately sacrifices the performance in the center region. The correlation properties and code set sizes for this choice are analyzed in Section 5.2.1. The second choice, commonly called the “Nyquist” choice, has slightly worse sidelobe region performance, but exhibits much cleaner center region behavior. This choice, which is considered in Section 5.2.2, also allows for larger code sets to be generated. Section 5.2.3 compares these two choices. When considering both N to T B relationships, it is important to keep in mind that N is the free parameter and T B is the resource. When designing sets of codes, T B should be made as large as possible within system limitations and then N should be chosen to meet range/Doppler resolution, auto/cross ambiguity, and code set size requirements.

5.2.1

Minimal Sidelobe Region Choice

Titlebaum[1] proposes an N to T B relationship which minimizes the maximum possible peak in the sidelobe region. It is obtained by differentiating Equation 5.1, which bounds the sidelobe region correlation, with respect to N and solving for T B. Taking the derivative and solving for T B, the choice of N to T B relationship which minimizes the sidelobe region correlation becomes1 , TB = 1

4(Nmsr )2 (2 + ln(Nmsr /2ka )). π

(5.3)

Titlebaum calls this choice (T B)opt because it optimizes the sidelobe region correlation. Since this choice does not exhibit good behavior in the center region and because T B is not the free parameter, I refer to this choice as Nmsr .

Correlation Properties Substituting back into Equation 5.1 the sidelobe region correlation becomes, |Ψii |Nmsr =

ka (1 + ln Nmsr /2ka ) ka ka + · 4.5. For a choice of t∆ f∆ as large as this, Equation 5.6 should closely approximate the maximum possible sidelobe in the center region. Figure 5-4 shows the sidelobe region correlation bound (Equation 5.4) and the 2 Note that it is also possible to choose N to minimize the cross-ambiguity function. If ka = kc (as in the Reed-Solomon scheme), obviously Nmsr as defined above minimizes both. For the schemes where ka 6= kc (like the Golomb-Costas scheme), minimizing for one concern (auto or cross) slightly affects the double discrete correlation bound of the other. Nevertheless, as long as ka /N and kc /N are reasonably close, minimizing one correlation surface tightly bounds the other.

Figure 5-4: Center region maximal sidelobe for the Nmsr choice. center region maximum correlation approximation (Equation 5.6) for 0 ≤ ka /N ≤ 1. The dotted line is the twice discrete correlation prediction from Equation 5.4. Regardless of the value of the discrete correlation bound, ka /Nmsr , it is clear that the ideal “thumbtack” shape of the auto-ambiguity surface (from Section 2-4) is not possible with N = Nmsr due to high sidelobes in the center region. Code Set Sizes The code set sizes are based on the size of N . Solving Equation 5.3 for Nmsr yields, s

Nmsr =

πT B . 4(2 + ln(Nmsr /2ka ))

(5.7)

If ka /Nmsr ≤ 1/10, Equation 5.7 becomes, s

Nmsr