A method for constructing Golomb Costas sequences based on high-order extension fields

By calculating the primitive elements and their powers of the extended field GF(pn) through functions, high-order Golomb Costas sequences are constructed quickly and accurately, which solves the problem of large computational complexity of high-order Golomb Costas sequences and realizes efficient sequence construction and acquisition of the optimal frequency hopping pattern.

CN117997375BActive Publication Date: 2025-09-12NANJING UNIV OF POSTS & TELECOMM
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410125447.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-01-30
Publication Date
2025-09-12
Estimated Expiration
2044-01-30

AI Technical Summary

Technical Problem

The existing technology is difficult to quickly and accurately calculate the placement coordinates of high-order Golomb Costas sequences, resulting in a sharp increase in the amount of calculation when constructing high-order Golomb Costas sequences and making it impossible to achieve efficient construction.

Method used

By calling functions such as get_combins(p,n), modBKY(p,n,BY,BKY,res), and calc(p,n,BKY,res_product), the primitive elements and their powers in the extended field GF(pn) are calculated. The placement coordinates of the Golomb Costas sequence are quickly calculated using the construction formula of the Golomb Costas sequence.

Benefits of technology

It reduces the workload of manual calculations, improves the construction efficiency and accuracy of high-order Golomb Costas sequences, supports the rapid acquisition of optimal frequency hopping patterns, and enhances the performance of multiple access technology.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117997375B_ABST
    Figure CN117997375B_ABST
Patent Text Reader

Abstract

The present invention discloses a method for constructing a Golomb Costas sequence based on a high-order spread domain, which belongs to the field of wireless communication technology. The method comprises the following steps: determining the order N of the Golomb Costas sequence to be constructed; and determining the order N of the Golomb Costas sequence to be constructed according to N=p. n ‑2, determine p, n, where p is a prime number and n is a positive integer, and explicitly state the extended field GF (p n ); select an irreducible polynomial of degree n with a leading coefficient of 1 on the prime field GF(p) as f(x), and clearly expand the field GF(p n ) in the form of elements, define the extended field GF(p n ) two binary operations on elements in the GF(p n ) primitive elements and their powers, and list the powers of primitive elements; in the extended field GF(p n ) selects two primitive elements; calculates the placement coordinates and completes the construction of the Golomb Costas sequence. The present invention calculates the primitive elements of the extended domain and their powers by calling functions such as get_combins(p,n), modBKY(p,n,BY,BKY,res) and calc(p,n,BKY,res_product), and according to the construction formula of the Golomb Costas sequence and by searching the extended domain GF(p n ) list of powers of primitive elements, quickly calculate the placement coordinates of the Golomb Costas sequence, reduce the workload of manual calculations, and improve the efficiency of constructing high-order Golomb Costas sequences based on extended domains. At the same time, it ensures the correctness of the calculation of the placement coordinates of the Golomb Costas sequence, solving the difficult problem of constructing Golomb Costas sequences based on high-order extended domains.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of wireless communications, and in particular relates to a method for constructing a Golomb Costas sequence based on a high-order spread domain. Background Art

[0002] The Costas sequence, proposed by J.P. Costas in 1965, was first used to improve the resolution of radar and sonar systems. Due to its ideal autocorrelation, the Costas sequence has been widely studied and applied in radar, sonar, and wireless communications. However, the Costas sequence lacks ideal cross-correlation. Therefore, in multi-user radar systems or mobile communications, when multiple frequency-hopping patterns with ideal autocorrelation and cross-correlation are required, the Costas sequence cannot meet the requirements.

[0003] Cellular mobile communication systems are interference-limited. Interference in the system is far greater than background noise. The increase in the number of users in the system is primarily limited by the level of interference. Any technology that can reduce interference can improve system capacity and performance. Multiple access technology, as the foundation and support of the physical layer in wireless communication networks, is no exception. Traditional multiple access technologies, such as FDMA, TDMA, and CDMA, are all one-dimensional and cannot effectively overcome interference caused by multipath propagation and Doppler shift. Orthogonal graph division multiple access (OGDMA) based on an optimal frequency hopping pattern is a new two-dimensional multiple access technology. The ideal two-dimensional autocorrelation of the optimal frequency hopping pattern can mitigate interference caused by multipath propagation and Doppler shift, while its ideal cross-correlation can mitigate interference between users. This new two-dimensional OGDMA technology eliminates the need for equalization and channel estimation to effectively mitigate interference caused by multipath propagation, Doppler shift, and inter-user interference. Consequently, it can significantly reduce receiver complexity and improve communication system capacity and performance, significantly impacting the future development of mobile communications. The key to this multiple access technology is to design enough optimal frequency hopping patterns with ideal autocorrelation and cross-correlation. The optimal frequency hopping pattern is generated by an algebraically constructed Costas sequence through two-dimensional cyclic shift. Therefore, the algebraically constructed Costas sequence must be obtained before generating the optimal frequency hopping pattern.

[0004] The algebraic construction of Costas sequences is based on finite field theory and is divided into the Welch construction method and the Golomb construction method. The Costas sequences constructed using these two methods are called Welch Costas sequences and Golomb Costas sequences, respectively. The Golomb construction method can be constructed based on either prime fields or extended fields.

[0005] A Chinese patent (application number: 2021113244979) discloses a method for constructing a pushpin-shaped fuzzy function signal based on an expanded domain. Although a specific method for constructing a Golomb Costas sequence based on an expanded domain is given, it can only solve Golomb Costas sequences of smaller orders. When the order N of the Golomb Costas sequence to be constructed continues to increase, the amount of calculation will increase sharply. It is not feasible to construct a Golomb Costas sequence by manual calculation.

[0006] Therefore, how to quickly and accurately calculate the placement coordinates of the constructed Golomb Costas sequence to achieve the expansion of the GF(p n ) The construction of Golomb Costas sequence is the technical problem that the present invention aims to solve. Summary of the Invention

[0007] The object of the present invention is to provide a method for constructing a Golomb Costas sequence based on a high-order extended domain, so as to solve the problems raised in the above background technology.

[0008] The object of the present invention is achieved by: a method for constructing a Golomb Costas sequence based on a high-order extended domain, characterized in that the method comprises the following steps:

[0009] Step S1: Determine the order N of the Golomb Costas sequence to be constructed;

[0010] Step S2: According to N=p n -2, determine p, n, where p is a prime number and n is a positive integer, and explicitly state the extended field GF (p n );

[0011] Step S3: Select an irreducible polynomial of degree n with a leading coefficient of 1 over the prime field GF(p) as f(x);

[0012] Step S4: Determine the extended domain GF(p n ) in the form of elements, define the extended field GF(p n ) two binary operations on elements in ;

[0013] Step S5: Calculate the extended domain GF(p n ) primitive elements and their powers, and tabulate the powers of the primitive elements;

[0014] Step S6: In the extended domain GF(p n ) select two primitive elements;

[0015] Step S7: Calculate the placement coordinates to complete the construction of the Golomb Costas sequence.

[0016] Preferably, the order N of the Golomb Costas sequence to be constructed is determined in step S1, specifically:

[0017] Define N = q–2, q = p n , p is a prime number, n is an integer greater than 1, when the placement function of the N-order permutation matrix P satisfies the following formula, P is a Golomb Costas sequence;

[0018] y(k)=log β (1–α k ),1≤k≤q–2;

[0019] Among them, α and β are two primitive elements of the prime field GF(q).

[0020] Preferably, in step S4, the expanded domain GF(p n ) in the form of elements, define the extended field GF(p n ) elements, specifically:

[0021] Step S4-1: Expand the domain GF(p n ) are: m0+m1x+...+m n–1 x n–1 (m i ∈GF(p));

[0022] Assume g1(x), g2(x) is the extended field GF(p n ), then:

[0023]

[0024]

[0025] Among them, a i is the coefficient of the i-th term in g1(x), b i is the coefficient of the i-th term in g2(x), x i is the extended domain GF(p n ) in the i-th order;

[0026] Step S4-2: For the extended domain GF(p n ) elements are defined as follows:

[0027] Addition is polynomial addition:

[0028] Multiplication is modular f(x): g1(x)·g2(x)=g1(x)g2(x)mod f(x);

[0029] Here, f(x) is an irreducible polynomial of degree n with a leading coefficient of 1 over GF(p).

[0030] Preferably, in step S5, the expanded domain GF(p n ) primitive elements and their powers, specifically:

[0031] Step S5-1: Call the function get_combins(p,n) to get GF(p n ) all possible primitive elements in it;

[0032] Get GF(p n ) in the original element, specifically:

[0033] Step S5-1-1: Use the function get_combins(p,n) to generate an integer list that records the expansion field GF(p n ) all possible values ​​of the coefficients of the power terms in the elements, i.e. 0 to p–1;

[0034] Step S5-1-2: traverse the elements 0 to p–1 in the integer list to generate a full permutation of n numbers formed by 0 to p–1; for the extended field GF(p n ), there are a total of p n Such permutations, each of which corresponds to the extended field GF(p n )

[0035] Step S5-1-3: Expand the GF(p n ) are eliminated, and the remaining permutations are all possible primitive elements;

[0036] Step S5-2: Traverse the possible items of each primitive element and check whether they meet the conditions of the primitive element.

[0037] Preferably, in step S5-2, the possible items of each primitive element are traversed to check whether they meet the conditions of the primitive element, specifically:

[0038] Step S5-2-1: Call the function modBKY(p,n,BY,BKY,res) to calculate the possible items of the currently traversed primitive element from 1 to p n Powers of –1;

[0039] Step S5-2-2: Use list temp to store the current primitive element possible items from 1 to p n -1's power values, which increases the possible items of the current primitive element from 1 to p n The powers of -1 are stored in the list temp, and duplicate values ​​are removed from the powers of the list temp.

[0040] Step S5-2-3: For integers 1 to p n -2, and in each traversal, multiply the last element of the current temp list by the current primitive element possible item to obtain the current primitive element possible item from 2 to p n -1 raised to various powers;

[0041] Step S5-2-4: Determine the length of the list temp: If the length of the list temp is p n -1, then the current primitive element may be the primitive element, and the primitive element is stored in the list resBY;

[0042] Step S5-2-4: Output all primitive elements in the list resBY.

[0043] Preferably, the possible items of the current primitive element obtained in step S5-2-3 range from 2 to p n The values ​​of the powers of –1 are:

[0044] Perform polynomial multiplication on the last element of the current temp list and the current primitive element possible item to obtain a polynomial product;

[0045] According to the definition of multiplication operation in the extended domain, after obtaining the polynomial product, we need to take the modulus of f(x) to obtain the result of the multiplication operation; call the function calc(p,n,BKY,res_product) to implement the operation of taking the modulus of f(x) by the polynomial product;

[0046] Take the polynomial product as the result of the multiplication operation, check whether this power value is in the list temp, if not, store the power value; otherwise, do not store it, ensuring that there are no duplicate power values ​​in temp.

[0047] Preferably, the calling function calc(p,n,BKY,res_product) implements the operation of taking the modulus of the polynomial product f(x), specifically:

[0048] In the calc(p,n,BKY,res_product) function, first determine whether the degree of the polynomial product is less than or equal to n–1;

[0049] If so, the result of multiplying the current polynomial product modulo f(x) is the polynomial product itself; end the calc(p,n,BKY,res_product) function;

[0050] If not, divide the polynomial product by f(x) to obtain the remainder tmp; recursively call the function calc(p,n,BKY,res_product) to determine whether the degree of the remainder tmp is less than or equal to n–1. If so, end the calc(p,n,BKY,res_product) function; if not, divide tmp by f(x), and then reset tmp to the newly obtained remainder; loop execution until the degree of the remainder tmp is less than or equal to n–1.

[0051] Preferably, the placement coordinates are calculated in step S7 to complete the construction of the Golomb Costas sequence, specifically as follows:

[0052] By the placement function y(k)=log of the Golomb Costas sequence β (1–α k ),1≤k≤q–2, we get the implicit function:

[0053] α k +β y(k) =1,1≤k≤p n –2;

[0054] Then β y(k) =1–α k =1+(p–1)α k ,1≤k≤p n –2;

[0055] Through Beta y(k) =1–α k =1+(p–1)α k And the powers of the primitive elements obtained, we can get the horizontal coordinate k at different values ​​(1≤k≤p n –2) corresponding to the vertical coordinate y(k);

[0056] Place the coordinates (k,y(k))1≤k≤p n –2 is the position of each “1” cell in the Golomb Costas sequence, and the construction of the Golomb Costas sequence based on the expanded domain is completed.

[0057] Compared with the prior art, the present invention has the following improvements and advantages:

[0058] 1. By calling functions such as get_combins(p,n), modBKY(p,n,BY,BKY,res) and calc(p,n,BKY,res_product), the primitive elements and their powers of the extended domain are calculated. According to the construction formula of the Golomb Costas sequence and by finding the extended domain GF(p n) list of powers of primitive elements, quickly calculate the placement coordinates of the Golomb Costas sequence, reduce the workload of manual calculations, and improve the efficiency of constructing high-order Golomb Costas sequences based on extended domains. At the same time, it ensures the accuracy of the placement coordinates of the Golomb Costas sequence, solving the difficult problem of constructing Golomb Costas sequences based on high-order extended domains.

[0059] 2. By placing each power into a list temp and removing duplicates from the list temp, the accuracy of obtaining the Golomb Costas sequence placement coordinates is further improved. Furthermore, the optimal frequency-hopping pattern in orthogonal graph division multiple access (OGDMA) can be obtained by performing a two-dimensional cyclic shift of the Golomb Costas sequence. The successful construction of Golomb Costas sequences based on high-order spread domains is of great significance for rapidly obtaining the optimal frequency-hopping pattern. BRIEF DESCRIPTION OF THE DRAWINGS

[0060] Figure 1 1 is an overall flow chart of the method of the present invention.

[0061] Figure 2 A placement coordinate diagram for constructing the Golomb Costas sequence in Example 1.

[0062] Figure 3 This is a structural diagram of the expanded domain in Example 1.

[0063] Figure 4 This is a result diagram of the primitive elements and powers obtained based on the expanded domain in Example 2.

[0064] Figure 5 This is a result diagram of selecting two primitive elements based on the expanded domain in Example 2.

[0065] Figure 6 This is a diagram showing the placement coordinate results of the Golomb Costas sequence obtained based on the expanded domain calculation in Example 2.

[0066] Figure 7 This is a placement coordinate diagram of the Golomb Costas sequence obtained based on the expanded domain calculation in Example 2.

[0067] Figure 8 The figure is a result diagram of using the method of the present invention. DETAILED DESCRIPTION

[0068] The present invention is further summarized below with reference to the accompanying drawings.

[0069] like Figure 1 As shown, a method for constructing a Golomb Costas sequence based on a high-order extended domain includes the following steps:

[0070] Step S1: Determine the order N of the Golomb Costas sequence to be constructed;

[0071] Determine the order N of the Golomb Costas sequence to be constructed, specifically:

[0072] Define N = q–2, q = p n , p is a prime number, n is an integer greater than 1, when the placement function of the N-order permutation matrix P satisfies the following formula, P is a Golomb Costas sequence;

[0073] y(k)=log β (1–α k ),1≤k≤q–2;

[0074] Among them, α and β are two primitive elements of the prime field GF(q).

[0075] Step S2: According to N=p n -2, determine p, n, and clarify the extended domain GF (p n );

[0076] Based on q=p n , N=q–2, then N=p n –2;

[0077] According to N=p n –2, determine p and n, where p is a prime number and n is a positive integer, and specify the extended field GF (p n ).

[0078] Step S3: Select an irreducible polynomial of degree n with a leading coefficient of 1 over the prime field GF(p) as f(x);

[0079] Step S4: Determine the extended domain GF(p n ) in the form of elements, define the extended field GF(p n ) two binary operations on elements in ;

[0080] Clearly expand the domain GF(p n ) in the form of elements, define the extended field GF(p n ), specifically:

[0081] Step S4-1: Expand the domain GF(p n ) are: m0+m1x+...+m n–1 x n–1 (m i ∈GF(p));

[0082] Assume g1(x), g2(x) is the extended field GF(pn ), then:

[0083]

[0084]

[0085] Among them, a i is the coefficient of the i-th term in g1(x), b i is the coefficient of the i-th term in g2(x), x i is the extended domain GF(p n ) in the i-th order;

[0086] Step S4-2: For the extended domain GF(p n ) elements are defined as follows:

[0087] Addition is polynomial addition:

[0088] Multiplication is modular f(x): g1(x)·g2(x)=g1(x)g2(x)mod f(x);

[0089] Here, f(x) is an irreducible polynomial of degree n with a leading coefficient of 1 over GF(p).

[0090] Step S5: Calculate the extended domain GF(p n ) primitive elements and their powers, and tabulate the powers of the primitive elements;

[0091] Calculate the extended field GF(p n ) primitive elements and their powers, specifically:

[0092] Step S5-1: Call the function get_combins(p,n) to get GF(p n ) all possible primitive elements in it;

[0093] Get GF(p n ) in the original element, specifically:

[0094] Step S5-1: Call the function get_combins(p,n) to get GF(p n ) all possible primitive elements in it;

[0095] Get GF(p n ) in the original element, specifically:

[0096] Step S5-1-1: Use the function get_combins(p,n) to generate an integer list that records the expansion field GF(p n) all possible values ​​of the coefficients of the power terms in the elements, i.e. 0 to p–1;

[0097] Step S5-1-2: traverse the elements 0 to p–1 in the integer list to generate a full permutation of n numbers formed by 0 to p–1; for the extended field GF(p n ), there are a total of p n Such permutations, each of which corresponds to the extended field GF(p n )

[0098] Step S5-1-3: Expand the GF(p n ) are eliminated, and the remaining permutations are all possible primitive elements;

[0099] Step S5-2: Traverse the possible items of each primitive element and check whether they meet the conditions of the primitive element;

[0100] Step S5-2-1: Call the function modBKY(p,n,BY,BKY,res) to calculate the possible items of the currently traversed primitive element from 1 to p n Powers of –1;

[0101] Step S5-2-2: Use list temp to store the current primitive element possible items from 1 to p n -1's power values, which increases the possible items of the current primitive element from 1 to p n The powers of -1 are stored in the list temp, and duplicate values ​​are removed from the powers of the list temp.

[0102] Step S5-2-3: For integers 1 to p n -2, and in each traversal, multiply the last element of the current temp list by the current primitive element possible item to obtain the current primitive element possible item from 2 to p n -1 raised to various powers;

[0103] Perform polynomial multiplication on the last element of the current temp list and the current primitive element possible item to obtain a polynomial product;

[0104] According to the definition of multiplication operation in the extended domain, after obtaining the polynomial product, we need to take the modulus of f(x) to obtain the result of the multiplication operation; call the function calc(p,n,BKY,res_product) to implement the operation of taking the modulus of f(x) by the polynomial product;

[0105] In the calc(p,n,BKY,res_product) function, first determine whether the degree of the polynomial product is less than or equal to n–1;

[0106] If so, the result of multiplying the current polynomial product modulo f(x) is the polynomial product itself; end the calc(p,n,BKY,res_product) function;

[0107] If not, divide the polynomial product by f(x) to get the remainder tmp; recursively call the function calc(p,n,BKY,res_product) to determine whether the degree of remainder tmp is less than or equal to n–1. If so, end the calc(p,n,BKY,res_product) function; if not, divide tmp by f(x), and then reset tmp to the newly obtained remainder; loop execution until the degree of remainder tmp is less than or equal to n–1;

[0108] Take the polynomial product as the result of the multiplication operation, check whether this power value is in the list temp, if not, store the power value; otherwise, do not store it, ensuring that there are no duplicate power values ​​in temp.

[0109] Step S5-2-4: Determine the length of the list temp: If the length of the list temp is p n -1, then the current primitive element may be the primitive element, and the primitive element is stored in the list resBY;

[0110] Step S5-2-5: Output all primitive elements in the list resBY;

[0111] Step S6: In the extended domain GF(p n ) select two primitive elements;

[0112] Step S7: Calculate the placement coordinates to complete the construction of the Golomb Costas sequence;

[0113] By the placement function y(k)=log of the Golomb Costas sequence β (1–α k ),1≤k≤q–2, we get the implicit function:

[0114] α k +β y(k) =1,1≤k≤p n –2;

[0115] Then β y(k) =1–α k =1+(p–1)α k ,1≤k≤p n –2;

[0116] Through Beta y(k) =1–α k =1+(p–1)α kAnd the powers of the primitive elements obtained, we can get the horizontal coordinate k at different values ​​(1≤k≤p n –2) corresponding to the vertical coordinate y(k);

[0117] Place the coordinates (k,y(k))1≤k≤p n –2 is the position of each “1” cell in the Golomb Costas sequence, and the construction of the Golomb Costas sequence based on the expanded domain is completed.

[0118] In order to verify the feasibility of the method of the present invention, the present invention is verified:

[0119] Example 1:

[0120] Step S1: Assume that an N=7-order Golomb Costas sequence based on an extended domain needs to be constructed;

[0121] Step S2: According to N=p n –2, we can determine p=3, n=2, and the expansion domain to be constructed is GF(3 2 ).

[0122] Step S3: Expand the domain GF(3 2 ) are all m0+m1x(m i ∈GF(3)), the extended field GF(3 2 ) are known.

[0123] Select a quadratic irreducible polynomial with a leading coefficient of 1 over GF(3) as f(x); where x 2 +x+2 is an irreducible polynomial of degree 2 with a leading coefficient of 1 over GF(3), which can be expressed as f(x).

[0124] Step S4: Determine the extended domain GF(p n ) in the form of elements, define the extended field GF(p n ) two binary operations on elements in ;

[0125] Step S5: Calculate the extended domain GF(p n ) primitive elements and their powers, and tabulate the powers of the primitive elements;

[0126] The representation of the elements in the extended domain is known, and the function get_combins(p,n) is called to obtain GF(p n ) all possible primitive elements in GF(3 2 ):0、1、2、x、x+1、x+2、2x、2x+1、2x+2;GF(3 2 ) is φ(3 2–1)=φ(8)=4.

[0127] Traverse the possible items of each primitive element and check whether they meet the conditions of the primitive element;

[0128] Step S5-2-1: Call the function modBKY(p,n,BY,BKY,res) to calculate the possible items of the currently traversed primitive element from 1 to p n Powers of –1;

[0129] Take element x as an example, and name the element x as α:

[0130] α-x;

[0131] σ 2 =x 2 mod f(x) = 2x + 1;

[0132] α 3 =x 3 mod f(x) = 2x + 2;

[0133] α 4 =x 4 mod f(x) = 2;

[0134] α 5 =x 5 mod f(x) = 2x;

[0135] α 6 =x 6 mod f(x) = x + 2;

[0136] α 7 =x 7 mod f(x) = x + 1;

[0137] α 8 =x 8 mod f(x) = 1;

[0138] From the above, we can see that the order of element α=x is 8=3 2 -1, so the element α=x is a primitive element.

[0139] After calculation, it can be determined that the four elements x, 2x+2, x+1, and 2x are GF(3 2 ) of the primitive element (f(x)=x 2 +x+2).

[0140] GF(3 2 ) and its powers are shown in Table 1:

[0141] Table 1 GF(3 2 )'s primitive elements and their powers

[0142] α=x β=2x+2 ρ=x+1 σ=2x <h2 style=";text-align:left;direction:ltr"><![CDATA[α <h2 style=";text-align:left;direction:ltr"> 2 <h2 style=";text-align:left;direction:ltr"> =2x+1]]><h2 style=";text-align:left;direction:ltr"> <![CDATA[β 2 =x+2]]> <![CDATA[ρ 2 =x+2]]> <h2 style=";text-align:left;direction:ltr"><![CDATA[σ <h2 style=";text-align:left;direction:ltr"> 2 <h2 style=";text-align:left;direction:ltr"> =2x+1]]><h2 style=";text-align:left;direction:ltr"> <h2 style=";text-align:left;direction:ltr"><![CDATA[α <h2 style=";text-align:left;direction:ltr"> 3 <h2 style=";text-align:left;direction:ltr"> =2x+2]]><h2 style=";text-align:left;direction:ltr"> <![CDATA[β 3 =x]]> <h2 style=";text-align:left;direction:ltr"><![CDATA[ρ <h2 style=";text-align:left;direction:ltr"> 3 <h2 style=";text-align:left;direction:ltr"> <2x]]><h2 style=";text-align:left;direction:ltr"> <![CDATA[σ 3 =x+1]]> <![CDATA[α 4 =2]]> <![CDATA[β 4 =2]]> <![CDATA[ρ 4 =2]]> <![CDATA[σ 4 =2]]> <h2 style=";text-align:left;direction:ltr"><![CDATA[a <h2 style=";text-align:left;direction:ltr"> 5 <h2 style=";text-align:left;direction:ltr"> <2x]]><h2 style=";text-align:left;direction:ltr"> <![CDATA[β 5 =x+1]]> <h2 style=";text-align:left;direction:ltr"><![CDATA[ρ <h2 style=";text-align:left;direction:ltr"> 5 <h2 style=";text-align:left;direction:ltr"> =2x+2]]><h2 style=";text-align:left;direction:ltr"> <![CDATA[σ 5 =x]]> <![CDATA[α 6 =x+2]]> <h2 style=";text-align:left;direction:ltr"><![CDATA[β <h2 style=";text-align:left;direction:ltr"> 6 <h2 style=";text-align:left;direction:ltr"> =2x+1]]><h2 style=";text-align:left;direction:ltr"> <h2 style=";text-align:left;direction:ltr"><![CDATA[ρ <h2 style=";text-align:left;direction:ltr"> 6 <h2 style=";text-align:left;direction:ltr"> =2x+1]]><h2 style=";text-align:left;direction:ltr"> <![CDATA[σ 6 =x+2]]> <![CDATA[α 7 =x+1]]> <h2 style=";text-align:left;direction:ltr"><![CDATA[β <h2 style=";text-align:left;direction:ltr"> 7 <h2 style=";text-align:left;direction:ltr"> <2x]]><h2 style=";text-align:left;direction:ltr"> <![CDATA[ρ 7 =x]]> <h2 style=";text-align:left;direction:ltr"><![CDATA[σ <h2 style=";text-align:left;direction:ltr"> 7 <h2 style=";text-align:left;direction:ltr"> =2x+2]]><h2 style=";text-align:left;direction:ltr"> <![CDATA[α 8 =1]]> <![CDATA[β 8 =1]]> <![CDATA[ρ 8 =1]]> <![CDATA[σ 8 =1]]>

[0143] The present invention uses a list temp to store the powers of the primitive element possible items. When the primitive element possible item x is traversed, the list temp is as shown in Table 2.

[0144] Table 2 Various powers of primitive element x

[0145] frequency 1 2 3 4 5 6 7 8 Power value x 2x+1 2x+2 2 2x x+2 x+1 1

[0146] From Table 2, we can see that for the primitive element possible item x, the length of the list temp is 8=3 2 -1(p=3, n=2), so the primitive element possible item x is a primitive element.

[0147] When traversing to the primitive element possible item x+2, the list temp is as shown in Table 3:

[0148] Table 3 The powers of element x+2

[0149] frequency 1 2 3 4 5 6 7 8 Power value x+2 2 2x+1 1 x+2 2 2x+1 1

[0150] As shown in Table 3, for the primitive element possible term x+2, its power values ​​are repeated. Finally, temp only stores four power values: x+2, 2, 2x+1, and 1. Its length is 4<3. 2 –1, so the primitive element possibility term x+2 is not a primitive element.

[0151] Step S6: In the extended domain GF(p n ) select two primitive elements;

[0152] From the extended domain GF(3 2 ) to construct the Golomb Costas sequence; x and 2x+2 are selected to construct the Golomb Costas sequence, and x and 2x+2 are named α and β respectively.

[0153] Step S7: Calculate the placement coordinates to complete the construction of the Golomb Costas sequence;

[0154] According to β y(k) =1–α k =1+(p–1)α k ,1≤k≤p n –2 and GF(3 in Table 1 2 ) to various powers of the primitive element in the equation, and obtain y(k) corresponding to different values ​​of k;

[0155] When k = 1, β y(1) =1+2α=2x+1, so y(1)=6;

[0156] When k = 2, β y(2) =1+2α 2 =x, so y(2)=3;

[0157] When k = 3, β y(3) =1+2α 3 =x+2, so y(3)=2;

[0158] When k = 4, β y(4) =1+2α 4 =2, so y(4)=4;

[0159] When k = 5, β y(5) =1+2α 5 =x+1, so y(5)=5;

[0160] When k = 6, β y(6) =1+2α 6 =2x+2, so y(6)=1;

[0161] When k = 7, β y(7) =1+2α 7 =2x, so y(7)=7;

[0162] The obtained coordinates (k, y(k)) are the positions of the "1" cells in the Golomb Costas sequence; the constructed Golomb Costas sequence is as follows Figure 2 As shown in (f(x) = x 2 +x+2, α=x, β=2x+2).

[0163] Example 2:

[0164] Based on the extended domain GF(5 2 ) to construct a Golomb Costas sequence of order 23.

[0165] First, construct the extended field GF(5 2 )(p=5,n=2);

[0166] like Figure 3 As shown, input a prime number p and power n, and then input an n-order irreducible polynomial with a leading coefficient of 1 on GF(p); here p is 5, n is 2, and the irreducible polynomial is x 2 +3x+3;

[0167] After calculation, we get the extended domain GF(5 2 ) There are 8 primitive elements in total, namely x, 2x, 3x, 4x, 2x+1, x+3, 4x+2, 3x+4, and their powers have also been obtained; Figure 4 As shown;

[0168] Based on the extended domain GF(5 2 ) constructs the Golomb Costas sequence. From the extended field GF(5 2 ) are selected from the primitive elements for input. Figure 5 The results shown are shown here. Here, two primitive elements, x and 2x, are selected for input.

[0169] Based on the extended domain GF(5 2 ) The placement coordinates of the calculated Golomb Costas sequence are as follows Figure 6 As shown; then the constructed 23-order Golomb Costas sequence is as follows Figure 7 shown.

[0170] By calling the function get_combins(p,n), we can get GF(p n ) all possible primitive elements in the ; by calling the function modBKY(p,n,BY,BKY,res), calculate the possible primitive elements from 1 to p n –1 to various powers; the time required is as follows Figure 8 As shown, when the number of Golomb Costas sequences N to be constructed increases, the amount of calculation increases dramatically, and it is impossible to construct the Golomb Costas sequence by manual calculation. Therefore, the algorithm designed by the present invention can quickly and accurately complete the construction of the Golomb Costas sequence based on the expanded domain.

[0171] The foregoing is merely an embodiment of the present invention and is not intended to limit the present invention. It will be apparent to those skilled in the art that various modifications and variations of the present invention are possible. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention are intended to be included within the scope of the claims of the present invention.

Claims

1. A method for constructing a Golomb Costas sequence based on a high-order extended domain, characterized by: The method comprises the following steps: Step S1: Determine the order N of the Golomb Costas sequence to be constructed; Step S2: According to N=p n -2, determine p, n, where p is a prime number and n is a positive integer, and explicitly state the extended field GF (p n ); Step S3: Select an irreducible polynomial of degree n with a leading coefficient of 1 over the prime field GF(p) as f(x); Step S4: Determine the extended domain GF(p n ) in the form of elements, define the extended field GF(p n ) two binary operations on elements in ; Step S5: Calculate the extended domain GF(p n ) primitive elements and their powers, and tabulate the powers of the primitive elements; Step S6: In the extended domain GF(p n ) select two primitive elements; Step S7: Calculate the placement coordinates to complete the construction of the Golomb Costas sequence.

2. The method for constructing a Golomb Costas sequence based on a high-order extended domain according to claim 1, characterized in that: In step S1, the order N of the Golomb Costas sequence to be constructed is determined as follows: Define N = q–2, q = p n , p is a prime number, n is an integer greater than 1, when the placement function of the N-order permutation matrix P satisfies the following formula, P is a Golomb Costas sequence; y(k)=log β (1–a k ),1≤k≤q–2; Among them, α and β are two primitive elements of the prime field GF(p).

3. The method for constructing a Golomb Costas sequence based on a high-order extended domain according to claim 1, wherein: In step S4, the expansion domain GF(p n ) in the form of elements, define the extended field GF(p n ) elements, specifically: Step S4-1: Expand the domain GF(p n ) are: m0+m1x+...+m n–1 x n–1 , m i ∈GF(p); Assume g1(x), g2(x) is the extended field GF(p n ), then: Among them, a i is the coefficient of the i-th term in g1(x), b i is the coefficient of the i-th term in g2(x), x i is the extended domain GF(p n ) in the i-th order; Step S4-2: For the extended domain GF(p n ) elements to define two binary operations: Addition is polynomial addition: Multiplication is modular f(x): g1(x)·g2(x)=g1(x)g2(x)mod f(x); Here, f(x) is an irreducible polynomial of degree n with a leading coefficient of 1 over GF(p).

4. The method for constructing a Golomb Costas sequence based on a high-order extended domain according to claim 1, wherein: In step S5, the extended domain GF(p n ) primitive elements and their powers, specifically: Step S5-1: Call the function get_combins(p,n) to get GF(p n ) all possible primitive elements in it; Get GF(p n ) in the original element, specifically: Step S5-1-1: Use the function get_combins(p,n) to generate an integer list that records the expansion field GF(p n ) all possible values ​​of the coefficients of the power terms in the elements, i.e. 0 to p–1; Step S5-1-2: traverse the elements 0 to p–1 in the integer list to generate a full permutation of n numbers formed by 0 to p–1; for the extended field GF(p n ), there are a total of p n Such permutations, each of which corresponds to the extended field GF(p n ) Step S5-1-3: Expand the GF(p n ) are eliminated, and the remaining permutations are all possible primitive elements; Step S5-2: Traverse the possible items of each primitive element and check whether they meet the conditions of the primitive element.

5. The method for constructing a Golomb Costas sequence based on a high-order extended domain according to claim 4, characterized in that: In step S5-2, the possible items of each primitive element are traversed to check whether they meet the conditions of the primitive element, specifically: Step S5-2-1: Call the function modBKY(p,n,BY,BKY,res) to calculate the possible items of the currently traversed primitive element from 1 to p n Powers of –1; Step S5-2-2: Use list temp to store the current primitive element possible items from 1 to p n -1's power values, which increases the possible items of the current primitive element from 1 to p n The powers of -1 are stored in the list temp, and duplicate values ​​are removed from the powers of the list temp. Step S5-2-3: For integers 1 to p n -2, and in each traversal, multiply the last element of the current temp list by the current primitive element possible item to obtain the current primitive element possible item from 2 to p n -1 raised to various powers; Step S5-2-4: Determine the length of the list temp: If the length of the list temp is p n -1, then the current primitive element may be the primitive element, and the primitive element is stored in the list resBY; Step S5-2-5: Output all primitive elements in the list resBY.

6. The method for constructing a Golomb Costas sequence based on a high-order extended domain according to claim 5, characterized in that: In step S5-2-3, the possible items of the current primitive element are obtained from 2 to p n The values ​​of the powers of –1 are: Perform polynomial multiplication on the last element of the current temp list and the current primitive element possible item to obtain a polynomial product; According to the definition of multiplication operation in the extended domain, after obtaining the polynomial product, we need to take the modulus of f(x) to obtain the result of the multiplication operation; Call the function calc(p,n,BKY,res_product) to implement the operation of polynomial product modulo f(x); Take the polynomial product as the result of the multiplication operation, check whether this power value is in the list temp, if not, store the power value; otherwise, do not store it, ensuring that there are no duplicate power values ​​in temp.

7. The method for constructing a Golomb Costas sequence based on a high-order extended domain according to claim 6, characterized in that: The calling function calc(p,n,BKY,res_product) implements the operation of taking the modulus of the polynomial product to f(x), specifically: In the calc(p,n,BKY,res_product) function, first determine whether the degree of the polynomial product is less than or equal to n–1; If so, the result of multiplying the current polynomial product modulo f(x) is the polynomial product itself; end the calc(p,n,BKY,res_product) function; If not, divide the polynomial product by f(x) to obtain the remainder tmp; recursively call the function calc(p,n,BKY,res_product) to determine whether the degree of the remainder tmp is less than or equal to n–1. If so, end the calc(p,n,BKY,res_product) function; if not, divide tmp by f(x), and then reset tmp to the newly obtained remainder; loop execution until the degree of the remainder tmp is less than or equal to n–1.

8. The method for constructing a Golomb Costas sequence based on a high-order extended domain according to claim 2, wherein: In step S7, the placement coordinates are calculated to complete the construction of the Golomb Costas sequence, specifically: By the placement function y(k)=log of the Golomb Costas sequence β (1–α k ),1≤k≤q–2, we get the implicit function: a k +b y(k) =1.1≤k≤p n –2; Then β y(k) = 1 – α k = 1 + (p – 1)α k , 1 ≤ k ≤ p n –2; Through Beta y(k) =1–α k =1+(p–1)α k And the powers of the primitive elements obtained, we can get the vertical coordinate y(k) corresponding to the horizontal coordinate k at different values, where 1≤k≤p n –2; Place the coordinates (k, y(k)), 1≤k≤p n –2 is the position of each "1" cell in the Golomb Costas sequence, and the construction of the extended domain Golomb Costas sequence is completed.

Citation Information

Patent Citations

  • Drawing pin-shaped fuzzy function signal construction method based on extended field

    CN114296688A

  • OFDM power line communication method based on optimal frequency hopping diagram

    CN114362791A