fsm

    3熱度

    1回答

    我正在學習計算模型,目前我們正在做有限狀態機。我的一項任務是繪製一個執行3分割的FSM;爲了簡化模型,機器只接受3的倍數。我不確定這是如何實現的,特別是因爲我想FSM只輸出單個二進制值。你們能舉個例子(除以2或4)或者提示如何解決這個問題?

    0熱度

    2回答

    我想寫一些vhdl檢測給定模式的位串。在輸入流中發現模式「110」時,電路應該輸出1。我的輸入是「X」,輸出是「Z」。 我不知道如何檢查「110」的輸入模式。 這是我到目前爲止有: library IEEE; use IEEE.STD_LOGIC_1164.ALL; entity checker is Port (clk : in STD_LOGIC; x : in S

    2熱度

    3回答

    我在vhdl代碼中有一個時鐘,但我沒有使用它,只是當我的進程只是在一個組件完成並獲取輸出時取決於握手,此輸出位於我的FSM的靈敏度列表中然後成爲下一個組件的輸入,當然它的輸出也在我的FSM的靈敏度列表中(所以要知道組件何時完成其計算)......等等。 這種方法錯了嗎?它可以在仿真和後路模擬中工作,但會得到如下警告:警告:保持對CLK的高電平有效;和 警告:保持對於CLK的低電平有效; 這個警告不

    2熱度

    1回答

    我有n個一長串(〜50000)線路用的公式看起來像: A(1, 2) = 54353 A(1, 2, 3) = 89327 A(1, B(1, 2)) = 8372 A(7, B(1, 3, 5)) = 6311 A(7, B(C(1, 3, 7), 2, C(1, 3), 5)) = 28490 B(A(1, C(5, 3)), 3, 8, D(1, 2)) = 39783 等 這

    1熱度

    1回答

    嗯,我在我的主要組件中處理a,在另一個子組件中處理b(在主要組件中執行)。 進程a和b只有時鐘在它們的靈敏度列表中: 處理一個控制啓動信號ready,如果1進程b可以工作,0進程b將不會執行任何操作。 問題在處理a中,當將使能信號的更改值處理爲0時,必須等待下一個時鐘週期才能更改,以便進程b結束運行一個額外的時鐘週期。 a:process(clk) begin if(rising_edge(c

    0熱度

    2回答

    public abstract class State<T> { public virtual Enter(T item) { // an empty method } } public class ChaseState : State<FieldPlayer> { public override Enter(Player pl)

    -2熱度

    1回答

    我必須爲1 mealy fsm寫一個verilog程序。有很多技術來編寫它。我會告訴你1,我想知道,如果它太(沒有必要提及其他技術,只是說如果工作或不爲什麼!)這就是: module MealyFsm(out,in,clk,rst); output out; input in,clk,rst; reg [1:0] q; always @(posedge

    1熱度

    4回答

    我有一個用Verilog編寫的程序,我想自動將它轉換成FSM。這是可能的(只是想象它)? 下面是代碼: module pci(reset,clk,frame,irdy,trdy,devsel,idsel,ad,cbe,par,stop,inta,led_out); input reset; input clk; input frame; input irdy

    0熱度

    2回答

    我正在開發一個自動售貨機項目,並嘗試構建一個狀態機,正如我從其他示例中看到的那樣。我試圖建立的機器可以容納100美元。它需要鎳,一角和四分之一。所以,我應該逐一定義大約2000個州。我怎樣才能以更簡單的方式構建FSM?我只想提出一個建議。 謝謝:)

    4熱度

    3回答

    我在VHDL中看到的很多FSM都是通過在FSM邏輯中設置一個變量「next_state」,然後將其單獨分配給進程之外的狀態變量。 如果簡單地寫入「state <= state_five」有任何問題,改爲設置下一個狀態? 我假設有是一個原因,許多人使用單獨的下一個狀態變量,而不是直接分配到狀態,因爲我一直看到它,但據我所知,除了它之外沒有區別使代碼更長,更復雜。 我錯過了什麼嗎?還是僅僅是一個風格問