CN103516643B - MIMO detecting preprocessing device and method - Google Patents

MIMO detecting preprocessing device and method Download PDF

Info

Publication number
CN103516643B
CN103516643B CN201310473436.8A CN201310473436A CN103516643B CN 103516643 B CN103516643 B CN 103516643B CN 201310473436 A CN201310473436 A CN 201310473436A CN 103516643 B CN103516643 B CN 103516643B
Authority
CN
China
Prior art keywords
matrix
module
pretreatment
mmse
sqrd
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310473436.8A
Other languages
Chinese (zh)
Other versions
CN103516643A (en
Inventor
黎成
任帆
任一帆
贺光辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201310473436.8A priority Critical patent/CN103516643B/en
Publication of CN103516643A publication Critical patent/CN103516643A/en
Application granted granted Critical
Publication of CN103516643B publication Critical patent/CN103516643B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Radio Transmission System (AREA)

Abstract

The invention discloses an MIMO detecting preprocessing device and method. The device comprises a channel transfer matrix input cache module, an MMSE-SQRD preprocessing core module, an upper triangular matrix R cache module, a sorting information cache module, a unitary matrix Q cache module, a product computing module and a product computing result cache module. According to the MIMO detecting preprocessing device and method, QR decomposition of an augmented matrix of a channel transfer matrix received by an MIMO receiving end is achieved, sorting operation is added in the matrix QR decomposition process, a unitary matrix and an upper triangular matrix after QR decomposition are obtained, the sorting information vectors of the matrixes are obtained, the device and method are suitable for fields such as MIMO detecting, and the obtained unitary matrix and the obtained upper triangular matrix after QR decomposition can be effectively reused in next-level MMSE and K-Best detecting.

Description

A kind of mimo detection pretreatment unit and method
Technical field
The present invention relates to mimo wireless communication field, more particularly to one kind are based on mmse-sqrd(minimum mean Square error-sorted qr decomposition, least mean-square error-sequence qr decomposes) the mimo detection of algorithm Pretreatment unit and method.
Background technology
Radio communication is one of most active scientific research field in the world today.It breaches the physical restriction of wire communication, makes The place that can freely can reach in any radio wave of user is communicated, this significantly expanded communication space and Vigor.Mimo(multiple-input multiple-output, multiple-input and multiple-output) technology be considered as of future generation at a high speed One of key technology in radio communication.
Consider a simple mimo radio communication device model, it has m root transmitting antenna and n root reception antenna.Source Data in transmitting terminal via coding, modulation, spatial-temporal transform is to transmitting antenna.And correspondingly received end include channel matrices estimation, The orthogonal qr that sorts decomposes (sqrd), performing space-time decoding and demodulation in the hope of restoring data.N × m dimension matrix h is in order to represent channel transfer square Battle array, m dimension emission signal vector is by s=[s1;s2;……;Sm] t represents.The reception vector y=[y1 of receiving terminal gained;y2;……; Yn] t be by transmitting vector additive white Gaussian noise (additive white is superimposed by channel transfer matrix simultaneously Gaussian noise, awgn) gained.So-called mimo detection, that is, refer to receive vectorial y and pass through channel estimation simultaneously known After obtaining transfer matrix h, how to ask for the process of optimum transmitting vector.
Notice that the variance for every its Gaussian noise of reception antenna isCorresponding signal to noise ratio (signal-to-noise Ratio, snr) beIt is based on subsequently hard-wired consideration, complex channel matrix conversion is its corresponding real number table Existing form, as described below:
Y=hs+n
WhereinWithRepresent real part and the imaginary part of corresponding operating number respectively, now the dimension of channel matrix expands Open up as 2n × 2m.
By finding to existing literature search, p.luethi, c.studer, s.duetsch and e.zgraggen et al. In " ieee asia pacific conf.circuits and systems " nov.2008, pp.830 833 delivers “gram-schmidt-based qr decomposition for mimo detection:vlsi implementation And comparison(is decomposed for the qr that mimo detects based on gram schmidt: vlsi realizes and compares, 2008 Ieee Circuits and Systems Asian conference, the 830-833 page) " it is proposed that one kind carries out qr decomposition using gram-schmidt method Hardware for mimo detection is realized.But, this method is unfavorable for the realization of hardware based on gram-schmidt, can increase reality Existing complexity, and qr decomposes the impact not considering additive noise, so can reduce the ber(bit error of mimo detection Rate, the bit error rate) performance.
Content of the invention
For overcoming the shortcomings of above-mentioned prior art presence, the purpose of the present invention is to provide a kind of mimo detection pretreatment dress Put and method, it considers that while carrying out channel matrix decomposition superimposed noise, to detection performance impact, improves mimo detection Ber performance.
For reaching above and other purpose, the present invention proposes a kind of mimo and detects pretreatment unit, comprising:
Channel transfer matrix h input buffer module, for caching the channel transfer matrix of upper level input;
Mmse-sqrd pretreatment nucleus module, the sequence qr for processing the augmented matrix of channel transfer matrix decomposes, and obtains Upper triangular matrix to after decompose and sequencing information vector;
Upper triangular matrix r cache module, for caching upper three angular moments of this mmse-sqrd pretreatment nucleus module acquisition Battle array;
Sequencing information cache module, the sequence that have recorded for caching the acquisition of this mmse-sqrd pretreatment nucleus module is believed The sequencing information vector of breath;
Unitary matrice q cache module, for buffering the unitary matrice of this mmse-sqrd pretreatment nucleus module generation;
Product computing module, for calculating the associate matrix of this unitary matrice and the product receiving vector;
Product result of calculation vector cache module, for caching the result of calculation of this product computing module.
Further, this mmse-sqrd pretreatment nucleus module includes:
Input matrix and normal form calculating sub module, for caching each column data of current input matrix, make input matrix row Norm initial work, output row Norm minimum rectangular array to first process engine submodule;
Process engine submodule, complete the unitary transformation operation of rectangular array, clearing is executed to the first row of current input matrix The remaining columns of current input matrix are executed rotation process, corresponding specific works pattern is provided by control signal by operation;
Caching and sorting sub-module, the renewal of rectangular array norm, sorting operation during execution matrix decomposition, to realize simultaneously The orthogonal qr of matrix of row sequence decomposes;
Output cache sub-module, arranges the output of flowing water middle the corresponding function module at different levels, by upper three angular moments finally tried to achieve Battle array write this upper triangular matrix r cache module;
Master control submodule, the enable receiving top-level module enables signal and antenna configurations signal, then according to specific Dual-mode antenna number provides the enable signal of processing modules at different levels in streamline.
Further, the calculation criterion of norm adopts l2-norm.
Further, this mmse-sqrd pretreatment nucleus module adopts the streamline side of 8 process engine submodule series connection Formula.
Further, this process engine submodule includes:
Processing unit, receives a pair of operand and completes the clearing to corresponding matrix column element or rotation process, and corresponding have Body running pattern is given by control signal;
Delay cell, the sequential relationship between the different input operand of adjustment coupling;
Unit for scaling, for being multiplied by a ratio system by the operand after givens rotation rotation process Number;
Internal control unit, enables signal with the antenna configurations of device to corresponding place according to what top layer homophony module provided Reason unit provides high level useful signal.
Further, this processing unit includes the three identical cordic units connected, and completes altogether to input operand To 9 rotation process.
Further, the accumulation scaling of the multiple processing units on this unit for scaling single treatment one paths, in order to subtract Few process postpones.
Further, this pretreatment unit support 4 × 4,3 × 4,2 × 4,1 × 4,3 × 3,2 × 3,1 × 3,2 × 2,1 × 2,1 × 10 kinds of antenna modes, the hardware-enabled configuring condition under various antennas is determined by this master control submodule.
For reaching above-mentioned purpose, the present invention also provides a kind of detection of the mimo based on mmse-sqrd algorithm pretreatment side Method, comprises the steps:
Step one, receives the channel transfer matrix from upper level input;
Step 2, the sequence qr that mmse-sqrd pretreatment nucleus module processes the augmented matrix of channel transfer matrix decomposes, Upper triangular matrix after being decomposed and sequencing information vector;
Step 3, the q matrix being produced according to mmse-sqrd pretreatment nucleus module and direction of rotation information, calculate q matrix Associate matrix with receive vector product.
Further, step 2 comprises the steps:
Cache each column data of current input matrix using Input matrix and normal form calculating sub module, do input matrix row Norm initial work, the rectangular array of output row Norm minimum is to first process engine submodule;
Complete the unitary transformation operation of rectangular array using process engine submodule, the first row of current input matrix is executed clearly The remaining columns of current input matrix are executed rotation process, corresponding specific works pattern is provided by control signal by Z-operation;
Using the renewal of rectangular array norm, sorting operation during caching and sorting sub-module execution matrix decomposition, with reality The orthogonal qr of matrix of existing sorting in parallel decomposes;
Arrange the output of flowing water middle the corresponding function module at different levels using output cache sub-module, by the upper triangle finally tried to achieve Matrix writes the upper triangular matrix cache module that rear class caching is after qr decomposes.
Compared with prior art, a kind of mimo detection pretreatment unit based on mmse-sqrd algorithm of the present invention and method Achieve the augmented matrix to the channel transfer matrix that mimo receiving terminal receivesQr decompose, and divide entering row matrix qr Add the operation of sequence during solution, obtain the unitary matrice after qr decomposes and upper triangular matrix, and drawn matrix Sequencing information vector, the upper triangular matrix obtaining and ordering vector can be used for the mimo detection of next stage, and the present invention passes through simultaneously Introduce the sqrd algorithm of mmse, consider superimposed noise to detection performance impact while carrying out channel matrix decomposition.
Brief description
Fig. 1 is the system architecture diagram that a kind of mimo of the present invention detects pretreatment unit;
Fig. 2 is the structural representation of mmse-sqrd pretreatment nucleus module in present pre-ferred embodiments;
Fig. 3 is the structural representation of the preferred embodiment that a kind of mimo of the present invention detects pretreatment unit;
Fig. 4 is the data path schematic diagram of mmse-sqrd pretreatment nucleus module in present pre-ferred embodiments;
Fig. 5 is the control access schematic diagram of mmse-sqrd pretreatment nucleus module in present pre-ferred embodiments;
Fig. 6 is the structural representation processing engine submodule in present pre-ferred embodiments;
The controlled structures of the process engine submodule in the case of n × 3 antenna configurations in Fig. 7 present pre-ferred embodiments are illustrated Figure;
Fig. 8 detects the flow chart of steps of preprocess method for mimo of the present invention.
Specific embodiment
Below by way of specific instantiation and embodiments of the present invention are described with reference to the drawings, those skilled in the art can Understand further advantage and effect of the present invention by content disclosed in the present specification easily.The present invention also can be by other different Instantiation implemented or applied, the every details in this specification also can be based on different viewpoints and application, without departing substantially from Carry out various modification and change under the spirit of the present invention.
Fig. 1 is the system architecture diagram that a kind of mimo of the present invention detects pretreatment unit.As shown in figure 1, the present invention is a kind of Mimo detects pretreatment unit, and it is based on mmse-sqrd algorithm, comprising: channel transfer matrix h input buffer module 20, Mmse-sqrd pretreatment nucleus module 21, upper triangular matrix r cache module 22, sequencing information cache module 23, unitary matrice q are delayed Storing module 24, product computing module 25 and product result of calculation vector cache module 26.
Wherein, channel transfer matrix h input buffer module 20 is used for caching the channel transfer matrix of upper level input, each Clock cycle inputs string, continues 8 cycles;Mmse-sqrd pretreatment nucleus module 21 is used for processing channel transfer matrix The sequence qr of augmented matrix decomposes (q, unitary matrice;R, upper triangular matrix), the upper triangular matrix r after being decomposed and sequencing information Vectorial p;Upper triangular matrix r cache module 22 is used for caching the upper triangular matrix of mmse-sqrd pretreatment nucleus module 21 acquisition R, upper triangular matrix r reusable is in the k-best detection that next stage mimo detects;Sequencing information cache module 23 is used for caching What mmse-sqrd pretreatment nucleus module 21 obtained have recorded the sequencing information vector p of sequencing information, and sequencing information vector p can It is multiplexed in the k-best detection of next stage mimo detection;Unitary matrice q cache module 24 is used for buffering mmse-sqrd pretreatment core The q matrix that core module produces;Product computing module 25 is used for calculating the associate matrix of unitary matrice q and taking advantage of of the vectorial y of reception Long-pending;Product result of calculation vector cache module 26 is used for caching the result of calculation of product computing module 25, and this result of calculation can be answered For in the mmse detection of next stage mimo detection.
Fig. 2 is the structural representation of mmse-sqrd pretreatment nucleus module in present pre-ferred embodiments.As shown in Fig. 2 Mmse-sqrd pretreatment nucleus module 21 includes Input matrix and normal form calculating sub module 210, processes engine submodule 211, delays Deposit and sorting sub-module 212, output cache sub-module 213 and master control submodule 214.
Wherein Input matrix and normal form calculating sub module 210 are used for caching each column data of current input matrix, input The norm initial work of rectangular array, the rectangular array of output row Norm minimum is to first process engine submodule, the meter of norm Calculate accurately and then adopt l2-norm, that is, try to achieve the quadratic sum of current column element;Process the tenth of the twelve Earthly Branches change that engine submodule 211 completes rectangular array Change operation, the first row execution vectoring(of current input matrix reset) operation, that is, utilize givens rotation(lucky Wen Si rotates) algorithm cancellation remaining all column element in addition to the first row, the remaining columns execution to current input matrix Rotation operates, and corresponding specific works pattern is given by control signal;Caching and sorting sub-module 212 execution matrix decomposition During the renewal of rectangular array norm, sorting operation, decomposed with the orthogonal qr of matrix realizing sorting in parallel;Output cache sub-module The output of 213 arrangement flowing water middle the corresponding function module at different levels, the upper triangular matrix finally tried to achieve write rear class caching is that qr divides Upper triangular matrix r cache module after solution;The enable that master control submodule 214 receives top-level module enables signal and antenna configurations Signal, then provides the enable signal of processing modules at different levels in streamline according to specific dual-mode antenna number.
In present pre-ferred embodiments, mmse-sqrd pretreatment nucleus module includes the process engine submodule of 8 series connection Block, each two processes one caching of insertion and sorting sub-module between engine submodule, at the process engine submodule of every one-level The row of reason is different, but line number is all 8, and the quantity of the row of the caching of every one-level and sorting sub-module caching process is successively Successively decrease 1.The first order processes the first row that engine submodule exports upper triangular matrix r, and the second level is processed in the output of engine submodule Second row of triangular matrix, the third level processes the third line that engine submodule exports upper triangular matrix, by that analogy, outputs at different levels Data by exporting the upper triangular matrix r cache module that cache sub-module is collected and exported top-level module.
Process engine submodule and adopt 8 processing units, be calculated the result of rotation by level Four, each processing unit All adopt 3 identical cordic(coordinate rotation digital computer, Coordinate Rotation Digital calculating side Method) unit series connection, carry out the operation of 9 micro- rotations every time, to reach corresponding computational accuracy.Because each processes engine submodule Block needs to process multiple input matrix row, so for the rectangular array of first input, processing engine submodule can be carried out to it Clear operation, at this moment can cache the direction of 9 micro- rotations (micro rotation), to carry out phase to follow-up input matrix row Same rotation process.
It is noted here that the information processing micro- rotation that engine submodule is cached of every one-level can be additionally used in calculating qhY's Value, thus can avoid the substantial amounts of calculating that common matrix multiplication calculating brings.
Process in engine submodule at each and also include delay cell, unit for scaling and internal control unit.Postpone single Sequential relationship between the different input operand of unit's adjustment coupling.Unit for scaling is used for rotate through givens rotation Operand after operation is multiplied by a proportionality coefficient.The enable signal that internal control unit is given according to top layer homophony module with The antenna configurations of device provide high level useful signal to corresponding processing unit.
The renewal of rectangular array norm, sorting operation during caching and sorting sub-module 212 execution matrix decomposition, to realize The orthogonal qr of matrix of sorting in parallel decomposes.The degree of parallelism of overall mmse-sqrd pretreatment unit can be because of caching and row with handling capacity Sequence module embedded and lose.Reason is that the rectangular array exporting extremely next cordic processing module must wait all models Number all update finish and compare obtain minima after just can determine that, and the renewal of rectangular array norm have to wait corresponding Rectangular array is processed after engine submodule has been processed and could be executed by prime.
The present invention willMatrix sort, through qr decomposition, the upper triangular matrix obtaining and unitary matrice, can be multiplexed in next In the module of the employing mmse detection of level or k-best detection algorithm, generate testing result.
Overall output postpones to be about 312 cycles, and the mimo of the present invention detects that the throughput of pretreatment unit is about 4 The individual cycle.Add the pingpang handoff mode of mmse-sqrd pretreatment nucleus module by the way of deep streamline, substantially increase The throughput of device.
Fig. 3 is the structural representation of the preferred embodiment that a kind of mimo of the present invention detects pretreatment unit.Hereinafter will pass through One specific embodiment is further illustrating the present invention.
In present pre-ferred embodiments, the mimo of the present invention detects that the main modular of pretreatment unit includes channel transfer Matrix h input buffer module (h_buffer), mmse-sqrd pretreatment nucleus module, the augmented matrix of channel transfer matrix Sequence qr decompose (sqrd) after upper triangular matrix r cache module (r_buffer),The sequencing information that matrix sort qr decomposes Cache module (order_buffer),Matrix sort qr decompose after q matrix buffer module (q_buffer) of unitary matrice q, The associate matrix of q matrix and the q receiving vectorial yhY product computing module and product result of calculation vector cache module (qhYbuffer).Connected mode between modules is as shown in figure 3, wherein mmse-sqrd pretreatment nucleus module is used for locating The sequence qr of the augmented matrix of reason channel transfer matrix decomposes, the upper triangular matrix r after being decomposed and sequencing information vector p. Channel transfer matrix h input buffer module is used for caching the channel transfer matrix of upper level input, each periodical input string, holds Continuous 8 cycles.And q matrix buffer module is used for buffering the q matrix of mmse-sqrd pretreatment nucleus module generation.Sequencing information Cache module is used for the vector that buffering have recorded sequencing information.The direction of rotation letter that mmse-sqrd pretreatment nucleus module produces Breath is also sent to qhY product computing module, in order to simplify calculating, needs a direction of rotation buffer module here again, produces Product be also required to one output buffer module.
Here, each element input of h matrix and the value of noise criteria difference is recorded using the bit wide of 14bits, with Precision required for meeting.
Fig. 4 is the data path schematic diagram of mmse-sqrd pretreatment nucleus module in present pre-ferred embodiments.Wherein Mmse-sqrd pretreatment nucleus module mainly includes load matrix&norm calculation(Input matrix and normal form meter Calculate) submodule, processing engine(process engine) submodule, buffer&sorting(caching and sort) submodule, Output buffer(output caching) submodule and main controller(master control) submodule.Wherein Input matrix and model Formula calculates (load matrix &norm calculation) submodule and is used for caching each column data of current input matrix, does The norm initial work of input matrix row, the rectangular array of output row Norm minimum is to first process engine submodule.Norm Calculation criterion adopt l2-norn, that is, try to achieve the quadratic sum of current column element.Process engine (processing engine) Module completes the map function of rectangular array, the first row execution vectoring operation to current input matrix, that is, utilize givens Rotation algorithm eliminates remaining all column element in addition to the first row;Remaining columns execution to current input matrix Rotation operates, and corresponding specific works pattern is given by control signal.Caching and sequence (buffer&sorting) submodule During block execution matrix decomposition, the renewal of rectangular array norm, sorting operation, are decomposed with the orthogonal qr of matrix realizing sorting in parallel. Output caching (output buffer) submodule arranges the output of flowing water middle the corresponding function module at different levels, upper by finally try to achieve Triangular matrix writes the upper triangular matrix cache module that rear class caching is after qr decomposes.Master control (main controller) submodule The enable that block receives top-level module enables signal and antenna configurations signal, then provides stream according to specific dual-mode antenna number The enable signal of processing modules at different levels in waterline.
As shown in figure 4, present invention employs 1 Input matrix and normal form calculating (load matrix&norm Calculation) submodule, 8 process engine (processing engine) submodules, 6 cachings and sequence (buffer& Sorting) submodule, 1 output caching (output buffer) submodule.
Fig. 5 is the control access schematic diagram of mmse-sqrd pretreatment nucleus module in present pre-ferred embodiments.As Fig. 5 Shown, according to mmse-sqrd algorithm, Input matrix and normal form calculate (load matrix&norm calculation) submodule Receive the standard deviation sigma of the additive noise from the h_buffer matrix of upper level and input, each clock cycle input matrix String, calculates the value of its normal form, and required normal form is l2-norm.Find out that minimum string of normal form, this needs 8 clock cycle, Then front 8 row of the 1st row and this string are exchanged, the row after the sequence of generation sequentially input the process engine of next stage In (processing engine) submodule.In process engine (processing engine) submodule of the first order, meeting 1st row of the matrix after sequence are zeroed out (vectoring) operation, the 1st~8 row of this column matrix is carried out cordic Operation is so that all values in addition to the first row are 0.After having carried out these operations, the direction of rotation meeting of each micro- rotation It is saved.These direction of rotation have two use: be one, to be used in a pipeline carrying out one to 2~8 row inputting afterwards Rotation (vector rotation) operation of sample, is so equivalent to whole matrix and has carried out an identical rotation process; 2nd, it is that these direction of rotation are used in qhY product computing module, because these rotation process save the information of unitary matrice q, institute Can be used to carry out qhThe calculating of y, the value of these rotation process is buffered in q_buffer module, and q_buffer It is connected to qhOn y product computing module.Ensuing level cache and sorting sub-module process the 2~8 of postrotational matrix and arrange Data, calculates the normal form value of every string, obtains that minimum string of normal form and exchanges front 9 row of the 2nd row and this string, updates model The value of number, then similar to the operation of previous stage, because matrix to be rotated only has 7 row, 2~8 row before the 1st is arranged It is zeroed out (vectoring) operation, ensuing 6 row carry out identical rotation (vector rotation) operation, these behaviour Work is carried out in a pipeline.
Process function description, input/output port and the hardware of engine (processing engine) submodule _ 2~8 The various aspects such as realization all process engine submodule processing engine_1 with the first order described above and such as go out one Rut.Because these processing modules are located at the difference that mmse-sqrd-core detector unit internal pipeline is realized unlike unique Level, is thus located at former augmented matrix (regularized matrix) with the matrix column element that upper module is receivedDifference OK.For example, processing engine_1 processing module receives 1 to 8 row element of pending rectangular array, and Processing engine_2 processing module receives 2 to 9 row elements treating to manage rectangular array in place, processing engine_n Processing module receives n to the n+8 row element of pending rectangular array.
Each is realized etc. by the function description of caching and sorting sub-module 2~6 processing module, input/output port and hardware Aspect is all roughly the same with the caching being discussed in detail above and sorting sub-module 1.Notice caching and sorting sub-module caching (wherein n represents that this caching and order module level are coupled to n-th to be presently in managing the (n+1)th of the matrix data arranging to 8 row After processing engine), update rectangular array norm, subsequently first output row Norm minimum matrix column element under One cordic processing module (processing engine).Each caching and sorting sub-module differ primarily in that caching square Array quantity is different, because it is in the different pipeline stages of overall mmse-sqrd-core.Each processes engine (processing engine) submodule is sequentially generated a line of upper triangular matrix r, is output caching (output buffer) Submodule is collected and is exported, and wherein first process engine (processing engine) submodule exports the first row, other Process engine (processing engine) submodule and be sequentially output remaining row.
Fig. 6 is the structural representation processing engine submodule in present pre-ferred embodiments.As shown in fig. 6, process engine (processing engine) submodule employs 8 pe(processing element) unit, it is divided into 4 grades to carry out, Processing element unit receives a pair of operand and completes the clearing (vectoring) to corresponding matrix column element or rotation Turn operation (vector rotation).There are 3 delay cells (du, delay unit), for the different input operation of adjustment coupling Sequential relationship between number.Scaling (scaling) unit is used for zooming in and out computing.Internal control unit (pg_ctrl unit) It is used for enabling the antenna configurations of signal and device to corresponding processing element according to what top layer homophony module provided Processing unit provides high level useful signal.
The multiplier of every one-level has been focused on afterbody by unit for scaling to be carried out, and so can reduce the number of times of calculating.
qhIn the data path of y multiplication computing module, including 8 process engines (processing engine) submodule With 1 output caching (output buffer) submodule, wherein process the knot of engine (processing engine) submodule Structure is similar to the processing engine submodule in above-mentioned mmse pretreatment nucleus module.Connecing in view of present frame Stably each two clock cycle reaches one to receive data vector y, then in the structure composition of pe internal element cordic cell Upper just can with the form of iterative processing to reduce hardware design complexity.Accordingly, unit for scaling is also with two clock weeks The form of the iteration of phase is made certain hardware and is realized simplifying.Process every in engine (processing engine) submodule One-level all only carries out rotation process (vector rotation), and is not zeroed out (vectoring) operation, because it is all Direction of rotation be all from mmse-sqrd pretreatment nucleus module.
The present invention supports ten kinds of antennas of 4 × 4,3 × 4,2 × 4,1 × 4,3 × 3,2 × 3,1 × 3,2 × 2,1 × 2,1 × 1 grade Pattern.The control of antenna mode is mainly determined by the main control module in mmse-sqrd pretreatment nucleus module, main control module The enable that (main controller) receives top-level module enables signal and antenna configurations signal, is then received according to specific Send out the enable signal that number of antennas provides processing modules at different levels in streamline.For example, when antenna is configured to 4 × n channel radio During T unit, enable signals at different levels are all effective, and mux selector (MUX) gating in data path is derived from prime The data path of buffer&sorting unit;When antenna is configured to 3 × n radio communication device it is contemplated that real number channel Transfer matrix only has 6 row, so processing engine (processing engine) 1,2 and caching and sequence (buffer& Sorting) computing modules such as 1,2 will be idle, and it is invalid that enable signal is set to.Before processing engine (processing engine) 3 MUX gating calculate the matrix of (load matrix&normcalculation) module from Input matrix and normal form Row.Particularly, when using bpsk modulation system, configure for 4 kinds of transmitting antennas, channel matrix columns is respectively 4,3,2,1, Rather than mentioned above 8,6,4,2, the thus enable signal of processing engine at different levels and buffer&sorting module Also need to make corresponding adjustment.
In the case of multiple antenna modes, the construction of corresponding processing engine submodule also can become Change, be illustrated in figure 7 the antenna configurations situation of n × 3, corresponding real number channel transfer matrix only has 6 row, then 8 Processing element processing unit only has 7 pe in running order, and it effectively enables signal by local control module Be given, and the enable home position signal of remaining pe is invalid.Notice for data in rational allocation Vector rotation conversion process simultaneously The sequential of stream, in figure pe(1) only it is operated in bypass pattern, that is, this pe does not do any operation to input, and simply on clock Rise edge input sample to output.
The principle being detected by mimo, the sqr using channel matrix decomposes, the relation between the input of mimo system and output Can be expressed as:WhereinIn this case, optimum transmission signalCan be by following formula Obtain:
s ^ = arg min s ~ &element; ω | | y ~ - q ~ r ~ p t s ~ | | 2 = arg min s ~ &element; ω | | q a h y ~ - r &overbar; p t s ~ | | 2
Wherein ω represents all possible transmitting vector, andWithObtained by the device in the present invention, point Not Wei unitary matrice transposed matrix and receive vector product computing module and upper triangular matrix generation module result.This two Individual matrix can be multiplexed the detection module of employing mmse in next stage or k-best detection algorithm, as shown in Figure 3.
In terms of hardware spending, with regard to unitary matrice q, the memory space=896(number of subcarriers needing altogether) × 64(pe Number) × 14bit=784kbits.
With regard to upper triangular matrix r, the memory space=number of subcarriers × r matrix element quantizing bit number × r square needing altogether Array element prime number=896 × 14 × 36=441kbits.
With regard to the storage of ordering vector p, the memory space=number of subcarriers × p vector element quantizing bit number needing altogether × p element vector prime number=896 × 3 × 8=21kbits.
With regard to vectorial qhY, analysis 80mhz bandwidth, 896 subcarriers, then this buffer write reading speed ratio is about For 5:4, size is about: 896 × (5 4) ÷ 5 × 14 × 8 ≈ 20kbits, i.e. memory space=number of subcarriers × write reads Speed difference × vector qhY Quantification of elements bit number × vector qhY element number.
Fig. 8 is the flow chart of steps that a kind of mimo of the present invention detects preprocess method.As shown in figure 8, the present invention is a kind of Mimo detects preprocess method, comprises the steps:
Step 801, receives the channel transfer matrix from upper level input;
Step 802, the sequence qr that mmse-sqrd pretreatment nucleus module processes the augmented matrix of channel transfer matrix divides Solution, the upper triangular matrix r after being decomposed and sequencing information vector p;
Step 803, the q matrix being produced according to mmse-sqrd pretreatment nucleus module and direction of rotation information, calculate q square The associate matrix of battle array and the product receiving vectorial y;
Specifically, step 802 comprises the steps: again
Cache each column data of current input matrix using Input matrix and normal form calculating sub module, do input matrix row Norm initial work, the rectangular array of output row Norm minimum is to first process engine submodule;
Complete the unitary transformation operation of rectangular array using process engine submodule, the first row execution to current input matrix Vectoring operates, that is, utilize givens rotation algorithm to eliminate remaining all column element in addition to the first row;To work as The remaining columns execution rotation operation of front input matrix, corresponding specific works pattern is given by control signal;
Using the renewal of rectangular array norm, sorting operation during caching and sorting sub-module execution matrix decomposition, with reality The orthogonal qr of matrix of existing sorting in parallel decomposes;
Arrange the output of flowing water middle the corresponding function module at different levels using output cache sub-module, by the upper triangle finally tried to achieve Matrix writes the upper triangular matrix cache module that rear class caching is after qr decomposes.
In sum, a kind of mimo of the present invention detects that pretreatment unit and method achieve and mimo receiving terminal is received The augmented matrix of channel transfer matrixQr decompose, and add the behaviour of sequence entering during row matrix qr is decomposed Make, obtain qr decompose after unitary matrice and upper triangular matrix, and drawn matrix sequencing information vector, the upper triangle obtaining Matrix and ordering vector can be used for the mimo detection of next stage, and the present invention passes through to introduce the sqrd algorithm of mmse simultaneously, is carrying out Consider superimposed noise to detection performance impact while channel matrix decomposition.
Above-described embodiment only principle of the illustrative present invention and its effect, not for the restriction present invention.Any Skilled person all can be modified to above-described embodiment and changed without prejudice under the spirit and the scope of the present invention.Therefore, The scope of the present invention, should be as listed by claims.

Claims (9)

1. a kind of mimo detects pretreatment unit, comprising:
Channel transfer matrix h input buffer module, for caching the channel transfer matrix of upper level input;
Mmse-sqrd pretreatment nucleus module, the sequence qr for processing the augmented matrix of channel transfer matrix decomposes, and is divided Upper triangular matrix after solution and sequencing information vector;
Upper triangular matrix r cache module, for caching the upper triangular matrix of this mmse-sqrd pretreatment nucleus module acquisition;
Sequencing information cache module, have recorded sequencing information for cache the acquisition of this mmse-sqrd pretreatment nucleus module Sequencing information vector;
Unitary matrice q cache module, for buffering the unitary matrice of this mmse-sqrd pretreatment nucleus module generation;
Product computing module, for calculating the associate matrix of this unitary matrice and the product receiving vector;
Product result of calculation vector cache module, for caching the result of calculation of this product computing module;
This mmse-sqrd pretreatment nucleus module includes multiple process engine submodules, and the process engine submodule of every one-level is complete Become the unitary transformation operation of rectangular array, clear operation, the residue to current input matrix are executed to the first row of current input matrix Row execution rotation process, corresponding specific works pattern is given by control signal;
Each two processes one caching of insertion and sorting sub-module between engine submodule, at the process engine submodule of every one-level The row of reason is different, and the quantity of the row of the caching of every one-level and sorting sub-module caching process is successively decreased successively;The caching of every one-level and Sorting sub-module executes the renewal of rectangular array norm, sorting operation during matrix decomposition, with realize sorting in parallel matrix just Qr is handed over to decompose.
2. as claimed in claim 1 a kind of mimo detection pretreatment unit it is characterised in that this mmse-sqrd pretreatment core Core module includes:
Input matrix and normal form calculating sub module, for caching each column data of current input matrix, make the model of input matrix row Number initial work, the rectangular array of output row Norm minimum is to first process engine submodule;
Output cache sub-module, arranges the output of flowing water middle the corresponding function module at different levels, the upper triangular matrix finally tried to achieve is write Enter this upper triangular matrix r cache module;
Master control submodule, receives enable signal and the antenna configurations signal of top-level module, then according to specific dual-mode antenna number Mesh provides the enable signal of processing modules at different levels in streamline.
3. as claimed in claim 2 a kind of mimo detect pretreatment unit it is characterised in that: the calculation criterion of norm adopts l2-norm.
4. as claimed in claim 2 a kind of mimo detection pretreatment unit it is characterised in that: this mmse-sqrd pretreatment core Core module adopts the pipeline system of 8 process engine submodule series connection.
5. as claimed in claim 4 a kind of mimo detection pretreatment unit it is characterised in that this process engine submodule bag Include:
Processing unit, receives a pair of operand and completes the clearing to corresponding matrix column element or rotation process, accordingly concrete work Operation mode is given by control signal;
Delay cell, the sequential relationship between the different input operand of adjustment coupling;
Unit for scaling, for being multiplied by a proportionality coefficient by the operand after rotation process;
Internal control unit, processes list with the antenna configurations of device to corresponding according to the signal that enables that top layer homophony module provides Unit provides high level useful signal.
6. as claimed in claim 5 a kind of mimo detect pretreatment unit it is characterised in that: this processing unit includes connecting Three identical cordic units, complete to input operand pair 9 rotation process altogether.
7. as claimed in claim 5 a kind of mimo detection pretreatment unit it is characterised in that: this unit for scaling single treatment one The accumulation scaling of the multiple processing units on paths, postpones in order to reduce to process.
8. as claimed in claim 2 a kind of mimo detection pretreatment unit it is characterised in that: this pretreatment unit supports 4 × 4,3 × 4,2 × 4,1 × 4,3 × 3,2 × 3,1 × 3,2 × 2,1 × 2,1 × 10 kinds of antenna modes, the hardware under various antennas makes Can configuring condition be determined by this master control submodule.
9. a kind of mimo detects preprocess method, comprises the steps:
Step one, receives the channel transfer matrix from upper level input;
Step 2, the sorting in parallel qr that mmse-sqrd pretreatment nucleus module processes the augmented matrix of channel transfer matrix decomposes, Upper triangular matrix after being decomposed and sequencing information vector;
Step 3, the q matrix being produced according to mmse-sqrd pretreatment nucleus module and direction of rotation information, calculate being total to of q matrix Yoke transposed matrix and the product receiving vector;
Step 2 comprises the steps:
Cache each column data of current input matrix using Input matrix and normal form calculating sub module, do the norm of input matrix row Initial work, the rectangular array of output row Norm minimum is to first process engine submodule;
Complete the unitary transformation operation of rectangular array using process engine submodule, the first row execution to current input matrix resets behaviour Make, rotation process is executed to the remaining columns of current input matrix, corresponding specific works pattern is provided by control signal;
Using the renewal of rectangular array norm, sorting operation during caching and sorting sub-module execution matrix decomposition, to realize simultaneously The orthogonal qr of matrix of row sequence decomposes;
Arrange the output of flowing water middle the corresponding function module at different levels using output cache sub-module, by the upper triangular matrix finally tried to achieve Write rear class caching is the upper triangular matrix cache module after qr decomposes.
CN201310473436.8A 2013-10-11 2013-10-11 MIMO detecting preprocessing device and method Active CN103516643B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310473436.8A CN103516643B (en) 2013-10-11 2013-10-11 MIMO detecting preprocessing device and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310473436.8A CN103516643B (en) 2013-10-11 2013-10-11 MIMO detecting preprocessing device and method

Publications (2)

Publication Number Publication Date
CN103516643A CN103516643A (en) 2014-01-15
CN103516643B true CN103516643B (en) 2017-02-01

Family

ID=49898697

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310473436.8A Active CN103516643B (en) 2013-10-11 2013-10-11 MIMO detecting preprocessing device and method

Country Status (1)

Country Link
CN (1) CN103516643B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104467932B (en) * 2014-12-23 2017-10-31 湖南基石通信技术有限公司 A kind of QR of matrix decomposes implementation method and device
CN105871763A (en) * 2016-05-30 2016-08-17 武汉邮电科学研究院 Channel equalization method and system based on QR decomposition
CN106027242B (en) * 2016-07-08 2018-12-28 东南大学 Become grade quantization method based on the pretreated radio channel characteristic of unitary transformation
CN116318304A (en) * 2016-12-16 2023-06-23 马维尔亚洲私人有限公司 Low complexity beamforming with compressed feedback
CN107222246B (en) * 2017-05-27 2020-06-16 东南大学 Efficient large-scale MIMO detection method and system with approximate MMSE performance
CN108429573B (en) * 2018-03-02 2020-06-05 合肥工业大学 Control method of MMSE detection circuit based on time hiding
CN110784274B (en) * 2019-11-11 2021-07-27 袁正道 Method for determining receiver algorithm for large-scale multiple-input multiple-output
CN113141233B (en) * 2021-03-11 2022-08-26 西安电子科技大学 Channel matrix sequencing QR decomposition processing method and system
CN113225161B (en) * 2021-04-14 2022-09-13 上海微波技术研究所(中国电子科技集团公司第五十研究所) 5G terminal PDCCH MIMO detection accelerator and design method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101674160A (en) * 2009-10-22 2010-03-17 复旦大学 Signal detection method and device for multiple-input-multiple-output wireless communication system
CN101795180A (en) * 2010-01-28 2010-08-04 北京邮电大学 MIMO detection pretreatment method with optimal sequencing feature and device
CN101902310A (en) * 2010-08-20 2010-12-01 北京天碁科技有限公司 Method and device for realizing sphere decoding of multi-input multi-output antenna system
CN102111243A (en) * 2011-03-16 2011-06-29 北京邮电大学 Sphere-decoding detection method with fixed complexity

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101329012B1 (en) * 2007-10-11 2013-11-12 삼성전자주식회사 A multiple input multiple output receiver and method for detecting signal thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101674160A (en) * 2009-10-22 2010-03-17 复旦大学 Signal detection method and device for multiple-input-multiple-output wireless communication system
CN101795180A (en) * 2010-01-28 2010-08-04 北京邮电大学 MIMO detection pretreatment method with optimal sequencing feature and device
CN101902310A (en) * 2010-08-20 2010-12-01 北京天碁科技有限公司 Method and device for realizing sphere decoding of multi-input multi-output antenna system
CN102111243A (en) * 2011-03-16 2011-06-29 北京邮电大学 Sphere-decoding detection method with fixed complexity

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MIMO系统中信号检测技术的研究;史开新;《中国优秀硕士学位论文全文数据库 信息科技辑(2009年)》;20090115(第01期);正文第3.4-3.4.4节 *

Also Published As

Publication number Publication date
CN103516643A (en) 2014-01-15

Similar Documents

Publication Publication Date Title
CN103516643B (en) MIMO detecting preprocessing device and method
Karkooti et al. FPGA implementation of matrix inversion using QRD-RLS algorithm
CN110222307B (en) Parallel implementation method for eigenvalue decomposition of real symmetric matrix based on FPGA
CN105049097B (en) Extensive MIMO linearity tests hardware architecture and detection method under non-ideal communication channel
KR20090078790A (en) Software implementation of matrix inversion in a wireless communication system
Bruderer et al. VLSI implementation of a low-complexity LLL lattice reduction algorithm for MIMO detection
CN105915477A (en) Large-scale MIMO detection method based on GS method, and hardware configuration
Soni et al. Low-complexity data reusing methods in adaptive filtering
Yin et al. Deep CSI compression for massive MIMO: A self-information model-driven neural network
CN106330276A (en) Large-scale MIMO linear detection method and device based on SOR algorithm
Guenther et al. A scalable, multimode SVD precoding ASIC based on the cyclic Jacobi method
Bello et al. VLSI implementation of a fully-pipelined K-best MIMO detector with successive interference cancellation
Chen et al. Viewing channel as sequence rather than image: A 2-D Seq2Seq approach for efficient MIMO-OFDM CSI feedback
CN108736935A (en) A kind of general down and out options method for extensive mimo system signal detection
Xu et al. DFECsiNet: Exploiting diverse channel features for massive MIMO CSI feedback
CN114745233A (en) Joint channel estimation method based on pilot frequency design
Studer et al. Matrix decomposition architecture for MIMO systems: Design and implementation trade-offs
CN107222246B (en) Efficient large-scale MIMO detection method and system with approximate MMSE performance
Wang et al. CCA-Net: A Lightweight Network Using Criss-Cross Attention for CSI Feedback
Hwang et al. A low complexity geometric mean decomposition computing scheme and its high throughput VLSI implementation
Liu et al. Hardware architecture based on parallel tiled QRD algorithm for future MIMO systems
Edman Digital hardware aspects of multiantenna algorithms
Zhang et al. Efficient pre-conditioned descent search detector for massive MU-MIMO
Wang et al. Systolic arrays for lattice-reduction-aided MIMO detection
Chen et al. Hardware efficient massive MIMO detector based on the Monte Carlo tree search method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant