欢迎来到知嘟嘟! 联系电话:13336804447 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13336804447
知嘟嘟经纪人
收藏
专利号: 2021101335178
申请人: 西南交通大学
专利类型:发明专利
专利状态:已下证
专利领域: 电通信技术
更新日期:2024-01-05
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种应用于静态霍夫曼表的全并行频数排序生成方法,其特征在于,对257个符号的频数进行排序,即对符号0~256的频数进行排序;排序基于桶排序算法进行设计分为3级,分别是:频数大小比较、比较结果相加和输出排序结果;具体包括以下步骤:步骤1:把所有257个符号的频数与除它以外剩下256个符号的频数进行比较:其中,符号0的频数FREQ_00就与符号1的频数FREQ_01、符号2的频数FREQ_02、…、符号

256的频数FREQ_256相比,得到比较结果存入freq0寄存器中,分别为:freq0[0]表示符号0的频数FREQ_00和符号1的频数FREQ_01比较大小的结果,freq0[1]表示符号0的频数和符号

2的频数比较大小的结果,…,freq0[255]表示符号0的频数和符号256的频数比较大小的结果;

同理,符号1的频数与其他256个符号的频数进行比较,相比得到比较结果存入freq1寄存器中,…,符号256的频数FREQ_256与其他256个符号的频数进行比较,相比得到比较结果存入freq256寄存器中;

这样得到257个比较大小的结果freq0、freq1、…、freq256;总共需要65792个比较器实现一个周期完成所有257个符号的频数与除它以外剩下256个符号的频数进行比较;

步骤2:将每个符号对应的寄存器中比较的结果经过3级相加得到对应符号的频数的位置的大小:

其中,符号0对应的freq0寄存器中比较的结果freq0[0]、freq0[1]、…、freq0[255]每8个分成一组进行相加得到中间结果sum0[0]、sum0[1]、…、sum0[31],再把得到的8个比较结果之和32个sum0每8个一组进行再次求和得到4组64个比较大小之和的结果sum_mid0[0]、sum_mid0[1]、sum_mid0[2]、sum_mid0[3],把这4个结果进行相加就得到了最终的符号0的位置的大小sum_end0;

同理,得到257个符号对应的频数的位置的大小sum_end0、sum_end1、…、sun_end256;

每个符号比较结果的大小计算都有256个加法器进行相加,得到257个符号对应的频数排序位置的大小sum_end0、sum_end1、…、sun_end256;

步骤3:将每个符号对应的频数存入新的寄存器组输出得到排序结果:把符号0的频数FREQ_00存入FREQ_NEW_SORT[sum_end0]中,把符号1的频数FREQ_01存入FREQ_NEW_SORT[sum_end1],…,把符号256的频数FREQ_256存入FREQ_NEW_SORT[sum_end256],再把FREQ_NEW_SORT寄存器组输出就得到排序结果,完成排序。