A multi-frame synchronization method for a Time Division Synchronous Code Division Multiple Access, TD-SCDMA, system comprising: for each received sub-frame, a receiver determining a probability that the received sub-frame is a respective sub-frame of sub-frames in a multi-frame, and determining, after N sub-frames are received, that a state of the currently received sub-frame is the state of the sub-frame with the maximum probability, characterised in that the state of each received sub-frame is one of the following 8 sub-frames: St1, St2, St3, St4, St5, St6, St7 and St8, wherein St1, St2, St3 and St4 are sub-frames in a multi-frame S1, and St5, St6, St7 and St8 are sub-frames in a multi-frame S2, wherein S1 and S2 are downlink synchronization code, SYNC-DL, sequences; defining 8 path metrics, PM, PM,... PM, the PM(i) representing the probability that the received sub-frame is a sub-frame Sti, and clearing PM to PM before the multi-frame synchronization; and for each received sub-frame, the step of the receiver determining the probability that the received sub-frame is the respective sub-frame of the sub-frames in the multi-frame comprises: whenever the receiver receives a sub-frame, first determining phase offsets between a phase of the sub-frame and 4 possible phases, which are denoted as BM, BM, BM and BM respectively, and then calculating a probability that the sub-frame is the respective sub-frame of the 8 sub-frames based on each BM value; wherein BM = CorrC*exp(j*(0+1/2) *pi/2), and BM reflects an offset between the phase of the received sub-frame and 45 0; BM = CorrC*exp(j*(1+1/2) *pi/2), and BM reflects an offset between the phase of the received sub-frame and 135 0; BM = CorrC*exp(j*(2+1/2) *pi/2), and BM reflects an offset between the phase of the received sub-frame and 225 0; and BM = CorrC*exp(j*(3+1/2) *pi/2), and BM reflects an offset between the phase of the received sub-frame and 315 0, wherein the probability that the sub-frame is the respective sub-frame of the 8 sub-frames is calculated based on each BM value in the following way: PM =PM + BM, PM =PM + BM, PM =PM + BM; PM =PM + BM, PM =PM + BM, PM = PM + BM; for PM, if abs(PM +BM)≥abs(PM +BM), then PM = PM + BM; if abs(PM +BM)<abs(PM +BM), then PM = PM + BM; for PM, if abs(PM +BM)≥abs(PM +BM), then PM = PM + BM; if abs(PM +BM)<abs(PM +BM), then PM = PM + BM; and abs represents modulus calculation for a complex number, wherein N≥6. for each received sub-frame, a receiver determining a probability that the received sub-frame is a respective sub-frame of sub-frames in a multi-frame, and determining, after N sub-frames are received, that a state of the currently received sub-frame is the state of the sub-frame with the maximum probability, characterised in that the state of each received sub-frame is one of the following 8 sub-frames: St1, St2, St3, St4, St5, St6, St7 and St8, wherein St1, St2, St3 and St4 are sub-frames in a multi-frame S1, and St5, St6, St7 and St8 are sub-frames in a multi-frame S2, wherein S1 and S2 are downlink synchronization code, SYNC-DL, sequences; defining 8 path metrics, PM, PM,... PM, the PM(i) representing the probability that the received sub-frame is a sub-frame Sti, and clearing PM to PM before the multi-frame synchronization; and for each received sub-frame, the step of the receiver determining the probability that the received sub-frame is the respective sub-frame of the sub-frames in the multi-frame comprises: whenever the receiver receives a sub-frame, first determining phase offsets between a phase of the sub-frame and 4 possible phases, which are denoted as BM, BM, BM and BM respectively, and then calculating a probability that the sub-frame is the respective sub-frame of the 8 sub-frames based on each BM value; wherein BM = CorrC*exp(j*(0+1/2) *pi/2), and BM reflects an offset between the phase of the received sub-frame and 45 0; BM = CorrC*exp(j*(1+1/2) *pi/2), and BM reflects an offset between the phase of the received sub-frame and 135 0; BM = CorrC*exp(j*(2+1/2) *pi/2), and BM reflects an offset between the phase of the received sub-frame and 225 0; and BM = CorrC*exp(j*(3+1/2) *pi/2), and BM reflects an offset between the phase of the received sub-frame and 315 0, PM =PM + BM, PM =PM + BM, PM =PM + BM; PM =PM + BM, PM =PM + BM, PM = PM + BM; for PM, if abs(PM +BM)≥abs(PM +BM), then PM = PM + BM; if abs(PM +BM)<abs(PM +BM), then PM = PM + BM; for PM, if abs(PM +BM)≥abs(PM +BM), then PM = PM + BM; if abs(PM +BM)<abs(PM +BM), then PM = PM + BM; and abs represents modulus calculation for a complex number, wherein N≥6.