一个有意思的问题。

[size=10.5pt]

[size=10.5pt]设计[size=10.5pt]A[9:0]*101.10111[size=10.5pt]的电路,要求用尽可能少的门。
[size=10.5pt]   这个好像是一个很牛公司的笔试题。我想了很久,没有很好的答案。如果按照我的思路,估计整张试卷都画不完。
[size=10.5pt]   看看大家有啥好的注意。
我也来说两句 查看全部回复

最新回复

  • aoe (2008-9-23 23:22:33)

    是不是用左移右移再相加就可以实现。
  • qingchuyu (2008-9-24 08:43:25)

    INVIDIA的 ?
    貌似以前讨论过
  • feng1012 (2008-9-24 10:14:34)

    要从门级考虑,刚到公司时有培训过
    有用到Wallence tree和 Booth encoding
  • reset_n (2008-9-24 12:30:57)

    101.10111是10进制还是2进制呀?
  • reset_n (2008-9-24 12:36:49)

    QUOTE:

    原帖由 feng1012 于 2008-9-24 10:14 发表
    要从门级考虑,刚到公司时有培训过
    有用到Wallence tree和 Booth encoding
    题目要求用尽量少的门,而不是尽量快的速度,用wallece树那么多csa并行单元,一堆门了吧

    感觉直接 移位器+加法器就OK
  • qmdong (2008-9-24 22:33:22)

    可以看看CSD(canonic signed digit)常量乘法器!
    110 . 00 -1 00 -1
    就可以了!然后乘积项累加
    注意:根据A是否是有符号数,决定每个乘积项是否要符号扩展!
    乘累加用阵列或压缩器等。。。
    最后的两个用普通加法器就可以。

    [ 本帖最后由 qmdong 于 2008-9-25 09:35 编辑 ]
  • zoneinter (2008-9-25 09:40:01)

    感觉对于101来做并不会省100+1比110-100-1好
    考虑0.10111的部分
  • victor_wang (2008-9-25 09:53:49)

    这道题有问题吧,A的小数点位置 和 结果的 精度都没有给出来
    顶多就是给个思路 移位加吧
  • 3274196 (2008-9-25 14:43:04)

    我也想的是移位相加,但是要用好多门呢
  • 3274196 (2008-9-25 14:43:55)

    QUOTE:

    原帖由 reset_n 于 2008-9-24 12:36 发表


    题目要求用尽量少的门,而不是尽量快的速度,用wallece树那么多csa并行单元,一堆门了吧

    感觉直接 移位器+加法器就OK
    应该是2进制的
  • lulalu2006 (2008-9-25 14:51:53)

    设计A[9:0]*101.10111 ,我这样做:
    B[14:0]={A[9:0],00000} ;
    A[9:0]*101.10111  = = B[14:0] *10110111 ;
  • lulalu2006 (2008-9-25 14:53:19)

    最少逻辑:dff+加法器组成状态机,需要周期7个?较多逻辑,先选择,再相加?

    [ 本帖最后由 lulalu2006 于 2008-9-25 15:02 编辑 ]