小编lcj*_*ury的帖子

行为,RTL和门级之间的差异

我试图完全理解Verilog的抽象级别之间的差异,我得到了每个级别的描述,但我仍然无法在游戏中得到它.

对于这种情况,我将粘贴一些Verilog代码以及我对它们的看法:

  1. 以下代码位于行为级别.

    always  @ (a or b or sel)
      begin
        y = 0;
        if (sel == 0) begin
          y = a;
        end else begin
        y = b;
      end
    end
    
    Run Code Online (Sandbox Code Playgroud)
  2. 这(仅举例)是门级

    module test(clk,  ready, next, Q);
      input clk, enable, next;
      output Q;
    
      \**SEQGEN** reg_1 (.clear(1'b0), .next_state(next), .clocked_on(clk), .Q(Q), .synch_enable(enable) );
    
    endmodule
    
    Run Code Online (Sandbox Code Playgroud)
  3. 我不知道这段代码是在RTL还是门级(我希望always关键字使这个RTL而不是门级)

    module dff_from_nand();
      wire Q,Q_BAR;
      reg D,CLK;
    
      nand U1 (X,D,CLK) ;
      nand U2 (Y,X,CLK) ;
      nand U3 (Q,Q_BAR,X);
      nand U4 (Q_BAR,Q,Y);
    
      // Testbench of above code
      initial begin
        $monitor("CLK …
    Run Code Online (Sandbox Code Playgroud)

verilog

8
推荐指数
1
解决办法
2万
查看次数

Ruby 2.7.2 使用 2.7.0 库

我使用 rbenv 安装了 Ruby 2.7.2,但是当我运行以下代码时:

require 'webrick'

WEBrick::VERSION
=> "1.6.0"
WEBrick::HTTPUtils.method(:mime_type).source_location
=> ["/Users/my_user/.rbenv/versions/2.7.2/lib/ruby/2.7.0/webrick/httputils.rb", 133]
Run Code Online (Sandbox Code Playgroud)

我有 webrick 1.6 版,它有一个安全问题,已在ruby 2.7.2中修补。

如果我们使用带有 ruby​​ 2.7.2 的 docker 映像,这也会发生在我们的 dev/prod 环境中,因此,我认为这不是 rbenv 问题。

我想知道的是,为什么我的 ruby​​ 解释器使用 2.7.0 版本的库?

ruby rubygems ruby-on-rails bundler

3
推荐指数
1
解决办法
44
查看次数

标签 统计

bundler ×1

ruby ×1

ruby-on-rails ×1

rubygems ×1

verilog ×1