7 segment display

Joined
Nov 7, 2008
Messages
1
Reaction score
0
hello im new to the forum
i am having problems implementing a 7 segment display to a predesigned adder, i do not require homework help but any feedback or a solution would be a great help

my code is as follows


library ieee;

use ieee.std_logic_1164.all;

-- definition of a full adder

entity FULLADDER is

port (a, b, c: in std_logic;

sum, carry: out std_logic);

end FULLADDER;

architecture fulladder_behav of FULLADDER is

begin

sum <= (a xor b) xor c ;

carry <= (a and b) or (c and (a xor b));

end fulladder_behav;



-- 4-bit adder

library ieee;

use ieee.std_logic_1164.all;



entity FOURBITADD is

port (e, f: in std_logic_vector(3 downto 0);

Cin : in std_logic;

Cout: out std_logic;
bcd: out std_logic_vector (3 downto 0);
segment: out std_logic_vector (6 downto 0));

end FOURBITADD;



architecture fouradder_structure of FOURBITADD is

signal g: std_logic_vector (4 downto 0); -- the carry
signal sum : std_logic_vector ( 4 downto 0); -- sum



component FULLADDER

port(a, b, c: in std_logic;

sum, carry: out std_logic);


end component;


begin

FA0: FULLADDER

port map (e(0), f(0), Cin, sum(0), g(1));

FA1: FULLADDER

port map (e(1), f(1), G(1), sum(1), g(2));

FA2: FULLADDER

port map (e(2), f(2), G(2), sum(2), g(3));

FA3: FULLADDER

port map (e(3), f(3), G(3), sum(3), g(4));

-- V <= c(3) xor c(4);

Cout <= g(4);

bcd <= sum;
begin
process (bcd)
begin
case bcd is
when "0000" => segment < = "1111110";
when "0001" => segment < = "0110000";
when "0010" => segment < = "1101101";
when "0011" => segment < = "1111001";
when "0100" => segment < = "0110011";
when "0101" => segment < = "1011011";
when "0110" => segment < = "1011111";
when "0111" => segment < = "1110000";
when "1000" => segment < = "1111111";
when "1001" => segment < = "1110011";
when others => segment < = "0000001";
end case;
end process;

end fouradder_structure;



any help would be great

Stevie
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,994
Messages
2,570,223
Members
46,810
Latest member
Kassie0918

Latest Threads

Top