# Binary to BCD in VHDL - vhdl

This is a discussion on Binary to BCD in VHDL - vhdl ; Hello all. I'm very new to VHDL and stuck with a simple task. This code should convert binary number to BCD number using shift and add3 algoritam http://www.engr.udayton.edu/faculty/...in_to_BCD.html After this code executes I always get &quot;0000&quot; in digit and unit ...

1. ## Binary to BCD in VHDL

Hello all.
I'm very new to VHDL and stuck with a simple task.
This code should convert binary number to BCD number using shift and add3
algoritam
http://www.engr.udayton.edu/faculty/...in_to_BCD.html

After this code executes I always get "0000" in digit and unit :-(

You don't have to ****yze the whole code, just tell me what is generally
wrong. Thank you people!

variable temp: bit_vector(7 downto 0) := "00011000"; --24 (10)
variable unit: bit_vector(3 downto 0) := "0000";
variable digit: bit_vector(3 downto 0):= "0000";
begin
for i in 0 to 7 loop
digit := digit sll 1;
digit(0) := unit(3);
unit := unit sll 1;
unit(0) := temp(7);
temp := temp sll 1;
--This is the part where I add 3, is there any other way? It must work
on FPGA
case digit is
when "0101" => digit := "1000";
when "0110" => digit := "1001";
when "0111" => digit := "1010";
when "1000" => digit := "1011";
when "1001" => digit := "1100";
when others => digit := digit;
end case;

case unit is
when "0101" => unit := "1000";
when "0110" => unit := "1001";
when "0111" => unit := "1010";
when "1000" => unit := "1011";
when "1001" => unit := "1100";
when others => unit := digit;
end case;
end loop;

2. ## Re: Binary to BCD in VHDL

I see two problems:

1) Third line from the bottom: "unit := digit" -> "unit := unit"
2) The web page talks about "hundreds" too. The line "digit := digit sll
1;" in your code seems to lose some bits.

-Michael.

3. ## Re: Binary to BCD in VHDL

NA wrote:

> --This is the part where I add 3, is there any other way? It must work
> on FPGA

you could use a function to avoid code duplication, like I've used in my

--
Frank Buss, fb@frank-buss.de
http://www.frank-buss.de, http://www.it4-systems.de

4. ## Re: Binary to BCD in VHDL

Thank you both !

5. ## Re: Binary to BCD in VHDL

Hello, I was wondering if you could run the code.
Sorry if my English is bad, I am using machine translation.
Thanks!

6. ## Re: Binary to BCD in VHDL

pls I need a vhdl code for 16 bit binary to bcd converter urgently.

thanks and regards
gigs