Finite State Machine: Mealy State Machine และ Moore State Machine

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา





เครื่องของรัฐ จำกัด (FSMs) มีความสำคัญต่อการทำความเข้าใจตรรกะในการตัดสินใจและการควบคุมระบบดิจิทัล ใน FSM เอาต์พุตและสถานะถัดไปคือสถานะปัจจุบันและฟังก์ชันอินพุต ซึ่งหมายความว่าการเลือกสถานะถัดไปส่วนใหญ่ขึ้นอยู่กับค่าอินพุตและความแรงซึ่งนำไปสู่ประสิทธิภาพของระบบผสมมากขึ้น เช่นเดียวกับลอจิกตามลำดับเราต้องการประวัติอินพุตที่ผ่านมาเพื่อตัดสินใจเอาท์พุท ดังนั้น FSM จึงพิสูจน์ความร่วมมืออย่างมากในการทำความเข้าใจบทบาทลอจิกตามลำดับ โดยทั่วไปมีสองวิธีในการจัดเรียงไฟล์ การออกแบบลอจิกตามลำดับ ได้แก่ เครื่องจักรเพลี้ยแป้งและเครื่องจักรอื่น ๆ บทความนี้กล่าวถึงทฤษฎีและการใช้งานเครื่อง จำกัด สถานะหรือ FSM ประเภท ตัวอย่างเครื่อง จำกัด สถานะ ข้อดีและข้อเสีย

FSM (Finite State Machine) คืออะไร?

คำจำกัดความของเครื่องจักรที่มีสถานะ จำกัด คือ คำศัพท์ จำกัด สถานะเครื่องจักร (FSM) เรียกอีกอย่างว่า สถานะ จำกัด ระบบอัตโนมัติ . FSM เป็นรูปแบบการคำนวณที่สามารถดำเนินการได้ด้วยความช่วยเหลือของฮาร์ดแวร์หรือซอฟต์แวร์ ใช้สำหรับสร้างลอจิกตามลำดับเช่นเดียวกับโปรแกรมคอมพิวเตอร์บางโปรแกรม FSM ใช้เพื่อแก้ปัญหาในสาขาต่างๆเช่นคณิตศาสตร์เกมภาษาศาสตร์และปัญญาประดิษฐ์ ในระบบที่อินพุตเฉพาะสามารถทำให้เกิดการเปลี่ยนแปลงเฉพาะในสถานะที่สามารถบ่งบอกได้ด้วยความช่วยเหลือของ FSM




เครื่องไฟไนต์สเตท

เครื่องไฟไนต์สเตท

นี้ แผนภาพเครื่อง จำกัด สถานะ อธิบายเงื่อนไขต่างๆของประตูหมุน เมื่อใดก็ตามที่วางเหรียญลงในประตูหมุนจะปลดล็อคและหลังจากกดประตูหมุนแล้วมันจะสลักเกลียวกำไร การวางเหรียญลงในประตูหมุนที่ไม่มีสลักมิฉะนั้นการกดเข้ากับประตูหมุนที่ปิดสนิทจะไม่ทำให้สถานะของเหรียญเปลี่ยนไป



ประเภทของ Finite State Machine

เครื่อง จำกัด สถานะแบ่งออกเป็นสองประเภทเช่น เครื่องสถานะ Mealy และ เครื่องรัฐมัวร์ .

เครื่องรัฐ Mealy

เมื่อเอาต์พุตขึ้นอยู่กับอินพุตปัจจุบันและสถานะดังนั้น FSM สามารถตั้งชื่อให้เป็นเครื่องสถานะเพลี้ยแป้งได้ แผนภาพต่อไปนี้คือไฟล์ แผนภาพบล็อกเครื่องจักรสถานะ mealy . แผนภาพบล็อกเครื่องจักร mealy ประกอบด้วยสองส่วนคือ ตรรกะเชิงผสม เช่นเดียวกับหน่วยความจำ หน่วยความจำในเครื่องสามารถใช้เพื่อจัดเตรียมเอาต์พุตก่อนหน้าบางส่วนเป็นอินพุตลอจิกแบบผสม

แผนภาพบล็อกเครื่องจักรสถานะ Mealy

แผนภาพบล็อกเครื่องจักรสถานะ Mealy

ขึ้นอยู่กับปัจจัยการผลิตปัจจุบันและสถานะเครื่องนี้สามารถผลิตเอาต์พุต ดังนั้นเอาต์พุตจึงเหมาะสมเฉพาะที่สัญญาณ CLK ที่เป็นบวกหรือเป็นลบเท่านั้น แผนภาพสถานะของเครื่องจักร mealy แสดงอยู่ด้านล่าง


แผนภาพสถานะของเครื่องจักรสถานะ Mealy

แผนภาพสถานะของเครื่องจักรสถานะ Mealy

แผนภาพสถานะของเครื่องจักรสถานะเพลี้ยส่วนใหญ่ประกอบด้วยสามสถานะคือ A, B และ C ทั้งสามสถานะนี้ถูกแท็กภายในวงกลมเช่นเดียวกับทุกวงกลมสื่อสารด้วยสถานะเดียว การแปลงระหว่างสามสถานะนี้แสดงโดยเส้นกำกับ ในแผนภาพด้านบนอินพุตและเอาต์พุตจะแสดงด้วย 0/0, 1/0 และ 1/1 ตามค่าอินพุตมีการแปลงสองรายการจากทุกสถานะ

โดยทั่วไปจำนวนของสถานะที่ต้องการในเครื่องแป้งจะต่ำกว่าหรือเทียบเท่ากับจำนวนสถานะที่ต้องการในเครื่องของรัฐมัวร์ มีเครื่องสถานะมัวร์ที่เท่าเทียมกันสำหรับเครื่องสถานะ Mealy ทุกเครื่อง ด้วยเหตุนี้เราจึงสามารถจ้างหนึ่งในนั้นได้ตามความจำเป็น

มัวร์สเตทแมชชีน

เมื่อเอาต์พุตขึ้นอยู่กับสถานะปัจจุบัน FSM สามารถตั้งชื่อเป็น เครื่องรัฐมัวร์ . แผนภาพบล็อกของ Moore State Machine ดังแสดงด้านล่าง แผนภาพบล็อกเครื่องจักรของรัฐมัวร์ประกอบด้วยสองส่วนคือตรรกะเชิงผสมและหน่วยความจำ

Moore State Machine Block Diagram

Moore State Machine Block Diagram

ในกรณีนี้อินพุตปัจจุบันตลอดจนสถานะปัจจุบันจะตัดสินสถานะถัดไป ดังนั้นขึ้นอยู่กับสถานะอื่น ๆ เครื่องนี้จะสร้างเอาต์พุต ดังนั้นผลลัพธ์ของสิ่งนี้จะใช้ได้หลังจากการแปลงสถานะ

ไดอะแกรมสถานะเครื่องจักรของ Moore State ดังแสดงด้านล่าง ในสถานะข้างต้นแผนภาพประกอบด้วยสี่สถานะเช่นเครื่องจักรสถานะเพลี้ยแป้งคือ A, B, C และ D ทั้งสี่สถานะรวมทั้งเอาต์พุตแต่ละรายการจะอยู่ในวงกลม

แผนผังสถานะของ Moore State Machine

แผนผังสถานะของ Moore State Machine

ในรูปด้านบนมีสี่สถานะ ได้แก่ A, B, C & D สถานะเหล่านี้และผลลัพธ์ตามลำดับจะถูกระบุไว้ในวงกลม ที่นี่มีการทำเครื่องหมายมูลค่าอินพุตในทุก Conversion ในรูปด้านบนมีการแปลงสองรายการจากทุกสถานะขึ้นอยู่กับค่าอินพุต

โดยทั่วไปจำนวนของสถานะที่ต้องการในเครื่องนี้จะมากกว่าที่เทียบเท่ากับจำนวนสถานะที่ต้องการในเครื่องสถานะเพลี้ยแป้ง

โดยทั่วไปจำนวนสถานะที่ต้องการในเครื่องนี้จะมากกว่าสถานะที่ต้องการใน MSM (Mealy state machine) . สำหรับเครื่องจักรทุกรุ่นของ Moore จะมีเครื่องสถานะ Mealy ที่สอดคล้องกัน ดังนั้นขึ้นอยู่กับความจำเป็นที่เราสามารถใช้ประโยชน์อย่างใดอย่างหนึ่งได้

มีเครื่องจักรสถานะเพลี้ยแป้งที่เท่าเทียมกันสำหรับทุกเครื่องของรัฐมัวร์ ด้วยเหตุนี้เราจึงสามารถจ้างหนึ่งในนั้นได้ตามความจำเป็น

แอพพลิเคชั่น Finite State Machine

แอปพลิเคชั่นเครื่องที่มีสถานะ จำกัด ส่วนใหญ่รวมสิ่งต่อไปนี้

FSM ถูกใช้ในเกมที่พวกเขาได้รับการยอมรับมากที่สุดสำหรับการนำไปใช้ ปัญญาประดิษฐ์ อย่างไรก็ตามพวกเขามักจะดำเนินการในการนำทางในการแยกวิเคราะห์ข้อความการจัดการอินพุตของลูกค้าตลอดจนโปรโตคอลเครือข่าย

สิ่งเหล่านี้ถูก จำกัด ด้วยพลังในการคำนวณซึ่งมีคุณภาพที่ดีในการรับรู้โดยเปรียบเทียบได้ง่าย ดังนั้นพวกเขาจึงมักใช้โดยนักพัฒนาซอฟต์แวร์รวมถึงนักออกแบบระบบเพื่อสรุปประสิทธิภาพของระบบที่ยาก

เครื่อง จำกัด สถานะใช้ได้กับเครื่องจำหน่ายวิดีโอเกมสัญญาณไฟจราจร ตัวควบคุม ใน CPU, การแยกวิเคราะห์ข้อความ, การวิเคราะห์โปรโตคอล, การรับรู้คำพูด , การประมวลผลภาษา ฯลฯ

ข้อดีของ Finite State Machine

ข้อดีของ Finite State Machine รวมสิ่งต่อไปนี้

  • เครื่องไฟไนต์มีความยืดหยุ่น
  • ง่ายต่อการย้ายจากบทคัดย่อที่สำคัญไปเป็นการเรียกใช้โค้ด
  • ค่าใช้จ่ายของโปรเซสเซอร์ต่ำ
  • กำหนดความสามารถในการเข้าถึงได้ง่ายของรัฐ

ข้อเสียของ Finite State Machine

ข้อเสียของเครื่องสถานะ จำกัด รวมสิ่งต่อไปนี้

  • ไม่จำเป็นต้องใช้ลักษณะที่คาดหวังของเครื่องกำหนดสถานะ จำกัด ในบางพื้นที่เช่นเกมคอมพิวเตอร์
  • การใช้งานระบบขนาดใหญ่โดยใช้ FSM นั้นยากสำหรับการจัดการโดยไม่ต้องคิดออกแบบ
  • ไม่สามารถใช้ได้กับทุกโดเมน
  • คำสั่งของการแปลงสถานะไม่ยืดหยุ่น

ดังนั้นทั้งหมดนี้เป็นข้อมูลเกี่ยวกับ เครื่องจักรของรัฐ จำกัด . จากข้อมูลข้างต้นในที่สุดเราสามารถสรุปได้ว่าวงจรลำดับซิงโครนัสมีผลต่อสถานะของการแปลงสัญญาณ CLK ในเชิงบวกหรือเชิงลบแต่ละครั้งขึ้นอยู่กับอินพุต ดังนั้นพฤติกรรมนี้สามารถบ่งบอกได้ในรูปแบบของกราฟิกซึ่งเรียกว่าแผนภาพสถานะ อีกชื่อหนึ่งของวงจรลำดับซิงโครนัสคือ FSM (เครื่องสถานะ จำกัด ) นี่คือคำถามสำหรับคุณว่าไฟล์ คุณสมบัติของ FSM เหรอ?