吴忠躺衫网络科技有限公司

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

狀態(tài)機概述 如何理解狀態(tài)機

電子工程師 ? 來源:lq ? 2019-01-02 18:03 ? 次閱讀

換個方式理解狀態(tài)機

狀態(tài)機概述

有限狀態(tài)機通常是由寄存器組和組合邏輯組成時序電路,根據當前狀態(tài)和輸入信號可以控制下一個狀態(tài)的跳轉,有限狀態(tài)機在電路中通常是作為控制模塊,作為整個電路模塊的核心而存在,它主要包括兩大類:Mealy型狀態(tài)機和Moore型狀態(tài)機。

Mealy型狀態(tài)機:其組合邏輯的輸出不僅與當前狀態(tài)有關,還與輸入有關。

如下圖所示:

Moore型狀態(tài)機:其組合邏輯的輸出只與當前的狀態(tài)有關。

如下圖所示:

狀態(tài)機的編碼方式主要包括:二進制碼(Binary),格雷碼(gray),獨熱碼(one hot)

比如說當前工作四個狀態(tài)的話,其編碼方式如下表1所示:

二進制

格雷碼

獨熱碼

S0

00

00

0001

S1

01

01

0010

S2

10

11

0100

S3

11

10

1000

格雷碼相對于二進制碼而言,在狀態(tài)跳轉的時候,只有單比特翻轉,它的功耗相對比較低,該部分后面的異步FIFO章節(jié)會重點講到。獨熱碼相對于格雷碼或者二進制碼而言,它增加了兩個寄存器來表示狀態(tài),但是它會更節(jié)省組合邏輯電路,因為它在比較狀態(tài)的時候,只需要比較一個比特位,那么其電路的速度和可靠性就會增加。

狀態(tài)機設計實例分析

應用場景:編寫一個自動售貨機,功能如下:

共有三種紙幣入口,分別支持10元,20元,50元。貨物售價為80元。需要支持找錢功能(注意,找錢有兩種情況, 90元和100元;而110元和120元的情況不符合實際應用場景,所以不存在找錢的情況)。

分析:一共有十一種狀態(tài):每種狀態(tài)對應當前售貨機已接受的金額,當金額達到80,90,100的時候售貨機會輸出貨物,當金額為80時,不找零,當金額為90,100的時候要找零,零錢分別為10,20。

根據分析畫出如下的狀態(tài)轉化圖:

狀態(tài)機的RTL以及仿真testbench代碼鏈接:https://pan.baidu.com/s/1dKcwhzNS60Sw-7-UYXqyAQ

提取碼:9khq

在testbench里面模擬了三種情形:輸入為80,90,100的三種情況

仿真的testbench如下圖:

輸入信號:

ten_inst為1表示輸入10,twenty_inst為1表示輸入20,fifty_inst為1便是輸入50。

輸出信號:

out_inst為1表示要輸出貨物;

charge_inst為0,表示不找零,為2‘b11,表示找零20,為2‘b01表示找零10。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 狀態(tài)機
    +關注

    關注

    2

    文章

    492

    瀏覽量

    27645

原文標題:換個方式理解狀態(tài)機

文章出處:【微信號:LF-FPGA,微信公眾號:小魚FPGA】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于C語言的狀態(tài)機實現方案

    關于狀態(tài)機,基礎的知識點可以自行理解。本文主要講解的是一個有限狀態(tài)機FSM通用的寫法,目的在于更好理解,移植,節(jié)省代碼閱讀與調試時間,體現出編程之美。
    發(fā)表于 09-13 09:28 ?947次閱讀
    基于C語言的<b class='flag-5'>狀態(tài)機</b>實現方案

    Verilog狀態(tài)機+設計實例

    在verilog中狀態(tài)機的一種很常用的邏輯結構,學習和理解狀態(tài)機的運行規(guī)律能夠幫助我們更好地書寫代碼,同時作為一種思想方法,在別的代碼設計中也會有所幫助。 一、簡介 在使用過程中我們常說
    的頭像 發(fā)表于 02-12 19:07 ?4340次閱讀
    Verilog<b class='flag-5'>狀態(tài)機</b>+設計實例

    玩轉Spring狀態(tài)機

    說起Spring狀態(tài)機,大家很容易聯想到這個狀態(tài)機和設計模式中狀態(tài)模式的區(qū)別是啥呢?沒錯,Spring狀態(tài)機就是狀態(tài)模式的一種實現,在介紹S
    的頭像 發(fā)表于 06-25 14:21 ?1030次閱讀
    玩轉Spring<b class='flag-5'>狀態(tài)機</b>

    如何寫好狀態(tài)機

    如何寫好狀態(tài)機:狀態(tài)機是邏輯設計的重要內容,狀態(tài)機的設計水平直接反應工程師的邏輯功底,所以許多公司的硬件和邏輯工程師面試中,狀態(tài)機設計幾乎是必選題目。本章在引入
    發(fā)表于 06-14 19:24 ?97次下載

    狀態(tài)機舉例

    狀態(tài)機舉例 你可以指定狀態(tài)寄存器和狀態(tài)機狀態(tài)。以下是一個有四種狀態(tài)的普通狀態(tài)機。 // Th
    發(fā)表于 03-28 15:18 ?999次閱讀

    狀態(tài)機代碼生成工具

    狀態(tài)機代碼生成工具狀態(tài)機代碼生成工具狀態(tài)機代碼生成工具狀態(tài)機代碼生成工具
    發(fā)表于 11-19 15:12 ?9次下載

    狀態(tài)機原理及用法

    狀態(tài)機原理及用法狀態(tài)機原理及用法狀態(tài)機原理及用法
    發(fā)表于 03-15 15:25 ?0次下載

    簡述使用QII狀態(tài)機向導如何創(chuàng)建一個狀態(tài)機

    如何使用QII狀態(tài)機向導創(chuàng)建一個狀態(tài)機
    的頭像 發(fā)表于 06-20 00:11 ?4272次閱讀
    簡述使用QII<b class='flag-5'>狀態(tài)機</b>向導如何創(chuàng)建一個<b class='flag-5'>狀態(tài)機</b>

    什么是狀態(tài)機 狀態(tài)機的描述三種方法

    狀態(tài)機 1、狀態(tài)機是許多數字系統(tǒng)的核心部件,是一類重要的時序邏輯電路。通常包括三個部分:一是下一個狀態(tài)的邏輯電路,二是存儲狀態(tài)機當前狀態(tài)的時
    的頭像 發(fā)表于 11-16 17:39 ?2.7w次閱讀

    FPGA:狀態(tài)機簡述

    本文目錄 前言 狀態(tài)機簡介 狀態(tài)機分類 Mealy 型狀態(tài)機 Moore 型狀態(tài)機 狀態(tài)機描述 一段式
    的頭像 發(fā)表于 11-05 17:58 ?7545次閱讀
    FPGA:<b class='flag-5'>狀態(tài)機</b>簡述

    什么是狀態(tài)機狀態(tài)機5要素

    玩單片還可以,各個外設也都會驅動,但是如果讓你完整的寫一套代碼時,卻無邏輯與框架可言。這說明編程還處于比較低的水平,你需要學會一種好的編程框架或者一種編程思想!比如模塊化編程、狀態(tài)機編程、分層思想
    的頭像 發(fā)表于 07-27 11:23 ?2.1w次閱讀
    什么是<b class='flag-5'>狀態(tài)機</b>?<b class='flag-5'>狀態(tài)機</b>5要素

    狀態(tài)模式(狀態(tài)機)

    以前寫狀態(tài)機,比較常用的方式是用 if-else 或 switch-case,高級的一點是函數指針列表。最近,看了一文章《c語言設計模式–狀態(tài)模式(狀態(tài)機)》(來源:embed linux
    發(fā)表于 12-16 16:53 ?9次下載
    <b class='flag-5'>狀態(tài)</b>模式(<b class='flag-5'>狀態(tài)機</b>)

    labview狀態(tài)機分享

    labview狀態(tài)機
    發(fā)表于 10-31 15:50 ?15次下載

    有限狀態(tài)機分割設計

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

    什么是狀態(tài)機狀態(tài)機的種類與實現

    狀態(tài)機,又稱有限狀態(tài)機(Finite State Machine,FSM)或米利狀態(tài)機(Mealy Machine),是一種描述系統(tǒng)狀態(tài)變化的模型。在芯片設計中,
    的頭像 發(fā)表于 10-19 10:27 ?1w次閱讀
    真人百家乐官网ea平台| 24风水| 百合百家乐的玩法技巧和规则| 正规百家乐平注法口诀| 百家乐官网游戏合法吗| 百家乐平台要多少钱| 足球博彩| 百家乐能战胜吗| 大发888-娱乐场| 视频百家乐官网是真是假| 威尼斯人娱乐城信誉好不好| 百家乐官网娱乐用品| 百家乐庄闲比| 百家乐官网路单破解方法| 百家乐小路是怎么画的| 澳门百家乐官网怎样下注| 百家乐赌博走势图| 赌百家乐官网的下场| 电玩城百家乐技巧| 当涂县| 赌场百家乐台| 百家乐官网赢赌场百家乐官网| 如何胜百家乐的玩法技巧和规则 | www.18lk.com| 百家乐赌坊| 威尼斯人娱乐网注册| 百家乐官网打水论坛| 百家乐存1000送| 百家乐官网小77论坛| 发中发百家乐的玩法技巧和规则| 百家乐官网高手心得| 利澳百家乐官网娱乐城| 大发888游戏平台hgdafa888gw| 深圳百家乐官网的玩法技巧和规则 | 什么百家乐平注法| 百家乐官网技巧阅读| 百家乐免费下| 赌场百家乐官网是如何| 拉斯维加斯国际娱乐| 百家乐视频游戏聊天| 百家乐官网博彩网排名|