啊啊啊流水了啊操逼污污,与妇女日逼视频,亚洲国产日韩欧美一区二区,k8经典网在线观看电影

24小時聯(lián)系電話:18217114652、13661815404

中文

您當(dāng)前的位置:
首頁>
電子資訊>
行業(yè)資訊>
有限狀態(tài)機的初始狀態(tài)...

行業(yè)資訊

有限狀態(tài)機的初始狀態(tài)與內(nèi)存辯論


狀態(tài)機有幾種編碼,最流行的是二進制,格雷和一鍵編碼。對于人類而言,選擇使用哪種編碼是一項艱巨的任務(wù)。這就是為什么最好讓編譯器為您選擇此項。

設(shè)計中的FSM

現(xiàn)在,您可以使用上述技術(shù)來設(shè)計MealyMoore狀態(tài)機,一旦掌握了這些技巧,就很有趣,也很有趣。

但是,除了學(xué)校的項目外,您真的 需要多久使用一種狀態(tài)機,該狀態(tài)機具有我們剛剛設(shè)計的那種任意行為?幾乎總是!乍一看可能并不明顯,但是您可以采用自頂向下的方法將系統(tǒng)描述為一系列狀態(tài)。此序列可以繪制為狀態(tài)圖,也可以記錄為狀態(tài)表。獲得該表示后,您就可以自由編寫HDL代碼。

注意,在我們的示例中,您可能會或可能不會最終使用諸如y之類的輸出變量,這很好,因為許多狀態(tài)機僅指示系統(tǒng)的行為,并且這種行為可以在專用狀態(tài)下編寫。 

初始狀態(tài)如何?

自傳統(tǒng)邏輯集成電路(例如74LSXX TTL40XX CMOS芯片)問世以來,設(shè)置初始狀態(tài)一直是一個棘手的挑戰(zhàn)。那時,您依靠 觸發(fā)器的預(yù)設(shè)” 清除輸入,這些輸入與某些上電復(fù)位信號相關(guān)聯(lián),因此在上電時始終會設(shè)置所需的初始狀態(tài)。

現(xiàn)在,對于FPGA,是否應(yīng)在系統(tǒng)中使用復(fù)位輸入信號來充當(dāng)此類上電復(fù)位信號一直存在爭議。帶有重置輸入的我們的Verilog示例如下所示: 

module MyFSM(

        input clk,

        input reset,

        input x,

        output y);

    reg [1:0] state;

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

    always @ (negedge clk)

        if (reset)

            state <= 2’b00; // ...or the initial state you want.

        else 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 

之所以引起爭議,是因為以下事實:大多數(shù)(但不是全部)FPGA將其配置存儲器實現(xiàn)為易失性的靜態(tài)RAM(更好地稱為SRAM),并且使用外部非易失性存儲設(shè)備以強大的功率將配置復(fù)制到FPGA-在啟動過程中。此啟動過程通常使Verilog初始 塊可合成!

這意味著,當(dāng)您具有某種語言的初始化方法時,可能不需要復(fù)位輸入信號即可初始化變量。使用原始的Verilog示例,只需要一行代碼: 

initial state <= 2’b00; //

...或您想要的初始狀態(tài)。

但是,并非所有的FPGA都將其內(nèi)部配置存儲器實現(xiàn)為SRAM。一些FPGA(如Lattice MachXO2系列)具有內(nèi)部非易失性配置存儲器,因此無需啟動任何東西,從而使初始 塊不可用于合成,僅對初始化測試平臺模塊有效。

 通常,初始塊無法合成的主要原因是Verilog用于許多目標(biāo)技術(shù),包括ASIC(沒有啟動序列)。無論如何,您應(yīng)該始終考慮遵循FPGA制造商的建議。是否使用復(fù)位輸入,或者如果您決定偏離,至少找到一個很好的理由。 

軟處理器中的FSM

您可能知道,所有CPU的控制邏輯在某處都有一個狀態(tài)機。狀態(tài)可能具有描述性名稱,例如獲取,解碼執(zhí)行回寫,或者可以簡單地將其視為執(zhí)行周期,例如周期1,周期2等。關(guān)鍵是,CPU內(nèi)核是VerilogFSM令人驚訝的易于實現(xiàn)的應(yīng)用程序。

如果您希望使用本文中介紹的技術(shù)在Verilog中實現(xiàn)軟處理器的實現(xiàn)。

首先,用Verilog編寫FSM似乎令人生畏,但是如果讓綜合工具通過將代碼作為案例語句輸入來幫助您,則可以輕松啟動并運行應(yīng)用程序。

請輸入搜索關(guān)鍵字

確定
澜沧| 上林县| 博乐市| 鄂托克旗| 永清县| 香格里拉县| 盐源县| 锡林郭勒盟| 天等县| 新民市| 邵阳市| 岳西县| 景德镇市| 六盘水市| 西盟| 尼勒克县| 昂仁县| 湟源县| 锡林郭勒盟| 巴彦淖尔市| 根河市| 皋兰县| 长宁县| 九台市| 论坛| 新丰县| 方正县| 辛集市| 上杭县| 宜宾县| 彰化县| 扶余县| 罗定市| 皮山县| 开鲁县| 泗洪县| 平顶山市| 墨玉县| 聂荣县| 乌什县| 陆良县|