- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VHDL的8位除法器的实现
本文所采用的除法原理是:对于八位无符号被除数A,先对A转换成高八位是0低八位是A的数C,在时钟脉冲的每个上升沿C向左移动一位,最后一位补零,同时判断C的高八位是否大于除数B,如是则C的高八位减去B,同时进行移位操作,将C的第二位置1。否则,继续移位操作。经过八个周期后,所得到的C的高八位为余数,第八位为商。从图(1)可清楚地看出此除法器的工作原理。此除法器主要包括比较器、减法器、移位器、控制器等模块。
1 比较模块
设计中所用的八位比较器是由两个四位比较器级联而成的。比较器的原理是先对高位进行比较,如果不相等,则得出结论,否则,再对下一位进行比较。设计的四位比较器可以级联成任意位的比较器。比较器输出信号决定减法器是否进行减法运算。
2 运算控制模块
控制模块的主要在外部运算时钟和起始信号的作用下,产生控制其他模块所需的数据调用、运算同
步时钟以及乘法运算结束标志信号等。其VHDL语言描述如下:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY ARICTL IS———除法运算控制器
PORT(CLK,START:IN STD_LOGIC;
CLKOUT,RSTALL,ARIEND:OUT STD_LOGIC);
END ARICTL;
ARCHITECTURE BEHAV OF ARICTL IS
SIGNALSIGN:STD_LOGIC_VECTOR(3DOWNTO0);
BEGIN
RSTALL=START;
CLKOUT=CLK;
PROCESS(CLK,START)
BEGIN
IF START=1THEN———高电平清零计数器
SIGN=0000;
ELSIF CLKEVENT AND CLK=1THEN
IF SIGN8 THEN———小于八则计数,等于八则表
明运算已经结束
SIGN=SIGN+1;
END IF;
END IF;
END PROCESS;
PROCESS(CLK,SIGN,START)
BEGIN
IF START=0THEN
IF SIGN8 THEN———除法运算正在进行
ARIEND=0;
ELSE
ARIEND=1;———如果余数小于除数则运算结束, 否则,再进行一个周期的运算
END IF;
ELSE ARIEND=0;
END IF;
END PROCESS;
END BEHAV;
3 减法器
减法器接收比较器所输出的信号,如果AB,则进行减法,输出A-B,否则输出A,减法器的输出到移位器中进行循环。
4 移位器
这是除法器实现中的核心部分,主要实现数据的移位和最后结果的输出,其VHDL程序如下:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY REG16B IS
PORT(CLK,CIN,LOAD,ARIEND:IN STD_LOGIC;
A:IN STD_LOGIC_VECTOR(7 DOWNTO 0);
D:IN STD_LOGIC_VECTOR(7 DOWNTO 0);
QL,QH:OUTSTD_LOGIC_VECTOR(7 DOWNTO0));
END REG16B;
ARCHITECTURE BEHAV OF REG16B IS
SIGNALR16S:STD_LOGIC_VECTOR(15DOWNTO0);
BEGIN
PROCESS(CLK,LOAD,ARIEND)
BEGIN
IF(CLKEVENT AND CLK=1)THEN
IF(ARIEND=0)THEN
IF LOAD=1THEN———装载新数据
R16S(15DOWNTO0)(7DOWNTO0);
ELSIF(LOAD=0)THEN
R16S(15 DOWNTO 9)=D(6 DOWNTO 0);
R16S(8 DOWNTO 1)=R16S(7 DOWNTO 0);———数据左移
R16S(0)=0;———最后一位补0
IF(CIN=1)THEN———如果比较器的输出为1,则第二位值为1
R16S(1)=1;
END IF;
END IF;
ELSE
IF(CIN=1)THEN———最后余数如果大于除数则再进行一次减法
R16S(15 DOWNTO 8)=D(7 DOWNTO 0);
R16S(7 DOWNTO 0)=R16S(7 DOWNTO 0)+1;———商加1
END IF;
END IF;
END IF;
END PROCESS;
QH=R16S(15 DOWNTO 8);———余数的输出
QL=R1
您可能关注的文档
- “十二五”山东旅游信息化建设发展思路.doc
- “中国舞蹈考级”第一级教材.doc
- 《JAVA语言程序设计》期末考试试题及答案2(应考必备题库).doc
- 《理工科本科生毕业论文(设计)_正文及参考文献的撰写规范》.doc
- 《绿色中国》2006年改版启事.doc
- 《拳皇13》游戏出招表.doc
- 《药品经营许可证》(零售)发证.doc
- 《英语单词拼读规则表》.doc
- 【司法考试】河北省2009年人身损害赔偿标准及计算公式.doc
- 【图文免】)Kingston DataTraveler G2 4G量产教程2.doc
- 行政伦理学作业答案(完整版) .pdf
- 1.3《庖丁解牛》课件 统编版高中语文必修下册.pptx
- 4.3海-气相互作用课件 高中地理人教版(2019)选择性必修一.pptx
- 2-2-4 地表形态的变化(流水作用)课件 高中地理湘教版(2019)选择性必修一.pptx
- 4.1 陆地水体及其相互关系—以“探究沙漠奇观月牙泉的水体类型”为例 课件 高二上学期 地理 人教版(2019)选择性必修一.pptx
- 5.1自然环境的整体性(第1课时)(课件)高二地理(人教版2019选择性必修1).pptx
- 10.《老人与海(节选)》课件 统编版高中语文选择性必修上册.pptx
- 3.2.1气压带风带与气候课件 高中地理湘教版(2019)选择性必修一.pptx
- 2025年广东中考道德与法治专题复习-专题六 学习模范人物 感受榜样力量.pptx
- 2025年广东中考道德与法治专题复习-专题一 跟进时代步伐 奋进强国之路.pptx
文档评论(0)