ImageVerifierCode 换一换
格式:DOC , 页数:8 ,大小:86.50KB ,
资源ID:11891828      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-11891828.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(集成二-十进制转码器应用研究.doc)为本站会员(HR专家)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

集成二-十进制转码器应用研究.doc

1、 集成二-十进制转码器应用研究作者:(指导教师: 【摘 要】文中首先讨论了数字系统中的二-十进制(BCD)转码算法,接着讲述了基于TTL器件SN74185(集成转码器)的实现算法,以它们作为契机,研究了集成转码器SN74185 多片级联实现任意转码位数的扩展,并通过Quartus软件验证了集成转码器的转换。【关键词】二-十进制(BCD)转码器;SN74185; Quartus软件Integrated Binary to Decimal Converter applied researchAuthor:()Directed by :Abstract: The article first disc

2、usses the digital system (Binary - Decimal code -BCD transcoding algorithm),then tells the implementation algorithm of the SN74185 device based on TTL (integrated transcoder to) , use them as an opportunity and researches the SN74185 transcoder to multiple cascade to realize the expansion of transfe

3、rring any transcoding digits, and through the Quartus software can test and verify the integrated transfer of transcoder .Key words:binary to decimal (Binary Coded Decimal, BCD) converter, SN74185, Quartus0 引言二-十进制(BCD)转码器经常被用作数据的实时转换在电子测量系统中。在电子系统中的二-十进制(BCD)数制转换的实现方法有软件算法实现、硬件运算实现、基于数据查找表(Lookup T

4、able, LUT)的实现方式。二进制编码的十进制数,简称BCD码(Binary Coded Decimal). 这种方法是用4位二进制码的组合代表十进制数的0,1,2,3,4,5,6 ,7,8,9 十个数符。4位二进制数码有16种组合,原则上可任选其中的10种作为代码,分别代表十进制中的0,1,2,3,4,5,6,7,8,9 这十个数符。最常用的BCD码称为8421BCD码,8.4.2.1 分别是4位二进数的位取值。(4) ? +3:+0S1 3 S12 S1 1 S10 (4)? +3:+0S2 3 S22 S2 1 S2 0 (4)? +3:+0S33 S32 S3 1 S30 (4)?

5、 +3:+0S1 3 S12 S1 1 S1 0(4)? +3:+0S2 3 S22 S2 1 S20 (4)? +3:+0Si 3 Si 2 Si 1 Sii0bnbn-1b2b1bn-3bn-2bn-41 数字系统中的二十进制(BCD)码的转换算法图1二十进制(BCD)码转换算法示意图8421BCD 码是使用4 位二进制数表示1 位10 进制数(09),它的位权依次是8、4、2、1如果把n位二进制数据转换成m 位BCD 码(4*m 位)就要求m 位BCD 码所能表示的最大数不小于n 位二进制码所表示最大数,即10m 1 2n 1,m floorlg 2n 二十进制码转换算法如图1 所示,这

6、种转换算法包括3 个过程:、首先检查二进制数据的高三位,如果高三位数据 (bn,bn-1,bn-2)B 的值大于4,就需要加3,否则加0;得到s13:0=bn,bn-1,bn-2+3b011/3b000、再右移一位判断s12:0,bn-3四位二进制数据,如果这四位数据大于4,就需要加3,否则加0;最后可以得到:s23:0=s12:0,bn-3+4b0011/4b0000由于s12:0,bn-3的最大值也只有(1001)B,所以和数s2就不需要位数扩展(4 位)。、多次重复第步的运算,直至最后得到的每一位BCD 码的4 位二进制数不会大于(9)D/(1001)B。从以上的二十进制(BCD)码变换

7、算法中可以看到,二进制数据的最低位b1 不需要转换而直接输出;而且每个转换运算单元的低3 位输出数据始终不会大于(4)D/(100)B,这样就能够保证最后得到的每一位BCD 码不会大于(9)D/(1001)B,从而得到BCD 码的正确转换输出。表1将给出部分二进制数、十进制数和8421BCD数的对应关系表表1 二进制-十进制-BCD码二进制数十进制数8421BCD码数000000000000110001001020010001130011010040100010150101011060110011170111100081000100191001 1010100001 0000101111000

8、1 00011100120001 00101101130001 00111110140001 01001111150001 01012 二十进制(BCD)转码器的实现2.1、集成转码器SN74185的单片实现算法下图2是在Quartus中单片SN74185的应用图示:图2 SN74185 VCC G E D C B A Y8 16 15 14 13 12 11 10 9 1 2 3 4 5 6 7 8 Y7 Y6 Y5 Y4 Y3 Y2 Y1 GND SN74185图3 SN74185引脚图SN74185是TI(德州仪器)公司生产的TTL器件,它的功能是将二进制数转为5bit的BCD码数,例如

9、:(0100)B在Quartus软件中仿真如下图所示:图4 单片SN74185在Quartus中的仿真2.2、集成转码器SN74185的多片级联实现算法在单片SN74185的基础上我们用它来扩展实现图1 10-bit 二十进制(BCD)码转换器,如图5 所示将6片SN74185级联。图5所示的转码器与图1 的结构不同在于采用了5 位的转换单元而不是4位的基本单元(高3 转换单元的最高位输入接地),这样做的目的是为简化多位转码器的电路结构。每个转换单元(SN74185)的6 个输出位权依次是(20、10、5、4、2、1),因此也保证了每个转换运算单元的低3 位输出数据终不会大于(4)D/(100

10、)B,使最后得到的每一位BCD 码都不会大于(9)D/(1001)B;使用时要求转换单元(SN74185)的无用输入端作接地处理。假如需要转换的1位数据是(1110011011)B;每个转换模块完成输入二进制数据的位权转换,如图5所示,经过第一层数据转换后得到(10101111011);再依次经过后面第二层至第四层的数据转换,就得到各层次相应转换输出分别是:(10111000011)、(100011000011)、(0100100100011);第四层的转换输出就是十进制(BCD)码:(0100100100011)BCD=(923)D。这种二十进制(BCD)转码器虽然易于实现转换位数的扩展,但

11、还存在以下的不足之处:、实现转换的数据位数增多时,所需的转换单元(SN74185 芯片)数目显著增多(16-bit 转换需要16 片)、电路规模变大、结构复杂。、转换器中的芯片利用率较低,有部分的转换单元是当成3 位或4 位的转换单元使用,这势必造成芯片硬件资源的浪费。 第四层 第三层 第二层 第一层图5 10-bit二-十进制(BCD)转码器3转码器SN74185级联的实验验证转码器SN74185级联的实验验证也是通过Quartus软件模拟仿真的,下图6是在该软件中的页面截图,从图中明显的看出通过图5的方式把6片SN74185级联得到了10-bit二-十进制(BCD)转码器将(1110011

12、011)B转换为(0100100100011)BCD=(923)D,对比于表1 二进制-十进制-BCD码数,我们知道这种转化是准确无误的。图6 10-bit二-十进制(BCD)转码器的仿真4结语文中针对二十进制(BCD)转码器的实现,本文针对二-十进制(BCD)转码器在SN74185芯片上的实现给出了具体的算法和实现步骤,并在Quartus II 6.0软件工具上实现充分证明了这种设计思路的可行性。这种二-十进制(BCD)转码器设计利用芯片级联实现,为二-十进制转换提供了便利,不足之处在于当需要转换的数据较大、位数较多时,随级联芯片的增多,运算量会显著增加、硬件实现代价也较大;路径延迟也会增大、整个转换器的时序控制比较复杂。所以在二-十进制转换的实现上还需要不断探索。 参考文献1王迎春,吉利久. 一种基于简单移位的二十进制相互转换算法J 电子学报, 2003.2(Vol.31,NO.2): 221 - 224.2邬杨波, 胡建平, 李宏. 一种BIN码与BCD码转换电路的设计与实现J 信息技术, 2005.8: 33 35.3王庆春 何晓燕,基于FPGA 的二十进制转码器设计.

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报