第一次竞赛培训课,老师先是回顾了一下视频课里的内容。关于一些重点又强调了一下,比如说,不要用语法去凑功能,一定是先有电路,再用代码去描述。
关于描述电路
现阶段要实现的电路大都是下图中第二种,组合逻辑 + D触发器。
(这是老师手画图,hhh一目了然)
对于D触发器:clk是时钟信号,reset是清零/置位信号,关于reset信号容易出现的错误就是不把它当成reset信号忽略它的真实含义,这是老师严肃批评的一种做法,下面详细说明。
下面描述了一个异步D触发器。
always @ (posedge clk or negedge res_n)
if(~rst_n)
Q <= 0;
else
Q <= D;
注意当rst_n信号生效时,作用是给Q清零或者置位,所以这时给Q赋的值必须是常数。
要想 改成同步时序电路:把敏感信号中的rst_n删掉,如此一来就只能在clk的上升沿产生变化。
-
时序逻辑必须用 <= 来赋值。
-
在组合逻辑中只有if不写else是不行的,必须要把所有的情况都写全,因为如果有一种可能没写而电路走到了这种可能,就会保持不变。而组合逻辑没有记忆功能,不然就变成锁存器。(忘了锁存器是什么了,先不管了,用到再说,反正就是把所有可能都写上)
关于verilog的编写要注意
- 不能对某一个信号在多个always中赋值。
- 不能在一个always里对多个信号赋值。(但是如果电路相同可以给多个赋值)
- 描写电路的时候,要从每个小块的输出的角度来写,在写每个小块(
在我现在理解来就是每个always)的时候都要想着去实现什么功能,并且把赋值的信号当成每个小块的输出,就从这个输出的角度出发。 - 不要让随便哪个信号成为时钟信号。
啰嗦的话
这个老师真的,已经找不到词来描述他的优秀了。又细致又能提纲挈领,从他的语气中不仅能判断出这是一个洒脱勇敢的人,而且还感觉是山东老乡的亚子啊。
前几天刚看完台剧想见你,太好看了也,王诠胜也太符合在下的审美了。剧情一点都不狗血,本来还想“爱情悬疑剧”能拍出个啥,没想到第一天晚上就被反派诡异的笑容吓得睡不着觉。最后陈韵如真正的死因不仅不牵强,而且竟然让人有些共鸣?
看完我一直在想自己的这段感情,抛开所有所有的不谈,我真的快乐吗?我是不是被一些次要次要的东西迷惑了眼睛,所以觉得真正重要的东西反而可无可有呢。我从心里,我身上的每一个细胞都知道这个人是很好的人,这样继续下去未尝不是很好的归宿。可是我还太年轻了啊,在内心并不确定的情况下,怎么肯就这么安顿下来呢。
"NOT THAT DESPERATE YET. "
两个月前我认为的幸福跟现在理解的就已经大相径庭了。谁知道再几个月后,再几年后我又会怎么想呢。
每次回想这个过程,我都十分感激他为我做的一切一切。我也相信换了其他人一定不会比他做得更好。温柔、善良也正是每个温暖的归宿必要的条件。可我就是知道,我不会跟他走下去了。是我不好对不起他。可是再想想,我这样的人,这么坏的人,干嘛要去祸害他呢,让他走又何尝不是救了他呢。hhh
再啰嗦一下,本来以为队友是学弟所以不会很厉害,结果人家不但做完了而且比我做的还快。果然,前几年划水划的太多,竟然让我以为所有人都跟我一样水。划水是进步的最大阻力。幸亏这次下定决心好好做,就算不会也要做下去吧,别辜负了这么百年难遇的好队友。愿意干活的就是好队友了。(这么一比较,感觉之前每一次组的队都是些什么垃圾啊。)