目录git
a)17异步
b)-17函数
a: 对17展转相除,获得其二进制为010001,八进制为21,十六进制为0x11。注意二进制必须是010001,而不是10001,不能缺乏符号位ui
b: 根据17的二进制,-17的二进制数原码位110001,取反加一获得补码为101111,所以八进制为57,十六进制为0x2f编码
二进制转八进制,取三合一,二进制转十六进制,取四合一3d
ans=3*16^1+10*16^0=58code
格雷码是一种二值编码,相邻的编码之间只有一位的区别。所以与普通二进制码相比,在递增时出错几率更加小。下表是3bit的格雷码编码:blog
十进制 | 二进制 | 格雷码 |
---|---|---|
0 | 000 | 000 |
1 | 001 | 001 |
2 | 010 | 011 |
3 | 011 | 010 |
4 | 100 | 110 |
5 | 101 | 111 |
6 | 110 | 101 |
7 | 111 | 100 |
此外,因为格雷码中比特位变化比较少,与二进制码相比,使用格雷码的功耗更加低递归
奇偶校验位是在一串二进制码的最后添加的一位,它使得整个二进制串的1的个数为奇数或者偶数。所以奇偶校验分为两种,奇校验和偶校验。ip
计算校验位须要对二进制码中的1进行计数。若是1的数量为奇数,而且使用偶校验,则校验位为1,使得总体1的个数为偶数。若是1的数量为偶数,而且使用偶校验,则校验位为0,使得总体1的个数为偶数。奇校验相似。奇偶校验位能够经过对全部的比特位进行异或获得。
111001中1的个数为4个,因此校验位为1,带上校验位之后为1110011,1的个数为5,为奇数
BCD码也称二进码十进数,BCD码可分为有权码和无权码两类。其中,常见的有权BCD码有8421码、2421码、5421码,无权BCD码有余3码、余3循环码、格雷码。8421BCD码是最基本和最经常使用的BCD码,它和四位天然二进制码类似,各位的权值为八、四、二、1,故称为有权BCD码。
2的二进制位0010,7的二进制位0111,十进制27的8421BCD码为,00100111,二进制码为11011
通用门是能够实现任何布尔函数而无需使用任何其余门类型的门。 与非门或非门是通用门。
与门:
或门:
非门:
与门:
或门:
非门:
非门:
与门:
或门:
或非门:用或门和非门组成
与非门:用与门和非门组成
异或门:
一般被用于错误检测,例如,奇偶校验,CRC校验,ECC。异或门也能够用于伪随机数生成。
全部输入都为1
环形振荡器能够由奇数个非门组成,非门或者反相器链接成链后,最后一个输出反馈回第一个反相器。
三个反相器,信号须要通过两次反馈,即2*3个反相器,振荡频率为1/(6*2ps) = 1000/12 GHz = 83.33 GHz
时序电路分为两种,同步时序电路和异步时序电路
同步时序电路在适中的上升沿或者降低沿改变状态和输出值。常见的例子是flip-flop,在时钟边沿根据输入改变输出。
异步时序电路的状态和输出值是根据使能信号进行控制,这更加相似于一个带有反馈的组合逻辑。
创建时间是在时钟进行有效转换前数据信号应该保持稳定的最短期。
保持时间是在时钟进行有效转换后数据信号应该保持稳定的最短期。
时钟信号到达两个FF的时间差称之为clock skew(时钟偏斜)
例如图中两个FF的时钟,虽然是同一个时钟源,可是因为走线的延迟,致使a的时钟比b的快。
创建时间约束为 $t_{clk-q}+t_{plogic}+t_{setup}<=T$ ,即 $T>=25ns$ ,最大工做频率为40Mhz
触发器和锁存器都是存储信息的基本单元。一个触发器或者锁存器可以存储一bit的信息。二者的主要不一样点是,触发器只在时钟上升沿或者降低沿根据采样改变输出,而锁存器在enable信号拉高期间都会跟随输入。
当输出取决于不一样信号的顺序或者时序时,被称为竞争。竞争能够分为两种
实际硬件中的竞争:以SR锁存器为例,当SR都是1的时候,输出为1,此时若是SR同时变成0,那么Q和Q'就会进入竞争的状况。能够经过添加合适的逻辑避免。
仿真行为中的竞争:例以下面的代码
always @(posedge clk or posedge reset) if (reset) X1 = 0; // reset else X1 = X2; always @(posedge clk or posedge reset) if (reset) X2 = 1; // reset else X2 = X1;
因为使用了阻塞赋值,便会发生竞争的状况,经过改成非阻塞赋值能够解决
T触发器,T为0时输出不变,1时翻转。写出真值表就能看出来,将输入和Q异或再输入到D端。
J=D,K=D'
行波进位加法器:
结构相似于咱们拿笔在纸上作加法的方法。从最低位开始作加法,将进位结果送到下一级作和。因为本级的求和须要等待前一级的进位结果才能够获得,因此对于两个N-bit的求和。即便有N个一位的全加器,也须要N个延迟。
超前进位加法器:
事实上,在如下两种状况中,Ci=1:
其对应的表达式为
递归后
能够看出每一级的进位信号能够不经过上一级的结果产生,只与输入有关系。所以减小了时间。
一个FF存储一bit信息,所以须要32个FF。
mealy型FSM的输出和当前的状态以及当前的输入有关系。
moore型FSM的输出只和当前的状态有关系。
2^3 < 9 < 2^4,所以是4个
二分频:
四分频: