在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁(yè) > 嵌入式系統(tǒng) > 牛人業(yè)話 > 零基礎(chǔ)學(xué)FPGA(七)淺談狀態(tài)機(jī)

      零基礎(chǔ)學(xué)FPGA(七)淺談狀態(tài)機(jī)

      —— 零基礎(chǔ)學(xué)FPGA(八)淺談狀態(tài)機(jī)
      作者: 時(shí)間:2015-01-10 來(lái)源:網(wǎng)絡(luò) 收藏

        今天我們來(lái)寫(xiě)

      本文引用地址:http://www.biyoush.com/article/267960.htm

        關(guān)于呢,想必大家應(yīng)該都接觸過(guò),通俗的講就是數(shù)電里我們學(xué)的狀態(tài)轉(zhuǎn)換圖。分為兩中類型,一種叫型,一種叫型。前者就是說(shuō)時(shí)序邏輯的輸出不僅取決于當(dāng)前的狀態(tài),還取決于輸入,而后者就是時(shí)序邏輯的輸出僅僅取決于當(dāng)前的狀態(tài)。下面兩個(gè)圖分別表示兩種不同的狀態(tài)機(jī)。

        

      360桌面截圖20140601211319.jpg

       

        

      360桌面截圖20140601211344.jpg

       

        下面我們就通過(guò)代碼來(lái)寫(xiě)一下?tīng)顟B(tài)機(jī),以下面的狀態(tài)轉(zhuǎn)換圖為例

        

      360桌面截圖20140601205828.jpg

       

        首先,是一種典型的狀態(tài)機(jī)寫(xiě)法,這種寫(xiě)法我們稱為一段時(shí)狀態(tài)機(jī),用于一些簡(jiǎn)單的設(shè)計(jì)是可以的,但如果是復(fù)雜的狀態(tài)機(jī),不建議大家用這種寫(xiě)法。

        //***********************************************************

        //可綜合的狀態(tài)機(jī)設(shè)計(jì)的典型方法

        //實(shí)現(xiàn)典型的狀態(tài)機(jī)設(shè)計(jì)

        //**********************************************

        module fsm (clk,rst_n,A,k1,k2,State);

        input clk;

        input rst_n;

        input A;

        output k1,k2;

        output [1:0] State;

        reg k1;

        reg k2;

        reg [1:0] State; //當(dāng)前狀態(tài)寄存器

        parameter Idle = 2'b00,

        Start = 2'b01,

        Stop = 2'b10,

        Clear = 2'b11; //編碼 ,注意,只有在最后一句用分號(hào),其他地方用逗號(hào)

        always @(posedge clk or negedge rst_n)

        if(!rst_n)

        begin

        State <= Idle;

        k1 <=1'b0;

        k2 <=1'b0;

        end

        else case (State) //狀態(tài)判斷與組合邏輯賦值

        Idle :if(A) begin

        State <= Start;

        k1 <= 0;

        end

        else begin

        State <= Idle;

        k1 <= 0;

        k2 <= 0;

        end

        Start :if(!A) State <= Stop;

        else State <= Start;

        Stop :if(A) begin

        State <=Clear;

        k2 <= 1;

        end

        else State <= Stop;

        Clear :if(!A) begin

        State <= Clear;

        k2 <= 0;

        k1 <= 1;

        end

        else State <= Clear;

        default : State <= 2'bxx; //告訴綜合器 case語(yǔ)句已經(jīng)指定了所有狀態(tài),這樣綜合器就會(huì)刪除不需要的譯碼電路,使生成的電路簡(jiǎn)單

        endcase

        endmodule

      fpga相關(guān)文章:fpga是什么



      上一頁(yè) 1 2 下一頁(yè)

      關(guān)鍵詞: FPGA 狀態(tài)機(jī) Mealy Moore

      評(píng)論


      相關(guān)推薦

      技術(shù)專區(qū)

      關(guān)閉