女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在Verilog中創(chuàng)建有限狀態(tài)機(jī)

科技觀察員 ? 來源:allaboutcircuits ? 作者: Eduardo Corpe?o ? 2022-04-26 16:20 ? 次閱讀

本文描述了有限狀態(tài)機(jī)的基礎(chǔ)知識,并展示了在 Verilog 硬件描述語言中實(shí)現(xiàn)它們的實(shí)用方法。

有限狀態(tài)機(jī),簡稱 FSM,是硬件和軟件系統(tǒng)中最普遍的操作模型之一。幾乎每個(gè)有用的數(shù)字系統(tǒng)都可以定義為有限狀態(tài)機(jī),因此最好盡可能多地了解這種有用的系統(tǒng)模式。

數(shù)字電路中的有限狀態(tài)機(jī)

有限狀態(tài)機(jī)有多種描述方式,但最流行的兩種是狀態(tài)圖和狀態(tài)表。兩種表示的示例如圖 1 所示。

pYYBAGJnqzSAaRSjAAGLJD-cgDk049.png

圖 1.顯示為狀態(tài)圖和狀態(tài)表的 FSM。左上角的圖例顯示了狀態(tài)變量 A 和 B,以及輸入 x 和輸出 y。

請注意,這個(gè) FSM 有一個(gè)輸入信號 x 和一個(gè)輸出信號 y,這使它成為一個(gè)Mealy 狀態(tài)機(jī)。此 FSM 可以通過數(shù)字設(shè)計(jì)課程中教授的傳統(tǒng)方法來實(shí)現(xiàn),該方法圍繞為實(shí)現(xiàn)狀態(tài)變量的觸發(fā)器生成激勵(lì)邏輯。該邏輯是根據(jù)所選觸發(fā)器類型的激勵(lì)表設(shè)計(jì)的,即 SR、D、JK 或 T。

當(dāng)我們將此技術(shù)應(yīng)用于圖 1 中的 FSM 時(shí),我們會(huì)得到以下實(shí)現(xiàn)的某個(gè)版本。

pYYBAGJnqzWAeX3xAACPuzEgVOQ099.png

圖 2.使用 JK 觸發(fā)器的示例 FSM 的實(shí)現(xiàn)。

有關(guān)狀態(tài)機(jī)的更多信息,您可能需要閱讀 David Williams的文章在 VHDL 中實(shí)現(xiàn)有限狀態(tài)機(jī)。

Verilog 如何提供幫助

那么,如果您想在 Verilog 中實(shí)現(xiàn)如圖 1 所示的狀態(tài)機(jī),該怎么做呢?Verilog 應(yīng)該在設(shè)計(jì)過程的哪個(gè)階段接管?

雖然可以 手動(dòng)設(shè)計(jì)整個(gè)系統(tǒng),一直到圖 2 中的示意圖,然后用 Verilog 編寫代碼,但這并不是解決問題的最流行的方法。更糟糕的方法是描述原理圖中的每個(gè)門,包括構(gòu)成觸發(fā)器的門!如果您在門級別描述所有內(nèi)容,您的系統(tǒng)可能會(huì) 以某種方式工作,但這沒有給編譯器留下空間來優(yōu)化您的設(shè)計(jì)以滿足您的實(shí)際 需求,這可能更關(guān)注時(shí)序和功率,而不僅僅是正確性。

請記住:使用硬件描述語言的原因是為了利用您將使用的綜合編譯器,并且像任何編譯器一樣,您給予它的自由度越大,您就越有可能產(chǎn)生最佳實(shí)現(xiàn)。

所以一個(gè)聰明的起點(diǎn)是狀態(tài)表。您只需指示 Verilog 機(jī)器在每個(gè)狀態(tài)下應(yīng)該做什么,而不是使用哪個(gè)門或觸發(fā)器。

在 Verilog 中,狀態(tài)機(jī)的一個(gè)出色構(gòu)造是Case 語句。每個(gè)案例的主體都應(yīng)該檢查狀態(tài)變量及其期望的行為。下面的一段代碼展示了這個(gè)結(jié)構(gòu)。

case (state)

STATE_0: // Code for State 0

STATE_1: // Code for State 1

// ...

STATE_N: // Code for State N

endcase

因此,通過我們的示例,這是圖 1 所示狀態(tài)機(jī)的實(shí)現(xiàn)。請注意,輸出 y 是一個(gè)組合函數(shù)。

module MyFSM(

input clk,

input x,

output y);

reg [1:0] state;

assign y = state[1] & state[0] & x;

always @ (negedge clk)

case (state)

2'b00: state <= x?2'b01:2'b00;

2'b01: state <= x?2'b10:2'b00;

2'b10: state <= x?2'b11:2'b00;

2'b11: state <= 2'b00;

endcase

endmodule

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Verilog
    +關(guān)注

    關(guān)注

    28

    文章

    1365

    瀏覽量

    111692
  • 狀態(tài)機(jī)
    +關(guān)注

    關(guān)注

    2

    文章

    493

    瀏覽量

    28041
收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    Verilog狀態(tài)機(jī)+設(shè)計(jì)實(shí)例

    的是有限狀態(tài)機(jī)(Finite-State Machine,F(xiàn)SM),簡稱為狀態(tài)機(jī),表示在有限個(gè)狀態(tài)以及這些狀態(tài)之間的轉(zhuǎn)移和動(dòng)作等行為的數(shù)學(xué)模
    的頭像 發(fā)表于 02-12 19:07 ?5074次閱讀
    <b class='flag-5'>Verilog</b><b class='flag-5'>狀態(tài)機(jī)</b>+設(shè)計(jì)實(shí)例

    有限狀態(tài)機(jī)有什么類型?

    在實(shí)際的應(yīng)用,根據(jù)有限狀態(tài)機(jī)是否使用輸入信號,設(shè)計(jì)人員經(jīng)常將其分為Moore型有限狀態(tài)機(jī)和Mealy型有限狀態(tài)機(jī)兩種類型。
    發(fā)表于 04-06 09:00

    基于有限狀態(tài)機(jī)在LIN總線開發(fā)的應(yīng)用

    基于有限狀態(tài)機(jī)在LIN總線開發(fā)的應(yīng)用      引言   隨著汽車智能化程度的提高和迅速升級
    發(fā)表于 04-20 13:47 ?979次閱讀
    基于<b class='flag-5'>有限狀態(tài)機(jī)</b>在LIN總線開發(fā)<b class='flag-5'>中</b>的應(yīng)用

    有限狀態(tài)機(jī)_FSM_的實(shí)現(xiàn)

    本文主要介紹了IP模塊的有限狀態(tài)機(jī)的實(shí)現(xiàn)。
    發(fā)表于 03-22 15:42 ?0次下載

    有限狀態(tài)機(jī)FSM在PLD的實(shí)現(xiàn)分析

    本文通過舉例 利用VHDL 語言描述了不同模式的有限狀態(tài)機(jī) 分析了有限狀態(tài)機(jī)在 PLD 綜合的特點(diǎn) 。
    發(fā)表于 03-22 15:41 ?3次下載

    有限狀態(tài)機(jī)的建模與優(yōu)化設(shè)計(jì)

    本文提出一種優(yōu)秀 、高效的 Verilog HDL 描述方式來進(jìn)行有限狀態(tài)機(jī)設(shè)計(jì) 介紹了 有限狀態(tài)機(jī)的建模原則 并通過一個(gè)可綜合的實(shí)例 驗(yàn)證了 該方法設(shè)計(jì)的有限狀態(tài)機(jī)在面積和功耗上的優(yōu)
    發(fā)表于 03-22 15:19 ?1次下載

    VHDL有限狀態(tài)機(jī)設(shè)計(jì)-ST

    EDA的有限狀態(tài)機(jī),廣義而言是指只要涉及觸發(fā)器的電路,無論電路大小都可以歸結(jié)為狀態(tài)機(jī)有限狀態(tài)機(jī)設(shè)計(jì)在學(xué)習(xí)EDA時(shí)是很重要的一章。
    發(fā)表于 06-08 16:46 ?3次下載

    初學(xué)者對有限狀態(tài)機(jī)(FSM)的設(shè)計(jì)的認(rèn)識

    有限狀態(tài)機(jī)(FSM)是一種常見的電路,由時(shí)序電路和組合電路組成。設(shè)計(jì)有限狀態(tài)機(jī)的第一步是確定采用Moore狀態(tài)機(jī)還是采用Mealy狀態(tài)機(jī)
    發(fā)表于 02-11 13:51 ?4506次閱讀
    初學(xué)者對<b class='flag-5'>有限狀態(tài)機(jī)</b>(FSM)的設(shè)計(jì)的認(rèn)識

    如何使用FPGA實(shí)現(xiàn)序列檢測有限狀態(tài)機(jī)

    輸出部分外, 有限狀態(tài)機(jī)還含有一組具有“記憶”功能的寄存器, 這些寄存器的功能是記憶有限狀態(tài)機(jī)的內(nèi)部狀態(tài), 它們常被稱為狀態(tài)寄存器。在有限狀態(tài)機(jī)
    發(fā)表于 11-04 17:17 ?12次下載
    如何使用FPGA實(shí)現(xiàn)序列檢測<b class='flag-5'>有限狀態(tài)機(jī)</b>

    基于事件驅(qū)動(dòng)的有限狀態(tài)機(jī)介紹

    ? 一、介紹 EFSM(event finite state machine,事件驅(qū)動(dòng)型有限狀態(tài)機(jī)),是一個(gè)基于事件驅(qū)動(dòng)的有限狀態(tài)機(jī),主要應(yīng)用于嵌入式設(shè)備的軟件系統(tǒng)。 EFSM的設(shè)計(jì)原則是:簡單
    的頭像 發(fā)表于 11-16 15:29 ?2514次閱讀

    如何以面向?qū)ο蟮乃枷朐O(shè)計(jì)有限狀態(tài)機(jī)

    有限狀態(tài)機(jī)又稱有限狀態(tài)自動(dòng)機(jī),簡稱狀態(tài)機(jī),是表示有限個(gè)狀態(tài)以及在這些
    發(fā)表于 02-07 11:23 ?4次下載
    如何以面向?qū)ο蟮乃枷朐O(shè)計(jì)<b class='flag-5'>有限狀態(tài)機(jī)</b>

    基于事件驅(qū)動(dòng)的有限狀態(tài)機(jī)介紹

    EFSM(event finite state machine,事件驅(qū)動(dòng)型有限狀態(tài)機(jī)),是一個(gè)基于事件驅(qū)動(dòng)的有限狀態(tài)機(jī),主要應(yīng)用于嵌入式設(shè)備的軟件系統(tǒng)
    的頭像 發(fā)表于 02-11 10:17 ?1226次閱讀

    FPGA有限狀態(tài)機(jī)編寫如何選擇狀態(tài)編碼?

    Verilog HDL可以用許多種方法來描述有限狀態(tài)機(jī),最常用的方法是用always語句和case語句。
    發(fā)表于 03-23 14:06 ?744次閱讀

    一個(gè)基于事件驅(qū)動(dòng)的有限狀態(tài)機(jī)

    EFSM(event finite state machine,事件驅(qū)動(dòng)型有限狀態(tài)機(jī)),是一個(gè)基于事件驅(qū)動(dòng)的有限狀態(tài)機(jī),主要應(yīng)用于嵌入式設(shè)備的軟件系統(tǒng)。 EFSM的設(shè)計(jì)原則是:簡單!EFSM的使用者只需要關(guān)心:
    的頭像 發(fā)表于 08-30 09:28 ?1034次閱讀
    一個(gè)基于事件驅(qū)動(dòng)的<b class='flag-5'>有限狀態(tài)機(jī)</b>

    有限狀態(tài)機(jī)分割設(shè)計(jì)

    有限狀態(tài)機(jī)分割設(shè)計(jì),其實(shí)質(zhì)就是一個(gè)狀態(tài)機(jī)分割成多個(gè)狀態(tài)機(jī)
    的頭像 發(fā)表于 10-09 10:47 ?835次閱讀