A method for determining parameters of an autoregressive model, a computing device and an electronic device

By combining parallel autocorrelation calculation and adaptive order determination controller, the problem that the fast Burg algorithm cannot adaptively determine the order of the autoregressive model is solved, and more efficient and stable calculation of autoregressive model parameters is achieved.

CN115495868BActive Publication Date: 2026-03-20INST OF MICROELECTRONICS CHINESE ACAD OF SCI LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-06-18
Publication Date
2026-03-20

AI Technical Summary

Technical Problem

The existing fast Burg algorithm cannot adaptively determine the order of the autoregressive model, resulting in long running time and reduced reliability and stability of the algorithm.

Method used

By performing parallel autocorrelation calculations, the order and threshold of the autoregressive model are adaptively updated. An adaptive order-determining controller is used to output the parameters of the current order when the threshold reaches its minimum value. The adaptive order determination of the autoregressive model parameters is achieved by using a parallel pipeline structure and an adaptive order-determining controller.

Benefits of technology

It reduces running time, improves the reliability and stability of autoregressive model parameter calculation, and achieves adaptive order determination.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115495868B_ABST
    Figure CN115495868B_ABST
Patent Text Reader

Abstract

The application discloses a method for determining parameters of an autoregressive model, a computing device and an electronic device, and relates to the field of signal processing. The method comprises: performing parallel autocorrelation calculation processing on input data to obtain autocorrelation calculation results; determining parameters and a threshold value of the autoregressive model at a current order based on the autocorrelation calculation results and the input data; updating the current order of the autoregressive model in the case where the threshold value does not reach a threshold minimum value, updating parameters and a threshold value of the autoregressive model at a next order based on the parameters and the threshold value of the autoregressive model at the current order; and outputting the parameters of the autoregressive model at the current order in the case where the threshold value reaches the threshold minimum value. The method can realize adaptive order determination of the autoregressive model, reduces the running time length, and improves the reliability and stability of the autoregressive model parameter calculation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of signal processing, and more particularly to a method for determining parameters of an autoregressive model, a computing device, and an electronic device. Background Technology

[0002] Spectral analysis of a signal is one of the important methods for studying signal characteristics, and it usually involves calculating the power spectrum. The power spectrum reflects the distribution of power energy of each frequency component of a random signal, and power spectrum estimation refers to estimating the true power spectrum of the original signal based on a finite-length time-domain signal.

[0003] Power spectrum estimation includes parametric model estimation, also known as modern power spectrum estimation. Modern power spectrum estimation uses finite-length data sequences to estimate the parameters of the assumed autoregressive model, and then substitutes the parametric model into the power spectral density formula to obtain better power spectrum estimation results. This includes the Burg algorithm based on the autoregressive model, which has high frequency resolution when processing short data. However, this algorithm has a large computational cost for the reflection coefficient, making it difficult to meet the requirements of scenarios with high real-time requirements. Therefore, the fast Burg algorithm can be used for power spectrum estimation. This fast Burg algorithm reduces the computational cost of solving for the reflection coefficient through a series of matrix transformations.

[0004] However, the existing fast Burg algorithm cannot adaptively determine the order of the autoregressive model, and because the algorithm uses serial computation, it takes a long time to run, which reduces the reliability and stability of the fast Burg algorithm. Summary of the Invention

[0005] The purpose of this invention is to provide a method, computing device, and electronic device for determining the parameters of an autoregressive model, in order to solve the problem that the existing fast Burg algorithm cannot adaptively determine the order of the autoregressive model, resulting in long running time.

[0006] In a first aspect, the present invention provides a method for determining parameters of an autoregressive model, comprising:

[0007] Parallel autocorrelation calculations are performed on the input data to obtain the autocorrelation results;

[0008] Based on the autocorrelation calculation results and the input data, determine the parameters and thresholds of the autoregressive model at the current order;

[0009] If the threshold does not reach the minimum threshold value, update the current order of the autoregressive model, and based on the parameters and threshold of the autoregressive model at the current order, update the parameters and threshold of the autoregressive model at the next order.

[0010] In a case where the threshold reaches the threshold minimum value, parameters of the autoregressive model at the current order are output.

[0011] With the technical solution, the method for determining autoregressive model parameters provided by the application stores input data in a memory, performs autocorrelation calculation and processing on the input data by a self-correlation parameter calculation unit to obtain autocorrelation calculation results, determines parameters of an autoregressive model at a current order and a threshold based on the autocorrelation calculation results and the input data by an autoregressive parameter and threshold calculation unit, updates the current order of the autoregressive model in a case where the threshold does not reach a threshold minimum value by an adaptive order determination controller, updates parameters of the autoregressive model at a next order and the threshold based on the parameters of the autoregressive model at the current order and the threshold, and outputs the parameters of the autoregressive model at the current order in a case where the threshold reaches the threshold minimum value, thereby realizing adaptive order determination of autoregressive model parameters, solving the problem that the existing fast Burg algorithm cannot adaptively determine the order of the autoregressive model and takes a long time to run, reducing the running time, and improving the reliability and stability of the calculation of autoregressive model parameters.

[0012] In a possible implementation, the input data includes first input data and second input data, and the autocorrelation calculation results include first autocorrelation calculation results corresponding to the first input data and second autocorrelation calculation results corresponding to the second input data.

[0013] In a possible implementation, the parallel autocorrelation calculation and processing on the input data to obtain autocorrelation calculation results includes:

[0014] The first input data is subjected to a multiply-accumulate operation to obtain the first autocorrelation calculation results.

[0015] The second input data is subjected to a delay processing and then a multiply-accumulate operation to obtain the second autocorrelation calculation results.

[0016] In a possible implementation, the determination of the parameters of the autoregressive model at the current order and the threshold based on the autocorrelation calculation results and the input data includes:

[0017] A preliminary parameter is determined based on part of selected data in the input data and the autocorrelation calculation results.

[0018] A reflection coefficient is determined based on the preliminary parameter.

[0019] The parameters of the autoregressive model at the current order are determined based on the reflection coefficient.

[0020] The threshold is determined based on an autocorrelation initial value in the autocorrelation calculation results and the reflection coefficient.

[0021] In a possible implementation, the determining the parameter of the autoregressive model at the current order based on the reflection coefficient comprises:

[0022] obtaining the parameter of the autoregressive model corresponding to the previous order;

[0023] performing multiplication and addition operation based on the reflection coefficient and the parameter of the autoregressive model corresponding to the previous order, and determining the parameter of the autoregressive model at the current order.

[0024] In a possible implementation, the order of the autoregressive model ranges from greater than or equal to 0 to 16.

[0025] In a second aspect, the present application further provides a computing device of autoregressive model parameter, comprising: a memory, an autocorrelation parameter calculation unit, an autoregressive parameter and threshold calculation unit, and an adaptive order controller.

[0026] The memory and the autocorrelation parameter calculation unit are electrically connected; the autocorrelation parameter calculation unit and the autoregressive parameter and threshold calculation unit are electrically connected; and the adaptive order controller and the autoregressive parameter and threshold calculation unit are electrically connected.

[0027] The memory is configured to store input data.

[0028] The autocorrelation parameter calculation unit is configured to perform autocorrelation calculation on the input data to obtain autocorrelation calculation results.

[0029] The autoregressive parameter and threshold calculation unit is configured to determine the parameter and threshold of the autoregressive model at the current order based on the autocorrelation calculation results and the input data.

[0030] The adaptive order controller is configured to, in the case where the threshold does not reach a threshold minimum value, update the current order of the autoregressive model, and update the parameter and threshold of the autoregressive model at the next order based on the parameter and threshold of the autoregressive model at the current order.

[0031] In the case where the threshold reaches the threshold minimum value, the parameter of the autoregressive model at the current order is output.

[0032] In a possible implementation, the computing device further comprises a read address generation unit, which is electrically connected with the memory and the adaptive order controller.

[0033] The read address generation unit is configured to read the address sent by the adaptive order controller, and save the data corresponding to the address to the memory.

[0034] In a possible implementation, the computing device further includes a data gating unit, and the data gating unit is electrically connected to the autocorrelation parameter calculation unit, the autoregressive parameter and threshold calculation unit, and the adaptive order control unit, respectively.

[0035] The data gating unit is configured to select and output the autocorrelation calculation result.

[0036] The computing device of the autoregressive model parameter provided in the second aspect has the same beneficial effects as the method for determining the autoregressive model parameter described in the first aspect or any possible implementation of the first aspect, which will not be repeated here.

[0037] In the third aspect, the present application further provides an electronic device, including one or more processors, and one or more machine-readable media having instructions stored thereon that, when executed by the one or more processors, cause the device to perform the method for determining the autoregressive model parameter described in any possible implementation of the first aspect.

[0038] The electronic device provided in the third aspect has the same beneficial effects as the method for determining the autoregressive model parameter described in the second aspect or any possible implementation of the second aspect, which will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS

[0039] The accompanying drawings, which are included to provide a further understanding of the present application, constitute a part of this application and illustrate embodiments of the present application and together with the description serve to explain the present application. In the drawings:

[0040] Figure 1 A computing device of an autoregressive model parameter provided by an embodiment of the present application is shown;

[0041] Figure 2 Another computing device of an autoregressive model parameter provided by an embodiment of the present application is shown;

[0042] Figure 3 A schematic diagram of a parallel two-stage pipeline structure provided by an embodiment of the present application is shown;

[0043] Figure 4 A workflow diagram of a fast Burg algorithm control unit state machine provided by an embodiment of the present application is shown;

[0044] Figure 5 A schematic diagram of an autocorrelation parameter calculation unit provided by an embodiment of the present application is shown;

[0045] Figure 6 A schematic diagram of an autoregressive parameter and threshold calculation unit provided by an embodiment of the present application is shown;

[0046] Figure 7 A circuit schematic diagram of a first column vector calculation provided by an embodiment of the application is shown;

[0047] Figure 8 A circuit schematic diagram of a calculation of an intermediate variable matrix and a second column vector provided by an embodiment of the application is shown;

[0048] Figure 9 A circuit structure diagram of a reflection coefficient and autoregressive parameter calculation module provided by an embodiment of the application is shown;

[0049] Figure 10 A circuit schematic diagram of a minimum prediction error and threshold calculation module provided by an embodiment of the application is shown;

[0050] Figure 11 A flow schematic diagram of a determination method of an autoregressive model parameter provided by an embodiment of the application is shown;

[0051] Figure 12 A flow schematic diagram of another determination method of an autoregressive model parameter provided by an embodiment of the application is shown;

[0052] Figure 13 A hardware structure schematic diagram of an electronic device provided by an embodiment of the application is shown;

[0053] Figure 14 A structure schematic diagram of a chip provided by an embodiment of the application is shown. DETAILED DESCRIPTION

[0054] In order to clearly describe the technical solutions of the embodiments of the application, in the embodiments of the application, the same items or similar items with basically the same functions and effects are distinguished by using "first", "second", etc. For example, the first threshold and the second threshold are only used to distinguish different thresholds, and the order is not limited. Those skilled in the art can understand that "first", "second", etc. do not limit the quantity and execution order, and "first", "second", etc. also do not necessarily mean different.

[0055] It should be noted that in the present application, the words "exemplary" or "for example" are used to mean serving as an example, instance, or illustration. Any embodiment or design presented as "exemplary" or "for example" in the present application should not be interpreted as being more preferred or superior to other embodiments or design solutions. Rather, the use of "exemplary" or "for example" is intended to present relevant concepts in a concrete manner.

[0056] In the present application, "at least one" means one or more, and "multiple" means two or more. The "and / or" describes the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B can represent the following three cases: A exists alone, A and B exist together, and B exists alone, where A and B can be singular or plural. The character " / " generally represents an "or" relationship between the associated objects before and after it. "At least one of the following" or similar expressions means any combination of these items, including any combination of single or multiple items. For example, at least one of a, b or c can represent: a, b, c, the combination of a and b, the combination of a and c, the combination of b and c, or the combination of a, b and c, where a, b and c can be single or multiple.

[0057] Figure 1 A device for calculating parameters of an autoregressive model is shown, as shown in Figure 1 The device for calculating parameters of the autoregressive model includes a memory 01, an autocorrelation parameter calculation unit 02, an autoregressive parameter and threshold calculation unit 03, and an adaptive order controller 04.

[0058] The memory 01 and the autocorrelation parameter calculation unit 02 are electrically connected; the autocorrelation parameter calculation unit 02 and the autoregressive parameter and threshold calculation unit 03 are electrically connected; and the adaptive order controller 04 and the autoregressive parameter and threshold calculation unit 03 are electrically connected.

[0059] The memory 01 is used to store input data.

[0060] The autocorrelation parameter calculation unit 02 is used to perform autocorrelation calculation processing on the input data to obtain autocorrelation calculation results.

[0061] The autoregressive parameter and threshold calculation unit 03 is used to determine the parameters and thresholds of the autoregressive model at the current order based on the autocorrelation calculation results and the input data.

[0062] The adaptive order controller 04 is used to update the current order of the autoregressive model in the case where the threshold does not reach the threshold minimum value, update the parameters and thresholds of the autoregressive model at the next order based on the parameters and thresholds of the autoregressive model at the current order, and output the parameters of the autoregressive model at the current order in the case where the threshold reaches the threshold minimum value.

[0063] The calculation device of the autoregressive model parameter provided by the embodiment of the present application stores input data through a memory, performs autocorrelation calculation processing on the input data through an autocorrelation parameter calculation unit, obtains autocorrelation calculation results, determines the parameters and threshold values of the autoregressive model at the current order based on the autocorrelation calculation results and the input data through an autoregressive parameter and threshold value calculation unit, updates the current order of the autoregressive model in the case where the threshold value does not reach a threshold minimum value through an adaptive order determination controller, updates the parameters and threshold values of the autoregressive model at the next order based on the parameters and threshold values of the autoregressive model at the current order, and outputs the parameters of the autoregressive model at the current order in the case where the threshold value reaches the threshold minimum value, so as to realize adaptive order determination of the autoregressive model parameters, solve the problem of long running time caused by the fact that the existing fast Burg algorithm cannot adaptively determine the order of the autoregressive model, that is, reduce the running time length and improve the reliability and stability of the calculation of the autoregressive model parameters.

[0064] Figure 2 Another calculation device of autoregressive model parameters provided by the embodiment of the present application is shown as shown in Figure 2 The calculation device of autoregressive model parameters includes a memory 01, an autocorrelation parameter calculation unit 02, an autoregressive parameter and threshold value calculation unit 03, and an adaptive order determination controller 04, wherein the memory 01 and the autocorrelation parameter calculation unit 02 are electrically connected; the autocorrelation parameter calculation unit 02 and the autoregressive parameter and threshold value calculation unit 03 are electrically connected; and the adaptive order determination controller 04 and the autoregressive parameter and threshold value calculation unit 03 are electrically connected.

[0065] Optionally, referring to Figure 2 The calculation device further includes a read address generation unit 05, which is electrically connected with the memory 01 and the adaptive order determination controller 04.

[0066] The read address generation unit 05 is configured to read the address sent by the adaptive order determination controller and save the data corresponding to the address to the memory.

[0067] Optionally, referring to Figure 2 The calculation device further includes a data gating unit 06, which is electrically connected with the autocorrelation parameter calculation unit 02, the autoregressive parameter and threshold value calculation unit 03, and the adaptive order determination controller 04 respectively; and the data gating unit 06 is configured to select and output the autocorrelation calculation results.

[0068] Optionally, the data gating unit completes the selection of the autocorrelation parameter to one of the autocorrelation parameter and threshold value calculation unit, and the gating rule is that when ARi is to be calculated, the result of Ci is gated to the next stage, and when it is not gated, the register is used.

[0069] Optionally, referring to Figure 2 The input data Xn is divided into first input data Xb and second input data Xf according to the input order, and the second input data is input to the delay device h for delay processing.

[0070] Optionally, part of the input data can be obtained from the second input data Xf for the calculation of the autocorrelation parameter, that is Figure 2 Xn shown in the figure is used for the calculation of the autocorrelation parameter.

[0071] In this application, Xn used for the calculation of the autocorrelation parameter can be part of the data selected from the input data Xn, which is not specifically limited in the embodiments of this application, and can be calibrated and adjusted according to the actual application scene.

[0072] Optionally, referring to Figure 2 The computing device further includes an autocorrelation parameter storage unit 07, which is connected with the autocorrelation parameter and threshold value calculation unit 03, and is used for storing the autocorrelation parameter and the related intermediate variable.

[0073] In this application, the adaptive order controller can complete the execution process control of the fast Burg algorithm of adaptive order determination, and the opening and closing control of the parallel two-stage pipeline structure. The Burg algorithm is a recursive algorithm for calculating the power spectrum estimate value directly from the known time signal sequence.

[0074] In this application, the hardware acceleration implementation of the algorithm can be completed by using the parallel pipeline structure, that is, the hardware acceleration implementation of the method for determining the autocorrelation model parameter in this application can be completed by using the parallel pipeline structure. The calculation of the autocorrelation parameter (Ci) is only related to the input data (Xn) and is independent of the calculation of the autocorrelation model (AR) parameter, and the calculation of the AR parameter needs to use the calculation result of the autocorrelation parameter of each order. Therefore, in this application, a parallel two-stage pipeline structure is adopted, and the calculation unit is divided into an autocorrelation parameter calculation unit 02 and an autocorrelation parameter and threshold value calculation unit 03, wherein the autocorrelation parameter calculation unit 02 is used for calculating the autocorrelation parameter (Ci), and the autocorrelation parameter and threshold value calculation unit 03 is used for calculating the AR parameter and the threshold value.

[0075] Compared with the autocorrelation parameter and threshold value calculation unit, the calculation of the autocorrelation parameter calculation unit is longer, Figure 3The diagram illustrates a parallel two-stage pipeline structure provided in an embodiment of this application, as shown below. Figure 3 As shown, in a scenario where the input data length is 128 and the final order is 6, the time t1 for calculating the autocorrelation parameter is 128 - 4 + 3 = 127 clock cycles. The time t2 for calculating the fifth-order autoregressive parameter (AR4), the sixth-order autoregressive parameter (AR5), and the two threshold judgments is (4i + 16) + 3 + (4(i + 1) + 16) + 3. Substituting i = 4, we know that t2 is 72 clock cycles (T). The autocorrelation time is greater than twice the calculation time of the AR parameter and the threshold. Figure 2 The parallel two-stage pipeline structure shown can simultaneously calculate the first-order autocorrelation parameter (C0) and the second-order autocorrelation parameter (C1). After calculating the first-order autocorrelation parameter (C0) and the second-order autocorrelation parameter (C1), the first-order autoregressive parameter (AR0), the second-order autoregressive parameter (AR1), and the threshold 1 are determined based on C0. At the same time, the third-order autocorrelation parameter (C2) and the fourth-order autocorrelation parameter (C3) are calculated. Similarly, the third-order autoregressive parameter (AR2), the fourth-order autoregressive parameter (AR3), and the thresholds 2 and 3, the fifth-order autocorrelation parameter (C4), and the sixth-order autocorrelation parameter (C5) are calculated in parallel; as well as the fifth-order autoregressive parameter (AR4), the sixth-order autoregressive parameter (AR5), and the thresholds 4 and 5, the seventh-order autocorrelation parameter (C6), and the eighth-order autocorrelation parameter (C7) are calculated in parallel.

[0076] The parallel two-stage pipeline structure allows for more flexible and efficient calculation of autocorrelation parameters, autoregressive parameters, and thresholds. The pipeline clock cycle is not a fixed N+5 system clock cycles (N being the total amount of input data). In this application, the pipeline clock cycle is related to the calculation length of the autocorrelation parameters and can be changed according to the order of the input data. Specifically, it can be N-i+2, which improves pipeline utilization efficiency. Furthermore, when the threshold reaches its minimum value, the parameters of the autoregressive model at the current order are output. The calculation of the autocorrelation parameters is terminated by an adaptive order-determining controller, compressing the calculation time of the last cycle and improving parameter calculation efficiency.

[0077] In the present application, the adaptive order controller can be combined with the fast Burg algorithm based on the minimum final prediction error (FPE) criterion, and the fast Burg algorithm is implemented by hardware to adaptively determine the order. The autocorrelation parameter calculation unit and the autoregressive parameter and threshold calculation unit are controlled by the adaptive order controller. In the case that the threshold does not reach the threshold minimum value, the current order of the autoregressive model is updated, and the parameters and the threshold of the autoregressive model at the next order are updated based on the parameters and the threshold of the autoregressive model at the current order. In the case that the threshold reaches the threshold minimum value, the parameters of the autoregressive model at the current order are outputted, wherein the order of the autocorrelation model ranges from greater than or equal to 0 to less than or equal to 16.

[0078] It should be noted that the input signals of the adaptive order controller are the algorithm enable signals inputted from outside and the end state identification signals of the autocorrelation parameter calculation unit and the autoregressive parameter and threshold calculation unit, and the output is the enable control signals of the autocorrelation parameter calculation unit and the autoregressive parameter and threshold calculation unit. The AR parameters and the threshold at each order are stored in the RAM.

[0079] Optionally, the adaptive order controller comprises a fast Burg algorithm control unit state machine, Figure 4 The working flow chart of the fast Burg algorithm control unit state machine is shown in FIG. 4. Figure 4As shown, the control unit state machine includes six states, namely a first state S1, a second state S2, a third state S3, a fourth state S4, a fifth state S5 and a sixth state S6. First, when the algorithm start enable (fast-burg-start) is valid, the fast-burg algorithm starts to execute, at this time the order is 1, the iteration number i = 0, and the S1 state is entered to start the parallel calculation of autocorrelation C0 and C1, when the autocorrelation calculation is completed, the jump value S2 is started, the parallel autocorrelation Ci and Ci+1 calculation is started, the i+1 order AR model parameter and threshold value calculation is started, after the AR parameter calculation is completed, if the threshold value reaches the threshold minimum value, the parameters of the autoregressive model at the current order are output, that is, is-ok = 1 is output, and the operation is ended in the S5 state, and the final order is i+1 order, and the AR parameter in the RAM (memory) is the final result; otherwise, jump to S3, start the i+2 order AR parameter and threshold value calculation. After the AR parameter calculation is completed, if the threshold value reaches the threshold minimum value, the parameters of the autoregressive model at the current order are output, that is, is-ok = 1 is output, and the operation is ended in the S5 state, and the final order is i+2 order, and the AR parameter in the RAM (memory) is the final result; otherwise, jump to S4 state, and wait for the current autocorrelation calculation to end before entering S2 again to start the next round of iteration, until the threshold value reaches the threshold minimum value, the parameters of the autoregressive model at the current order are output, at this time the iteration is ended, and the AR parameter obtained by the last iteration operation is the parameter to be solved.

[0080] Figure 5 A schematic diagram of an autocorrelation parameter calculation unit provided by an embodiment of the application is shown, which mainly includes two multiply-accumulate calculation units for calculating Ci and Ci+1,

[0081] Referring to Figure 5 The input data X is divided into first input data Xb and second input data Xf according to the input order, Xb and Xf are input to the multiplier u and the adder j respectively, multiply-accumulate operation is performed on the first input data to obtain the first autocorrelation operation result; the second input data is input to the delay device h for delay processing, and then multiply-accumulate operation is performed to obtain the second autocorrelation operation result.

[0082] The autocorrelation parameter calculation can be according to the formula:

[0083]

[0084] Referring to Figure 5 The read address generation unit 05 is used to read the address sent by the adaptive order determination controller, and save the data corresponding to the address to the memory.

[0085] Optionally, Figure 6 A schematic diagram of an autoregressive parameter and threshold calculation unit is shown in the embodiments of the present application, as shown in Figure 6 The autoregressive parameter and threshold calculation unit 03 includes a preliminary parameter calculation module 031, and a preliminary parameter storage module 032, a reflection coefficient K and autoregressive parameter a calculation module 033, a minimum prediction error and threshold calculation module 034 and a threshold comparison order determination module 035 connected in turn with the preliminary parameter calculation module 031. First, the preliminary parameters are determined based on part of the selected data in the input data and the autocorrelation calculation result, and the reflection coefficient is determined based on the preliminary parameters; the parameters of the autoregressive model corresponding to the last order are obtained; based on the reflection coefficient and the parameters of the autoregressive model corresponding to the last order, the multiplication and addition operation is performed to determine the parameters of the autoregressive model at the current order, and the threshold is determined based on the autocorrelation initial value in the autocorrelation calculation result and the reflection coefficient. In the case where the threshold reaches the minimum threshold value, the parameters of the autoregressive model at the current order are output.

[0086] Optionally, the preliminary parameters include a first column vector (r), an intermediate variable matrix (ΔR) and a second column vector (g). In the present application, the calculation steps of each preliminary parameter are split into multiplication and addition units, the intermediate variable matrix is split by row and recombined with the second column vector, and a pipeline structure is used to realize the operation function. After inputting the required part of the input data Xn sequence, the first column vector and the row value of the intermediate variable matrix can be sequentially calculated to finally obtain the second column vector.

[0087] Specifically, the calculation formula of the first column vector (r) is:

[0088]

[0089] Optionally, Figure 7 A circuit schematic diagram of the first column vector calculation is shown in the embodiments of the present application, as shown in Figure 7 The input data is divided into first input data (X(0), X(1),..., X(i)) and second input data (X(N), X(N-2),..., X(N-i-1)), the first clock latches the first multiplier Xi and X N-i-1 and writes the read first input data into the Xf buffer unit (Xf-buffer), writes the read second input data into the Xb buffer unit (Xb-buffer), the second clock completes two multiplication and addition operations in parallel, and the third clock outputs the row value of the first column vector i+1 or the multiplication and addition value, and outputs the row value of the first column vector in a reverse order, wherein H represents a register.

[0090] In the present application, the formula for calculating the intermediate variable matrix (AR) and the second column vector (g) includes:

[0091]

[0092] wherein J is a transposed square matrix.

[0093] Optionally, the circuit for calculating the intermediate variable matrix and the second column vector can use a pipeline manner to parallelize the calculation of the intermediate variable matrix (AR) and the second column vector (g), and after the calculation of the intermediate variable matrix (AR) is completed in one clock cycle, the calculation result is directly sent to the calculation unit of the second column vector (g), so that the calculation time can be reduced from i clock cycles to i clock cycles, which improves the data processing speed while ensuring the stability of the two-stage pipeline structure. 2

[0094] Figure 8 A circuit diagram for calculating the intermediate variable matrix and the second column vector is shown in the present application, as shown in Figure 8 , the four-stage pipeline circuit for calculating the intermediate variable matrix and the second column vector, in the first clock cycle, one x value is read from the Xf buffer unit (Xf-buffer) and the Xb buffer unit (Xb-buffer) and sent to the multiplier (u), in the second clock cycle, the multiplication and addition operation is performed to obtain the row values AR0-AR i of the intermediate variable matrix (AR), in the third clock cycle, the row values of AR are multiplied by the AR parameters obtained in the previous stage and summed, and in the fourth clock cycle, the row values of the second column vector (g) are gated and output. Wherein H represents a register, and Q represents a divider.

[0095] Figure 9 A circuit structure diagram of a reflection coefficient and autoregressive parameter calculation module is shown in the present application, as shown in Figure 9 , the AR parameters (a) calculated in the last iteration operation are read from the storage module 032 and input into the second column vector (g) calculated by the preliminary parameter calculation module, and then the reflection coefficient K and the autoregressive parameter a are calculated according to the following formula. h represents a delay device, H represents a register, and Q represents a divider.

[0096] wherein the formula includes:

[0097]

[0098]

[0099] wherein J is a transposed square matrix.

[0100] Referring to Figure 9 ​In the calculation of the reflection coefficient, firstly, the multiplication and accumulation result of the autoregressive parameter of the last order and the second column vector is calculated, then the division calculation is performed to calculate the reflection coefficient, the multiplication and accumulation result of the reflection coefficient and the autoregressive parameter of the last order is completed according to the autoregressive parameter formula, and the newly calculated autoregressive parameter is written into the autoregressive parameter storage unit.

[0101] The calculation of the minimum prediction error and threshold value calculation module is performed according to the FPE criterion, and whether the threshold value (TH) reaches the minimum value is used to adaptively determine the optimal order. The threshold value TH is the FPE(i) value in each iteration, and the specific calculation formula is as follows:

[0102]

[0103] Wherein, N is the length of the input data sequence, i+1 is the order of the current AR, P is the prediction error power, and the threshold value (TH) will reach the minimum value at a certain order (i+1 order), at which time i+1 is the final order, and the iteration stops at this time.

[0104] Specifically, the minimum prediction error is described as the following calculation formula:

[0105]

[0106] p min (i)=p min (i-1)*(1-|k| 2 )

[0107] N is the length of the input data sequence, i+1 is the order of the current AR, P is the prediction error power, and the threshold value (TH) will reach the minimum value at a certain order (i+1 order), at which time i+1 is the final order, and the iteration stops at this time.

[0108] Optionally, Figure 10 A circuit schematic diagram of the minimum prediction error and threshold value calculation module provided by the embodiment of the application is shown. Since the value of N is a power of 2, the initial value of the minimum prediction error is calculated by only right shifting the autocorrelation value by the bit number of the power value. When the order is greater than 1, the value is the product of the difference between the reflection coefficient and 1 and the minimum prediction error calculated in the last iteration. The calculation of the threshold value involves a division, and the quotient value is only related to i when the value of N is fixed. Therefore, the divider can be realized by using a lookup table. In the application, the input of the lookup table is i, and the output is the pre-stored quotient value. When the threshold value reaches the threshold minimum value, the parameters of the autoregressive model at the current order are output, wherein the parameters include the minimum prediction error power and the model parameters.

[0109] Figure 11 A flowchart of the determination method of the autoregressive model parameters provided by the embodiment of the application is shown. Figure 11As shown, the method for determining the parameters of the autoregressive model comprises the following steps:

[0110] Step 101: performing parallel autocorrelation calculation processing on the input data to obtain an autocorrelation calculation result.

[0111] Step 102: determining the parameters and threshold value of the autoregressive model at the current order based on the autocorrelation calculation result and the input data.

[0112] Step 103: in the case where the threshold value does not reach a threshold minimum value, updating the current order of the autoregressive model, updating the parameters and threshold value of the autoregressive model at the next order based on the parameters and threshold value of the autoregressive model at the current order.

[0113] Step 104: in the case where the threshold value reaches the threshold minimum value, outputting the parameters of the autoregressive model at the current order.

[0114] The method for determining the parameters of the autoregressive model provided by the embodiment of the present application stores the input data in the memory, performs autocorrelation calculation processing on the input data by the autocorrelation parameter calculation unit to obtain an autocorrelation calculation result, determines the parameters and threshold value of the autoregressive model at the current order based on the autocorrelation calculation result and the input data by the autoregressive parameter and threshold value calculation unit, and updates the current order of the autoregressive model in the case where the threshold value does not reach a threshold minimum value by the adaptive order determination controller, and updates the parameters and threshold value of the autoregressive model at the next order based on the parameters and threshold value of the autoregressive model at the current order. In the case where the threshold value reaches the threshold minimum value, the parameters of the autoregressive model at the current order are outputted, the adaptive order determination of the parameters of the autoregressive model is realized, the problem that the existing fast Burg algorithm cannot adaptively determine the order of the autoregressive model and leads to a long running time is solved, that is, the running time is reduced, and the reliability and stability of the calculation of the parameters of the autoregressive model are improved.

[0115] Optionally, Figure 12 A flowchart of another method for determining the parameters of the autoregressive model provided by the embodiment of the present application is shown, referring to FIG. 2. Figure 12 The method for determining the parameters of the autoregressive model comprises the following steps:

[0116] Step 201: dividing the input data into first input data and second input data according to the input order.

[0117] Step 202: simultaneously performing autocorrelation operation on the first input data and the second input data to obtain an autocorrelation operation result.

[0118] The autocorrelation operation result comprises a first autocorrelation operation result corresponding to the first input data and a second autocorrelation operation result corresponding to the second input data.

[0119] Specifically, the step 202 can include: performing a multiply-accumulate operation on the first input data to obtain the first autocorrelation operation result; performing a delay processing on the second input data and then performing a multiply-accumulate operation to obtain the second autocorrelation operation result.

[0120] Step 203: determining the parameter and the threshold value of the autoregressive model at the current order based on the autocorrelation calculation result and the input data.

[0121] Optionally, the step 203 can include: determining a preliminary parameter based on part of the selected data in the input data and the autocorrelation calculation result; determining a reflection coefficient based on the preliminary parameter; determining the parameter of the autoregressive model at the current order based on the reflection coefficient; determining the threshold value based on the autocorrelation initial value in the autocorrelation calculation result and the reflection coefficient.

[0122] The determining the parameter of the autoregressive model at the current order based on the reflection coefficient includes: obtaining the parameter of the autoregressive model corresponding to the previous order; performing a multiply-add operation based on the reflection coefficient and the parameter of the autoregressive model corresponding to the previous order to determine the parameter of the autoregressive model at the current order.

[0123] Optionally, the order of the autocorrelation model ranges from greater than or equal to 0 to 16.

[0124] Step 204: in the case where the threshold value does not reach a threshold minimum value, updating the current order of the autoregressive model, and updating the parameter and the threshold value of the autoregressive model at the next order based on the parameter and the threshold value of the autoregressive model at the current order.

[0125] Step 205: in the case where the threshold value reaches the threshold minimum value, outputting the parameter of the autoregressive model at the current order.

[0126] The method for determining the parameters of the autoregressive model provided in the embodiments of the present application stores the input data in the memory, performs autocorrelation calculation on the input data by the autocorrelation parameter calculation unit to obtain autocorrelation calculation results, determines the parameters and threshold values of the autoregressive model at the current order based on the autocorrelation calculation results and the input data by the autoregressive parameter and threshold value calculation unit, updates the current order of the autoregressive model by the adaptive order determination controller in the case where the threshold value does not reach the threshold value minimum value, updates the parameters and threshold values of the autoregressive model at the next order based on the parameters and threshold values of the autoregressive model at the current order, and outputs the parameters of the autoregressive model at the current order in the case where the threshold value reaches the threshold value minimum value, thereby realizing adaptive order determination of the parameters of the autoregressive model, solving the problem of long running time caused by the fact that the existing fast Burg algorithm cannot adaptively determine the order of the autoregressive model, i.e., reducing the running time length and improving the reliability and stability of the calculation of the parameters of the autoregressive model.

[0127] The method for determining the parameters of the autoregressive model provided in the embodiments of the present application is applied to a computing device for the autoregressive model parameters, which comprises a controller and at least one device electrically connected to the controller. Figures 1 to 10 The computing device for the autoregressive model parameters shown in any of the embodiments will not be described herein again to avoid repetition.

[0128] The electronic device in the embodiments of the present application can be a device, a component, an integrated circuit or a chip in a terminal. The device can be a mobile electronic device or a non-mobile electronic device. Exemplarily, the mobile electronic device can be a mobile phone, a tablet computer, a notebook computer, a palm computer, a vehicle-mounted electronic device, a wearable device, an ultra-mobile personal computer (UMPC), a netbook or a personal digital assistant (PDA), etc., and the non-mobile electronic device can be a server, a network attached storage (NAS), a personal computer (PC), a television (TV), a teller machine or a self-service machine, etc., and the embodiments of the present application are not limited specifically.

[0129] The electronic device in the embodiments of the present application can be a device with an operating system. The operating system can be an Android operating system, an ios operating system or other possible operating systems, and the embodiments of the present application are not limited specifically.

[0130] Figure 13 A hardware structure schematic diagram of an electronic device provided in the embodiments of the present application is shown. As shown in FIG. 1, the electronic device comprises a processor 1001, a memory 1002 and a bus 1003. Figure 13As shown, the electronic device 300 includes a processor 310.

[0131] like Figure 13 As shown, the processor 310 described above can be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits used to control the execution of the program of the present invention.

[0132] like Figure 13 As shown, the electronic device 300 may further include a communication line 340. The communication line 340 may include a path for transmitting information between the components.

[0133] Optional, such as Figure 13 As shown, the above-described electronic device may further include a communication interface 320. There may be one or more communication interfaces 320. The communication interface 320 can use any transceiver-like device for communicating with other devices or communication networks.

[0134] Optional, such as Figure 13 As shown, the electronic device may further include a memory 330. The memory 330 stores computer execution instructions for implementing the present invention, and its execution is controlled by a processor. The processor executes the computer execution instructions stored in the memory to implement the method provided in the embodiments of the present invention.

[0135] like Figure 13 As shown, memory 330 can be read-only memory (ROM) or other types of static storage devices capable of storing static information and instructions, random access memory (RAM) or other types of dynamic storage devices capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto. Memory 330 can exist independently and be connected to processor 310 via communication line 340. Memory 330 can also be integrated with processor 310.

[0136] Optionally, the computer-executed instructions in the embodiments of the present application can also be referred to as application codes, and the embodiments of the present application do not make specific limitation thereto.

[0137] In a specific implementation, as an embodiment, as shown in Figure 13 the processor 310 can include one or more CPUs, such as the CPU0 and the CPU1 in Figure 13 .

[0138] In a specific implementation, as an embodiment, as shown in Figure 13 the terminal device can include a plurality of processors, such as the first processor 3101 and the second processor 3102 in Figure 13 . Each of the processors can be a single-core processor or a multi-core processor.

[0139] Figure 14 is a structural schematic diagram of a chip provided by the embodiments of the present application. As shown in Figure 14 the chip 400 includes one or more (including two) processors 310.

[0140] Optionally, as shown in Figure 14 the chip further includes a communication interface 320 and a memory 330. The memory 330 can include a read-only memory and a random access memory, and provide operation instructions and data for the processor. A part of the memory can also include a non-volatile random access memory (NVRAM).

[0141] In some embodiments, as shown in Figure 14 the memory 330 stores the following elements, execution modules or data structures, or a subset of them, or an extended set of them.

[0142] In the embodiments of the present application, as shown in Figure 14 corresponding operations are performed by invoking operation instructions (which can be stored in an operating system) stored in the memory.

[0143] As shown in Figure 14 the processor 310 controls the processing operation of any one of the terminal devices, and the processor 310 can also be referred to as a central processing unit (CPU).

[0144] As shown in Figure 14As shown, the memory 330 can include a read-only memory and a random access memory, and provide instructions and data for the processor. A part of the memory 330 can also include an NVRAM. For example, the memory, the communication interface, and the memory are coupled together through a bus system, which can include a data bus, a power supply bus, a control bus, a status signal bus, etc. in addition to the data bus. However, for the purpose of clarity and conciseness, all the buses are marked as the bus system 440 in the following description. Figure 14

[0145] As shown in the above embodiments of the present application, the method can be applied to a processor or implemented by the processor. The processor can be an integrated circuit chip with a processing capability of signals. In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software. The processor can be a general processor, a digital signal processor (DSP), an ASIC, a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. Each method, step and logic block diagram disclosed in the embodiments of the present application can be implemented or executed. The general processor can be a microprocessor or any conventional processor. The steps of the method disclosed in combination with the embodiments of the present application can be directly embodied as a hardware coding processor for execution, or a combination of hardware and software modules in the coding processor for execution. The software module can be located in a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, or other mature storage media in the art. The storage medium is located in the storage, and the processor reads the information in the storage and combines the hardware to complete the steps of the above method. Figure 14

[0146] In one aspect, a computer readable storage medium is provided, and the computer readable storage medium stores instructions, when the instructions are executed, the functions executed by the terminal device in the above embodiments are implemented.

[0147] In one aspect, a chip is provided, and the chip is applied to a terminal device, the chip includes at least one processor and a communication interface, the communication interface and the at least one processor are coupled, and the processor is used to execute instructions to implement the functions executed by the autoregressive model parameter determination method in the above embodiments.

[0148] ​​In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present invention are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a terminal, a user equipment, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another. For example, the computer program or instructions can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video disc (DVD); or it can be a semiconductor medium, such as a solid-state drive (SSD).

[0149] Although the invention has been described herein in conjunction with various embodiments, those skilled in the art will understand and implement other variations of the disclosed embodiments by reviewing the accompanying drawings, the disclosure, and the appended claims in carrying out the claimed invention. In the claims, the word "comprising" does not exclude other components or steps, and "a" or "an" does not exclude a plurality. A single processor or other unit can implement several functions listed in the claims. While different dependent claims may recite certain measures, this does not mean that these measures cannot be combined to produce good results.

[0150] Although the invention has been described in conjunction with specific features and embodiments, it is obvious that various modifications and combinations can be made therein without departing from the spirit and scope of the invention. Accordingly, this specification and drawings are merely exemplary descriptions of the invention as defined by the appended claims, and are considered to cover any and all modifications, variations, combinations, or equivalents within the scope of the invention. Clearly, those skilled in the art can make various alterations and modifications to the invention without departing from its spirit and scope. Thus, if such modifications and modifications of the invention fall within the scope of the claims and their equivalents, the invention is also intended to include such modifications and modifications.

Claims

1. A device for calculating parameters of an autoregressive model, characterized in that, include: Memory, autocorrelation parameter calculation unit, autoregression parameter and threshold calculation unit, adaptive order determination controller; The memory and the autocorrelation parameter calculation unit are electrically connected; the autocorrelation parameter calculation unit and the autoregressive parameter and threshold calculation unit are electrically connected; the adaptive order determination controller and the autoregressive parameter and threshold calculation unit are electrically connected. The memory is used to store input data; The autocorrelation parameter calculation unit is used to perform autocorrelation calculation on the input data to obtain the autocorrelation calculation result; The autoregressive parameter and threshold calculation unit is used to determine the parameters and thresholds of the autoregressive model at the current order based on the autocorrelation calculation results and the input data; including using the formula: ; Perform data iteration on the parameters and threshold for the current order; where N is the length of the input data sequence, i+1 is the current order of AR, TH represents the threshold, and P is the prediction error power. The minimum prediction error power is reached; the threshold (TH) reaches its minimum value at order i+1, where i+1 is the final order, and the iteration stops. The adaptive order controller is used to update the current order of the autoregressive model when the threshold does not reach the minimum threshold value, and to update the parameters and threshold of the autoregressive model at the next order based on the parameters and threshold of the autoregressive model at the current order; the minimum threshold value is a minimum threshold value that is dynamically updated based on the length of the input data sequence, the current order of the autoregressive model, and the prediction error power. When the threshold reaches its minimum value, the parameters of the autoregressive model at the current order are output.

2. The device for calculating the parameters of the autoregressive model according to claim 1, characterized in that, The computing device further includes a read address generation unit, which is electrically connected to the memory and the adaptive order determination controller. The address generation unit is used to read the address sent by the adaptive order determination controller and save the data corresponding to the address to the memory.

3. The device for calculating the parameters of the autoregressive model according to claim 1, characterized in that, The computing device further includes: a data gating unit; the data gating unit is electrically connected to the autocorrelation parameter calculation unit, the autoregression parameter and threshold calculation unit, and the adaptive order determination controller, respectively. The data gating unit is used to select and output the autocorrelation calculation results.

4. A method for determining parameters of an autoregressive model, characterized in that, The method for determining the parameters of the autoregressive model is applied to the computing device for the parameters of the autoregressive model as described in any one of claims 1 to 3; Methods for determining the parameters of an autoregressive model include: Parallel autocorrelation calculations are performed on the input data to obtain the autocorrelation results; Based on the autocorrelation calculation results and the input data, determine the parameters and thresholds of the autoregressive model at the current order; If the threshold does not reach the minimum threshold value, the current order of the autoregressive model is updated, and the parameters and thresholds of the autoregressive model at the next order are updated based on the parameters and thresholds of the autoregressive model at the current order; the minimum threshold value is a minimum threshold value that is dynamically updated based on the length of the input data sequence, the current order of the autoregressive model, and the prediction error power. When the threshold reaches its minimum value, the parameters of the autoregressive model at the current order are output.

5. The method according to claim 4, characterized in that, The input data includes first input data and second input data, and the autocorrelation calculation result includes a first autocorrelation calculation result corresponding to the first input data and a second autocorrelation calculation result corresponding to the second input data.

6. The method according to claim 5, characterized in that, The parallel autocorrelation calculation of the input data to obtain the autocorrelation calculation results includes: Perform a multiplication-accumulation operation on the first input data to obtain the first autocorrelation operation result; The second input data is delayed and then multiplied and accumulated to obtain the second autocorrelation result.

7. The method according to claim 4, characterized in that, The step of determining the parameters and thresholds of the autoregressive model at the current order based on the autocorrelation calculation results and the input data includes: Preliminary parameters are determined based on a portion of the selected data from the input data and the autocorrelation calculation results. The reflection coefficient is determined based on the aforementioned preliminary parameters; The parameters of the autoregressive model at the current order are determined based on the reflection coefficient; The threshold is determined based on the initial value of the autocorrelation in the autocorrelation calculation results and the reflection coefficient.

8. The method according to claim 7, characterized in that, Determining the parameters of the autoregressive model at the current order based on the reflection coefficient includes: Obtain the parameters of the autoregressive model corresponding to the previous order; Based on the reflection coefficient and the parameters of the autoregressive model corresponding to the previous order, a multiplication-addition operation is performed to determine the parameters of the autoregressive model at the current order.

9. The method according to any one of claims 4-8, characterized in that, The order of the autocorrelation model is greater than or equal to 0 and less than or equal to 16.

10. An electronic device, characterized in that, include: One or more processors; and one or more machine-readable media thereon storing instructions, which, when executed by the one or more processors, enable the execution of the method for determining the parameters of the autoregressive model as described in any one of claims 4 to 9.