HDLBits (146) — 問題6c 有限狀態(tài)機獨熱編碼下一狀態(tài)邏輯
本題鏈接:
https://hdlbits.01xz.net/wiki/Exams/m2014_q6c
考慮如下所示的狀態(tài)機,它有一個輸入 w 和一個輸出 z。

對于這一部分,假設狀態(tài)分配 'y[6:1] = 000001, 000010, 000100, 001000, 010000, 100000 分別用于狀態(tài) A、B、...、F 的獨熱編碼代碼。
為下一狀態(tài)信號 Y2 和 Y4 編寫邏輯表達式。? (通過假設檢查獨熱編碼編碼的方式推導出邏輯方程。測試臺將使用非獨熱編碼輸入進行測試,以確保你不會試著做更復雜的事情)。

題目

答案

獨熱編碼即 One-Hot 編碼,又稱一位有效編碼,其方法是使用N位狀態(tài)寄存器來對N個狀態(tài)進行編碼,每個狀態(tài)都由他獨立的寄存器位,并且在任意時候,其中只有一位有效。
有限狀態(tài)機(Finite-State Machine,FSM),簡稱狀態(tài)機,是表示有限個狀態(tài)以及在這些狀態(tài)之間的轉移和動作等行為的數學模型。狀態(tài)機不僅是一種電路的描述工具,而且也是一種思想方法,在電路設計的系統(tǒng)級和?RTL 級有著廣泛的應用。
Verilog 中狀態(tài)機主要用于同步時序邏輯的設計,能夠在有限個狀態(tài)之間按一定要求和規(guī)律切換時序電路的狀態(tài)。狀態(tài)的切換方向不但取決于各個輸入值,還取決于當前所在狀態(tài)。狀態(tài)機可分為 2 類:Moore?狀態(tài)機和 Mealy 狀態(tài)機。
參考內容:
6.3 Verilog 狀態(tài)機?| 菜鳥教程:
https://www.runoob.com/w3cnote/verilog-fsm.html