How to create a Binary to Binary Coded Decimal (BCD) converter? | Xilinx FPGA Programming Tutorials

Поделиться
HTML-код
  • Опубликовано: 15 сен 2024

Комментарии • 23

  • @thebullybuffalo
    @thebullybuffalo 4 года назад +2

    I would recommend an improvement to this code: set the shift register BACK to zero after the conversion is done in the last 'if' block
    shift_register [19:8] = 0;
    This will avoid the shift register continually continuing up to a larger and larger number every time the 8-bit number changes. This, I think, will save data/time as the number of times the changes will continually increase
    Great video. The verbosity in your code made it easier to follow. Very clear!

  • @SK17470
    @SK17470 2 года назад

    Thank you!

  • @user-gf3tj2vd9d
    @user-gf3tj2vd9d 2 года назад

    Thank for your clear explanation, I learned a lot.
    Will the code design by finite state machine better? Because your code mixing sequential circuits and combination circuits in one block.
    Looking forward to your reply🥹

  • @profsinner4613
    @profsinner4613 Год назад

    If you could post videos about PISP, PIPO, and SIPO that would appreciated.

  • @curtisnotestine3134
    @curtisnotestine3134 4 года назад +1

    In the first if statement: "if (i==0 & (OLD_eight_bit_value != eight_bit_value)) begin" why do you assign the temp_* values to the upper bits of the shift_register? This is confusing. Why not assign to all 0's which is what they should be at the beginning of the binary to BCD conversion? Thank you for the tutorial!

  • @mukulsharma8616
    @mukulsharma8616 6 лет назад +1

    Plz make a vedio about digital alarm clock.

    • @SimplyEmbedded
      @SimplyEmbedded  6 лет назад

      Hi Mukul, I'll keep it in mind, no promises right now. Thanks for the request!

  • @OkoIyae6
    @OkoIyae6 Год назад

    I used this algorithm successfully in verilog but when I tried adapting it to vhdl I haven't been successful, anyone know why?

  • @sheema_1935
    @sheema_1935 4 года назад +1

    do we need a testbench to run our code ?

    • @sheema_1935
      @sheema_1935 4 года назад

      Felix Alexander i can use a vector waveform to test it actually if the fpga is not available

    • @sheema_1935
      @sheema_1935 4 года назад

      Felix Alexander yes you can input some values but there is no need to create a testbench to run the waveform

  • @SimplyEmbedded
    @SimplyEmbedded  6 лет назад +1

    Hope you enjoyed this tutorial! Let me know what was something you learned through this video!

    • @mukulsharma8616
      @mukulsharma8616 6 лет назад +1

      Your videos are simply great knowledge pack.
      Just a suggestion, use cursor highlight 👍👌

    • @SimplyEmbedded
      @SimplyEmbedded  6 лет назад +1

      Thank you so much, I'll use it for future videos (I've already done the next one, but after that, for sure). Thank you again, means a lot!

  • @sajeewadilshan
    @sajeewadilshan 4 года назад

    hello!
    could you tell me why addition by 3 is necessary for when one's, ten's or hundred's place is greater than or equal to 5?

    • @joseisaacgallegosvelica9808
      @joseisaacgallegosvelica9808 3 года назад +5

      I had the same question.
      Turns out that this algorithm its called Double Dabble. Every time you shift, the number its doubled. When you have something equal or greater than 5 in a nibble, after the shift the value in that nibble will be greater than 9. When this happen you want to carry a bit to the next nibble. So before the shift you add 3 because after the shift it will became a 6, which means the next nibble will receive the carry and the current nibble will retain the residue.
      Hope this will be helpfull for someone :3

  • @hardikmakwana9394
    @hardikmakwana9394 3 года назад

    if 2's compliment 8 bit binary number is there than what changes should I do in the above code? I want to make 2's compliment 8 bit binary to BCD converter in verilog. In 2's Complement 8 bit number, MSB [bit 7] is sign bit.

    • @tayurena685
      @tayurena685 Год назад

      Did you made it? I'm searching for the same thing

  • @asmaulhusna7079
    @asmaulhusna7079 3 года назад

    What is the shift register value to be given for 12 bit integer?

    • @chaiinito9092
      @chaiinito9092 3 года назад

      I'm having the same problem, I recreate the example of the table, but with a integer of 3500, I think the shift register should be 28 bit long, eventhough don't know how big i counter should get, if someone know please let me know

    • @blckroseimmortal
      @blckroseimmortal 3 года назад

      @@chaiinito9092 in theory it should work the same, 16bit is complemented by 2 so it should work. 12bit isn't so stick to the powers of 2 in terms of bits.

  • @thebullybuffalo
    @thebullybuffalo 4 года назад

    it's REPresents. not REEPresents. lol 1:04 1:13

  • @OkoIyae6
    @OkoIyae6 Год назад

    I used this algorithm successfully in verilog but when I tried adapting it to vhdl I haven't been successful, anyone know why?