บทความนี้หรือส่วนนี้ของบทความต้องการปรับรูปแบบ ซึ่งอาจหมายถึง ต้องการจัดรูปแบบข้อความ จัดหน้า แบ่งหัวข้อ และ/หรือการจัดระเบียบอื่น ๆ คุณสามารถช่วยแก้ไขปัญหานี้ได้โดยการกดที่ปุ่ม แก้ไข ด้านบน จากนั้นปรับปรุงหรือจัดรูปแบบอื่น ๆ ในบทความให้เหมาะสม |
เครื่องจักรเมลลี่ (อังกฤษ: Mealy Machine) เป็นเครื่องสถานะจำกัดชนิดหนึ่งซึ่งเอาต์พุตของสถานะนั้นๆเป็นฟังก์ชันของสถานะปัจจุบันและอินพุต ด้วย
การวิเคราะห์วงจรเปลี่ยนสถานะตรงตามจังหวะเวลา
การวิเคราะห์วงจรเปลี่ยนสถานะตรงตามจังหวะเวลา ( Clocked Synchronous State-Machine Analysis)
- เอาต์พุตปัจจุบัน ของวงจร จะขึ้นอยู่กับ หรือเป็นฟังก์ชันของ ตัวแปรอินพุท และ สถานะปัจจุบัน ถ้าหากมีการเปลี่ยนแปลงค่าของตัวแปรอินพุท หรือ ค่าของตัวแปรสถานะเพียงอย่างใดอย่างหนึ่ง ก็จะส่งผลให้ เกิดการเปลี่ยนแปลงค่าของเอาต์พุตด้วย (มี propagation delay ขึ้นกับความซับซ้อนของวงจร G) โดย การเปลี่ยนแปลงสถานะจะเป็นจังหวะตามการ tick ของสัญญาณนาฬิกา ส่วนสัญญาณอินพุทเปลี่ยนแปลงค่าได้โดยอิสระ ไม่ขึ้นกับสัญญาณนาฬิกาของเครื่องจักรนั้นๆ
หมายเหตุ : หากต้องการให้ เอาต์พุตขึ้นอยู่กับ สัญญาณอินพุทด้วย และ เปลี่ยนค่าตามจังหวะสัญญาณนาฬิกาด้วย
สามารถทำได้โดยเพิ่มหน่วยความจำไปที่ output อีกชุดหนึ่ง (output pipeline memory) ซึ่งค่าของ pipelined outputs ขณะใดๆ จะขึ้นอยู่กับ สถานะและอินพุทในช่วงคาบของclock ก่อนการ tick ครั้งล่าสุด
- ตัวอย่างที่ 1 : Mealy Machine ที่ใช้ positive-edge-triggered D flip-flop
- จากแผนภาพวงจร จะเห็นว่าเป็น clocked synchronous เครื่องสถานะ ชนิด Mealy Machine เปลี่ยนสถานะที่ขอบขาขึ้นของ CLK (ดูจากชนิดของ flip-flop) มีตัวแปรอินพุท 1 ตัว คือ EN มีตัวแปรสถานะ 2 ตัว คือ Q0, Q1 (ดูจากจำนวน flip-flop) มีตัวแปรเอาต์พุต 1 ตัว คือ MAX
Mealy Machines
เป็น FSMs มีสถานะเปลี่ยนแปลงตามสัญญาณนาฬิกา แต่เอาต์พุต ที่ได้จะเปลี่ยนตามอินพุตที่เข้ามาในแต่ละสถานะ คือ ภายในสถานะหนึ่งๆ จะมีลักษณะของเอาต์พุตที่สามารถเปลี่ยนแปลงได้ ตามอินพุตที่เปลี่ยน หรืออาจกล่าวได้ว่า "Output ของระบบจะขึ้นอยู่กับสถานะปัจจุบัน (Present State) " และอินพุตที่เข้ามากระตุ้นระบบในขณะนั้น
Mealy Machine เป็น State Machine ที่อนุญาตให้เอาต์พุตมีการเปลี่ยนแปลงได้โดยไม่จำเป็นต้องเข้าจังหวะกับการเปลี่ยนสถานะ ที่สำคัญก็คือสถานะยังเปลี่ยนตามจังหวะ clock แต่เอาต์พุตสามารถเปลี่ยนตามอินพุตได้ทันทีโดยไม่สนใจ clock และงานบางอย่างสามารถลดจำนวนสถานะลงได้ถ้าใช้ Mealy Machine งานบางอย่างจำเป็นต้องใช้ Mealy Machine เท่านั้น ข้อเสียของ Mealy Machine คือ เข้าใจยากกว่า Moore Machine จึงออกแบบยากกว่าและเสียงต่อการเกิด glitch ที่ เอาต์พุตมากกว่า
Mealy Model
คือแบบจำลองของวงจร ซีเควนเชียล จาก 1 ใน 2 ประเภท อีกประเภทหนึ่ง คือ Moore model
ภาพด้านล่างนี้คือ แบบจำลอง Mealy จะเห็นได้ว่า มี output รวมอยู่กับการเปลี่ยน State จากStateหนึ่ง ไปอีก State หนึ่ง
เช่น จากState A ไป B จะมีลูกศรเป็นตัวชี้ และที่ลูกศรมีตัวเลขกำกับ 0/1 หมายถึงเมื่อinput เป็น 0 จะให้ output 1 และ Stateเปลี่ยนจาก A ไป B
ซึ่งเราสามารถที่จะนำ Mealy Model มาทำการวิเคราะห์วงจรซีเควนเชียลได้ โดยการวิเคราะห์วงจร ซีเควนเชียล แยกออกเป็น 4 ประเภทด้วยกัน คือ
(แบบที่ 1) วงจร Pulsed synchronous วงจรแบบนี้มี Input เป็น pulse และหน่วยความจำมีนาฬิกาดังที่ได้กล่าวมาแล้ว แต่ input pulse จะเข้าจังหวะ (Synchronous) กับนาฬิกา หรือ ไม่เข้าจังหวะ (Asynchronous) กับนาฬิกาก็ได้ซึ่งทั้งสองกรณี input pulse จะมีผลต่อการเปลี่ยนสถานะต่อไปของวงจร ในช่วงจังหวะที่มี pulseนาฬิกาเท่านั้น
(แบบที่ 2) วงจร Level synchronous วงจรแบบนี้จะรวมถึงวงจรทั้งหมดที่มีหน่วยความจำควบคุมโดยสัญญาณนาฬิกา และ สัญญาณ Input เป็น level ไม่ว่า level นั้นจะเข้าจังหวะกับสัญญาณนาฬิกาหรือไม่
(แบบที่ 3) วงจร Pulsed asynchronous ต้องใช้ความรอบคอบเป็นพิเศษ เนื่องจากไม่มี pulse นาฬิกาเป็นตัวกำหนดจังหวะที่จะเกิดการ เปลี่ยนแปลงของวงจร ดังนั้น State ของวงจรจะเปลี่ยนแปลงทันที เมื่อ input ที่เข้ามาเปลี่ยนแปลง
(แบบที่ 4) วงจร เลเวลอซิงโครนัสเป็นวงจรที่มี input เป็น level และไม่มี clock ควบคุมหน่วยความจำป็นแบบที่วิเคราะห์ได้ยากที่สุด ทำให้เราสามารถวิเคราะห์วงจรลอจิก ต่างๆ โดยหาState table และ Timing diagram ของมันได้
และภาพด้านล่างนี้คือ mealy machine timing diagramตัวอย่างแผนผังเวลาการทำงานของวงจรแต่ละวงจร
ตัวอย่าง :จากตารางสภาวะข้างล่างนี้เป็นรูปแบบของ มิลลี ให้หา
ก) ผังสภาวะ (state diagram) ข) ASM. Chart ค) คุณลักษณะของ Z (ลำดับของ Z) เมื่อมี Input x เป็นดังนี้ x = 011011 และสภาวะเริ่มต้นอยู่ที่สภาวะ A
วิธีทำ พิจารณาจากตารางสภาวะที่ให้มา จะพบว่าOutput Z จะขึ้นกับทั้ง Input x และ PS (y) โดยที่ Input x = 0, 1 (มี 2 ค่า) ตัวแปรสภาวะ (state) = A, B, C (3 สภาวะ) มักแทนด้วย Code เช่น A = 00, B = 01, C = 10 Output Z = 0, 1 (2 ค่า)
ก) เขียน state diagram ได้ดังนี้
ข) ASM. Chart เขียนได้ดังนี้
ค) หาลำดับของ output Z เมื่อ input x = 011011 และ สภาวะเริ่มต้นที่สภาวะ A ∴ เราสามารถแสดงการทำงานได้ดังนี้
เวลา : 1 2 3 4 5 6
Input x : 0 1 1 0 1 1 (6 bit)
สภาวะเริ่มต้น y : A B A C A C
สภาวะต่อไป Y : B A C A C C
Output Z : 1 1 0 0 0 0
Mealy Finite State Machine
มาทำความรู้จักกับ Finite State Machines หรือ FSMs ซึ่งเป็นเครื่องมือที่ใช้สำหรับออกแบบวงจรที่มีสัญญาณนาฬิกาควบคุมการทำงาน (Sequential) มีการทำงานเป็นสถานะ (State) แต่ละสถานะจะมีการทำงานที่แตกต่างกัน ค่าเอาต์พุตและสถานะถัดไป จะถูกกำหนดโดยอินพุตที่เข้ามายังสถานะนั้นๆ ทำให้สามารถเปลี่ยนจากสถานะหนึ่งไปยังสถานะอื่นๆได้ ซึ่งเป็นเครื่องมือที่มีประโยชน์มากในการออกแบบระบบดิจิทัล เพื่อนำไปอธิบายการทำงานของวงจร โดยทั่วไปวงจรที่ประกอบไปด้วย หน่วยความจำ หรือรีจีสเตอร์ ถือว่าเป็น Finite State Machines (FSMs)
อ้างอิง
- Mealy, George H. (1955). A Method to Synthesizing Sequential Circuits. Bell Systems Technical Journal. pp. 1045–1079.
- Roth, Charles H., Jr. (2004). Fundamentals of Logic Design. Thomson-Engineering. pp. 364–367. ISBN .
wikipedia, แบบไทย, วิกิพีเดีย, วิกิ หนังสือ, หนังสือ, ห้องสมุด, บทความ, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม, มือถือ, โทรศัพท์, Android, iOS, Apple, โทรศัพท์โมบิล, Samsung, iPhone, Xiomi, Xiaomi, Redmi, Honor, Oppo, Nokia, Sonya, MI, PC, พีซี, web, เว็บ, คอมพิวเตอร์
bthkhwamnihruxswnnikhxngbthkhwamtxngkarprbrupaebb sungxachmaythung txngkarcdrupaebbkhxkhwam cdhna aebnghwkhx cdlingkphayin aela hruxkarcdraebiybxun khunsamarthchwyaekikhpyhaniidodykarkdthipum aekikh danbn caknnprbprunghruxcdrupaebbxun inbthkhwamihehmaasm ekhruxngckremlli xngkvs Mealy Machine epnekhruxngsthanacakdchnidhnungsungexatphutkhxngsthanannepnfngkchnkhxngsthanapccubnaelaxinphut dwykarwiekhraahwngcrepliynsthanatrngtamcnghwaewlakarwiekhraahwngcrepliynsthanatrngtamcnghwaewla Clocked Synchronous State Machine Analysis exatphutpccubn khxngwngcr cakhunxyukb hruxepnfngkchnkhxng twaeprxinphuth aela sthanapccubn thahakmikarepliynaeplngkhakhxngtwaeprxinphuth hrux khakhxngtwaeprsthanaephiyngxyangidxyanghnung kcasngphlih ekidkarepliynaeplngkhakhxngexatphutdwy mi propagation delay khunkbkhwamsbsxnkhxngwngcr G ody karepliynaeplngsthanacaepncnghwatamkar tick khxngsyyannalika swnsyyanxinphuthepliynaeplngkhaidodyxisra imkhunkbsyyannalikakhxngekhruxngckrnnhmayehtu haktxngkarih exatphutkhunxyukb syyanxinphuthdwy aela epliynkhatamcnghwasyyannalikadwy samarththaidodyephimhnwykhwamcaipthi output xikchudhnung output pipeline memory sungkhakhxng pipelined outputs khnaid cakhunxyukb sthanaaelaxinphuthinchwngkhabkhxngclock kxnkar tick khrnglasud twxyangthi 1 Mealy Machine thiich positive edge triggered D flip flop cakaephnphaphwngcr caehnwaepn clocked synchronous ekhruxngsthana chnid Mealy Machine epliynsthanathikhxbkhakhunkhxng CLK ducakchnidkhxng flip flop mitwaeprxinphuth 1 tw khux EN mitwaeprsthana 2 tw khux Q0 Q1 ducakcanwn flip flop mitwaeprexatphut 1 tw khux MAXMealy Machinesepn FSMs misthanaepliynaeplngtamsyyannalika aetexatphut thiidcaepliyntamxinphutthiekhamainaetlasthana khux phayinsthanahnung camilksnakhxngexatphutthisamarthepliynaeplngid tamxinphutthiepliyn hruxxacklawidwa Output khxngrabbcakhunxyukbsthanapccubn Present State aelaxinphutthiekhamakratunrabbinkhnann Mealy Machine epn State Machine thixnuyatihexatphutmikarepliynaeplngidodyimcaepntxngekhacnghwakbkarepliynsthana thisakhykkhuxsthanayngepliyntamcnghwa clock aetexatphutsamarthepliyntamxinphutidthnthiodyimsnic clock aelanganbangxyangsamarthldcanwnsthanalngidthaich Mealy Machine nganbangxyangcaepntxngich Mealy Machine ethann khxesiykhxng Mealy Machine khux ekhaicyakkwa Moore Machine cungxxkaebbyakkwaaelaesiyngtxkarekid glitch thi exatphutmakkwaMealy Modelkhuxaebbcalxngkhxngwngcr siekhwnechiyl cak 1 in 2 praephth xikpraephthhnung khux Moore model phaphdanlangnikhux aebbcalxng Mealy caehnidwa mi output rwmxyukbkarepliyn State cakStatehnung ipxik State hnung echn cakState A ip B camiluksrepntwchi aelathiluksrmitwelkhkakb 0 1 hmaythungemuxinput epn 0 caih output 1 aela Stateepliyncak A ip B sungerasamarththicana Mealy Model mathakarwiekhraahwngcrsiekhwnechiylid odykarwiekhraahwngcr siekhwnechiyl aeykxxkepn 4 praephthdwykn khux aebbthi 1 wngcr Pulsed synchronous wngcraebbnimi Input epn pulse aelahnwykhwamcaminalikadngthiidklawmaaelw aet input pulse caekhacnghwa Synchronous kbnalika hrux imekhacnghwa Asynchronous kbnalikakidsungthngsxngkrni input pulse camiphltxkarepliynsthanatxipkhxngwngcr inchwngcnghwathimi pulsenalikaethann aebbthi 2 wngcr Level synchronous wngcraebbnicarwmthungwngcrthnghmdthimihnwykhwamcakhwbkhumodysyyannalika aela syyan Input epn level imwa level nncaekhacnghwakbsyyannalikahruxim aebbthi 3 wngcr Pulsed asynchronous txngichkhwamrxbkhxbepnphiess enuxngcakimmi pulse nalikaepntwkahndcnghwathicaekidkar epliynaeplngkhxngwngcr dngnn State khxngwngcrcaepliynaeplngthnthi emux input thiekhamaepliynaeplng aebbthi 4 wngcr elewlxsingokhrnsepnwngcrthimi input epn level aelaimmi clock khwbkhumhnwykhwamcapnaebbthiwiekhraahidyakthisud thaiherasamarthwiekhraahwngcrlxcik tang odyhaState table aela Timing diagram khxngmnid aelaphaphdanlangnikhux mealy machine timing diagramtwxyangaephnphngewlakarthangankhxngwngcraetlawngcr twxyang caktarangsphawakhanglangniepnrupaebbkhxng milli ihha k phngsphawa state diagram kh ASM Chart kh khunlksnakhxng Z ladbkhxng Z emuxmi Input x epndngni x 011011 aelasphawaerimtnxyuthisphawa A withitha phicarnacaktarangsphawathiihma caphbwaOutput Z cakhunkbthng Input x aela PS y odythi Input x 0 1 mi 2 kha twaeprsphawa state A B C 3 sphawa mkaethndwy Code echn A 00 B 01 C 10 Output Z 0 1 2 kha k ekhiyn state diagram iddngni kh ASM Chart ekhiyniddngni kh haladbkhxng output Z emux input x 011011 aela sphawaerimtnthisphawa A erasamarthaesdngkarthanganiddngni ewla 1 2 3 4 5 6 Input x 0 1 1 0 1 1 6 bit sphawaerimtn y A B A C A C sphawatxip Y B A C A C C Output Z 1 1 0 0 0 0Mealy Finite State Machinemathakhwamruckkb Finite State Machines hrux FSMs sungepnekhruxngmuxthiichsahrbxxkaebbwngcrthimisyyannalikakhwbkhumkarthangan Sequential mikarthanganepnsthana State aetlasthanacamikarthanganthiaetktangkn khaexatphutaelasthanathdip cathukkahndodyxinphutthiekhamayngsthanann thaihsamarthepliyncaksthanahnungipyngsthanaxunid sungepnekhruxngmuxthimipraoychnmakinkarxxkaebbrabbdicithl ephuxnaipxthibaykarthangankhxngwngcr odythwipwngcrthiprakxbipdwy hnwykhwamca hruxricisetxr thuxwaepn Finite State Machines FSMs xangxingMealy George H 1955 A Method to Synthesizing Sequential Circuits Bell Systems Technical Journal pp 1045 1079 Roth Charles H Jr 2004 Fundamentals of Logic Design Thomson Engineering pp 364 367 ISBN 0534378048