就是实例化设计文件,然后输入一些测试样例进行测试
并可以通过波形图查看结果
前几行都是在定义和实例化设计文件的内容
第7行,initial之后就是开始模拟测试,仿真
这里是用随机数种子进行仿真
重复100次,每次间隔10个单位
这里就是人为输入,定义测试样例
最后测试结束要用$stop
选择器
s信号对w0,w1进行选择
对于与门,确定信号为1的那个,就是无影响,否则就是断路
这个就是两位二进制形成组合,00,01,10,11
即s0,s1对其完成选择,组合后完成选择,只用选一次
另一种是先根据s0选一次,再根据s1选一次,即
w1对w2和w2的非完成一次选择
所谓修正的真值表,就是合并同类相,找出决定输出的、在变的那个(输出跟着它一起变,在前提条件不变的情况下)
w2和
nxk纵横开关
让任何一个输入可以连接到任一个输出
加法器中
进位是两个数的与
本位是两个数的异或
异或就相当于每位的不进位加法
每位相当于三个数加,即本位的两个加数和来自上位的进数,那就是想让两个加,加出来一个进数和位数,再让位数和来自上位的进数加,并尝试得到这俩对于下位的进数,最后让这俩的下位进数和原始的下位进数进行或,即有1就行,因为三数相加不可能出3,最多就是本位用掉2,然后下位进1,前面如果都是1,那么异或后就是0,过下面的与门必为0,但做不进位加法时,产生进位为1,所以或完仍是1
进位就是要么来自直接的两位相与,要么就是不进位加完后再与进位与
01时,与完是0,不进位加法为1,若有进位1,则进数为1
11时,与完是1,不进位加法为0,若有进位1,不改变进数
三数相异或,即为每位上的数
每位上的进数,可能有两个来源,一个是直接与出来(产生),一个是通过上位(传递)
将m个D触发器串接起来
LOAD/移位信号作为选择信号,在不同位里进行选择,每个选择器选择的信号里,一个是预备的信号ND,一个是来自上位的信号 ,即选择就是在选择,到底是用预备的信号,还是用来自上位的信号
然后上一位的输入是下一位的输出
SERIN是输入进去的Q信号序列,应该有N位
并入并出/并入串出
使能端就相当于总开关
这个是说,w1与w1的非完成一次选择,为w1时选择为w2&w3,为其非时选择w2+w3,所以就需要得到这俩信号,这俩信号怎么得?就再次香浓展开,后面得到啥就是啥
连接到侧端就表明是选择信号,连接到尾部就是被选择的两个信号,且上面的是非时选择,下面的是w时选择
香浓展开定理就是关于选择的定理,提出来的那一项就是选择信号,而被选择的就是括号里的一坨,化简出来是啥就是啥,不用理解,接下来就是凑出里面的信号即可
越先提出来的信号越再最后,即越展开电路延申地越长
译码器
译码器就是把信号翻译成独热编码,就是这个二进制数是几,1就在第几位
2个码能产生4位独热编码,当用到第3个码(即第3个码上有位数)时,就一定会用到4,5,6,7位的热码,没有用到时不需要,然后依然是对称的情况,只不过独热向前移了4位,
选择的过程就是结果复用,独热码统一移动几位的过程,然后在此基础上继续之前的过程,只不过位数变高了而已
计数器+组合逻辑电路
最大长度序列发生器
或的几项可以转为与非
也可香浓展开,也可提取化简,目的是要通过最少的门和最长路径长度