一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

广义低密度奇偶校验码的软输入软输出分量代码解码器的制作方法

2021-02-05 13:17:00 来源:中国专利 TAG:存储器 装置 校正 总体 错误


[0001]
本专利文件总体涉及非易失性存储器装置,并且更特别地,涉及非易失性存储器装置中的错误校正。


背景技术:

[0002]
数据完整性是任何数据存储装置和数据传输的重要特性。建议将强错误校正码(ecc)用于包括nand闪速存储器装置的各种类型的数据存储装置。
[0003]
固态驱动器(ssd)使用多层nand闪存装置进行永久性存储。然而,多层nand闪速存储器装置本质上是不可靠的,并且通常需要使用ecc以牺牲额外的ecc奇偶校验位存储空间来使数据可靠性显著提高。人们需要更高效的ecc控制机制,以最少的奇偶性和复杂度要求提供最大的数据保护。


技术实现要素:

[0004]
本公开的技术的实施例涉及用于对广义低密度奇偶校验(gldpc)码的分量代码进行软输入软输出(siso)解码的方法、装置和系统。除其它特征和优点外,本发明文件描述的方法和装置还能够有利地实现用于gldpc的分量代码的siso算法的低复杂度实施例。
[0005]
在一个示例性方面,一种用于改进的二进制线性代码的解码的方法,包括:接收噪声码字;基于噪声码字计算校正子;识别与校正子相对应的n个错误模式;从n个错误模式中选择m个错误模式,其中m≤n,m和n是正整数,其中对应于m个错误模式中的每个错误模式的码字与噪声码字之间的距离小于对应于任何其它错误模式的码字与噪声码字之间的距离,并且其中距离不包括汉明距离;逐一地基于m个错误模式中的每个错误模式来修改噪声码字;并且逐一地对所修改的噪声码字进行解码,直到实现成功解码。
[0006]
在另一个示例性方面,上述方法可以由包括处理器的视频编码器设备或视频解码器设备来实施。
[0007]
在又一个示例性方面,这些方法可以以处理器可运行指令的形式来实施,并且存储在计算机可读编程介质中。
[0008]
本专利文件中描述的主题可以通过提供以下一个或多个特征的特定方式来实施。
附图说明
[0009]
图1示出存储器系统的示例。
[0010]
图2是示例性非易失性存储器装置的图示。
[0011]
图3是示出非易失性存储器装置的单元电压电平分布(v
th
)的示例性示图。
[0012]
图4是示出非易失性存储器装置的单元电压电平分布(v
th
)的另一示例性示图。
[0013]
图5是示出编程干扰之前和之后的非易失性存储器装置的单元电压电平分布(v
th
)的示例性示图。
[0014]
图6是示出非易失性存储器装置的单元电压电平分布(v
th
)根据参考电压的示例性
示图。
[0015]
图7是广义低密度奇偶校验(g-ldpc)错误校正系统的高级框图。
[0016]
图8是比较二进制对称信道(bsc)中的gldpc码的码字失败率(cfr)的示例性特性图。
[0017]
图9示出用于改进的二进制线性代码的解码的另一示例性方法的流程图。
具体实施方式
[0018]
广义低密度奇偶校验(gldpc)是通过将传统ldpc码的tanner图中的部分或全部单一奇偶校验(spc)约束节点替换成更强的广义约束节点来构成的,其中广义约束节点可以对应于任何具有块长k的线性块代码。与每个广义约束节点相关联的子代码称为分量代码。gldpc码和传统的ldpc码一样,适用于低复杂度的消息传递解码,并且具有包括最小距离大、迭代解码性能优、解码收敛速度快等诸多潜在优点。广泛使用的分量代码的示例包括汉明代码。
[0019]
图1至图6概述可以实施本公开的技术的实施例的非易失性存储器系统。
[0020]
图1是根据本公开的技术的一些实施例的存储器系统100的示例的框图。存储器系统100包括存储器模块110,该存储器模块110可以用于存储供其它电子装置或系统使用的信息。存储器系统100可以被集成(例如,位于电路板上)到其它电子装置和系统中。可选地,存储器系统100可以被实施为诸如usb闪存驱动器和固态驱动器(ssd)的外部存储装置。
[0021]
存储器系统100中包括的存储器模块110可以包括存储器区域(例如,存储器阵列)102、104、106和108。存储器区域102、104、106和108中的每个存储器区域可以被包括在单个存储器管芯中或多个存储器管芯中。存储器管芯可以被包括在集成电路(ic)芯片中。
[0022]
存储器区域102、104、106和108中的每个存储器区域包括多个存储器单元。可以基于存储器单元组(memory unit)来执行读取操作、编程操作或擦除操作。因此,每个存储器单元组可以包括预定数量的存储器单元。存储器区域102、104、106或108中的存储器单元可以被包括在单个存储器管芯中或多个存储器管芯中。
[0023]
存储器区域102、104、106和108中的每一个中的存储器单元可以在存储器单位中以行和列布置。存储器单元组中的每一个可以是物理单元组。例如,多个存储器单元的组可以形成存储器单元组。存储器单元组中的每一个也可以是逻辑单元组。例如,存储器单元组可以是可以通过诸如存储体(bank)地址、块地址和基于页面的地址的唯一地址来识别的存储体、块或页面。在读取或写入操作期间,与特定存储器单位相关联的唯一地址可以用于访问该特定存储器单元组。基于该唯一地址,可以将信息写入该特定存储器单元组中的一个或多个存储器单元或从中检索信息。
[0024]
存储器区域102、104、106和108中的存储器单元可以包括非易失性存储器单元。非易失性存储器单元的示例包括闪速存储器单元、相变存储器(pram)单元、磁阻随机存取存储器(mram)单元或其它类型的非易失性存储器单元。在存储器单元被配置成nand闪速存储器单元的示例性实施例中,可以基于页面执行读取操作或写入操作。然而,nand闪速存储器中的擦除操作是基于块执行的。
[0025]
非易失性存储器单元中的每一个可以被配置成单层单元(slc)或多层存储器单元。单层单元可以每单元存储一位信息。多层存储器单元可以每单元存储多于一位的信息。
例如,存储器区域102、104、106和108中的存储器单元中的每一个可以被配置成每单元存储2位信息的多层单元(mlc)、每单元存储3位信息的三层单元(tlc)、或者每单元存储4位信息的四层单元(qlc)。在另一个示例中,存储器区域111中的存储器单元中的每一个可被配置成存储至少一位信息(例如,一位信息或多位信息),并且存储器区域112中的存储器单元中的每一个可以被配置成存储多于一位的信息。
[0026]
如图1所示,存储器系统100包括控制器模块120。控制器模块120包括与存储器模块110通信的存储器接口121、与主机(未示出)通信的主机接口126、执行固件级代码的处理器124以及临时地或永久地存储可运行的固件/指令和相关信息的高速缓存123和系统存储器122。在一些实施例中,控制器模块120可以包括对存储器模块110中存储的信息执行错误校正操作的错误校正引擎125。错误校正引擎125可以被配置成检测/校正单个位或多个位错误。在另一实施例中,错误校正引擎125可以位于存储器模块110中。
[0027]
主机可以是包括一个或多个处理器的装置或系统,操作该一个或多个处理器以从存储器系统100中检索数据或将数据存储或写入存储器系统100。在一些实施例中,主机的示例可以包括个人计算机(pc)、便携式数码装置、数码相机、数字多媒体播放器、电视和无线通信装置。
[0028]
在一些实施例中,控制器模块120还可以包括主机接口126,以与主机通信。主机接口126可以包括符合包括但不限于以下主机接口规范中的至少一种的组件:串行高级技术附件(sata)、串列小型计算机系统接口(sas)规范、高速外围组件互连(pcie)。
[0029]
图2示出根据本公开的技术的一些实施例实施的存储器单元阵列的示例。
[0030]
在一些实施例中,存储器单元阵列可以包括nand闪速存储器阵列,该nand闪速存储器阵列被划分成许多块,并且每个块包含一定数量的页面。每个块包括多个存储器单元串,并且每个存储器单元串包括多个存储器单元。
[0031]
在存储器单元阵列是nand闪速存储器阵列的一些实施例中,基于页面执行读取和写入(编程)操作,基于块执行擦除操作。在对块中包含的任何页面执行编程操作之前,必须同时擦除相同块中的所有存储器单元。在实施例中,nand闪速存储器可以使用偶数/奇数位线结构。在另一实施例中,nand闪速存储器可以使用全位线结构。在偶数/奇数位线结构中,偶数和奇数位线沿着每条字线交错,并被交替访问,使得偶数和奇数位线中的每一对可以共享诸如页面缓冲器的外围电路。在全位线结构中,所有位线可以被同时访问。
[0032]
图3示出多层单元装置中的阈值电压分布曲线的示例,其中将每个编程/擦除状态的单元数量绘制成阈值电压的函数。如图3所示,阈值电压分布曲线包括阈值电压最低的擦除状态(表示为“er”并且对应于“11”),以及读取电压处于状态(由虚线表示的)之间的三个编程状态(分别表示为“p1”、“p2”和“p3”,分别对应于“01”、“00”和“10”)。在一些实施例中,因为存储器阵列的材料特性的差异,编程/擦除状态的阈值电压分布中的每一个具有有限的宽度。
[0033]
在将多于一个数据位写入存储器单元中时,由于相邻分布之间的距离减小,需要精细设置存储器单元的阈值电压电平。这是通过使用增量步进脉冲编程(ispp)来实现的,即,使用编程和校验方法,利用对字线施加的阶梯式编程电压,对相同字线上的存储器单元重复编程来实现的。每个编程状态与在验证操作中使用的验证电压相关联,并且设置每个阈值电压分布窗口的目标位置。
[0034]
阈值电压分布失真或重叠可能导致读取错误。下文中将论述,由于诸如编程和擦除(p/e)周期、单元间干扰和数据保持错误等而使理想的存储器单元阈值电压分布可能显著地失真或重叠,并且在大多数情况下,这种读取错误可以通过使用错误校正码(ecc)来管理。
[0035]
图4示出理想阈值电压分布曲线410的示例和失真的阈值电压分布曲线420的示例。纵轴表示存储器单元的数量,存储器单元具有在横轴上表示的特定阈值电压。
[0036]
对于n位多层单元nand闪速存储器,可以将每个单元的阈值电压编程为2
n
个可能值。在理想的多层单元nand闪速存储器中,每个值对应于不重叠的阈值电压窗口。
[0037]
闪速存储器p/e周期会导致单元晶体管的电荷撷取层的浮栅的隧道氧化层损坏,从而导致阈值电压偏移,并因此逐渐劣化存储器装置的噪声裕度。随着p/e周期的增加,不同编程状态下的相邻分布之间的裕度减小,并且最终这些分布开始重叠。具有被编程在相邻分布的重叠范围内的阈值电压的存储器单元中存储的数据位可能被误判为不同于原始目标值的值。
[0038]
图5示出nand闪速存储器中的单元间干扰的示例。单元间干扰还可能导致闪存单元的阈值电压失真。一个存储器单元晶体管的阈值电压偏移可以通过干扰单元与牺牲单元之间的寄生电容耦合效应来影响该存储器单元晶体管的相邻存储器单元晶体管的阈值电压。单元间干扰的量可能受nand闪速存储器位线结构的影响。在偶数/奇数位线结构中,一条字线上的存储器单元交替地连接到偶数和奇数位线,并且在相同字线中,偶数单元先于奇数单元被编程。因此,偶数单元和奇数单元受到不同量的单元间干扰。与偶数/奇数位线结构的偶数单元相比,全位线结构中的单元受到的单元间干扰更小,并且全位线结构可以有效支持高速电流感测,从而提高存储器的读取和验证速度。
[0039]
图5中的虚线表示所考虑的单元的p/e状态(在编程干扰之前)的标称分布,并且“相邻状态值”表示相邻状态已被编程到的值。如图5所示,如果将相邻状态编程为p1,则所考虑的单元的阈值电压分布偏移特定的量。然而,如果将相邻状态编程为具有比p1更高的阈值电压的p2,则与为p1的相邻状态相比,这导致更大的偏移。类似地,当将相邻状态编程为p3时,阈值电压分布的偏移最大。
[0040]
图6示出通过比较正常的阈值电压分布和偏移的阈值电压分布的nand闪速存储器中的保持错误的示例。nand闪速存储器中存储的数据往往会随着时间的推移而损坏,这称为数据保持错误。保持错误是由单元晶体管的浮栅或电荷撷取层中存储的电荷损失导致的。由于浮栅或电荷撷取层的损耗,具有更多编程擦除周期的存储器单元更可能经历保持错误。在图6的示例中,比较上行的电压分布(损坏之前)和下行的电压分布(保持错误损害)显示出向左偏移。
[0041]
在一些实施例中,图5和图6(例如,由于p/e周期)中描述的保持错误需要使用gldpc来确保存储的位被正确读取。然而,使用siso算法来实施gldpc的分量代码通常需要高度的复杂度。本公开的技术的实施例通过使用校正子和信道信息两者来选择解码输出候选项,在保持良好的错误校正性能的同时降低了siso汉明解码器的复杂度。
[0042]
图7示出根据本公开的一些实施例的错误校正系统700的示例性高级框图。在示例中,结合数据存储来描述gldpc码。然而,本公开的实施例并不限于此。相反,实施例类似地适用于gldpc码的其它用途,包括例如数据传输。
[0043]
如图7所示,gldpc编码器710接收信息位,该信息位包括期望存储在存储系统720中的数据。gldpc编码器710输出gldpc编码的数据(例如,gldpc码字),并且将其写入存储系统720。
[0044]
在各个实施例中,存储系统720可以包括诸如(例如,磁性)磁盘驱动存储装置、闪存存储装置等的各种存储类型或介质。在一些实施例中,该技术被用在收发器中,并且数据通过有线和/或无线信道来传输和接收,而不是被写入存储装置或从存储装置中读取。在这种情况下,接收到的码字中的错误可能是在码字的传输期间被引入的。
[0045]
当所存储的数据被(例如,由存储数据的应用或用户)请求或以其它方式需要时,检测器730从存储系统720接收数据。接收到的数据可能包括一些噪声或错误。检测器730对接收到的数据执行检测,并输出判决和/或可靠性信息。例如,软输出检测器针对每个所检测的位输出可靠性信息和判决。另一方面,硬输出检测器在不提供相应可靠性信息的情况下输出对每个位的判决。例如,硬输出检测器可以在不指示检测器对判决的确定程度或确定性的情况下输出特定位是“1”还是“0”的判决。相反,软输出检测器输出判决以及与判决相关联的可靠性信息。通常,可靠性值指示检测器对给定判决的确定程度。
[0046]
判决和/或可靠性信息被传递到gldpc解码器740,该gldpc解码器740使用判决和可靠性信息执行gldpc解码。软输入解码器使用判决和可靠性信息来解码码字。硬解码器仅在解码器中利用判决值来解码码字。在许多情况下,解码是迭代的,并且gldpc解码器740包括多个组成解码器(constituent decoders),组成解码器中的每一个可以是硬解码器或软解码器。例如,当组成码字是bch码时,bch解码器可以被用于对这样的每个组成码字进行硬解码。另外地或可选地,最大后验概率(map)解码器可以被用于对组成码字中的每一个进行软解码。由gldpc解码器740生成的经解码位被传递到适当的实体(例如,请求经解码位的用户或应用)。通过适当的编码和解码,信息位与经解码位相匹配。
[0047]
在示例中,考虑具有代码长度n、信息长度k和最小距离d的汉明码。参数满足[n,k,d]=[2
m-1,2
m-1-m,m],其中m为正整数。在图7的上下文中,发送器将表示为c的汉明码字作为经调制码字x通过加性高斯白噪声awgn信道发送。接收到的信号为y=x n,其中n为高斯噪声。然后接收器根据接收到的信号y估计位序列在一些实施例中,这可以通过基于y计算校正子来实现。对于固定的校正子,收集所有可能的错误模式,然后选择最相邻的接收信号y的m个最可能的错误模式。
[0048]
在示例中,(7,4,3)汉明码被用于阐明本公开的技术的某些特征和方面。假设(7,4,3)汉明码的失真位序列的校正子为z=(0 0 1)。因此,利用元素e
i,j
收集矩阵e中的可能的错误模式:
[0049][0050]
然后,对于所有错误模式(错误模式矩阵e中的每一行),选择最接近所接收信号y的m个相邻错误模式,而不是选择最少硬错误数量的错误模式。在示例中,选择非汉明距离最小的m个相邻错误模式。在示例中,任何不包括汉明距离的距离指标都可以被用来选择最接近的m个相邻错误模式。如果编码器和解码器之间的信道(例如,图7中的720)是awgn信道,则用于选择最接近的m个相邻错误模式的距离是欧几里得距离。如果信道为非高斯信道,则该距离为非欧几里得距离,但不包括汉明距离。
[0051]
在一些实施例中,计算矩阵中每个错误模式的可靠性。在示例中,可靠性可以是概率、对数似然比(llr)等。如果可靠性大于第一阈值ts,则将其选择为解码输出候选项,并在矩阵e中标记其相应的错误模式。在示例中,当所有候选项的可靠性的总和大于第二阈值ta时,终止搜索,并且已经确定了待分析的m个错误模式的集合。
[0052]
在示例中,令p
i
表示每一行i的给定错误模式逐列相乘的概率值。在这m个错误模式中,将概率计算为:
[0053][0054]
归一化之后,将概率计算为:
[0055][0056]
对于第j位,对所有模式中x=1的概率p
i
求和,并且对于第i行,计算出以下概率:
[0057][0058][0059]
随后,可以计算对数似然比(llr)为:
[0060][0061]
图8是比较二进制对称信道(bsc)中的gldpc码的码字失败率(cfr)的示例性特性图。在图8所示的示例中,gldpc分量代码是m=652的(63,57)汉明码。如此处所见,具有二次
复杂度的本公开的技术(具有圆形标记)的性能接近具有指数复杂度的map算法(具有三角形标记)的性能。选择具有最小硬错误(具有方形标记)的错误模式的gldpc具有与本文描述的某些错误相同的复杂度,但性能更差。
[0062]
图9示出用于改进的二进制线性代码的解码的方法900的流程图。方法900包括,在操作910处,接收噪声码字。在示例中,噪声码字是已经受到电路级噪声影响的码字,电路级噪声可以是加性高斯白噪声awgn或非高斯噪声、或其组合。在其它示例中,噪声码字是已经被错误污染的码字,从而导致一个位的值从“1”翻转成“0”,反之亦然。
[0063]
方法900包括,在操作920处,基于噪声码字计算校正子。
[0064]
方法900包括,在操作930处,识别与校正子相对应的n个错误模式。
[0065]
方法900包括,在操作940处,从n个错误模式中选择m个错误模式,其中m≤n,m和n是正整数,其中对应于m个错误模式中的每个错误模式的码字与噪声码字之间的距离小于对应于任何其它错误模式的码字与噪声码字之间的距离,并且其中该距离不包括汉明距离;
[0066]
方法900包括,在操作950处,逐一地基于m个错误模式中的每个错误模式修改噪声码字。
[0067]
方法900包括,在操作960处,逐一地对所修改的噪声码字进行解码,直到实现成功解码。
[0068]
在一些实施例中,二进制线性代码是(n,k,d)汉明码,其是广义低密度奇偶校验(g-ldpc)码的分量代码。在示例中,n=7、k=4并且d=3。
[0069]
在一些实施例中,该距离是欧几里得距离。在其它实施例中,该距离是与汉明距离不同的非欧几里得距离。
[0070]
在一些实施例中,从n个错误模式中选择m个错误模式,包括以下操作:针对n个错误模式中的每个错误模式计算可靠性指标;并且基于错误模式的可靠性指标与第一阈值的比较,在m个错误模式中选择错误模式。在示例中,可靠性指标是对数似然比。在另一示例中,可靠性指标是概率。在又一示例中,从n个错误模式中选择m个错误模式进一步基于m个错误模式中的每个错误模式的可靠性指标的总和与第二阈值的比较。
[0071]
在一些实施例中,m是预定值。如果两个码字具有相同的可靠性指标,并且在m个错误模式中只可以包含其中一个码字,则可以随机选择两个码字之一。可选地,可以选择索引较小(或较大)的码字。在其它实施例中,可以增加m来选择具有相同可靠性指标的码字。
[0072]
在一些实施例中,可以选择m的值来权衡性能与复杂度,反之亦然。例如,因为更多的候选错误模式被分析,所以可以使用更高的m值来提高性能,但这增加了复杂度。可选地,使用更小的m将会减少计算复杂度,但如果没有选择正确的错误模式,则可能会导致性能稍微劣化。
[0073]
在一些实施例中,实现成功解码对应于非易失性存储器中成功的读取操作。在示例中,非易失性存储器是nand闪速存储器。
[0074]
本专利文件中描述的主题和函数运算的实施例可以被实施在各种系统、数字电子电路中或者在计算机软件、固件或硬件中,包括本说明书中所公开的结构以及它们的结构等同方案或者在它们中的一个或多个的组合中。本说明书中描述的主题的实施例可以实施为一个或多个计算机程序产品,即,编码在有形的和非暂时性计算机可读介质上的计算机
程序指令的一个或多个模块,以由数据处理设备执行或控制数据处理设备的操作。计算机可读介质可以是机器可读存储装置、机器可读存储衬底、存储器装置、影响机器可读传播信号的物质组成或它们中的一个或多个的组合。术语“数据处理单元”或“数据处理设备”涵盖用于处理数据的所有设备、装置和机器,例如包括可编程处理器、计算机或多个处理器或计算机。除了硬件之外,该设备还可以包括为所讨论的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一项或多项的组合的代码。
[0075]
计算机程序(也称为程序、软件、软件应用程序、脚本或代码)可以用任何形式的编程语言(包括编译或解释语言)来编写,并且可以以任何形式进行部署,包括独立运行程序或模块、组件、子程序或适用于计算环境的其它单元。计算机程序不一定与文件系统中的文件相对应。程序可以存储在文件的一部分中,该文件保存其它程序或数据(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论的程序的单个文件中,或存储在多个协调文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以部署在一个计算机上或在位于一个站点上或分布在多个站点上并通过通信网络互连的多个计算机上执行。
[0076]
本说明书中描述的进程和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作和生成输出来执行功能。进程和逻辑流程也可以由专用逻辑电路执行,并且设备也可以实施为专用逻辑电路,例如fpga(现场可编程门阵列)或asic(专用集成电路)。
[0077]
作为示例,适用于执行计算机程序的处理器包括通用和专用微处理器,以及任意种类的数字计算机的任意一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器装置。通常,计算机还将包括或可操作地联接到一个或多个用于存储数据的大容量存储装置,例如,磁性光盘、磁光盘或光盘,以从中接收数据或向其传送数据或者两者皆有。但是,计算机不必具有此类装置。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器装置,包括例如诸如eprom、eeprom和闪速存储器装置的半导体存储器装置。处理器和存储器可以由专用逻辑电路补充或集成到专用逻辑电路中。
[0078]
尽管该专利文件包含许多细节,但是这些细节不应解释为对任何发明或可要求保护的范围的限制,而应解释为对专用于特定发明的特定实施例的特征的描述。在单独的实施例的上下文中,在该专利文件中描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种特征也可以分别以多个实施例单独或以任何合适的子组合来实施。此外,尽管以上将特征描述为在某些组合中发挥作用,甚至最初也这样声明,但是在某些情况下,可以从权利要求的组合中删除一个或多个特征,并且权利要求的组合可以针对子组合或子组合的变型。
[0079]
类似地,尽管在附图中以特定顺序描述了操作,但是这不应理解为要求以所示的特定顺序或以连续的顺序执行这样的操作,或者执行所有示出的操作以实现期望的结果。此外,在该专利文件中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这种分离。
[0080]
仅描述了一些实施例和示例,并且基于该专利文件中所描述和示出的内容可以进行其它实施、提高和变化。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜