看板Programming
标 题Re: [问题] VERILOG/VHDL 现在用的除法
发信站KKCITY (Tue Dec 11 15:19:41 2007)
转信站ptt!ctu-reader!ctu-peer!news.nctu!netnews.chu!Leo.mi.chu!zoonews.ee.nt
※ 引述《[email protected] (洋葱)》之铭言:
> 请问各位大大 在VHDL中现在用的除法要怎麽写
> 听说只需要3-5行就可以写出来了~可是我怎麽找都找不到这总方法
以前需要写的时候没写出来,但是应该是用shift-and-subtract吧
简单的流程:
令被除数d,除数s,商q,暂存空间t,u,余数r
1: 令u=s
2: 把u左移 (left shift, SHL) 使与d的位数相等
3: 令t=d-u
4: 检查t的正负
若t为正:设q的LSB(最右边位元)为1,左移q一位,令d=t
若t为负:设q的LSB(最右边位元)为0,左移q一位
5: 右移u一位
6: 比较u和s
若u>=s:回到步骤3
若u<s:令r=d,结束
这当然还有很多精简空间,但是应该不能3-5行写出来
何况在VHDL中你还要自己写比较器、移位暂存器的
--
X-URL1: http://www.aviationnow.com/ ‧李登辉=格达费=外星人‧有厕
检举匪谍 人人有责 ⊙ 检举匪谍 安居乐业 人所
检举匪谍渗透破坏 人人安居乐业|肃清贪污经济犯罪 社会繁荣进步
破案奖金三百万|知情不报判徒刑
检举要件:请用真实姓名、地址,受理机关绝对保密
X-Disclaimer: 李登辉一定是外星人! Mk.22 Mod4 5/15/01 Mod3 6/9/98
--
┌─────◆KKCITY◆─────┐ KKCITY 市民小密技 -文章标题上- ◣
│ bbs.kkcity.com.tw │ Ctrl+y 可设定单篇文章加密
└──《From:59.115.209.59
》──┘ ◤ Shift+y 可设定单篇文章密码
--