打印

RTL viewer,三位mux21怎么传给两位寄存器?

[复制链接]
4301|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
Backkom80| | 2012-4-25 08:47 | 只看该作者
1,mux不是三位的,mux是2位的,A端有一位是前一个FF的输出,另一位是那根粗线中的一位。B端是2个0。
2,LEDOUT是三位的,一位是rLEDout[0]另二位是mux输出的二位。

如果你确定你描述的是对的,那这个地的逻辑被软件给优化了。

使用特权

评论回复
板凳
mathematical|  楼主 | 2012-4-25 11:24 | 只看该作者
2# Backkom80
“另一位是那根粗线中的一位”我的问题就是在这,这个粗线是从后面的FF即rLED_Out[2,1]引出来的,而rLED_Out[2,1]明明是两位啊,难道说quartus ii的RTL viewer只能显示到这种程度(即不显示具体是后面的FF把哪一位给了mux21),只是根据verilog代码的出正确的结果,RTL viewer就不显示了那么清楚了?
  reg [2:0]rLED_Out;
  
  always @ ( posedge CLK or negedge RSTn )
      if( !RSTn )
        rLED_Out <= 3'b001;
    else if( Count_MS == 10'd100 )
        begin
   
            if( rLED_Out == 3'b000 )
            rLED_Out <= 3'b001;
          else
                rLED_Out <= { rLED_Out[1:0], 1'b0 };
      end
PS:这是一个国内教程上的例题,不是我自己编的程序

使用特权

评论回复
地板
Backkom80| | 2012-4-25 19:03 | 只看该作者
code没有问题,一个流水灯小代码。
那就是Q2优化了代码的逻辑。

使用特权

评论回复
5
sxhhhjicbb| | 2012-4-25 21:07 | 只看该作者
原则是:低位对齐.

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
mathematical + 1
6
GoldSunMonkey| | 2012-4-25 22:24 | 只看该作者
嗯,有点拼接的意思,我觉得。
这个东西没有必要深究

使用特权

评论回复
7
mathematical|  楼主 | 2012-4-26 12:49 | 只看该作者
5# sxhhhjicbb
+1

使用特权

评论回复
8
mathematical|  楼主 | 2012-4-26 12:50 | 只看该作者
6# GoldSunMonkey
得到了版主的关注...

使用特权

评论回复
9
mathematical|  楼主 | 2012-4-29 10:52 | 只看该作者
4# Backkom80
今天看别的图找到了这个,原来Q2不是隐式地优化,而是为了让用户把图看的更清楚所以默认情况下是不显示的
tools->options->show net name

使用特权

评论回复
10
mathematical|  楼主 | 2012-4-29 10:56 | 只看该作者
5# sxhhhjicbb
我从别的例子发现并不总是低位对齐...
tools->options->show net name 这个方法可以看清触发器是传了哪位

使用特权

评论回复
11
mathematical|  楼主 | 2012-4-29 11:02 | 只看该作者
6# GoldSunMonkey
没必要深究?那请问您这个图我怎么知道译码器如何控制输出呢?

使用特权

评论回复
12
sxhhhjicbb| | 2012-5-2 22:26 | 只看该作者
本帖最后由 sxhhhjicbb 于 2012-5-2 22:31 编辑

12# mathematical
偶一般不查看RTL图的,如果你可以找出反例,可以仿真出来。我相信编译器一致性还是可靠的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

98

帖子

1

粉丝