Symbol determination device, symbol determination method, and program
The symbol decision device employs a deep neural network to accurately approximate transmission path responses, addressing calculation complexity and nonlinear errors in high-speed data transmission, enhancing signal accuracy.
Patent Information
- Application Number
- JP2023576487
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-01-27
- Publication Date
- 2026-02-04
- Estimated Expiration
- 2042-01-27
AI Technical Summary
Existing communication systems face challenges in accurately calculating the transfer function due to exponential calculation increases and nonlinear response errors, especially with high-speed data transmission, leading to signal distortion and interference.
A symbol decision device and method using a candidate symbol sequence generation, transmission channel estimation with a function approximator, and optimization unit to accurately approximate the transfer function of a transmission path, incorporating a deep neural network to handle both linear and nonlinear responses.
The proposed method enables precise estimation of transmission path responses, reducing calculation complexity and improving signal accuracy by accounting for nonlinear characteristics.
Smart Images

Figure 0007810907000029 
Figure 0007810907000030 
Figure 0007810907000031
Abstract
Description
[Technical Field]
[0001] The present invention relates to a symbol determination device, a symbol determination method, and a program. [Background technology]
[0002] In recent years, the rapid spread of smartphones and tablets, and the increase in rich content such as high-definition video streaming services, have led to a continuous increase in traffic transmitted over the Internet backbone network. Companies are also increasingly using cloud services. As a result, it is predicted that network traffic within and between data centers (hereinafter referred to as "DCs") will increase at an annual rate of approximately 1.3 times.
[0003] Currently, Ethernet (registered trademark) is the main method of connection within and between data centers. However, with the increase in communication traffic, it is predicted that it will become difficult to scale up a data center at a single location. Therefore, the need for inter-DC collaboration will increase more than ever in the future, and it is expected that the amount of traffic sent and received between data centers will further increase. To address this situation, it is necessary to establish low-cost, high-capacity short-distance optical transmission technology.
[0004] The current Ethernet (registered trademark) standard applies optical fiber communications to transmission routes up to 40 km, except for 10 GbE (Gigabit Ethernet (registered trademark))-ZR. Up to 100 GbE, an intensity modulation method is used, which assigns binary information to the on and off states of light. The receiving side consists only of a photodetector, which is a cheaper configuration than the coherent receiving method used in long-distance transmission.
[0005] 100GbE achieves a transmission capacity of 100Gbps (Gigabit per second) by multiplexing four NRZ (Non-return-to-zero) signals with a modulation speed of 25GBd (GigaBaud) and an information content per symbol of 1 bit / symbol.
[0006] The standardization of 400GbE, the next generation of 100GbE, is based on the adoption of 2-bits-per-symbol PAM4 (4-level pulse-amplitude-modulation) for the first time, taking into consideration maintaining the economical device configuration used in 100GbE and improving signal bandwidth utilization efficiency. This allows for a transmission capacity of 400Gbps by multiplexing four 100Gbps PAM4 signals. Examples of 400GbE standards include 400GBASE-FR4 and LR4. In recent years, standardization of 800GbE and 1.6TbE has been planned to address future traffic growth. These communication speeds are expected to be achieved by multiplexing four to eight wavelengths of 200Gbps signals with a modulation speed of 100GBaud using PAM4.
[0007] One of the challenges in achieving further increases in capacity is that the effects of device bandwidth limitations and chromatic dispersion will become more apparent as transmission capacity increases, resulting in increased degradation of signal quality. For example, as shown in Fig. 24, when the transmission capacity increases and the bandwidth in use increases, a problem occurs in which frequency region 601 (hatched region with diagonal lines) is lost due to device bandwidth limitations. As shown in Fig. 25, when transmission capacity increases, the effects of chromatic dispersion become greater, and interference region 602 expands.
[0008] Methods to solve these problems include using DACs (Digital to Analog Converters) and ADCs (Analog to Digital Converters) that support high communication speeds, or dispersion compensation modules that compensate for wavelength dispersion. However, these devices are expensive and the cost required for the equipment is high, so from an economical point of view, adoption of these methods is discouraged. From an economical point of view, a more desirable method is to maintain the configuration of conventional transceivers while improving multi-level signal processing, bandwidth limitation tolerance, and wavelength dispersion tolerance, and utilizing low-cost narrowband devices.
[0009] However, when low-cost narrow-band devices are used, for example, drivers and optical receivers have nonlinear input / output characteristics as shown in Figure 26, and modulators also have nonlinear input / output characteristics as shown in Figure 27. This causes the problem of nonlinear waveform distortion. When direct detection is used, the interaction between chromatic dispersion and square-law detection causes nonlinear loss characteristics in the frequency domain as shown in Figure 28. In other words, when low-cost narrow-band devices are used, the presence of nonlinear response characteristics as described above means that in addition to the band limiting and inter-symbol interference caused by chromatic dispersion that accompany faster communication speeds, the nonlinear response characteristics also have an impact. This makes it difficult to obtain correct transmission data using conventional linear equalization and estimation methods.
[0010] This problem will be specifically explained with reference to Figures 29 and 30. Figure 29 is a block diagram showing a conventional communication system 100 configured using the above-mentioned low-cost narrowband devices. The communication system 100 includes a signal generating device 3 on the transmitting side, a transmission path 2, and a discrimination device 4z on the receiving side.
[0011] The signal generator 3 receives an m-ary data sequence given from the outside, and generates a transmission symbol sequence formed by arranging transmission symbols of a digital electrical signal in time series, i.e., a transmission signal sequence {s t Here, m is the symbol multi-level degree and is an integer equal to or greater than 2. t Each of the transmission symbols included in the transmission signal sequence {s t}, and indicates the relative time at which each transmission symbol was generated. For example, t} is transmitted in blocks, the transmitted signal sequence {s t When the number of transmission symbols of { is N, t=1, 2, . . . , N-1, N.
[0012] In the transmission path 2, the intensity modulator 2-2 modulates the transmission signal sequence {s t The intensity modulator 2-2 converts the received digital electrical signal into a transmission signal sequence {s t}, the light emitted by the light source 2-1 is intensity-modulated, and a transmission signal sequence {s t The optical fiber 2-3 generates the transmission signal sequence {s t The optical receiver 2-4 receives the transmitted signal sequence {s t} is the received signal sequence of the optical signal {r t}, and a received signal sequence {r t The light receiver 2-4 is, for example, a photodiode.
[0013] The discrimination device 4z includes a receiving unit 5, a symbol decision unit 90, and a demodulation unit 7. The receiving unit 5 converts the received signal sequence {r t} is the received signal sequence of digital electrical signals {r t}, and the digital electrical signal received by the preprocessing is converted into a received signal sequence {r t} to the symbol decision unit 90. The symbol decision unit 90 outputs the received signal sequence {r t}, the demodulator 7 identifies and outputs an estimated value of the transmission symbol (hereinafter referred to as an "estimated transmission symbol"). The demodulator 7 restores and outputs an m-ary data sequence from the estimated transmission signal sequence formed from the estimated transmission symbols output by the symbol decision unit 90.
[0014] In this case, if the transmission line 2 is represented by an equalizer circuit, it will have a configuration as shown in Fig. 30. In Fig. 30, it is assumed that intersymbol interference occurs up to the codes separated by L symbols before and after the code at time t in the transmission line 2, and the optical transmission signal sequence {s t} at time t, L symbols before and L symbols after the symbol at time t are provided to transfer function unit 83.
[0015] The delay unit 81 delays the transmission signal sequence {s t} and stores it, and outputs the stored transmission symbol after the time "-LT" has elapsed. Note that since the delay amount has a minus sign, delay device 81 applies a negative delay of "LT". Here, "T" is the symbol interval, and the timing of calculation for each symbol is "tT".
[0016] Each of delay devices 82-1 to 82-2L takes in and stores the transmission symbol output by the immediately preceding delay device 81, 82-1 to 82-(2L-1) connected to it, and outputs the stored transmission symbol after the time "T" has elapsed.
[0017] The transfer function unit 83 applies a transfer function (H) to the symbol sequence output from the delay units 81, 82-1 to 82-2L. The adder 85 adds a noise component ω t and the received signal sequence {r t}. ω t has mean 0 and variance δ 2 The received signal sequence {r t} can be expressed as the following equation (1).
[0018]
number
[0019] As can be seen from equation (1), ω t If the correct transfer function (H) can be calculated in the symbol decision unit 90 by removing the t} can be restored.
[0020] However, when problems such as intersymbol interference and nonlinear response exist, it is difficult to calculate an accurate transfer function (H). As an effective equalization method for obtaining correct transmission data from a received signal waveform distorted by such intersymbol interference and nonlinear response, for example, an equalization method called maximum likelihood sequence estimation (hereinafter referred to as "MLSE") is known (see, for example, Non-Patent Documents 1, 2, 3, and 4).
[0021] Here, an outline of the MLSE method will be explained. The MLSE method is a method in which all transmission signal sequences {s t}, and the output sequence is calculated as the received signal sequence {r t}, the received signal sequence {r t}, where the most likely transmitted symbol corresponding to the transmitted signal sequence {s t} and the received signal sequence {r t When the sequence length N of the symbols in {} becomes large, the amount of calculation required for comparison becomes enormous.
[0022] Therefore, in the MLSE method, the length of the sequence is limited and the comparison is performed, that is, the conditional joint probability density function p N ({r N}{s' N}) t} to determine the transmitted symbol.
[0023]
number
[0024] Conditional joint probability density function p N ({r N}{s' N}) is a transmission signal sequence {s' of length N generated from an m-ary data sequence through a transmission path 2. t} is transmitted, the received signal sequence {rt As can be seen from equation (2), the probability that a transmitted signal sequence {s' t The sequence length of} is limited to "2L+1" instead of "N".
[0025] Conditional joint probability density function p N ({r N}{s' N}) is maximized by the distance function d N This is equivalent to minimizing the above. In equation (3), a substitution is made such that (p-1) / 2=L. Since L is an integer greater than or equal to 1, p is an odd integer greater than or equal to 3.
[0026]
number
[0027] (s' in Equation (3) t-(p-1) / 2 ,…,s' t ,…,s' t+(p-1) / 2 ) is the state of transmission line 2 at time t. t (hereinafter referred to as "transmission path condition μ t When the sequence length is "p", the modulation symbol I = [i1,i2,...,i m The number of all combinations of "m p In this case, the transmission line 2 is m p Therefore, for example, by using the Viterbi algorithm, the received signal sequence {r t} and calculate the distance function d N can be calculated.
[0028] At time t, the transmission line state μ t Distance function d to reach t ({μ t}) is the distance function d at time t-1 t-1 ({μ t-1}) and the likelihood associated with the state transition at time t, i.e., the metric b(r t;μ t-1 →μ t ) is expressed by the following equation (4).
[0029]
number
[0030] Metric b(r t ;μ t-1 →μ t ) is expressed as the following equation (5) using the estimated transfer function (H').
[0031]
number
[0032] The metric b at time t depends only on the state transition from t-1 to t, and does not depend on the state transitions before that. Here, the transmission line state μ t The minimum value d_min of the distance function that reaches t-1 (μ t-1 ) and the corresponding all state transitions are all the transmission line states μ t-1 Assume that the σ is known at
[0033] Under this assumption, the transmission path state μ t Distance function d to reach t ({μ t}), the distance function d corresponding to all state transitions is used t ({μ t}) is not necessary. t All the transmission line states that can transition to t-1}, d_min t-1 (μ t-1 )+b(r t ;μ t-1 →μ t ) and find the minimum value among them, and that value is the transmission line state μ t All distance functions d that reach t ({μ t}) is the minimum value of d_mint (μ t ) This can be expressed as the following equation (6).
[0034]
number
[0035] The above-mentioned transmission path state μ t Distance function d to reach t ({μ t}), there is a method such as the Viterbi algorithm. By using such a method, the distance function d corresponding to all state transitions can be obtained. t ({μ t}) without calculating the transmission path state μ t All the transmission line states that can transition to t-1}, d_min t-1 (μ t-1 )+b(r t ;μ t-1 →μ t ) can be calculated. Therefore, the amount of calculations that increases exponentially with the sequence length can be reduced to a linear increase.
[0036] For example, when the MLSE method is applied to the symbol decision unit 90 of the communication system 100, the symbol decision unit 90 estimates an estimated transfer function (H') and calculates a transmission path state μ t (s' t-(p-1) / 2 ,…,s' t ,…,s' t+(p-1) / 2 ) is substituted. The symbol decision unit 90 substitutes the symbol sequence of the received signal sequence {r t} and the estimated transfer function (H') is (s' t-(p-1) / 2 ,…,s' t ,…,s' t+(p-1) / 2 ) and the sequence obtained by substituting t ;μ t-1 →μ t ) is calculated.
[0037] The symbol decision unit 90 calculates d_min shown in equation (6) using, for example, the Viterbi algorithm. t-1 (μ t-1 )+b(r t ;μ t-1 →μ t ) and the minimum value among the calculated values is used as the distance function d t ({μ t}) is the minimum value of d_min t (μ t The symbol decision unit 90 uses the distance function d t ({μ t}) minimum value d_min t (μ t ), the estimated transmitted symbols are identified by tracing back the paths of the trellis. [Prior art documents] [Non-patent literature]
[0038] [Non-Patent Document 1] M. Ibnkahla and J. Yuan, “A neural network MLSE receiver based on natural gradient descent: application to satellite communications”, Seventh International Symposium on Signal Processing and Its Applications, 2003. Proceedings., 2003, pp. 33-36 vol.1, doi: 10.1109 / ISSPA.2003.1224633. [Non-patent document 2] Hiroki Taniguchi et al., "Demonstration of O-band 255-Gb / s PAM-8 optical transmission in a 20-GHz band-limited environment using MLSE based on nonlinear channel estimation," IEICE Technical Report, OCS2019-18, (June 2019) [Non-patent document 3] Hiroki Taniguchi et al., "Demonstration of 255-Gbps PAM8 O-band SMF 10-km Transmission Using Trellis-Path Limited MLSE," IEICE Technical Report, OCS2019-65, (2020-01) [Non-patent document 4] Hiroki Taniguchi et al., "Demonstration of 255-Gbps PAM8 O-band SMF 20-km Transmission Using Reduced-Scale Nonlinear MLSE," Proceedings of the IEICE Society Conference, Vol. 2020, B-10-20, (September 1, 2020) Summary of the Invention [Problem to be solved by the invention]
[0039] However, when the MLSE method is used, there is a problem that the amount of calculation increases exponentially with the pulse spread width of the signal sequence in the transmission path 2. In the MLSE method, it is necessary to estimate the response characteristics of the transmission path 2, but when a direct detection method is used, there is a problem that the estimation error of the response characteristics increases due to the nonlinearity of square detection. In order to solve these problems, the techniques described in Non-Patent Documents 2 and 4 propose a method called Non-Linear Maximum Likelihood Sequence Estimation (hereinafter referred to as "NL-MLSE" (Non-Linear-MLSE)).
[0040] FIG. 31 is a block diagram showing the configuration of a symbol decision unit 90a of the NL-MLSE system that is applied in place of the symbol decision unit 90 provided in the communication system 100 shown in FIG.
[0041] The symbol decision unit 90a includes a candidate symbol sequence generation unit 91, a replica generation filter unit 92, a subtractor 93, a metric calculation unit 94, a Viterbi decoding unit 95, and an update processing unit 96. The candidate symbol sequence generation unit 91 generates a candidate symbol sequence {s' t}, that is, "m p " transmission path states μ t The symbol sequence (s' t-(p-1) / 2 ,…,s' t ,…,s' t+(p-1) / 2The replica generation filter unit 92 includes a nonlinear filter such as a Volterra filter. The replica generation filter unit 92 generates a candidate symbol sequence {s' t} to generate a replica of the received signal sequence.
[0042] The subtractor 93 subtracts the received signal sequence {r t} and the replica of the received signal sequence generated by the replica generating filter unit 92, and t} to calculate a subtraction value, and outputs the calculated subtraction value. A metric calculation unit 94 squares the absolute value of the subtraction value output by the subtractor 93 to calculate the metric of equation (5) above. A Viterbi decoding unit 95 applies the Viterbi algorithm to the metric calculated by the metric calculation unit 94 to identify an estimated transmitted symbol.
[0043] The update processing unit 96 calculates an estimated transfer function (H') based on the metric calculated by the metric calculation unit 94. The update processing unit 96 calculates tap gain values to be applied to taps of the nonlinear filter of the replica generation filter unit 92 based on the calculated estimated transfer function (H'). For example, if the nonlinear filter is a Volterra filter, each Volterra kernel in a Volterra series becomes a tap. The update processing unit 96 applies the calculated tap gain values to the taps of the nonlinear filter of the replica generation filter unit 92 to update the tap gain values.
[0044] If a linear filter is applied as the filter of the replica generation filter unit 92, the configuration will be such that symbol decisions are made by the conventional MLSE method. In contrast to this, in the NL-MLSE method, a nonlinear filter is applied as the filter of the replica generation filter unit 92. Therefore, in the NL-MLSE method, even if the transfer function (H) of the transmission path 2 is affected by a nonlinear response, it is possible to estimate a transfer function that takes into account the effect of the nonlinear response of the transmission path 2. In principle, the NL-MLSE method is a method in which noise enhancement due to nonlinear calculations does not occur, and therefore it is possible to extract the correct transmission signal sequence {s t Therefore, the symbol decision unit 90a that employs the NL-MLSE method compares the replica of the received signal sequence generated using the estimated transfer function (H') that takes into account the influence of the nonlinear response with the replica of the received signal sequence {r t} and identify estimated transmitted symbols, it is possible to obtain the most likely generated sequence, that is, the estimated transmitted signal sequence formed by the identified estimated transmitted symbols.
[0045] However, when the nonlinear filter applied to the replica generating filter unit 92 is, for example, a third-order Volterra filter shown in the following equation (7), the convolution of the nonlinear response can be performed only once, which poses a problem that the transfer function of the actual transmission path response, which is a repetition of linear and nonlinear responses, cannot be approximated with high accuracy.
[0046]
number
[0047] In view of the above circumstances, an object of the present invention is to provide a technique that enables a transfer function of an actual transmission path response, which is a repetition of linear and nonlinear responses, to be approximated with high accuracy in the NL-MLSE system. [Means for solving the problem]
[0048] One aspect of the present invention is a symbol decision device comprising: a candidate symbol sequence generation unit that generates a plurality of candidate symbol sequences that are candidates for a transmission signal sequence formed by transmission symbols; a transmission channel estimation unit that has a function approximator that approximates a transfer function of a transmission channel through which the transmission signal sequence is transmitted, and that outputs estimated received symbols obtained as an output of the function approximator when each of the plurality of candidate symbol sequences is provided as an input sequence to the function approximator; a decision processing unit that specifies estimated transmitted symbols corresponding to the reception symbol sequence to be decided by maximum likelihood sequence estimation based on a reception symbol sequence to be decided that is obtained from a reception signal sequence when the transmission channel transmits the transmission signal sequence and the estimated received symbols for each of the candidate symbol sequences; and an optimization unit that optimizes the function approximator so that, when provided as an input sequence, a reception symbol to be decided that forms the reception symbol sequence to be decided is obtained as an output.
[0049] One aspect of the present invention is a symbol determination method that generates a plurality of candidate symbol sequences that are candidates for a transmission signal sequence formed by transmission symbols, and when each of the generated plurality of candidate symbol sequences is provided as an input sequence to a function approximator that approximates a transfer function of a transmission path through which the transmission signal sequence is transmitted, outputs estimated reception symbols obtained as the output of the function approximator, and determines the transmission symbols by maximum likelihood sequence estimation based on a reception symbol sequence to be determined that is obtained from a reception signal sequence when the transmission path transmits the transmission signal sequence and the estimated reception symbols for each of the candidate symbol sequences, thereby identifying estimated transmission symbols corresponding to the reception symbol sequence to be determined, and optimizing the function approximator so that when the transmission signal sequence that was transmitted when the reception signal sequence was received or a sequence obtained from the estimated transmission signal sequence formed by the estimated transmission symbols is provided as an input sequence, the function approximator is optimized so that reception symbols to be determined that form the reception symbol sequence to be determined are obtained as the output.
[0050] One aspect of the present invention is a program that causes a computer to function as candidate symbol sequence generation means that generates a plurality of candidate symbol sequences that are candidates for a transmission signal sequence formed by transmission symbols; transmission channel estimation means that has a function approximator that approximates a transfer function of a transmission channel through which the transmission signal sequence is transmitted, and that, when each of the plurality of candidate symbol sequences is provided as an input sequence to the function approximator, outputs estimated received symbols obtained as an output of the function approximator; decision processing means that specifies estimated transmitted symbols corresponding to the reception symbol sequence to be determined by making a decision on the transmitted symbols using maximum likelihood sequence estimation based on a reception symbol sequence to be determined that is obtained from a reception signal sequence when the transmission channel transmits the transmission signal sequence, and the estimated received symbols for each of the candidate symbol sequences; and optimization means that, when provided with the transmission signal sequence that was transmitted when the reception signal sequence was received, or a sequence obtained from the estimated transmission signal sequence formed by the estimated transmitted symbols, optimizes the function approximator so that a reception symbol to be determined that forms the reception symbol sequence to be determined is obtained as an output. [Effects of the Invention]
[0051] According to the present invention, in the NL-MLSE system, it is possible to approximate with high accuracy the transfer function of the actual transmission path response, which is a repetition of linear and nonlinear responses. [Brief explanation of the drawings]
[0052] [Figure 1] 1 is a block diagram showing a configuration of a communication system according to a first embodiment. [Figure 2] FIG. 3 is a block diagram showing the internal configuration of a symbol determination unit in the first embodiment. [Figure 3] FIG. 3 is a block diagram showing a detailed internal configuration of a symbol determination unit in the first embodiment. [Figure 4] 4A and 4B are diagrams illustrating a sequence captured by a phase adjustment unit in the first embodiment. [Figure 5] FIG. 2 is a diagram illustrating an outline of pulse width compression in the first embodiment. [Figure 6] FIG. 2 is a diagram illustrating an example of a configuration of a neural network according to the first embodiment. [Figure 7] FIG. 4 is a diagram showing a processing flow by a phase adjustment unit in the first embodiment. [Figure 8] FIG. 4 is a diagram showing a processing flow by a maximum likelihood sequence estimator in the first embodiment. [Figure 9] FIG. 4 is a diagram showing a processing flow by an optimization unit in the first embodiment. [Figure 10] FIG. 10 is a block diagram showing the internal configuration of a symbol determination unit in the second embodiment. [Figure 11] FIG. 10 is a block diagram showing a detailed internal configuration of a symbol determination unit in the second embodiment. [Figure 12] FIG. 10 is a diagram showing the flow of processing by a maximum likelihood sequence estimator in the second embodiment. [Figure 13] FIG. 11 is a block diagram showing the internal configuration of a symbol determination unit in the third embodiment. [Figure 14] FIG. 11 is a block diagram showing a detailed internal configuration of a symbol determination unit according to a third embodiment. [Figure 15] FIG. 11 is a diagram showing a processing flow by an optimization unit of a symbol determination unit in the third embodiment. [Figure 16] FIG. 11 is a block diagram showing a detailed internal configuration of a symbol determination unit according to a third embodiment. [Figure 17] FIG. 11 is a block diagram showing a detailed internal configuration of a symbol determination unit according to a third embodiment. [Figure 18] FIG. 11 is a diagram showing a processing flow by a symbol determination unit in the third embodiment. [Figure 19] FIG. 13 is a block diagram showing the internal configuration of a symbol decision unit in the fourth embodiment. [Figure 20] FIG. 13 is a diagram showing a processing flow by a phase adjustment unit in the fourth embodiment. [Figure 21] FIG. 1 is a block diagram showing the configuration of a communication system used in an experiment using an experimental system. [Figure 22] 10 is a graph showing the relationship between the bit error rate measured in a communication system used in an experiment using an experimental system and the number of hidden layers. [Figure 23] 10 is a graph showing the relationship between the bit error rate measured in a communication system used in an experiment using an experimental system and the number of nodes in the hidden layer. [Figure 24] 10 is a graph showing the effect of device bandwidth limitations when transmission capacity increases. [Figure 25] 10 is a graph showing the effect of chromatic dispersion when the transmission capacity is increased. [Figure 26] 10 is a graph showing input / output characteristics of a driver and a photoreceiver. [Figure 27] 1 is a graph showing input / output characteristics of a modulator. [Figure 28] 1 is a graph showing loss characteristics in the frequency domain. [Figure 29] FIG. 1 is a block diagram showing a configuration of a conventional communication system. [Figure 30] FIG. 2 is a block diagram of an equalization circuit for a transmission line. [Figure 31] FIG. 10 is a block diagram showing the internal configuration of a symbol decision unit corresponding to the technique disclosed in Non-Patent Document 2. DETAILED DESCRIPTION OF THE INVENTION
[0053] (First embodiment) Hereinafter, embodiments of the present invention will be described with reference to the drawings. Fig. 1 is a block diagram showing the configuration of a communication system 1 in a first embodiment. The communication system 1 includes a signal generating device 3, a transmission path 2, and a discrimination device 4. The signal generating device 3 and the transmission path 2 have the same configuration as the signal generating device 3 and the transmission path 2 included in the conventional communication system 100 shown in Fig. 29.
[0054] The decision device 4 includes a receiving unit 5, a symbol decision unit 6, and a demodulation unit 7. The receiving unit 5 and the demodulation unit 7 have the same configuration as the receiving unit 5 and the demodulation unit 7 of the decision device 4z included in the conventional communication system 100 shown in FIG. 29. The symbol decision unit 6 determines the received signal sequence {r t}, and determine the transmitted symbols to obtain the received signal sequence {r t}.
[0055] 2, the symbol decision unit 6 includes a phase adjustment unit 30 and a maximum likelihood sequence estimation unit 40. The phase adjustment unit 30 is, for example, an FFE (Feed Forward Equalizer), and adjusts the received signal sequence {r t The phase of the transmitted signal sequence {s t} is the topology of
[0056] The maximum likelihood sequence estimator 40 estimates the transmitted signal sequence {s t}, t}, the maximum likelihood sequence estimator 40 calculates a plurality of estimated received symbols by applying the estimated transfer function (H') to each of the received signal sequence {r t}, and the transmission symbol is determined by maximum likelihood sequence estimation. In this way, the maximum likelihood sequence estimator 40 identifies the estimated transmission symbol corresponding to the reception symbol sequence to be determined.
[0057] The phase adjustment unit 30 includes an adaptive filter unit 301, a tentative decision processing unit 302, and an update processing unit 303. The adaptive filter unit 301 is, for example, a linear transversal filter as shown in FIG. 3. The adaptive filter unit 301 updates the received signal sequence {r t} is adaptively equalized.
[0058] 3, the adaptive filter unit 301 includes delay units 31, 32-1 to 32-(u-1), taps 33-1 to 33-u, and an adder 34. As shown in FIG. t The delay unit 31 retrieves a symbol sequence of u symbols centered on the symbol at time t, which is part of the symbol sequence}. From the retrieved symbol sequence of u symbols, the delay unit 31 retrieves a symbol r that is (u-1)T / 2 before time t, i.e., (u-1) / 2 symbols before the symbol at time t. t-(u-1) / 2 Therefore, the tap 33-1 outputs r t-(u-1) / 2 is given.
[0059] Each of the delay units 32-1, 32-2 to 32-(u-1) outputs a symbol one symbol later than the symbol output by the delay unit 31, 32-1 to 32-(u-2) connected to it immediately before. For example, the first delay unit 32-1 outputs r, which is "(u-3)T / 2" time before time t, that is, "(u-3) / 2" symbols before the symbol at time t, from the u symbol sequence. t-(u-3) / 2 The last delay unit 32-(u-1) outputs the symbol r from the u symbol sequence after "(u-1)T / 2" time from time t, that is, after "(u-1) / 2" symbols from the symbol at time t. t+(u-1) / 2 As a result, a signal including a symbol sequence with a sequence length u expressed by the following equation (8) is provided to the taps 33-1 to 33-u.
[0060]
number
[0061] Each of the taps 33-1 to 33-u has so-called filter coefficients f1, f2, ..., f (u+1) / 2 ,…,f u The tap gain values f1 to f urepresents an estimated inverse transfer function that approximates the inverse function of the transfer function (H) of the transmission path 2. The taps 33-1 to 33-u have respective tap gain values f1 to f u The adder 34 sums up the output values of the taps 33-1 to 33-u and outputs the sum. The signal sequence shown in equation (8) is the "(u+1) / 2"th element, r t Therefore, the output value of the adder 34 is a value obtained by the calculation shown in the following equation (9).
[0062]
number
[0063] The tentative decision processor 302 makes a tentative decision on the transmission symbol by hard decision on the output value of the adaptive filter 301. The tentative decision processor 302 outputs the tentatively decided transmission symbol (hereinafter referred to as a "tentative decision symbol") as a tentative decision result.
[0064] The update processing unit 303 updates the tap gain values f1 to f2 of the taps 33-1 to 33-u of the adaptive filter unit 301 as the target values of the output values of the adaptive filter unit 301 as the provisional decision symbols output by the provisional decision processing unit 302. u For example, the update processing unit 303 calculates updated values of the tap gain values f1 to f2 that represent the estimated inverse transfer function. u The updated value of is calculated using the LMS (Least Mean Square) algorithm.
[0065] 3, the update processing unit 303 includes a filter update processing unit 35 and a subtractor 36. In the update processing unit 303, the subtractor 36 subtracts the output value of the adaptive filter unit 301 from the tentative decision symbol output by the tentative decision processing unit 302, and outputs the resulting subtraction value to the filter update processing unit 35 as an error.
[0066] The filter update processor 35 calculates the tap gain values f1 to f2 by the LMS algorithm so as to reduce the error output by the subtractor 36. uThe filter update processing unit 35 calculates the updated values of the calculated tap gain values f1 to f u The updated values are set to the taps 33-1 to 33-u, and the tap gain values f1 to f u Update the following.
[0067] The maximum likelihood sequence estimator 40 comprises a low-pass filter 401, a decision processor 402, a transmission channel estimator 403, an optimizer 404, a candidate symbol sequence generator 405, and a weight selector 406. The low-pass filter 401 is, for example, a linear transversal filter as shown in FIG. 3, which is a low-pass filter that suppresses high-frequency components. The adaptive filter 301 of the phase adjuster 30 amplifies high-frequency components that have been reduced by the transmission channel 2, and therefore also amplifies the high-frequency components of white noise. The low-pass filter 401 suppresses the high-frequency components of white noise that have been amplified by the adaptive filter 301 in the preceding stage. In order to reduce the memory length of the transmission channel estimator 403, the low-pass filter 401 reduces the received signal sequence {r t Here, compressing the impulse response means compressing the pulse width of a signal sequence that has been spread over time due to band limitation and chromatic dispersion, as shown in Figure 5, and this compression can reduce interference between symbols.
[0068] As shown in Fig. 3, the low-pass filter unit 401 includes delay units 41, 42-1 to 42-(v-1), taps 43-1 to 43-v, and an adder 44. Similar to the delay unit 31, the delay unit 41 takes in a sequence of v symbols centered on the symbol at time t, which is part of the output signal sequence of the adaptive filter unit 301 of the phase adjustment unit 30, using the method shown in Fig. 4. Hereinafter, the output signal sequence of the adaptive filter unit 301 will be referred to as {r' t}.
[0069] The delay unit 41 selects a symbol r' that is "(v-1)T / 2" time before time t, that is, "(v-1) / 2" symbols before the symbol at time t, from the sequence of v symbols that has been taken in. t-(v-1) / 2 Therefore, the tap 43-1 outputs r' output from the delay unit 41. t-(v-1) / 2is given.
[0070] Each of the delay units 42-1, 42-1 to 42-(v-1) outputs a symbol that is one symbol later than the symbol output by the delay unit 41, 42-1 to 42-(v-2) connected to it immediately before. For example, the first delay unit 42-1 selects, from the v symbol sequence, r' that is "(v-3)T / 2" time before time t, that is, "(v-3) / 2" symbols before the symbol at time t. t-(v-3) / 2 The final delay unit 42-(v-1) outputs r' from the v symbol sequence, which is "(v-1)T / 2" time after time t, i.e., "(v-1) / 2" symbols after the symbol at time t. t+(v-1) / 2 As a result, a signal including a symbol sequence with a sequence length v expressed by the following equation (10) is provided to the taps 43-1 to 43-v.
[0071]
number
[0072] Each of the taps 43-1 to 43-v has so-called filter coefficients c1, c2, ..., c (v+1) / 2 ,…,c v The tap gain values of r' at time t, which is the "(v+1) / 2"th element, are set. The taps 43-1 to 43-v multiply the symbols provided to them by their respective tap gain values and output the result. The adder 44 sums up the output values of the taps 43-1 to 43-v and outputs the sum. Equation (10) expresses r' at time t, which is the "(v+1) / 2"th element. t Therefore, the output value of the adder 44 is a value obtained by the calculation shown in the following equation (11).
[0073]
number
[0074] As can be seen from equation (11), the low-pass filter unit 401 has tap gain values c1, c2, . . . , c (v+1) / 2,…,c v Although the degree of influence is adjusted by ( ), a single output symbol is output in which the information volume of a sequence of v symbols is compressed. It is known that the amount of calculation in MLSE increases exponentially with the pulse width, but the increase in the amount of calculation can be suppressed by compressing the pulse width using low-pass filter unit 401. The output value output by adder 44 of low-pass filter unit 401 is the received symbol to be determined, and a received symbol sequence to be determined is formed by arranging the received symbols to be determined in time series.
[0075] The candidate symbol sequence generator 405 has the same configuration as the candidate symbol sequence generator 91 shown in FIG. 31, and generates a transmission signal sequence {s t}, t}. Candidate symbol sequence {s' t} is the "m p " transmission path states μ t The symbol sequence (s' t-(p-1) / 2 ,…,s' t ,…,s' t+(p-1) / 2 ) For example, assume that PAM4 is adopted, m=4, and each symbol is represented by a number [0,1,2,3]. If the sequence length p=3, candidate symbol sequence generator 405 generates a sequence of four symbols, [0,0,0], [0,0,1], ~, [2,2,3], [2,3,0], ~, [3,3,3]. 3 , i.e., 64 candidate symbol sequences {s' t The candidate symbol sequence generator 405 generates the generated "m p " candidate symbol sequences {s' t} for each sequence to the addition / comparison / selection unit 52, the path tracing determination unit 51, and the transmission channel estimation unit 403.
[0076] The transmission path estimating unit 403 includes a deep neural network that is a function approximator that approximates the transfer function (H) of the transmission path 2, that is, a function approximator that calculates an estimated transfer function (H'). The transmission path estimating unit 403 applies a plurality of candidate symbol sequences {s' generated by the candidate symbol sequence generating unit 405 to the deep neural network. t} as an input sequence, the estimated received symbols corresponding to each input sequence are calculated. The estimated received symbol sequence is formed by arranging the multiple estimated received symbols calculated by the transmission channel estimator 403 in time series.
[0077] 3, the transmission channel estimation unit 403 includes a DNN (Deep Neural Network) unit 61 and a candidate symbol sequence input unit 62. The candidate symbol sequence input unit 62 receives the "m p " candidate symbol sequences {s' t} are sequentially taken in, and the candidate symbol sequence {s' t} to the corresponding node in the input layer of the DNN unit 61. Note that the candidate symbol sequence generation unit 405 outputs each of the plurality of candidate symbols included in the candidate symbol sequence {s' t} is configured to output one symbol at a time T, the candidate symbol sequence input unit 62 may be configured to have p-1 connected delay devices that delay the received symbols by T time and then output them, similar to the delay devices 72-1 to 72-(p-1) of the optimization unit 404 described later.
[0078] The DNN unit 61 is, for example, a forward propagation type deep neural network, and performs repeated calculations of the recurrence formula of the following equation (12).
[0079]
number
[0080] In the above formula (12), X i+1 is the output vector of layer i, and X iis the input vector of layer i, and W i is the weight parameter matrix, and B i is a bias parameter matrix. The function f(·) is an activation function, and for example, the ReLU (Rectified Linear Unit) function shown in the following equation (13) is applied.
[0081]
number
[0082] The function f(·) is a function that performs nonlinear calculation. Therefore, the repeated calculation of the recurrence formula in the following equation (12) is an operation that repeats linear convolution and nonlinear calculation. Therefore, by applying appropriate weight parameters and appropriate bias parameters, the transfer function (H) that indicates the transmission response of the transmission path 2, which is a repetition of linear and nonlinear responses, can be approximated by the DNN unit 61.
[0083] For example, the candidate symbol sequence {s' t} is "3". In this case, the DNN unit 61 includes a neural network 200, which is a forward propagation type deep neural network as shown in FIG. 6, and is a so-called multilayer perceptron. The neural network 200 includes input layer nodes 210-1, 210-2, and 210-3, first hidden layer nodes 220-1, 220-2, and 220-3, second hidden layer nodes 230-1, 230-2, and 230-3, and an output layer node 240. Hereinafter, the input layer nodes 210-1 to 210-3, the first hidden layer nodes 220-1 to 220-3, the second hidden layer nodes 230-1 to 230-3, and the output layer node 240 will also be referred to as neurons. The connection between two neurons will also be referred to as synapse.
[0084] Each of the input layer nodes 210-1, 210-2, and 210-3 receives a candidate symbol sequence {s' t-1 ,s' t ,s' t+1For example, input layer node 210-1 takes in each symbol of s' t-1 s' is taken in and taken in t-1 The input layer node 210-2 outputs s' as the output value i1. t s' is taken in and taken in t The input layer node 210-3 outputs s' as the output value i2. t+1 s' is taken in and taken in t+1 is output as output value i3.
[0085] Here, as shown in the following equation (14), a vertical vector having output values i1, i2, and i3 of input layer nodes 210-1, 210-2, and 210-3 as elements is defined as vector i.
[0086]
number
[0087] The input layer nodes 210-1, 210-2, and 210-3 are connected to the first hidden layer nodes 220-1, 220-2, and 220-3. The first hidden layer node 220-1 assigns a weight w 1 1-1 and multiplies the output value i2 output by the input layer node 210-2 by a weight w 1 1-2 and multiplies the output value i3 output by the input layer node 210-3 by a weight w 1 1-3 The first hidden layer node 220-1 multiplies the output value of the activation function f(·) by a bias b 1 Adding 1 to the output value h 1 Here, as shown in the following equation (15), the weight w 1 1-1 ,w 1 2-1 ,w 1 3-1 The horizontal vector whose elements are vector W1 Defined as 1.
[0088]
number
[0089] In this case, the output value h of the first hidden layer node 220-1 1 1 can be expressed as the following equation (16) using equations (12), (14), and (15).
[0090]
number
[0091] Similarly, the output value h of the first hidden layer node 220-2 1 2 can be expressed as the following equation (17).
[0092]
number
[0093] Similarly, the output value h of the first hidden layer node 220-3 1 3 can be expressed as the following equation (18).
[0094]
number
[0095] In the above formulas (16) to (18), b 1 1,b 1 2,b 1 3 is a bias added by each of the first hidden layer nodes 220-1, 220-2, and 220-3. Each of the first hidden layer nodes 220-1, 220-2, and 220-3 is connected to each of the second hidden layer nodes 230-1, 230-2, and 230-3. Here, as shown in the following equation (19), the output value h 1 1,h1 2,h 1 The vertical vector with element 2 is vector h 1 Define it as:
[0096]
number
[0097] In this case, the vector h 1 , and calculate the output values h 2 1,h 2 2,h 2 3 can be expressed as the following equation (20). In the following equation (20), b 2 1,b 2 2,b 3 3 is a bias added by each of the second hidden layer nodes 230-1, 230-2, and 230-3. In the following equation (20), the vector W 2 1,W 2 2,W 2 3 is defined by the following equation (21).
[0098]
number
[0099]
number
[0100] Each of the second hidden layer nodes 230-1, 230-2, and 230-3 is connected to the output layer node 240. Here, as shown in the following equation (22), the output values h 2 1,h 2 2,h 2 The vertical vector with element 3 is vector h 2 Define it as:
[0101]
number
[0102] In this case, the vector h 2 Using the above, the output value o1 of the output layer node 240 can be expressed as the following equation (23). 3 1 is the bias that the output layer node 240 adds.
[0103]
number
[0104] Weights and biases representing the estimated transfer function (H') can be obtained by a supervised learning process performed in advance using combinations of multiple input sequences and correct labels of the outputs corresponding to each of the multiple input sequences. The weights and biases obtained by the supervised learning process are set in the corresponding first hidden layer nodes 220-1 to 220-3, second hidden layer nodes 230-1 to 230-3, and output layer node 240. As a result, the candidate symbol sequence {s' t}, an estimated received symbol is obtained as the output value o1 of the output layer node 240. Note that, hereinafter, the combination of weight and bias applied to one neuron is also referred to as a coefficient.
[0105] Candidate symbol sequence {s' t , 210-p. The configuration of the neural network 200 shown in FIG. 6 is an example of a deep neural network provided in the DNN unit 61. The number of nodes in the input layer is determined by dividing the number of nodes in the input layer by the number of candidate symbol sequences {s' tThere are structural restrictions that the number of layers in the intermediate layer must match the number of sequence lengths p of {} and that the number of nodes in the output layer must be one, but the number of layers in the intermediate layer is not limited to two and may be three or more. The number of nodes in the intermediate layer is also not limited to six as shown in FIG. 6 and may be any number. The number of layers and nodes in the intermediate layer is determined in advance as appropriate depending on the complexity of the function to be approximated, the number of input sequences used in the learning process, etc.
[0106] 2, decision processing unit 402 calculates a metric based on the received symbol sequence to be determined output by low-pass filter unit 401 and a plurality of estimated received symbols calculated by transmission channel estimation unit 403. Decision processing unit 402 determines the transmitted symbol by maximum likelihood sequence estimation based on the calculated metric, thereby identifying the estimated transmitted symbol corresponding to the received symbol sequence to be determined.
[0107] 3, the determination processing unit 402 includes a subtractor 54, a metric calculation unit 53, an addition / comparison / selection unit 52, and a path tracing determination unit 51. The subtractor 54 subtracts a plurality of estimated received symbols H'(S' t ) are subtracted from each other to calculate the subtracted value. t " is a symbol sequence defined by the following equation (24), that is, a plurality of candidate symbol sequences {s' t} corresponds to each of the following.
[0108]
number
[0109] The number of subtraction values calculated by the subtractor 54 is determined based on the number of candidate symbol sequences {s' t}, so m pThe metric calculation unit 53 calculates a plurality of metrics by performing the calculation shown in the following equation (25), that is, by squaring the absolute value of each of the plurality of subtraction values output by the subtractor 54.
[0110]
number
[0111] The add / compare / select unit 52 performs the method described above with reference to the above equations (4) to (6) using, for example, the Viterbi algorithm. That is, the add / compare / select unit 52 performs the method described above with reference to the above equations (4) to (6) using, for example, the Viterbi algorithm. t} and the plurality of metrics output by the metric calculation unit 53, a distance function d corresponding to each of the plurality of metrics is calculated. t ({μ t The add / compare / select unit 52 calculates the calculated distance function d t ({μ t}) minimum value d_min t ({μ t}).
[0112] The path tracing determination unit 51 determines the candidate symbol sequence {s' t} and the distance function d detected by the addition / comparison / selection unit 52 t ({μ t}) minimum value d_min t ({μ t}) and generates a trellis path based on the above. The path tracing determination unit 51 traces back the generated trellis path to identify an estimated transmission symbol corresponding to the received symbol sequence to be determined. The number of traces "w" that the path tracing determination unit 51 traces back the path is predetermined, and by setting the number of traces "w" to a fixed value, the amount of calculation required to determine the path to trace back can be reduced. It is known that the path converges by tracing back several times the input sequence length p of the DNN unit 61 provided in the transmission channel estimation unit 403.
[0113] Hereinafter, the path tracing decision unit 51 traces back the trellis path and identifies the estimated transmission symbol corresponding to the time t as the estimated transmission symbol a t The path tracing determination unit 51 determines the estimated transmission symbol a t is output as the decision result. As shown in the following equation (26), the estimated transmitted symbol a t The sequence of p pieces of these in time series is the estimated transmitted signal sequence A t becomes.
[0114]
number
[0115] The optimization unit 404 optimizes a transmission signal sequence generated from a training m-ary data sequence prepared in advance, or an estimated transmission signal sequence A t and the received symbol to be determined, which is the output value of the low-pass filter unit 401, tap gain values c1 to c2 to be applied to the taps 43-1 to 43-v of the low-pass filter unit 401. v and optimizes the coefficients to be applied to the DNN units 61 and 71.
[0116] The optimization unit 404 includes a DNN unit 71, delayers 72-1 to 72-(p-1), a training m-value data storage unit 73, an input switching unit 74, a filter update processing unit 75, a delayer 76, a subtractor 77, and a learning processing unit 78. The DNN unit 71 has the same configuration as the DNN unit 61 of the transmission channel estimation unit 403. The delayer 72-1 delays the symbol output by the input switching unit 74 by one symbol and outputs it. The delayers 72-2 to 72-(p-1) output symbols that are one symbol later than the symbols output by the delayers 72-1 to 72-(p-2) connected to them. Here, p is the candidate symbol sequence {s' generated by the candidate symbol sequence generation unit 405, as described above. t}, which matches the number of nodes in the input layer of the DNN units 61 and 71.
[0117] The training m-value data storage unit 73 stores, in a predetermined order, a plurality of predetermined training m-value data used when performing supervised learning in the DNN unit 71. Here, the predetermined order matches the order in which the plurality of training m-value data are provided to the signal generating device 3.
[0118] That is, by providing the signal generating device 3 with a training m-ary data sequence formed by a plurality of training m-ary data arranged in this order, the signal generating device 3 generates a transmission signal sequence {s t} is generated and sent to the transmission path 2. t} is transmitted to the discrimination device 4 via the transmission path 2. The receiving unit 5 of the discrimination device 4 receives the received signal sequence {r t}, and performs preprocessing to generate a received signal sequence {r t} to the symbol decision unit 6. As a result, the optimization unit 404 of the symbol decision unit 6 acquires a received symbol sequence to be determined that corresponds to the training m-ary data sequence. The received symbols to be determined included in the acquired received symbol sequence to be determined are set as correct labels for the output of the DNN unit 71, in order from the beginning. Meanwhile, the transmission symbols included in the transmission signal sequence generated from the training m-ary data sequence stored in the training m-ary data storage unit 73 are shifted backward by one symbol from the beginning so that the sequence length becomes p, and each of the sequences of consecutive transmission symbols extracted is provided to the DNN unit 71 as an input sequence. This makes it possible to perform supervised learning processing to construct a neural network 200 that calculates the estimated transfer function (H').
[0119] The input switching unit 74 has an internal storage area for storing information indicating the mode, and information indicating the training mode or information indicating the operation mode is written as the information indicating the mode. When the information indicating the mode indicates the training mode, the input switching unit 74 outputs, from the beginning, transmission symbols included in a transmission signal sequence generated in advance from a training m-ary data sequence stored in the training m-ary data storage unit 73. When the information indicating the mode indicates the operation mode, the input switching unit 74 takes in the estimated transmission symbols output by the path tracing determination unit 51 and outputs them to the delay unit 72-1.
[0120] The delay unit 76 takes in the output value output by the low-pass filter unit 401, i.e., the received symbol to be determined, and outputs the received symbol to be determined taken in after the time "wT+(p-1)T / 2", i.e., the time equivalent to "w+(p-1) / 2" symbols has elapsed, to the subtractor 77. In order to use the received symbol to be determined output by the low-pass filter unit 401 as a correct label for supervised learning in the DNN unit 71, the received symbol to be determined must be a value that is smaller than the estimated transmitted symbol a t is obtained, it must be the received symbol to be judged that is the processing target in the metric calculation unit 53, the addition / comparison selection unit 52, and the path tracing decision unit 51.
[0121] Here, the time when a certain received symbol to be judged is obtained is defined as the received signal sequence {r t}, the time is t. Since the time wT has passed due to the processing performed by the path tracing determination unit 51, the estimated transmitted symbol a corresponding to the received symbol to be determined is t is the received signal sequence {r t}, the estimated transmitted symbol a is output from the path tracing decision unit 51 at the time t+wT. t The time when the received symbol to be judged corresponding to the received signal sequence {r t}, the time is t, but the estimated transmitted symbol a t On the time axis, it becomes time t-wT. Furthermore, the estimated transmitted symbol a tHowever, it takes (p-1)T / 2 time for the estimated transmitted symbol a to reach the center position of the input sequence of sequence length p given to the DNN unit 71. t When expressed on the time axis, at time t, delay unit 76 outputs the received symbol to be determined, which is output by low-pass filter unit 401 at time t-wT-(p-1)T / 2, to subtractor 77 after a time of "wT+(p-1)T / 2" has elapsed.
[0122] The subtractor 77 subtracts the output value of the delay unit 76 from the output value of the DNN unit 71, and outputs the error obtained by the subtraction to the filter update processing unit 75 and the learning processing unit 78.
[0123] The filter update processor 75 calculates the tap gain values c1 to c2 by, for example, an LMS algorithm based on the error output by the subtractor 77 so as to reduce the error. v The filter update processing unit 75 calculates the updated values of the calculated tap gain values c1 to c v The updated values are set to taps 43-1 to 43-v, and the tap gain values c1 to c v Update the following.
[0124] The learning processing unit 78 calculates new coefficients, i.e., weights and biases, to be applied to the DNN unit 71 and the DNN unit 61 by, for example, backpropagation so as to minimize the error output by the subtractor 77. The learning processing unit 78 outputs the calculated new coefficients to the weight selection unit 406.
[0125] When a weight selection flag stored in an internal storage area indicates whether weight selection processing is to be performed, the weight selection unit 406 performs the following process of selecting weights to be applied to the DNN units 61 and 71. Specifically, the weight selection unit 406 eliminates connections between neurons in the neural network 200 with small weight values, i.e., synapses between neurons, based on the absolute values of the weights included in the coefficients output by the learning processing unit 78 and a predetermined weight threshold. For example, the weight selection unit 406 rewrites weights whose absolute values are equal to or less than the weight threshold to "0" and then sets new coefficients for the DNN units 71 and 61 to update the coefficients. As a result, for neurons connected to both ends of a synapse with a weight set to "0," the output value of the preceding neuron is not propagated to the succeeding neuron, resulting in the loss of the synapse between the two neurons.
[0126] (Processing of the first embodiment) Next, the processing performed in the first embodiment will be described with reference to Fig. 7 to Fig. 9. Fig. 7 is a flowchart showing the flow of processing by the phase adjustment unit 30, and Fig. 8 is a flowchart showing the flow of processing by the maximum likelihood sequence estimator 40. Before the processing shown in Fig. 7 starts, the following is performed as initial setting.
[0127] When a user of the communication system 1, for example, connects a management terminal device to the identification device 4 and operates the management terminal device, the following initial settings are made to the adaptive filter unit 301, the low-pass filter unit 401, the DNN units 61, 71, and the weight selection unit 406.
[0128] Arbitrarily determined initial values of tap gain values are preset for taps 33-1 to 33-u of adaptive filter unit 301. Arbitrarily determined initial values of tap gain values are preset for taps 43-1 to 43-v of low-pass filter unit 401.
[0129] Here, the candidate symbol sequence {s' tAssume that the sequence length of { is p, and that the DNN unit 61, 71 is provided with a neural network 200 including input layer nodes 210-1 to 210-p. The number of first hidden layer nodes 220-1, 220-1, ... and second hidden layer nodes 230-1, 230-2, ... is a predetermined appropriate number. Arbitrarily determined coefficients, i.e., initial values of weights and biases, are set for the first hidden layer nodes 220-1, 220-1, ..., second hidden layer nodes 230-1, 230-1, ..., and output layer node 240 of the neural network 200 provided in the DNN unit 61 of the transmission channel estimation unit 403. For example, random numbers generated using a random number generator are applied as the initial values of the coefficients. In order to apply the same coefficients to the DNN unit 61 and the DNN unit 72 in the initial state, the initial values of the coefficients applied to the neural network 200 provided in the DNN unit 61 are also set to the neural network 200 of the DNN unit 71. The initial values of the coefficients set to the neural network 200 are written in advance to an area provided in the internal storage area of the learning processing unit 78 for storing the coefficients currently being applied.
[0130] The following information is written to a storage area within the weight selection unit 406. That is, "ON", indicating that weight selection processing is to be performed, is written to a weight selection flag area within the storage area within the weight selection unit 406, indicating whether or not weight selection processing is to be performed. The initial values of coefficients applied to the neural network 200 are written to an area within the storage area within the weight selection unit 406 for storing currently applied coefficients. A predetermined initial value of the weight threshold is written to an area within the storage area within the weight selection unit 406 for storing a weight threshold. A predetermined value is written to an area within the storage area within the weight selection unit 406 for storing a convergence determination value used to determine whether the weights have converged. A predetermined value is written to an area within the storage area within the weight selection unit 406 for storing a decrease width of the weight threshold. A predetermined value is written to an area within the storage area within the weight selection unit 406 for storing a synapse reduction upper limit value indicating an upper limit for synapse reduction.
[0131] A user of the communication system 1 prepares in advance a random sequence with a long period that can suppress overfitting as a training m-ary data sequence to be transmitted using the signal generating device 3. Here, as the random sequence that suppresses overfitting, for example, a random sequence generated by the Mersenne Twister shown in the following Reference 1 is applied. The training m-ary data sequence is prepared in advance so that the sequence length of the training m-ary data sequence, i.e., the number of m-ary data included in the training m-ary data sequence, is a number that allows the coefficients applied to the DNN units 61 and 71 to sufficiently converge.
[0132] [Reference 1: Makoto Matsumoto and Takuji Nishimura, “Mersenne Twister: A 623-Dimensionally Equidistributed Uniform Pseudorandom Number Generator.” ACM Transactions on Modeling and Computer Simulation, 8(1):3-30. 1998.]
[0133] The user of the communication system 1 operates the management terminal device to write a plurality of training m-value data prepared in advance into the training m-value data storage unit 73 of the optimization unit 404 so that when reading from the beginning, the data can be read in the same order as the order in which the signal generating device 3 transmits the data. The user of the communication system 1 operates the management terminal device to write information indicating the training mode into an area indicating the mode provided in the internal storage area of the input switching unit 74.
[0134] (Processing by the phase adjustment unit of the first embodiment) 7 is a flowchart showing the flow of processing by the phase adjustment unit 30 of the symbol decision unit 6. After the above-mentioned initial setting is completed, the user of the communication system 1 provides the m-ary training data to the signal generation device 3 in a predetermined order. The signal generation device 3 generates a transmission signal sequence {s t}, and the generated transmission signal sequence {s t} to the transmission path 2. As a result, the adaptive filter unit 301 of the phase adjustment unit 30 of the symbol decision unit 6 outputs the received signal sequence {r t} will be included.
[0135] The delay element 31 of the adaptive filter unit 301 receives the received signal sequence {r t}, the delay unit 31 receives a symbol sequence of sequence length u from the delay unit 32-1 to the delay unit 32-(u-1) (step Sa1). As described above, each of the delay units 32-1 to 32-(u-1) receives a received signal sequence {rt} to the taps 33-1 to 33-u connected to them. t-(u-1) / 2 ~r t+(u-1) / 2 and the tap gain values f1 to f2 set for each u As a result, the adaptive filter unit 301 multiplies the estimated inverse transfer function by the symbol sequence (r t-(u-1) / 2 ~r t+(u-1) / 2 ) to obtain the output value of the estimated inverse transfer function.
[0136] The taps 33-1 to 33-u output the multiplication results to the adder 34. The adder 34 sums up the multiplication results to calculate the output value shown in equation (9), and outputs the output value to the tentative decision processing unit 302, the subtractor 36, and the low-pass filter unit 401 of the maximum likelihood sequence estimator 40. The signal sequence of this output value is the output signal sequence {r' t} (step Sa2).
[0137] The tentative decision processor 302 makes a tentative decision on the transmission symbol by hard decision on the output value of the adaptive filter 301, and outputs the tentatively decided symbol as the tentative decision result (step Sa3).
[0138] The subtractor 36 subtracts the output value of the adaptive filter unit 301 from the tentative decision symbol output by the tentative decision processor 302, and outputs the resulting subtraction value as an error to the filter update processor 35. The filter update processor 35 calculates the tap gain values f1 to f2 by the LMS algorithm based on the error output by the subtractor 36 so as to reduce the error. u The filter update processing unit 35 calculates the updated values of the calculated tap gain values f1 to f u The updated values are written to the taps 33-1 to 33-u, and the tap gain values f1 to f u is updated (step Sa4).
[0139] The delay unit 31 of the adaptive filter unit 301 outputs a symbol sequence of length u in a range obtained by shifting the range of the symbol sequence of length u acquired in the previous step Sa1 by one symbol to the received signal sequence {rt} (step Sa5, Yes), the process of step Sa1 is performed again. On the other hand, the delay unit 31 adds a symbol sequence of sequence length u in a range shifted by one symbol from the range of the symbol sequence of sequence length u acquired in the previous step Sa1 to the received signal sequence {r t If it is not possible to import from} (No in step Sa5), the process ends.
[0140] (Processing by the maximum likelihood sequence estimator in the first embodiment) 8 is a flowchart showing the flow of processing by the maximum likelihood sequence estimator 40 of the symbol decision unit 6. The delay unit 41 of the low-pass filter unit 401 generates an output signal sequence {r' t}, the delay unit 41 and the delay units 42-1 to 42-(v-1) receive a symbol sequence of length v from the delay unit 41. As described above, each of the delay units 42-1 to 42-(v-1) receives an output signal sequence {r' t} are output to the taps 43-1 to 43-v connected to the respective taps.
[0141] The taps 43-1 to 43-v are assigned the symbol r' t-(v-1) / 2 ~r' t+(v-1) / 2 and the tap gain values c1 to c2 set for each v and outputs the multiplication result to adder 44. Adder 44 sums up the multiplication results to calculate the output value shown in equation (11), i.e., the received symbol to be determined. Adder 44 outputs the calculated received symbol to be determined to subtractor 54 of decision processing unit 402 (step Sb1).
[0142] In parallel with the processing of step Sb1, the candidate symbol sequence generation unit 405 generates a plurality of candidate symbol sequences {s' t The candidate symbol sequence generation unit 405 generates the plurality of candidate symbol sequences {s' t} is output for each sequence to the add / compare / select unit 52, the path tracing determination unit 51, and the transmission channel estimation unit 403.
[0143] The candidate symbol sequence input unit 62 of the transmission path estimation unit 403 receives the candidate symbol sequence {s' t The candidate symbol sequence input unit 62 sequentially takes in the candidate symbol sequence {s' t} to the corresponding input layer nodes 210-1 to 210-p of the DNN unit 61. As a result, the sequence of symbols shown on the right side of equation (24) is provided to the DNN unit 61 as an input sequence.
[0144] In the DNN unit 61, when each of the input layer nodes 210-1 to 210-p receives an input sequence, the input sequence propagates through the first hidden layer nodes 220-1, 220-2, ... and the second hidden layer nodes 230-1, 230-2, ... in this order, and the output layer node 240 calculates an estimated received symbol as an output value. The output layer node 240 outputs the calculated estimated received symbol to the subtractor 54 (step Sb2).
[0145] The subtractor 54 calculates a plurality of subtraction values by subtracting each of the plurality of estimated received symbols output by the DNN unit 61 of the transmission channel estimation unit 403 from the received symbol to be determined included in the received symbol sequence to be determined output by the adder 44 of the low-pass filter unit 401. The metric calculation unit 53 calculates a plurality of metrics by performing the operation shown in equation (25), i.e., squaring the absolute value of each of the plurality of subtraction values output by the subtractor 54 (step Sb3).
[0146] The add / compare / select unit 52 selects the candidate symbol sequence {s' t} and the plurality of metrics output by the metric calculation unit 53, a distance function d corresponding to each of the plurality of metrics is calculated. t ({μ t The add / compare / select unit 52 calculates the calculated distance function d t ({μ t}) minimum value d_min t ({μ t}) is detected (step Sb4).
[0147] The path tracing determination unit 51 determines the candidate symbol sequence {s' t} and the distance function d detected by the addition / comparison / selection unit 52 t ({μ t}) minimum value d_min t ({μ t}) and generates a trellis path based on the above. The path tracing decision unit 51 traces back the generated trellis path and finds the estimated transmitted symbol a corresponding to the received symbol sequence to be determined. t (Step Sb5).
[0148] The input switching unit 74 of the optimization unit 404 receives the estimated transmission symbols a t The input switching unit 74 receives the estimated transmitted symbol a t By taking in the above, the subroutine for the optimization process shown in FIG. 9 is started (step Sb6).
[0149] (Optimization processing by the optimization unit) 9 is started, the input switching unit 74 performs the following process. That is, when the above-mentioned initial setting is completed, the input switching unit 74 selects the transmission signal sequence {s t The input switching unit 74 generates the generated transmission signal sequence {s t} is written and stored in an internal storage area. Note that the input switching unit 74 converts the transmission signal sequence {s t} is being generated, a certain number of transmission symbols will be stored in the internal storage area of the input switching unit 74. Therefore, when the input switching unit 74 is in the process of generating the transmission signal sequence {s t While generating}, the processing from step Sc1 onwards described below may be started.
[0150] The input switching unit 74 of the optimization unit 404 receives the estimated transmission symbol a output from the path tracing determination unit 51. tWhen the input switching unit 74 receives the mode information stored in the internal storage area (step Sc1), it refers to the mode information stored in the internal storage area and determines whether the mode information indicates the operation mode or the training mode (step Sc2). In the initial setting described above, the training mode information is written as the mode information, so here the input switching unit 74 determines that the mode information indicates the training mode (step Sc2, training mode).
[0151] The input switching unit 74 receives the estimated transmission symbol a t The input switching unit 74 discards the discarded estimated transmission symbol a t Instead, the transmission signal sequence {s t} the first sending symbol s t The input switching unit 74 reads out one transmission symbol s and outputs the read transmission symbol s to the DNN unit 71 and the delay unit 72-1. t After outputting, the transmission signal sequence {s t}, that is, the immediately preceding transmitted symbol s t Delete.
[0152] In this case, the DNN unit 71 and the delay unit 72-1 sequentially receive the transmission symbols output by the input switching unit 74. The delay unit 72-1 delays the received transmission symbols by one symbol and outputs them. The delay units 72-2 to 72-(p-1) output symbols that are one symbol later than the transmission symbols output by the delay units 72-1 to 72-(p-2) connected to them. This allows the input switching unit 74 to output the estimated transmission symbols a t After (p-1)T / 2 time has elapsed since the input of t-(p-1) / 2 ,…,s t ,…,s t+(p-1) / 2 ) of length p, t} is given as the input sequence (step Sc3).
[0153] The input switching unit 74 refers to an internal storage area and selects the transmission signal sequence {s t} includes the next transmission symbol to be read out (step Sc4). t} does not include the next transmission symbol to be read (step Sc4, No), the information indicating the mode in the internal storage area is rewritten to information indicating the operation mode (step Sc5). After the process of step Sc5, or when the input switching unit 74 determines that the transmission signal sequence {s t If it is determined that the next transmission symbol to be read is included in} (Yes in step Sc4), the process proceeds to step Sc7.
[0154] In the DNN unit 61, when each of the input layer nodes 210-1 to 210-p receives an input sequence, the input sequence is propagated in the order of the first hidden layer nodes 220-1, 220-2, ... and the second hidden layer nodes 230-1, 230-2, ..., and the output layer node 240 calculates an output value. The output value calculated by the output layer node 240 is calculated by applying an estimated transfer function (H') to a transmission signal sequence {s t The output layer node 240 outputs the calculated output value to the subtractor 77.
[0155] The delay unit 76 takes in the output value output by the low-pass filter unit 401, i.e., the received symbol to be determined, and after a time of "wT+(p-1)T / 2", i.e., a time equivalent to "w+(p-1) / 2" symbols, outputs the taken in received symbol to be determined to the subtractor 77. The subtractor 77 subtracts the output value output by the delay unit 76 from the output value of the DNN unit 71, and outputs the error obtained by the subtraction to the filter update processing unit 75 and the learning processing unit 78 (step Sc7).
[0156] The filter update processor 75 calculates the tap gain values c1 to c2 by the LMS algorithm based on the error output by the subtractor 77 so as to reduce the error. v The filter update processing unit 75 calculates the updated values of the calculated tap gain values c1 to cv The updated values are set to taps 43-1 to 43-v, and the tap gain values c1 to c v is updated (step Sc8), and the optimization processing subroutine is terminated.
[0157] In parallel with the processing of step Sc8, the learning processing unit 78 takes in the error output by the subtractor 77 and squares the taken-in error to calculate a squared error. The learning processing unit 78 performs processing to calculate new coefficients to be applied to the neural network 200 of the DNN units 61 and 71 so as to minimize the calculated squared error. More specifically, the learning processing unit 78 calculates new coefficients to be applied to the neural network 200 by error backpropagation based on the calculated squared error and the coefficients written in the area for storing currently applied coefficients in the internal memory area. The learning processing unit 78 rewrites the coefficients stored in the area for storing currently applied coefficients in the internal memory area with the calculated new coefficients and outputs the calculated new coefficients to the weight selection unit 406. The weight selection unit 406 takes in the new coefficients output by the learning processing unit 78 (step Sc9).
[0158] The weight selection unit 406 refers to an internal storage area and determines whether the weight selection flag is "ON" (step Sc10). Since "ON" was written as the weight selection flag in the initial setting described above, the weight selection unit 406 determines here that the weight selection flag is "ON" (step Sc10, Yes). The weight selection unit 406 reads coefficients from the area of the internal storage area for currently applied coefficients. The weight selection unit 406 compares each of the weights included in the read coefficients with each of the weights included in the new coefficients that have been imported, and determines whether the weights have converged (step Sc11).
[0159] For example, the weight selection unit 406 calculates the squared error between each of the currently applied weights and each of the currently loaded weights corresponding to each of the currently applied weights. The weight selection unit 406 sums the calculated squared errors to calculate a total error value, and determines that convergence has occurred if the calculated total error value is equal to or less than a convergence determination value stored in an internal storage area.
[0160] If the weight selection unit 406 determines that the weights have not converged (step Sc11, No), it proceeds to step Sc17. On the other hand, if the weight selection unit 406 determines that the weights have converged (step Sc11, Yes), it reads the weight threshold from the internal storage area and rewrites the weights whose absolute values are less than or equal to the weight threshold to "0" (step Sc12).
[0161] The weight selection unit 406 reads the decrease amount of the weight threshold from the internal memory area, subtracts the value of the decrease amount of the weight threshold from the weight threshold, and overwrites the area for storing the weight threshold in the internal memory area with the new weight threshold obtained by the subtraction (step Sc13).
[0162] The weight selection unit 406 counts the number of weights whose value is "0." The weight selection unit 406 reads the synapse reduction upper limit value from the internal storage area and determines whether the counted number is equal to or less than the synapse reduction upper limit value (step Sc14). If the weight selection unit 406 determines that the counted number is equal to or less than the synapse reduction upper limit value (step Sc14, Yes), it rewrites the coefficients stored in the area for currently applied coefficients in the internal storage area with the latest coefficients. Here, the latest coefficients refer to the coefficients after the processing of step Sc12. The weight selection unit 406 updates the coefficients by setting the latest coefficients to the first hidden layer nodes 220-1, 220-1, ..., second hidden layer nodes 230-1, 230-1, ..., and output layer node 240 of the corresponding DNN units 61, 71. The weight selection unit 406 outputs the latest coefficients to the learning processing unit 78. The learning processing unit 78 takes in the latest coefficients output by the weight selection unit 406, rewrites the coefficients stored in the area of the internal memory area for the currently applied coefficients with the latest coefficients taken in (step Sc16), and ends the optimization processing subroutine.
[0163] On the other hand, if the weight selection unit 406 determines in the processing of step Sc14 that the counted number, i.e., the number of weights with a value of "0", is not equal to or less than the synapse reduction upper limit value (No in step Sc14), it determines that the synapses have already been sufficiently reduced, and rewrites the weight selection flag in the internal storage area to "OFF" (step Sc15). The weight selection unit 406 rewrites the coefficient written in the area in the internal storage area that stores the currently applied coefficient with the new coefficient acquired in the processing of step Sc9, i.e., the new coefficient output by the learning processing unit 78. For example, when the weight selection unit 406 acquires the new coefficient output by the learning processing unit 78 in the processing of step Sc9, it writes and stores the new coefficient used to rewrite the weight in the processing of step Sc12 to "0" and the acquired original new coefficient in the internal storage area. The weight selection unit 406 updates the coefficients by setting the new coefficients taken in during the processing of step Sc9 to the first hidden layer nodes 220-1, 220-1, ..., the second hidden layer nodes 230-1, 230-1, ..., and the output layer node 240 of the corresponding DNN units 61, 71 (step Sc17), and then ends the optimization processing subroutine.
[0164] In the subroutine of the optimization process described above, it is assumed that the process of step Sc5 is performed and the input switching unit 74 rewrites the information indicating the mode of the internal storage area to information indicating the operation mode. In this case, in the subroutine of the optimization process that is performed again, the input switching unit 74 determines in the process of step Sc2 that the information indicating the mode of the internal storage area indicates the operation mode (step Sc2, operation mode). In this case, the input switching unit 74 determines that the estimated transmission symbol a output by the path tracing determination unit 51 indicates the operation mode. t When one symbol is acquired, the estimated transmitted symbol a t is output as is to the DNN unit 71 and the delay unit 72-1.
[0165] In this case, the DNN unit 71 and the delay unit 72-1 receive the estimated transmission symbol a output from the input switching unit 74. tThe delay unit 72-1 sequentially receives the estimated transmitted symbol a t The delay units 72-2 to 72-(p-1) output a symbol that is one symbol later than the estimated transmission symbol output by the delay units 72-1 to 72-(p-2) connected to them. As a result, the input switching unit 74 outputs the estimated transmission symbol a t After (p-1)T / 2 time has elapsed since the input of t-(p-1) / 2 ,…,a t ,…,a t+(p-1) / 2 ) is given as an input sequence (step Sc6).
[0166] In the above optimization process subroutine, it is assumed that the processing of step Sc15 is performed and the weight selection unit 406 rewrites the weight selection flag in the internal storage area to "OFF." In this case, in the optimization process subroutine that is performed again, the weight selection unit 406 determines that the weight selection flag is "OFF" in the processing of step Sc10 (step Sc10, No), and the processing proceeds to step Sc17.
[0167] Returning to FIG. 8, the delay device 41 of the low-pass filter unit 401 outputs the output signal sequence {r' t} (step Sb7, Yes), the processes of steps Sb1 and Sb2 are performed again. Meanwhile, the delay unit 41 adjusts the range of the symbol sequence of sequence length v, which is shifted by one symbol from the range of the symbol sequence of sequence length v acquired in the previous step Sb1, to the output signal sequence {r' t If it is not possible to import from} (No in step Sb7), the process ends.
[0168] In the symbol decision unit 6 of the first embodiment, the candidate symbol sequence generation unit 405 generates multiple candidate symbol sequences that are candidates for the transmission signal sequence formed by the transmission symbols. The transmission channel estimation unit 403 has a neural network 200 that approximates the transfer function of the transmission channel 2 that transmits the transmission signal sequence. When each of the multiple candidate symbol sequences is provided to the neural network 200 as an input sequence, the neural network 200 outputs an estimated received symbol. The decision processing unit 402 determines the transmitted symbol by maximum likelihood sequence estimation based on the received symbol sequence to be determined obtained from the received signal sequence when the transmission channel 2 transmits the transmission signal sequence and the estimated received symbol for each candidate symbol sequence, thereby identifying the estimated transmitted symbol corresponding to the received symbol sequence to be determined. The optimization unit 404 optimizes the neural network 200 so that, when provided with the transmitted signal sequence transmitted when the received signal sequence was received or a sequence obtained from the estimated transmitted signal sequence formed by the estimated transmitted symbols as an input sequence, the neural network 200 outputs the received symbol to be determined that forms the received symbol sequence to be determined. Neural network 200 enables the repetition of linear convolution and nonlinear calculation, and can represent the repetition of linear and nonlinear responses, which is the transmission path response of actual transmission path 2. Therefore, by optimizing neural network 200, it becomes possible to highly accurately approximate the transfer function of the actual transmission path response, which is the repetition of linear and nonlinear responses, in the NL-MLSE system.
[0169] In the symbol decision unit 6 of the first embodiment, the learning processing unit 78, in the training mode, calculates a transmission signal sequence {s t}, shifting each symbol by one, and extracting a transmission signal sequence {s t} is used as an input sequence to the DNN unit 71. The learning processing unit 78 performs supervised learning processing using, as a correct label, a received symbol to be determined that is included in a received symbol sequence to be determined obtained when the training m-ary data sequence is transmitted and that corresponds to the input sequence to be provided to the DNN unit 71. By performing this learning processing, the coefficients are sufficiently converged and placed in an optimal state, and the neural network 200 provided in the DNN units 61 and 71 is able to perform calculations using an estimated transfer function (H') with high approximation accuracy. After the training mode is completed, the learning processing unit 78 performs supervised learning processing using an estimated transmitted signal sequence {a t} as an input sequence to the DNN unit 71, it is possible to adaptively update the coefficients of the neural network 200 included in the DNN units 61 and 71 even after operation. Therefore, even if a change occurs in the transmission path response of the transmission path 2, it is possible to update the estimated transfer function (H') to follow the change and make it optimal.
[0170] The technology disclosed in Non-Patent Document 1 discloses an MLSE using a neural network with one hidden layer, thereby solving a problem caused by a nonlinear response at one location in the transmission path. In contrast, the DNN units 61 and 71 of the above-described first embodiment include a neural network 200 with at least two hidden layers. Furthermore, the symbol decision unit 6 of the first embodiment includes a phase adjustment unit 30 and a low-pass filter unit 401, which are not shown in Non-Patent Document 1. Therefore, unlike the technology disclosed in Non-Patent Document 1, the symbol decision unit 6 of the first embodiment is capable of approximating with high accuracy the transfer function of the actual transmission path response, which is a repetition of linear and nonlinear responses.
[0171] In the first embodiment described above, a random sequence called Mersenne Twister, which is disclosed in Reference 1, is used as the training m-ary data sequence to suppress over-learning. Incidentally, it is preferable to converge the tap gain values of the adaptive filter unit 301 in advance in order to reduce the error of the output signal sequence {r't} are aligned and stable, which is thought to facilitate convergence of the coefficients in the learning process by the learning processing unit 78. For this reason, a random binary sequence of several hundred or 1,000 symbols may be inserted before the random sequence, and the tap gain values of the adaptive filter unit 301 may be converged first using this random binary sequence. In this case, after the tap gain values of the adaptive filter unit 301 have converged, the tap gain value update process by the update processing unit 303 is stopped, and the tap gain values of the adaptive filter unit 301 are fixed, and in this fixed state, the learning processing unit 78 performs learning using the random sequence that follows the random binary sequence.
[0172] In the neural network 200 included in the DNN units 61 and 71 of the symbol decision unit 6 of the first embodiment, synapses with small weights have little effect on the output values output by the output layer nodes 240, and eliminating synapses with small weights does not significantly degrade performance. Therefore, the weight selection unit 406 in the symbol decision unit 6 rewrites weights calculated by the learning processing unit 78 that are equal to or less than the weight threshold to "0," as shown in the processing of step Sc12 above. In the neural network 200, between two neurons connected to a synapse with a weight of "0," the output value of the preceding neuron is not propagated to the succeeding neuron. This reduces the amount of computation in the DNN units 61 and 71, thereby enabling a reduction in the amount of computation in maximum likelihood sequence estimation.
[0173] As shown in the process of step Sc13, the weight selection unit 406 repeatedly reduces the weight threshold value little by little, thereby eliminating synapses with small weight values. By gradually reducing the weight threshold value in this manner, the number of synapses eliminated at one time is reduced, thereby easing the degradation of performance due to synapse elimination. This makes it possible to optimize the weights of the synapses ultimately used for calculation, i.e., the synapses that remain uneliminated. Note that in the process of step Sc13 described above, the reduction amount of the weight threshold is set to a constant amount. However, multiple reduction amounts of the weight threshold may be set, with the reduction amount initially being large and then decreasing as the number of repetitions of step Sc13 increases.
[0174] As shown in the process of step Sc14, when the number of weights with a value of "0" exceeds the synapse reduction upper limit, the weight selection unit 406 sets the weight selection flag to "OFF" to automatically stop synapse reduction. This process is performed because the process of selecting the weights to be used only needs to be performed once before actual operation begins. If the weights converge to a value exceeding the weight threshold before the number of weights with a value of "0" exceeds the synapse reduction upper limit, a user of the communication system 1 can connect a management terminal device to the symbol determination unit 6 and operate the management terminal device to change the weight selection flag to "OFF," thereby forcibly stopping the synapse reduction process and transitioning to an operational state. In this case, the synapse reduction upper limit may be inappropriate. Therefore, for example, after operation has begun, when the process of steps Sc11 and subsequent steps is periodically performed to optimize the state of the neural network 200, it is desirable to change the synapse reduction upper limit to an appropriate value so that the automatic synapse reduction process is stopped.
[0175] If the configuration changes after operation has started, for example by replacing the optical fiber 2-3 of the transmission path 2, the user of the communication system 1 can connect a management terminal device to the symbol decision unit 6 and operate the management terminal device to rewrite the weight selection flag to "ON" to perform the synapse reduction process again, thereby optimizing the number of synapses to which a weight other than "0" is applied. The weight selection unit 406 may be provided with a timer and periodically rewrite the tap selection flag from "OFF" to "ON" by itself to perform the synapse reduction process.
[0176] In the first embodiment, the phase adjustment unit 30 is provided in front of the maximum likelihood sequence estimator 40, and the maximum likelihood sequence estimator 40 is further provided with a low-pass filter unit 401. In contrast, the received signal sequence {r t} are aligned, or when the memory length for storing the input sequence of the neural network 200, i.e., the time indicated by the sequence length of the input sequence, is longer than the impulse response time of the transmission path 2 to be estimated, the phase adjustment unit 30 and the low-pass filter unit 401 are not provided, and the received signal sequence {r t} may be directly given to the subtractor 54 of the determination processing unit 402 and the delay unit 76 of the optimization unit 404.
[0177] However, in reality, the received signal sequence {r t} may not have the same sampling phase, and the received signal sequence {r t} is not constant, the DNN units 61 and 71 t}, it becomes difficult for the weight selection unit 406 to fix the synapses to be deleted.
[0178] By providing the phase adjustment unit 30, the update processing unit 303 of the phase adjustment unit 30 calculates the error between the tentative decision symbol output by the tentative decision processing unit 302 and the output value of the adaptive filter unit 301, and updates the estimated inverse transfer function so as to reduce the error, for example, by the least squares method. The phase of the output signal sequence output by the adaptive filter unit 301, which calculates the estimated inverse transfer function that has converged through repeated updates, matches the phase of the sequence of transmission symbols obtained through tentative decision, and the sampling phases of the output signal sequence are aligned. The output signal sequence output by the adaptive filter unit 301, which calculates the estimated inverse transfer function that has converged through repeated updates, can also suppress ripples due to reflections on the transmission path 2, etc.
[0179] However, since the adaptive filter unit 301 of the phase adjustment unit 30 amplifies the high-frequency components reduced by the transmission path 2, the high-frequency components of the white noise are also amplified. In order to suppress the high-frequency components of the white noise, the first embodiment is provided with a low-pass filter unit 401. The tap gain values c1, c2, ..., c (v+1) / 2 ,…,c v is updated by the filter update processing unit 75 using the output value of the DNN unit 71 as a target value at the same timing as when new coefficients are applied to the DNN units 61 and 71. Therefore, the output signal sequence {r' t By applying the low-pass filter unit 401 to {}, it becomes possible to suppress the high-frequency components of the white noise amplified by the adaptive filter unit 301.
[0180] In the configuration of the first embodiment, the low-pass filter unit 401 performs a process of compressing the pulse width in addition to a process of suppressing the high-frequency components of the white noise. In the symbol decision unit 6 of the first embodiment, the adaptive filter unit 301 of the phase adjustment unit 30 and the low-pass filter unit 401 of the maximum likelihood sequence estimator 40 are configured to be connected. Therefore, the process of compressing the pulse width can also be performed by the adaptive filter unit 301 of the phase adjustment unit 30. The performance of compressing the pulse width improves as the number of taps increases. Therefore, when the adaptive filter unit 301 of the phase adjustment unit 30 performs the process of compressing the pulse width, the number of u taps 33-1 to 33-u of the adaptive filter unit 301 of the phase adjustment unit 30 needs to be determined according to the desired degree of pulse width compression.
[0181] When the adaptive filter unit 301 of the phase adjustment unit 30 performs the process of compressing the pulse width, the low-pass filter unit 401 of the maximum likelihood sequence estimator 40 only needs to suppress the high-frequency components of the white noise. Ripples due to reflections on the transmission path 2 and the like have already been suppressed by the adaptive filter unit 301 of the phase adjustment unit 30. Therefore, the number of taps 43-1 to 43-v of the low-pass filter unit 401 can be reduced to reduce the scale of the low-pass filter unit 401. In this case, the condition for the value of v, which indicates the number of symbols taken in by the low-pass filter unit 401, is the number of symbols required to converge the coefficients applied to the DNN units 61 and 71.
[0182] In the above first embodiment, an example is shown in which a linear transversal filter is applied to the adaptive filter unit 301 of the phase adjustment unit 30 and the low-pass filter unit 401 of the maximum likelihood sequence estimator 40. However, filters other than the linear transversal filter, such as other linear filters or nonlinear filters, may be applied to the adaptive filter unit 301 and the low-pass filter unit 401. Since it is sufficient for the phase adjustment unit 30 to align the sampling phases, any circuit that can align the sampling phases may be applied.
[0183] For example, a received signal sequence {r t}, such a clock recovery circuit may be regarded as the phase adjustment unit 30. In this case, t}, the low-pass filter unit 401 is not provided, and the received signal sequence {r t} may be directly provided to the subtractor 54 of the determination processing unit 402 and the delay unit 76 of the optimization unit 404.
[0184] (Second embodiment) 10 is a block diagram showing the configuration of a symbol decision unit 6a according to the second embodiment. The symbol decision unit 6a is a functional unit used in place of the symbol decision unit 6 included in the decision device 4 of the first embodiment, and is intended to be used when the transmission path response of the transmission path 2 is constant. For ease of explanation, the decision device 4 including the symbol decision unit 6a instead of the symbol decision unit 6 will be referred to as the decision device 4a, and the communication system 1 including the decision device 4a instead of the decision device 4 will be referred to as the communication system 1a. In the second embodiment, the same components as those in the first embodiment are denoted by the same reference numerals, and only the different components will be described below.
[0185] 10, the symbol decision unit 6a includes a phase adjustment unit 30 and a maximum likelihood sequence estimation unit 40a. The maximum likelihood sequence estimation unit 40a includes a low-pass filter unit 401, a decision processing unit 402, a transmission path estimation unit 403a, and a candidate symbol sequence generation unit 405.
[0186] 11, the transmission channel estimation unit 403a includes a lookup table storage unit 63 and a detection processing unit 64. The lookup table storage unit 63 stores the following data in advance.
[0187] When the channel response of the channel 2 is unchanged, the estimated transfer function (H') also remains unchanged. Therefore, in the training mode of the symbol decision unit 6 of the first embodiment, if the learning processing unit 78 performs a learning process using an m-ary training data sequence to obtain learned coefficients that have sufficiently converged, there is no need to update the coefficients after starting operation.
[0188] Therefore, the candidate symbol sequence generator 405 generates "m p " candidate symbol sequences {s' t} as an input sequence to the DNN unit 61 to which the learned coefficients have been applied, the candidate symbol sequence {s' t}, the estimated received symbols for each of m p " candidate symbol sequences {s' t}, a lookup table is generated in advance in which the estimated received symbol corresponding to each of them is associated, and the generated lookup table is written and stored in the lookup table storage unit 63.
[0189] If the channel response of channel 2 is unchanged, after the training mode ends and operation starts, there is no need to update the tap gain values set for each of taps 43-1 to 43-v of low-pass filter unit 401. Therefore, when the training mode ends, the tap gain values set for each of taps 43-1 to 43-v of low-pass filter unit 401 are written and stored in lookup table storage unit 63.
[0190] The detection processing unit 64 reads out a plurality of tap gain values from the lookup table storage unit 63, and sets each of the read out plurality of tap gain values to the corresponding taps 43-1 to 43-v. The detection processing unit 64 receives the candidate symbol sequence {s' t When the lookup table storage unit 63 receives the candidate symbol sequence {s' tThe detection processing unit 64 outputs the detected estimated received symbols to the subtractor 54. It should be noted that the candidate symbol sequence generation unit 405 detects the candidate symbol sequence {s' t} is output one symbol at a time every T time periods, the detection processing unit 64 receives the candidate symbol sequence {s' t} is preset, and every time p symbols are received from candidate symbol sequence generator 405, the p symbols are grouped into one sequence and an estimated received symbol is detected from the look-up table.
[0191] (Processing of the second embodiment) The processing performed in the second embodiment will be described below. A user of the communication system 1a, for example, connects a management terminal device to the identification device 4a and operates the management terminal device to preset initial values of tap gain values that are arbitrarily determined for the taps 33-1 to 33-u of the adaptive filter unit 301 as the initial setting in the second embodiment.
[0192] Once the above initial settings are completed, the detection processing unit 64 of the transmission path estimation unit 403a reads out a plurality of tap gain values from the lookup table storage unit 63, and sets each of the read out plurality of tap gain values to the corresponding taps 43-1 to 43-v of the low-pass filter unit 401.
[0193] As a result, the communication system 1a enters an operational state, and the signal generator 3 is provided with an m-ary data sequence that is not for training but is actually to be transmitted. The adaptive filter unit 301 of the phase adjuster 30 of the symbol decision unit 6a calculates the received signal sequence {r t} will be included.
[0194] The processing performed by the phase adjustment unit 30 in the second embodiment is the same as the processing performed by the phase adjustment unit 30 in the first embodiment described with reference to FIG.
[0195] (Processing by the maximum likelihood sequence estimator in the second embodiment) 12 is a flowchart showing the flow of processing by the maximum likelihood sequence estimator 40a of the symbol decision unit 6a. The processing of step Sd1 is the same as the processing of step Sb1 in FIG. 8, and is performed by the low-pass filter unit 401. In parallel with the processing of step Sd1, the candidate symbol sequence generator 405 generates a plurality of candidate symbol sequences {s' t The candidate symbol sequence generator 405 generates the generated "m p " candidate symbol sequences {s' t} is output for each sequence to the add / compare / select unit 52, the path tracing determination unit 51, and the detection processing unit 64.
[0196] The detection processing unit 64 detects the candidate symbol sequence {s' t} are sequentially taken in, the candidate symbol sequence {s' t} is detected from the lookup table stored in the lookup table storage unit 63. The detection processing unit 64 outputs the detected estimated received symbols to the subtractor 54 in the order in which they were detected (step Sd2).
[0197] Thereafter, in the process of step Sd3, the same process as step Sb3 in FIG. 8 is performed by the subtractor 54 and the metric calculation unit 53. In the process of step Sd4, the same process as step Sb4 in FIG. 8 is performed by the addition / comparison / selection unit 52. In the process of step Sd5, the same process as step Sb5 in FIG. 8 is performed by the path tracing determination unit 51. As a result, the estimated transmission symbol a t In the process of step Sd6, the same process as step Sb7 in FIG.
[0198] In the second embodiment described above, by using the lookup table stored in the lookup table storage unit 63, it is not necessary to use the DNN unit 61, and it is also not necessary to provide the optimization unit 404. Therefore, it is possible to reduce the device scale of the symbol decision unit 6a in the identification device 4a. Since the neural network 200 is not used during operation, it is possible to prevent an increase in the amount of sequential calculations, and it is therefore possible to expand the scale of the neural network 200 provided in the DNN units 61, 71 of the symbol decision unit 6 of the first embodiment, which is used when generating the lookup table. Note that the second embodiment is based on the premise that the transmission channel response of the transmission channel 2 is constant. However, if the received signal sequence {r t} occurs, the adaptive filter unit 301 of the phase adjustment unit 30 can absorb the time fluctuation.
[0199] In the second embodiment described above, if the symbol decision unit 6 of the first embodiment is configured without the phase adjustment unit 30 and the low-pass filter unit 401, as described in the first embodiment, then the symbol decision unit 6a of the second embodiment will also have a similar configuration. Note that if the symbol decision unit 6 of the first embodiment does not include the low-pass filter unit 401, the lookup table storage unit 63 of the second embodiment will not need to store tap gain values to be set for each of the taps 43-1 to 43-v of the low-pass filter unit 401, and the detection processing unit 64 will not need to set tap gain values for each of the taps 43-1 to 43-v of the low-pass filter unit 401 after the initial setup is complete.
[0200] (Third embodiment) In the learning process performed by the learning processing unit 78 of the first embodiment, a method has been described in which the tap gain values of the adaptive filter unit 301 are converged and fixed in advance using a random binary sequence to ensure stable convergence of the coefficients. However, even if this method is adopted, the learning process of updating the coefficients performed by the learning processing unit 78 and the process of updating the tap gain values of the low-pass filter unit 401 by the filter update processing unit 75 are performed in parallel. When the tap gain values of the low-pass filter unit 401 are updated, the update causes the received symbol to be determined to fluctuate. The received symbol to be determined corresponds to the correct label in the supervised learning performed by the learning processing unit 78. If the correct label fluctuates, it becomes difficult to perform supervised learning using a general machine learning library such as TensorFlow (registered trademark) or PyTorch.
[0201] In the third embodiment, a configuration assuming the use of a general machine learning library will be described. In the third embodiment, three types of configurations are used: a symbol determination unit 6b shown in Fig. 13, a symbol determination unit 6c shown in Fig. 16, and a symbol determination unit 6d shown in Fig. 17. Of these, the symbol determination unit 6d performs supervised learning processing by applying a general machine learning library, and the symbol determination units 6b and 6c are used to generate in advance correct labels to be used in the supervised learning processing.
[0202] For ease of explanation, the identification device 4 equipped with a symbol determination unit 6b instead of the symbol determination unit 6 will be referred to as the identification device 4b, and the communication system 1 equipped with the identification device 4b instead of the identification device 4 will be referred to as the communication system 1b. The identification device 4 equipped with a symbol determination unit 6c instead of the symbol determination unit 6 will be referred to as the identification device 4c, and the communication system 1 equipped with the identification device 4c instead of the identification device 4 will be referred to as the communication system 1c. The symbol determination unit 6d is not connected to the transmission path 2 and is used offline. In the third embodiment, the same components as those in the first and second embodiments are denoted by the same reference numerals, and components different from those in the first and second embodiments will be described.
[0203] (Configuration of the symbol decision unit 6b in the third embodiment) As shown in Fig. 13, the symbol decision unit 6b includes a phase adjustment unit 30 and a maximum likelihood sequence estimation unit 40b. The maximum likelihood sequence estimation unit 40b includes a low-pass filter unit 401, a decision processing unit 402, a transmission channel estimation unit 403b, an optimization unit 404b, and a candidate symbol sequence generation unit 405. As shown in Fig. 14, the transmission channel estimation unit 403b has a configuration in which the DNN unit 61 in the transmission channel estimation unit 403 of the first embodiment is replaced with a linear adaptive filter unit 61b.
[0204] The optimization unit 404b has a configuration in which the DNN unit 71 is replaced with a linear adaptive filter unit 71b, the learning processing unit 78 is replaced with a filter update processing unit 78b, and the input switching unit 74 is replaced with an input switching unit 74b in the optimization unit 404 of the first embodiment. The linear adaptive filter unit 61b and the linear adaptive filter unit 71b have the same configuration. The linear adaptive filter units 61b and 71b are, for example, linear transversal filters similar to the adaptive filter unit 301 and the low-pass filter unit 401, and the number of taps is set to be equal to the number of taps of the candidate symbol sequence {s' generated by the candidate symbol sequence generation unit 405. t} is a small-scale linear adaptive filter with a sequence length p.
[0205] The filter update processor 78b calculates update values of tap gain values to be applied to taps included in the linear adaptive filter units 61b and 71b using, for example, an LMS algorithm, so as to reduce the error based on the error output by the subtractor 77. The filter update processor 78b sets each of the calculated update values of tap gain values to the corresponding taps of the linear adaptive filter units 61b and 71b, thereby updating the tap gain values. The input switcher 74b has the same configuration as the input switcher 74 of the first embodiment, except that if the information indicating the mode is information indicating the operation mode or if there is no symbol to be output next, the input switcher 74b ends the process without rewriting the information indicating the mode to information indicating the operation mode.
[0206] (Processing when the symbol decision unit 6b of the third embodiment is used) The following describes processing using the symbol decision unit 6b of the third embodiment. A user of a communication system 1b equipped with the symbol decision unit 6b connects a management terminal device to the identification device 4b and operates the management terminal device to perform the following initial settings in the third embodiment. Initial values of tap gain values arbitrarily determined are set in advance for the taps 33-1 to 33-u of the adaptive filter unit 301, the taps 43-1 to 43-v of the low-pass filter unit 401, and the taps of the linear adaptive filter units 61b and 71b. Initial values are set for each of the taps of the linear adaptive filter units 61b and 71b so that the tap gain values of the respective taps are the same. A random binary sequence of several hundred or approximately 1,000 symbols is written in advance to the training m-ary data storage unit 73 as a training m-ary data sequence. Information indicating a training mode is written in advance to a mode-indicating area provided in an internal storage area of the input switching unit 74b.
[0207] When the above initial setting is completed, the user of the communication system 1b provides the signal generating device 3 with the same data sequence as the training m-ary data sequence written in the training m-ary data storage unit 73. As a result, the adaptive filter unit 301 of the phase adjustment unit 30 of the symbol decision unit 6b generates a received signal sequence {r t} will be included.
[0208] The processing performed by the phase adjustment unit 30 in the third embodiment is the same as the processing performed by the phase adjustment unit 30 in the first embodiment described with reference to FIG.
[0209] (Processing by the maximum likelihood sequence estimator of the third embodiment) The processing by the maximum likelihood sequence estimator 40b of the third embodiment is the same as the processing shown in FIG. 8, except that in the processing by the maximum likelihood sequence estimator 40 of the first embodiment shown in FIG. 8, the optimization processing subroutine shown in FIG. 9, which is performed as the processing of step Sb6, is replaced with the optimization processing subroutine shown in FIG. 15, and the processing of step Sb2 is replaced with the processing described below.
[0210] (Processing of step Sb2 in the third embodiment) In the third embodiment, a linear adaptive filter unit 61b is provided instead of the DNN unit 61. Therefore, the following processing is performed in step Sb2. That is, in parallel with the processing in step Sb1, the candidate symbol sequence generation unit 405 generates a plurality of candidate symbol sequences {s' t The candidate symbol sequence generation unit 405 generates the plurality of candidate symbol sequences {s' t} is output for each sequence to the add / compare / select unit 52, the path tracing determination unit 51, and the transmission channel estimation unit 403.
[0211] The candidate symbol sequence input unit 62 of the transmission path estimation unit 403 receives the candidate symbol sequence {s' t The candidate symbol sequence input unit 62 sequentially takes in the candidate symbol sequence {s' t} is output to the corresponding tap of the linear adaptive filter unit 61b. As a result, the sequence of symbols shown on the right side of equation (24) is provided as an input sequence to the linear adaptive filter unit 61b.
[0212] The linear adaptive filter unit 61b performs a filtering process in which an input sequence is substituted into an estimated transfer function (H') represented by tap gain values set in the taps, and obtains a candidate symbol sequence {s' t The subtractor 54 sequentially receives the plurality of estimated received symbols output by the linear adaptive filter unit 61b.
[0213] Thereafter, the processes of steps Sb3, Sb4, and Sb5 are performed, and in step Sb6, the subroutine of the optimization process shown in FIG. 15 is started.
[0214] (Optimization process performed in step Sb6 of the third embodiment) A subroutine of the optimization process in the third embodiment will be described with reference to Fig. 15. Similar to the input switching unit 74 in the first embodiment, when the above-described initial setting is completed, the input switching unit 74b selects the transmission signal sequence {s t}, and the generated transmission signal sequence {s t} is written to the internal memory area and stored.
[0215] The processing of steps Se1 and Se2 is the same as the processing of steps Sc1 and Sc2 in Fig. 9. In the initial setting described above, information indicating the training mode is written as information indicating the mode, and therefore, here, the input switching unit 74b determines that the information indicating the mode indicates the training mode (step Se2, training mode).
[0216] The input switching unit 74b refers to an internal storage area and selects the transmission signal sequence {s t} includes the next transmission symbol to be read out (step Se3). t If it is determined that the next transmission symbol to be read out is not included in {} (No in step Se3), the subroutine for the optimization process is terminated.
[0217] On the other hand, the input switching unit 74b receives the transmission signal sequence {s t} includes the next transmission symbol to be read (Yes in step Se3), the estimated transmission symbol a t The input switching unit 74b discards the discarded estimated transmission symbol a t Instead, the transmission signal sequence {s t} the first sending symbol s t One transmitted symbol s is read out. t to the linear adaptive filter unit 71b and the delay unit 72-1. After outputting the read transmission symbols, the input switching unit 74b outputs the transmission signal sequence {s t}, that is, the immediately preceding transmitted symbol s t Delete.
[0218] The linear adaptive filter unit 71b and the delay unit 72-1 sequentially receive the transmission symbols output by the input switching unit 74b. The delay unit 72-1 sequentially receives the received transmission symbols s t The delay units 72-2 to 72-(p-1) output a symbol that is one symbol later than the transmission symbol output by the delay units 72-1 to 72-(p-2) connected to them. As a result, the input switching unit 74b outputs the estimated transmission symbol a t After (p-1)T / 2 time has elapsed since the input of the linear adaptive filter 71b, t-(p-1) / 2 ,…,s t ,…,s t+(p-1) / 2 ) of length p, t} is given as the input sequence (step Se4).
[0219] The linear adaptive filter unit 71b performs a filtering process in which an input sequence is substituted into an estimated transfer function (H') represented by the tap gain values set for the taps, and outputs an output value. The subtractor 77 takes in the output value output by the linear adaptive filter unit 71b.
[0220] The delay unit 76 takes in the output value output by the low-pass filter unit 401, i.e., the received symbol to be determined, and outputs the taken-in received symbol to be determined after the lapse of a time "wT+(p-1)T / 2", i.e., a time equivalent to "w+(p-1) / 2" symbols, to the subtractor 77. The subtractor 77 subtracts the output value output by the delay unit 76 from the output value of the linear adaptive filter unit 71b, and outputs the error obtained by the subtraction to the filter update processing unit 75 and the filter update processing unit 78b (step Se5).
[0221] The filter update processor 75 calculates the tap gain values c1 to c2 by the LMS algorithm based on the error output by the subtractor 77 so as to reduce the error. vThe filter update processing unit 75 calculates the updated values of the calculated tap gain values c1 to c v The updated values are set to taps 43-1 to 43-v, and the tap gain values c1 to c v is updated (step Se6).
[0222] In parallel with the processing of step Se6, the filter update processor 78b calculates update values of the tap gain values to be applied to the taps of the linear adaptive filter units 61b and 71b using the LMS algorithm based on the error output by the subtractor 77 so as to reduce the error. The filter update processor 78b sets each of the calculated update values of the tap gain values to the corresponding taps of the linear adaptive filter units 61b and 71b, thereby updating the tap gain values (step Se7). This ends the subroutine of the optimization processing. Thereafter, the processing of step Sb7 shown in FIG. 8 is performed.
[0223] 15, it is assumed that the input switching unit 74b determines that the information indicated by the mode indicates the operation mode (step Se2, operation mode). In this case, since there is an error in the initial setting, the input switching unit 74b outputs an error message indicating that the mode is incorrect to a display unit such as a display connected to the identification device 4b (step Se8), and ends the process.
[0224] When the processing by the symbol decision unit 6c described above is completed, at that point in time, the taps 33-1 to 33-u of the adaptive filter unit 301 and the taps 43-1 to 43-v of the low-pass filter unit 401 are set to sufficiently converged tap gain values.
[0225] (Configuration of the symbol decision unit 6c in the third embodiment) 16 is a block diagram showing the configuration of the symbol decision unit 6c. The symbol decision unit 6c includes a phase adjustment unit 30c and a maximum likelihood sequence estimator 40c. The phase adjustment unit 30c includes an adaptive filter unit 301. At the time when the processing by the symbol decision unit 6b described above is completed, tap gain values that have been set in advance for the taps 33-1 to 33-u of the adaptive filter unit 301 of the symbol decision unit 6b and have sufficiently converged are set for the taps 33-1 to 33-u. Unlike the phase adjustment unit 30, the phase adjustment unit 30c does not include an update processing unit 303, and therefore the tap gain values of the taps 33-1 to 33-u of the adaptive filter unit 301 are fixed.
[0226] Maximum likelihood sequence estimator 40c includes low-pass filter unit 401, writing unit 407, and correct label storage unit 408. At the time when the processing by symbol decision unit 6b described above is completed, tap gain values that have been set in advance to taps 43-1 to 43-v of low-pass filter unit 401 of symbol decision unit 6b and have sufficiently converged are set in each of taps 43-1 to 43-v. Because maximum likelihood sequence estimator 40c does not include optimization unit 404b like maximum likelihood sequence estimator 40b, the tap gain values of taps 43-1 to 43-v of low-pass filter unit 401 remain fixed.
[0227] The writing unit 407 sequentially takes in the received symbols to be determined that are calculated and output by the adder 44 of the low-pass filter unit 401, and writes and stores the taken received symbols to be determined in the correct label storage unit 408 in the order that they were taken in.
[0228] (Processing when the symbol determination unit 6c of the third embodiment is used) A training m-ary data sequence, which is a random sequence generated by Mersenne Twister, is prepared in advance. When a user of the communication system 1c provides the training m-ary data sequence to the signal generating device 3 of the communication system 1c equipped with the symbol determining unit 6c, the phase adjusting unit 30c of the symbol determining unit 6c generates a received signal sequence {r t} is incorporated. Since the phase adjustment unit 30c does not include the tentative determination processing unit 302 and the update processing unit 303, the processing by the phase adjustment unit 30 of the first embodiment shown in FIG. 7 is the processing in which the processing of step Sa5 is performed after steps Sa1 and Sa2.
[0229] The low-pass filter unit 401 filters the output signal sequence {r' t}. The low-pass filter unit 401 performs the processes of steps Sb1 and Sb7 of the processes performed by the maximum likelihood sequence estimator 40 of the first embodiment shown in FIG. 8. The write unit 407 sequentially takes in the received symbols to be determined output by the low-pass filter unit 401, and writes and stores the taken received symbols to be determined in order in the correct label storage unit 408. When reading from the beginning, the write unit 407 writes the received symbols to be determined in the correct label storage unit 408 so that they can be read in the same order as the order in which they were output by the low-pass filter unit 401. As a result, the correct label storage unit 408 stores the correct labels of the output to be applied to the supervised learning process performed on the DNN units 61 and 71.
[0230] (Configuration of the symbol decision unit 6d in the third embodiment) 17 is a block diagram showing the configuration of the symbol decision unit 6d. As described above, the symbol decision unit 6d is used offline and does not need to be connected to the transmission path 2. Therefore, the symbol decision unit 6d does not need to be provided in the identification device 4 and can be operated as a standalone device.
[0231] The symbol decision unit 6d includes an optimization unit 404d, a correct label storage unit 408, and a readout unit 409. The correct label storage unit 408 is the correct label storage unit 408 at the time when the processing by the symbol decision unit 6c described above is completed, and has written thereto a received symbol sequence to be determined generated by the processing by the symbol decision unit 6c. The readout unit 409 reads out received symbols to be determined one by one in order starting from the first received symbol to be determined stored in the correct label storage unit 408, every time it receives a training instruction signal from the learning processing unit 78d, and outputs the read received symbols to be determined to the subtractor 77. That is, when the readout unit 409 receives the first training instruction signal, it reads out one received symbol to be determined stored in the correct label storage unit 408, and outputs the read received symbol to be determined to the subtractor 77. When reading unit 409 receives the second training instruction signal, it reads out one received symbol to be determined that is second from the top stored in correct label storage unit 408, and outputs it to subtractor 77. In this way, every time reading unit 409 receives a training instruction signal from learning processing unit 78d, it reads out from correct label storage unit 408 the number of received symbols to be determined that corresponds to the number of times the training instruction signal has been received, and outputs it to subtractor 77.
[0232] In other words, each time the reading unit 409 receives a training instruction signal, it can be considered to be performing a process equivalent to outputting the received symbols to be judged, which are included in the received symbol sequence to be judged and generated by the symbol judgment unit 6c, one by one in order from the beginning to the subtractor 77.
[0233] The optimization unit 404d includes a DNN unit 71, a training m-ary data storage unit 73, a transmission symbol sequence input unit 79, a subtractor 77, and a learning processing unit 78d. The training m-ary data storage unit 73 has written therein in advance an m-ary data sequence that is the same as the training m-ary data sequence provided to the signal generating device 3 when the symbol decision unit 6c generates the received symbol sequence to be decided that is stored in the correct label storage unit 408.
[0234] Every time the transmission symbol sequence input unit 79 receives a training instruction signal from the learning processing unit 78d, it selects a transmission signal sequence {st The transmission symbol sequence input unit 79 generates the generated transmission signal sequence {s t} is given to the DNN unit 71 as an input sequence.
[0235] For example, when the reading unit 409 receives the kth training instruction signal, the correct label read from the correct label storage unit 408 is the transmitted signal sequence {s t}, the received symbol to be determined corresponds to time t. Here, k is an integer equal to or greater than 1. In this case, the transmission symbol sequence input unit 79 preliminarily calculates the transmission signal sequence {s t} is generated, and when the kth training instruction signal is received, the transmitted symbol s t The transmitted signal sequence (s t-(p-1) / 2 ,…,s t ,…,s t+(p-1) / 2 ) is expressed as the generated transmission signal sequence {s t In this way, every time the transmission symbol sequence input unit 79 receives a training instruction signal from the learning processing unit 78d, it extracts a sequence of sequence length p according to the number of times the training instruction signal has been received from the transmission signal sequence {s t} and use it as the input sequence.
[0236] In other words, upon receiving a training instruction signal from the learning processing unit 78d, the transmission symbol sequence input unit 79 generates a transmission signal sequence (s t-(p-1) / 2 ,…,s t ,…,s t+(p-1) / 2 ) is the transmission signal sequence {s t Therefore, the received symbol to be determined and the transmitted signal sequence (s t-(p-1) / 2 ,…,s t ,…,s t+(p-1) / 2) can be considered as training data with a correct answer label used when performing supervised learning in the neural network 200 included in the DNN unit 71. Note that the transmission signal sequence (s t-(p-1) / 2 ,…,s t ,…,s t+(p-1) / 2 ) and the received symbol sequence to be judged, which is the sequence of the correct label, the deviation can be detected in advance by using a cross-correlation function. If a deviation exists, the transmission symbol sequence input unit 79 outputs the generated transmission signal sequence (s t-(p-1) / 2 ,…,s t ,…,s t+(p-1) / 2 ) is output to the DNN unit 71.
[0237] The subtractor 77 subtracts the received symbol to be determined output by the readout unit 409 from the output value of the DNN unit 71, and outputs the error obtained by the subtraction to the learning processing unit 78d. The learning processing unit 78d calculates new coefficients, i.e., weights and biases, to be applied to the DNN unit 71 by, for example, backpropagation so as to minimize the error output by the subtractor 77.
[0238] (Processing by the symbol determination unit 6d in the third embodiment) 18 is a flowchart showing the flow of processing by the symbol determination unit 6d. An internal storage area of the learning processing unit 78d is provided with areas for storing four parameters: a mini-batch size, a counter within a mini-batch, the number of times mini-batch processing is repeated, and a counter for mini-batch processing.
[0239] Before the process of FIG. 18 starts, the user of the symbol determination unit 6d, for example, connects a management terminal device to the symbol determination unit 6d and operates the management terminal device to perform the following initial settings. For example, assume that 10,000 correct labels are stored in the correct label storage unit 408. In this case, as an example, "100" is pre-written into the mini-batch size and "100" is pre-written into the number of mini-batch processing repetitions. The intra-mini-batch counter and the mini-batch processing counter are initialized to "0." As in the first embodiment, initial values of the coefficients are set for the neural network 200 of the DNN unit 71. The initial values of the coefficients set for the neural network 200 are pre-written into an area for storing currently applied coefficients, which is provided in a storage area inside the learning processing unit 78d.
[0240] When the above-mentioned initial setting is completed, the transmission symbol sequence input unit 79 calculates the transmission signal sequence {s t The transmission symbol sequence input unit 79 generates the generated transmission signal sequence {s t} is written to the internal memory area and stored.
[0241] The learning processing unit 78d outputs a training instruction signal to the reading unit 409 and the transmission symbol sequence input unit 79 (step Sf1). Upon receiving the training instruction signal, the reading unit 409 reads a correct label corresponding to the number of times the training instruction signal has been received from the correct label storage unit 408 and outputs the correct label to the subtractor 77 (step Sf2).
[0242] In parallel with the processing of step Sf2, when the transmission symbol sequence input unit 79 receives a training instruction signal, it generates a transmission signal sequence (s t-(p-1) / 2 ,…,s t ,…,s t+(p-1) / 2 ) stored in the internal memory area, t} and use it as an input sequence. The transmission symbol sequence input unit 79 outputs each of the p transmission symbols included in the generated input sequence to the corresponding input layer nodes 210-1 to 210-p. As a result, the output layer node 240 of the neural network 200 included in the DNN unit 71 calculates an output value and outputs the calculated output value to the subtractor 77 (step Sf3).
[0243] The subtractor 77 subtracts the value indicated by the correct label output by the readout unit 409 from the output value of the DNN unit 71 to calculate an error, and outputs the calculated error to the learning processing unit 78d. The learning processing unit 78d takes in the error output by the subtractor 77 and writes and stores the taken-in error in an internal memory area. The learning processing unit 78d adds 1 to the value indicated by the intra-mini-batch counter in the internal memory area, and sets the value as the new value of the intra-mini-batch counter in the internal memory area (step Sf4).
[0244] The learning processing unit 78d repeats the processes of steps Sf1 to Sf4 until the value of the mini-batch counter in the internal storage area reaches the value indicated by the mini-batch size of the internal storage area (loop Lf2s to Lf2e).
[0245] When the value of the mini-batch counter in the internal storage area reaches "100," i.e., the value indicated by the mini-batch size of the internal storage area, the learning processing unit 78d reads out the number of errors that matches the mini-batch size stored in the internal storage area, i.e., 100 errors, and the coefficients of the neural network 200 stored in the internal storage area. The learning processing unit 78d performs a process of calculating new coefficients to be applied to the neural network 200 of the DNN unit 71 so as to minimize the sum of squared errors, which is the sum of the values obtained by squaring each of the 100 read errors. More specifically, the learning processing unit 78d calculates new coefficients to be applied to the neural network 200 by backpropagation based on the calculated sum of squared errors and the coefficients applied to the neural network 200 that are written in the area for storing currently applied coefficients in the internal storage area (step Sf5).
[0246] The learning processing unit 78d initializes the value of the mini-batch counter in the internal storage area to "0." The learning processing unit 78d adds 1 to the value indicated by the mini-batch processing counter in the internal storage area, and sets the new value of the mini-batch processing counter in the internal storage area. The learning processing unit 78d rewrites the coefficients stored in the area for storing the currently applied coefficients in the internal storage area with the calculated new coefficients, sets the new coefficients for the neural network 200 of the DNN unit 71, and updates the coefficients (step Sf6).
[0247] The learning processing unit 78d repeatedly performs the processes of loop Lf2s to Lf2e and steps Sf5 and Sf6 until the value of the mini-batch processing counter in the internal storage area reaches the value indicated by the number of mini-batch processing repetitions in the internal storage area (loop Lf1s to Lf1e).
[0248] The learning processing unit 78d ends the process when the value of the mini-batch processing counter in the internal storage area reaches "100," that is, the value indicated by the number of mini-batch processing repetitions in the internal storage area. As a result, if the number of combinations included in the training data with correct answers labels is sufficient to converge the coefficients of the DNN unit 71, when the process of FIG. 18 ends, the neural network 200 that calculates the estimated transfer function (H') with high approximation accuracy will be constructed in the DNN unit 71.
[0249] The above learning process is a general supervised learning process that uses labeled training data, which is a combination of multiple input sequences and corresponding labels, and can therefore be implemented using a general machine learning library. The above learning process is a so-called mini-batch gradient descent method, and is included in a general machine learning library.
[0250] The coefficients applied to the neural network 200 of the DNN unit 71 at the time the processing of FIG. 18 is completed are applied to, for example, the DNN units 61 and 71 of the symbol decision unit 6 of the first embodiment, and written to an area for storing applied coefficients in a storage area within the learning processing unit 78. Then, by changing the information indicating the mode of the storage area within the input switching unit 74 to information indicating the operation mode, the communication system 1 can be put into an operation state without the symbol decision unit 6 performing a learning process using a training m-ary data sequence, which takes a long time. In this case, the tap gain values set for the taps 33-1 to 33-u of the adaptive filter unit 301 and the tap gain values set for the taps 43-1 to 43-v of the low-pass filter unit 401 may be the values at the time of initial setting described in the first embodiment, or may be the tap gain values set for the taps 33-1 to 33-u of the adaptive filter unit 301 and the taps 43-1 to 43-v of the low-pass filter unit 401 of the symbol decision unit 6c of the third embodiment.
[0251] 18 is completed, a lookup table to be stored in the lookup table storage unit 63 of the symbol decision unit 6a of the second embodiment may be generated. In this case, the tap gain values set for the taps 43-1 to 43-v of the low-pass filter unit 401 of the symbol decision unit 6c of the third embodiment are used as the tap gain values of the taps 43-1 to 43-v of the low-pass filter unit 401 to be written in advance to the lookup table storage unit 63. Note that the tap gain values set for the taps 33-1 to 33-u of the adaptive filter unit 301 of the symbol decision unit 6a may be the values at the time of initial setting described in the second embodiment, or may be the tap gain values set for the taps 33-1 to 33-u of the adaptive filter unit 301 of the symbol decision unit 6c of the third embodiment.
[0252] As explained in the first embodiment, the received signal sequence {r t} are aligned, or when the memory length for storing the input sequence of the neural network 200, i.e., the time indicated by the sequence length of the input sequence, is longer than the impulse response time in the transmission path 2 to be estimated, there is no need to provide the phase adjustment unit 30 and the low-pass filter unit 401. In this case, there is no need to use the symbol decision units 6b and 6c of the third embodiment, and the received signal sequence {r t By applying the correct label storage unit 408 in which} is written to the symbol determination unit 6d, it becomes possible to perform supervised learning processing.
[0253] (Fourth embodiment) 19 is a block diagram showing the configuration of a symbol determination unit 6e in the fourth embodiment. For convenience of explanation, the identification device 4 equipped with the symbol determination unit 6e instead of the symbol determination unit 6 will be referred to as the identification device 4e, and the communication system 1 equipped with the identification device 4e instead of the identification device 4 will be referred to as the communication system 1e. In the fourth embodiment, the same components as those in the first to third embodiments are denoted by the same reference numerals, and only the different components will be described below.
[0254] The symbol decision unit 6e includes a phase adjustment unit 30e and a maximum likelihood sequence estimation unit 40. The phase adjustment unit 30e includes an adaptive filter unit 301, a tentative decision processing unit 302, an update processing unit 303, and an arithmetic average calculation unit 304.
[0255] The arithmetic average calculation unit 304 is connected to the adaptive filter unit 301, more specifically to the adder 34 of the adaptive filter unit 301, and receives the output value expressed by equation (9) output from the adder 34. The arithmetic average calculation unit 304 calculates the average of the output values output from the adder 34, and outputs the average to the low-pass filter unit 401 of the maximum likelihood sequence estimation unit 40.
[0256] (Processing by the phase adjustment unit of the fourth embodiment) Fig. 20 is a flowchart showing the flow of processing by the phase adjustment unit 30e of the symbol decision unit 6e. As a preprocessing before the processing of the flowchart shown in Fig. 20, a user of the communication system 1e, for example, connects a management terminal device to the identification device 4e and operates the management terminal device to perform initial setting similar to that of the first embodiment, and further performs the following initial setting. "ON" is written to an area for an arithmetic average flag, which is provided in a storage area inside the arithmetic average calculation unit 304 and indicates whether or not arithmetic average processing is to be performed. A value "q", which indicates a predetermined arithmetic average number of times, is written to an area for an arithmetic average number, which is provided in a storage area inside the arithmetic average calculation unit 304. Here, q is an integer equal to or greater than 2.
[0257] The processing of steps Sg1 to Sg5 is the same as the processing of steps Sa1 to Sa5 in the first embodiment shown in FIG.
[0258] The arithmetic average calculation unit 304 acquires the output value expressed by equation (9) output by the adder 34 of the adaptive filter unit 301 in the processing of step Sg2 (step Sg10). The arithmetic average calculation unit 304 references an internal storage area and determines whether the arithmetic average flag is "ON" (step Sg11). If the arithmetic average calculation unit 304 determines that the arithmetic average flag is not "ON" (step Sg11, No), it outputs the acquired output value to the low-pass filter unit 401 of the maximum likelihood sequence estimator 40 (step Sg12) and performs the processing of step Sg10 again.
[0259] On the other hand, if the arithmetic average calculation unit 304 determines that the arithmetic average flag is "ON" (step Sg11, Yes), it writes the captured output value to an internal storage area (step Sg13). The arithmetic average calculation unit 304 reads the arithmetic average number q from the internal storage area. The arithmetic average calculation unit 304 determines whether q output values exist in the internal storage area (step Sg14). If the arithmetic average calculation unit 304 determines that q output values do not exist in the internal storage area (step Sg14, No), it performs the process of step Sg10 again.
[0260] On the other hand, if it is determined that q output values exist in the internal storage area (step Sg14, Yes), the arithmetic average calculation unit 304 calculates an arithmetic average output value by adding up 1 / q values of each of the q output values. The arithmetic average calculation unit 304 outputs the arithmetic average output value to the low-pass filter unit 401 of the maximum likelihood sequence estimator 40 (step Sg15). The arithmetic average calculation unit 304 deletes the output value that was written first, i.e., the oldest, from the internal storage area (step Sg16), and performs the process of step Sg10 again.
[0261] The symbol decision unit 6e of the fourth embodiment described above has the following advantages in addition to the advantages of the symbol decision unit 6 of the first embodiment, by including the arithmetic average calculation unit 304. For example, the symbol decision unit 6e of the fourth embodiment has the following advantages in addition to the advantages of the symbol decision unit 6 of the first embodiment ... t} from the signal generating device 3, the arithmetic average calculation unit 304 can perform so-called ensemble averaging. That is, the arithmetic average calculation unit 304 calculates the received signal sequence {r t}, and the training output signal sequence {r' t The learning processing unit 78 of the maximum likelihood sequence estimator 40 can generate the training output signal sequence {r' tBased on the {}, the coefficients applied to the DNN units 61 and 71 are converged by a learning process, and the weight selection unit 406 performs a process of reducing synapses in the neural network 200 included in the DNN units 61 and 71. This allows the weight selection unit 406 to perform a process of reducing synapses while reducing the influence of white noise. Therefore, even when the tap gain value of the low-pass filter unit 401, which suppresses the high-frequency components of white noise, has not converged, a received symbol sequence to be evaluated that has a consistent sampling phase and is less affected by white noise can be obtained, making it possible to extract synapses that have a significant impact on expressing the estimated transfer function (H') more quickly and with higher accuracy. When synapse extraction is complete and the system is to transition to an operational state, a user of the communication system 1e can operate a management terminal device to write "OFF" to the arithmetic average flag field provided in the internal memory area of the arithmetic average calculation unit 304, thereby preventing the processes of steps Sg13 to Sg16 from being performed.
[0262] (Results from experiments using an experimental system) 21 is a block diagram showing the configuration of a communication system 500 used to measure the effect of the symbol decision unit 6 of the first embodiment. The communication system 500 is an experimental system for performing an O-band optical transmission experiment of 224 Gbps, PAM4, 2 km, and 4 channels, and includes a transmitting-side offline DSP 501, an arbitrary waveform generator (hereinafter referred to as an "AWG" (Arbitrary Waveform Generator)) 502, amplifiers 503-1 to 503-4, a TOSA (Transmitter Optical Sub-Assembly) 504, an optical fiber transmission line 505, a DeMUX (De-Multiplexer) 506, a variable optical attenuator (hereinafter referred to as a "VOA" (Variable Optical Attenuator)) 507, a PIN-type photodiode (hereinafter referred to as a "PIN-PD" (Photo Diode)) 508, an amplifier 509, a digital storage oscilloscope (hereinafter referred to as a "DSO" (Digital Storage Oscilloscope)) 510, and a receiving-side offline DSP 511.
[0263] The transmitter offline DSP 501 performs PAM4 mapping, oversampling, pre-emphasis, and resampling on the transmission data to generate an m-ary data sequence where m=4. The AWG 502, which has a performance of 112 GSample / s and 65 GHz, accepts the m-ary data sequence generated by the transmitter offline DSP 501 and generates and outputs four transmission signal sequences based on the accepted m-ary data sequence. The amplifiers 503-1 to 503-4 each amplify the four transmission signal sequences output by the AWG 502. The TOSA is a 4-λ LAN (Local Area Network)-WDM (Wave Division Multiplexing) TOSA, and converts each of the transmission signal sequences output by the amplifiers 503-1 to 503-4 into optical signals of four different wavelengths, wavelength-multiplexes the converted optical signals, and transmits them to the optical fiber transmission line 505.
[0264] The optical fiber transmission line 505 is 2 km long and is a standard single mode fiber (SSMF) with a chromatic dispersion of -4.2 ps / nm at a wavelength of 1295 nm, and transmits the wavelength-multiplexed optical signal sent by the TOSA 504. The DeMUX 506 is a DeMUX for LAN-WDM, which demultiplexes the optical signal of four wavelengths transmitted by the optical fiber transmission line 505 and outputs each of the demultiplexed optical signals from four output interfaces.
[0265] The VOA 507 switches to one of the four output interfaces of the DeMUX 506 and connects it, adjusting the power of the optical signal received through the connected output interface. The PIN-PD 508 has a cutoff frequency of 50 GHz and converts the intensity-modulated light into a received signal sequence of analog electrical signals using direct detection. The amplifier 509 amplifies and outputs the received signal sequence of analog electrical signals output by the PIN-PD 508. The DSO 510 has a performance of 160 GSample / s and 63 GHz and takes in the received signal sequence of analog electrical signals output by the amplifier 509 and converts it into a received signal sequence of digital signals.
[0266] The receiving-side offline DSP 511 receives the received signal sequence of the digital electrical signal converted and generated by the DSO 510. The receiving-side offline DSP 511 performs resampling and normalization on the received signal sequence received from the DSO 510, identifies estimated transmission symbols using the symbol decision unit 6, and performs PAM4 demapping to restore an m-ary data sequence. The receiving-side offline DSP 511 calculates the bit error rate of the restored m-ary data sequence.
[0267] 22 is a graph showing the relationship between the bit error rate calculated by the receiving-side offline DSP 511 and the number of hidden layers in the neural network 200 of the DNN units 61 and 71 of the symbol decision unit 6. The measurement conditions under which the graph in FIG. 22 was obtained were that the number of hidden layer nodes in each of the hidden layers of the neural network 200 of the DNN units 61 and 71 of the symbol decision unit 6 was 50. For example, if there were two hidden layers, the total number of hidden layer nodes would be 100. In addition, the power of the optical signal received by the PIN-PD 508 was set to 2 dBm by the VOA 507.
[0268] In Figure 22, the dotted line parallel to the horizontal axis indicates the "hard-decision error correction limit." Here, the "hard-decision error correction limit" is an error rate that indicates the transmission performance at which error correction is sufficient when hard-decision forward error correction (FEC) is used, and is an index for measuring the performance of signal processing such as MLSE. As shown in the legend, the five graphs in Figure 22 are represented by four types of marks: a white circle "◯," a square "□," a diamond "◇," and a triangle "△." These are graphs of the measurement results of measuring the optical signals obtained from each of the four output interfaces of the DeMUX 506, and the graph represented by a black circle "●" is a graph showing the average value of the four graphs.
[0269] As can be seen from Figure 22, when the number of hidden layers is two or more, the bit error rate becomes lower than the hard-decision error correction limit. It can be seen that the more hidden layers there are, the lower the bit error rate and the better the transmission performance. However, when the number of hidden layers is three or more, the learning process of the neural network 200 is not performed stably, so the bit error rate may or may not be improved. Therefore, in the average graph indicated by the black circles "●", it can be seen that when the number of hidden layers exceeds three, the bit error rate obtained is almost the same as the bit error rate when there are three hidden layers.
[0270] Fig. 23 is a graph showing the relationship between the bit error rate calculated by the receiving-side offline DSP 511 and the number of nodes in the hidden layer of the neural network 200 of the DNN units 61 and 71 of the symbol decision unit 6. The measurement conditions under which the graph in Fig. 23 was obtained were that the number of hidden layers in the neural network 200 of the DNN units 61 and 71 of the symbol decision unit 6 was three, and the power of the optical signal received by the PIN-PD 508 was set to 2 dBm by the VOA 507. In Fig. 23, the dotted line parallel to the horizontal axis indicates the "hard-decision error correction limit," as in Fig. 22, and the meanings of the five marks indicating the type of graph are the same as in Fig. 22.
[0271] As can be seen from the graph in Figure 23, when the number of nodes in the hidden layer is 10 or more, the bit error rate becomes lower than the hard-decision error correction limit. It can be seen that the more nodes in the hidden layer there are, the lower the bit error rate becomes, and the better the transmission performance becomes. In particular, a significant improvement is obtained when the number of nodes in the hidden layer is between 10 and 50, but as can be seen from the average graph indicated by the black circles "●", no significant improvement is obtained when the number exceeds 50.
[0272] (Supplementary information for each embodiment) The configuration of the neural network 200 shown in the first to fourth embodiments above is an example, and any other configuration of neural network or machine learning method other than a neural network may be used as long as it is a function approximator that approximates the transfer function (H) of the transmission path 2 and calculates an estimated transfer function (H').
[0273] In the first to fourth embodiments described above, the activation function of the neural network 200 is the ReLU function shown in equation (13), but for example, a sigmoid function shown in the following equation (27) or another activation function may be applied. In equation (27), α is a gain, and is predetermined to a value greater than 0.
[0274]
number
[0275] For example, as an activation function other than the ReLU function and the sigmoid function, the function shown in the following equation (28) derived from the contents described in Reference 2 below may be applied.
[0276]
number
[0277] [Reference 2: F. Koyama and K. Iga, “Frequency chirping in external modulators”, in Journal of Lightwave Technology, vol. 6, no. 1, pp. 87-93, Jan. 1988, doi: 10.1109 / 50.3969]
[0278] In equation (28) above, β is the modulation depth of the intensity modulator 2-2 in the transmission line 2 and is a value between 0 and 1. The value of β indicates the amplitude of the signal to be modulated by the intensity modulator 2-2 when the range between the minimum and maximum power levels that can be changed in the intensity modulator 2-2 is normalized by 1. Basically, the minimum amplitude level of the signal to be modulated is 1-β, and the maximum amplitude level is 1. By changing the modulation depth β, it is possible to adjust whether to perform modulation in a region where the response of the intensity modulator 2-2 remains linear, or to ensure a large amplitude that reduces the influence of noise despite a nonlinear response. In equation (28), γ is the chirp factor of the intensity modulator 2-2, a parameter that indicates the degree to which different phase modulation occurs for each modulation frequency. As can be seen from equation (28), the modulation depth β and the chirp factor γ function like hyperparameters in a certain nonlinear function. Therefore, by applying the actual modulation depth β of the intensity modulator 2-2 of the transmission line 2 and the chirp factor γ to the parameters of the activation function of equation (28), equation (28) can be made into an activation function that takes into account the input / output characteristics of the components that make up the transmission line 2. By applying such an activation function to the neural network 200, it is possible to construct a neural network that takes into account the theoretical response characteristics of the components that make up the transmission line 2, and since the accuracy of feature extraction can be improved compared to when a ReLU function or a sigmoid function is used, it is possible to obtain an estimated transfer function (H') with high approximation accuracy.
[0279] The supervised learning process described in the first embodiment uses stochastic gradient descent, which calculates new coefficients each time an error is obtained. However, the mini-batch gradient descent method described in the third embodiment may be used instead, in which new coefficients are calculated based on multiple errors obtained for each mini-batch. By using mini-batch gradient descent, the coefficients of the neural network 200 are updated less frequently than with stochastic gradient descent, thereby reducing the amount of computation and enabling stable supervised learning processing with reduced influence of outliers. In the first embodiment, stochastic gradient descent may be applied in training mode and mini-batch gradient descent in operation mode. Alternatively, conversely, mini-batch gradient descent may be applied in training mode and stochastic gradient descent in operation mode. In the third embodiment, stochastic gradient descent may be applied, in which new coefficients are calculated each time an error is obtained, as described in the first embodiment. Like mini-batch gradient descent, stochastic gradient descent is also a learning process included in general machine learning libraries. When mini-batch gradient descent is applied in the first and third embodiments, the mini-batch size described in the third embodiment is merely an example, and an appropriate number may be determined as appropriate. As a method to be applied to the supervised learning process of the first and third embodiments, a method other than the stochastic gradient descent method and the mini-batch gradient descent method may be applied.
[0280] In the first embodiment described above, a function that calculates a squared error is applied as the error generating function, and in the third embodiment, a function that calculates the sum of squared errors is applied, but an error generating function other than these functions may also be applied.
[0281] In the first, third, and fourth embodiments described above, the learning processing units 78, 78d calculate new coefficients to be applied to the neural network 200 by the backpropagation method, but may calculate new coefficients to be applied to the neural network 200 by a method other than the backpropagation method.
[0282] The sequences generated by the Mersenne Twister shown in the first and third embodiments are examples of training m-ary data sequences, and other random sequences with long periods that can suppress overfitting may also be used as the training m-ary data sequence.
[0283] The learning process of the neural network 200 shown in the first and third embodiments may be used as a method for estimating a forward transfer function other than the transfer function of the transmission path 2 in MLSE and a method for extracting features.
[0284] In the first to fourth embodiments, the candidate symbol sequence input unit 62 receives the candidate symbol sequence {s' t For example, the candidate symbol sequence input unit 62 may perform pre-processing such as normalization when it receives the candidate symbol sequence {s' t} may be expanded into a Volterra series, and the input sequence including higher-order terms may be provided to the DNN unit 61. In this case, however, the sequence length of the input sequence is set to 1 / s. t}, the number of input layer nodes 210-1, 210-2, ... of the neural network 200 provided in the DNN unit 61 and the number of taps of the linear adaptive filter unit 61b must be increased according to the number of input sequences provided. In this case, the number of input layer nodes 210-1, 210-2, ... of the neural network 200 provided in the DNN unit 71 and the number of taps of the linear adaptive filter unit 71b must also be increased. Therefore, the input switching units 74, 74b and the transmission symbol sequence input unit 79 select the transmission signal sequence {s t}, and the generated transmission signal sequence {s t}, it is necessary to perform Volterra series expansion similar to that performed by the candidate symbol sequence input unit 62.
[0285] In the first to fourth embodiments described above, the filter update processor 35 of the update processor 303 in the phase adjusters 30 and 30e and the filter update processors 75 and 78b of the optimizers 404 and 404b in the maximum likelihood sequence estimators 40 and 40b calculate update values for the tap gain values using the LMS algorithm. However, instead of the LMS algorithm, other update algorithms such as the recursive least squares (RLS) algorithm may be applied.
[0286] In the first to fourth embodiments described above, an example is shown in which the Viterbi algorithm is applied in the maximum likelihood sequence estimation process of the decision processing unit 402, but the BCJR algorithm may also be applied.
[0287] The weight selection unit 406 described in the first embodiment may be inserted between the learning processing unit 78d of the symbol decision unit 6d shown in FIG. 17 of the third embodiment and the DNN unit 71.
[0288] The phase adjustment unit 30 included in the symbol decision unit 6a of the second embodiment and the symbol decision unit 6b of the third embodiment shown in Figures 13 and 14 may be replaced with the phase adjustment unit 30e of the fourth embodiment. The arithmetic average calculation unit 304 of the fourth embodiment may be inserted between the adder 34 of the phase adjustment unit 30c of the symbol decision unit 6c of the third embodiment shown in Figure 16 and the low-pass filter unit 401.
[0289] The delay device 76 provided in the symbol decision unit 6 of the first embodiment, the symbol decision unit 6b of the third embodiment, and the symbol decision unit 6e of the fourth embodiment takes in the output value output by the low-pass filter unit 401, i.e., the received symbol to be decided, and outputs the taken-in received symbol to be decided after the time of "wT+(p-1)T / 2", i.e., the time equivalent to "w+(p-1) / 2" symbols has elapsed, to the subtractor 77. The reason for doing so is that, as described above, in the case of the symbol decision unit 6 of the first embodiment, for example, the estimated transmitted symbol a at time t tThis is to position the estimated transmission symbol a at time t at the center of the input sequence of sequence length p given to the DNN unit 71. t The position of the estimated transmitted symbol a at time t does not have to be the center position of the input sequence of sequence length p given to the DNN unit 71, but may be included at any position of the input sequence of sequence length p given to the DNN unit 71. t The learning process is performed on the assumption that the input sequence of length p is shifted from the center position, and the DNN unit 71 in the optimized state by the learning process outputs an output value that is almost identical to the received symbol to be judged at time t. t The fact that the position of "wT" does not have to be the center position of the input sequence also applies to the symbol decision unit 6b of the third embodiment and the symbol decision unit 6e of the fourth embodiment. Therefore, the delay unit 76 sets any time between "wT" and "wT+(p-1)T / 2" as the delay time, and outputs the received symbol to be decided that has been taken in after the delay time has elapsed to the subtractor 77.
[0290] The symbol decision unit 6 of the first embodiment, the symbol decision unit 6a of the second embodiment, the symbol decision unit 6b of the third embodiment, and the symbol decision unit 6e of the fourth embodiment each include a candidate symbol sequence generation unit 405. The candidate symbol sequence generation unit 405 is configured to generate a candidate symbol sequence by p " candidate symbol sequences {s' t} is repeatedly generated. In contrast to this, instead of the candidate symbol sequence generation unit 405, the "m p " candidate symbol sequences {s' t}, 1~m p In this case, the add / compare / select unit 52, the path tracing determination unit 51, the candidate symbol sequence input unit 62 of the first, third and fourth embodiments, and the detection processing unit 64 of the second embodiment may each have an internal counter, with the initial value of the counter set to 1, and the candidate symbol sequence {s' t} from the storage unit, and after reading, the counter value is incremented by 1. p , the add / compare / select unit 52, the path tracing decision unit 51, the candidate symbol sequence input unit 62, and the detection processing unit 64 each set the next counter value to "m p It will be "1" instead of "+1".
[0291] In the configuration of the first embodiment described above, a determination process using an inequality sign with an equal sign is performed in the processing of steps Sc11, Sc12, and Sc14 shown in Fig. 9. However, the present invention is not limited to this embodiment, and the determination process of "whether it is equal to or less than" is merely an example, and may be replaced with a determination process of "whether it is less than" depending on how the threshold value is defined.
[0292] The symbol decision units 6, 6a, 6b, 6c, 6d, and 6e of the first to fourth embodiments may be configured as a single symbol decision device.
[0293] The symbol decision units 6, 6a, 6b, 6c, 6d, and 6e in the above-described embodiments may be implemented by a computer. In this case, a program for implementing this function may be recorded on a computer-readable recording medium, and the program may be loaded into a computer system and executed. Note that the term "computer system" herein includes hardware such as an OS and peripheral devices. Furthermore, the term "computer-readable recording medium" refers to portable media such as flexible disks, optical magnetic disks, ROMs, and CD-ROMs, as well as storage devices such as hard disks built into a computer system. Furthermore, the term "computer-readable recording medium" may also include devices that dynamically store programs for a short period of time, such as communication lines used when transmitting programs via networks such as the Internet or telephone lines, or devices that store programs for a fixed period of time, such as volatile memory within a computer system serving as a server or client. The program may be for implementing only a portion of the above-described functions, or may be capable of implementing the above-described functions in combination with a program already stored in the computer system, or may be implemented using a programmable logic device such as an FPGA (Field Programmable Gate Array).
[0294] Although an embodiment of the present invention has been described above in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and includes designs within the scope of the gist of the present invention. [Industrial Applicability]
[0295] It can be used as a receiving device for 400GbE and 800GbE transmission. [Explanation of symbols]
[0296] 6...symbol decision unit, 30...phase adjustment unit, 40...maximum likelihood sequence estimation unit, 301...adaptive filter unit, 302...temporary decision processing unit, 303...update processing unit, 401...low-pass filter unit, 402...decision processing unit, 403...transmission path estimation unit, 404...optimization unit, 405...candidate symbol sequence generation unit, 406...weight selection unit
Claims
1. a candidate symbol sequence generator that generates a plurality of candidate symbol sequences that are candidates for a transmission signal sequence formed by transmission symbols; a transmission path estimator having a function approximator that approximates a transfer function of a transmission path through which the transmission signal sequence is transmitted, and that outputs estimated received symbols obtained as outputs of the function approximator when each of the plurality of candidate symbol sequences is provided to the function approximator as an input sequence; a decision processing unit that identifies an estimated transmitted symbol corresponding to the target received symbol sequence by determining the transmitted symbol using maximum likelihood sequence estimation based on a target received symbol sequence obtained from a received signal sequence when the transmission path transmits the transmitted signal sequence and the estimated received symbol for each candidate symbol sequence; an optimization unit that optimizes the function approximator so that, when the transmitted signal sequence transmitted when the received signal sequence was received or a sequence obtained from the estimated transmitted signal sequence formed by the estimated transmitted symbols is given as an input sequence, the function approximator optimizes the function approximator so that a received symbol to be determined that forms the received symbol sequence to be determined is obtained as an output; Equipped with a phase adjustment unit that aligns sampling phases of the received signal sequence by applying an estimated inverse transfer function that approximates an inverse function of a transfer function of the transmission path to the received signal sequence, and outputs the received signal sequence with the aligned sampling phases; The determination processing unit a symbol sequence of the received signal sequence, the sampling phase of which is aligned and output by the phase adjustment unit, is taken as the received symbol sequence to be determined; a low-pass filter unit that suppresses high-frequency components of the received signal sequence whose sampling phases are aligned and output by the phase adjustment unit; The determination processing unit a symbol sequence of the received signal sequence in which high frequency components have been suppressed by the low-pass filter unit is taken as the received symbol sequence to be determined; Further comprising a correct label storage unit, The optimization unit Calculating optimal filter coefficients for the low-pass filter unit in a state where a linear adaptive filter is provided instead of the function approximator; The phase adjustment unit optimizing the estimated inverse transfer function with the linear adaptive filter replacing the function approximator; the correct label storage unit stores, as a correct label, each of the received symbols to be determined included in the received symbol sequence to be determined, which is obtained when a predetermined training transmission signal sequence is transmitted through the phase adjustment unit in which the estimated inverse transfer function is optimized and the low-pass filter unit to which the optimal filter coefficient calculated by the optimization unit is applied; The optimization unit a symbol decision device that uses as an input sequence a portion of the training transmission signal sequence that was transmitted when the correct label stored in the correct label storage unit was obtained, and optimizes the function approximator so that, when the input sequence is given, it outputs the correct label corresponding to the input sequence.
2. a candidate symbol sequence generator that generates a plurality of candidate symbol sequences that are candidates for a transmission signal sequence formed by transmission symbols; a transmission path estimator having a function approximator that approximates a transfer function of a transmission path through which the transmission signal sequence is transmitted, and that outputs estimated received symbols obtained as outputs of the function approximator when each of the plurality of candidate symbol sequences is provided to the function approximator as an input sequence; a decision processing unit that identifies an estimated transmitted symbol corresponding to the target received symbol sequence by determining the transmitted symbol using maximum likelihood sequence estimation based on a target received symbol sequence obtained from a received signal sequence when the transmission path transmits the transmitted signal sequence and the estimated received symbol for each candidate symbol sequence; an optimization unit that optimizes the function approximator so that, when the transmitted signal sequence transmitted when the received signal sequence was received or a sequence obtained from the estimated transmitted signal sequence formed by the estimated transmitted symbols is given as an input sequence, the function approximator optimizes the function approximator so that a received symbol to be determined that forms the received symbol sequence to be determined is obtained as an output; Equipped with a phase adjustment unit that aligns sampling phases of the received signal sequence by applying an estimated inverse transfer function that approximates an inverse function of a transfer function of the transmission path to the received signal sequence, and outputs the received signal sequence with the aligned sampling phases; The determination processing unit a symbol sequence of the received signal sequence, the sampling phase of which is aligned and output by the phase adjustment unit, is taken as the received symbol sequence to be determined; The phase adjustment unit averaging output values obtained by applying the estimated inverse transfer function to the received signal sequence, and outputting the sequence of averaged values obtained by the averaging as the received signal sequence with the aligned sampling phase; Symbol decision device.
3. the optimization unit iteratively calculates new coefficients to be applied to the function approximator in the process of optimizing the function approximator, and optimizes the function approximator by applying the calculated new coefficients; a weight selection unit that selects the weight to be applied to the function approximator based on a weight included in the new coefficient and a predetermined weight threshold before the optimization unit applies the new coefficient to the function approximator; The symbol decision device according to claim 1 or 2, further comprising:
4. generating a plurality of candidate symbol sequences that are candidates for a transmission signal sequence formed by transmission symbols; when each of the generated candidate symbol sequences is provided as an input sequence to a function approximator that approximates a transfer function of a transmission path through which the transmission signal sequence is transmitted, an estimated received symbol obtained as an output of the function approximator is output; determining the transmission symbols by maximum likelihood sequence estimation based on a reception symbol sequence to be determined, which is obtained from a reception signal sequence when the transmission path transmits the transmission signal sequence, and the estimated reception symbols for each of the candidate symbol sequences, thereby identifying estimated transmission symbols corresponding to the reception symbol sequence to be determined; optimizing the function approximator so that, when the transmitted signal sequence transmitted when the received signal sequence was received or a sequence obtained from the estimated transmitted signal sequence formed by the estimated transmitted symbols is given as an input sequence, a target received symbol forming the target received symbol sequence is obtained as an output; a phase adjustment unit aligns sampling phases of the received signal sequence by applying an estimated inverse transfer function that approximates an inverse function of a transfer function of the transmission path to the received signal sequence, and outputs the received signal sequence with the aligned sampling phases; a symbol sequence of the received signal sequence, the sampling phase of which is aligned and output by the phase adjustment unit, is taken as the received symbol sequence to be determined; A low-pass filter unit suppresses high-frequency components of the received signal sequence whose sampling phases are aligned and output by the phase adjustment unit. a symbol sequence of the received signal sequence in which high frequency components have been suppressed by the low-pass filter unit is taken as the received symbol sequence to be determined; Calculating optimal filter coefficients for the low-pass filter unit in a state where a linear adaptive filter is provided instead of the function approximator; optimizing the estimated inverse transfer function with the linear adaptive filter replacing the function approximator; a correct label storage unit stores, as a correct label, each of the received symbols to be determined included in the received symbol sequence to be determined, which is obtained when a predetermined training transmission signal sequence is transmitted through a phase adjustment unit in which the estimated inverse transfer function is optimized and through the low-pass filter unit to which the calculated optimal filter coefficient is applied; a part of the training transmission signal sequence transmitted when the correct label stored in the correct label storage unit is obtained is used as an input sequence, and the function approximator is optimized so that, when the input sequence is given, the function approximator outputs the correct label corresponding to the input sequence. Symbol determination method.
5. generating a plurality of candidate symbol sequences that are candidates for a transmission signal sequence formed by transmission symbols; when each of the generated candidate symbol sequences is provided as an input sequence to a function approximator that approximates a transfer function of a transmission path through which the transmission signal sequence is transmitted, an estimated received symbol obtained as an output of the function approximator is output; determining the transmission symbols by maximum likelihood sequence estimation based on a reception symbol sequence to be determined, which is obtained from a reception signal sequence when the transmission path transmits the transmission signal sequence, and the estimated reception symbols for each of the candidate symbol sequences, thereby identifying estimated transmission symbols corresponding to the reception symbol sequence to be determined; optimizing the function approximator so that, when the transmitted signal sequence transmitted when the received signal sequence was received or a sequence obtained from the estimated transmitted signal sequence formed by the estimated transmitted symbols is given as an input sequence, a target received symbol forming the target received symbol sequence is obtained as an output; a phase adjustment unit aligns sampling phases of the received signal sequence by applying an estimated inverse transfer function that approximates an inverse function of a transfer function of the transmission path to the received signal sequence, and outputs the received signal sequence with the aligned sampling phases; a symbol sequence of the received signal sequence, the sampling phase of which is aligned and output by the phase adjustment unit, is taken as the received symbol sequence to be determined; the phase adjustment unit averages output values obtained by applying the estimated inverse transfer function to the received signal sequence, and outputs the series of average values obtained by the averaging as the received signal sequence with the aligned sampling phase. Symbol determination method.
6. Computer, candidate symbol sequence generating means for generating a plurality of candidate symbol sequences that are candidates for a transmission signal sequence formed by transmission symbols; a transmission path estimation means having a function approximator for approximating a transfer function of a transmission path through which the transmission signal sequence is transmitted, the transmission path estimating means outputting an estimated received symbol obtained as an output of the function approximator when each of the plurality of candidate symbol sequences is provided to the function approximator as an input sequence; a determination processing means for determining the transmission symbols by maximum likelihood sequence estimation based on a reception symbol sequence to be determined obtained from a reception signal sequence when the transmission path transmits the transmission signal sequence and the estimated reception symbols for each of the candidate symbol sequences, thereby specifying an estimated transmission symbol corresponding to the reception symbol sequence to be determined; an optimization means for optimizing the function approximator so that, when the transmitted signal sequence transmitted when the received signal sequence was received or a sequence obtained from the estimated transmitted signal sequence formed by the estimated transmitted symbols is given as an input sequence, a target received symbol forming the target received symbol sequence is obtained as an output; It functions as and further functioning as a phase adjustment means for aligning the sampling phases of the received signal sequence by applying an estimated inverse transfer function that approximates an inverse function of the transfer function of the transmission path to the received signal sequence, and outputting the received signal sequence with the aligned sampling phases; In the determination processing means, a symbol sequence of the received signal sequence, the sampling phase of which is aligned and output by the phase adjustment means, is taken as the received symbol sequence to be determined; a symbol sequence of the received signal sequence in which high frequency components have been suppressed by a low pass filter that suppresses high frequency components of the received signal sequence in which the sampling phases output by the phase adjustment means have been aligned, is taken as the received symbol sequence to be determined; In the optimization means, calculating optimal filter coefficients for the low-pass filter in a state where a linear adaptive filter is provided instead of the function approximator; In the phase adjustment means, optimizing the estimated inverse transfer function with the linear adaptive filter replacing the function approximator; In the optimization means, a program for optimizing the function approximator so that, when a predetermined training transmission signal sequence is transmitted, the function approximator outputs the correct label corresponding to the input sequence when the input sequence is given, using as an input sequence a portion of the training transmission signal sequence transmitted when the correct label is obtained, the correct label being stored in a correct label storage unit in which each of the reception symbols to be determined included in the reception symbol sequence to be determined, which is obtained through the phase adjustment means in which the estimated inverse transfer function is optimized and the low-pass filter to which the optimal filter coefficient calculated by the optimization means is applied.
7. Computer, candidate symbol sequence generating means for generating a plurality of candidate symbol sequences that are candidates for a transmission signal sequence formed by transmission symbols; a transmission path estimation means having a function approximator for approximating a transfer function of a transmission path through which the transmission signal sequence is transmitted, the transmission path estimating means outputting an estimated received symbol obtained as an output of the function approximator when each of the plurality of candidate symbol sequences is provided to the function approximator as an input sequence; a determination processing means for determining the transmission symbols by maximum likelihood sequence estimation based on a reception symbol sequence to be determined obtained from a reception signal sequence when the transmission path transmits the transmission signal sequence and the estimated reception symbols for each of the candidate symbol sequences, thereby specifying an estimated transmission symbol corresponding to the reception symbol sequence to be determined; an optimization means for optimizing the function approximator so that, when the transmitted signal sequence transmitted when the received signal sequence was received or a sequence obtained from the estimated transmitted signal sequence formed by the estimated transmitted symbols is given as an input sequence, a target received symbol forming the target received symbol sequence is obtained as an output; It functions as and further functioning as a phase adjustment means for aligning the sampling phases of the received signal sequence by applying an estimated inverse transfer function that approximates an inverse function of the transfer function of the transmission path to the received signal sequence, and outputting the received signal sequence with the aligned sampling phases; In the determination processing means, a symbol sequence of the received signal sequence, the sampling phase of which is aligned and output by the phase adjustment means, is taken as the received symbol sequence to be determined; In the phase adjustment means, a program for averaging output values obtained by applying the estimated inverse transfer function to the received signal sequence, and outputting a sequence of averaged values obtained by the averaging as the received signal sequence with the aligned sampling phase.
Citation Information
Patent Citations
Yield prediction system in vertical-type hydroponics
JP2019000006A
Production method of animal meat paste product using enzyme
JP2020000001A