基于ALTERA设计的BCD译码的实现_移位加3算法(含代码)

上一篇 / 下一篇  2017-05-15 17:50:53

BCD译码是指将二进制数,转换成BCD格式。如当cnt_s值为10时,也就是8’b00001010,转换成个位值为4’b0000,十位值为4’b0001。这个转换过程就是BCD译码。


此处介绍二进制转BCD码的硬件实现,采用左移加3的算法,具体描述如下:(此处以8-bit 二进制码为例)

 

1、左移要转换的二进制码1位  

2、左移之后,BCD码分别置于百位、十位、个位  

3、如果移位后所在的BCD码列大于或等于5,则对该值加3 

4、继续左移的过程直至全部移位完成


举例:将十六进制码0xFF转换成BCD码

1492066477139689.png


本模块的信号列表如下:

信号名

I/O

位宽

说明

rst_n

I

1

系统复位信号,低电平有效

clk

I

1

系统工作时钟50M

din

I

32

输入要译码的数据

din_vld

I

1

输入数据有效指示信号

dout

O

12

输出的BCD数据,共12比特,每4比特一组,分别表示百、十、个位的值

dout_vld

O

1

输出数据有效指示信号


代码资料下载:http://pan.baidu.com/s/1c2b31le


相关阅读:

TAG: Altera altera FPGA fpga 算法 ALTERA BCD

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2017-06-25  
    123
45678910
11121314151617
18192021222324
252627282930 

数据统计

  • 访问量: 266
  • 日志数: 2
  • 建立时间: 2017-04-18
  • 更新时间: 2017-05-23

RSS订阅

Open Toolbar