EDA与VHDL实现8位加法器 联系客服

发布时间 : 星期六 文章EDA与VHDL实现8位加法器更新完毕开始阅读3ffe618d79563c1ec5da71c8

实现8位加法器VHDL程序。

LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;

ENTITY 8f_add IS PORT (x0,x1,x2,x3,x4,x5,x6,x7: IN STD_LOGIC; y0,y1,y2,y3,y4,y5,y6,y7: IN STD_LOGIC; add_in: IN STD_LOGIC; add_out:OUT STD_LOGIC;

summ0,summ1,summ2,summ3: OUT STD_LOGIC; summ4,summ5,summ6,summ7: OUT STD_LOGIC); END ENTITY 8f_add;

ARCHITECTURE 8fadd OF 8f_add IS COMPONENT f_add IS

PORT (x,y,add_in:IN STD_LOGIC; a_out,summ:OUT STD_LOGIC); END COMPONENT f_add;

SIGNAL a,b,c,d,e,f,g: STD_LOGIC; BEGIN

u0:f_add PORT MAP (x=>x0,y=>y0,add_in=>,a_out=>a,summ=> summ 0); u1:f_add PORT MAP (x=>x1,y=>y1,add_in =>a,a_out=>b,summ => summ 1); u2:f_add PORT MAP (x=>x2,y=>y2,add_in =>b,a_out=>c,summ => summ 2); u3:f_add PORT MAP (x=>x3,y=>y3,add_in =>c,a_out=>d,summ => summ 3); u4:f_add PORT MAP (x=>x4,y=>y4,add_in =>d,a_out=>e,summ => summ 4); u5:f_add PORT MAP (x=>x5,y=>y5,add_in =>e,a_out=>f,summ => summ 5); u6:f_add PORT MAP (x=>x6,y=>y6,add_in =>f,a_out=>g,summ => summ 6); u7:f_add PORT MAP (x=>x7,y=>y7,add_in =>g,a_out=>,summ => summ 7); END ARCHITECTURE 8fadd;

四 实训总结与体会

加法器是产生数的和的装置。加数和被加数为输入,和数与进位为输出的装置为半加器。若加数、被加数与低位的进位数为输入,而和数与进位为输出则为全加器。全加器可以由两个半加器和一个或门连接而成。设计全加器之前,必须首先设计好半加器和或门电路,把它们作为全加器内的元件,再按照全加器的电路结构连接起来,从而得到全加器电路,再利用级联方法构成8位加法器。

短暂的两周实训已经过去,对于我来说这两周的实训赋予了我太多实用的东西了,不仅让我更深层次的对课本的理论知识深入了理解,而且还让我对分析事物的逻辑思维能力得到了锻炼。通过此次实训,我对例化语句有了更深刻的认识,了解了例化语句的格式、功能以及应用,能够利用例化语句进行简单的层次化设计。同时对于加法器的设计有了一定的了解,能够使用半加器完成到全加器的设计。不仅巩固了以前学过的知识,而且还学到了怎样运用EDA设计8位加法器的整个过程和思路,同时也提高了我们的思考能力的锻炼,这次实训为我今后的学习和工作打下了基础。

4