- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目 录
一 、设计目的………………………………………………………………… 1
二 、设计要求………………………………………………………………… 1
三 、设计内容………………………………………………………………… 1
3.1、除法的实现………………………………………………………… 1
3.2、设计框图…………………………………………………………… 1
3.3、功能说明…………………………………………………………… 1
3.4、VHDL程序源代码………………………………………………… 2
3.5、VHDL程序说明…………………………………………………… 3
四 、原理图和印刷板图……………………………………………………… 4
PCB板图………………………………………………………… 4
Protel 原理图…………………………………………………… 5
五、设计结论…………………………………………………………………… 6
六、设计心得体会……………………………………………………………… 6
七、主要参考文献……………………………………………………………… 7
设计目的
掌握电子电路的一般设计方法和设计流程;
学习使用PROTEL软件绘制电路原理图及印刷板图。
设计要求
设计一个四位二进制除法器,具体要求如下:
1. 用键盘输入两个四位二进制数,并用数码管显示输入数。
2.按除法键即显示相除结果。
3. 除数为零时,数码管黑屏,不显示任何内容。
设计内容
设计过程
要想实现四位二进制除法器,必须首先实现除法的功能。
除法实现的方案可以用VHDL语言实现。
整个四位二进制除法器包括:输入电路,判断电路,除法电路,译码电路和显示电路。这些电路可以分别进行设计。
设计框图
3.各个模块的功能说明
整个四位二进制除法器的实现可以分为以下5个部分:
输入电路:输入两个4位2进制数A和B。它是通过连着高电平的8个开关来实现的。
判断电路:判断B是否为0。它是通过1个5输入同或门实现的。如果 B为0,输出端输出高电平,使能端除法器不工作,显示器黑屏。
除法电路:由VHDL语言实现的。它实现两个4位2进制数相除,并输出商y和余数r.
译码电路:由VHDL语言实现的。它实现两个4位2进制数相除,并输出商y和余数r.
显示电路:将译码器译成的数用数码管显示出来。
4.VHDL程序源代码
除法源代码
Library ieee;
Use ieee.std_logic_1164.all;
Entity divider is
Generic (n: integer :=3);
Port( a, b : in integer range 0 to 15;
y:out std_logic_vector ( 3 downto 0);
rest:out integer range 0 to 15;
err:out std_logic);
End divider ;
Architecture rtl of divider is
Begin
Process (a,b)
Variable temp1:integer range 0 to 15;
Variable temp2:integer range 0 to 15;
Begin
temp1:=a;
temp2:=b;
if(b=0)then err =’1’;
Else err=’0’;
End if;
For I in n downto 0 loop
If (temp1=temp2*2**i) then
y(i) =‘1’;
temp1:=temp1-temp2*2**i;
Else y(i)= ‘0’;
End if;
End loop;
Rest =temp1;
End process;
End rtl;
5.VHDL程序说明
假设要计算Y=A/B,其中 A 和 B 有相同的位数4位。假设A=“1011”,B=“0011”。我们希望得到的运算结果是Y=“0011”和余数“0010”。
分析商的计算方法。首先对A和B进行比较。如果前者大于后者,则Y为‘1’,然后将A减去B;否则Y=‘0‘;再进入下一行。当n+1次迭代之后,计算完成,剩下的A就是余数。
让B乘以2的n次幂相当于将B向左移n位,所以新的B矢量比原矢量长n位。如果A比新的B更大,则Y(n)取值为1,然后将A减去B(移位后的);否则Y=0;此后进行新的迭代。 将B乘以2的n-1次幂相当于将B向左移n-1位,,或将刚才计算时用到的值想右移1位。然后再将它和A比较,重复前面的步
您可能关注的文档
- 关于拉氏不变量_薛鸣球介绍.pdf
- 异丁烯的生产工艺和技术进展.doc
- 深入Linux内核网络堆栈详解.pdf
- 中小企业IP电话解决方案及实例.doc
- 精锐G2130红光条形码扫描枪要领.ppt
- 第七章 中文地址翻译规则.docx
- 第二章 Hibernate自动生成实体类注解.doc
- 数据库课后作业概论.doc
- 数字数据模拟信号编码.docx
- 计算机网络第3讲 局域异步通信.ppt
- 2023年江苏省镇江市润州区中考生物二模试卷+答案解析.pdf
- 2023年江苏省徐州市邳州市运河中学中考生物二模试卷+答案解析.pdf
- 2023年江苏省苏州市吴中区中考冲刺数学模拟预测卷+答案解析.pdf
- 2023年江苏省南通市崇川区田家炳中学中考数学四模试卷+答案解析.pdf
- 2023年江西省吉安市中考物理模拟试卷(一)+答案解析.pdf
- 2023年江苏省泰州市海陵区九年级(下)中考三模数学试卷+答案解析.pdf
- 2023年江苏省苏州市高新二中中考数学二模试卷+答案解析.pdf
- 2023年江苏省南通市九年级数学中考复习模拟卷+答案解析.pdf
- 2023年江苏省南通市海安市九年级数学模拟卷+答案解析.pdf
- 2023年江苏省泰州市靖江外国语学校中考数学一调试卷+答案解析.pdf
文档评论(0)