Patent Publication Number: US-11665041-B2

Title: Modulation and equalization in an orthonormal time-frequency shifting communications system

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. patent application Ser. No. 16/793,469, filed on Feb. 18, 2020, which is a continuation of U.S. patent application Ser. No. 16/044,425, filed on Jul. 24, 2018, which is now U.S. Pat. No. 10,567,125, issued Feb. 18, 2020, which is a continuation of U.S. patent application Ser. No. 15/047,941, entitled MODULATION AND EQUALIZATION IN AN ORTHOGONAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed on Jan. 17, 2017, now U.S. Pat. No. 10,063,354, which is a continuation of U.S. patent application Ser. No. 14/717,886, entitled MODULATION AND EQUALIZATION IN AN ORTHONORMAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed on May 20, 2015, now U.S. Pat. No. 9,548,840, which is a continuation of U.S. patent application Ser. No. 13/927,088, entitled MODULATION AND EQUALIZATION IN AN ORTHONORMAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed on Jun. 25, 2013, now U.S. Pat. No. 9,071,286, which claims the benefit of priority under 35 U.S.C. § 119(e) of U.S. Provisional Application Ser. No. 61/664,020, entitled MODULATION AND EQUALIZATION IN AN ORTHONORMAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed Jun. 25, 2012, of U.S. Provisional Application Ser. No. 61/801,398, entitled MODULATION AND EQUALIZATION IN AN ORTHONORMAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed Mar. 15, 2013, of U.S. Provisional Application Ser. No. 61/801,366, entitled MODULATION AND EQUALIZATION IN AN ORTHONORMAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed Mar. 15, 2013, of U.S. Provisional Application Ser. No. 61/801,435, entitled MODULATION AND EQUALIZATION IN AN ORTHONORMAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed Mar. 15, 2013, of U.S. Provisional Application Ser. No. 61/801,495, entitled MODULATION AND EQUALIZATION IN AN ORTHONORMAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed Mar. 15, 2013, of U.S. Provisional Application Ser. No. 61/801,994, entitled MODULATION AND EQUALIZATION IN AN ORTHONORMAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed Mar. 15, 2013, and of U.S. Provisional Application Ser. No. 61/801,968, entitled MODULATION AND EQUALIZATION IN AN ORTHONORMAL TIME-FREQUENCY SHIFTING COMMUNICATIONS SYSTEM, filed Mar. 15, 2013, the contents of each of which are hereby incorporated by reference in their entirety for all purposes. This application is a continuation-in-part of U.S. patent application Ser. No. 13/117,119, entitled ORTHONORMAL TIME-FREQUENCY SHIFTING AND SPECTRAL SHAPING COMMUNICATIONS METHOD, filed May 26, 2011, which claims priority to U.S. Provisional Application Ser. No. 61/349,619, entitled ORTHONORMAL TIME-FREQUENCY SHIFTING AND SPECTRAL SHAPING COMMUNICATIONS METHOD, filed May 28, 2010, and is a continuation-in-part of U.S. patent application Ser. No. 13/117,124, entitled COMMUNICATIONS METHOD EMPLOYING ORTHONORMAL TIME-FREQUENCY SHIFTING AND SPECTRAL SHAPING, filed May 26, 2011, which claims priority to U.S. Provisional Application Ser. No. 61/349,619, entitled ORTHONORMAL TIME-FREQUENCY SHIFTING AND SPECTRAL SHAPING COMMUNICATIONS METHOD, filed May 28, 2010, the contents of each of which are hereby incorporated by reference in their entirety for all purposes. 
    
    
     FIELD 
     This disclosure generally relates communications protocols and methods, and more particularly relates to methods for modulation and related processing of signals used for wireless and other forms of communication. 
     BACKGROUND 
     Modern electronic communication devices, such as devices configured to communicate over transmission media such as optical fibers, electronic wires/cables, or wireless links, all operate by modulating signals and sending these signals over the applicable transmission medium. These signals, which generally travel at or near the speed of light, can be subjected to various types of degradation or channel impairments. For example, echo signals can potentially be generated by optical fiber or wire/cable mediums whenever the modulated signal encounters junctions in the optical fiber or wire/cable. Echo signals can also potentially be generated when wireless signals bounce off of wireless reflecting surfaces, such as the sides of buildings, and other structures. Similarly, frequency shifts can occur when the optical fiber or wire/cable pass through different regions of fiber or cable with somewhat different signal propagating properties or different ambient temperatures. For wireless signals, signals transmitted to or from a moving vehicle can encounter Doppler effects that also result in frequency shifts. Additionally, the underlying equipment (i.e. transmitters and receivers) themselves do not always operate perfectly, and can produce frequency shifts as well. 
     These echo effects and frequency shifts are undesirable and, if such shifts become too large, may adversely affect network performance by effectively lowering maximum attainable data rates and/or increasing error rates. Such performance degradation is particularly problematic in wireless networks, which are straining to accommodate more and more users, each desiring to send and receive ever-increasing amounts of data. Within wireless networks, the adverse effects arising from echo effects and frequency shifts stem at least in part from the characteristics of existing wireless devices having wireless communication capability. In particular, these portable wireless devices (such as cell phones, portable computers, and the like) are often powered by small batteries, and the users of such devices typically expect to operate them for many hours before recharging is required. To meet these user expectations, the wireless transmitters on these devices must output wireless signals using very small amounts of power, making it difficult to distinguish the wireless radio signal over background noise. 
     An additional problem is that many of these devices are carried on moving vehicles, such as automobiles. This causes additional complications because the low-power wireless signal transmitted by these devices can also be subjected to various distortions, such as varying and unpredictable Doppler shifts, and unpredictable multi-path effects often caused by varying radio reflections off of buildings or other structures. 
     Moreover, the noise background of the various wireless channels becomes ever higher as noise-producing electrical devices proliferate. The proliferation of other wireless devices also adds to the background noise. 
     SUMMARY 
     The system and method for wideband communications disclosed herein is capable of operating using relatively low amounts of power while maintaining improved resistance to problems of Doppler shift, multi-path reflections, and background noise. Although examples in the context of wireless communications will be used throughout this application, the methods disclosed herein are intended, unless stated otherwise, to be equally applicable to wired communication systems. 
     In one aspect, the present disclosure describes a method of providing a modulated signal useable in a signal transmission system. The method of this aspect includes establishing an original data frame having a first dimension of at least N elements and a second dimension of at least N elements, wherein N is greater than one. The method further includes transforming the original data frame in accordance with a time-frequency transformation so as to provide a transformed data matrix. A modulated signal is generated in accordance with elements of the transformed data matrix. 
     In another aspect, the present disclosure describes a method for modulating data for transmission within a communication system. The method of this aspect includes establishing a time-frequency shifting matrix of dimension N×N, wherein N is greater than one. The method further includes combining the time-frequency shifting matrix with a data frame to provide an intermediate data frame. A transformed data matrix is provided by permuting elements of the intermediate data frame. A modulated signal is generated in accordance with elements of the transformed data matrix. 
     In another aspect, the present disclosure relates to a signal transmitter for use in a communication system. The signal transmitter includes an input port, an output port, a processor, and a memory including program code executable by the processor. The program code includes code for receiving input data at the input port. The program code further includes code for establishing, using the input data, an original data frame having a first dimension of at least N elements and a second dimension of at least N elements, wherein N is greater than one. In addition, the program code includes code for transforming the original data frame in accordance with a time-frequency transformation so as to provide a transformed data matrix and code for generating a modulated signal in accordance with elements of the transformed data matrix. 
     In a further aspect the present disclosure pertains to a signal transmitter for use in a communication system. The signal transmitter includes an input port, an output port, a processor, and a memory including program code executable by the processor. The program code includes code for receiving, at the input port, input data. The program code further includes code for establishing a time-frequency shifting matrix of dimension N×N, wherein N is greater than one. In addition, the program code includes code for combining the time-frequency shifting matrix with a data frame to provide an intermediate data frame wherein the data frame includes the input data. Code for providing a transformed data matrix by permuting elements of the intermediate data frame and code for generating a modulated signal in accordance with elements of the transformed data matrix is also provided. 
     The present disclosure is further directed to a non-transitory computer readable medium including program instructions for execution by a processor in a signal transmitter. The program instructions include instructions for causing the processor to receive, at an input port of the signal transmitter, input data and establish, using the input data, an original data frame having a first dimension of at least N elements and a second dimension of at least N elements, wherein N is greater than one. The instructions further cause the processor to transform the original data frame in accordance with a time-frequency transformation so as to provide a transformed data matrix and generate a modulated signal in accordance with elements of the transformed data matrix. 
     In yet another aspect the present disclosure pertains to a non-transitory computer readable medium including program instructions for execution by a processor in a signal transmitter. The program instructions include instructions for causing the processor to receive, at an input port of the signal transmitter, input data and establish a time-frequency shifting matrix of dimension N×N, wherein N is greater than one. The instructions further cause the processor to combine the time-frequency shifting matrix with a data frame to provide an intermediate data frame wherein the data frame includes the input data and to provide a transformed data matrix by permuting elements of the intermediate data frame. In addition, the instructions include instructions which cause the processor to generate a modulated signal in accordance with elements of the transformed data matrix. 
     In another aspect, the present disclosure describes a method of receiving data. The method of this aspect includes receiving data signals corresponding to a transmitted data frame comprised of a set of data elements, constructing, based upon the data signals, a received data frame having a first dimension of at least N elements and a second dimension of at least N elements, where N is greater than one, inverse permuting at least a portion of the elements of the received data frame so as to form an non-permuted data frame, and inverse transforming the non-permuted data frame in accordance with first inverse-transformation matrix so as to form a recovered data frame corresponding to a reconstructed version of the transmitted data frame. 
     In another aspect, the present disclosure describes a method of data transmission. The method of this aspect includes arranging a set of data elements into an original data frame having a first dimension of N elements and a second dimension of N elements, where N is greater than one, and transforming the original data frame in accordance with a transformation matrix to form a first transformed data matrix having at least N 2  transformed data elements wherein each of the transformed data elements is based upon a plurality of the data elements of the original data frame and wherein a first dimension of the first transformed data matrix corresponds to a frequency shift axis and a second dimension corresponds to a time shift axis. The method of this aspect further includes forming a permuted data matrix by permuting at least a portion of the elements of the first transformed data matrix so as to shift the at least a portion of the elements with respect to the time shift axis, transforming the permuted data matrix using a frequency-shift encoding matrix to form a transmit frame, and generating a modulated signal in accordance with elements of the transmit frame. 
     In another aspect, the present disclosure describes a method of receiving data. The method of this aspect includes receiving, on one or more carrier waveforms, signals representing a plurality of data elements of an original data frame wherein each of the data elements are represented by cyclically time shifted and cyclically frequency shifted versions of a known set of waveforms, generating, based upon the signals, a received data frame having a first dimension of at least N elements and a second dimension of at least N elements, where N is greater than one, wherein the first dimension corresponds to a frequency shift axis and the second dimension corresponds to a time shift axis. The method of this aspect further includes performing, using a decoding matrix, an inverse transformation operation with respect to elements of the received data frame so as to yield a non-transformed matrix, and generating, based upon the non-transformed matrix, a recovered data frame comprising an estimate of the original data frame. 
     In another aspect, the present disclosure describes a new signal modulation technique which involves spreading data symbols over a large range of times, frequencies, and/or spectral shapes (waveforms). Such method, termed “Orthonormal Time-Frequency Shifting and Spectral Shaping (“OTFSSS”) when spectral shaping is employed or, more generally, “OTFS”, operates by sending data in what are generally substantially larger “chunks” or frames than the data frames used in prior methods. That is, while prior art methods might encode and send units or frames of “N” symbols over a communications link over a particular time interval, OTFS contemplates that frames of N 2  symbols are transmitted (often over a relatively longer time interval). With OTFS modulation, each data symbol or element that is transmitted is extensively spread in a novel manner in time, frequency and/or spectral shape space. At the receiving end of the connection, each data symbol is resolved based upon substantially the entire frame of N 2  received symbols. 
     In another aspect, disclosed herein is a wireless communication method predicated upon spreading input data over time, frequency and potentially spectral shape using convolution unit matrices (data frames) of N×N (N 2 ). In general, either all N 2  of the data symbols are received over N particular spreading time intervals (each composed of N time slices), or no such symbols are received. During the transmission process, each N×N data frame matrix will typically be multiplied by a first N×N time-frequency shifting matrix, permuted, and then multiplied by a second N×N spectral-shaping matrix, thereby mixing each data symbol across the entire resulting N×N matrix (which may be referred to as the TFSSS data matrix). Columns from the TFSSS data matrix are then selected, modulated, and transmitted, on a one element per time slice basis. At the receiver, a replica TFSSS matrix is reconstructed and deconvolved, yielding a reconstruction of the input data. 
     Embodiments of the systems and methods described herein may use novel time-frequency shifting and spectral shaping codes to spread data across time, spectrum, waveform, and/or spectral-shape. In such embodiments time-shifting techniques, frequency-shifting techniques and, optionally, spectral-shaping techniques may be used in conjunction to transmit data at high rates in a manner unusually resistant to problems caused by Doppler shifts, multi-path effects, and background noise. 
     During the signal transmission process, an OTFS transmitter may subdivide and transmit each data element or symbol over a cyclically varying range of frequencies and over a series of spreading time intervals. Often this will require that each data element or symbol be transmitted over a somewhat longer period of time than is utilized for transmission data frames in other communication systems. Notwithstanding these potentially longer transmission periods, the OTFS system is capable of achieving superior data rate performance by using a complex multiplexing methods premised on the convolution and deconvolution schemes discussed herein. Through use of such methods a comparatively large amount of information may be included within each transmitted signal. In particular, the relatively large number (i.e., N 2 ) of data symbols or elements transmitted during each data frame using the convolution and deconvolution schemes disclosed herein enable comparatively high data rates to be attained despite the diminution in data rate which could otherwise result from division of a single data element or symbol over N time-spreading intervals. Moreover, because each data symbol is typically subdivided and sent over a plurality of signals, signal processing schemes described herein may be employed to permit data symbols to be recovered even in the event of loss of one or more of the plurality of transmitted signals. In addition, such schemes may be employed to compensate for losses due to common wireless communications link impairments, such as Doppler shift and multi-path effects. 
     For example, whereas with prior art, if by chance Doppler effects caused by one wireless signal from a first transmitter fall on the same frequency as another signal from a first or second transmitter (for multi-path effects, a signal from a moving first or second transmitter that hits an object at an arbitrary angle to the receiver can produce a Doppler distorted reflection or echo signal of the first or second transmitter that also reaches the receiver), this could result in confusion, ambiguity, and data loss. By contrast, by cyclically shifting the frequency and sending an element of data over a plurality of time intervals, the impact of a Doppler “collision” is substantially minimized—at most there will be a brief transient effect resulting in the loss of only one of a plurality of signals used to transmit a particular data symbol or element. The effects of other communications link impairments, such as multi-path effects, can also be minimized because the cyclically shifting frequency provides yet another way to compensate for multi-path effects. 
     There exist at least two ways in which a data element or symbol may be partitioned across a time range of cyclically shifting frequencies, and thus two basic forms of the OTFS method. In a first form of the OTFS method, the data from a single symbol is convolved and partitioned across multiple time slices, and ultimately transmitted as a series of time slices, on a per time slice basis. When this transmission scheme is used the cyclically-shifting frequency is accomplished over a plurality of time spreading intervals. Thus, for this first form of the OTFS method, the basic unit of data transmission operates on a time slice basis. 
     In a second form of the OTFS method, the data is ultimately transmitted as a series of waveforms with characteristic frequencies, where each waveform lasts for a spreading interval of time generally consisting of N time slices. When this transmission scheme is used the cyclically-shifting frequency is accomplished over a plurality of time spreading intervals. Thus, for this second form of the OTFS method, the basic unit of data transmission operates over a relatively longer spreading time interval comprised of N time slices. Unless otherwise specified, the discussion within the remainder of this disclosure will focus on the first form of the OTFS method in which the basic unit of data transmission operates on a time slice basis. 
     Again considering the first form of the OTFS method, in one embodiment this form of the OTFS method contemplates formation of an N×N data frame matrix having N 2  symbols or elements and multiplication of this data frame by a first N×N time-frequency shifting matrix. The result of this multiplication is optionally permuted and, following permutation, optionally multiplied by a second N×N spectral shaping matrix. As a result, the N 2  data elements in the frame of data are essentially mixed or distributed throughout the resulting N×N matrix product, here called a “Time Frequency Shifted” data matrix or “TFS” data matrix. If the optional spectral shaping is used, the resulting N×N matrix product may be referred to as a “Time Frequency Shifted and Spectral Shaped” data matrix or “TFSSS” data matrix. Thus, for example, a single symbol or element in row 1 column 1 of the N×N frame of data may end up being distributed over all rows and columns of the resulting N×N TFS or TFSSS data matrix (in what follows the term TFS may connote either the TFS or TFSSS data matrix). 
     The contents (i.e. the individual elements) of this TFS data matrix may then be selected, modulated, and transmitted. Usually N elements at a time from this TFS data matrix (often a column from the TFS data matrix) are selected to be sent over one spreading interval of time, thus often requiring N spreading intervals of time to transmit the entire contents of the TFS data matrix. This spreading interval of time in turn is usually composed of at least N time slices. During each time slice, one element from the most recent selection of N elements (for example, from the selected column of the TFS data matrix) is selected, modulated, and transmitted. 
     At the receiving end, the process operates generally in reverse. The individual elements of the TFS data matrix are received over various time slices and various time spreading intervals, allowing the receiver to reassemble a replica (which may not be a perfect replica due to communications link impairment effects) of the original TFS data matrix. Using its knowledge of the first N×N time-frequency shifting matrix, the optional permutation process, the second N×N spectral shaping matrix, and the selection process used to select different elements of the TFS data matrix, as well as various noise reduction or compensation techniques to overcome impairment effects, the receiver will then reconstruct the original N×N data frame matrix of N 2  symbols or elements. Because each data symbol or element from the original data frame is often spread throughout the TFS data matrix, often most or the entire TFS matrix will need to be reconstructed in order to solve for the original data symbol or element. However, by using noise reduction and compensation techniques, minor data losses during transmission can often be compensated for. 
     In some embodiments, advanced signal modulation schemes utilizing cyclically time shifted and cyclically frequency shifted waveforms may be utilized to correct channel impairments in a broad range of situations. For example, in one aspect the OTFS method may contemplate transfer of a plurality of data symbols using a signal modulated in a manner which effectively compensates for the adverse effects of echo reflections and frequency offsets. This method will generally comprise distributing this plurality of data symbols into one or more N×N symbol matrices and using these one or more N×N symbol matrices to control the signal modulation occurring within a transmitter. Specifically, during the transmission process each data symbol within an N×N symbol matrix is used to weight N waveforms. These N waveforms are selected from an N 2  sized set of all permutations of N cyclically time shifted and N cyclically frequency shifted waveforms determined according to an encoding matrix U. The net result produces, for each data symbol, N symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms. Generally this encoding matrix U is chosen to be an N×N unitary matrix that has a corresponding inverse decoding matrix U H . Imposition of this constraint means that the encoding matrix U produces results which can generally be decoded. 
     Continuing with this example, for each data symbol in the N×N symbol matrix, the transmitter may sum the corresponding N symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms, and by the time that the entire N×N symbol matrix is so encoded, produce N 2  summation-symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms. The transmitter will then transmit these N 2  summation-symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms, structured as N composite waveforms, over any combination of N time blocks or frequency blocks. 
     To receive and decode this transmission, the transmitted N 2  summation-symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms are subsequently received by a receiver which is controlled by the corresponding decoding matrix U H . The receiver will then use this decoding matrix U H  to reconstruct the original symbols in the various N×N symbol matrices. 
     This process of transmission and reception will normally be performed by various electronic devices, such as a microprocessor equipped, digital signal processor equipped, or other electronic circuit that controls the convolution and modulation parts of the signal transmitter. Similarly the process of receiving and demodulation will also generally rely upon a microprocessor equipped, digital signal processor equipped, or other electronic circuit that controls the demodulation, accumulation, and deconvolution parts of the signal receiver. However, although the exemplary techniques and systems disclosed herein will often be discussed within the context of a wireless communication system comprised of at least one wireless transmitter and receiver, it should be understood that these examples are not intended to be limiting. In alternative embodiments, the transmitter and receiver may be optical/optical-fiber transmitters and receivers, electronic wire or cable transmitters and receivers, or other types of transmitters in receivers. In principle, more exotic signal transmission media, such as acoustic signals and the like, may also be utilized in connection with the present methods. 
     As previously discussed, regardless of the media (e.g. optical, electrical signals, or wireless signals) used to transmit the various waveforms, these waveforms can be distorted or impaired by various signal impairments such as various echo reflections and frequency shifts. As a result, the receiver will often receive a distorted form of the original signal. Here, embodiments of the OTFS method make use of the insight that cyclically time shifted and cyclically frequency shifted waveforms are particularly useful for detecting and correcting for such distortions. 
     Because communications signals propagate through their respective communications media at a finite speed (often at or near the speed of light), and because the distance from a transmitter to a receiver is usually substantially different than the distance between the transmitter, the place(s) where the echo is generated, and the distance between the place(s) where the echo is generated and the receiver, the net effect of echo reflections is that both an originally transmitted waveform and time-shifted versions thereof are received at the receiver, thereby resulting in a distorted composite signal. However, embodiments of the OTFS method utilizing cyclically time shifted waveforms may be employed to counteract this distortion. In particular, a time deconvolution device at the receiver may operate to analyze the cyclically time varying patterns of these waveforms, determine the repeating patterns, and use these repeating patterns to help decompose the echo distorted signal back into various time-shifted versions of the various signals. The time deconvolution device can also determine how much of a time-offset (or multiple time offsets) is or are required to enable the time delayed echo signal(s) to match up with the originally transmitted signal. This time offset value, which may be referred to herein as a time deconvolution parameter, can both give useful information as to the relative position of the echo location(s) relative to the transmitter and receiver, and can also help the system characterize some of the signal impairments that occur between the transmitter and receiver. This can help the communications system automatically optimize itself for better performance. 
     In addition to echo reflections, other signal distortions may occur that can result in one or more frequency shifts. For example, a Doppler shift or Doppler effects can occur when a wireless mobile transmitter moves towards or away from a stationary receiver. If the wireless mobile transmitter is moving towards the stationary receiver, the wireless waveforms that it transmits will be offset to higher frequencies, which can cause confusion if the receiver is expecting signals modulated at a lower frequency. An even more confusing result can occur if the wireless mobile transmitter is moving perpendicular to the receiver, and there is also an echo source (such as a building) in the path of the wireless mobile transmitter. Due to Doppler effects, the echo source receives a blue shifted (higher frequency) version of the original signal, and reflects this blue shifted (higher frequency) version of the original signal to the receiver. As a result, the receiver will receive both the originally transmitted “direct” wireless waveforms at the original lower frequency, and also a time-delayed higher frequency version of the original wireless waveforms, causing considerable confusion. 
     It has been found that the use of cyclically time shifted waveforms and cyclically frequency shifted waveforms may help address this type of problem. In particular, it has been found that the cyclic variation yields important pattern matching information which may enable the receiver to determine which portions of a received signal have been distorted and the extent of such distortion. In one embodiment these cyclically varying signals allow the receiver to perform a two-dimensional (e.g. time and frequency) deconvolution of the received signal. For example, the frequency deconvolution portion of the receiver can analyze the cyclically frequency varying patterns of the waveforms, essentially do frequency pattern matching, and decompose the distorted signal into various frequency shifted versions of the various signals. At the same time, this portion of the receiver can also determine how much of a frequency offset is required to cause the frequency distorted signal to match up with the originally transmitted signal. This frequency offset value, herein termed a “frequency deconvolution parameter”, can give useful information as to the transmitter&#39;s velocity relative to the receiver. This may facilitate characterization of some of the frequency shift signal impairments that occur between the transmitter and receiver. 
     As before, the time deconvolution portion of the receiver can analyze the cyclically time varying patterns of the waveforms, again do time pattern matching, and decompose the echo distorted signal back into various time-shifted versions of the original signal. The time deconvolution portion of the receiver can also determine how much of a time-offset is required to cause the time delayed echo signal to match up with the original or direct signal. This time offset value, again called a “time deconvolution parameter”, can also give useful information as to the relative positions of the echo location(s), and can also help the system characterize some of the signal impairments that occur between the transmitter and receiver. 
     The net effect of both the time and frequency deconvolution, when applied to transmitters, receivers, and echo sources that potentially exist at different distances and velocities relative to each other, is to allow the receiver to properly interpret the impaired echo and frequency shifted communications signals. 
     Further, even if, at the receiver, the energy received from the undistorted form of the originally transmitted signal is so low as to have a undesirable signal to noise ratio, by applying the appropriate time and frequency offsets or deconvolution parameters, the energy from the time and/or frequency shifted versions of the signals (which would otherwise be contributing to noise) can instead be harnessed to contribute to the signal instead. 
     As before, the time and frequency deconvolution parameters can also provide useful information as to the relative positions and velocities of the echo location(s) relative to the transmitter and receiver, as well as the various velocities between the transmitter and receiver. These in turn can help the system characterize some of the signal impairments that occur between the transmitter and receiver, as well as assist in automatic system optimization methods. 
     Thus in some embodiments, the OTFS system may also provide a method for an improved communication signal receiver where, due to either one or the combination of echo reflections and frequency offsets, multiple signals due to echo reflections and frequency offsets result in the receiver receiving a time and/or frequency convolved signal representing time and/or frequency shifted versions of the N 2  summation-symbol-weighed cyclically time shifted and frequency shifted waveforms previously sent by the transmitter. Here, the improved receiver will further perform a time and/or frequency deconvolution of the impaired signal to correct for various echo reflections and frequency offsets. This improved receiver method will result in both time and frequency deconvolved results (i.e. signals with higher quality and lower signal to noise ratios), as well as various time and frequency deconvolution parameters that, in addition to automatic communications channel optimization, are also useful for other purposes as well. These other purposes can include channel sounding (i.e. better characterizing the various communication system signal impairments), adaptively selecting modulation methods according to the various signal impairments, and even improvements in radar systems. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       For a better understanding of the nature and objects of various embodiments of the invention, reference should be made to the following detailed description taken in conjunction with the accompanying drawings, wherein: 
         FIG.  1    illustrates an example of a wireless communication system that may exhibit time/frequency selective fading. 
         FIG.  2    shows an exemplary mathematical model that can be used to model communication in the wireless communication system of  FIG.  1   . 
         FIG.  3 A  shows an exemplary block diagram of components of an OTFS communication system. 
         FIG.  3 B  illustrates a process by which an OTFS transceiver of a transmitting device within the system of  FIG.  3 A  may transmit a data frame. 
         FIG.  3 C  illustrates a process by which an OTFS transceiver of a receiving device within the system of  FIG.  3 A  may operate to receive a transmitted data frame. 
         FIG.  4 A  illustrates components of an exemplary OTFS transceiver. 
         FIG.  4 B  illustrates an exemplary process pursuant to which an OTFS transceiver may transmit, receive and reconstruct information utilizing a TFS data matrix. 
         FIG.  5    illustrates a comparison of predicted bit error rate between an exemplary OTFS method and a time division multiple access method over an exemplary communication channel exhibiting time/frequency fading. 
         FIG.  6 A  shows an overview of one manner in which an OTFS method may be used to transmit data over a wireless link. 
         FIG.  6 B  illustrates components of an exemplary OTFS transmitter for performing the method of  FIG.  6 A . 
         FIG.  6 C  is a flowchart representative of an exemplary OTFS data transmission method. 
         FIG.  7 A  shows an overview of one manner in which an OTFS method may be used to receive data over a wireless link. 
         FIG.  7 B  illustrates components of an exemplary OTFS receiver for performing the method of  FIG.  7 A . 
         FIG.  7 C  is a flowchart representative of an exemplary OTFS data demodulation method. 
         FIG.  8    shows an exemplary set of basic building blocks used to convolve and deconvolve data according to a second form of the OTFS method. 
         FIG.  9    shows an exemplary transmit frame including guard times between groups of transmitted data. 
         FIG.  10    shows a diagram of the cyclic convolution method used to convolve data and transmit data according to the second form of the OTFS method. 
         FIG.  11    shows an exemplary structure of a receive frame resulting from the transmit frame of  FIG.  9   . 
         FIG.  12    shows a diagram of the cyclic deconvolution method used to deconvolve received data according to the second form of the OTFS method. 
         FIGS.  13 A and  13 B  illustrate operations performed by a transmitter consistent with a first alternative OTFS transmission scheme. 
         FIGS.  14 A and  14 B  illustrate operations performed by a receiver consistent with the first alternative OTFS scheme. 
         FIGS.  15 A and  15 B  illustrate operations performed by a transmitter consistent with a second alternative OTFS scheme. 
         FIGS.  16 A and  16 B  illustrate operations performed by a receiver consistent with the second alternative OTFS scheme. 
         FIG.  17    illustrates a unitary matrix [U 1 ] in the form of an identity matrix representative of a time division multiplexed transmission basis. 
         FIG.  18    illustrates a unitary matrix [U 1 ] in the form of a DFT matrix representative of a frequency division multiplexed transmission basis. 
         FIG.  19    illustrates a unitary matrix [U 1 ] in the form of a Hadamard matrix representative of a code division multiplexed transmission basis. 
         FIG.  20    illustrates a sequence of L-OTFS N×N matrices making up a frame of data comprising L×N×N symbols spread in both time and frequency. 
         FIG.  21 A  shows a more detailed diagram of one embodiment of an OTFS transmitter module. 
         FIG.  21 B  depicts a TFS matrix generated within the OTFS transmitter of  FIG.  21 A . 
         FIG.  21 C  depicts a timeline relevant to operation of the transmitter of  FIG.  21 A . 
         FIG.  22    illustrates an exemplary permutation operation that can be used in an OTFS modulation scheme. 
         FIG.  23    illustrates another exemplary permutation operation that can be used in an OTFS modulation scheme. 
         FIG.  24    illustrates a first exemplary time and frequency tiling approach that can be used in an OTFS modulation scheme. 
         FIG.  25    illustrates a second exemplary time and frequency tiling approach that can be used in an OTFS scheme. 
         FIG.  26    illustrates a third exemplary time and frequency tiling scheme that can be used in the OTFS modulation scheme. 
         FIG.  27    illustrates the transmission of cyclically time shifted waveforms in order to enable time deconvolution of the received signal to be performed so as to compensate for various types of echo reflections. 
         FIG.  28    illustrates the transmission of both cyclically time shifted waveforms and cyclically frequency shifted waveforms in order to enable both time and frequency deconvolution of the received signal to be performed so as to compensate for both echo reflections and frequency shifts. 
         FIG.  29    illustrates the transmission of various composite waveform blocks as either a series of N consecutive time blocks associated within a single symbol matrix or, alternatively, as a time-interleaved series of blocks from different symbol matrices. 
         FIG.  30    illustrates the transmission of various composite waveform blocks as either shorter duration time blocks over one or more wider frequency ranges or as longer duration time blocks over one or more narrower frequency ranges. 
         FIG.  31    shows a high-level representation of a receiver processing section configured to mathematically compensate for the effects of echo reflections and frequency shifts using an equalizer. 
         FIG.  32 A  shows an example of a communications channel in which echo reflections and frequency shifts can blur or impair or distort a transmitted signal. 
         FIG.  32 B  shows an example of an adaptive linear equalizer that may be used to correct for distortions. 
         FIG.  32 C  shows an example of an adaptive decision feedback equalizer that may be used to correct for distortions. 
         FIG.  33    shows a time-frequency graph illustrating the various echo (time shifts) and frequency shifts that a signal may encounter during propagation through a channel. 
         FIG.  34    illustratively represents a time-frequency map of tap values produced by the feed forward (FF) portion of the adaptive decision feedback equalizer. 
         FIG.  35    illustratively represents a time-frequency map of tap values produced by the feedback (FB) portion of the adaptive decision feedback equalizer. 
         FIGS.  36 A and  36 B  demonstrate the utility of transmitting various different time blocks consistent with an interleaving scheme based at least in part upon expected latency. 
         FIG.  37    illustrates an example of a full duplex OTFS transceiver in accordance with the disclosure. 
         FIG.  38    illustrates an example of an OTFS receiver that provides iterative signal separation in accordance with the disclosure. 
         FIG.  39 A  is a basis matrix including N length N basis vectors b 0 −b N−1  used in illustrating one manner in which OTFS encoding using a pair of transform matrices or frames can spread N 2  data symbols d ij  into N 2  different basis matrices B ij  of basis frames F ij . 
         FIG.  39 B  illustrates an incomplete basis matrix that includes N−l columns and N−k rows where l and k are greater than or equal to one. 
         FIG.  39 C  illustrates a basis frame that has N vectors of length M where M is greater than N. 
         FIG.  39 D  illustrates an incomplete basis frame including N−l columns and M−k rows, where l and k are greater than or equal to one. 
         FIG.  40    is a block diagram of a time-frequency-space decision feedback equalizer that may be employed to facilitate signal separation in a multi-antenna OTFS system. 
         FIG.  41    is a block diagram of a time-frequency-space decision feedforward FIR filter. 
         FIG.  42    is a block diagram of a time-frequency-space decision feedback FIR filter. 
         FIG.  43    provides a high-level representation of a conventional transceiver which could be utilized in an exemplary wireless communication system. 
         FIGS.  44 A and  44 B  provide block diagrammatic representations of embodiments of first and second OTFS transceivers configured to utilize a spreading kernel. 
         FIG.  45    is a flowchart representative of the operations performed by an OTFS transceiver. 
         FIG.  46    illustrates the functioning of a modulator as an orthogonal map disposed to transform a two-dimensional time-frequency matrix to a transmitted waveform. 
         FIGS.  47  and  48    illustrate the transformation by a demodulator of a received waveform to a two-dimensional time-frequency matrix in accordance with an orthogonal map. 
         FIG.  49    illustrates an exemplary implementation of a two-dimensional decision feedback equalizer configured to perform a least means square (LMS) equalization procedure. 
         FIG.  50    shows an OTFS mesh network within the context of a cellular communication system comprised of cell sites and associated cell coverage areas. 
         FIG.  51    shows an OTFS mesh network organized around a set of wired network gateways. 
         FIG.  52    shows an OTFS mesh network system comprised of a single-channel wireless mesh network including a plurality of mesh elements. 
         FIG.  53    provides an illustration of a two-dimensional channel impulse. 
         FIGS.  54 A- 54 C  depict input and output streams after two-dimensional channel distortion. 
     
    
    
     DETAILED DESCRIPTION 
     One unique aspect of the signal modulation techniques described herein is the concept of spreading the data of a single symbol over a relatively large range of times, frequencies, and spectral shapes. In contrast, prior communication systems have been predicated upon assigning a given data symbol to a specific time-spreading interval or time slice uniquely associated with such data symbol. As is discussed below, the disclosed OTFS method is based at least in part upon the realization that in many cases various advantages may accrue from spreading the data of a single symbol over multiple time-spreading intervals shared with other symbols. In contrast with prior art modulation techniques, the OTFS method may involve convolving a single data symbol over both a plurality of time slots, a plurality of frequencies or spectral regions (spread spectrum), and a plurality of spectral shapes. As is described below, this approach to data convolution results in superior performance over impaired communications links. 
     System Overview 
       FIG.  1    illustrates an example of a wireless communication system  100  that may exhibit time/frequency selective fading. The system  100  includes a transmitter  110  (e.g., a cell phone tower) and a receiver  120  (e.g., a cell phone). The scenario illustrated in  FIG.  1    includes multiple pathways (multi-path) that the signal transmitted from the transmitter  100  travels through before arriving at the receiver  100 . A first pathway  130  reflects through a tree  132 , second pathway  140  reflects off of a building  142  and a third pathway  150  reflects off of a second building  152 . A fourth pathway  160  reflects off of a moving car  162 . Because each of the pathways  130 ,  140 ,  150  and  160  travels a different distance, and is attenuated or faded at a different level and at a different frequency, when conventionally configured the receiver  120  may drop a call or at least suffer low throughput due to destructive interference of the multi-path signals. 
     Turning now to  FIG.  43   , a high-level representation is provided of a conventional transceiver  4300  which could be utilized in the wireless communication system  100  of  FIG.  1   . The transceiver  4300  could, for example, operate in accordance with established protocols for time-division multiple access (TDMA), code-division multiple access (CDMA) or orthogonal frequency-division multiple access (OFDM) systems. In conventional wireless communication systems such as TDMA, CDMA, and OFDM) systems, the multipath communication channel  4310  between a transmitter  4304  and a receiver  4308  is represented by a one-dimensional model. In these systems channel distortion is characterized using a one-dimensional representation of the impulse response of the communication channel. The transceiver  4300  may include a one-dimensional equalizer  4320  configured to at least partially remove this estimated channel distortion from the one-dimensional output data stream  4330  produced by the receiver  4308 . 
     Unfortunately, use of a one-dimensional channel model presents a number of fundamental problems. First, the one-dimensional channel models employed in existing communication systems are non-stationary; that is, the symbol-distorting influence of the communication channel changes from symbol to symbol. In addition, when a channel is modeled in only one dimension it is likely and possible that certain received symbols will be significantly lower in energy than others due to “channel fading”. Finally, one-dimensional channel state information (CSI) appears random and much of it is estimated by interpolating between channel measurements taken at specific points, thus rendering the information inherently inaccurate. These problems are only exacerbated in multi-antenna (MIMO) communication systems. As is discussed below, embodiments of the OTFS method described herein can be used to substantially overcome the fundamental problems arising from use of a one-dimensional channel model. 
     As is indicated below by Equation (1), in one aspect the OTFS method recognizes that a wireless channel may be represented as a weighted superposition of combination of time and Doppler shifts: 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           
                             
                               
                                 h 
                                 a 
                               
                               ( 
                               φ 
                               ) 
                             
                             ⁢ 
                             
                               ( 
                               t 
                               ) 
                             
                           
                           = 
                           
                             
                               ∑ 
                               
                                 τ 
                                 , 
                                 υ 
                               
                             
                             
                               
                                 a 
                                 ⁡ 
                                 ( 
                                 
                                   τ 
                                   , 
                                   υ 
                                 
                                 ) 
                               
                               ⁢ 
                               
                                 e 
                                 
                                   j 
                                   ⁢ 
                                   2 
                                   ⁢ 
                                   πυ 
                                 
                               
                               ⁢ 
                               
                                 φ 
                                 ⁡ 
                                 ( 
                                 
                                   t 
                                   + 
                                   τ 
                                 
                                 ) 
                               
                             
                           
                         
                         ↑ 
                       
                     
                   
                   
                     
                       
                         Time 
                         - 
                         frequency 
                         ⁢ 
                            
                         weights 
                       
                     
                   
                 
               
               
                 
                   ( 
                   1 
                   ) 
                 
               
             
           
         
       
     
     In contrast to the parameters associated with existing channel models, the time-frequency weights (τ,) of Equation (1) are two-dimensional and are believed to fully characterize the wireless channel. The time-frequency weights (τ) are intended to represent essentially all of the diversity branches existing in the wireless channel. This is believed to substantially minimize the fading effects experienced by the OTFS system and other communication systems generally based upon two-dimensional channel models relative to the fading common in systems predicated upon one-dimensional models. Finally, in contrast to the non-stationary, one-dimensional channel models employed in conventional communication systems, the time-frequency weights (τ,) of Equation (1) are substantially stationary; that is, the weights change very slowly relative to the time scale of exemplary embodiments of the OTFS system. 
     Use of the two-dimensional channel model of Equation (1) in embodiments of the OTFS communication system affords a number of advantages. For example, use of the channel model of Equation (1) enables both channel multipath delay and Doppler shift to be accurately profiled simultaneously. Use of this model and the OTFS modulation techniques described herein also facilitate the coherent assembly of channel echoes and the minimization of fading phenomena, since every symbol experience substantially all of the diversity branches present within the channel. Given that the two-dimensional channel model is essentially stationary, every symbol is deterministically distorted (smeared) according to substantially the same two-dimensional pattern. This stable, accurate characterization of the communication channel in two dimensions on an ongoing basis further enables the OTFS system to minimize data distortion by “customizing” how each bit is delivered across the channel. Finally, use of a two-dimensional channel model enables effective signal separation by decoupling and eliminating mutual interference between multiple sources. 
     Attention is now directed to  FIG.  2   , which illustrates an example of a mathematical model  200  that can be used to model time/frequency selective fading. A transmit side of the model  200  includes a pre-equalizer  210 , a transmitter/modulation component  220 , a channel model  230 , and additive noise  240  which is combined with the transmitted signal via a summer  250 . A receive side of the model  200  includes a receiver/demodulator  260  and a post equalizer  270 . 
     The pre-equalizer  210  is used to model a pre-distortion transfer function h t  that can be used to make up for changing channel conditions in the channel model h c  based on feedback received over the channel from the receive side of the model, as determined by measurements made by the receiver/demodulator  260  and/or the post equalizer  270 . The transmitter/modulator  220  uses modulation schemes described herein to transmit the data over the channel  230 . 
     The receiver/demodulator  260  demodulates the signal received over the channel  230 . The received signal has been distorted by time/frequency selective fading, as determined by the channel transfer function h c , and includes the additive noise  240 . The receiver/demodulator  260  and the post equalizer  270  utilize methods discussed herein to reduce the distortion caused by the time/frequency selective fading and additive noise due to the channel conditions. The mathematical model  200  can be used to determine the nature of the equalized data D eq  by performing a mathematical combination of three transfer functions operating on the original data D. The three transfer functions include the transmitter transfer function h t , the channel transfer function h c  and the equalizer transfer function h r . 
     Embodiments of the OTFS methods and systems described herein are based, in part, upon the realization that spreading the data for any given symbol over time, spectrum, and/or spectral shapes in the manner described herein yields modulated signals which are substantially resistant to interference, particularly interference caused by Doppler effects and multi-path effects, as well as general background noise effects. Moreover, the OTFS method is believed to require less precise frequency synchronization between receiver and transmitter than is required by existing communication systems (e.g., OFDM systems). 
     In essence, the OTFS method convolves the data for a group of N 2  symbols (herein called a “frame”) over both time, frequency, and in some embodiments spectral shape in a way that results in the data for the group of symbols being sent over a generally longer period of time than in prior art methods. Use of the OTFS method also results in the data for any given group of symbols being accumulated over a generally longer period of time than in prior art methods. However, in certain embodiments the OTFS method may nonetheless enable favorable data rates to be achieved despite the use of such longer transmission periods by exploiting other transmission efficiencies enabled by the method. For example, in one embodiment a group of symbols may be transmitted using the same spread-spectrum code. Although this could otherwise result in confusion and ambiguity (since each symbol would not be uniquely associated with a code), use of the OTFS method may, for example, enable the symbols to be sent using different (but previously defined) spread-spectrum convolution methods across a range of time and frequency periods. As a consequence, when all of the data corresponding to the symbols is finally accumulated within the receiver, the entire frame or group of symbols may be reconstructed in a manner not contemplated by prior art techniques. In general, one trade-off associated with the disclosed approach is that either an entire multi-symbol frame of data will be correctly received, or none of the frame will be correctly received; that is, if there is too much interference within the communication channel, then the ability to successfully deconvolve and retrieve multiple symbols may fail. However, as will be discussed, various aspects of the OTFS may mitigate any degradation in performance which would otherwise result from this apparent trade-off. 
       FIG.  3 A  is a block diagram of components of an exemplary OTFS communication system  300 . As shown, the system  300  includes a transmitting device  310  and a receiving device  330 . The transmitting device  310  and the receiving device  330  include first and second OTFS transceivers  315 - 1  and  315 - 2 , respectively. The OTFS transceivers  315 - 1  and  315 - 2  communicate, either unidirectionally or bidirectionally, via communication channel  320  in the manner described herein. Although in the exemplary embodiments described herein the system  300  may comprise a wireless communication system, in other embodiments the communication channel may comprise a wired communication channel such as, for example, a communication channel within a fiber optic or coaxial cable. As was described above, the communication channel  320  may include multiple pathways and be characterized by time/frequency selective fading. 
       FIG.  4    illustrates components of an exemplary OTFS transceiver  400 . The OTFS transceiver  400  can be used as one or both of the exemplary OTFS transceivers  315  illustrated in the communication system  300  of  FIG.  3   . The OTFS transceiver  400  includes a transmitter module  405  that includes a pre-equalizer  410 , an OTFS encoder  420  and an OTFS modulator  430 . The OTFS transceiver  400  also includes a receiver module  455  that includes a post-equalizer  480 , an OTFS decoder  470  and an OTFS demodulator  460 . The components of the OTFS transceiver may be implemented in hardware, software, or a combination thereof. For a hardware implementation, the processing units may be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, other electronic units designed to perform the functions described above, and/or a combination thereof. The disclosed OTFS methods will be described in view of the various components of the transceiver  400 . 
     In one aspect a method of OTFS communication involves transmitting at least one frame of data ([D]) from the transmitting device  310  to the receiving device  330  through the communication channel  320 , such frame of data comprising a matrix of up to N 2  data elements, N being greater than 1. The method comprises convolving, within the OTFS transceiver  315 - 1 , the data elements of the data frame so that the value of each data element, when transmitted, is spread over a plurality of wireless waveforms, each waveform having a characteristic frequency, and each waveform carrying the convolved results from a plurality of said data elements from the data frame [D]. Further, during the transmission process, cyclically shifting the frequency of this plurality of wireless waveforms over a plurality of times so that the value of each data element is transmitted as a plurality of cyclically frequency shifted waveforms sent over a plurality of times. At the receiving device  330 , the OTFS transceiver  315 - 2  receives and deconvolves these wireless waveforms thereby reconstructing a replica of said at least one frame of data [D]. In the exemplary embodiment the convolution process is such that an arbitrary data element of an arbitrary frame of data ([D]) cannot be guaranteed to be reconstructed with full accuracy until substantially all of these wireless waveforms have been transmitted and received. 
       FIG.  5    illustrates a comparison of bit error rates (BER) predicted by a simulation of a TDMA system and an OTFS system. Both systems utilize a 16 QAM constellation. The simulation modeled a Doppler spread of 100 Hz and a delay spread of 3 microsec. As can be seen from the graphs, the OTFS system offers much lower BER than the TDMA system for the same signal-to-noise ratio (SNR). 
     Attention is now directed to  FIG.  45   , which is a flowchart representative of the operations performed by an OTFS transceiver  4500  which may be implemented as, for example, the OTFS transceiver  400 . The OTFS transceiver  4500  includes a transmitter including a modulator  4510  and a receiver including a demodulator  4520  and two-dimensional equalizer  4530 . In operation, a transmitter of the OTFS transceiver  4500  receives a two-dimensional symbol stream in the form of an N×N matrix of symbols, which may hereinafter be referred to as a TF matrix:
 
 x∈C   N×N  
 
     As is illustrated in  FIG.  46   , in one embodiment the modulator  4510  functions as an orthogonal map disposed to transform the two-dimensional TF matrix to the following transmitted waveform: 
     
       
         
           
             
               
                 ϕ 
                 t 
               
               = 
               
                 
                   M 
                   x 
                 
                 = 
                 
                   ∑ 
                   
                     
                       x 
                       ⁡ 
                       ( 
                       
                         i 
                         , 
                         j 
                       
                       ) 
                     
                     ⁢ 
                     
                       ϕ 
                       
                         i 
                         , 
                         j 
                       
                     
                   
                 
               
             
             ⁢ 
             
 
             
               
                 ϕ 
                 
                   i 
                   , 
                   j 
                 
               
               ⊥ 
               
                 ϕ 
                 
                   k 
                   , 
                   l 
                 
               
             
           
         
       
     
     Referring to  FIG.  47   , the demodulator  4520  transforms the received waveform to a two-dimensional TF matrix in accordance with an orthogonal map in order to generate an output stream:
 
ϕ r   →y=D (ϕ r )
 
     In one embodiment the OTFS transceiver  4500  may be characterized by a number of variable parameters including, for example, delay resolution (i.e., digital time “tick” or clock increment), Doppler resolution, processing gain factor (block size) and orthonormal basis function. Each of these variable parameters may be represented as follows. 
     Delay resolution (digital time tick): 
     
       
         
           
             
               Δ 
               ⁢ 
               T 
             
             ∈ 
             
               
                 R 
                 
                   &gt; 
                   0 
                 
               
               ( 
               
                 
                   Δ 
                   ⁢ 
                   T 
                 
                 = 
                 
                   1 
                   Bw 
                 
               
               ) 
             
           
         
       
     
     Doppler resolution: 
     
       
         
           
             
               Δ 
               ⁢ 
               F 
             
             ∈ 
             
               
                 R 
                 
                   &gt; 
                   0 
                 
               
               ( 
               
                 
                   Δ 
                   ⁢ 
                   F 
                 
                 = 
                 
                   1 
                   Trans 
                 
               
               ) 
             
           
         
       
     
     Processing gain factor (block size):
 
 N &gt;0
 
     Orthonormal basis of C N×1  (spectral shapes):
 
 U={u   1   ,u   2   , . . . ,u   N }
 
     As is illustrated by  FIG.  45   , during operation the modulator  4510  takes a TF matrix x∈C N×  and transforms it into a pulse waveform. In one embodiment the pulse waveform comprises a pulse train defined in terms of the Heisenberg representation and the spectral shapes: 
     
       
         
           
             
               ϕ 
               t 
             
             = 
             
               
                 M 
                 ⁡ 
                 ( 
                 x 
                 ) 
               
               = 
               
                 ( 
                 
                   
                     
                       
                         ∏ 
                         
                           
                             ( 
                             x 
                             ) 
                           
                           ⁢ 
                           
                             u 
                             1 
                           
                         
                       
                       ︸ 
                     
                     
                       b 
                       1 
                     
                   
                   , 
                   
                     
                       
                         ∏ 
                         
                           
                             ( 
                             x 
                             ) 
                           
                           ⁢ 
                           
                             u 
                             2 
                           
                         
                       
                       ︸ 
                     
                     
                       b 
                       2 
                     
                   
                   , 
                   … 
                      
                   , 
                   
                     
                       
                         ∏ 
                         
                           
                             ( 
                             x 
                             ) 
                           
                           ⁢ 
                           
                             u 
                             N 
                           
                         
                       
                       ︸ 
                     
                     
                       b 
                       N 
                     
                   
                 
                 ) 
               
             
           
         
       
         
         
           
             where b 1 , b 2  . . . b N  are illustrated in  FIG.  48    and where, in accordance with the Heisenberg relation:
 
Π( h*x )=Π( h )·Π( x ) in particular:
 
Π(δ (r,o)   *x )= L   t ·Π( x )
 
Π(δ (0,w)   *x )= M   w ·Π( x )
 
           
         
       
    
     The Heisenberg representation provides that: 
               Π   :          C     N   ×   N           →             N                  C     N   ×   N       ⁢         given   ⁢         by   :                     Π   ⁡   (   x   )     =         ∑     N   -   1         τ   ,     w   =   0                 x   ⁡   (     τ   ,   w     )     ⁢     M   w           ,     L   τ     ,     x   ∈     C     N   ×   N               
where L t  and M w  are respectively representative of cyclic time and frequency shifts and may be represented as:
 
     
       
         
           
             
               
                 
                   L 
                   τ 
                 
                 ∈ 
                 
                   
                     C 
                     
                       N 
                       × 
                       N 
                     
                   
                   :  
                   
                     
                       L 
                       τ 
                     
                     ( 
                     φ 
                     ) 
                   
                   ⁢ 
                   
                     ( 
                     t 
                     ) 
                   
                 
               
               = 
               
                 φ 
                 ⁡ 
                 ( 
                 
                   t 
                   + 
                   τ 
                 
                 ) 
               
             
             , 
             
               τ 
               = 
               0 
             
             , 
             … 
                
             , 
             
               N 
               - 
               1 
             
           
         
       
       
         
           
             
               
                 
                   M 
                   w 
                 
                 ∈ 
                 
                   
                     C 
                     
                       N 
                       × 
                       N 
                     
                   
                   :  
                   
                     
                       M 
                       w 
                     
                     ( 
                     φ 
                     ) 
                   
                   ⁢ 
                   
                     ( 
                     t 
                     ) 
                   
                 
               
               = 
               
                 
                   e 
                   
                     
                       
                         j 
                         ⁢ 
                         2 
                         ⁢ 
                         π 
                       
                       N 
                     
                     ⁢ 
                     wt 
                   
                 
                 ⁢ 
                 
                   φ 
                   ⁡ 
                   ( 
                   t 
                   ) 
                 
               
             
             , 
             
               w 
               = 
               0 
             
             , 
             … 
                
             , 
             
               N 
               - 
               1 
             
           
         
       
     
     The demodulator  4520  takes a received waveform and transforms it into a TF matrix y∈C N×N  defined in terms of the Wigner transform and the spectral shapes: 
     
       
         
           
             
               ϕ 
               r 
             
             = 
             
               ( 
               
                 
                   b 
                   1 
                 
                 , 
                 
                   b 
                   2 
                 
                 , 
                 … 
                    
                 , 
                 
                   b 
                   N 
                 
               
               ) 
             
           
         
       
       
         
           
             
               y 
               ⁡ 
               ( 
               
                 τ 
                 , 
                 W 
               
               ) 
             
             = 
             
               
                 
                   D 
                   ⁡ 
                   ( 
                   
                     ϕ 
                     r 
                   
                   ) 
                 
                 ⁢ 
                 
                   ( 
                   
                     τ 
                     , 
                     w 
                   
                   ) 
                 
               
               = 
               
                 
                   
                     
                       1 
                       N 
                     
                     ⁢ 
                     
                       
                         ∑ 
                         
                           n 
                           = 
                           1 
                         
                         N 
                       
                         
                       
                         〈 
                         
                           
                             
                               M 
                               w 
                             
                             ⁢ 
                             
                               L 
                               τ 
                             
                             ⁢ 
                             
                               u 
                               n 
                             
                           
                           , 
                           
                             b 
                             n 
                           
                         
                         〉 
                       
                     
                   
                   ︷ 
                 
                 
                   Wigner 
                   ⁢ 
                       
                   transform 
                 
               
             
           
         
       
     
     Main property of M and D (Stone von Neumann theorem):
 
 D ( h   a   M ( x ))= h*x  where:
 
 h (Σ, w )≈ a (τΔ T,wΔF )
 
     As illustrated in  FIG.  49   , the equalizer  4530  may be implemented as a two-dimensional decision feedback equalizer configured to perform a least means square (LMS) equalization procedure such that:
 
 y→{circumflex over (x)} 
 
     Matrix Formulation 
     Throughout this description, the use of matrix terminology should be understood as being a concise description of the various operations that will be carried out by either the OTFS transceiver  315 - 1  or the OTFS transceiver  315 - 2 . Thus the series of steps used to obtain the coefficients of a particular matrix generally correspond to a set of instructions for the transmitter or receiver electronic circuitry (e.g., the various components of the transmitter  405  and the receiver  455  illustrated in  FIG.  4 A ). For example, one set of coefficients may instruct the transmitter  405  or receiver  455  to perform a spread spectrum operation, a different set of coefficients may instruct the transmitter  405  or receiver  455  to perform a spectral shaping modulation or demodulation operation, and another set of coefficients may instruct the transmitter to perform various time spreading or time accumulation functions. Here standard matrix mathematics is used as a shorthand way of reciting the series of instructions used to transmit and receive these complex series of wireless signals. 
     Thus, when the discussion speaks of multiplying matrices, each data element in the matrix formed by the multiplication can be understood in terms of various multi-step operations to be carried out by the transmitter or receiver electronic circuitry (e.g., the transmitter  405  or the receiver  455  as illustrated in  FIG.  4 A ), rather than as a pure number. Thus, for example, a matrix element formed from one matrix that may have spread-spectrum like pseudorandom numbers multiplied by another matrix that may have tone or spectral-shape spreading instructions, such as QAM or phase shift keying instructions, multiplied by another scanning system, permutation scheme, or matrix that may have data instructions, should be understood as directing the transmitter  405  to transmit a radio signal that is modulated according to these three means, or as directing the receiver  455  to receive and demodulate/decode a radio signal that is modulated according to these three means. 
     Put into matrix terminology, the OTFS method of convolving the data for a group of symbols over both time, spectrum, and tone or spectral-shape can be viewed as transforming the data frame with N 2  information elements (symbols) to another new matrix with N 2  elements whereby each element in the new transformed matrix, (here called the TFS data matrix) carries information about all elements of the original data frame. In other words the new transformed TFS data matrix will generally carry a weighted contribution from each element of the original data frame matrix [D]. Elements of this TFS data matrix are in turn transmitted and received over successive time intervals. 
     As previously discussed, in embodiments of the OTFS method the basic unit of convolution and deconvolution (convolution unit) is composed of a matrix of N 2  symbols or data elements. Over each time interval, a different waveform may be used for each data element. By contrast, prior art methods generally use the same waveform for each data element. For consistency, the N 2  units of data will generally be referred to in this specification as a “data frame”. N may be any value greater than one, and in some embodiments will range from 64 to 256. 
     One distinction between the OTFS method and conventional modulation schemes may be appreciated by observing that a basic unit of convolution, transmission, reception and deconvolution for a prior art communications protocol may be characterized as a data frame of n symbols or elements “d” operated on spreading codes that send the data for n symbols over one spreading interval time where:
 
[ D   1xn ]=[ d   1   d   2    . . . d   n ]
 
     In contrast, embodiments of the OTFS method generally use a different basic unit of convolution, transmission, reception, and deconvolution. In particular, such OTFS embodiments will typically use a larger data frame [D N×N ] composed of N 2  elements or symbols “d” that, as will be discussed, send the data for these N 2  elements over a plurality of spreading interval times (often the plurality is N). The data frame [D N×N ] may be expressed as: 
     
       
         
           
             
               [ 
               
                 D 
                 
                   N 
                   × 
                   N 
                 
               
               ] 
             
             = 
             
               [ 
               
                 
                   
                     
                       d 
                       
                         1 
                         , 
                         1 
                       
                     
                   
                   
                     
                       d 
                       
                         1 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       d 
                       
                         1 
                         , 
                         N 
                       
                     
                   
                 
                 
                   
                     
                       d 
                       
                         2 
                         , 
                         1 
                       
                     
                   
                   
                     
                       d 
                       
                         2 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       d 
                       
                         2 
                         , 
                         N 
                       
                     
                   
                 
                 
                   
                     
                       d 
                       
                         3 
                         , 
                         1 
                       
                     
                   
                   
                     
                       d 
                       
                         3 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                       
                   
                 
                 
                   
                     
                       d 
                       
                         4 
                         , 
                         1 
                       
                     
                   
                   
                     
                       d 
                       
                         4 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       d 
                       
                         N 
                         , 
                         N 
                       
                     
                   
                 
               
               ] 
             
           
         
       
     
     In general, references herein to a frame of data may be considered to be a reference to the N×N or N 2  matrix such as the one shown above, where at least some elements in the matrix may be zero or null elements. In some embodiments, a frame of data could be non-square, or N×M, where N≠M. 
     Signal Transmission 
     As previously discussed, the OTFS method will spread this group of N 2  symbols across a communications link over multiple spreading intervals of time (usually at least N spreading intervals or times), where each individual spreading interval of time is composed of at least N time slices. Note that due to potential overhead for synchronization and identification purposes, in some embodiments, extra time slices and/or extra spreading intervals of time may be allocated to provide room for this overhead. Although for clarity of presentation this overhead will generally be ignored, it should be understood that the disclosure is intended to also encompass methods in which such overhead exists. 
     In exemplary embodiments of the OTFS method the data will thus be transmitted as a complex series of waveforms, usually over wireless radio signals with frequencies usually above 100 MHz, and often above 1 GHz or more. These radio frequencies are then usually received over at least N spreading time intervals, where each spreading time interval is often composed of at least N time-slices. Once received, the original data frame will be deconvolved (i.e. solved for) and the most likely coefficients of the original group of symbols are reconstructed. It should be evident that in order to successfully deconvolve or solve for the original data frame, the receiver will usually have prior knowledge of the time, spectrum, and tone or spectral-shape spreading algorithms used by the transmitter. 
     Attention is now directed to  FIG.  3 B , which illustrates a process  340  by which the OTFS transceiver  315 - 1  of the transmitting device  310  may transmit a data frame (or a convolution unit) of data, here expressed as an (N by N) or (N 2 ) matrix [D]. This process may be described using standard matrix multiplication as follows:
         1: Construct the matrix product of a first N×N matrix [U 1 ] and [D] (often written as either [U 1 ]*[D] or more simply [U 1 ][D]—here both the “*” and simple close association (e.g. [U 1 ][D]) both are intended to represent matrix multiplication)(stage  342 ).   2: Optionally permute [U 1 ][D] by a permutation operation P in order to create a new N×N matrix (stage  344 ). In general, any invertible permutation operation may be used. P may be an identity operation, or alternatively may be a permutation operation that essentially translates the columns of the original N×N [U 1 ][D] matrix to diagonal elements of a transformed [U 1 ][D]′ matrix.   3: Upon completing the permutation, optionally multiply the permuted result by a second N×N [U 2 ] matrix (for spectral shaping for example), forming:
           [P([U 1 ][D])][U 2 ] (stage  348 ).   
           4: Transmit this signal, according to methods discussed below (stage  350 ).       

     In one embodiment the permutation operation P may optionally be of the form:
 
 b   i,j   =a   i,(j−1)mod N  
 
where [a] is the original matrix (here [U 1 ][D]), and [b] is the new matrix (here P([U 1 ][D]).
 
     For sake of simplicity, the result of this permutation operation may be written as P([U 1 ][D]). 
       FIG.  22    illustrates another permutation that may be used. In this case, the permutation is given by the following relationship:
 
 b   i,j   =a   i,(j+1)mod N  
 
     Yet another permutation option is illustrated in  FIG.  23   . In  FIG.  23   , for illustrative purposes, a second [a] matrix is placed next to the original [a] matrix. Diagonal lines are drawn overlapping the first and second [a] matrices. The permuted [b] matrix is formed by translating each diagonal line one column to the left (or right in yet another permutation), where one or more of the translated entries falls into the second [a] matrix such that one or more entries is moved from the second [a] matrix to the same position in the first [a] matrix. 
     Here [U 1 ] and [U 2 ], if being used, can both be unitary N×N matrices, usually chosen to mitigate certain impairments on the (often wireless) communications link, such as wide band noise, narrow-band interference, impulse noise, Doppler shift, crosstalk, etc. To do this, rather than simply selecting [U 1 ] and [U 2 ] to be relatively trivial identity matrices [I], or matrices with most of the coefficients simply being placed along the central diagonal of the matrix, [U 1 ] and [U 2 ] will usually be chosen with non-zero coefficients generally throughout the matrix so as to accomplish the desired spreading or convolution of the convolution unit [D] across spectrum and tone or spectral-shape space in a relatively efficient and uniform manner. Usually, the matrix coefficients will also be chosen to maintain orthogonality or to provide an ability to distinguish between the different encoding schemes embodied in the different rows of the respective matrices, as well as to minimize autocorrelation effects that can occur when radio signals are subjected to multi-path effects. 
     In reference to the specific case where [U 1 ] may have rows that correspond to pseudo-random sequences, it may be useful to employ a permutation scheme where each successive row in the matrix is a cyclically rotated version of the pseudo-random sequence in the row above it. Thus the entire N×N matrix may consist of successive cyclically rotated versions of a single pseudo-random sequence of length N. 
       FIGS.  17 - 19    illustratively represent the manner in which different types of unitary matrices [U 1 ] can be used to represent various forms of modulation. For example,  FIG.  17    illustrates a unitary matrix [U 1 ] in the form of an identity matrix  1710  representative of a time division multiplexed transmission basis; that is, a matrix of basis vectors where each column and each row is comprised of a single “1” and multiple “0” values. When the identity matrix  1710  is combined with a data matrix [D], the result corresponds to each column of [D] being transmitted in a different time slot corresponding to one of the time lines  1700  (i.e., the columns of [D] are transmitted in a time division multiplexed series of transmissions). 
       FIG.  18    illustrates a unitary matrix [U 1 ] in the form of a DFT basis vector matrix  1810  representative of a frequency division multiplexed transmission basis. The DFT basis vector matrix  1810  is comprised of N column entries representing rotating phaser or tone basis vectors. When the DFT basis vector matrix  1810  is multiplied by a data matrix [D], the columns of the resulting matrix represent rotating phasers each having a different frequency offset or tone as represented by the set of time lines  1800 . This corresponds to each column of [D] being transmitted at a different frequency offset or tone. 
       FIG.  19    illustrates a unitary matrix [U 1 ] in the form of a Hadamard matrix  1910  representative of a code division multiplexed transmission basis. The Hadamard matrix  1910  is comprised of a set of quasi-random plus and minus basis vectors. When the Hadamard matrix  1910  is multiplied by a data matrix [D], the columns of the resulting matrix represent different quasi-random code division multiplexed signals as represented by the set of time lines  1900 . This corresponds to each column of [D] being transmitted using a different quasi-random code. 
     In principle, [U 1 ] and [U 2 ], if both are being used, may be a wide variety of different unitary matrices. For example, [U 1 ] may be a Discrete Fourier Transform (DFT) matrix and [U 2 ] may be a Hadamard matrix. Alternatively [U 1 ] may be a DFT matrix and [U 2 ] may be a chirp matrix. Alternatively [U 1 ] may be a DFT matrix and [U 2 ] may also be a DFT matrix, and so on. Thus although, for purposes of explaining certain aspects of the OTFS method, certain specific examples and embodiments of [U 1 ] and [U 2 ] will be given, these specific examples and embodiments are not intended to be limiting. 
     Note that a chirp matrix, [V], is commonly defined in signal processing as a matrix where, if is the chirp rate,
         [V]=diag(Ψ, Ψ 2 , . . . , Ψ n ), Ψ=e iΨ , and frequency=e jω  where ω is the initial center frequency of the spectrum.       

     Alternatively, a different chirp matrix may be used, filled with elements of the form: 
     
       
         
           
             
               V 
               
                 j 
                 , 
                 k 
               
             
             = 
             
               e 
               
                 ( 
                 
                   
                     
                       - 
                       i 
                     
                     ⁢ 
                     2 
                     ⁢ 
                     π 
                     ⁢ 
                     
                       kj 
                       2 
                     
                   
                   N 
                 
                 ) 
               
             
           
         
       
     
     Where j is the matrix row, k is the matrix column, and N is the size of the matrix. 
     Other commonly used orthonormal matrices, which may be used for [U 1 ], or [U 2 ] or [U 3 ] (to be discussed), include Discrete Fourier matrices, Polynomial exponent matrices, harmonic oscillatory, matrices, the previously discussed Hadamard matrices, Walsh matrices, Haar matrices, Paley matrices, Williamson matrices, M-sequence matrices, Legendre matrices, Jacobi matrices, Householder matrices, Rotation matrices, and Permutation matrices. The inverses of these matrices may also be used. 
     As will be discussed, in some embodiments, [U 1 ] can be understood as being a time-frequency shifting matrix, and [U 2 ] can be understood as being a spectral shaping matrix. In order to preserve readability, [U 1 ] will thus often be referred to as a first time-frequency shifting matrix, and [U 2 ] will thus often be referred to as a second spectral shaping matrix. However use of this nomenclature is also not intended to be limiting. In embodiments in which the optional permutation or multiplication by a second matrix [U 2 ] is not performed, the [U 1 ] matrix facilitates time shifting by providing a framework through which the elements of the resulting transformed data matrix to be transmitted at different times (e.g., on a column by column basis or any other ordered basis). 
     Turning to some more specific embodiments, in some embodiments, [U 1 ] may have rows that correspond to Legendre symbols, or spreading sequences, where each successive row in the matrix may be a cyclically shifted version of the Legendre symbols in the row above it. These Legendre symbols will occasionally also be referred to in the alternative as base vectors, and occasionally as spectrum-spreading codes. 
     In some embodiments, [U 2 ] may chosen to be a Discrete Fourier transform (DFT) matrix or an Inverse Discrete Fourier Transform matrix (IDFT). This DFT and IDFT matrix can be used to take a sequence of real or complex numbers, such as the N×N (P[U 1 ][D]) matrix, and further modulate P([U 1 ][D]) into a series of spectral shapes suitable for wireless transmission. 
     The individual rows for the DFT and IDFT matrix [U 2 ] will occasionally be referred in the alternative as Fourier Vectors. In general, the Fourier vectors may create complex sinusoidal waveforms (tone or spectral-shapes) of the type: 
               X     j   ˙     k     =     e     (           -   i         *   2   *   π   *   j   *   k         )     N               
where, for an N×N DFT matrix, X is the coefficient of the Fourier vector in row k, column N of the DFT matrix, and j is the column number. The products of this Fourier vector can be considered to be tones or spectral-shapes.
 
     Although certain specific [U 1 ] and [U 2 ] can be used to transmit any given data frame [D], when multiple data frames [D] are being transmitted simultaneously, the specific [U 1 ] and [U 2 ] chosen may vary between data frames [D], and indeed may be dynamically optimized to avoid certain communications link impairments over the course of transmitting many data frames [D] over a communications session. 
     This process of convolution and modulation will normally be done by an electronic device, such as a microprocessor equipped, digital signal processor equipped, or other electronic circuit that controls the convolution and modulation parts of the wireless radio transmitter. Similarly the process of receiving and demodulation will also generally rely upon a microprocessor equipped, digital signal processor equipped, or other electronic circuit that controls the demodulation, accumulation, and deconvolution parts of the wireless radio receiver. 
     Thus again using matrix multiplication, and again remembering that these are all N×N matrices, [P([U 1 ][D])][U 2 ], where [U 2 ] is optional, represents the TFS data matrix that the transmitter will distribute over a plurality of time spreading intervals, time slices, frequencies, and spectral shapes. Note again that as a result of the various matrix operation and optional permutation steps, a single element or symbol from the original N×N data matrix [D] after modulation and transmission, will be distributed throughout the different time spreading intervals, time slices, frequencies, and spectral shapes, and then reassembled by the receiver and deconvolved back to the original single data element of symbol. 
       FIG.  6 A  illustratively represents an exemplary OTFS method  600  for transmitting data over a wireless link such as the communication channel  320 .  FIG.  6 B  illustrates components of an exemplary OTFS transmitter  650  for performing the method of  FIG.  6 A . The method  600  can be performed, for example, by components of the OTFS transceiver  400  of  FIG.  4    or by components of the OTFS transmitter  650  of  FIG.  6 B . 
     In the example of  FIG.  6   , the payload intended for transmission comprises an input data frame  601  composed of an N×N matrix [D] containing N 2  symbols or data elements. As shown in  FIG.  6 A , a succession of data frames  601  are provided, each of which defines a matrix [D] of N×N data elements. Each matrix [D] can be provided by a digital data source  660  in the OTFS transmitter  650 . The elements of the matrix [D] can be complex values selected from points in a constellation matrix such as, for example, a 16 point constellation of a 16QAM quantizer. In order to encode this data, an OTFS digital encoder  665  will select an N×N matrix [U 1 ]  602  and, in some embodiments, select an N×N matrix [U 2 ]  604  (stage  606 ). As previously discussed, in some embodiments the matrix [U 1 ]  602  may be a matrix composed of Legendre symbols or a Hadamard matrix. This matrix [U 1 ]  602  will often be designed to time and frequency shift the symbols or elements in the underlying data matrix [D]  601 . 
     The matrix [U 2 ]  604  may be a DFT or IDFT matrix and is often designed to spectrally shape the signals. For example, in some embodiments the matrix [U 2 ]  604  may contain the coefficients to direct the transmitter circuits of the OTFS modulator  430  to transform the signals over time in a OFDM manner, such as by quadrature-amplitude modulation (QAM) or phase-shift keying, or other scheme. 
     Usually the matrix [D]  601  will be matrix multiplied by the matrix [U 1 ]  602  by the digital encoder  665  at stage  610 , and the matrix product of this operation [U 1 ][D] then optionally permuted by the digital encoder  665  forming P([U 1 ][D]) (stage  611 ). In embodiments in which a spectral shaping matrix is utilized, the digital encoder  665  multiplies matrix [U 1 ][D] by matrix [U 2 ]  604  forming an N×N TFS data matrix, which may also be referred to herein as an OTFS transmission matrix (stage  614 ). 
     The various elements of the TFS matrix are then selected by the OTFS analog modulator  670 , usually a column of N elements at a time, on a single element at a time basis (stage  616 ) The selected elements are then used to generate a modulated signal that is transmitted via an antenna  680  (stage  618 ). More specifically, in one embodiment the particular real and imaginary components of each individual TFS matrix element are used to control a time variant radio signal  620  during each time slice. Thus one N-element column of the TFS matrix will usually be sent during each time-spreading interval  608 , with each element from this column being sent in one of N time slices  612  of the time-spreading interval  608 . Neglecting overhead effects, generally a complete N×N TFS matrix can be transmitted over N single time spreading intervals  622 . 
     Attention is now directed to  FIG.  6 C , which is a flowchart representative of an exemplary OTFS data transmission method  690  capable of being implemented by the OTFS transmitter  650  or, for example, by the OTFS transmitter  2100  of  FIG.  21    (discussed below). As shown, the method includes establishing a time-frequency transformation matrix of at least two dimensions (stage  692 ). The time-frequency transformation matrix is then combined with a data matrix (stage  694 ). The method  690  further includes providing a transformed matrix based upon the combining of the time-frequency transformation matrix and the data matrix (stage  696 ). A modulated signal is then generated in accordance with elements of the transformed data matrix (stage  698 ). 
     Attention is now directed to  FIG.  21 A , which is a block diagram representation of an OTFS transmitter module  2100  capable of performing functions of the OTFS transmitter  650  ( FIG.  6 B ) in order to implement the transmission method  600  of  FIGS.  6 A and  6 C . With reference to  FIG.  21    and  FIG.  6 B , the transmitter  2100  includes a digital processor  2102  configured for inclusion within the digital encoder  665  and a modulator  2104  configured for inclusion within the analog modulator component  670 . The digital processor  2102 , which may be a microprocessor, digital signal processor, or other similar device, accepts as input the data matrix [D]  2101  and may either generate or accept as inputs a [U 1 ] matrix  2102  and a [U 2 ] matrix  2104 . A matrix generation routine  2105  stored within a memory associated with the processor  2102  will, when executed by the processor  2102 , generate a TFS matrix  2108  ( FIG.  21 B ), which will generally be comprised of a set of complex-valued elements. Once generated, scanning/selection routine  2106  will, when executed by the processor  2102 , select individual elements from the TFS matrix  2108  matrix, often by first selecting one column of N elements from the TFS matrix and then scanning down this column and selecting individual elements at a time. Generally one new element will be selected every time slice  2112  ( FIG.  21 C ). 
     Thus every successive time slice, one element from the TFS matrix  2108  will be used to control the modulator  2104 . In one embodiment of the OTFS method, the modulator  2104  includes modules  2132  and  2134  for separating the element into its real and imaginary components, modules  2142  and  2144  for chopping the resultant real and imaginary components, and filtering modules  2152  and  2154  for subsequently performing filtering operations. The filtered results are then used to control the operation of sin and cosine generators  2162  and  2164 , the outputs of which are upconverted using a RF carrier in order to produce an analog radio waveform  2120 . This waveform then travels to the receiver where it is demodulated and deconvolved as will be described below with reference to  FIG.  7   . Thus in this scheme (again neglecting overhead effects), element t 1,1  from the first column of the TFS matrix can be sent in the first time slice, and the Nth element from the first column of the TFS matrix can be sent in the last time slice of the first time spreading interval  2124 . The next element t 1,2  from the second column of the TFS matrix can be sent in the first time slice of the second time spreading interval  2128 , and so on. Thus, the modulator  2104  transmits a composite waveform during each time spreading interval, where the value of the waveform is determined by a different element of the TFS matrix  2108  during each time slice of the spreading interval. 
     In an alternative embodiment, diagonals of the TFS data matrix may be transmitted over a series of single time-spreading intervals, one diagonal per single time-spreading interval, so that N diagonals of the final N×N transmission matrix are transmitted over N time intervals. In other embodiments the order in which individual elements of the TFS transmission matrix [[U 1 ][D]][U 2 ] are transmitted across the communications link is determined by a transmit matrix or transmit vector. 
     In some embodiments, there may be some overhead to this basic model. Thus, for example, with some time padding (additional time slices or additional time spreading intervals), checksums or other verification/handshaking data, which could be transmitted in a non-convolved manner, could be sent back by the receiver to the transmitter on a per time-spreading interval, per N time spreading intervals, or even on a per time slice interval in order to request retransmission of certain parts of the TFS data matrix as needed. 
       FIG.  9    illustratively represents an exemplary transmit frame  900  comprised of a plurality of transmit blocks  920  separated by guard times  950 . Each transmit block  920  includes data corresponding to a portion of the [D] matrix, such as a column as shown in  FIG.  9   , or a row, or sub-blocks of the [D] matrix. The guard time  950  can provide the receiver with time to resolve Doppler shift in transmitted signals. The Doppler shift causes delays or advances in the receive time and the OTFS receiver  455  can use the spaces between the transmit blocks  920 - 1 ,  920 - 2 ,  920 - 3 ,  920 - 4  and  920 - 5  to capture data without interference from other users. The guard times  950  can be used with either the first or second forms of the OTFS methodology. The guard times  950  can be utilized by other transmitters in the area so long as the transmission uses different codes (e.g., Hadamard codes) than those used to transmit the frame  900 . 
     Attention is now directed to  FIG.  20   , which illustrates a sequence of L OTFS matrices  2010 , each of dimension N×N. The L OTFS matrices  2010  collectively comprise a frame of data which includes L×N×N symbols spread out in both time and frequency. The matrices  2010 - 1  through  2010 -L are transmitted back-to-back and include guard times (T g ) between matrices  2010 . The N columns  2020  of a given matrix  2010  are transmitted on a column-by-column basis, typically with guard times inserted between the transmission of each column  2020 . Therefore, the L frames  2010  are transmitted in a time greater than N×[L×(N×T+Tg)], where T is the time to transmit one column of symbols inclusive of the guard times described above. 
     As previously discussed, in some embodiments, the first N×N time spreading matrix [U 1 ] may be constructed out of N rows of a cyclically shifted Legendre symbols or pseudorandom number of length N. That is, the entire N×N spreading matrix is filled with all of the various cyclic permutations of the same Legendre symbols. In some embodiments, this version of the [U 1 ] matrix can be used for spectrum spreading purposes and may, for example, instruct the transmitter to rapidly modulate the elements of any matrix that it affects rapidly over time, that is, with a chip rate that is much faster than the information signal bit rate of the elements of the matrix that the Legendre symbols are operating on. 
     In some embodiments, the second N×N spectral shaping matrix [U 2 ] can be a Discrete Fourier Transform (DFT) or an Inverse Discrete Fourier Transform (IDFT) matrix. These DFT and IDFT matrices can instruct the transmitter to spectrally shift the elements of any matrix that the DFT matrix coefficients act upon. Although many different modulation schemes may be used, in some embodiments, this modulation may be chosen to be an Orthogonal Frequency-Division Multiplexing (OFDM) type modulation, in which case a modulation scheme such as quadrature amplitude modulation or phase-shift keying may be used, and this in turn may optionally be divided over many closely-spaced orthogonal sub-carriers. 
     Often the actual choice of which coefficients to use for the first N×N time-frequency shifting matrix [U 1 ] and what coefficients to use for the second N×N spectral shaping matrix [U 2 ] may depend on the conditions present in the communications channel  320 . If, for example, a communications channel  320  is subjected to a particular type of impairment, such as wide band noise, narrow-band interference, impulse noise, Doppler shift, crosstalk and so on, then some first N×N time-frequency shifting matrices and some second N×N spectral shaping matrices will be better able to cope with these impairments. In some embodiments of the OTFS method, the transmitter and receiver will attempt to measure these channel impairments, and may suggest alternate types of first N×N time-frequency shifting matrices [U 1 ] and second N×N spectral shaping matrices to each [U 2 ] in order to minimize the data loss caused by such impairments. 
     Various modifications of the above-described data transmission process represented by the matrix multiplication [[U 1 ][D]][U 2 ] are also within the scope of the present disclosure and are described below with reference to  FIGS.  13  and  15   . For example,  FIGS.  13 A and  13 B  show a first alternative OTFS transmission scheme. In the embodiment of  FIG.  13   , the data matrix [D] may be further convolved by means of a third unitary matrix [U 3 ]  1306 , which may be an IDFT matrix. In one implementation [U 1 ] may be a DFT matrix and the matrix [U 2 ]  1308  may be the product of a DFT matrix and a base. In this scheme, the process of scanning and transmitting the data is represented by the previously described permutation operation P. The basic transmission process can thus be represented as [U 3 ]*[P([U 1 ][D])]*[U 2 ].  FIG.  13 A  shows the matrix [D] identified by reference numeral  1300 , and the matrix product ([U 1 ][D]) is identified by reference numeral  1302 .  FIG.  13 A  further shows that the result of the permutation operation P is the permuted version of the matrix product ([U 1 ][D]), i.e., P([U 1 ][D]), identified by reference numeral  1304 . In the representation of  FIG.  13 A , at least certain of the effects of the permutation operation P are represented by the differing directions of arrow  1305  and arrow  1305 ′. 
       FIG.  13 B  shows a result  1310  of the final matrix product [U 3 ][P([U 1 ][D])][U 2 ] where, again, the permuted version of the matrix product ([U 1 ][D]), i.e., P([U 1 ][D]), is identified by reference numeral  1304  (without arrow  1305 ′). In various embodiment the matrix [U 3 ]  1306  may comprise a DFT matrix, an IDFT matrix, or a trivial identity matrix (in which case this first alternative scheme becomes essential equivalent to a scheme in which a matrix [U 3 ] is not employed). 
     Attention is now directed to  FIGS.  15 A and  15 B , which illustrate a second alternative OTFS transmission scheme. As shown, the original data matrix [D] is identified by reference numeral  1500 , the matrix product [U 1 ][D] is identified by reference numeral  1502 , the permuted matrix P([U 1 ][D]) is identified by reference numeral  1504 , and the matrix [U 2 ] is identified by reference numeral  1506 . In the representation of  FIG.  15 A , at least certain of the effects of the permutation operation P are represented by the differing directions of arrow  1507  and arrow  1507 ′. In one embodiment [U 1 ] may be a Hadamard matrix; that is, a square matrix composed of mutually orthogonal rows and either +1 or −1 coefficients. This matrix has the property that H*H T =nI n  where I n  is an N×N identity matrix and H T  is the transpose of H). As shown in  FIG.  15 B , consistent with this alternative OTFS transmission scheme the matrix corresponding to the transmitted signal may be expressed as [P([U 1 ][D])]*[U 2 ] and is identified by reference numeral  1508  where, again, the permuted matrix P([U 1 ][D]) is identified by reference numeral  1504  (without arrow  1507 ′). 
     Signal Reception and Data Reconstruction 
     Attention is now directed to  FIG.  3 C , which illustrates a process  360  by which the OTFS transceiver  315 - 2  of the receiving device  330  may operate to receive a transmitted data frame. Within the OTFS transceiver  315 - 2 , the process performed during transmission is essentially done in reverse. Here the time and frequency spread replica of the TFS data matrix ([P([U 1 ][D])][U 2 ])′ (where the ′ annotation is indicative of a replicated matrix) is accumulated over multiple time spreading intervals, time slices, frequencies, and spectral shapes, and then deconvolved to solve for [D] by performing the following operations:
         1: Receive ([P([U 1 ][D])][U 2 ])′ (stage  362 )   2: Perform a first left multiplication by the Hermitian matrix of the [U 2 ] matrix [UP], if one was used for transmission, thus creating P([U 1 ][D]) (stage  364 ).   3: Inverse permute this replica by (P([U 1 ][D])P −1 , if a permutation was used during transmission, thus creating [U 1 ][D] (stage  368 )   4. Perform a second right multiplication by the Hermitian matrix of the [U 1 ] matrix [U 1   H ], thus recreating [D] (stage  370 ).       

     As a consequence of noise and other impairments in the channel, use of information matrices and other noise reduction methods may be employed to compensate for data loss or distortion due to various impairments in the communications link. Indeed, it may be readily appreciated that one advantage of spreading out the original elements of the data frame [D] over a large range of times, frequencies, and spectral shapes as contemplated by embodiments of the OTFS method is that it becomes straightforward to compensate for the loss during transmission of information associated with a few of the many transmission times, frequencies and spectral shapes. 
     Although various deconvolution methods may used in embodiments of the OTFS method, the use of Hermitian matrices may be particularly suitable since, in general, for any Hermitian matrix [U H ] of a unitary matrix [U], the following relationship applies:
         [U][U H ]=[I] where [I] is the identity matrix.       

     Communications links are not, of course, capable of transmitting data at an infinite rate. Accordingly, in one embodiment of the OTFS method the first N×N time-frequency shifting matrix ([U 1 ], the second N×N spectral shaping matrix ([U 2 ] (when one is used), and the elements of the data frame, as well as the constraints of the communications link (e.g. available bandwidth, power, amount of time, etc.), are chosen so that in balance (and neglecting overhead), at least N elements of the N×N TFS data matrix can be transmitted over the communications link in one time-spreading interval. More specifically (and again neglecting overhead), one element of the N×N TFS data matrix will generally be transmitted during each time slice of each time-spreading interval. 
     Given this rate of communicating data, then typically the entire TFS data matrix may be communicated over N time-spreading intervals, and this assumption will generally be used for this discussion. However it should be evident that given other balancing considerations between the first N×N time-frequency shifting matrix, the second N×N spectral shaping matrix, and the elements of the data frame, as well as the constraints of the communications link, the entire TFS data matrix may be communicated in less than N time-spreading intervals, or greater than N time spreading intervals as well. 
     As discussed above, the contents of the TFS data matrix may be transmitted by selecting different elements from the TFS data matrix, and sending them over the communications link, on a one element per time slice basis, over multiple spreading time intervals. Although in principle this process of selecting different elements of the TFS data matrix can be accomplished by a variety of different methods, such as sending successive rows of the TFS data matrix each single time spreading interval, sending successive columns of the TFS data matrix each successive time spreading interval, sending successive diagonals of the TFS data matrix each successive time spreading intervals, and so on, from the standpoint of communications link capacity, minimizing interference, and reducing ambiguity, some schemes are often better than others. Thus, often the [U 1 ] and [U 2 ] matrices, as well as the permutation scheme P, may be chosen to optimize transmission efficiency in response to various impairments in the communications link. 
     As shown in  FIG.  4 B , an exemplary process  404  pursuant to which an OTFS transceiver may transmit, receive and reconstruct information utilizing a TFS data matrix may thus be generally characterized as follows:
         1: For each single time-spreading interval, selecting N different elements of the TFS data matrix (often successive columns of the TFS matrix will be chosen)(stage  482 ).   2: Over different time slices in the given time spreading interval, selecting one element (a different element each time slice) from the N different elements of the TFS data matrix, modulating this element, and transmitting this element so that each different element occupies its own time slice (stage  484 ).   3: Receiving these N different replica elements of the transmitted TFS data matrix over different said time slices in the given time spreading interval (stage  486 ).   4: Demodulating these N different elements of the TFS data matrix (stage  488 ).   5. Repeating stages  482 ,  484 ,  486  and  488  up to a total of N times in order to reassemble a replica of the TFS data matrix at the receiver (stage  490 ).       

     This method assumes knowledge by the receiver of the first N×N spreading code matrix [U 1 ], the second N×N spectral shaping matrix [U 2 ], the permutation scheme P, as well as the particular scheme used to select elements from the TFS matrix to transmit over various periods of time. In one embodiment the receiver takes the accumulated TFS data matrix and solves for the original N×N data frame using standard linear algebra methods. It may be appreciated that because each original data symbol from the original data frame [D] has essentially been distributed over the entire TFS data matrix, it may not be possible to reconstruct an arbitrary element or symbol from the data [D] until the complete TFS data matrix is received by the receiver. 
     Attention is now directed to  FIG.  7 A , which illustratively represents an exemplary method  700  for demodulating OTFS-modulated data over a wireless link such as the communication channel  320 .  FIG.  7 B  illustrates components of an exemplary OTFS receiver for performing the method of  FIG.  7 A . The method  700  can be performed by the OTFS receiver module  455  of the OTFS transceiver  400  of  FIG.  4 A  or by the OTFS receiver  750  of  FIG.  7 B . Just as the OTFS transmitter  405  is often a hybrid analog/digital device, capable of performing matrix calculations in the digital portion and then converting the results to analog signals in the analog portion, so to the OTFS receiver  750  will typically be capable of receiving and demodulating the radio signals in the analog receiver  770  of the OTFS receiver  750 , and then often decoding or deconvolving these signals in the digital portion of the digital OTFS receiver  780 . 
     As shown in  FIG.  7 A , received signals  720  corresponding to channel-impaired versions of the transmitted radio signals  620  may be received by, for example, an antenna  760  of the OTFS receiver  750 . The received signals  720  will generally not comprise exact copies of the transmitted signals  620  because of the signal artifacts, impairments, or distortions engendered by the communication channel  320 . Thus replicas, but not exact copies, of the original elements of the TFS matrix are received and demodulated  722  by the OTFS analog receiver  770  every time slice  612 . In an exemplary embodiment one column of the TFS matrix is demodulated at stage  722  during every spreading time interval  608 . As a consequence, the OTFS demodulator  460  will accumulate these elements over N single time spreading intervals, eventually accumulating the elements necessary to create a replica of the original TFS matrix (stage  724 ) 
     In order to decode or deconvolve the TFS matrix accumulated during stage  724 , the digital OTFS data receiver  780  left multiplies, during a stage  726 , the TFS matrix by the Hermitian matrix of the [U 2 ] matrix, i.e., [U 2   H ], established at a stage  704 . Next, the digital OTFS data receiver  780  performs, at a stage  728 , an inverse permutation (P −1 ) of the result of this left multiplication. The digital OTFS data receiver  780  then deconvolves the TFS matrix in order to reconstruct a replica  732  of the original data matrix [D] by, in a stage  730 , right multiplying the result of stage  728  by the Hermitian of the original N×N time-frequency shifting matrix [U 1 ], i.e., [U 1   H ], established at a stage  702 . Because the reconstructed signal will generally have some noise and distortion due to various communications link impairments, various standard noise reduction and statistical averaging techniques, such as information matrices, may be used to assist in the reconstruction process (not shown). Each replicated frame  732  of each original data matrix [D] may be stored within digital data storage  782  (stage  740 ). 
     Attention is now directed to  FIG.  7 C , which is a flowchart representative of an exemplary OTFS data demodulation method  790  capable of being implemented by the OTFS receiver module  455  of the OTFS transceiver  400  or, for example, by the OTFS receiver  750  of  FIG.  7 B . As shown in  FIG.  7 C , the method includes establishing a time-frequency detransformation matrix of at least two dimensions (stage  792 ). The method further includes receiving a modulated signal formed using a time-frequency transformation matrix that is a hermetian of the detransformation matrix (stage  794 ). The modulated signal is then demodulated to form a transformed data matrix (stage  796 ). The method further includes generating a data matrix by combining the transformed data matrix and the detransformation matrix (stage  798 ). 
     Attention is now directed to  FIGS.  16 A and  16 B , which illustrate an alternative OTFS signal reception scheme corresponding to the alternative OTFS transmission scheme of  FIG.  15   . As shown in  FIG.  16 A , the matrix [r]  1600  of received data is demodulated and deconvolved (decoded) by forming the Hermitian matrices of the matrices [U 1 ] and [U 2 ] used to encode and modulate the data [D], as well as the inverse permutation operation P −1  to undo the original permutation operation P used to scan and transmit the data over multiple time intervals. In the illustration of  FIGS.  16 A and  16 B , the inverse permutation P −1 ([r][U 2   H ]) is identified by reference numeral  1604  and the reconstructed data matrix [D] (created from [U 1   H ]*P −1 ([r]*[U 2   H ])) is identified by the reference numeral  1606 . 
     Attention is now directed to  FIG.  15   , which illustrates an alternative OTFS transmission scheme. As shown, the original data matrix [D] is identified by reference numeral  1500 , the matrix product [U 1 ][D] is identified by reference numeral  1502 , the permuted matrix P([U 1 ][D]) is identified by reference numeral  1504 , and the matrix [U 2 ] is identified by reference numeral  1506 . In the representation of  FIG.  15   , at least certain of the effects of the permutation operation P are represented by the differing directions of arrow  1507  and arrow  1507 ′. In one embodiment [U 1 ] may be a Hadamard matrix; that is, a square matrix composed of mutually orthogonal rows and either +1 or −1 coefficients. This matrix has the property that H*H T =nI n  where I n  is an N×N identity matrix and H T  is the transpose of H). Consistent with the alternative OTFS transmission scheme of  FIG.  15   , the matrix corresponding to the transmitted signal may be expressed as [P([U 1 ][D])]*[U 2 ] and is identified by reference numeral  1508 . 
     Various modifications of the above-described data reconstruction process are also within the scope of the present disclosure and are described below with reference to  FIGS.  14  and  16   . Turning now to  FIGS.  14 A and  14 B , there is illustrated a scheme for reception and reconstruction of signals transmitted consistent with the first alternative OTFS transmission scheme of  FIG.  13   . In  FIG.  14 A , the data that the transmitter has received and accumulated, after various communications link impairment effects, is represented as the [r] matrix  1400 . The [r] matrix  1400  is demodulated and deconvolved (decoded) by forming the Hermitian matrices of the original [U 1 ], [U 2 ], and [U 3 ] matrices originally used to encode and modulate the data [D], as well as the inverse permutation operation P −1  to undo the original permutation operation P used to scan and transmit the data over multiple time intervals. Here [U 1   H ] may be an IDFT matrix, [U 3   H ] may be a DFT matrix, and [U 2   H ]  1402  may be a DFT matrix times a base. As shown in  FIG.  14 A , P −1 ([r][U 2   H ]) is identified by the reference numeral  1403 . In  FIG.  14 B , P −1 ([U 3   H ][r][U 2   H ]) is identified by the reference numeral  1404  and the reconstructed data matrix [D] is identified by reference numeral  1406 . 
     Referring now to  FIG.  11   , there is illustrated an exemplary receive frame  1100  including guard times  1150  between groups of received data or blocks  1120 . The receive frame  1100  corresponds to a frame received in response to transmission of a frame having characteristics equivalent to those illustrated in  FIG.  9   . As shown in  FIG.  11   , each receive block  1120  includes information comprising a portion of the [D] matrix, such as a column as shown in  FIG.  11   , or a row, or sub-blocks of the [D] matrix. The entire [D] matrix is received in a time Tf  1130  that includes N blocks  1120  and N−1 guard times  1150 . The guard time  1150  provides the receiver with time to resolve Doppler shift in the received signals. The Doppler shift causes delays or advances in the receive time and the OTFS receiver  455  can use the guard times  1120  between the receive blocks  1120 - 1 ,  1120 - 2 ,  1120 - 3 ,  1120 - 4  and  1120 - 5  to capture data without interference from other users. 
     Second Form of OTFS Method 
     Attention is now directed to  FIGS.  8 ,  10  and  12   , to which reference will be made in describing aspects of a second form of the OTFS method. As mentioned previously, in the first OTFS method, which was described with reference to  FIGS.  6  and  7   , data is transmitted on a per time slice basis. In contrast, the second form of the OTFS method contemplates that data is transmitted as a series of waveforms, each of which generally subsists for a period of N time slices. More particularly, in embodiments of the second form of the OTFS method each data element within an input frame of data [D] including N 2  data elements is assigned a unique waveform derived from a basic waveform of duration N time slices. In one implementation this uniqueness is obtained by assigning to each data element a specific combination of a time and frequency cyclic shift of the basic waveform. 
     Consistent with one embodiment of the second form of the OTFS method, each element in the input frame of data [D] is multiplied by its corresponding unique waveform, thereby producing a series of N 2  weighted unique waveforms. Over one spreading time interval (generally composed of N time slices), all N 2  weighted unique waveforms corresponding to each data element in the fame of data [D] are simultaneously combined and transmitted. Further, in this embodiment a different unique basic waveform of length (or duration) of N time slices is used for each consecutive time-spreading interval. The set of N unique basic waveforms (i.e., one for each of the N time-spreading intervals) form an orthonormal basis. As may be appreciated, embodiments of the second form of the OTFS element contemplate that at least a part of [D] is transmitted within each of the N time-spreading intervals. 
     To receive waveforms modulated and transmitted in accordance with this second form of the OTFS method, the received signal is (over each spreading interval of N time slices), correlated with the set of all N 2  waveforms previously assigned to each data element during the transmission process for that specific time spreading interval. Upon performing this correlation, the receiver will produce a unique correlation score for each one of the N 2  data elements (the receiver will have or be provided with knowledge of the set of N 2  waveforms respectively assigned by the transmitter to the corresponding set of N 2  data elements). This process will generally be repeated over all N time-spreading intervals. The original data matrix [D] can thus be reconstructed by the receiver by, for each data element, summing the correlation scores over N time-spreading intervals. This summation of correlation scores will typically yield the N 2  data elements of the frame of data [D]. 
     Turning now to  FIG.  8   , there are shown an exemplary set of vectors used in convolving and deconvolving data in accordance with the second form of the OTFS method. Specifically,  FIG.  8    depicts a base vector  802 , data vector  800 , Fourier vector  804  and Transmit vector  806 . In the embodiment of  FIG.  8    the data vector  800  may include N elements (often one row, column, or diagonal) of an N×N [D] matrix, the base vector  802  may include N elements (often one row, column, or diagonal) of an N×N [U 1 ] matrix, the Fourier vector  804  may include N elements (often one row, column, or diagonal) of an N×N [U 2 ] matrix, which may often comprise a DFT or IDFT matrix. The transmit frame  808  is composed of N single time-spreading intervals T m    810 , each of which is defined by a transmit vector  806  containing multiple (such as N) time slices. In the embodiment of  FIG.  8   , the transmit vector  806  provides information used by the transmitter in selecting elements of the OTFS transmission matrix for transmission during each time slice of each transmission interval. 
     In  FIG.  8   , the lines  812  are intended to indicate that each Fourier vector waveform  804  is manifested over one spreading time interval T m    810 . It is observed that this is representative of a difference in wireless radio signal modulation between the second form of the OTFS method (in which each waveform exists over a time spreading interval composed of multiple (e.g. N) time slices) and the first form of the OTFS method (in which the wireless signal is essentially transmitted on a per time slice basis). 
       FIG.  10    illustrates aspects of a cyclic convolution method that may be used to convolve data and transmit data according to the second form of the OTFS methodology. As previously discussed, particularly in the case where [U 1 ] is composed of a cyclically permuted Legendre number of length N, the process of convolving the data and scanning the data can be understood alternatively as being a cyclic convolution of the underlying data. Here the d 0 , d k , d N−4  can be understood as being the elements or symbols of the data vector  1000  component of the [D] matrix, the b m  coefficients can be understood as representing the base vector  1002  components of the [U 1 ] matrix, and the X coefficients can be understood as representing the Fourier vector  1004  components of the [U 2 ] matrix. The combinations of the b m  coefficients and the X coefficients are summed to form the transmit block T m    1010 . In the illustration of  FIG.  10   , each such combination is represented as [b m *X k ] and comprises the element-wise multiplication of the m th  base vector with the k th  Fourier vector. 
       FIGS.  39 A,  39 B,  39 C and  39 D  illustrate an exemplary OTFS encoding scheme pursuant to which N 2  data symbols d ij  of a data matrix are spread using a pair of transform matrices into N 2  different basis matrices B ij  of basis frames F ij . With reference to  FIG.  39 A , a basis matrix includes N length N basis vectors b 0 −b N−1 . When [U 1 ] is implemented using a DFT or IDFT matrix, the multiplication of the [D] matrix by [U 1 ] and [U 2 ] can be replicated by multiplying each of the basis vectors b 0 −b N−1  by a diagonal matrix formed by placing the N components of each DFT vector (column) along the main diagonal. The result of these multiplications is N 2  basis matrices. As shown in  FIG.  39 A , each data element d ij  is then multiplied by one of the N 2  basis matrices and the resulting N 2  matrices d ij *B ij  are summed to yield an OTFS data matrix. This is illustrated by, for example, the cyclic convolution of  FIG.  10   . Thus, each data element d ij  is spread over each element of the OTFS data matrix. 
       FIG.  39 B  illustrates an incomplete basis matrix that includes N−l columns and N−k rows where l and k are greater than or equal to one. The resulting multiplications spread only a portion of the data elements d ij  over the entire N×N OTFS matrix.  FIG.  39 C  illustrates a basis frame that has N vectors of length M where M is greater than N. The resulting basis frames include N×M elements.  FIG.  39 D  illustrates an incomplete basis frame including N−l columns and M−k rows, where l and k are greater than or equal to one. The result is that fewer than all the data elements d ij  are spread across all of the N 2  basis frames. 
       FIG.  12    shows a diagram of a cyclic deconvolution method that may be used to deconvolve received data according to the second form of the OTFS methodology. In  FIG.  12   , R m    1202  denotes a portion of the accumulated signal  730  received and demodulated by the OTFS receiver  455 . Again, as previously discussed, particularly in the case where [U 1 ] is composed of a cyclically permuted Legendre number of length N, then the matrix-based mathematical process of deconvolving the data and reconstructing the data can be understood alternatively as being a cyclic deconvolution of the transmitted data previously convolved in  FIG.  10   . Here the reconstructed components  1200  ˜d 0 , ˜d k , ˜d N−1  can be understood as being the reconstructed elements (symbols) of the data vector  1000  component of the [D] matrix, the b m  coefficients  1002  again can be understood as representing the same base vector  1002  components of the [U 1 ] matrix, and the X coefficients  1004  can again be understood as representing the Fourier vector  1004  components of the [U 2 ] matrix. In addition, [b m *X k ]′ may be understood as denoting the element-wise multiplication of the mirror conjugate of the m th  base vector with the k th  Fourier vector. 
     In this alternative scheme or embodiment, the OTFS method can be understood as being a method of transmitting at least one frame of data ([D]) over a communications link, comprising: creating a plurality of time-spectrum-tone or spectral-shape spreading codes operating over a plurality of time-spreading intervals, each single time-spreading interval being composed of at least one clock intervals; each time-spectrum-tone or spectral-shape spreading code comprising a function of a first time-frequency shifting, a second spectral shaping, and a time spreading code or scanning and transmission scheme. 
     Multiple Users 
     In an exemplary embodiment, OTFS modulation techniques may be employed to enable data to be sent from multiple users using multiple transmitters (here usually referred to as the multiple transmitter case) to be received by a single receiver. For example, assume multiple users “a”, “b”, “c”, and “d”, each desire to send a frame of data including N elements. Consistent with an embodiment of a multi-user OTFS transmission scheme, a conceptual N×N OTFS transmission matrix shared by multiple users may be created in the manner described below. Specifically, each given user packs their N elements of data into one column of an N×N data frame associated with such user but leaves the other columns empty (coefficients set to zero). The N×N data frame [D a ] associated with, and transmitted by, a user “a” may thus be represented as: 
     
       
         
           
             
               [ 
               
                 D 
                 a 
               
               ] 
             
             = 
             
               [ 
               
                 
                   
                     
                       a 
                       
                         1 
                         , 
                         1 
                       
                     
                   
                   
                     
                       0 
                       
                         1 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       0 
                       
                         1 
                         , 
                         n 
                       
                     
                   
                 
                 
                   
                     
                       a 
                       
                         2 
                         , 
                         1 
                       
                     
                   
                   
                     
                       0 
                       
                         2 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       0 
                       
                         2 
                         , 
                         n 
                       
                     
                   
                 
                 
                   
                     … 
                   
                   
                     … 
                   
                   
                     … 
                   
                   
                     … 
                   
                 
                 
                   
                     
                       a 
                       
                         n 
                         , 
                         1 
                       
                     
                   
                   
                     
                       0 
                       
                         n 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       0 
                       
                         n 
                         , 
                         n 
                       
                     
                   
                 
               
               ] 
             
           
         
       
     
     Similarly, the N×N data frame [D b ] associated with, and transmitted by, a user “b” may thus be represented as 
     
       
         
           
             
               [ 
               
                 D 
                 b 
               
               ] 
             
             = 
             
               [ 
               
                 
                   
                     
                       0 
                       
                         1 
                         , 
                         1 
                       
                     
                   
                   
                     
                       b 
                       
                         1 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       0 
                       
                         1 
                         , 
                         n 
                       
                     
                   
                 
                 
                   
                     
                       0 
                       
                         2 
                         , 
                         1 
                       
                     
                   
                   
                     
                       b 
                       
                         2 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       0 
                       
                         2 
                         , 
                         n 
                       
                     
                   
                 
                 
                   
                     … 
                   
                   
                     … 
                   
                   
                     … 
                   
                   
                     … 
                   
                 
                 
                   
                     
                       0 
                       
                         n 
                         , 
                         1 
                       
                     
                   
                   
                     
                       b 
                       
                         n 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       0 
                       
                         n 
                         , 
                         n 
                       
                     
                   
                 
               
               ] 
             
           
         
       
     
     And user “n” sends and N×N data frame [D n ] 
     
       
         
           
             
               [ 
               
                 D 
                 n 
               
               ] 
             
             = 
             
               [ 
               
                 
                   
                     
                       0 
                       
                         1 
                         , 
                         1 
                       
                     
                   
                   
                     
                       0 
                       
                         1 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       n 
                       
                         1 
                         , 
                         n 
                       
                     
                   
                 
                 
                   
                     
                       0 
                       
                         2 
                         , 
                         1 
                       
                     
                   
                   
                     
                       0 
                       
                         2 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       n 
                       
                         2 
                         , 
                         n 
                       
                     
                   
                 
                 
                   
                     … 
                   
                   
                     … 
                   
                   
                     … 
                   
                   
                     … 
                   
                 
                 
                   
                     
                       0 
                       
                         n 
                         , 
                         1 
                       
                     
                   
                   
                     
                       0 
                       
                         n 
                         , 
                         2 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       m 
                       
                         n 
                         , 
                         n 
                       
                     
                   
                 
               
               ] 
             
           
         
       
     
     Thus, transmission of the data frames [D a ], [D b ] . . . [D n ] respectively by the users “a”, “b” “n” results in transmission of the conceptual N×N OTFS transmission matrix, with each of the users being associated with one of the columns of such conceptual transmission matrix. In this way each independent user “a”, “b” “n” transmits its N data elements during its designated slot (i.e., column) within the conceptual N×N OTFS transmission matrix, and otherwise does not transmit information. This enables signals corresponding to the data frames [D a ], [D b ] . . . [D n ] to be received at the receiver as if the conceptual N×N OTFS transmission matrix was representative of a complete data frame sent by only a single transmitter. Once so received at the receiver, the received data frames [D a ], [D b ] . . . [D n ] effectively replicate the conceptual N×N OTFS transmission matrix, which may then be deconvolved in the manner discussed above. 
       FIG.  24    depicts a time/frequency plane  2400  which illustrates the manner in which multiple users may transmit data in designated columns of a conceptual OTFS transmission matrix consistent with the preceding example. As shown, the time/frequency plane  2400  includes a first tile T 0    2410 - 1  representative of transmission, by a first user, of data in a first column of the conceptual OTFS transmission matrix. In the embodiment of  FIG.  24    the first tile T 0    2410 - 1  encompasses an entire bandwidth (BW) of the OTFS channel and extends for a duration of T f /N, where T f  denotes a total time required to transmit all of the entries within the conceptual OTFS transmission matrix. Similarly, the time/frequency plane  2400  includes a second tile T 1    2410 - 2  representative of transmission, by a second user, of data in a second column of the conceptual OTFS matrix during a second T f /N interval. In this way each of the N users are provided with a time interval of T f /N to transmit their respective N elements included within the N×N conceptual OTFS transmission matrix. 
       FIG.  25    depicts an alternative time/frequency plane  2400  which illustrates another manner in which multiple users may transmit data in designated rows of a conceptual OTFS transmission matrix consistent with the preceding example. As shown, the time/frequency plane  2500  includes a first tile T 0    2510 - 1  representative of transmission, by a first user, of data in a first row or first set of rows of the conceptual OTFS transmission matrix. In the embodiment of  FIG.  25    the first tile T 0    2510 - 1  encompasses a first portion of the entire bandwidth (BW) of the OTFS channel corresponding to the number of first rows, and the transmission extends for an entire duration T f , where T f  denotes a total time required to transmit all of the entries within the conceptual OTFS transmission matrix. Similarly, the time/frequency plane  2500  includes a second tile T 1    2510 - 2  representative of transmission, by a second user, of data in a second row or rows of the conceptual OTFS matrix encompassing a second portion of the bandwidth, and also transmitting during the entire T f  time interval. In this way each of the users are provided with a portion of the bandwidth for the entire time interval of T f  to transmit their respective N elements (or integer multiple of N elements) included within the N×N conceptual OTFS transmission matrix. 
       FIG.  26    depicts yet another time/frequency plane  2600  which illustrates another manner in which multiple users may transmit data in designated column/row portions of a conceptual OTFS transmission matrix consistent with the preceding example. As shown, the time/frequency plane  2600  includes a first tile T 0    2610 - 1  representative of transmission, by a first user, of data in one or more first columns and one or more first rows of the conceptual OTFS transmission matrix. In the embodiment of  FIG.  26    the first tile T°  2610 - 1  encompasses a portion of the entire bandwidth (BW) of the OTFS channel proportional to the number of rows in the first tile  2610 - 1 , and the transmission extends for a duration of n T f /N, where T f  denotes a total time required to transmit all of the entries within the conceptual OTFS transmission matrix and n≤N represents the number of rows that the first tile  2610 - 1  includes. Similarly, the time/frequency plane  2600  includes a second tile T 1    2610 - 2  representative of transmission, by a second user, of data in a one or more second columns and one or more second rows of the conceptual OTFS matrix during a second m T f /N interval, where m≤N represents the number of rows in the second tile  2610 - 2 . In this way each of the users are provided with a time interval of an integer multiple of T f /N to transmit their respective elements included within the N×N conceptual OTFS transmission matrix. 
     The size of the tiles in  FIGS.  24 - 26    corresponds proportionally to the amount of data provided to the corresponding user. Therefore, users with higher data rate requirements can be afforded larger portions of the [D] matrix and therefore larger tiles. In addition, users that are closer to the transmitter can be afforded larger portions of the [D] matrix while users further away may be provided smaller portions to take advantage of the efficient transmissions to close users and minimize data lost transmitting to further users. 
     Multiple users that are using different transmitters (or simply multiple transmitters) may communicate over the same communications link using the same protocol. Here, each user or transmitter may, for example, select only a small number of data elements in the N 2  sized frame of data to send or receive their respective data. As one example, a user may simply select one column of the frame of data for their purposes, and set the other columns at zero. The user&#39;s device will then compute TFS data matrices and send and receive them as usual. 
     As previously discussed, one advantage of the OTFS approach is increased resistance to Doppler shifts and frequency shifts. For example, in many cases the greater degree of time, frequency, and spectral shaping contemplated by the OTFS approach will largely mitigate any negative effects of such shifts due to the superior ability of OTFS-equipped devices to function over an impaired communications link. In other cases, because the local impaired device can be identified with greater accuracy, a base station or other transmitting device can either send corrective signals to the impaired device, or alternatively shut off the impaired device. 
     Improving Resistance to Channel Impairments 
     As previously discussed, one advantage of the OTFS method is increased resistance to communications channel impairments. This resistance to impairments can be improved by further selecting the first N×N time-frequency shifting matrix and the second N×N spectral shaping matrix to minimize the impact of an aberrant transmitter; specifically, a transmitter suffering from Doppler shift or frequency shift on the elements of the TFS data matrix that are adjacent to the elements of the TFS data matrix occupied by the aberrant transmitter. Alternatively, the receiver may analyze the problem, determine if an alternate set of first N×N time-frequency shifting matrices and/or said second N×N spectral shaping matrices would reduce the problem, and suggest or command that corresponding changes be made to corresponding transmitter(s). 
     Symbol-Based Power and Energy Considerations 
     The OTFS method also enables more sophisticated tradeoffs to be made between transmission distance, transmitter power, and information data rate than is possible to be made using conventional modulation techniques. This increased flexibility arises in part because each symbol is generally spread over a larger number of intervals relative to the case in which conventional techniques are employed. For example, in conventional time-division multiplexed communication systems the power per symbol transmitted must be quite high because the symbol is being transmitted over only one time interval. In conventional spread spectrum communication systems, the symbol is being transmitted over essentially N intervals, and the power per interval is correspondingly less. Because the OTFS method transmits a bit or symbol of information over N 2  different modalities (e.g. waveforms, times), the power per modality is much less. Among other things, this means that the effect of impulse noise, that would in general only impact a specific waveform over a specific time interval, will be less. It also means that due to increased number of signal transmission modalities (waveforms, times) enabled by the OTFS method, there are more degrees of freedom available to optimize the signal to best correspond to the particular communications link impairment situation at hand. 
     Overview of OTFS Equalization 
     Attention is now directed to  FIGS.  27 - 36   , to which reference will be made in describing various techniques for compensating for Doppler and frequency shift within an OTFS communication system. Turning now to  FIG.  27   , there is shown an exemplary process by which a receiver  2706  compensates for various types of echo reflections or other channel distortions through time deconvolution of a received signal in the manner described herein. In  FIG.  27   , wireless transmitter  2700  transmits a complex cyclically time shifted and cyclically frequency shifted wireless waveform  2702  in multiple directions using methods in accordance with the above description. The wireless transmitter  2700  could be realized using, for example, the OTFS transmitter  405  of  FIG.  4   . Some of these signals  2704  go directly to the receiver  2706 . The receiver  2706  can be, for example, the OTFS receiver  455  of  FIG.  4   . Other signals  2708  may be reflected by a wireless reflector, such as a building  2707 . These “echo” reflections  2710  travel a longer distance to reach receiver  2706 , and thus end up being time delayed. As a result, receiver  2706  receives a distorted signal  2712  that is the summation of both the original signal  2704  and the echo waveforms  2710 . 
     Since a portion of the transmitted signal  2702  is a cyclically time shifted waveform, a time deconvolution device  2714  at the receiver, such as the post-equalizer  480  of  FIG.  4   , analyzes the cyclically time varying patterns of the waveforms and effects appropriate compensation. In the embodiment of  FIG.  27    this analysis may include a type of pattern matching or the equivalent and the decomposition of the distorted, received signal back into various time-shifted versions. These time-shifted versions may include, for example, a first time-shifted version  2716  corresponding to direct signals  2704  and a second time-shifted version  2718  corresponding to the reflected signal  2710 . The time deconvolution device  2714  may also determine the time-offset  2720  necessary to cause the time delayed echo signal  2718 ,  2710  to match up with the original or direct signal  2716 ,  2704 . This time offset value  2720 , here called a time deconvolution parameter, may provide useful information as to the relative position of the echo location(s) relative to the transmitter  2700  and receiver  2706 . This parameter may also help the system characterize some of the signal impairments that occur between the transmitter and receiver. 
       FIG.  28    shows an example of how transmitting both cyclically time shifted waveforms and cyclically frequency shifted waveforms can be useful to help a receiver  2806  (such as the OTFS receiver  455 ) effect both time and frequency compensation of the received signal to compensate for both echo reflections and frequency shifts—in this example Doppler effect frequency shifts. In  FIG.  28   , a moving wireless transmitter  2800 , such as the OTFS transmitter  405 , is again transmitting a complex cyclically time shifted and cyclically frequency shifted wireless waveform  2802  in multiple directions. To simplify presentation, it is assumed that transmitter  2800  is moving perpendicular to receiver  2806  so that it is neither moving towards nor away from the receiver, and thus there are no Doppler frequency shifts relative to the receiver  2806 . It is further assumed that the transmitter  2800  is moving towards a wireless reflector, such as a building  2807 , and thus the original wireless waveform  2802  will be modified by Doppler effects, thereby shifting frequencies of the waveform  2802  towards a higher frequency (blue shifted) relative to the reflector  2807 . 
     Thus, the direct signals  2804  impinging upon the receiver  2806  will, in this example, not be frequency shifted. However the Doppler-shifted wireless signals  2808  that bounce off of the wireless reflector, here again building  2807 , will echo off in a higher frequency shifted form. These higher frequency shifted “echo” reflections  2810  also still have to travel a longer distance to reach receiver  2806 , and thus also end up being time delayed as well. As a result, receiver  2806  receives a signal  2812  that is distorted due to the summation of the direct signal  2804  with the time and frequency shifted echo waveforms  2810 . 
     However, as was described above, the OTFS techniques described herein may utilize the transmission of cyclically time shifted and frequency shifted waveforms. Accordingly, a time and frequency deconvolution device  2814  (alternatively a time and frequency adaptive equalizer such as the OTFS demodulator  460  and the OTFS post-equalizer  480  of  FIG.  4   ) within the receiver  2806  may evaluate the cyclically time varying and frequency varying patterns of the waveforms in order to decompose such waveforms back into various time-shifted and frequency shifted versions. Included among such versions are a first version  2816  corresponding to the direct signal  2804  and a second version  2818  corresponding to the frequency shifted echo waveform  2810 . In one embodiment this evaluation and decomposition may be effected using pattern matching or related techniques. At the same time, the time and frequency deconvolution device  2814  may also determine the above-referenced time deconvolution parameter and a frequency offset value  2822 , which may also be referred to herein as a frequency deconvolution parameter. These parameters may provide useful information as to the relative position of the echo location(s) relative to the transmitter  2800  and the receiver  2806 , and may also enable characterization of certain of the signal impairments that occur between the transmitter and receiver. 
     The net effect of both time and frequency deconvolutions, when applied to transmitters, receivers, and echo sources that potentially exist at different distances and velocities relative to each other, is to allow the receiver to properly interpret the impaired signal. Here, even if the energy received in the primary signal is too low to permit proper interpretation, the energy from the time and/or frequency shifted versions of the signals can be added to the primary signal upon the application of appropriate time and frequency offsets or deconvolution parameters to signal versions, thereby resulting in a less noisy and more reliable signal at the receiver. Additionally, the time and frequency deconvolution parameters can contain useful information as to the relative positions and velocities of the echo location(s) relative to the transmitter and receiver, as well as the various velocities between the transmitter and receiver, and can also help the system characterize some of the signal impairments that occur between the transmitter and receiver. 
     Thus, in some embodiments the OTFS systems described herein may also provide a method to provide an improved receiver where, due to either one or a combination of echo reflections and frequency offsets, multiple signals associated with such reflections and offsets result in the receiver receiving a time and/or frequency convolved composite signal representative of time and/or frequency shifted versions of the N 2  summation-symbol-weighted cyclically time shifted and frequency shifted waveforms. Here, the improved receiver will further time and/or frequency deconvolve the time and/or frequency convolved signal to correct for such echo reflections and the resulting time and/or frequency offsets. This will result in both time and frequency deconvolved results (i.e. signals, typically of much higher quality and lower signal to noise ratio), as well as various time and frequency deconvolution parameters that, as will be discussed, are useful for a number of other purposes. 
     Before going into a more detailed discussion of other applications, however, it is useful to first discuss the various waveforms in more detail. 
     Embodiments of the OTFS systems and methods described herein generally utilize waveforms produced by distributing a plurality of data symbols into one or more N×N symbol matrices, and using these one or more N×N symbol matrices to control the signal modulation of a transmitter. Here, for each N×N symbol matrix, the transmitter may use each data symbol to weight N waveforms, selected from an N 2 -sized set of all permutations of N cyclically time shifted and N cyclically frequency shifted waveforms determined according to an encoding matrix U, thus producing N symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms for each data symbol. This encoding matrix U is chosen to be an N×N unitary matrix that has a corresponding inverse decoding matrix U H . The method will further, for each data symbol in the N×N symbol matrix, sum the N symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms, producing N 2  summation-symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms. The transmitter will transmit these N 2  summation-symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms, structured as N composite waveforms, over any combination of N time blocks or frequency blocks. 
     As discussed above, various waveforms can be used to transmit and receive at least one frame of data [D] (composed of a matrix of up to N 2  data symbols or elements) over a communications link. Here each data symbol may be assigned a unique waveform (designated a corresponding waveform) derived from a basic waveform. 
     For example, the data symbols of the data matrix [D] may be spread over a range of cyclically varying time and frequency shifts by assigning each data symbol to a unique waveform (corresponding waveform) which is derived from a basic waveform of length N time slices (in embodiments described herein the set of N time slices correspond to the time required to transmit this waveform, also referred to as a time block), with a data symbol specific combination of a time and frequency cyclic shift of this basic waveform. 
     In one embodiment each symbol in the frame of data [D] is multiplied by its corresponding waveform, producing a series of N 2  weighted unique waveforms. Over one spreading time interval (or time block interval), all N 2  weighted unique waveforms corresponding to each data symbol in the fame of data [D] are simultaneously combined and transmitted. Further, a different unique basic waveform of length (or duration) of one time block (N time slices) may be used for each consecutive time-spreading interval (consecutive time block). Thus a different unique basic waveform corresponding to one time block may be used for each consecutive time-spreading interval, and this set of N unique waveforms generally forms an orthonormal basis. Essentially, each symbol of [D] is transmitted (in part) again and again either over all N time blocks, or alternatively over some combination of time blocks and frequency blocks (e.g. assigned frequency ranges). 
     To receive data over each block of time, the received signal is correlated with a corresponding set of all N 2  waveforms previously assigned to each data symbol by the transmitter for that specific time block. Upon performing this correlation, the receiver may produce a unique correlation score for each one of the N 2  data symbols. This process will be repeated over some combination of time blocks and frequency blocks until all N blocks are received. The original data matrix [D] can thus be reconstructed by the receiver by summing, for each data symbol, the correlation scores over N time blocks or frequency blocks, and this summation of the correlation scores will reproduce the N 2  data symbols of the frame of data [D]. 
     Note that in some embodiments, some of these N time blocks may be transmitted non-consecutively, or alternatively some of these N time blocks may be frequency shifted to an entirely different frequency range, and transmitted in parallel with other time blocks from the original set of N time blocks in order to speed up transmission time. This is discussed later and in more detail in reference to  FIG.  29   . 
     In order to enable focus to be directed to the underlying cyclically time shifted and cyclically shifted waveforms, detailed aspects of one embodiment of the OTFS methods described above may be somewhat generalized and also discussed in simplified form. For example, the operation of selecting from an N 2  set of all permutations of N cyclically time shifted and N cyclically frequency shifted waveforms may correspond, at least in part, to an optional permutation operation P as well as to the other steps discussed above. Additionally, the N 2  set of all permutations of N cyclically time shifted and N cyclically frequency shifted waveforms may be understood, for example, to be at least partially described by a Discrete Fourier transform (DFT) matrix or an Inverse Discrete Fourier Transform matrix (IDFT). This DFT and IDFT matrix can be used by the transmitter, for example, to take a sequence of real or complex numbers and modulate them into a series of different waveforms. 
     Considering now a particular example, individual rows of a DFT matrix (e.g., the DFT matrix of  FIG.  18   ) may each be used to generate a Fourier vector including set of N cyclically time-shifted and frequency-shifted waveforms. In general, the Fourier vectors may create complex sinusoidal waveforms of the type: 
     
       
         
           
             
               X 
               j 
               k 
             
             = 
             
               e 
               
                 ( 
                 
                   
                     
                       
                         - 
                         i 
                       
                       * 
                       2 
                       * 
                       π 
                       * 
                       j 
                       * 
                       k 
                     
                     ) 
                   
                   N 
                 
               
             
           
         
       
     
     where, for an N×N DFT matrix [X}, X j   k  is the coefficient of the Fourier vector in row k column j of the DFT matrix, and N is the number of columns. The products of this Fourier vector may be considered to represent one example of a manner in which the various time shifted and frequency shifted waveforms suitable for use in the OTFS system may be generated. 
     For example and as mentioned previously,  FIG.  10    shows a diagram of one example of a cyclic convolution method that a transmitter can use to encode and transmit data. In  FIG.  10   , the sum of the various [b m *X k ] components can also be termed a “composite waveform”. As a consequence, in an embodiment consistent with  FIG.  10    the full [D] matrix of symbols will ultimately be transmitted as N composite waveforms. 
     Although previously discussed,  FIG.  12    may also be understood to provide a diagram of a cyclic deconvolution method capable of being used to decode received data. More specifically, particularly in the case where [U 1 ] is composed of a cyclically permuted Legendre number of length N, the process of deconvolving the data and reconstructing the data can be understood alternatively as being a cyclic deconvolution (cyclic decoding) of the transmitted data previously convolved (encoded) by the transmitter as described in reference to  FIG.  10   . In the embodiment of  FIG.  12   , the ˜d 0 , ˜d k , ˜d N−1  elements represent the reconstructed symbols (symbols) of the data vector  1200  component of the [D] matrix (corresponding to the transmitted data vector  1000 ), the b m  coefficients again represent the base vector  1002  components of the [U 1 ] matrix, and the X j   k  coefficients can again be understood as representing the Fourier vector  1004  components of the [U 2 ] matrix. Here (R m )  1202  is a portion of the accumulated signal  1010  received and demodulated by the receiver. 
     As described above with reference to  FIGS.  24 - 26   , different tiling schemes for proportioning the rows (frequency offsets) and columns (time offsets) of the data matrix [D] can be utilized to provide for multiple users to transmit data over multiple time/frequency offset blocks in the same data matrix [D]. These tiling schemes can be utilized differently depending on the type(s) of motion and reflected signals and the resulting time and frequency offsets that a transmitter and receiver are experiencing. Some exemplary methods for utilizing different time/frequency blocks will now be described with reference to  FIGS.  29 - 30   . 
     Referring now to  FIG.  29   , there are shown various transmitted waveform blocks  2900  can be transmitted as a series of N consecutive time blocks (i.e. no other blocks in between). These consecutive time blocks can either be a contiguous series  2902  (i.e. with minimal or no time gaps in between various waveform blocks) or they can be a sparsely contiguous series  2904  (i.e. with time gaps between the various waveform bocks, which may in some embodiments be used for synchronization, hand shaking, listening for other user&#39;s transmitters, channel assessment and other purposes. Alternatively, the various waveform time blocks can be transmitted either time-interleaved with the blocks from one or more different symbol matrices  2906 ,  2908  (which in some cases may be from a different transmitter) in a contiguous or sparse interleaved manner as shown in series  2910 . 
     As yet another alternative, some of the various waveform time blocks may be frequency transposed to entirely different frequency bands or ranges  2912 ,  2914 ,  2916 . This can speed up transmission time, because now multiple waveform time blocks can now be transmitted at the same time as different frequency blocks. As shown in time/frequency offset tiles  2918  and  2920 , such multiple frequency band transmissions can also be done on a contiguous, sparse contiguous, contiguous interleaved, or sparse contiguous interleaved manner. Here  2922  and  2928  represent one time block at a first frequency range  2912 , and  2924  and  2930  represent the next time block at the frequency range  2912 . Here the various frequency ranges  2912 ,  2914 , and  2916  can be formed, as will be described shortly, by modulating the signal according to different frequency carrier waves. Thus, for example, frequency range or band  2912  might be transmitted by modulating a 1 GHz frequency carrier wave, frequency range or band  2914  might be transmitted by modulating a 1.3 GHz frequency carrier wave, and band  2915  might be transmitted by modulating a 1.6 GHz frequency carrier wave, and so on. 
     Stated differently, the N composite waveforms, themselves derived from the previously discussed N 2  summation-symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms, may be transmitted over at least N time blocks. These N time blocks may be either transmitted consecutively in time (e.g.  2902 ,  2904 ) or alternatively transmitted time-interleaved with the N time blocks from a second and different N×N symbol matrix. 
       FIG.  30    shows that the various composite waveform blocks transmitted by the transmitter can be either transmitted as shorter duration time blocks over one or more wider frequency ranges, or as longer duration time blocks over one or more narrower frequency ranges. That is,  FIG.  30    shows exemplary tradeoffs between frequency bandwidth and time made available through use of embodiments of the OTFS method. Whereas in time/frequency tile  2940 , the available bandwidth for each frequency range  2912 ,  2914 , and  2916  is relatively large, in  2942 , the available bandwidth for each frequency range  2932 ,  2934  and  2936  is considerably less. Here, the OTFS scheme can compensate for narrower frequency ranges by allowing more time per time block. Thus where as in time/frequency tile  2940 , with high bandwidth available, the time blocks  2922  and  2924  can be shorter, in time/frequency tile  2942 , with lower bandwidth available, the time blocks  2926  for transmitting the composite waveform is longer. 
     For both  FIGS.  29  and  30    then, if there is only one fundamental carrier frequency, then all N blocks are transmitted consecutively in time as N time blocks. If there are less than N multiple fundamental carrier frequencies available, then all N blocks can be transmitted as some combination of N time blocks and N frequency blocks. If there are N or more fundamental frequencies available, then all N blocks can be transmitted over the duration of 1 time block as N frequency blocks. 
     Attention is now again directed to  FIG.  21   , to which reference will be made in describing an exemplary pre-equalization scheme. As was described previously, the transmitter  2100  is configured to transmit a series of N consecutive waveform time blocks where each time block encompasses a set of N time slices. During every successive time slice, one element from the OTFS matrix  2108  can be used to control the modulation circuit  2104 . As was also previously discussed, the modulation scheme may be one in which the element will be separated into its real and imaginary components, chopped and filtered, and then used to control the operation of a sin and cosine generator, producing a composite analog waveform  2120 . The net, effect, by the time that the entire original N×N data symbol matrix [D] is transmitted, is to transmit the data in the form of N 2  summation-symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms, structured as N composite waveforms. 
     In some embodiments the transmitter  2100  may further implement a pre-equalization operation, typically performed by the pre-equalizer  410  of  FIG.  4   , which involves processing the [D] matrix prior to providing it to the analog modulation circuit  2102 . When this pre-equalization operation is performed, the transmitter  2100  outputs pre-equalized OTFS signals  2130 ; otherwise, the transmitter simply outputs the OTFS signals  2120 . The pre-equalization operation may be performed when, for example, the receiver in communication with the transmitter  2100  detects that an OTFS signal  2120  has been subjected to specific echo reflections and/or frequency shifts. Upon so detecting such echo reflections and/or frequency shifts, the receiver may transmit corrective information to the transmitter pertinent to such reflections and shifts. The pre-equalizer  410  may then shape subsequently-transmitted pre-equalized OTFS signals so as to compensate for these echo reflections and/or frequency shift. Thus, for example, if the receiver detects an echo delay, the pre-equalizer  410  may send the signal with an anti-echo cancellation waveform. Similarly, if the receiver detects a frequency shift, the pre-equalizer  410  can introduce a compensatory reverse frequency shift into the transmitted pre-equalization signal  2130 . 
       FIG.  31    illustrates exemplary receiver processing section  3110  operative to compensate for the effects of echo reflections and frequency shifts. Referring to  FIG.  31   , the receiver processing section  3110  includes a cyclic deconvolution processing block  3106  and an equalizer  3102 . The equalizer  3102  performs a series of math operations and outputs equalization parameters  3108  that can also give information pertaining to the extent to which the echo reflections and frequency shifts distorted the underlying signal. The equalizer  3102 A can be, for example, an adaptive equalizer. 
     In  FIG.  31   , it is assumed that the composite transmitted waveform has, since transmission, been distorted by various echo reflections and/or frequency shifts as previously shown in  FIGS.  27  and  28   . This produces a distorted waveform  3100 , which for simplicity is represented through a simple echo reflection delayed distortion. In  FIG.  31   , equalizer  3102  is configured to reduce or substantially eliminate such distortion by analyzing the distorted waveform  3100  and, assisted by the knowledge that the original composite waveform was made up of N cyclically time shifted and N cyclically frequency shifted waveforms, determine what sort of time offsets and frequency offsets will best deconvolve distorted waveform  3100  back into a close representation of the original waveform, which is represented in  FIG.  31    as deconvolved waveform  3104 . The equalization operations performed by equalizer  3102  may alternately be carried out by the cyclic deconvolution device  3106 . 
     In one embodiment the equalizer  3102  produces a set of equalization parameters  3108  during the process of equalizing the distorted waveform. For example, in the simple case where the original waveform was distorted by only a single echo reflection offset by time t offset , and by the time the original waveform and the t offset  echo waveform reach the receiver, the resulting distorted signal  3100  may be, for example, about 90% original waveform and 10% t offset  echo waveform, then the equalization parameters  3108  can output both the 90% original and 10% echo signal mix, as well as the t offset  value. Typically, of course, the actual distorted signal  3100  could consist of a number of various time and frequency offset components, and here again, in addition to cleaning this distortion, the equalizer  3102  can also report the various time offsets, frequency offsets, and percentage mix of the various components of signal  3100  to the transmitter and/or the receiver. 
     As previously discussed in  FIGS.  29  and  30   , the various composite waveforms in the N time blocks can be transmitted in various ways. In addition to time consecutive transmission, i.e. a first block, followed (often by a time gap which may optionally be used for handshaking or other control signals) by a second time block and then a third time block, the various blocks of composite waveforms can be transmitted by other schemes. 
     In some embodiments, for example in network systems where there may be multiple transmitters and potentially also multiple receivers, it may be useful to transmit the data from the various transmitters using more than one encoding method. Here, for example, a first set of N time blocks may transmit data symbols originating from a first N×N symbol matrix from a first transmitter using a first unitary matrix [U 1 ]. A second set of N time blocks may transmit data symbols originating from a second N×N symbol matrix from a second transmitter using a second unitary matrix [U 2 ]. Depending on the embodiment, [U 1 ] and [U 2 ] may be identical or different. Because the signals originating from the first transmitter may encounter different impairments (e.g. different echo reflections, different frequency shifts), some schemes of cyclically time shifted and cyclically frequency shifted waveforms may operate better than others. Thus, these waveforms, as well as the unitary matrices [U 1 ] and [U 2 ], may be selected based on the characteristics of these particular echo reflections, frequency offsets, and other signal impairments of the system and environment of the first transmitter, the second transmitter and/or the receiver. 
     As an example, a receiver configured to implement equalization in accordance with  FIG.  31    may, based upon the equalization parameters  3108  which it derives, elect to propose an alternative set of cyclically time shifted and cyclically frequency shifted waveforms intended to provide superior operation in view of the current environment and conditions experienced by such receiver. In this case the receiver could transmit this proposal (or command) to the corresponding transmitter(s). This type of “handshaking” can be done using any type of signal transmission and encoding scheme desired. Thus in a multiple transmitter and receiver environment, each transmitter may attempt to optimize its signal so that its intended receiver is best able to cope with the impairments unique to communication between the transmitter and receiver over the communications channel therebetween. 
     In some cases, before transmitting large amounts of data, or any time as desired, a given transmitter and receiver may choose to more directly test the various echo reflections, frequency shifts, and other impairments of the transmitter and receiver&#39;s system and environment. This can be done, by, for example having the transmitter send a test signal where the plurality of data symbols are selected to be test symbols known to the receiver (e.g., the receiver may have stored a record of these particular test symbols). Since in this case the receiver will be aware of exactly what sort of signal it should receive in the absence of any impairment, the equalizer  3102  will generally be able to provide even more accurate time and frequency equalization parameters  3108  for use by the receiver relative to the case in which the receiver lacks such awareness. Thus, in this case the equalization parameters provide even more accurate information relating to the characteristics of the echo reflections, frequency offsets, and other signal impairments of the system and environment of the applicable transmitter(s) and the receiver. This more accurate information may be used by the receiver to suggest or command that the applicable transmitter(s) shift to use of communications schemes (e.g., to U matrices) more suitable to the present situation. 
     In some embodiments, when the transmitter is a wireless transmitter and the receiver is a wireless receiver, and the frequency offsets are caused by Doppler effects, the more accurate determination of the deconvolution parameters, i.e. the characteristics of the echo reflections and frequency offsets, can be used to determine the location and velocity of at least one object in the environment of the transmitter and receiver. 
     Examples of OTFS Equalization Techniques 
     This section includes a description of a number of exemplary OTFS equalization techniques capable of being implemented consistent with the general OTFS equalization approach and apparatus discussed above. However, prior to describing such exemplary techniques, a summary of aspects of transmission and reception of OTFS-modulated signals is given in order to provide an appropriate context for discussion of these OTFS equalization techniques. 
     Turning now to such a summary of OTFS signal transmission and reception, consider the case in which a microprocessor-controlled transmitter packages a series of different symbols “d” (e.g. d 1 , d 2 , d 3  . . . ) for transmission by repackaging or distributing the symbols into various elements of various N×N matrices [D]. In one implementation such distribution may, for example, include assigning d 1  to the first row and first column of the [D] matrix (e.g. d 1 =d 0,0 ), d 2  to the first row, second column of the [D] matrix (e.g. d 2 =d 0,1 ) and so on until all N×N symbols of the [D] matrix are full. Here, if the transmitter runs out of “d” symbols to transmit, the remaining [D] matrix elements can be set to be 0 or other value indicative of a null entry. 
     The various primary waveforms used as the primary basis for transmitting data, which here will be called “tones” to show that these waveforms have a characteristic sinusoid shape, can be described by an N×N Inverse Discrete Fourier Transform (IDFT) matrix [W], where for each element w in [W], 
               w     j   ,   k       =     e       i   ⁢   2   ⁢   π   ⁢   jk     N             
or alternatively
 
               w     j   ,   k       =     e     ij   ⁢     θ   k               
or
 
               w     j   ,   k       =         [     e     i   ⁢     θ   k         ]     j     .           
Thus the individual data elements d in [D] are transformed and distributed as a combination of various fundamental tones w by a matrix multiplication operation [W]*[D], producing a tone transformed and distributed form of the data matrix, here described by the N×N matrix [A], where [A]=[W]*[D].
 
     To produce N cyclically time shifted and N cyclically frequency shifted waveforms, the tone transformed and distributed data matrix [A] is then itself further permuted by modular arithmetic or “clock” arithmetic, thereby creating an N×N matrix [B], including each element b of [B], b i,j =a i,(i+j)mod N . This can alternatively be expressed as [B]=Permute([A])=P(IDFT*[D]). Thus the clock arithmetic controls the pattern of cyclic time and frequency shifts. 
     The previously described unitary matrix [U] can then be used to operate on [B], producing an N×N transmit matrix [T], where [T]=[U]*[B], thus producing an N 2  sized set of all permutations of N cyclically time shifted and N cyclically frequency shifted waveforms determined according to an encoding matrix [U]. 
     Put alternatively, the N×N transmit matrix [T]=[U]*P(IDFT*[D]). 
     Then, typically on a per column basis, each individual column of N is used to further modulate a frequency carrier wave (e.g. if transmitting in a range of frequencies around 1 GHz, the carrier wave will be set at 1 GHz). In this case each N-element column of the N×N matrix [T] produces N symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms for each data symbol. Effectively then, the transmitter is transmitting the sum of the N symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms from one column of [T] at a time as, for example, a composite waveform over a time block of data. Alternatively, the transmitter could instead use a different frequency carrier wave for the different columns of [T], and thus for example transmit one column of [T] over one frequency carrier wave, and simultaneously transmit a different column of [T] over a different frequency carrier wave, thus transmitting more data at the same time, although of course using more bandwidth to do so. This alternative method of using different frequency carrier waves to transmit more than one column of [T] at the same time will be referred to as frequency blocks, where each frequency carrier wave is considered its own frequency block. 
     Thus, since the N×N matrix [T] has N columns, the transmitter will transmit the N 2  summation-symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms, structured as N composite waveforms, over any combination of N time blocks or frequency blocks, as previously shown in  FIGS.  29  and  30   . 
     On the receiver side, the transmit process is essentially reversed. Here, for example, a microprocessor controlled receiver would of course receive the various columns [T] (e.g., receive the N composite waveforms, also known as the N symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms) over various time blocks or frequency blocks as desired for that particular application. In cases in which sufficient bandwidth is available and time is of the essence, the transmitter may transmit the data as multiple frequency blocks over multiple frequency carrier waves. On the other hand, if available bandwidth is more limited, and/or time (latency) is less critical, then the transmit will transmit and the receiver will receive over multiple time blocks instead. 
     During operation the receiver may effectively tune into the one or more frequency carrier waves, and over the number of time and frequency blocks set for the particular application, eventually receive the data or coefficients from the original N×N transmitted matrix [T] as an N×N receive matrix [R]. In the general case [R] will be similar to [T], but may not be identical due to the existence of various impairments between the transmitter and receiver. 
     The microprocessor controlled receiver then reverses the transmit process as a series of steps that mimic, in reverse, the original transmission process. The N×N receive matrix [R] is first decoded by inverse decoding matrix [U H ], producing an approximate version of the original permutation matrix [B], here called [B R ], where [B R ]=([U H ]*[R]). 
     The receiver then does an inverse clock operation to back out the data from the cyclically time shifted and cyclically frequency shifted waveforms (or tones) by doing an inverse modular mathematics or inverse clock arithmetic operation on the elements of the N×N [B R ] matrix, producing, for each element b R  of the N×N [B R ] matrix, a i,j   R =b i,(j−i(mod N   R . This produces a de-cyclically time shifted and de-cyclically frequency shifted version of the tone transformed and distributed form of the data matrix [A], which may hereinafter be referred to as [A R ]. Put alternatively, [A R ]=Inverse Permute ([B R ]), or [A R ]=P −1 ([U H ]*[R]). 
     The receiver then further extracts at least an approximation of the original data symbols d from the [A R ] matrix by analyzing the [A] matrix using an N×N Discrete Fourier Transform matrix DFT of the original Inverse Fourier Transform matrix (IDFT). 
     Here, for each received symbol d R , the d R  are elements of the N×N received data matrix [D R ] where [D R ]=DFT*A R , or alternatively [D R ]=DFT*P −1 ([U H ]*[R]). 
     Thus the original N 2  summation-symbol-weighted cyclically time shifted and cyclically frequency shifted waveforms are subsequently received by a receiver which is controlled by the corresponding decoding matrix U H  (also represented as [U H ]) The processor of the receiver uses this decoding matrix [U H ] to reconstruct the various transmitted symbols “d” in the one or more originally transmitted N×N symbol matrices [D] (or at least an approximation of these transmitted symbols). 
     Turning now to a discussion of various exemplary OTFS equalization techniques, there exist at least several general approaches capable of being used correct for distortions caused by the signal impairment effects of echo reflections and frequency shifts. One approach leverages the fact that the cyclically time shifted and cyclically frequency shifted waveforms or “tones” form a predictable time-frequency pattern. In this scheme a deconvolution device situated at the receiver&#39;s front end may be straightforwardly configured to recognize these patterns, as well as the echo-reflected and frequency shifted versions of these patterns, and perform the appropriate deconvolutions by a pattern recognition process. Alternatively the distortions may be mathematically corrected using software routines, executed by the receiver&#39;s processor, designed to essentially determine the various echo reflected and frequency shifting effects, and solve for these effects. As a third alternative, once, by either process, the receiver determines the time and frequency equalization parameters of the communication media&#39;s particular time and frequency distortions, the receiver may transmit a command to the transmitter to instruct the transmitter to essentially pre-compensate or pre-encode, e.g., by using a pre-equalizer such as the pre-equalizer  410  of  FIG.  4   , for these effects. That is, if for example the receiver detects an echo, the transmitter can be instructed to transmit in a manner that offsets this echo, and so on. 
       FIG.  32 A  illustrates an exemplary system in which echo reflections and frequency shifts (e.g., Doppler shifts caused by motion) of a channel H c  can blur or be distorted by additive noise  3202 . The time and frequency distortions can be modeled as a 2-dimensional filter H c  acting on the data array. This filter H c  represents, for example, the presence of multiple echoes with time delays and Doppler shifts. To reduce these distortions, the signal can be pre-equalized, e.g., using the pre-equalizer  3208 , before the signal  3200  is transmitted by the transmitter  3204  over the channel to the receiver  3205  and subsequently post-equalized, using the post-equalizer  3206 , after the D R  matrix has been recovered at  3206 . This equalization process may be performed by, for example, using digital processing techniques. The equalized form of the received D matrix, which ideally will completely reproduce the original D matrix, may be referred to hereinafter as D eq . 
       FIG.  32 B  shows an example of an adaptive linear equalizer  3240  that may be used to implement the post-equalizer  3206  in order to correct for such distortions. The adaptive linear equalizer  3240 , which may also be used as the equalizer  3102 , may operate according to the function: 
     
       
         
           
             
               Y 
               ⁡ 
               ( 
               k 
               ) 
             
             = 
             
               
                 
                   ∑ 
                   
                     l 
                     = 
                     
                       L 
                       C 
                     
                   
                   
                     R 
                     C 
                   
                 
                 
                   
                     C 
                     ⁡ 
                     ( 
                     l 
                     ) 
                   
                   * 
                   
                     X 
                     ⁡ 
                     ( 
                     
                       k 
                       - 
                       l 
                     
                     ) 
                   
                 
               
               + 
               
                 η 
                 ⁡ 
                 ( 
                 k 
                 ) 
               
             
           
         
       
     
     Mathematical Underpinnings of Two Dimensional Equalization 
     An exemplary equalization mechanism associated with the OTFS modulation, which is inherently two dimensional, is discussed below. This is in contrast to its one dimensional counterpart in conventional modulation schemes such as, for example, OFDM and TDMA. 
     Assume that the input symbol stream provided to an OTFS transmitter is a digital function X∈  (R d ×R d ) with values in specific finite constellation C⊂  (either QPSK or higher QAM&#39;s, for example). This transmitter modulates this input stream into an analog signal Φ Tx,Pass , which is then transmitted. During the transmission Φ Tx,Pass  undergo a multipath channel distortion. The distorted passband signal Φ Tx,Pass  arrives at the OTFS receiver and is demodulated back into a digital function Y∈  (R d ×R d ), which may be referred to herein as the output stream. The locality properties of OTFS modulation imply that the net effect of the multipath channel distortion is given by a cyclic two dimensional convolution with a two dimensional channel impulse response. See  FIGS.  53  and  54   . 
     Referring to  FIG.  53   , an illustration is provided of a two-dimensional channel impulse. Smear along the time axis represents multipath reflections causing time delay while smear along the frequency axis represents multipath reflectors causing Doppler shifts. In  FIGS.  54 A- 54 C , input and output streams are depicted after two-dimensional channel distortion. Specifically,  FIG.  54 A  represents the two-dimensional channel impulse,  FIG.  54 B  represents a portion of the input stream and  FIG.  54 B  depicts the same portion after convolution with the channel and additive noise. 
     In what follows an appropriate equalization mechanism will be described. To this end, it will be convenient to enumerate the elements of the digital time axis by 0, 1, . . . , N−1 and to consider the input and output streams X and Y, respectfully, as sequences of functions:
 
 X =( X ( k )∈ ( R   d ): k= 0, . . . , N− 1),
 
 Y =( Y ( k )∈ ( R   d ): k= 0, . . . , N− 1),
 
     where X(k)(i)=X(k, i) and Y(k)(i)=Y(k, i), for every k=0, N−1 and i∈R d . 
     Furthermore, for purposes of explanation it will be assumed that the time index k is infinite in both directions, that is, k∈ , the digital time direction is linear, and the digital frequency direction is cyclic. Under these conventions the relation between the output stream and the input stream can be expressed by the following Equation (1.1): 
     
       
         
           
             
               
                 
                   
                     
                       Y 
                       ⁡ 
                       ( 
                       k 
                       ) 
                     
                     = 
                     
                       
                         
                           ∑ 
                           
                             L 
                             = 
                             Lc 
                           
                           Rc 
                         
                         
                           
                             C 
                             ⁡ 
                             ( 
                             l 
                             ) 
                           
                           ⋆ 
                           
                             X 
                             ⁡ 
                             ( 
                             
                               k 
                               - 
                               l 
                             
                             ) 
                           
                         
                       
                       + 
                       
                         𝔑 
                         ⁡ 
                         ( 
                         k 
                         ) 
                       
                     
                   
                   , 
                 
               
               
                 1.1 
               
             
           
         
       
     
     where:
         C=(C(l)∈ (R d ): l=L C , . . . , R C ) are the channel impulse taps. Typically, L C ∈  and R C ∈ . The number n C =R C −L C +1 may be referred to herein as the memory length of the channel. The operation * in (4.1) stands for one dimensional cyclic convolution on the ring R d .     (k)∈(0, N 0 −Id N ) is a complex Gaussian N dimensional vector with mean 0 and covariance matrix N 0 ·Id, representing the white Gaussian noise.       

     Referring now to  FIG.  32 C , there is shown an exemplary adaptive decision feedback equalizer  3250  capable of being utilized as the equalizer  3102  ( FIG.  31   ). The adaptive decision feedback equalizer  3250  both shifts the echo and frequency shifted signals on top of the main signal in a forward feedback process  3210 , and also then uses feedback signal cancelation methods to further remove any residual echo and frequency shifted signals in  3312 . The method then effectively rounds the resulting signals to discrete values. 
     The adaptive decision feedback equalizer  3250  may, in some embodiments, operate according to the function: 
                       X   s     (   k   )     =         ∑     l   =     L   F         R   F           F   ⁡   (   l   )     *     Y   ⁡   (     k   +   l     )         -       ∑     l   -     L   B         -   1           B   ⁡   (   l   )     *       X   h     (     k   +   l     )                               Where  X   H ( k )= Q ( X   s ( k )) 
     Where 
     Decision Feedback Least Mean Square Estimator (DF-LMS) with Locked Carrier Frequency 
     An exemplary decision feedback LMS equalizer adapted to the relation expressed in Equation (1.1) will now be described under the condition that the carrier frequency is locked between the transmitter and receiver, that is, W Tx =W Rx . An adaptation of the equalizer under the condition of the existence of a non-zero discrepancy, i.e., ΔW≠0, will subsequently be described. In one aspect, the equalizer incorporates a forward filter and a feedback filter as follows:
 
Forward filter:  F =( F ( l )∈ ( R   d ): l=L   F   , . . . ,R   F ),
 
Feedback filter:  B =( B ( l )∈( R   d ): l=L   B , . . . ,−1),
 
     where, typically L F , L B ∈  and R F ∈  satisfy L F , L B ≥L C  and R F   R C . In fact, both filters depend on additional parameter k∈  designating the present point on the digital time axis, hence, the complete notation for the filter taps is F k  (l) and B k  (l). However, for the sake of presentation this additional index will generally be omitted and will only be included when necessary. A soft estimator is defined as follows: 
                       X   s     (   k   )     =         ∑     l   =     L   F         R   F           F   ⁡   (   l   )     *     Y   ⁡   (     k   +   l     )         -       ∑     l   -     L   B         -   1           B   ⁡   (   l   )     *         X   h     (     k   +   l     )     .                 1.2             
where X h  (k+l) is the past hard estimation of the past data vector X(k+l), l=L B , . . . , −1, defined as the quantization X h  (k) Q (X 8 (k)), that is:
 
     
       
         
           
             
               
                 
                   
                     
                       
                         X 
                         h 
                       
                       ( 
                       k 
                       ) 
                     
                     ⁢ 
                     
                       ( 
                       i 
                       ) 
                     
                   
                   = 
                   
                     arg 
                     
                       min 
                       
                         p 
                         ∈ 
                         𝒞 
                       
                     
                     
                       
                         
                           ❘ 
                           &#34;\[LeftBracketingBar]&#34; 
                         
                         
                           
                             
                               
                                 X 
                                 s 
                               
                               ( 
                               k 
                               ) 
                             
                             ⁢ 
                             
                               ( 
                               i 
                               ) 
                             
                           
                           - 
                           p 
                         
                         
                           ❘ 
                           &#34;\[RightBracketingBar]&#34; 
                         
                       
                       . 
                     
                   
                 
               
               
                 1.3 
               
             
           
         
       
     
     Computation of Initial Forward and Feedback Filter Taps 
     In one aspect, a closed formula may be used to determine the forward and feedback filter taps of the decision feedback equalizer expressed in terms of the channel impulse response. In this case the forward filter taps are computed without regard to feedback and then the feedback filter taps are determined. 
     Computation of the Forward Filter Taps 
     First fix k=0 and let X 8  denote the following soft estimator for the vector X(0), which depends only upon the forward filter taps: 
     
       
         
           
             
               
                 
                   
                     X 
                     s 
                   
                   = 
                   
                     
                       ∑ 
                       
                         l 
                         = 
                         
                           L 
                           F 
                         
                       
                       
                         R 
                         F 
                       
                     
                     
                       
                         F 
                         ⁡ 
                         ( 
                         l 
                         ) 
                       
                       * 
                       
                         
                           Y 
                           ⁡ 
                           ( 
                           l 
                           ) 
                         
                         . 
                       
                     
                   
                 
               
               
                 1.7 
               
             
           
         
       
     
     In what follows it is assumed that X(k)˜ (0,P·Id N ), for every k∈ . Later this condition may be replaced by the condition that X(k)˜C (0, P·Id N ), for k≥0 and X(k)=0 for k&lt;0, which is more adapted to the choice of X 8 . We denote by Err=Err (0) the soft error term:
 
Err= X   s   −X (0)  1.8
 
     We consider the cost function:
 
 U ( F )= ∥Err∥ 2   =     ∥X   s   −X (0)∥ 2 ,
 
where the expectation is taken over the probability distribution of the input stream X and the additive white Gaussian noise  . The optimal filter F opt  is defined as:
 
                 F   opt     =     arg     min   F       U   ⁡   (   F   )         ,         
therefore it satisfies the following system of linear equations:
 
∇ F(l)   U ( F   opt )=0, l=L   F   , . . . ,R   F .  1.9
 
     The formula for the gradient ∇F (l) U is an averaged version of (1.6), that is: 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           
                             ∇ 
                             
                               F 
                               ⁡ 
                               ( 
                               l 
                               ) 
                             
                           
                           U 
                         
                         = 
                         
                           
                             𝔼 
                             [ 
                             
                               Err 
                               * 
                               
                                 
                                   Y 
                                   ⁡ 
                                   ( 
                                   l 
                                   ) 
                                 
                                 ★ 
                               
                             
                             ] 
                           
                           = 
                           
                             𝔼 
                             [ 
                             
                               
                                 ( 
                                 
                                   
                                     X 
                                     s 
                                   
                                   - 
                                   
                                     X 
                                     ⁡ 
                                     ( 
                                     0 
                                     ) 
                                   
                                 
                                 ) 
                               
                               * 
                               
                                 
                                   Y 
                                   ⁡ 
                                   ( 
                                   l 
                                   ) 
                                 
                                 ★ 
                               
                             
                             ] 
                           
                         
                       
                     
                   
                   
                     
                       
                         = 
                         
                           
                             𝔼 
                             [ 
                             
                               
                                 X 
                                 s 
                               
                               * 
                               
                                 
                                   Y 
                                   ⁡ 
                                   ( 
                                   l 
                                   ) 
                                 
                                 ★ 
                               
                             
                             ] 
                           
                           - 
                           
                             
                               𝔼 
                               [ 
                               
                                 
                                   X 
                                   ⁡ 
                                   ( 
                                   0 
                                   ) 
                                 
                                 * 
                                 
                                   
                                     Y 
                                     ⁡ 
                                     ( 
                                     l 
                                     ) 
                                   
                                   ★ 
                                 
                               
                               ] 
                             
                             . 
                           
                         
                       
                     
                   
                 
               
               
                 1.1 
               
             
           
         
       
     
     We first compute the term  [X(0)*Y(l)★] and then the term  [X s *Y(l)★]. Developing the expression X(0)*Y(l))★ we obtain: 
     
       
         
           
             
               
                 X 
                 ⁡ 
                 ( 
                 0 
                 ) 
               
               * 
               
                 
                   Y 
                   ⁡ 
                   ( 
                   l 
                   ) 
                 
                 ★ 
               
             
             = 
             
               
                 ∑ 
                 
                   
                     l 
                     ′ 
                   
                   = 
                   
                     L 
                     F 
                   
                 
                 
                   R 
                   F 
                 
               
               
                 
                   X 
                   ⁡ 
                   ( 
                   0 
                   ) 
                 
                 * 
                 
                   
                     X 
                     ⁡ 
                     ( 
                     
                       l 
                       - 
                       
                         l 
                         ′ 
                       
                     
                     ) 
                   
                   ★ 
                 
                 * 
                 
                   
                     
                       C 
                       ⁡ 
                       ( 
                       
                         l 
                         ′ 
                       
                       ) 
                     
                     ★ 
                   
                   . 
                 
               
             
           
         
       
     
     We observe that  [X(0)*X(k)★]=0 when l≠0 and  [X(0)*X(0)★]=NP·δ w=0 , hence we conclude that:
 
 [ X (0)* Y ( l ) ★ ]= NP·δ   w=0   *C ( l ) ★   =NP·C ( l ) ★ .  1.11
 
     Next, we compute the term  [X s *Y(l)*]: 
     
       
         
           
             
               
                 
                   
                     𝔼 
                     [ 
                     
                       
                         X 
                         s 
                       
                       * 
                       
                         
                           Y 
                           ⁡ 
                           ( 
                           l 
                           ) 
                         
                         ★ 
                       
                     
                     ] 
                   
                   = 
                   
                     
                       ∑ 
                       
                         
                           l 
                           ′ 
                         
                         = 
                         
                           L 
                           F 
                         
                       
                       
                         R 
                         F 
                       
                     
                     
                       
                         F 
                         ⁡ 
                         ( 
                         
                           l 
                           ′ 
                         
                         ) 
                       
                       * 
                       
                         
                           𝔼 
                           [ 
                           
                             
                               Y 
                               ⁡ 
                               ( 
                               
                                 l 
                                 ′ 
                               
                               ) 
                             
                             * 
                             
                               Y 
                               ⁡ 
                               ( 
                               l 
                               ) 
                             
                           
                           ] 
                         
                         . 
                       
                     
                   
                 
               
               
                 1.12 
               
             
           
         
       
     
     Developing the expression for Y(l′)*Y(l) we obtain: 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           
                             Y 
                             ⁡ 
                             ( 
                             
                               l 
                               ′ 
                             
                             ) 
                           
                           * 
                           
                             Y 
                             ⁡ 
                             ( 
                             l 
                             ) 
                           
                         
                         = 
                           
                         
                           
                             ( 
                             
                               
                                 
                                   ∑ 
                                   
                                     r 
                                     = 
                                     
                                       L 
                                       C 
                                     
                                   
                                   
                                     R 
                                     C 
                                   
                                 
                                 
                                   
                                     C 
                                     ⁡ 
                                     ( 
                                     r 
                                     ) 
                                   
                                   * 
                                   
                                     X 
                                     ⁡ 
                                     ( 
                                     
                                       
                                         l 
                                         ′ 
                                       
                                       - 
                                       r 
                                     
                                     ) 
                                   
                                 
                               
                               + 
                               
                                 𝔑 
                                 ⁡ 
                                 ( 
                                 
                                   l 
                                   ′ 
                                 
                                 ) 
                               
                             
                             ) 
                           
                           * 
                         
                       
                     
                   
                   
                     
                       
                           
                         
                           ( 
                           
                             
                               
                                 ∑ 
                                 
                                   s 
                                   = 
                                   
                                     L 
                                     C 
                                   
                                 
                                 
                                   R 
                                   C 
                                 
                               
                               
                                 
                                   C 
                                   ⁡ 
                                   ( 
                                   s 
                                   ) 
                                 
                                 * 
                                 
                                   X 
                                   ⁡ 
                                   ( 
                                   
                                     l 
                                     - 
                                     s 
                                   
                                   ) 
                                 
                               
                             
                             + 
                             
                               𝔑 
                               ⁡ 
                               ( 
                               l 
                               ) 
                             
                           
                           ) 
                         
                       
                     
                   
                   
                     
                       
                         = 
                           
                         
                           
                             
                               ∑ 
                               
                                 s 
                                 = 
                                 
                                   L 
                                   C 
                                 
                               
                               
                                 R 
                                 C 
                               
                             
                             
                               
                                 ∑ 
                                 
                                   r 
                                   = 
                                   
                                     L 
                                     C 
                                   
                                 
                                 
                                   R 
                                   C 
                                 
                               
                               
                                 
                                   
                                     C 
                                     ⁡ 
                                     ( 
                                     s 
                                     ) 
                                   
                                   ★ 
                                 
                                 * 
                                 
                                   C 
                                   ⁡ 
                                   ( 
                                   r 
                                   ) 
                                 
                                 * 
                                 
                                   X 
                                   ⁡ 
                                   ( 
                                   
                                     l 
                                     - 
                                     s 
                                   
                                   ) 
                                 
                                 * 
                                 
                                   X 
                                   ⁡ 
                                   ( 
                                   
                                     
                                       l 
                                       ′ 
                                     
                                     - 
                                     r 
                                   
                                   ) 
                                 
                               
                             
                           
                           + 
                         
                       
                     
                   
                   
                     
                       
                           
                         
                           
                             
                               𝔑 
                               ⁡ 
                               ( 
                               
                                 l 
                                 ′ 
                               
                               ) 
                             
                             * 
                             
                               𝔑 
                               ⁡ 
                               ( 
                               l 
                               ) 
                             
                           
                           + 
                           
                             Additional 
                             ⁢ 
                                 
                             
                               Terms 
                               . 
                             
                           
                         
                       
                     
                   
                 
               
               
                 1.13 
               
             
           
         
       
     
     Denote R(l, l′)=1/NP· [Y(l′)*Y(l)]. Taking the expectation of both sides of (1.13) we obtain the following explicit formula for R(l, l′): 
     
       
         
           
             
               
                 
                   
                     R 
                     ⁡ 
                     ( 
                     
                       l 
                       , 
                       
                         l 
                         ′ 
                       
                     
                     ) 
                   
                   = 
                   
                     { 
                     
                       
                         
                           
                             
                               
                                 
                                   ∑ 
                                   
                                     s 
                                     , 
                                     
                                       r 
                                       = 
                                       
                                         L 
                                         C 
                                       
                                     
                                   
                                   
                                     R 
                                     C 
                                   
                                 
                                 
                                   
                                     s 
                                     - 
                                     r 
                                   
                                   = 
                                   
                                     l 
                                     - 
                                     
                                       l 
                                       ′ 
                                     
                                   
                                 
                               
                                 
                               
                                 
                                   C 
                                   ⁡ 
                                   ( 
                                   r 
                                   ) 
                                 
                                 * 
                                 
                                   
                                     C 
                                     ⁡ 
                                     ( 
                                     s 
                                     ) 
                                   
                                   ★ 
                                 
                               
                             
                           
                           
                             
                               l 
                               ≠ 
                               
                                 l 
                                 ′ 
                               
                             
                           
                         
                         
                           
                             
                               
                                 
                                   ∑ 
                                   
                                     s 
                                     = 
                                     
                                       L 
                                       C 
                                       ′ 
                                     
                                   
                                   
                                     R 
                                     C 
                                   
                                 
                                 
                                   
                                     C 
                                     ⁡ 
                                     ( 
                                     s 
                                     ) 
                                   
                                   * 
                                   
                                     
                                       C 
                                       ⁡ 
                                       ( 
                                       s 
                                       ) 
                                     
                                     ★ 
                                   
                                 
                               
                               + 
                               
                                 
                                   1 
                                   SNR 
                                 
                                 · 
                                 
                                   δ 
                                   
                                     w 
                                     = 
                                     0 
                                   
                                 
                               
                             
                           
                           
                             
                               l 
                               = 
                               
                                 l 
                                 ′ 
                               
                             
                           
                         
                       
                       , 
                     
                   
                 
               
               
                 1.14 
               
             
           
         
       
         
         
           
             where in the computation of R(l,l′) we use the following conditions on the mean of the specific terms in (1.13):
 
 [ X ( k )* X ( k ′)]= NP·δ   k=k′ ,
 
 [   ( k )* ( k ′)]= NN   0 ·δ k=k′ ,
 
 [Additional Terms]=0
 
           
         
       
    
     Combining (1.9), (1.10), (1.11) and (1.12) we conclude that the optimal filter F opt  satisfies the following system of linear equations: 
     
       
         
           
             
               
                 
                   
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         
                           R 
                           ⁡ 
                           ( 
                           
                             l 
                             , 
                             
                               l 
                               ′ 
                             
                           
                           ) 
                         
                         * 
                         
                           
                             F 
                             opt 
                           
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                       
                     
                     = 
                     
                       
                         C 
                         ⁡ 
                         ( 
                         l 
                         ) 
                       
                       ★ 
                     
                   
                   , 
                   
                     l 
                     = 
                     
                       L 
                       F 
                     
                   
                   , 
                   … 
                       
                   , 
                   
                     
                       R 
                       F 
                     
                     . 
                   
                 
               
               
                 1.15 
               
             
           
         
       
     
     Finally, system (1.15) can be reduced to N systems of n F =R F −L F =1 scalar equations as follows. Applying a DFT to both sides of (1.15) we obtain: 
     
       
         
           
             
               
                 
                   
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         · 
                       
                     
                     = 
                     
                       = 
                     
                   
                   , 
                   
                     l 
                     = 
                     
                       L 
                       F 
                     
                   
                   , 
                   … 
                       
                   , 
                   
                     
                       R 
                       F 
                     
                     . 
                   
                 
               
               
                 1.16 
               
             
           
         
       
     
     where (−) stands for the DFT of the corresponding function and · stands for pointwise multiplication of functions in   (R d ) as we recall that DFT interchanges convolution with pointwise multiplication and ★ with complex conjugation. Now observe that each function valued equation in (1.16) decouples into n F  scalar valued equations by evaluating both sides on each element of the ring R d . Explicitly, if we number the elements in R d  by 0, 1, 2, . . . , N−1 we end up with the following scalar valued system of equations: 
                         ∑       l   ′     =     L   F         R   F             (   i   )     ·     ⁢     (   i   )         =       (   i   )         ,     l   =     L   F       ,   …         ,     R   F     ,         1.17             
for every i=0, . . . , N−1. In more concrete matrix form (1.17) looks like:
 
                         (           R     (   i   )           ·       ·         R     (   i   )               ·       ·       ·       ·           ·       ·       ·       ·             R     (   i   )           ·       ·         R     (   i   )             )     ⁢     (             (   i   )               ·           ·               (   i   )             )       =     (             (   i   )               ·           ·               (   i   )             )       ,         1.18             
for every i=0, . . . , N−1. We conclude the discussion by considering the case when the input stream satisfies X(k)=0 for k&lt;0 which is the case adapted to (feedback) subtraction of the past interference. In this scenario, the optimal forward filter F opt  satisfies a system of the form (1.15) with the “matrix coefficients” R (l, l′) taking the form:
 
     
       
         
           
             
               
                 
                   
                     R 
                     ⁡ 
                     ( 
                     
                       l 
                       , 
                       
                         l 
                         ′ 
                       
                     
                     ) 
                   
                   = 
                   
                     { 
                     
                       
                         
                           
                             
                               
                                 
                                   
                                     ∑ 
                                     
                                       s 
                                       = 
                                       
                                         L 
                                         C 
                                       
                                     
                                     
                                       min 
                                       ⁢ 
                                       
                                         { 
                                         
                                           l 
                                           , 
                                           
                                             R 
                                             C 
                                           
                                         
                                         } 
                                       
                                     
                                   
                                   
                                     ∑ 
                                     
                                       r 
                                       = 
                                       
                                         L 
                                         C 
                                       
                                     
                                     
                                       min 
                                       ⁢ 
                                       
                                         { 
                                         
                                           
                                             l 
                                             ′ 
                                           
                                           , 
                                           
                                             R 
                                             C 
                                           
                                         
                                         } 
                                       
                                     
                                   
                                 
                                 
                                   
                                     s 
                                     - 
                                     r 
                                   
                                   = 
                                   
                                     l 
                                     - 
                                     
                                       l 
                                       ′ 
                                     
                                   
                                 
                               
                               ⁢ 
                               
                                 
                                   C 
                                   ⁡ 
                                   ( 
                                   s 
                                   ) 
                                 
                                 ★ 
                               
                               * 
                               
                                 C 
                                 ⁡ 
                                 ( 
                                 r 
                                 ) 
                               
                             
                           
                           
                             
                               l 
                               ≠ 
                               
                                 l 
                                 ′ 
                               
                             
                           
                         
                         
                           
                             
                               
                                 
                                   ∑ 
                                   
                                     s 
                                     = 
                                     
                                       L 
                                       C 
                                     
                                   
                                   
                                     min 
                                     ⁢ 
                                     
                                       { 
                                       
                                         l 
                                         , 
                                         
                                           R 
                                           C 
                                         
                                       
                                       } 
                                     
                                   
                                 
                                 
                                   C 
                                   ⁢ 
                                   
                                     
                                       ( 
                                       s 
                                       ) 
                                     
                                     ★ 
                                   
                                   * 
                                   
                                     C 
                                     ⁡ 
                                     ( 
                                     s 
                                     ) 
                                   
                                 
                               
                               + 
                               
                                 
                                   1 
                                   SNR 
                                 
                                 · 
                                 
                                   δ 
                                   
                                     w 
                                     = 
                                     0 
                                   
                                 
                               
                             
                           
                           
                             
                               l 
                               = 
                               
                                 l 
                                 ′ 
                               
                             
                           
                         
                       
                       , 
                     
                   
                 
               
               
                 1.19 
               
             
           
         
       
     
     Computation of the Feedback Filter Taps 
     The optimal feedback filter taps B opt  (l), l=L B , . . . , −1 can be computed from the forward and channel taps according to the following formula: 
     
       
         
           
             
               
                 
                   
                     
                       B 
                       opt 
                     
                     ( 
                     l 
                     ) 
                   
                   = 
                   
                     
                       ∑ 
                       
                         
                           l 
                           ′ 
                         
                         = 
                         
                           L 
                           C 
                         
                       
                       
                         R 
                         C 
                       
                     
                     
                       
                         
                           F 
                           opt 
                         
                         ( 
                         
                           
                             l 
                             ′ 
                           
                           + 
                           l 
                         
                         ) 
                       
                       * 
                       
                         
                           C 
                           ⁡ 
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                         . 
                       
                     
                   
                 
               
               
                 1.2 
               
             
           
         
       
     
     The justification of Formula (1.20) proceeds as follows. Fix an input vector X(l 0 ) for some specific l 0 =L B , . . . , −1. Subtracting its interference C(l′)*X(l 0 ) from each term Y(l 0 +l′), we obtain an “interference free” sequence {tilde over (Y)}(l), l=L F , . . . , R F . Now, applying the forward filter F opt  to the sequence {tilde over (Y)}(l) we obtain an estimator for X(0) given by 
     
       
         
           
             
               
                 
                   
                     
                       X 
                       s 
                     
                     = 
                     
                       
                         
                           ∑ 
                           
                             l 
                             = 
                             
                               L 
                               F 
                             
                           
                           
                             R 
                             F 
                           
                         
                         
                           
                             
                               F 
                               opt 
                             
                             ( 
                             l 
                             ) 
                           
                           * 
                           
                             X 
                             ⁡ 
                             ( 
                             l 
                             ) 
                           
                         
                       
                       - 
                       
                         
                           
                             B 
                             opt 
                           
                           ( 
                           
                             l 
                             0 
                           
                           ) 
                         
                         * 
                         
                           X 
                           ⁡ 
                           ( 
                           
                             l 
                             0 
                           
                           ) 
                         
                       
                     
                   
                   , 
                 
               
               
                   
               
             
           
         
       
     
     which concludes the justification. 
     Computation of Optimal Initial Forward and Feedback Filter Taps 
     In an alternative aspect, a closed formula of the optimal forward and feedback filter taps of the decision feedback equalizer may be expressed in terms of the channel impulse response. In this regard we conduct the computation in the stochastic setting where we assume that X (k)˜□□(0, P·Id N ), for every k∈ . We denote by X s  the following soft estimator for the vector X (0): 
     
       
         
           
             
               
                 
                   
                     X 
                     s 
                   
                   = 
                   
                     
                       
                         ∑ 
                         
                           l 
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         
                           F 
                           ⁡ 
                           ( 
                           l 
                           ) 
                         
                         * 
                         
                           Y 
                           ⁡ 
                           ( 
                           l 
                           ) 
                         
                       
                     
                     - 
                     
                       
                         ∑ 
                         
                           l 
                           = 
                           
                             L 
                             B 
                           
                         
                         
                           - 
                           1 
                         
                       
                       
                         
                           B 
                           ⁡ 
                           ( 
                           l 
                           ) 
                         
                         * 
                         
                           
                             x 
                             ⁡ 
                             ( 
                             l 
                             ) 
                           
                           . 
                         
                       
                     
                   
                 
               
               
                 1.21 
               
             
           
         
       
     
     We denote by Err=Err(0) the soft error term:
 
Err= X   s   −X (0).  1.22
 
     We consider the cost function:
 
 U ( F,B )= ∥Err∥ 2   =E∥X   s   −X (0)∥ 2 ,
 
where the expectation is taken over the probability distribution of the input stream X and the additive white Gaussian noise  . The optimal filters F opt , B opt  are defined as:
 
                 (       F   opt     ,     B   opt       )     =     arg         min     (     F   ,   B     )         U   ⁡   (     F   ,   B     )         ,         
therefore they satisfy the following system of linear equations:
 
∇ F(l)   U ( F   opt   ,B   opt )=0, l=L   F   , . . . ,R   F .
 
∇ B(l)   U ( F   opt   ,B   opt )=0, l=L   B , . . . ,−1,  1.23
 
where the gradients are given by:
 
∇ F(l)   U = [Err* Y ( l ) ★ ], l=L   F   , . . . ,R   F ,
 
∇ B(l)   U =− [Err* X ( l ) ★ ], l=L   B , . . . ,−1.  1.24
 
     First we write explicitly the first system ∇ f(l) Y(F opt , B opt )=0. Expanding the term □[Err*Y(l)★], we obtain: 
     
       
         
           
             
               
                 
                   
                     𝔼 
                     [ 
                     
                       Err 
                       * 
                       
                         
                           Y 
                           ⁡ 
                           ( 
                           l 
                           ) 
                         
                         ★ 
                       
                     
                     ] 
                   
                   = 
                   
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         
                           F 
                           ⁡ 
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                         * 
                         
                           𝔼 
                           [ 
                           
                             
                               Y 
                               ⁡ 
                               ( 
                               
                                 l 
                                 ′ 
                               
                               ) 
                             
                             * 
                             
                               
                                 Y 
                                 ⁡ 
                                 ( 
                                 l 
                                 ) 
                               
                               ★ 
                             
                           
                           ] 
                         
                       
                     
                     - 
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             B 
                           
                         
                         
                           - 
                           1 
                         
                       
                       
                         
                           B 
                           ⁡ 
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                         * 
                         
                           𝔼 
                           [ 
                           
                             
                               X 
                               ⁡ 
                               ( 
                               
                                 l 
                                 ′ 
                               
                               ) 
                             
                             * 
                             
                               
                                 Y 
                                 ⁡ 
                                 ( 
                                 l 
                                 ) 
                               
                               ★ 
                             
                           
                           ] 
                         
                       
                     
                     - 
                     
                       
                         𝔼 
                         [ 
                         
                           
                             X 
                             ⁡ 
                             ( 
                             0 
                             ) 
                           
                           * 
                           
                             
                               Y 
                               ⁡ 
                               ( 
                               l 
                               ) 
                             
                             ★ 
                           
                         
                         ] 
                       
                       . 
                     
                   
                 
               
               
                   
               
             
           
         
       
     
     Direct computation reveals that: 
                               𝔼   [       X   ⁡   (   0   )     *       Y   ⁡   (   l   )     ★       ]     =         NP   ·       C   ⁡   (   l   )     ★         ,                   𝔼   [       X   ⁡   (     l   ′     )     *       Y   ⁡   (   l   )     ★       ]     =         NP   ·     C   ⁡   (     l   -     l   ′       )         ,                 𝔼   [       Y   ⁡   (     l   ′     )     *       Y   ⁡   (   l   )     ★       ]     =         NP   ·       R   1     (     l   ,     l   ′       )               ,                       
where:
 
     
       
         
           
             
               
                 R 
                 1 
               
               ( 
               
                 l 
                 , 
                 
                   l 
                   ′ 
                 
               
               ) 
             
             = 
             
               { 
               
                 
                   
                     
                       
                         
                           
                             ∑ 
                             
                               s 
                               , 
                               
                                 r 
                                 = 
                                 
                                   L 
                                   C 
                                 
                               
                             
                             
                               R 
                               C 
                             
                           
                           
                             
                               s 
                               - 
                               r 
                             
                             = 
                             
                               l 
                               - 
                               
                                 l 
                                 ′ 
                               
                             
                           
                         
                           
                         
                           
                             C 
                             ⁡ 
                             ( 
                             r 
                             ) 
                           
                           * 
                           
                             
                               C 
                               ⁡ 
                               ( 
                               s 
                               ) 
                             
                             ★ 
                           
                         
                       
                     
                     
                       
                         l 
                         ≠ 
                         
                           l 
                           ′ 
                         
                       
                     
                   
                   
                     
                       
                         
                           
                             ∑ 
                             
                               s 
                               = 
                               
                                 L 
                                 C 
                                 ′ 
                               
                             
                             
                               R 
                               C 
                             
                           
                           
                             
                               C 
                               ⁡ 
                               ( 
                               s 
                               ) 
                             
                             * 
                             
                               
                                 C 
                                 ⁡ 
                                 ( 
                                 s 
                                 ) 
                               
                               ★ 
                             
                           
                         
                         + 
                         
                           
                             1 
                             SNR 
                           
                           · 
                           
                             δ 
                             
                               w 
                               = 
                               0 
                             
                           
                         
                       
                     
                     
                       
                         l 
                         = 
                         
                           l 
                           ′ 
                         
                       
                     
                   
                 
                 . 
               
             
           
         
       
     
     Thus, the first system of equations amounts to: 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           ∑ 
                           
                             
                               l 
                               ′ 
                             
                             = 
                             
                               L 
                               F 
                             
                           
                           
                             R 
                             F 
                           
                         
                         
                           
                             
                               R 
                               1 
                             
                             ( 
                             
                               l 
                               , 
                               
                                 l 
                                 ′ 
                               
                             
                             ) 
                           
                           * 
                           
                             
                               F 
                               opt 
                             
                             ( 
                             
                               l 
                               ′ 
                             
                             ) 
                           
                         
                       
                       - 
                       
                         
                           ∑ 
                           
                             
                               l 
                               ′ 
                             
                             = 
                             
                               L 
                               F 
                             
                           
                           
                             R 
                             F 
                           
                         
                         
                           
                             C 
                             ⁡ 
                             ( 
                             
                               l 
                               - 
                               
                                 l 
                                 ′ 
                               
                             
                             ) 
                           
                           * 
                           
                             
                               B 
                               opt 
                             
                             ( 
                             
                               l 
                               ′ 
                             
                             ) 
                           
                         
                       
                     
                     = 
                     
                       
                         C 
                         ⁡ 
                         ( 
                         l 
                         ) 
                       
                       ★ 
                     
                   
                   , 
                   
 
                   
                     l 
                     = 
                     
                       L 
                       F 
                     
                   
                   , 
                   … 
                       
                   , 
                   
                     
                       R 
                       F 
                     
                     . 
                   
                 
               
               
                 
                   ( 
                   1.25 
                   ) 
                 
               
             
           
         
       
     
     Next we write explicitly the system ∇ B(l) U(F opt , B opt )=0. Expanding the term □ [Err*X(l)★], we obtain: 
     
       
         
           
             
               
                 
                   
                     𝔼 
                     [ 
                     
                       Err 
                       * 
                       
                         
                           X 
                           ⁡ 
                           ( 
                           l 
                           ) 
                         
                         ★ 
                       
                     
                     ] 
                   
                   = 
                   
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         
                           F 
                           ⁡ 
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                         * 
                         
                           𝔼 
                           [ 
                           
                             
                               Y 
                               ⁡ 
                               ( 
                               
                                 l 
                                 ′ 
                               
                               ) 
                             
                             * 
                             
                               
                                 X 
                                 ⁡ 
                                 ( 
                                 l 
                                 ) 
                               
                               ★ 
                             
                           
                           ] 
                         
                       
                     
                     
                       - 
                     
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             B 
                           
                         
                         
                           - 
                           1 
                         
                       
                       
                         
                           B 
                           ⁡ 
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                         * 
                         
                           𝔼 
                           [ 
                           
                             
                               X 
                               ⁡ 
                               ( 
                               
                                 l 
                                 ′ 
                               
                               ) 
                             
                             * 
                             
                               
                                 X 
                                 ⁡ 
                                 ( 
                                 l 
                                 ) 
                               
                               ★ 
                             
                           
                           ] 
                         
                       
                     
                     
                       - 
                     
                     
                       𝔼 
                       ⁢ 
                       
                         
                           ⌈ 
                           
                             
                               X 
                               ⁡ 
                               ( 
                               0 
                               ) 
                             
                             * 
                             
                               
                                 X 
                                 ⁡ 
                                 ( 
                                 l 
                                 ) 
                               
                               ★ 
                             
                           
                           ⌉ 
                         
                         . 
                       
                     
                   
                 
               
               
                   
               
             
           
         
       
     
     Direct computation reveals that: 
     
       
         
           
             
               
                 
                   
                     
                       𝔼 
                       [ 
                       
                         
                           Y 
                           ⁡ 
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                         * 
                         
                           
                             X 
                             ⁡ 
                             ( 
                             l 
                             ) 
                           
                           ★ 
                         
                       
                       ] 
                     
                     = 
                     
                       NP 
                       · 
                       
                         C 
                         ⁡ 
                         ( 
                         
                           
                             l 
                             ′ 
                           
                           - 
                           l 
                         
                         ) 
                       
                     
                   
                   , 
                     
                   
                     
                       𝔼 
                       [ 
                       
                         
                           X 
                           ⁡ 
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                         * 
                         
                           
                             X 
                             ⁡ 
                             ( 
                             l 
                             ) 
                           
                           ★ 
                         
                       
                       ] 
                     
                     = 
                     
                       NP 
                       · 
                       
                         δ 
                         
                           l 
                           = 
                           
                             l 
                             ′ 
                           
                         
                       
                       · 
                       
                         δ 
                         
                           w 
                           = 
                           0 
                         
                       
                     
                   
                   , 
                     
                   
                     
                       𝔼 
                       [ 
                       
                         
                           X 
                           ⁡ 
                           ( 
                           0 
                           ) 
                         
                         * 
                         
                           
                             X 
                             ⁡ 
                             ( 
                             l 
                             ) 
                           
                           ★ 
                         
                       
                       ] 
                     
                     = 
                     0 
                   
                   , 
                 
               
               
                   
               
             
           
         
       
     
     Thus, the second system of equations amounts to: 
     
       
         
           
             
               
                 
                   
                     
                       
                         
                           ∑ 
                           
                             
                               l 
                               ′ 
                             
                             = 
                             
                               L 
                               F 
                             
                           
                           
                             R 
                             F 
                           
                         
                         
                           
                             C 
                             ⁡ 
                             ( 
                             
                               
                                 l 
                                 ′ 
                               
                               - 
                               l 
                             
                             ) 
                           
                           * 
                           
                             
                               F 
                               opt 
                             
                             ( 
                             
                               l 
                               ′ 
                             
                             ) 
                           
                         
                       
                       - 
                       
                         
                           B 
                           opt 
                         
                         ( 
                         l 
                         ) 
                       
                     
                     = 
                     0 
                   
                   , 
                   
 
                   
                     l 
                     = 
                     
                       L 
                       B 
                     
                   
                   , 
                   … 
                       
                   , 
                   
                     - 
                     1. 
                   
                 
               
               
                 1.26 
               
             
           
         
       
     
     Using Equation (1.26), the optimal feedback filter taps may be expressed in terms of the channel taps and the optimal forward filter taps as: 
     
       
         
           
             
               
                 
                   
                     
                       
                         B 
                         opt 
                       
                       ⁢ 
                       
                         ( 
                         l 
                         ) 
                       
                     
                     = 
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         C 
                         ⁢ 
                         
                           ( 
                           
                             
                               l 
                               ′ 
                             
                             - 
                             l 
                           
                           ) 
                         
                         * 
                         
                           F 
                           opt 
                         
                         ⁢ 
                         
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                       
                     
                   
                   , 
                   
                     l 
                     = 
                     
                       L 
                       B 
                     
                   
                   , 
                   … 
                       
                   , 
                   
                     - 
                     1 
                   
                 
               
               
                 1.27 
               
             
           
         
       
     
     Substituting the right hand side of (1.27) in (1.25) enables the optimal forward filter taps to be determined by finding the solution of the following linear system: 
                           ∑       l   ′     =     L   F         R   F             R   1     (     l   ,     l   ′       )     *       F   opt     (     l   ′     )         -       ∑       l   ′     =     L   F         R   F             R   2     (     l   ,     l   ′       )     *       F   opt     (     l   ′     )           =       C   ⁡   (   l   )     ★       ,   
     l   =     L   F       ,   …         ,     R   F     ,         1.28             
where:
 
     
       
         
           
             
               
                 R 
                 2 
               
               ( 
               
                 l 
                 , 
                 
                   l 
                   ′ 
                 
               
               ) 
             
             = 
             
               
                 
                   
                     ∑ 
                     
                       s 
                       = 
                       
                         
                           l 
                           + 
                           1 
                         
                         = 
                         l 
                       
                     
                     
                       l 
                       - 
                       
                         L 
                         B 
                       
                     
                   
                   
                     ∑ 
                     
                       r 
                       = 
                       
                         
                           l 
                           ′ 
                         
                         + 
                         1 
                       
                     
                     
                       
                         l 
                         ′ 
                       
                       - 
                       
                         L 
                         B 
                       
                     
                   
                 
                 
                   
                     s 
                     - 
                     r 
                   
                   = 
                   
                     l 
                     - 
                     
                       l 
                       ′ 
                     
                   
                 
               
               ⁢ 
               
                 C 
                 ⁡ 
                 ( 
                 r 
                 ) 
               
               * 
               
                 
                   
                     C 
                     ⁡ 
                     ( 
                     s 
                     ) 
                   
                   ★ 
                 
                 . 
               
             
           
         
       
     
     As a final note, we denote R (l,l′)=R 1  (l,l′)−R 2  (l,l′) and write the system (1.28) in the following form: 
     
       
         
           
             
               
                 
                   
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         
                           R 
                           ⁡ 
                           ( 
                           
                             l 
                             , 
                             
                               l 
                               ′ 
                             
                           
                           ) 
                         
                         * 
                         
                           
                             F 
                             opt 
                           
                           ( 
                           
                             l 
                             ′ 
                           
                           ) 
                         
                       
                     
                     = 
                     
                       
                         C 
                         ⁡ 
                         ( 
                         l 
                         ) 
                       
                       ★ 
                     
                   
                   , 
                   
                     l 
                     = 
                     
                       L 
                       F 
                     
                   
                   , 
                   … 
                       
                   , 
                   
                     R 
                     F 
                   
                 
               
               
                 1.29 
               
             
           
         
       
     
     System (1.29) can be reduced to N systems of n F =R F −L F =1 scalar equations as follows. Applying a DFT to both sides of (1.15) we obtain: 
     
       
         
           
             
               
                 
                   
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         · 
                       
                     
                     = 
                     
                       = 
                       
                         _ 
                       
                     
                   
                   , 
                   
                     l 
                     = 
                     
                       L 
                       F 
                     
                   
                   , 
                   … 
                       
                   , 
                   
                     
                       R 
                       F 
                     
                     . 
                   
                 
               
               
                 1.3 
               
             
           
         
       
     
     Where (−) stands for the DFT of the corresponding function and · stands for pointwise multiplication of functions in   (R d ), since the DFT interchanges convolution with pointwise multiplication and ★ with complex conjugation. It is now observes that each function valued equation in (1.30) decouples into n F  scalar valued equations by evaluating both sides on each element of the ring R d . Explicitly, numbered the elements in R d  as 0, 1, 2, . . . , N−1 results in the following scalar valued system of equations: 
     
       
         
           
             
               
                 
                   
                     
                       
                         ∑ 
                         
                           
                             l 
                             ′ 
                           
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         
                           
                             ( 
                             i 
                             ) 
                           
                           · 
                         
                         ⁢ 
                         
                           ( 
                           i 
                           ) 
                         
                       
                     
                     = 
                     
                       
                         _ 
                       
                       
                         ( 
                         i 
                         ) 
                       
                     
                   
                   , 
                   
                     l 
                     = 
                     
                       L 
                       F 
                     
                   
                   , 
                   … 
                       
                   , 
                   
                     R 
                     F 
                   
                   , 
                 
               
               
                 1.31 
               
             
           
         
       
     
     for every i=0, . . . , N−1. In more concrete matrix form (1.31) looks like: 
     
       
         
           
             
               
                 
                   
                     
                       
                         ( 
                         
                           
                             
                               
                                 R 
                                 
                                   ( 
                                   i 
                                   ) 
                                 
                               
                             
                             
                               · 
                             
                             
                               · 
                             
                             
                               
                                 R 
                                 
                                   ( 
                                   i 
                                   ) 
                                 
                               
                             
                           
                           
                             
                               · 
                             
                             
                               · 
                             
                             
                               · 
                             
                             
                               · 
                             
                           
                           
                             
                               · 
                             
                             
                               · 
                             
                             
                               · 
                             
                             
                               · 
                             
                           
                           
                             
                               
                                 R 
                                 
                                   ( 
                                   i 
                                   ) 
                                 
                               
                             
                             
                               · 
                             
                             
                               · 
                             
                             
                               
                                 R 
                                 
                                   ( 
                                   i 
                                   ) 
                                 
                               
                             
                           
                         
                         ) 
                       
                       ⁢ 
                       
                         ( 
                         
                           
                             
                               
                                 
                                   ( 
                                   i 
                                   ) 
                                 
                               
                             
                           
                           
                             
                               · 
                             
                           
                           
                             
                               · 
                             
                           
                           
                             
                               
                                 
                                   ( 
                                   i 
                                   ) 
                                 
                               
                             
                           
                         
                         ) 
                       
                     
                     = 
                     
                       ( 
                       
                         
                           
                             
                               
                                 ( 
                                 i 
                                 ) 
                               
                             
                           
                         
                         
                           
                             · 
                           
                         
                         
                           
                             · 
                           
                         
                         
                           
                             
                               
                                 ( 
                                 i 
                                 ) 
                               
                             
                           
                         
                       
                       ) 
                     
                   
                   , 
                 
               
               
                 1.32 
               
             
           
         
       
     
     for every i=0, . . . , N−1. 
     Channel Acquisition 
     An exemplary channel acquisition component of the OTFS modulation scheme will now be described. To this end, we number the elements of R d  by 0, 1, . . . , N−1. For the channel acquisition, a rectangular strip [0, R C −2L C ]×[0, N] is devoted in the time frequency plane. The value of the input stream X at this strip is specified to be: 
     
       
         
           
             
               X 
               ⁡ 
               ( 
               
                 τ 
                 , 
                 w 
               
               ) 
             
             = 
             
               { 
               
                 
                   
                     
                       N 
                     
                     
                       
                         τ 
                         = 
                         
                           
                             
                               - 
                               
                                 L 
                                 C 
                               
                             
                             ⁢ 
                                 
                             and 
                             ⁢ 
                                 
                             w 
                           
                           = 
                           0 
                         
                       
                     
                   
                   
                     
                       
                         0 
                           
                       
                     
                     
                       otherwise 
                     
                   
                 
                 . 
               
             
           
         
       
     
     The complement of this stream will generally be devoted to data. 
     Gradient Correction 
     As mentioned previously, the forward and feedback taps of the decision feedback equalizer depend on the index k and change slowly as k varies. We proceed to describe herein an exemplary tracking mechanism based on gradient correction with respect to an appropriate quadratic cost function. We denote by Err(k) the soft error term at the k step:
 
Err( k )= X   s ( k )− X   h ( k )∈ ( R   d ),  1.4
 
where theoretically this error should be taken with respect to the true data vector X(k) (true decisions); however, in an exemplary embodiment the error is taken with respect to the hard estimator X h (k) (hard decisions) as specified in equation (1.4). We define the following cost function U, taking as arguments the forward and feedback filter taps:
 
 U ( F,B )=∥Err( k )∥ 2   =∥X   s ( k )− X   h ( k )∥ 2 ,  1.5
 
     where ∥-∥ is the norm associated with the standard Hermitian inner product  −, −  on   (R d ). Note that, in fact, the cost function depends on the index k, however, for the sake of brevity we omit this index from the notation. Next, we compute the gradients ∇ F(l) U, l=L F , . . . , R F  and ∇ B(l) U, l=L B , −1 with respect to the Euclidean inner product 2 Re  −, −  on  (R d ). (considered as a real vector space). The formulas for the gradients are:
 
∇ F(l) =∇ F(l)   U =Err( k )* Y ( k+l ) ★   ,l=L   F   , . . . ,R   F ,
 
∇ B(l) =∇ B(l)   U =−Err( k )* X   h ( k+l ) ★   ,l=L   B , . . . ,−1,  1.6
 
where ★ stands for the star operation on the convolution algebra  (R d ), given by f★(i)= f(−i)  for every f∈ (R d ) and i∈R d . In other words, the star operation of a function is obtained by inverting the coordinate inside R d  followed by complex conjugation. We note that the star operation is related by DFT to complex conjugation, that is DFT (★)= DFT(f) , for every f∈ (R d ).
 
     The correction of the taps at the k step is obtained by adding a small increment in the (inverse) gradient direction, that is:
 
 F   k+1 ( l )= F   k ( l )−μ·∇ F(l)   ,l=L   F   , . . . ,R   F ,
 
 B   k+1 ( l )= B   k ( l )−μ·∇ F(l)   ,l=L   B , . . . ,−1,
 
for an appropriately chosen positive real number μ&lt;&lt;1. The optimal value μ opt  of the small parameter μ is given by:
 
     
       
         
           
             
               μ 
               opt 
             
             = 
             
               arg 
               
                 min 
                 μ 
               
               
                 
                   U 
                   ⁡ 
                   ( 
                   
                     F 
                     + 
                     
                       μ 
                       · 
                       
                         
                           ∇ 
                           F 
                         
                         , 
                         B 
                       
                     
                     + 
                     
                       μ 
                       · 
                       
                         ∇ 
                         B 
                       
                     
                   
                   ) 
                 
                 . 
               
             
           
         
       
     
     A formal development of the quadratic expression U(F+μ·∇ F , B+μ·∇ B ) in the parameter, μ reveals that:
 
 Y ( F+μ·∇   F   ,B+μ·∇   B )= U ( F,B )+μ(2Re   F,F     + 2Re   B,B   )+μ 2 Hess(∇ F ,∇ B ),
 
     where Hess (∇ F , ∇ B ) stands for: 
     
       
         
           
             
               
                 
                   
                     Hess 
                     ⁢ 
                        
                     
                       ( 
                       
                         
                           ∇ 
                           F 
                         
                         , 
                         
                           ∇ 
                           B 
                         
                       
                       ) 
                     
                   
                   = 
                   
                     
                        
                       
                         
                           
                             ∑ 
                             
                               l 
                               = 
                               
                                 L 
                                 F 
                               
                             
                             
                               R 
                               F 
                             
                           
                           
                             
                               ∇ 
                               
                                 F 
                                 ⁡ 
                                 ( 
                                 l 
                                 ) 
                               
                             
                             * 
                             
                               Y 
                               ⁡ 
                               ( 
                               
                                 k 
                                 + 
                                 l 
                               
                               ) 
                             
                           
                         
                         - 
                         
                           
                             ∑ 
                             
                               l 
                               = 
                               
                                 L 
                                 B 
                               
                             
                             
                               - 
                               1 
                             
                           
                           
                             
                               ∇ 
                               
                                 B 
                                 ⁡ 
                                 ( 
                                 l 
                                 ) 
                               
                             
                             * 
                             
                               
                                 X 
                                 h 
                               
                               ( 
                               
                                 k 
                                 + 
                                 l 
                               
                               ) 
                             
                           
                         
                       
                        
                     
                     2 
                   
                 
               
               
                   
               
             
           
         
       
     
     and  F, F  and  B, B  stand for: 
     
       
         
           
             
               
                 
                   
                     
                       〈 
                       
                         F 
                         , 
                         F 
                       
                       〉 
                     
                     = 
                     
                       
                         ∑ 
                         
                           l 
                           = 
                           
                             L 
                             F 
                           
                         
                         
                           R 
                           F 
                         
                       
                       
                         〈 
                         
                           
                             F 
                             ⁡ 
                             ( 
                             l 
                             ) 
                           
                           , 
                           
                             F 
                             ⁡ 
                             ( 
                             l 
                             ) 
                           
                         
                         〉 
                       
                     
                   
                   , 
                     
                   
                     
                       〈 
                       
                         B 
                         , 
                         B 
                       
                       〉 
                     
                     = 
                     
                       
                         ∑ 
                         
                           l 
                           = 
                           
                             L 
                             B 
                           
                         
                         
                           - 
                           1 
                         
                       
                       
                         
                           〈 
                           
                             
                               B 
                               ⁡ 
                               ( 
                               l 
                               ) 
                             
                             , 
                             
                               B 
                               ⁡ 
                               ( 
                               l 
                               ) 
                             
                           
                           〉 
                         
                         . 
                       
                     
                   
                 
               
               
                   
               
             
           
         
       
     
     If we denote b=2 Re F, F +2 Re B, B  and a=Hess (∇ F , ∇ B ) then the standard formula for the minimum of a parabola imply that μ opt  is given by: 
     
       
         
           
             
               μ 
               opt 
             
             = 
             
               
                 
                   - 
                   b 
                 
                 
                   2 
                   ⁢ 
                   a 
                 
               
               . 
             
           
         
       
     
       FIG.  33    shows a time-frequency graph providing an illustration of the various echo (time shifts) and frequency shifts which a signal may encounter during transmission through a channel; that is,  FIG.  33    illustrates the impulse response of the channel. If the channel lacked any echo (time shift) or frequency shifts, signal spike  3400 —which is representative of original signal as transformed by the channel—would instead show up as a single spike at a defined time and frequency. However due to various echoes and frequency shifts, the original signal is instead spread over both time  3302  and frequency  3304  in the manner illustrated by spike  3400 . It is thus desired to compensate or otherwise address these effects, either before further processing at the receiver  3204  or later after the receiver has taken the processing to the D R  stage  3206 . Alternatively, the original signal may be pre-equalized  3208  prior to transmission using a related process. 
       FIG.  34    illustratively represents a time-frequency map of tap values produced by the feed forward (FF) portion of the adaptive decision feedback equalizer of  FIG.  32 C  when correcting for the time and frequency distortions introduced by the channel impulse response shown in  FIG.  33   . The FF portion  3210  of the equalizer works to shift the echo or frequency shifted signals to once again coincide with the main signal (the un-reflected and non-shifted signal), and thus enhances the intensity of the received signal while diminishing the intensity of the echo or frequency shifted signals. 
       FIG.  35    illustratively represents a time-frequency map of tap values produced by the feedback (FB) portion  3212  of the adaptive decision feedback equalizer of  FIG.  32 C  when correcting for the time and frequency distortions introduced by the channel impulse response shown in  FIG.  33   . After the feedforward (FF) portion  3210  of the equalizer has acted to substantially offset the echo and frequency shifted signals, there will still be some residual echo and frequency signals remaining. The feedback (FB) portion  3212  acts to cancel out those trace remaining echo signals, essentially acting like an adaptive canceller for this portion of the system. 
     The quantizer portion of the adaptive decision feedback equalizer  3214  then acts to “round” the resulting signal to the nearest quantized value so that, for example, the symbol “1” after transmission, once more appears on the receiving end as “1” rather than “0.999”. 
     As previously discussed, an alternative mathematical discussion of the equalization method, particularly suitable for step 802B, is described in provisional application 61/615,884, the contents of which are incorporated herein by reference. 
     Data Interleaving 
     Attention is now directed to  FIGS.  36 A and  36 B , to which reference will be made in further elaborating upon the use of interleaving within an OTFS system. In particular,  FIGS.  36 A and  36 B  show that it may be useful to transmit various different time blocks in an interleaved scheme where the time needed to transmit all N blocks may vary between different data matrices D, and wherein the interleaving scheme is such as to take the latency, that is the time needed to transmit all N blocks, into account according to various optimization schemes. By choosing groups of latencies properly, one can prevent delays to one user or another. For example,  FIG.  36 A  shows a first latency timeline  3600  depicting transmission times for five users a, b, c, d and e. Constellation  3605  shows a hierarchical diagram showing two groups including a first group comprising users a and b, each with a latency of four, and a second group comprising users c, d and e, each with a latency of six. This means that users a and b will transmit, or receive data every four time slots, while users c, d and e will transmit or receive data every six time slots. Time track  3610  shows the resulting order of transmission/receiving for each user, while latency indicators  3615 ,  3620 ,  3625 ,  3630  and  3635  show the resulting latency spacing for users a, b, c, d and e, respectively. 
       FIG.  36 B  shows a second latency timeline  3650  showing the transmission times for four users a, b, c and d. Constellation  3655  shows a hierarchical diagram depicting three groups including a first group comprising user a with a latency of two, a second group comprising user b with a latency of four, and a third group comprising users c and d, each with a latency of eight. This means that user a will transmit or receive data every two time slots, user b will transmit, or receive data every four time slots, while users c and d will transmit or receive data every eight time slots. Time track  3660  shows the resulting order of transmission/receiving for each user, while latency indicators  3665 ,  3670 ,  3675  and  3680  show the resulting latency spacing for users a, b, c and d, respectively. Different latencies can be chosen for different users depending on what type of service the user is seeking. For example, a voice connection may be provided a latency of two, while a file or video download might be provided a latency of eight. Latency may be chosen for other reasons. 
     Full Duplex Transceiver 
       FIG.  37    shows an example of a full duplex OTFS transceiver  3700  capable of enabling data to be transmitted and received simultaneously in the same frequency band. The OTFS transceiver  3700  is configured with an echo cancellation module  3705  that implements echo cancelation in the time and frequency domain. This enables estimation of two-dimensional reflections of the transmitted signal; that is, estimation of frequency shifts and time shifts. As shown, a first OTFS encoder  3710 - 1  performs OTFS encoding with a first matrix [U 1 ], a permutation operation, a second matrix multiplication of a Basis matrix [U 2 ] and sin/cos transmission of the elements of the resulting transformed data matrix. The transformed data matrix is transmitted a column at a time in a one dimensional data stream and up-converted to an RF frequency with RF up converter  3715 - 1 , power amplified with transmit power amplifier  3720 - 1  and passed to an antenna  3740  via a circulator  3722 . 
     In the embodiment of  FIG.  37    the antenna also receives a second data stream from another transmitter. However, the second data stream also includes reflections of the first signal transmitted by the OTFS transmitter  3700 . The circulator  3722  routes the received second signal to a subtractor  3724  that subtracts an estimate of the reflected signals that is created by the echo canceller  3705 . A second OTFS encoder  3710 - 2 , a second RF up converter  3715 - 2  and an echo canceller power amplifier  3720 - 2  create the estimated echo that is subtracted from the received second signal. 
     An RF down converter  3725  demodulates the second received signal and passes the demodulated received second data stream D r  to a first OTFS decoder  3730 - 1  and a second OTFS decoder  3730 - 2 . The first OTFS decoder  3730 - 2  decodes the received second signal using the base t matrix that was used to transmit the first data stream. The second OTFS decoder  3730 - 2  decodes the echo-canceled data stream using a base r matrix that the other transmitter used to encode the second data stream. The output of the first OTFS decoder  3730 - 1  is fed back as a residual error signal to the echo canceller  3705  in order to tune the two dimensional estimate of the reflected echoes channel. The output of the second OTFS decoder  3730 - 2  is an estimate of the second data stream from the other transmitter. The capability to obtain an estimate of the echo channel in both frequency and time is a significant advantage of the OTFS technique, and facilitates full-duplex communication over a common frequency band in a manner not believed to be possible using prior art methods. 
     Iterative Signal Separation 
       FIG.  38    shows an example of an OTFS receiver  3800  that provides iterative signal separation in accordance with the disclosure. The OTFS receiver  3800  receives a first data matrix D 1  from a first transmitter that uses a first basis matrix. The OTFS receiver  3800  also receives a second data stream D 2  from a second transmitter in the same frequency band where the second data stream D 2  was encoded using a second basis matrix different from the first basis matrix. A first OTFS decoder  3810 - 1  decodes the first data matrix D 1  to create a one dimensional data stream Y 1  while a second OTFS decoder decodes the second data matrix D 2  to form a second one dimensional data stream Y 2 . 
     The OTFS receiver  3800  includes a pair of feed-forward and feedback equalizers comprising first and second feed forward equalizers  3820 - 1  and  3820 - 2 , first and second feedback equalizers  3835 - 1  and  3835 - 2 , and first and second slicers  3825 - 1  and  3825 - 2 . First and second subtractors  3830 - 1  and  3830 - 2  calculate first and second residual error signals  3840 - 1  and  3840 - 2  that are used by respective ones of the feed forward equalizers  3820  and the feedback equalizers  3835  in order to optimize two dimensional time/frequency shift channel models. 
     A pair of cross talk cancellers  3845 - 1  and  3845 - 2  also use the residual error signals  3840 - 1  and  3840 - 2 , respectively, in order to optimize estimates of the first received data signal and the second received data signal in order to subtract each signal at subtractors  3815 - 1  and  3815 - 2 . In this way, the cross talk from one data signal to the other is minimized. As with the full duplex OTFS transceiver  3700  of  FIG.  37   , the OTFS receiver  3800  can model two dimensional time/frequency channels and is believed to represent a significant advance over receivers employing conventional one dimensional (i.e., time only) channel modeling approaches. 
     Attention is now directed to  FIG.  40   , which is a block diagram of a time-frequency-space decision feedback equalizer  4000  that may be employed to facilitate signal separation in a multi-antenna OTFS system. As shown in  FIG.  40   , received signal information (R) represented by a set of M time-frequency planes  4004  is received at input port  4010  of the equalizer  4000 . Each of the M time-frequency planes  4004  represents the information collected from N transmit antenna instances (M&gt;N) by one of M antenna instances associated with an OTFS receiver. The N transmit antenna instances, which may or may not be co-located, will generally be associated with an OTFS transmitter remote from the OTFS receiver associated with the M receive antenna instances. Each of the N transmit antenna instances and M receive antenna instances may, for example, comprise a single physical antenna which is either co-located or not co-located with the other antenna instances. Alternatively, one or more of the N transmit antenna instances and M receive antenna instances may correspond to an antenna instance obtained through polarization techniques. 
     In the embodiment of  FIG.  40   , the time-frequency-space decision feedback equalizer  4000  includes a time-frequency-space feedforward FIR filter  4020  and a time-frequency-space feedback FIR filter  4030 . The equalizer  4000  produces an equalized data stream at least conceptually arranged in set of N time-frequency planes (M&gt;N) wherein, again, N corresponds to the number of antenna instances transmitting information to the M antenna instances of the OTFS receiver associated with the equalizer  4000 . 
     Turning now to  FIG.  41   , a block diagram is provided of a time-frequency-space decision feedforward FIR filter  4100  which may be utilized to implement the time-frequency-space feedforward FIR filter  4020 . As shown, the filter  4100  processes received signal information (R) carried on a set of M time-frequency planes  4104  provided by a corresponding set of M receive antennas. The filter  4100  produces a filtered data stream at least conceptually arranged in set of N time-frequency planes  4150  (M&gt;N), where, again, N corresponds to the number of antenna instances transmitting information to the M antenna instances of the OTFS receiver associated with the equalizer  4000 . 
     Referring to  FIG.  42   , a block diagram is provided of a time-frequency-space decision feedback FIR filter  4200  which may be utilized to implement the time-frequency-space feedback FIR filter  4030 . As shown, the filter  4200  processes received signal information (R) carried on a set of M time-frequency planes  4204  which may, for example, correspond to the set of M time-frequency planes provided by a corresponding set of M receive antennas. The filter  4200  produces a filtered data stream at least conceptually arranged in a set of N time-frequency planes  4250  (M&gt;N). 
     The time-frequency-space decision feedback equalizer  4000  advantageously enables the separation of signals within an OTFS communication system in a manner that substantially maximizes utilization of the available bandwidth. Such signal separation is useful in several contexts within an OTFS communication system. These include separation, at a receiver fed by multiple co-located or non-co-located antennas, of signals transmitted by a set of co-located or non-co-located antennas of a transmitter. In addition, the time-frequency-space decision feedback equalizer  4000  enables the separation, from signal energy received from a remote transmitter, of echoes received by a receive antenna in response to transmissions from a nearby transmit antenna. This echo cancellation may occur even when the transmit and receive signal energy is within the same frequency band, since the two-dimensional channel-modeling techniques described herein enable accurate and stationary representations of the both the echo channel and the channel associated with the remote transmitter. Moreover, as is discussed below the signal separation capability of the disclosed time-frequency-space decision feedback equalizer enables deployment of OTFS transceivers in a mesh configuration in which neighboring OTFS transceivers may engage in full duplex communication in the same frequency band with other such transceivers in a manner transparent to one another. 
     Again with reference to  FIG.  40   , operation of an exemplary OTFS system may be characterized as the transmission, from each antenna instance associated with a transmitter, of a time-frequency plane representing a two-dimensional information array being sent. Each such antenna instance, whether co-located or non-co-located, may simultaneously transmit two-dimensional information planes, each independent of the other. The information in each of these information planes may be shifted in time and frequency using the same basis functions. During transmission from each of N transmit antenna instances to each of M receive antenna instances, the information within each transmitted plane is differently affected by the different two-dimensional channels linking one of the N transmit antenna instances to each of the M receive antenna instances. 
     At each of the M antenna instances associated with an OTFS receiver, each entry within the two-dimensional array of received signal energy being collected will typically include a contribution from each of the N transmit antenna instances involved in transmitting such signal energy. That is, each of the M receive antenna instances collects a mixture of the two-dimensional, time-frequency planes of information separately sent by each of the N transmit antenna instances. Thus, the problem to be solved by the equalizer  4000  may be somewhat simplistically characterized as inversion of the N×M “coupling matrix” representative of the various communication channels between the N OTFS transmit antenna instances and the M OTFS receive antenna instances. 
     In one embodiment each of the N transmit antenna instances sends a pilot signal which may be differentiated from the pilot signals transmitted by the other N−1 antenna instances by its position in the time-frequency plane. These pilot signals enable the OTFS receiver to separately measure each channel and the coupling between each antenna instance. Using this information the receiver essentially initializes the filters present within the equalizer  4000  such that convergence can be achieved more rapidly. In one embodiment an adaptive process is utilized to refine the inverted channel or filter used in separating the received signal energy into different time-frequency-space planes. Thus, the coupling channel between each transmit and receive antenna instance may be measured, the representation of the measured channel inverted, and that inverted channel representation used to separate the received signal energy into separate and distinct time-frequency planes of information. 
     As noted above, the channel models associated with known conventional communication systems, such as OFDM-based systems, are one-dimensional in nature. As such, these models are incapable of accurately taking into consideration all of the two-dimensional (i.e., time-based and frequency-based) characteristics of the channel, and are limited to providing an estimate of only one such characteristic. Moreover, such one-dimensional channel models change rapidly relative to the time scale of modern communication systems, and thus inversion of the applicable channel representation becomes very difficult, if possible at all. 
     The stationary two-dimensional time-frequency channel models described herein also enable OTFS systems to effectively implement cross-polarization cancellation. Consider the case in which a transmit antenna instance associated with an OTFS transceiver is configured for horizontally-polarized transmission and a nearby receive antenna of the OTFS transceiver is configured to receive vertically-polarized signal energy. Unfortunately, reflectors proximate either the transmit or receive antenna may reflect and cross-polarize some of the transmitted horizontally-polarized energy from the transmit antenna, some of which may be directed to the receive antenna as a vertically-polarized reflection. It is believed that a two-dimensional channel model of the type disclosed herein is needed in order to decouple and cancel this cross-polarized reflection from the energy otherwise intended for the receive antenna. 
     Similarly, full duplex communication carried out on the same channel requires echo cancellation sufficiently robust to substantially remove the influence of a transmitter on a nearby receiver. Again, such echo cancellation is believed to require, particularly in the case of moving reflectors, an accurate two-dimensional representation of at least the echo channel in order to permit the representation to be appropriately inverted. 
     OTFS Transceiver Using Spreading Kernel 
     As discussed above, embodiments of the OTFS method may involve generating a two-dimensional matrix by spreading a two-dimensional input data matrix. In addition, time/frequency tiling may be utilized in transport of the two-dimensional matrix across a channel. In this approach each matrix column may be tiled as a function of time; that is, each column element occupies a short symbol time slice utilizing the full available transmission bandwidth, with time gaps optionally interposed between subsequent columns. Alternatively, the matrix columns may be tiled and transported as a function of frequency; that is, each element of the column occupies a frequency bin for a longer period of time, with time gaps optionally interposed between subsequent columns. 
     In other embodiments a spreading kernel may be used to effect spreading of the input data matrix. In this case two-dimensional spreading may be achieved through, for example, a two-dimensional cyclic convolution with a spreading kernel, a convolution implemented using a two-dimensional FFT, multiplication with the two-dimensional DFT of the spreading kernel, followed by a two-dimensional inverse Fourier transform. A wide variety of spreading kernels may be utilized; however, the two-dimensional DFT of the selected kernel should lack any zeroes so as to avoid division by zero during the dispreading process. Moreover, spreading may also be achieved using alternate methods of convolutions, transforms and permutations. Masking (i.e., element by element multiplication) may also be utilized as long as each operation in invertible. 
     Attention is now directed to  FIGS.  44 A and  44 B , which provide block diagram representations of embodiments of a first OTFS transceiver  4400  and a second OTFS transceiver  4450  configured to utilize a spreading kernel. Reference will be made to the first OTFS transceiver  4400  of  FIG.  44 A  in describing principles of OTFS communication using a spreading kernel. The second OTFS transceiver  4450  is substantially similar in principle to the first OTFS transceiver  4400  but is characterized by an architecture believed to enable more efficient signal processing. 
     As shown in  FIG.  44 A , a transmitter  4404  of the first OTFS transceiver  4400  includes two-dimensional spreading block  4408 , an FFT block  4410  and first and second time-frequency tiling elements  4412 ,  4414 . The first and second time-frequency tiling elements  4412 ,  4414  are configured to effect time-frequency tiling of the two-dimensionally spread input data and may, for example, be implemented using one or more filter banks. The two-dimensional spreading block  4408  and FFT block  4410  cooperatively effect spreading of the two-dimensional input data by performing a series of operations using, for example, a spreading kernel selected from a wide family of unitary matrices. In one embodiment this series of operations includes two-dimensional cyclic convolution with the spreading kernel, convolution implemented using a two-dimensional FFT, multiplication using two-dimensional Discrete Fourier Transform of the spreading kernel, and a two-dimensional inverse Fourier transform. This results in cyclically shifting the kernel matrix “up” along the column direction by an amount corresponding to an information index (yielding a time shift) and multiplying by a diagonal tone whose frequency is set by the information index. All resulting transformed matrices are then summed together in order to generate the two-dimensional spread matrix, each element of which is carried using a transformed Kernel (basis matrix). 
     A receiver  4420  of the first OTFS transceiver  4400  includes first and second inverse time-frequency tiling elements  4424 ,  4426  configured to effect an inverse of the tiling operation performed by the time-frequency tiling elements  4412  and  4414 . A two-dimensional IFFT block  4428  and despreading block  4430  are configured to perform the inverse of the spreading operation performed by the two-dimensional spreading block  4408  and the FFT block  4410 . The received data is then converted using an FFT block  4434  prior to being equalized by a time-frequency-space decision feedforward/feedback analyzer block  4438 . The equalized data is then converted using an IFFT block  4440 . 
     Turning now to  FIG.  44 B , a transmitter  4454  of the second OTFS transceiver  4450  includes a two-dimensional spreading arrangement comprised of an FFT block  4458  and a multiplier  4460  addressed by a Fourier mask. Within the transmitter  4454 , each information element is represented as a cyclic shift of a kernel matrix in both a horizontal (row) and vertical (column) direction corresponding to the applicable information element index (row and column position in the input two-dimensional information array). In the implementation of  FIG.  44 B , the spreading kernel is selected such that its two-dimensional DFT is comprised entirely of non-zero elements (thus enabling the resulting matrix to be inverted without forming singularities). The resulting matrix goes through a DFT transformation of the rows to represent the two-dimensional spread information element. All resulting transformed matrices are then summed together in order to generate the resulting two-dimensional spread information matrix. 
     As shown in  FIG.  44 B , an arrangement of time-frequency tiling elements  4462 ,  4464  and  4466  are configured to effect time-frequency tiling of the two-dimensionally spread input data output by the multiplier  4460 . The time-frequency tiling elements  4464  and  4466  may, for example, be implemented using one or more filter banks. 
     A receiver  4470  of the second OTFS transceiver  4450  includes a serial arrangement of inverse time-frequency tiling elements  4474 ,  4476 ,  4478  configured to effect an inverse of the tiling operation performed by the time-frequency tiling elements  4462 ,  4464  and  4466 . A multiplier  4480  is configured to multiply the output produced by the inverse time-frequency tiling elements  4474 ,  4476  and  4478  by an inverse mask. Next, an IFFT block  4482  converts the output of the multiplier  4480  and provides the result to a time-frequency-space decision feedforward/feedback analyzer block  4488 . The equalized data is then converted by an IFFT block  4492 . 
     Mesh Networking 
     Attention is now directed to  FIGS.  50 - 52   , which illustratively represent mesh network implementations of OTFS communication systems. The OTFS mesh networks depicted in  FIGS.  50 - 52    advantageously leverage the time-frequency-space equalization and echo cancellation techniques described herein to enable OTFS mesh nodes to engage in full duplex communication with other such nodes on the same communication channel, whether or not such communication channel is also used by neighboring OTFS mesh nodes. 
     Referring to  FIG.  50   , there is shown an OTFS mesh network  5000  within the context of a cellular communication system comprised of cell sites  5004  and associated cell coverage areas  5008 . As may be appreciated from  FIG.  50   , significant gaps may exist between the coverage areas  5008 . 
     The mesh network  5000  comprises a plurality of OTFS wireless mesh nodes  5020  operative to provide wireless communication coverage to fixed or mobile devices within areas of high demand which are generally outside of the range of the coverage areas  5008 . For the reasons discussed above, each OTFS wireless mesh node  5020  may be configured for full duplex wireless communication with other such mesh nodes  5020  over the same frequency band. This full duplex wireless communication over the same frequency band is represented in  FIG.  50    by wireless communication links  5030 . In the embodiment of  FIG.  50    each of the wireless mesh links  5030  operates over an identical frequency range. 
     Turning now to  FIG.  51   , there is shown an OTFS mesh network  5100  organized around a set of wired network gateways  5110 . The mesh network  5100  comprises a plurality of OTFS wireless mesh nodes  5120  operative to provide wireless communication to fixed or mobile devices within areas proximate each of the nodes  5120 . Each OTFS wireless mesh node  5120  may be configured for full duplex wireless communication with other such mesh nodes  5120  over the same frequency band. This full duplex wireless communication over the same frequency band is represented in  FIG.  51    by wireless mesh links  5130 . In the embodiment of  FIG.  51   , the wireless mesh nodes  5120  are self-organizing in the sense that the nodes  5120  are configured to discover each other and to determine all possible paths over links  5130  to each wired network gateway  5110 . Accordingly, network routing techniques may be employed to route packetized information between and among the mesh nodes  5120  and the wired network gateways  5110  in both directions over the wireless mesh links  5130 . 
       FIG.  52    shows an OTFS mesh network system  5200  comprised of a single-channel wireless mesh network  5204  including plurality of mesh elements. In one embodiment certain of the mesh elements of mesh network  5204  preferably include an OTFS wireless mesh router  5210  and a traffic aggregation device  5220  (e.g., and LTE node or Wi-Fi access point) serving end user devices  5250  within a respective coverage area  5254 . Each OTFS wireless mesh router  5210  may be configured for full duplex wireless communication with other such mesh nodes  5210  over the same frequency band. In the embodiment of  FIG.  52   , the wireless mesh nodes  5210  are self-organizing in the sense that the nodes  5210  are configured to discover each other and to determine all possible paths over OTFS wireless links  5230  to each wired network gateway  5240 . Accordingly, network routing techniques may be employed to route packetized information between and among the mesh nodes  5120  and a wired network  5244 —via the wired network gateways  5110 —in both directions over the wireless mesh links  5130 . As shown, the wired network  5244  may provide a conduit to a wide area network through which information packets are routed between the mesh network  5204  and a core network  5260  of a mobile network operator. 
     In one embodiment mesh spatial gain may be achieved by using neighboring mesh nodes  5120  to support the simultaneous parallel transmission of streams of information using an identical frequency band over a single point to point link. This approach may improve signal transmission gain by using neighboring nodes  5120  to effectively create a distributed transmit source, thereby achieving gain through spatial signal separation. 
     Some embodiments of the systems and methods described herein may include computer software and/or computer hardware/software combinations configured to implement one or more processes or functions associated with the methods such as those described above and/or in the related applications. These embodiments may be in the form of modules implementing functionality in software and/or hardware software combinations. Embodiments may also take the form of a computer storage product with a computer-readable medium having computer code thereon for performing various computer-implemented operations, such as operations related to functionality as describe herein. The media and computer code may be those specially designed and constructed for the purposes of the claimed systems and methods, or they may be of the kind well known and available to those having skill in the computer software arts, or they may be a combination of both. 
     Examples of computer-readable media within the spirit and scope of this disclosure include, but are not limited to: magnetic media such as hard disks; optical media such as CD-ROMs, DVDs and holographic devices; magneto-optical media; and hardware devices that are specially configured to store and execute program code, such as programmable microcontrollers, application-specific integrated circuits (“ASICs”), programmable logic devices (“PLDs”) and ROM and RAM devices. Examples of computer code may include machine code, such as produced by a compiler, and files containing higher-level code that are executed by a computer using an interpreter. Computer code may be comprised of one or more modules executing a particular process or processes to provide useful results, and the modules may communicate with one another via means known in the art. For example, some embodiments of systems described herein may be implemented using assembly language, Java, C, C#, C++, or other programming languages and software development tools as are known in the art. Other embodiments of the described systems may be implemented in hardwired circuitry in place of, or in combination with, machine-executable software instructions. 
     The foregoing description, for purposes of explanation, used specific nomenclature to provide a thorough understanding of the claimed systems and methods. However, it will be apparent to one skilled in the art that specific details are not required in order to practice the systems and methods described herein. Thus, the foregoing descriptions of specific embodiments of the described systems and methods are presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the claims to the precise forms disclosed; obviously, many modifications and variations are possible in view of the above teachings. The embodiments were chosen and described in order to best explain the principles of the described systems and methods and their practical applications, they thereby enable others skilled in the art to best utilize the described systems and methods and various embodiments with various modifications as are suited to the particular use contemplated. It is intended that the following claims and their equivalents define the scope of the systems and methods described herein.