9.23/24数电

关于模拟文件

就是实例化设计文件,然后输入一些测试样例进行测试

并可以通过波形图查看结果

9.23/24数电_第1张图片前几行都是在定义和实例化设计文件的内容

第7行,initial之后就是开始模拟测试,仿真

这里是用随机数种子进行仿真

重复100次,每次间隔10个单位

9.23/24数电_第2张图片这里就是人为输入,定义测试样例

最后测试结束要用$stop

电路分析

选择器

9.23/24数电_第3张图片

s信号对w0,w1进行选择

对于与门,确定信号为1的那个,就是无影响,否则就是断路

9.23/24数电_第4张图片

这个就是两位二进制形成组合,00,01,10,11

即s0,s1对其完成选择,组合后完成选择,只用选一次

另一种是先根据s0选一次,再根据s1选一次,即

9.23/24数电_第5张图片

 w1对w2和w2的非完成一次选择

9.23/24数电_第6张图片

9.23/24数电_第7张图片

所谓修正的真值表,就是合并同类相,找出决定输出的、在变的那个(输出跟着它一起变,在前提条件不变的情况下)

9.23/24数电_第8张图片

w2和

nxk纵横开关

让任何一个输入可以连接到任一个输出

加法器

加法器中

进位是两个数的与

本位是两个数的异或

异或就相当于每位的不进位加法

9.23/24数电_第9张图片

每位相当于三个数加,即本位的两个加数和来自上位的进数,那就是想让两个加,加出来一个进数和位数,再让位数和来自上位的进数加,并尝试得到这俩对于下位的进数,最后让这俩的下位进数和原始的下位进数进行或,即有1就行,因为三数相加不可能出3,最多就是本位用掉2,然后下位进1,前面如果都是1,那么异或后就是0,过下面的与门必为0,但做不进位加法时,产生进位为1,所以或完仍是1

进位就是要么来自直接的两位相与,要么就是不进位加完后再与进位与
01时,与完是0,不进位加法为1,若有进位1,则进数为1

11时,与完是1,不进位加法为0,若有进位1,不改变进数

三数相异或,即为每位上的数

每位上的进数,可能有两个来源,一个是直接与出来(产生),一个是通过上位(传递)

9.23/24数电_第10张图片 

移位寄存器

将m个D触发器串接起来 

9.23/24数电_第11张图片

LOAD/移位信号作为选择信号,在不同位里进行选择,每个选择器选择的信号里,一个是预备的信号ND,一个是来自上位的信号 ,即选择就是在选择,到底是用预备的信号,还是用来自上位的信号

然后上一位的输入是下一位的输出

SERIN是输入进去的Q信号序列,应该有N位

并入并出/并入串出

9.23/24数电_第12张图片9.23/24数电_第13张图片

使能端就相当于总开关

9.23/24数电_第14张图片

这个是说,w1与w1的非完成一次选择,为w1时选择为w2&w3,为其非时选择w2+w3,所以就需要得到这俩信号,这俩信号怎么得?就再次香浓展开,后面得到啥就是啥

连接到侧端就表明是选择信号,连接到尾部就是被选择的两个信号,且上面的是非时选择,下面的是w时选择 

香浓展开定理就是关于选择的定理,提出来的那一项就是选择信号,而被选择的就是括号里的一坨,化简出来是啥就是啥,不用理解,接下来就是凑出里面的信号即可

越先提出来的信号越再最后,即越展开电路延申地越长

9.23/24数电_第15张图片

9.23/24数电_第16张图片

译码器

译码器就是把信号翻译成独热编码,就是这个二进制数是几,1就在第几位 

9.23/24数电_第17张图片9.23/24数电_第18张图片

9.23/24数电_第19张图片

2个码能产生4位独热编码,当用到第3个码(即第3个码上有位数)时,就一定会用到4,5,6,7位的热码,没有用到时不需要,然后依然是对称的情况,只不过独热向前移了4位,

9.23/24数电_第20张图片

选择的过程就是结果复用,独热码统一移动几位的过程,然后在此基础上继续之前的过程,只不过位数变高了而已

序列发生器

计数器+组合逻辑电路

最大长度序列发生器

或的几项可以转为与非

9.23/24数电_第21张图片

也可香浓展开,也可提取化简,目的是要通过最少的门和最长路径长度

你可能感兴趣的:(数电,fpga开发)