[发明专利]一种使用SDRAM实现时域卷积交织和解交织的方法无效
申请号: | 200910153334.1 | 申请日: | 2009-10-15 |
公开(公告)号: | CN101697491A | 公开(公告)日: | 2010-04-21 |
发明(设计)人: | 谢磊;陈惠芳;李珊;王匡 | 申请(专利权)人: | 浙江大学 |
主分类号: | H03M13/23 | 分类号: | H03M13/23 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 杜军 |
地址: | 310027 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种使用SDRAM实现时域卷积交织和解交织的方法。现有技术存在一定的不足。本发明方法在交织时,对于每个交织支路按“先读后写”进行操作,如果当前所在支路内的相对地址距支路最大存储容量地址的剩余单元不够时,交织数据将拆成两段进行读写操作。解交织时,对于每个支路也是按“先读后写”进行操作。本发明方法按支路顺序对每条交织支路的交织数据进行连续地址的读写,有效减少在整个交织和解交织过程中控制SDRAM频繁寻址所消耗的时间,并且利用SRAM代替FIFO寄存器,进一步节省了资源。另外对SDRAM进行集中刷新的操作,取消了对SDRAM复杂的中断操作,从而避免影响数据传输的连续性。 | ||
搜索关键词: | 一种 使用 sdram 实现 时域 卷积 交织 和解 方法 | ||
【主权项】:
1.一种使用SDRAM实现时域卷积交织和解交织的方法,包括实现时域卷积交织方法和实现时域卷积解交织方法,其特征在于:实现时域卷积交织方法的具体步骤是:步骤I.计算一帧数据交织时在每条交织支路中所需要交织的符号数T(i):
其中L为交织数据帧的长度,B为交织支路数,i为交织当前支路号,i=0,1,2,...,B-1,mod为取余运算;步骤II.计算一帧数据交织时在每条交织支路的起始地址in_addr(i):in_addr(i)=in_bs(i)+in_bn(i),i=1,2,...,B-1其中in_bs(i)为第i支路在SDRAM中的首地址,in_bn(i)为第i支路内的相对地址;交织的第0支路为直通支路,不经过SDRAM,第1支路在SDRAM中的首地址in_bs(1)为0单元,则:in_bs(i)=in_bs(i-1)+temp1(i)-M,i=2,3,...,B-1其中temp1(i)=temp1(i-1)+M,temp1(1)=M,M为交织延迟周期;当交织数据为第一帧数据时,每个支路的in_bn(i)均为0;当交织数据不是第一帧数据时,则in_bn(i)=(in_bnp(i)+T(i))mod(iM),i=1,2,...,B-1其中in_bnp(i)表示前一帧交织数据访问第i条支路内的相对地址;步骤III.计算存放交织前后数据帧的SRAM的地址;交织时,第i支路需交织的T(i)个数据将从存放未交织数据帧的SRAM1中的T(i)个单元得到;此支路交织后的T(i)个数据要存入寄存交织后数据帧的SRAM2的T(i)个单元中;此时SRAM1和SRAM2的T(i)个读写地址相同,对应第i交织支路为:i,B+i,2B+i,...,(T(i)-1)B+i,i=1,2,...,B-1;步骤IV.交织第0支路,当前支路号i=0,即直通支路,直接将交织数据从SRAM1传到SRAM2中相同的地址单元,T(0)个数据在两个SRAM中的地址均为0,B,2B,...,(T(0)-1)B;步骤V.进入下一条交织支路,i=i+1;获得所在支路在SDRAM中交织的起始地址in_addr(i);判断所在支路内的相对地址in_bn(i)距支路最大存储容量地址in_bm(i)的剩余单元是否足够有T(i)个,其中in_bm(i)=iM,如果足够,则执行步骤VI,如果不够,对此支路的交织需要分成两次交织读写阶段,指定初始化为0的标志信号in_step等于1,执行步骤VII;步骤VI.指定在SDRAM中连续读写数据量Tin=T(i),SDRAM的交织首地址in_sa为in_addr(i),进行步骤VIII;步骤VII.第一阶段读写的数据量为T1(i),为当前交织支路内的相对地址到支路最大存储容量地址的剩余单元数,即:T1(i)=in_bm(i)-in_bn(i)指定在SDRAM中连续读写数据量Tin=T1(i),SDRAM的交织首地址in_sa为in_addr(i),进行步骤VIII;步骤VIII.在SDRAM中,对于每个交织支路按“先读后写”进行操作;首先读出SDRAM中首地址为in_sa开始的连续Tin个单元内容,存入SRAM2的Tin个单元中,将需交织的Tin个符号内容从SRAM1中的Tin个单元得到,最后将这些需交织的数据连续写入SDRAM中首地址为in_sa开始的连续Tin个单元中;步骤IX.判断SDRAM的读写数据量Tin是否等于此支路应交织的数据量T(i),如果相同,则进行步骤XI;如果不相同,继续判断标志信号in_step的值,如果等于1就执行步骤X,如果不等于1,执行步骤XI;步骤X.第二阶段读写的数据量为T2(i),为第一阶段读写完毕后剩余需要交织的数据量,即:T2(i)=T(i)-T1(i)此时SDRAM的交织首地址变为此支路首地址in_bs(i);指定在SDRAM中连续读写数据量Tin=T2(i),SDRAM的交织首地址in_sa为in_bs(i),标志信号in_step=0,进行步骤VIII;步骤XI.在针对当前交织支路的交织全部读写完毕后,判断当前支路是否为最后一条交织支路,如果是则转到步骤XII,如果不是,转到步骤V;步骤XII.对所有交织支路操作完毕后,在交织一帧数据后集中的刷新,集中刷新行数为交织所使用的SDRAM存储单元的行数;集中刷新结束后,系统等待下一帧数据的交织命令;实现时域卷积解交织方法的具体步骤是:步骤1.计算一帧数据解交织时在每条解交织支路中所需要解交织的符号数T(j)′:
其中L′为解交织数据帧的长度,B′为解交织支路数,j为解交织当前支路号,j=0,1,2,...,B′-1,mod为取余运算;步骤2.计算一帧数据解交织时在每条解交织支路的起始地址dein_addr(j):dein_addr(j)=dein_bs(j)+dein_bn(j)其中dein_bs(j)为第j支路在SDRAM中的首地址,dein_bn(j)为第j支路内的相对地址;指定第0支路在SDRAM中的首地址dein_bs(0)为0单元,除第B′-1条支路为直通支路,不经过SDRAM之外,其他支路为dein_bs(j)=dein_bs(j-1)+temp2(j)+(B′+1)M′其中:temp2(i)=temp2(i-1)-M′,temp2(0)=-M′,M′为解交织延迟周期;当解交织数据为第一帧数据时,每个支路的dein_bn(j)均为0;当解交织数据不是第一帧数据时,则:dein_bn(j)=(dein_bnp(j)+T(j)′)mod((B′-1-j)M′)其中dein_bnp(j)表示前一帧解交织数据访问第j条支路时的相对地址;步骤3.计算存放解交织前后数据帧的SRAM的地址;解交织时,第j支路需解交织的T(j)′个数据将从存放解交织数据帧的SRAM1′中的T(j)′个单元得到;此支路解交织后的T(j)′个数据要存入寄存解交织后数据帧的SRAM2′的T(j)′个单元中;此时SRAM1′和SRAM2′的T(j)′个读写地址是一样的,对应第j解交织支路为:j,B′+j,2B′+j,...,(T(j)′-1)B′+j,i=1,2,...,B′-1;步骤4.卷积解交织开始,标记支路号j=0;步骤5.获得所在支路解交织的起始地址dein_addr(j);判断所在支路内的相对地址dein_bn(j)距支路最大存储容量地址dein_bm(j)的剩余单元是否足够有T(j)′个,其中dein_bm(j)=(B′-j-1)M′,如果足够,则执行步骤6,如果不够,对此支路的解交织需要分成两次解交织读写阶段,指定初始化为0的标志信号dein_step等于1,执行步骤7;步骤6.指定在SDRAM中连续读写数据量Tdein=T(j)′,SDRAM的解交织首地址dein_sa为dein_addr(j),进行步骤8;步骤7.第一阶段读写的数据量为T1(j)′,为当前解交织支路内的相对地址到支路最大存储容量地址的剩余单元数,即:T1(j)′=dein_bm(j)-dein_bn(j)指定在SDRAM中连续读写数据量Tdein=T1(j)′,SDRAM的解交织首地址dein_sa为dein_addr(j),进行步骤8;步骤8.在SDRAM中,对于每个解交织支路按“先读后写”进行操作;首先读出SDRAM中首地址为dein_sa开始的连续Tdein个单元内容,存入SRAM2′的Tdein个单元中,将需解交织的Tdein个符号内容从SRAM1′中的Tdein个单元得到,最后将这些需解交织的数据连续写入SDRAM中首地址为dein_sa开始的连续Tdein个单元中;步骤9.判断SDRAM的读写数据量Tdein是否等于此支路应解交织的数据量T(j)′,如果相同,则进行步骤11,如果不相同,继续判断标志信号dein_step的值,如果等于1就执行步骤10,如果不等于1执行步骤11;步骤10.第二阶段读写的数据量为T2(j)′,为第一阶段读写完毕后剩余需要解交织的数据量,即:T2(j)′=T(j)′-T1(j)′此时SDRAM的解交织首地址变为此支路首地址dein_bs(j);指定在SDRAM中连续读写数据量Tdein=T2(j)′,SDRAM的交织首地址dein_sa为dein_bs(j),标志信号dein_step=0,进行步骤8;步骤11.在针对当前解交织支路的解交织读写完毕后,j=j+1,判断更新后的支路是否为最后一条解交织支路,如果是则转到步骤12,如果不是转到步骤5;步骤12.对最后一条解交织支路,即直通支路,直接将数据从SRAM1′传到SRAM2′中相同的地址单元,T(B′-1)′个数据在两个SRAM中的地址均为B′-1,2B′-1,3B′-1,...,(T(B′-1)′)B′-1;步骤13.所有解交织支路操作完毕后,对SDRAM进行集中刷新,集中刷新行数为解交织所使用的SDRAM存储单元的行数;集中刷新结束后,系统等待下一帧数据的解交织命令。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200910153334.1/,转载请声明来源钻瓜专利网。
- 上一篇:内亚甲基六氢邻苯二甲酸酐及其生产方法
- 下一篇:高可靠白光LED平面光源模块
- 同类专利
- 专利分类