ماشین الگوریتم حالت
روش ماشین الگوریتمی(انگلیسی: Algorithmic state machine) یا (ASM) یک روش برای طراحی ماشینها است. این ماشین برای نشان دادن نمودارهایمدارهای دیجیتال یکپارچه شدهاستفاده میشود. نمودار ASM، مانند نمودار حالت است اما غیررسمی تر و در نتیجه درک آن آسانتر است. یک نمودار ASM یک روش توصیف عملیاتی پی در پی و متوالی یک سیستم دیجیتال است.
روش ASM
روش ASM از مراحل زیر تشکیل شدهاست.
- ایجاد الگوریتم با استفاده از شبه کد برای توصیف عملکرد مورد انتظار دستگاه
- تبدیل شبه کد به نمودار ASM
- طراحی مسیر داده (datapath) براساس نمودار ASM
- ایجاد یک نمودار دقیق ASM براساس مسیر داده
- طراحی کنترل منطقی براساس جزئیات نمودار ASM
نمودار ASM
نمودار ASM، شامل چهار عنصر اساسی است. نام واحد، واحد، چک کردن واحد، خروجیهای شرطی. یک ASM به صورت یک مستطیل نشان داده میشود که حالتها از یک نمودار منظم میباشد. خروجی از نوع ماشین مور در درون مستطیل نشان داده شدهاست.
نام واحد: نام یک واحد در داخل دایره نشان داده شدهاست؛ و دایره در گوشه سمت چپ قرار دارد یا نام بدون دایره قرار دارد.
باکس واحد
خروجی واحد در داخل مستطیل نشان داده شدهاست.
باکس تصمیمگیری
یک لوزی نشان میدهد که شرط بیان شده مورد آزمایش قرار گرفته و مسیر خروجی به ترتیب انتخاب می-شود. شرایط بیان شامل یک یا چند ورودی به FSM میباشد. برای وضعیت ASM نشان داده شده توسط یک لوزی یا یک ورودی و دو خروجی است و به شرط انتقال بین دو حالت یا یک حالت و خروجی مشروط استفاده میشود. باکس تصمیمگیری حاوی شرایط بیان شده برای آزمایش بوده و این بیان شامل ورودی برای FSM میباشد.
باکس خروجی شرطی: باکس خروجی شرطی به شکل بیضی نشان داده میشود که سیگنال خروجی از نوع میلی میباشد. این خروجیها نه تنها به واحد بلکه همچنین به ورودیهای FSM نیز بستگی دارد.
مسیر داده
هنگامی که عملیات مورد نظر در یک مدار با استفاده از عملیات RTL توصیف شدهاست، اجراهای مسیر داده میتوانند مشتق شوند. هر متغیر منحصر به فرد که یک مقدار در برنامه RTL را به خود اختصاص دادهاست که میتواند به عنوان یک واحد ثبت شده اجرا شود، وابسته به عملیات عملکردی که هنگام اختصاص یک مقدار به یک متغیر انجام میشود، ثبت برای آن متغیر ممکن است به صورت ساده بوده و متغیر در آن دیده شود و یک شمارنده پیش از بلوک منطقی به صورت ترتیبی قرار بگیرد. بلوک منطقی ترتیبی با یک ثبت مرتبط است؛ و میتواند یک کامپایلر را از طریق تابع منطقی ترکیبی اجرا کند.
جزئیات نمودار ASM
هنگامی که مسیر داده طراحی شد، نمودار ASM به یک نمودار دقیق تبدیل میشود. نماد RTL با سیگنالهای تعریف شده در مسیر داده جایگزین میشود.
جستارهای وابسته
منابع
-
- Christopher R. Clare: Designing Logic Systems Using State Machines, McGraw-Hill 1973, شابک ۰−۰۷−۰۱۱۱۲۰−۰ .
- Sunggu Lee: Computer Design: An Example of Advanced Digital Logic Design, Prentice-Hall 2000, شابک ۰−۱۳−۰۴۰۲۶۷−۲ .
- Sunggu Lee: Advanced Digital Logic Design: Using VHDL, State Machines, and Synthesis for FPGAs, Thomson 2006, شابک ۰−۵۳۴−۴۶۶۰۲−۸ .
- Stephen D. Brown, Zvonko Vranesic: Fundamentals of Digital Logic with VHDL Design.