
systemverilog
tingtang13
这个作者很懒,什么都没留下…
展开
-
Problems with wires declared inside verilog generate blocks
http://stackoverflow.com/questions/22200666/problems-with-wires-declared-inside-verilog-generate-blocksWithin a generate block, I have multiple if statements. When I declare a wire in the firs转载 2015-01-06 19:10:28 · 382 阅读 · 0 评论 -
systemverilog 信号声明和仿真的关系
1.先看下图,先#10,后声明struct编译器会报错,只说语法错误。2.把信号声明放到前面两行,#10下移。编译通过。原因:信号声明和信号定义,可以理解为“0”时刻,被编译器解析。但是第一个和#10有冲突,所以报错。修改后先声明,后延时,遂通过。属于编译原理知识,那么C语言的变量声明不是这样,有一种impromptu的感觉。并不是严格要求定义在最前原创 2015-05-08 11:07:53 · 868 阅读 · 0 评论 -
systemverilog中for循环一个多bits variable的严格正确写法与综合比较
1.首先看某大厂给出的一小段代码:这段code什么意思呢?起初:1)我认为是wvalid = 0;2)下面循环的任何一次为1,就把wvalid赋值成1;3)结果就是一旦wvalid为1,那么就永远为1,不管循环了多少次。4)但是仔细想想,怎么会有这么vagary的逻辑呢?一定不是这样的,百思不得骑姐啊!!!5)只好综合一下了,看下图:原创 2015-06-02 16:43:53 · 3275 阅读 · 2 评论 -
systemverilog : register value after reset must be "static" value
问:register 在reset之后,有时候想要是其他register的 default value ( or reset value),为什么这时候可能会有风险?答:你怎么知道到底是哪个register的先被reset呢? 1.如果是右边的register还没有reset或者正在reset,它现在还是不稳定的值。 2.但是左边我们要赋值的regi原创 2015-06-02 17:07:07 · 592 阅读 · 0 评论