首页 » 科学 » Hello FPGA! 编码器、译码器、数据选择器、数值比较器、加法器_编码器_暗记

Hello FPGA! 编码器、译码器、数据选择器、数值比较器、加法器_编码器_暗记

神尊大人 2024-11-07 17:04:26 0

扫一扫用手机浏览

文章目录 [+]

1)定义:编码器便是人与电子设备之间的一座沟通的桥梁。
比如打算机的键盘,它上面有很多符号,ABCD....、012345.......,这是都是一些特定的信息,但是对付打算机来说,它并不认识什么是A、什么是B、什么是1234,它只认识0和1。
因此,我们便利用0和1组成的代码来表示这些特定的字母和数字,例如用01000001来表示字母A。
建立这种代码与信息逐一对应关系的过程称为编码,完成这种编码的电路便叫做编码器。
生活中常常碰着的,遥控器上的键盘输入、密码锁、银行出纳台上密码输入都属于编码器。

2)种类:互斥编码器和有限优先编码器。
所谓互斥编码器,便是任何时候只许可一个输入旗子暗记有效,否则将产生缺点输出。
优先编码器,便是许可多个输入旗子暗记同时有效,但是输出是对优先级别高的输入旗子暗记进行编码。

Hello FPGA! 编码器、译码器、数据选择器、数值比较器、加法器_编码器_暗记 Hello FPGA! 编码器、译码器、数据选择器、数值比较器、加法器_编码器_暗记 科学

3)8-3互斥编码器:便是可以实现3位二进制代码对8个旗子暗记进行编码的电路,那么这个电路该当有8个输入、3个输出。

Hello FPGA! 编码器、译码器、数据选择器、数值比较器、加法器_编码器_暗记 Hello FPGA! 编码器、译码器、数据选择器、数值比较器、加法器_编码器_暗记 科学
(图片来自网络侵删)

4)8-3优先编码器:

在74148里,输入旗子暗记为I0(非)~I7(非),输出旗子暗记为A0(非)~A2(非),并且它们都是低电平有效。
在输入旗子暗记中I7(非)的优先级最高,I0(非)的优先级最低。
74148这个芯片的输入管脚还增加了一个EI(非),输出管脚增加了EO、GS(非)。
EI(非)作为使能输入端利用,掌握芯片的事情状态,低电平为事情,高电平为不事情;EO为扩展输出端,高电平有效,用于多个芯片连接扩展;GS(非)为编码器的事情标志,低电平表示这个编码器在正常事情,高电平表示这个编码器没有在正常事情。

5)互斥编码器的Verilog代码

begin、end是成对涌现的,可以看做C措辞中的{ },只要被begin和end包围起来的语句,它们都是顺序实行的。
被module和endmodule包围起来的语句,它们都是并行实行的。
例如,如果一个begin和end中有两条语句,那么这两条语句在前面的先会被实行,实行完前面的语句之后才会去实行后面的语句。
如果一个module和endmodule中有两个always模块,那么这两个always模块是没有先后顺序的,它们是同时实行的。

6)优先编码器的Verilog代码

7)16-4优先编码器

2、译码器

1)定义:在编码时,每一组代码都具有特定的含义,即表示一个确定的信息,而译码则是编码的逆过程,是把每一组代码的含义翻译出来,完成译码功能的逻辑电路就被称为译码器,译码器常日用于打算机中对存储单元的地址的译码。

2)3-8译码器

3)译码器的Verilog代码

4)七段显示译码器——数码管

驱动七段数码管显示的译码器称为BCD七段显示译码器,常日它将BCD码变成十进制数并在数码管上显示出来。
该译码器有4个输入端和7个输出端。
前者输入待显示的BCD码,后者分别接到七段数码管对应的接线端,每输入一组BCD码,译码器便会有确定的旗子暗记从输出端输出。

3、数据选择器

1)所谓数据选择器,便是从多个输入的逻辑旗子暗记中选择一个逻辑旗子暗记输出,实现数据选择功能的逻辑电路便称为数据选择器。
数据选择器也称为多路复用器,它的浸染相称于多个输入的单刀多掷开关。

2)8-1数据选择器

3)数据选择器的Verilog代码

4、数值比较器

1)定义:所谓数值比较器,便是对两个数A、B进行比较,以判断其大小的逻辑电路。
比较结果有A>B、A=B、A<B这三种情形,这三种情形仅有一种其值为真。

2)1位数值比较器

3)4位数值比较器

4)4位数值比较器的Verilog代码

5、加法器

1)半加器:加法器可以分为半加器和全加器。
如果仅仅考虑两个一位二进制数A和B相加,而不考虑低位的进位,则称为半加,实现半加运算的电路叫做半加器。
半加器有两个输入端A和B,两个输出端S和C,个中S为和,C为向高位的进位。

2)全加器

3)4位二进制全加器的Verilog代码

从上面的代码中我们可以看出,该代码是没有考虑进位和溢出情形的,当相加结果超过4'hF时,最高位(进位输出)丢失。

Verilog HDL中绝大多数运算操作符都是可以直策应用的,比如:+(加)、-(减)、(乘)、/(除)、!
(逻辑非)、~(取反)、&(与)、~&(与非)、|(或)、~|(或非)、^(异或)、~^(同或)、%(取模)、<<(逻辑左移)、>>(逻辑右移)、<(小于)、<=(小于即是)、>(大于)、>=(大于即是)、==(即是)、!
=(不即是)、&&(逻辑与)、||(逻辑或)。

相关文章