码迷,mamicode.com
首页 > 其他好文 > 详细

CSD编码

时间:2016-11-05 20:28:49      阅读:2112      评论:0      收藏:0      [点我收藏+]

标签:data   估计   还需   end   还需要   技术分享   add   color   mod   

有符号数(Signed Digit Number , SD)

  1. SD编码

1、有三重值 {0,1,-1}

2、应用在不用进位的加法器或乘法器中能够降低复杂性

因为通常可以通过非零元素的数来估计乘法的工作量,而应用SD表示法可以降低乘法的工作量。统计表明,数字的二进制补码中有一半数字是零,对于SD码,零元素的密度增加到三分之二

3、SD表示方法不是唯一的

举例如下:用SD表示十进制数15(15=1111 16=10000)

15=16-1  = 1000(-1)

15=16-2+1  = 100(-1)1

15=16-4+3  = 10(-1)11

但是只有最少非零元素的系统才叫CSD(正则有符号数字系统:Canonic Signed Digit ,CSD)

 

下附网上搜到的图片(修改了一下)

技术分享

  2.最佳CSD编码

(1)从最低有效位开始,用10。。。0(-1)取代所有大于2的1序列,此外还需要用110(-1)取代1011

(2)从最高有效位开始,用011代替10(-1)

  3.分数CSD编码

 如求7*X/8

看成7=8-1可以更高效的实现

 1 /*-----------------------------------------------------------------------
 2 Author                        :        WHaoL
 3 Technology blogs            :        http://www.cnblogs.com/WHaoL/
 4                                 :        http://blog.chinaaet.com/eWorld
 5 Email Address                :        liangwenhao0603@163.com
 6 Filename                        :        CSD.v
 7 Data                            :        2016-08-04
 8 Description                    :
 9 modification history        :        
10 Data            By            Version            Change Description
11 =========================================================================
12 16/11/5        WHaoL        1.0                Original
13 =======================================================================*/
14 `timescale 1ns/1ns
15 module CSD (
16 input            [4:0]        x,
17 output         [4:0]        y0,y1,y2,y3
18 );
19 assign y0 = 7*x/8;
20 assign y1 = x/8*7;
21 assign y2 = x/2+x/4+x/8;
22 assign y3 = x-x/8;
23 
24 endmodule

技术分享

 

CSD编码

标签:data   估计   还需   end   还需要   技术分享   add   color   mod   

原文地址:http://www.cnblogs.com/WHaoL/p/6033342.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!