<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ![](https://img.kancloud.cn/b5/23/b523a387e6265f45b79263b3e44343b7_898x472.png) ![](https://img.kancloud.cn/71/cd/71cd2156ddb0d100ee22f84369fd4409_607x144.png) > assign語句賦值號左邊只能是wire類型(只在wire與reg型之中做討論)。 > always塊語句中,被賦值的只能是reg類型。 ``` /************************************************************************ 模塊功能:對串行輸入的數據流進行檢測。只要發現10010序列,就立即輸出高電平。 *************************************************************************/ module seqdet(x,z,clk,rst_n); input clk,rst_n; input x; output z; reg z; reg [2:0] pstate,nstate; parameter s1=3'd0, s2=3'd1, s3=3'd2, s4=3'd3, s5=3'd4, s6=3'd5; //* 使用熱獨碼會更好些。 //第一段: 現態與次態轉換 時序電路 always @(posedge clk or negedge rst_n) begin if(!rst_n) pstate<=s1; else pstate<=nstate; end //第二段:各種狀態間的跳變。 組合電路 always @(pstate or x) begin case(pstate) s1: if(x==1) nstate=s2; else nstate=s1; s2: nstate=x?s2:s3; s3: nstate=x?s2:s4; s4: nstate=x?s5:s1; s5: nstate=x?s2:s6; s6: nstate=x?s2:s4; default: nstate=s1; endcase end //第三段:確定最終的狀態 always @(pstate or x or rst_n) begin if(!rst_n==1) z=1'b0; else if(pstate==s5 && x==0) z=1'b1; else z=1'b0; end endmodule ``` ``` `timescale 1 ns/ 1 ps module seqdet_vlg_tst(); reg clk; reg rst_n; wire x; wire z; reg[19:0] data; assign x=data[19]; seqdet i1 ( .clk(clk), .rst_n(rst_n), .x(x), .z(z) ); initial begin clk=0; rst_n=0; #500 rst_n=1; data=20'b1100_1001_0000_1001_0100; #(100*100) $stop; end always #50 clk=~clk; always @(posedge clk) begin #2 data={data[18:0],data[19]}; end endmodule ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看