เครื่องสถานะจำกัด

จากวิกิพีเดีย สารานุกรมเสรี
(เปลี่ยนทางจาก เครื่องจักรสถานะจำกัด)

เครื่องสถานะจำกัด หรือ ไฟไนต์สเตตแมชชีน (อังกฤษ: finite state machine) คือวงจรเชิงลำดับซึ่งออกแบบเป็นสถานะการทำงาน (state) ของวงจรออกเป็นหลายๆ สถานะ แต่ละสถานะมีลอจิกการทำงานที่ต่างกัน เพื่อกำเนิดค่าเอาต์พุตและค่าสถานะถัดไป มีสัญญาณสถานะที่กำหนดว่าสถานะปัจจุบันเป็นสถานะไหน สัญญาณของสถานะจะถูกเก็บไว้ในเรจิสเตอร์ ดังนั้นสถานะจะสามารถเปลี่ยนแปลงได้ที่ขอบขาของ clock เท่านั้น

ประเภทของเอาต์พุตของเครื่องสถานะจำกัด[แก้]

เอาต์พุตของเครื่องสถานะจำกัดมี 2 ประเภท คือ

  1. เครื่องจักรแบบมัวร์ เอาต์พุตนั้นจะเป็นฟังก์ชันของสถานะเพียงอย่างเดียว กล่าวคือ เอาต์พุตเปลี่ยนแปลงตามจังหวะของ clock เท่านั้น คือ แต่ละสถานะมีค่าของเอาต์พุตที่กำหนดแน่นอน เอาต์พุตจะเปลี่ยนก็ต่อเมื่อสถานะเปลี่ยน
  2. เครื่องจักรแบบเมลลี่ เอาต์พุตนั้นจะเป็นฟังก์ชันของสถานะและอินพุตของเครื่องสถานะ กล่าวคือ เอาต์พุตไม่จำเป็นต้องเปลี่ยนแปลงตามจังหวะของ clock โดยเมื่ออินพุตเปลี่ยน เอาต์พุตจะเปลี่ยนทันที

โครงสร้างของเครื่องสถานะจำกัด[แก้]

โครงสร้างของเครื่องสถานะจำกัดโดยทั่วไปประกอบด้วย 3 ส่วนหลัก คือ

  1. หน่วยความจำสถานะ (state memory) : เป็นฟลิปฟล็อป สำหรับจดจำสถานะการทำงานของวงจรโดยฟลิปฟล็อป n ตัว ใช้เป็นตัวแปรสถานะได้ n ตัว ใช้เก็บสถานะที่แตกต่างกันได้ 2n สถานะ
  2. วงจรตรรกะกำหนดสถานะถัดไป (next state logic circuit) : เป็นวงจรเชิงหมู่สร้างสัญญาณกระตุ้น (excitation) ป้อนเข้าหน่วยความจำสถานะ เพื่อใช้กำหนดค่าของสถานะถัดไปโดย รับสัญญาณอินพุต จากตัวแปรอินพุตของ เครื่องจักรนี้ และจากสถานะปัจจุบันที่ป้อนกลับมาจากเอาต์พุตของฟลิปฟล็อปที่ใช้เป็นหน่วยความจำสถานะ
  3. วงจรตรรกะเอาต์พุต (output logic circuit) : เป็นวงจรเชิงหมู่สำหรับสร้างสัญญาณเอาต์พุตของเครื่องสถานะจำกัดโดยอาจเป็นฟังก์ชันของสถานะ (แบบมัวร์) หรือ เป็นทั้งฟังก์ชันของสถานะและอินพุตของเครื่องสถานะจำกัด (แบบเมลลี่)