CN1960234A - 解交织器及多重载波通信*** - Google Patents
解交织器及多重载波通信*** Download PDFInfo
- Publication number
- CN1960234A CN1960234A CNA2006101427851A CN200610142785A CN1960234A CN 1960234 A CN1960234 A CN 1960234A CN A2006101427851 A CNA2006101427851 A CN A2006101427851A CN 200610142785 A CN200610142785 A CN 200610142785A CN 1960234 A CN1960234 A CN 1960234A
- Authority
- CN
- China
- Prior art keywords
- lsb
- msb
- memory block
- opadd
- mod
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0071—Use of interleaving
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0059—Convolutional codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/26—Systems using multi-frequency codes
- H04L27/2601—Multicarrier modulation systems
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明提供用以译码的一种解交织器,包括两个存储区块、一解交织编码器以及一解交织译码器。解交织编码器接收多个解交织数据数值,并根据调变模式以及第一计数值以产生适用于第一与第二存储区块的输入地址。解交织编码器根据输入地址将所述解交织数据数值写入第一或第二存储区块。解交织译码器根据第二计数值、调变模式、编码率、虚设***指针以产生第一与第二输出地址,并分别根据第一与第二输出地址分别自第一与第二存储区块读取所述解交织数据数值,并根据相关的输出指针自己读取的数据中撷取出多个决策矩阵。
Description
技术领域
本发明涉及一种通信***,特别涉及一种使用解交织程序的通信***与方法。
背景技术
随着手机、移动无线装置以及其它无线传输服务快速成长,如何提供可靠、安全以及有效率的无线通讯一直都是令市场备感兴趣的。正交分频多任务(Orthogonal Frequency Division Multiplexing,OFDM)技术是现有技术中,可用以处理在无线通信环境中对信道信号造成严重损伤时的一种非常有效的传输方案。OFDM可以被利用在无线局域网络(wireless local areanetwork,WLAN)应用当中,如位于5GHz频段的IEEE 802.11a标准。在2003年的六月,IEEE协会发布了另一种WLAN标准,也就是IEEE 802.11g。IEEE802.11g标准也是采用OFDM技术作为控制,用以延伸位于2.4GHz频段的IEEE802.11b标准的更高速的实体层。与其它相似的调变方式比较,OFDM的最为人知的优点与应用就是在于多重载波(multi-carrier)技术,而这也被应用在新的无线标准上。尽管多重载波调变技术被广泛的应用在不同的标准上而会有不同,但基本概念都是利用多个子载波(multiple subcarrier)去传送数据,而这也就是所有多重载波调变技术的基础。
多重载波通信***也受到连续的错误位的影响。因此通常会利用解交织技术来克服通信***中有关联的信道噪声,如突发的错误或是信号减弱。解交织器可以用以分散一数据流中相邻的数据位并分配至一传输列,如此一来原本在数据流中相邻的数据位在传输列中皆不再相邻。在接收信号的后段,交织数据会根据先前的处理,通过一解交织器重新排列所有的数据位成为原来的顺序。交织数据在进行解交织程序之后,被引入到传输频道的有关联的信道噪声,则大多仅单独出现在接收端,因此只需要更好的错误修正机制就可以消除有关联的信道噪声。交织器与解交织器在下面几篇专利中都已经被广泛的讨论过,如美国专利号6,634,009与6,748,561。而在面对设计多重载波通信***时所遇到的最大的挑战则是设计出更有效率,更经济的交织器与解交织器。
发明内容
因此,本发明的主要目的在于提供关于解交织的方法与***,以克服和改善上述现有技术的问题。
本发明提供了一种解交织器,其中包含:多个第一存储区块与第二存储区块,被设定以行方向储存数据并以列方向输出数据;
一解交织编码器,接收多个解交织数据数值,并根据一调变模式以及一第一计数值以产生适用于所述第一存储区块与第二存储区块的一输入地址,所述解交织编码器根据所述输入地址以行方向循序地将所述解交织数据数值写入所述第一存储区块或第二存储区块;
所述解交织编码器更针对所述第一存储区块与第二存储区块分别产生多个第一写入使能信号以及第二写入使能信号。
其中包括如下情况:
当所述调变模式为BPSK调变模式时,所述解交织编码器以下列虚拟程序代码产生所述输入地址、所述第一与第二写入使能信号:
for i=0,1,2,...,NCBPS-1
WAMSB←i mod 3
WALSB←i/6
W_ADDR←{WAMSB,WALSB}
WE0#←(i/3)mod 2
WE1#←~((i/3)mod 2)
其中
i表示所述第一计数值;
WAMSB与WALSB被串联为W_ADDR,用以产生适用于所述第一存储区块与第二存储区块的所述输入地址;
WE0#表示所述第一写入使能信号;
WE1#表示所述第二写入使能信号;以及
NCBPS为一预定数值。
还包括以下情况:
当所述调变模式为QPSK调变模式时,所述解交织编码器以下列虚拟程序代码产生所述输入地址、所述第一与第二写入使能信号:
for i=0,1,2,...,NCBPS-1
WAMSB←i mod 6
WALSB←i/12
W_ADDR←{WAMSB,WALSB}
WE0#←(i/6)mod 2
WE1#←~((i/6)mod 2)
其中
i表示所述第一计数值;
WAMSB与WALSB被串联为W_ADDR,用以产生适用于所述第一存储区块与第二存储区块的所述输入地址;
WE0#表示所述第一写入使能信号;
WE1#表示所述第二写入使能信号;以及
NCBPS为一预定数值。
所述解交织编码器更产生一反向指针,且如果有必要的话会根据所述反向指针预先排列所述解交织数据数值中的多个位的顺序。
还包括以下情况:
当所述调变模式为16-QAM调变模式时,所述解交织编码器以下列虚拟程序代码产生所述输入地址、所述第一与第二写入使能信号:
for i=0,1,2,...,(NCBPS/2)-1
WAMSB←i mod 6
WALSB←i/12
W_ADDR←{WAMSB,WALSB}
REV←(i/6)mod 2
WE0#←(i/6)mod 2
WE1#←~((i/6)mod 2)
其中
i表示所述第一计数值;
WAMSB与WALSB被串联为W_ADDR,用以产生适用于所述第一存储区块与第二存储区块的所述输入地址;
REV表示所述反向指针;
WE0#表示所述第一写入使能信号;
WE1#表示所述第二写入使能信号;以及
NCBPS为一预定数值。
还包括以下情况:
当所述调变模式为64-QAM调变模式时,所述解交织编码器以下列虚拟程序代码产生所述输入地址、所述第一与第二写入使能信号:
for i=0,1,2,...,(NCBPS/3)-1
WAMSB←i mod 6
WALSB←i/12
W_ADDR←{WAMSB,WALSB}
REV←(i/6)mod 3
WE0#←(i/6)mod 2
WE1#←~((i/6)mod 2)
其中
i表示所述第一计数值;
WALSB与WAMSB被串联为W_ADDR,用以产生适用于所述第一存储区块与第二存储区块的所述输入地址;
REV表示所述反向指针;
WE0#表示所述第一写入使能信号;
WE1#表示所述第二写入使能信号;以及
NCBPS为一预定数值。
其中所述解交织编码器更针对所述第一存储区块与第二存储区块分别产生多个第一输出使能信号与多个第二输出使能信号。
一解交织译码器,根据一第二计数值、所述调变模式、一编码率、一虚设***指针以产生适用于所述第一存储区块的一第一输出地址以及适用于第二存储区块的一第二输出地址,并分别根据所述第一输出地址与第二输出地址以列方向自所述第一存储区块与第二存储区块读取所述解交织数据数值,并根据一第一输出指针与一第二输出指针,自由所述第一存储区块与第二存储区块中读出的所述解交织数据数值中撷取出多个决策矩阵。
包括以下情况:
当所述调变模式为BPSK调变模式且编码率为1/2时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
RAMSB←n/8
RA0LSB←n mod 8
RA1LSB←n mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
其中
n表示所述第二计数值;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
还包括以下情况:
当所述调变模式为BPSK调变模式且编码率为3/4时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/12
RA0LSB←(n×2/3)mod 8
RA1LSB←(n×2/3)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=01)
RAMSB←n/12
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=10)
RAMSB←n/12
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
还包括以下情况:
当所述调变模式为QPSK调变模式且编码率为1/2时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
RAMSB←n/8
RA0LSB←n mod 8
RA1LSB←n mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
n表示所述第二计数值;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
还包括以下情况:
当所述调变模式为QPSK调变模式且编码率为3/4时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/12
RA0LSB←(n×2/3)mod 8
RA1LSB←(n×2/3)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=01)
RAMSB←n/12
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=10)
RAMSB←n/12
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
还包括以下情况:
当所述调变模式为16-QAM调变模式且编码率为1/2时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
RAMSB←n/16
RA0LSB←n mod 8
RA1LSB←n mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
其中
n表示所述第二计数值;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
还包括以下情况:
当所述调变模式为16-QAM调变模式且编码率为3/4时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/24
RA0LSB←(n×2/3)mod 8
RA1LSB←(n×2/3)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←O
else if(DII=01)
RAMSB←n/24
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=10)
RAMSB←n/24
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
还包括以下情况:
当所述调变模式为64-QAM调变模式且编码率为2/3时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/32
RA0LSB←(n×3/4)mod 8
RA1LSB←(n×3/4)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=01)
RAMSB←n/32
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=11)
RAMSB←n/32
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=10)
RAMSB←n/32
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
还包括以下情况:
当所述调变模式为64-QAM调变模式且编码率为3/4时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/36
RA0LSB←(n×2/3)mod 8
RA1LSB←(n×2/3)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=01)
RAMSB←n/36
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=10)
RAMSB←n/36
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
另有一种多重载波通信***,包含一解交织器用以译码数据,所述解交织器包括:
多个第一存储区块与第二存储区块,被设定以行方向储存数据并以列方向输出数据;
一解交织编码器,接收多个解交织数据数值,并根据一调变模式以及一第一计数值以产生适用于所述第一存储区块与第二存储区块的一输入地址,所述解交织编码器根据所述输入地址以行方向循序地将所述解交织数据数值写入所述第一存储区块或第二存储区块;
一解交织译码器根据一第二计数值、所述调变模式、一编码率、一虚设***指针以产生适用于所述第一存储区块的一第一输出地址以及适用于所述第二存储区块的一第二输出地址,并分别根据所述第一输出地址与第二输出地址以列方向自所述第一存储区块与第二存储区块读取所述解交织数据数值,并根据一第一输出指针与一第二输出指针,自由所述第一存储区块与第二存储区块中读出的所述解交织数据数值中撷取出多个决策矩阵。
综上所述,本发明通过设计出更有效率,更经济的交织器与解交织器,来使该多重载波通信***具有更好的错误修正机制和消除有关信道噪声能力的优点。
附图说明
图1为一多重载波通信***的一实施例的方块图;
图2为一8×3的存储器的方块图,其中存储器内以行方向储存数据D1~D24;
图3为图1中多重载波通信***内解交织编码器中相关信号的波形示意图;
图4为图1中多重载波通信***内解交织译码器中相关信号的波形示意图。
主要组件符号说明:
解交织编码器~110;存储区块~120a、120b;解交织译码器~130。
具体实施方式
以下结合附图对本发明进行详细说明。
为了使正交分频多任务(Orthogonal Frequency Division Multiplexing,OFDM)技术更为完整,IEEE 802.11a/g标准也提供了支持多种调变技术及相关的编码。举例来说,IEEE 802.11a/g标准允许设计者以回旋(convolution)编码率1/2将BPSK、QPSK以及16-QAM结合,以产生6、12与24Mbps的三种数据速率。IEEE 802.11a/g标准更利用回旋编码率2/3与3/4与64-QAM结合,以提供54Mbps数据速率的选择。编码率可通过穿插器将编码率1/2增加为编码率2/3与3/4。穿插程序(puncturing)为一种位消去程序,用以略去发送器中的一些已编码的位,因此可以减少传送位的数目且可以得到更高的数据速率。在进行完穿插程序后,执行一交织存取程序(interleaving)以确保已编码的相邻的多个位能之间因***其它多个位而被分开。在IEEE 802.11a/g标准中,所有的数据位必需通过一区块交织器(block interleaver)进行交织,其中区块的大小需符合单一OFDM符号(symbol)NCBPS中的位数目。该交织器的动作包含了两种数列的排列(permutation)。第一个排列方式是确保已编码的相邻的多个位被映像(mapped)到非相邻的子载波(subcarrier)。第二个排列方式是确保已编码的相邻的多个位被交织地映像最低有效位(least significant bit,LSB)与最高有效位(most significant bit,MSB),因此长串的低可靠度的位(LSB)可以被避免。在IEEE 802.11a/g标准中,第一个排列方式被定义为:
i=(NCBPS/16)(k mod 16)+floor(k/16),k=0,1,...,NCBPS-1
其中k为已编码的位的指针,i表示经过第一个排列方式的该指针,floor(.)为一个方程式,用以传回不超过括号内参数的最大整数,而mod表示表示模算术(modular arithmetic)。而第二个排列方式可被定义为:
j=s×floor(i/s)+(i+NCBPS-floor(16×i/NCBPS))mods,k=0,1,...,NCBPS-1
其中j表示经过第二个排列方式的该指针。而s的值可由下列方程式求得:
s=max(NBPSC/2,1)
其中NBPSC为每一子载波中已编码的位数目。已编码且已交织的二进制串行数据接着被区分为复数群的NBPSC位,且被转换为多个复数,以表示BPSK、QPSK、16-QAM或64-QAM信号群(constellation)的多个点。表一为IEEE802.11a标准中,各调变的参数的总结。
表一
数据速率(Mbits/s) | 调变模式 | 编码率(R) | 每一子载波中已编码位数目(NBPSC) | 每一OFDM符号中已编码的位数目(NCBPS) | 每一子载波中数据位数目(NDBPS) |
69121824364854 | BPSKBPSKQPSKQPSK16-QAM16-QAM64-QAM64-QAM | 1/23/41/23/41/23/42/33/4 | 11224466 | 48489696192192288288 | 2436487296144192216 |
一般来说,一个符合802.11a规范的接收器会执行传输的反向运算。被已相移键控(phase shift keying,PSK)格式或正交调幅(quadratureamplitude modulation,QAM)格式调变后的输入数据可被解映像成为已知的决策矩阵的多个二进制值,且在进入一维特比(Viteribi)译码器前易于解交织。当一个决策矩阵被量化成1个位的准确度时,该决策矩阵被视为硬性决策(hard-decision)。当一个决策矩阵被量化成大于1个位的准确度时,该决策矩阵被视为软性决策(soft-decision)。请参考图1。图1为符合802.11a规范的***10中关于用作数据译码的解交织器100的一实施例的方块图。如图所述,解交织器100包括解交织编码器110、存储区块120a与120b以及解交织译码器130。存储区块120a与120b被设定以行方向储存数据并以列方向输出数据。举例来说,如图2所示,连续的数据D1~D24被以行方向依序存入一8×3的存储器200中。当存储器200中的数据被以列方向循序地由第一列、第二列以及第三列中被读出,则读出数据的排列为:D1,D4,D7,D10,D13,D16,D19,D22,D2,D5,D8,D11,D14,D17,D20,D23,D3,D6,D9,D12,D15,D18,D21,D24。存储区块120a与120b具有足够的容量去容纳被任何形成调变后的OFDM符号。在一实施例中,每一个存储区块包括两个存储页(page),因此当其中一存储页输出一OFDM符号时,另一存储页可储存另一OFDM符号。
解交织编码器110接收一串流交织数据值DQ[14:0],用以表示由一解映像模块(图上未汇出)的决策矩阵。此外,一辅助信号MODE也被提供用以告知该解交织译码器110需使用何种调变模式。解交织编码器110根据调变模式以及一计数值i为存储区块120a与120b产生一输入地址W_ADDR[6:0]。一周期基础(cycle-based)计数器可能会被内建在解交织编码器110内,用以产生由0到(NCBPS/s)-1的计数值i,其中s可由下列表示式与NCBPS共同决定:s=max(NBPSC/2,1)。在一兼容于802.11a***中,s值对应BPSK、QPSK、16-QAM以及64-QAM为1、1、2以及3。除了输入地址W_ADDR[6:0]之外,解交织编码器110必须分别产生写入使能信号WE0#与WE1#,用以控制存储区块120a与120b。#表示信号名称的结尾,在此是表示信号的主动状态是发生在信号位于一逻辑低准位时。根据本发明的解交织译码器110的一实施例,输入地址W_ADDR[6:0]以及写入使能信号WE0#与WE1#,由下列虚拟程序代码(pseudo-code)产生:
MODE=BPSK |
fori=0,1,2,...,(NCBPS/s)-1WAMSB←i mod 3WALSB←i/6W_ADDR←{WAMSB,WALSB}WE0#←(i/3)mod 2WE1#←~((i/3)mod 2) |
MODE=QPSK |
for i=0,1,2,...,(NCBPS/s)-1WAMSB←i mod 6WALSB←i/12W_ADDR←{WAMSB,WALSB}WE0#←(i/6)mod 2WE1#←~((i/6)mod 2) |
MODE=16-QAM |
for i=0,1,2,...,(NCBPS/s)-1WAMSB←i mod 6WALSB←i/12W_ADDR←{WAMSB,WALSB}REV←(i/6)mod 2WE0#←(i/6)mod 2WE1#←~((i/6)mod 2) |
MODE=64-QAM |
for i=0,1,2,...,(NCBPS/s)-1WAMSB←i mod 6WALSB←i/12W_ADDR←{WAMSB,WALSB}REV←(i/6)mod 3WE0#←(i/6)mod 2WE1#←~((i/6)mod 2) |
如上所述,WAMSB[6:3]与WALSB[2:0]被串联为W_ADDR[6:0],用以宣告为存储区块120a与120b的输入地址。因此所述交织数据值不是根据输入地址W_ADDR[6:0]被写入存储区块120a就是被写入存储区块120b。解交织编码器110在正交振幅调变(quadrature amplitude modulation,QAM)时更产生一反转指针REV,且如果有必要的话可以先根据反转指针REV事先将多个交织数据值重新排列。在这样的考虑下,被写入存储区块的交织数据值的位实际排列的顺序由下列规则决定:
MODE=16-QAM |
if(REV=0)W_DATA[14:0]←DQ[14:0]else if(REV=1)W_DATA[14:0]←{DQ[14:10],DQ[4:0],DQ[9:5]} |
MODE=64-QAM |
if(REV=0)W_DATA[14:0]←DQ[14:0]else if(REV=1)W_DATA[14:0]←{DQ[9:5],DQ[4:0],DQ[14:10]}else if(REV=2)W_DATA[14:0]←{DQ[4:10],DQ[14:0],DQ[9:5]} |
而为了帮助说明解交织编码器110,请参考图3。图3为解交织编码器中相关信号的波形图,其中信号MODE表示64-QAM调变。
解交织器100可能***虚设(dummy)数据至随后的维特比译码器(图上未绘出)中,用以代替在传输端中多个穿插的位。特别来说,当解交织译码器130要自存储区块中读出决策矩阵时,解交织译码器130会考虑采用虚设***(dummy insertion)。因此解交织译码器130根据计数值n、调变模式、编码率以及一虚设***指针(缩写为DII),产生适用于存储区块120a的输出地址R_ADDR0[6:0]以及适用于存储区块120b的输出地址R_ADDR1[6:0]。此外,解交织译码器130必需分别针对存储区块120a与存储区块120b产生输出使能信号OE0#与OE1#。在解交织译码器130的一实施例中,存储区块120a的输出地址和输出使能信号以及存储区块120b的输出地址和输出使能信号由下列虚拟程序代码产生:
MODE=BPSK and RATE=1/2 |
for n=0,1,2,...,NDBPS-1if(DII=00)RAMSB←n/8RA0LSB←n mod 8RA1LSB←n mod 8R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←0 |
MODE=BPSK and RATE=3/4 |
for n=0,1,2,...,NDBPS-1if(DII=00)RAMSB←n/12RA0LSB←(n×2/3)mod 8RA1LSB←(n×2/3)mod 8R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←0else if(DII=01)RAMSB←n/12 |
RA0LSB←RA0LSB+1RA1LSB←RA1LSBR_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←1else if(DII=10)RAMSB←n/12RA0LSB←RA0LSBRA1LSB←RA1LSB+1R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←1OE1#←0 |
MODE=QPSK and RATE=1/2 |
for n=0,1,2,...,NDBPS-1if(DII=00)RAMSB←n/8RA0LSB←n mod 8RA1LSB←n mod 8R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←0 |
MODE=QPSK and RATE=3/4 |
for n=0,1,2,...,NDBPS-1 |
if(DII=00)RAMSB←n/12RA0LSB←(n×2/3)mod 8RA1LSB←(n×2/3)mod 8R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←0else if(DII=01)RAMSB←n/12RA0LSB←RA0LSB+1RA1LSB←RA1LSBR_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←1else if(DII=10)RAMSB←n/12RA0LSB←RA0LSBRA1LSB←RA1LSB+1R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←1OE1#←0 |
MODE=16-QAM and RATE=1/2 |
for n=0,1,2,...,NDBPS-1 |
if(DII=00)RAMSB←n/16RA0LSB←n mod 8RA1LSB←n mod 8R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←0 |
MODE=16-QAM and RATE=3/4 |
for n=0,1,2,...,NDBPS-1if(DII=00)RAMSB←n/24RA0LSB←(n×2/3)mod 8RA1LSB←(n×2/3)mod 8R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←0else if(DII=01)RAMSB←n/24RA0LSB←RA0LSB+1RA1LSB←RA1LSBR_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←1 |
else if(DII=10)RAMSB←n/24RA0LSB←RA0LSBRA1LSB←RA1LSB+1R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←1OE1#←0 |
MODE=64-QAM and RATE=2/3 |
for n=0,1,2,...,NDBPS-1if(DII=00)RAMSB←n/32RA0LSB←(n×3/4)mod 8RA1LSB←(n×3/4)mod 8R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←0else if(DII=01)RAMSB←n/32RA0LSB ←RA0LSB+1RA1LSB←RA1LSBR_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←1 |
else if(DII=11)RAMSB←n/32RA0LSB←RA0LSB+1RA1LSB←RA1LSB+1R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←0else if(DII=10)RAMSB←n/32RA0LSB←RA0LSBRA1LSB←RA1LSB+1R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←1OE1#←0 |
MODE=16-QAM and RATE=3/4 |
for n=0,1,2,...,NDBPS-1if(DII=00)RAMSB←n/36RA0LSB←(n×2/3)mod 8RA1LSB←(n×2/3)mod 8R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←0 |
else if(DII=01)RAMSB←n/36RA0LSB←RA0LSB+1RA1LSB←RA1LSBR_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←0OE1#←1else if(DII=10)RAMSB←n/36RA0LSB←RA0LSBRA1LSB←RA1LSB+1R_ADDR0←{RAMSB,RA0LSB}R_ADDR1←{RAMSB,RA1LSB}OE0#←1OE1#←0 |
如上所述,RAMSB[6:3]与RA0LSB[2:0]被串联为R_ADDR0[6:0],用以宣告为存储区块120a的输出地址。同理,RAMSB[6:3]与RA1LSB[2:0]被串联为R_ADDR1[6:0],用以宣告为存储区块120b的输出地址。周期基础计数器可能会被内建在解交织译码器130内,用以产生由0到NDBPS-1的计数值n。根据R_ADDR0[6:0]、R_ADDR1[6:0]、OE0#以及OE1#,存储区块120a与120b输出寻址后的多个数据值并放置于R_DATA0[14:0]与R_DATA1[14:0]内,使得解交织译码器130能以列方向循序地自存储区块120a与120b中读取交织数据值。通过这样的方式,具有NCBPS个交织数据数据流可以在NDBPS个周期,能够以原来的排列方式再次被储存。
此外还有两个辅助信号SEL0与SEL1被应用在解交织译码器130。辅助信号SEL0与SEL1为输出指针,用以表示读出数据的哪一部分是最后输出,可以用下列表示:
case(SELx)
0:SDx[4:0]←R_DATAx[4:0]
1:SDx[4:0]←R_DATAx9:5]
2:SDx[4:0]←R_DATAx14:10]
其中x为0或1。输出指针SELx可能是一模算(modulo-s)计数器,其中s由下列表示式决定:
s=max(NBPSC/2,1)
每8个读取动作都会使得输出指针SELx增加1。通过输出指针SEL0与SEL1,解交织译码器130可以从由存储区块120a与120b中读取的交织数据内撷取所需要的部分。而为了帮助说明解交织译码器130,请参考图4。图4为解交织译码器中相关信号的波形图,其中信号MODE表示64-QAM调变,编码率为2/3。
在前文中介绍了适用于OFDM通信***的解交织器100的一个实施例,但并非将本发明的解交织器局限于OFDM通信***。前述的实施例也参考符合IEEE802.11a/g标准的通信***来做说明。然而,通信***并非一定是无线,而且IEEE802.11a通信***仅是用以说明多重载波通信的一个例子。
以上具体实施方式仅用于说明本发明,而非用于限定本发明。
Claims (17)
1.一种解交织器,其特征在于,至少包含:
多个第一存储区块与第二存储区块,被设定以行方向储存数据并以列方向输出数据;
一解交织编码器,接收多个解交织数据数值,并根据一调变模式以及一第一计数值以产生适用于所述第一存储区块与第二存储区块的一输入地址,所述解交织编码器根据所述输入地址以行方向循序地将所述解交织数据数值写入所述第一存储区块或第二存储区块;
一解交织译码器,根据一第二计数值、所述调变模式、一编码率、一虚设***指针以产生适用于所述第一存储区块的一第一输出地址以及适用于第二存储区块的一第二输出地址,并分别根据所述第一输出地址与第二输出地址以列方向自所述第一存储区块与第二存储区块读取所述解交织数据数值,并根据一第一输出指针与一第二输出指针,自由所述第一存储区块与第二存储区块中读出的所述解交织数据数值中撷取出多个决策矩阵。
2.根据权利要求1所述的解交织器,其特征在于,所述解交织编码器更针对所述第一存储区块与第二存储区块分别产生多个第一写入使能信号以及第二写入使能信号。
3.根据权利要求2所述的解交织器,其特征在于,其中当所述调变模式为BPSK调变模式时,所述解交织编码器以下列虚拟程序代码产生所述输入地址、所述第一与第二写入使能信号:
for i=0,1,2,...,NCBPS-1
WAMSB←i mod 3
WALSB←i/6
W_ADDR←{WAMSB,WALSB}
WE0#←(i/3)mod 2
WE1#←~((i/3)mod 2)
其中
i表示所述第一计数值;
WAMSB与WALSB被串联为W_ADDR,用以产生适用于所述第一存储区块与第二存储区块的所述输入地址;
WE0#表示所述第一写入使能信号;
WE1#表示所述第二写入使能信号;以及
NCBPS为一预定数值。
4.根据权利要求2所述的解交织器,其特征在于,其中当所述调变模式为QPSK调变模式时,所述解交织编码器以下列虚拟程序代码产生所述输入地址、所述第一与第二写入使能信号:
for i=0,1,2,...,NCBPS-1
WAMSB←i mod 6
WALSB←i/12
W_ADDR←{WAMSB,WALSB}
WE0#←(i/6)mod 2
WE1#←~((i/6)mod 2)
其中
i表示所述第一计数值;
WAMSB与WALSB被串联为W_ADDR,用以产生适用于所述第一存储区块与第二存储区块的所述输入地址;
WE0# 表示所述第一写入使能信号;
WE1#表示所述第二写入使能信号;以及
NCBPS为一预定数值。
5.根据权利要求2所述的解交织器,其特征在于,其中所述解交织编码器更产生一反向指针,且如果有必要的话会根据所述反向指针预先排列所述解交织数据数值中的多个位的顺序。
6.根据权利要求2所述的解交织器,其特征在于,其中当所述调变模式为16-QAM调变模式时,所述解交织编码器以下列虚拟程序代码产生所述输入地址、所述第一与第二写入使能信号:
for i=0,1,2,...,(NCBPS/2)-1
WAMSB←i mod 6
WALSB←i/12
W_ADDR←{WAMSB,WALSB}
REV←(i/6)mod 2
WE0#←(i/6)mod 2
WE1#←~((i/6)mod 2)
其中
i表示所述第一计数值;
WAMSB与WALSB被串联为W_ADDR,用以产生适用于所述第一存储区块与第二存储区块的所述输入地址;
REV表示所述反向指针;
WE0#表示所述第一写入使能信号;
WE1#表示所述第二写入使能信号;以及
NCBPS为一预定数值。
7.根据权利要求2所述的解交织器,其特征在于,其中当所述调变模式为64-QAM调变模式时,所述解交织编码器以下列虚拟程序代码产生所述输入地址、所述第一与第二写入使能信号:
for i=0,1,2,...,(NCBPS/3)-1
WAMSB←i mod 6
WALSB←i/12
W_ADDR←{WAMSB,WALSB}
REV←(i/6)mod 3
WE0#←(i/6)mod 2
WE1#←~((i/6)mod 2)
其中
i表示所述第一计数值;
WALSB与WAMSB被串联为W_ADDR,用以产生适用于所述第一存储区块与第二存储区块的所述输入地址;
REV表示所述反向指针;
WE0#表示所述第一写入使能信号;
WE1#表示所述第二写入使能信号;以及
NCBPS为一预定数值。
8.根据权利要求1所述的解交织器,其特征在于,其中所述解交织编码器更针对所述第一存储区块与第二存储区块分别产生多个第一输出使能信号与多个第二输出使能信号。
9.根据权利要求8所述的解交织器,其特征在于,其中当所述调变模式为BPSK调变模式且编码率为1/2时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
RAMSB←n/8
RA0LSB←n mod 8
RA1LSB←n mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
其中
n表示所述第二计数值;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
10.根据权利要求8所述的解交织器,其特征在于,其中当所述调变模式为BPSK调变模式且编码率为3/4时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/12
RA0LSB←(n×2/3)mod 8
RA1LSB←(n×2/3)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=01)
RAMSB←n/12
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=10)
RAMSB←n/12
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
11.根据权利要求8所述的解交织器,其特征在于,其中当所述调变模式为QPSK调变模式且编码率为1/2时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
RAMSB←n/8
RA0LSB←n mod 8
RA1LSB←n mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
n表示所述第二计数值;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与R1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
12.根据权利要求8所述的解交织器,其特征在于,其中当所述调变模式为QPSK调变模式且编码率为3/4时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/12
RA0LSB←(n×2/3)mod 8
RA1LSB←(n×2/3)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=01)
RAMSB←n/12
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=10)
RAMSB←n/12
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
13.根据权利要求8所述的解交织器,其特征在于,其中当所述调变模式为16-QAM调变模式且编码率为1/2时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
RAMSB←n/16
RA0LSB←n mod 8
RA1LSB←n mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
其中
n表示所述第二计数值;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
14.根据权利要求8所述的解交织器,其特征在于,其中当所述调变模式为16-QAM调变模式且编码率为3/4时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/24
RA0LSB←(n×2/3)mod 8
RA1LSB←(n×2/3)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=01)
RAMSB←n/24
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=10)
RAMSB←n/24
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
15.根据权利要求8所述的解交织器,其特征在于,其中当所述调变模式为64-QAM调变模式且编码率为2/3时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/32
RA0LSB←(n×3/4)mod 8
RA1LSB←(n×3/4)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=01)
RAMSB←n/32
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=11)
RAMSB←n/32
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=10)
RAMSB←n/32
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
16.根据权利要求8所述的解交织器,其特征在于,其中当所述调变模式为64-QAM调变模式且编码率为3/4时,所述解交织译码器以下列虚拟程序代码产生所述第一输出地址、第二输出地址、所述第一输出使能信号以及第二输出使能信号:
for n=0,1,2,...,NDBPS-1
if(DII=00)
RAMSB←n/36
RA0LSB←(n×2/3)mod 8
RA1LSB←(n×2/3)mod 8
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←0
else if(DII=01)
RAMSB←n/36
RA0LSB←RA0LSB+1
RA1LSB←RA1LSB
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←0
OE1#←1
else if(DII=10)
RAMSB←n/36
RA0LSB←RA0LSB
RA1LSB←RA1LSB+1
R_ADDR0←{RAMSB,RA0LSB}
R_ADDR1←{RAMSB,RA1LSB}
OE0#←1
OE1#←0
其中
n表示所述第二计数值;
DII表示所述虚设***指针;
RAMSB与RA0LSB被串联为R_ADDR0,用以产生适用于所述第一存储区块的所述第一输出地址;
RAMSB与RA1LSB被串联为R_ADDR1,用以产生适用于所述第二存储区块的所述第二输出地址;
OE0#表示所述第一输出使能信号;
OE1#表示所述第二输出使能信号;以及
NDBPS为一预定数值。
17.一种多重载波通信***,其特征在于,包含一解交织器用以译码数据,所述解交织器包括:
多个第一存储区块与第二存储区块,被设定以行方向储存数据并以列方向输出数据;
一解交织编码器,接收多个解交织数据数值,并根据一调变模式以及一第一计数值以产生适用于所述第一存储区块与第二存储区块的一输入地址,所述解交织编码器根据所述输入地址以行方向循序地将所述解交织数据数值写入所述第一存储区块或第二存储区块;
一解交织译码器根据一第二计数值、所述调变模式、一编码率、一虚设***指针以产生适用于所述第一存储区块的一第一输出地址以及适用于所述第二存储区块的一第二输出地址,并分别根据所述第一输出地址与第二输出地址以列方向自所述第一存储区块与第二存储区块读取所述解交织数据数值,并根据一第一输出指针与一第二输出指针,自由所述第一存储区块与第二存储区块中读出的所述解交织数据数值中撷取出多个决策矩阵。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/267,752 | 2005-11-04 | ||
US11/267,752 US20070115960A1 (en) | 2005-11-04 | 2005-11-04 | De-interleaver for data decoding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1960234A true CN1960234A (zh) | 2007-05-09 |
Family
ID=38053416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006101427851A Pending CN1960234A (zh) | 2005-11-04 | 2006-10-31 | 解交织器及多重载波通信*** |
Country Status (3)
Country | Link |
---|---|
US (1) | US20070115960A1 (zh) |
CN (1) | CN1960234A (zh) |
TW (1) | TW200719646A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101917246A (zh) * | 2010-06-28 | 2010-12-15 | 华为技术有限公司 | 信道数据交织和解交织的方法及装置 |
CN101453302B (zh) * | 2008-12-19 | 2011-12-21 | 深圳国微技术有限公司 | 解交织器、数据传输***中的数据交织/解交织实现方法 |
CN101534172B (zh) * | 2009-03-27 | 2012-09-05 | 中兴通讯股份有限公司 | 一种***多媒体广播中解比特交织的实现装置和方法 |
CN101425998B (zh) * | 2007-10-30 | 2013-05-01 | 索尼株式会社 | 数据处理设备和方法 |
CN101425994B (zh) * | 2007-10-30 | 2013-08-14 | 索尼株式会社 | 数据处理设备和方法 |
CN101425993B (zh) * | 2007-10-30 | 2013-08-28 | 索尼株式会社 | 数据处理设备和方法 |
CN103401830A (zh) * | 2007-10-30 | 2013-11-20 | 索尼株式会社 | 数据处理设备和方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9471418B2 (en) | 2007-06-19 | 2016-10-18 | Samsung Electronics Co., Ltd. | Memory system that detects bit errors due to read disturbance and methods thereof |
KR100882841B1 (ko) * | 2007-06-19 | 2009-02-10 | 삼성전자주식회사 | 읽기 디스터번스로 인한 비트 에러를 검출할 수 있는메모리 시스템 및 그것의 읽기 방법 |
KR20090014036A (ko) * | 2007-08-03 | 2009-02-06 | 삼성전자주식회사 | 읽기 디스터번스로 인한 에러를 방지하는 메모리 시스템 및그 방법 |
US7764595B2 (en) | 2008-01-16 | 2010-07-27 | Newport Media, Inc. | Area and power efficient architectures of time deinterleaver for ISDB-T receivers |
CN102404011B (zh) * | 2010-09-15 | 2015-05-20 | 中兴通讯股份有限公司 | 维特比解码实现方法及装置 |
TW201842784A (zh) * | 2017-02-15 | 2018-12-01 | 晨星半導體股份有限公司 | 數位電視之資料處理電路及資料處理方法 |
TWI792864B (zh) * | 2022-01-14 | 2023-02-11 | 瑞昱半導體股份有限公司 | 測試系統以及測試方法 |
CN115954024B (zh) * | 2023-03-14 | 2023-06-02 | 长鑫存储技术有限公司 | 一种解码器及其解码方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6553517B1 (en) * | 1999-04-09 | 2003-04-22 | Sony Corporation | Interleavers and de-interleavers |
CA2268853C (en) * | 1999-04-13 | 2011-08-02 | Wen Tong | Rate matching and channel interleaving for a communications system |
US6634009B1 (en) * | 2000-03-08 | 2003-10-14 | Altera Corporation | Interleaver-deinterleaver megacore |
US6854077B2 (en) * | 2000-08-05 | 2005-02-08 | Motorola, Inc. | Apparatus and method for providing turbo code interleaving in a communications system |
US7111221B2 (en) * | 2001-04-02 | 2006-09-19 | Koninklijke Philips Electronics N.V. | Digital transmission system for an enhanced ATSC 8-VSB system |
JP3669433B2 (ja) * | 2001-12-25 | 2005-07-06 | ソニー株式会社 | インターリーブ装置及びインターリーブ方法、符号化装置及び符号化方法、並びに復号装置及び復号方法 |
US20030126539A1 (en) * | 2001-12-31 | 2003-07-03 | Bysted Tommy Kristensen | Transport channel interleaving |
EP1463255A1 (en) * | 2003-03-25 | 2004-09-29 | Sony United Kingdom Limited | Interleaver for mapping symbols on the carriers of an OFDM system |
-
2005
- 2005-11-04 US US11/267,752 patent/US20070115960A1/en not_active Abandoned
-
2006
- 2006-09-25 TW TW095135329A patent/TW200719646A/zh unknown
- 2006-10-31 CN CNA2006101427851A patent/CN1960234A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101425998B (zh) * | 2007-10-30 | 2013-05-01 | 索尼株式会社 | 数据处理设备和方法 |
CN101425994B (zh) * | 2007-10-30 | 2013-08-14 | 索尼株式会社 | 数据处理设备和方法 |
CN101425993B (zh) * | 2007-10-30 | 2013-08-28 | 索尼株式会社 | 数据处理设备和方法 |
CN103401830A (zh) * | 2007-10-30 | 2013-11-20 | 索尼株式会社 | 数据处理设备和方法 |
CN101425997B (zh) * | 2007-10-30 | 2014-06-11 | 索尼株式会社 | 数据处理设备和方法 |
CN101425995B (zh) * | 2007-10-30 | 2014-06-11 | 索尼株式会社 | 数据处理设备和方法 |
CN101425996B (zh) * | 2007-10-30 | 2014-06-11 | 索尼株式会社 | 数据处理设备和方法 |
CN101453302B (zh) * | 2008-12-19 | 2011-12-21 | 深圳国微技术有限公司 | 解交织器、数据传输***中的数据交织/解交织实现方法 |
CN101534172B (zh) * | 2009-03-27 | 2012-09-05 | 中兴通讯股份有限公司 | 一种***多媒体广播中解比特交织的实现装置和方法 |
CN101917246A (zh) * | 2010-06-28 | 2010-12-15 | 华为技术有限公司 | 信道数据交织和解交织的方法及装置 |
CN101917246B (zh) * | 2010-06-28 | 2013-03-27 | 华为技术有限公司 | 信道数据交织和解交织的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20070115960A1 (en) | 2007-05-24 |
TW200719646A (en) | 2007-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1960234A (zh) | 解交织器及多重载波通信*** | |
CN1235343C (zh) | 交织方法、交织装置以及存储交织模式产生程序的媒体 | |
CN1108665C (zh) | 包括结合多维调制的乘积码的数字传输***与方法 | |
CN1087887C (zh) | 发送正交频分复用信号的方法及其发送设备和接收设备 | |
CN1154265C (zh) | 多载波传输***、装置和方法 | |
CN1501653A (zh) | 接收装置、发送装置及接收方法 | |
CN1742455A (zh) | 差分多长度发送及接收分集 | |
CN1295884C (zh) | 信息发送装置、信息发送方法、信息接收装置和信息接收方法 | |
CN1525708A (zh) | 无线局域网设备 | |
CN1930813A (zh) | 接收装置、接收方法以及无线通信*** | |
CN1543076A (zh) | 用于在有连续最小距离长度限制的情况下进行调制/解调的设备与方法 | |
CN1224226C (zh) | 通信***中重新排列码字序列的方法和设备 | |
CN1201494C (zh) | 最大后验概率译码方法和装置 | |
CN1640142A (zh) | 对小波变换系数进行编码的方法和设备 | |
CN1913515A (zh) | 基于正交频分多址的数据通信方法 | |
CN1373561A (zh) | 快速接收方法及快速接收机 | |
CN1692557A (zh) | 编码设备、编码方法、编码程序、解码设备、解码方法、和解码程序 | |
CN1147052C (zh) | ***方法与设备和去***方法与设备 | |
CN1917501A (zh) | 一种载波干扰噪声比的测量方法及装置 | |
CN1330455A (zh) | Turbo(涡轮)码的译码电路和编码译码电路 | |
CN1716924A (zh) | 用于无线信道的基于有效载荷的信道估计 | |
CN100341295C (zh) | 具有高数据吞吐量的wlan发射器 | |
CN1320785C (zh) | 支持使用空-时块码的发射天线分集的发射和接收装置 | |
CN1232323A (zh) | 交错码,编码,译码设备和方法,置换方法及其*** | |
CN1319291A (zh) | 数据传输方法,数据传输***,发射装置和接收装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20070509 |