fpga112

ماژولی به نام sinGen ساختیم که سیگنال سینوسی را تولید می کند. این برنامه در واقع یک counter است . این counter حداکثر می تواند 16 بیتی باشد. چون AK داده ها را 16بیت 16 بیت مبادله می کند. ما به دلخواه یک counter 12 بیتی درنظر گرفتیم. با ResetL کل برنامه که به صورت آسنکرون عمل می کند counter را صفر می کنیم. هم چنین بیتی به نام flag نیز در نظر گرفتیم که هنگامی که کانتر به مینیمم یا ماکزیمم خود می رسد flag را تغییر می دهیم و با کمک آن برنامه متوجه می شود که کانتر باید رو به پایین شمارش کند یا رو به بالا. (چون کانتر وقتی صفر است باید یکی یکی اضافه شود و وقتی به ماکزیمم خود می رسد باید یکی یکی از آن کم شود تا دوباره به صفر برسد.) درواقع ما یک سیگنال مثلثی بین صفر و 111111111111 تولید کرده ایم.برنامه ی sinGen  را نیز تست و شبیه سازی کردیم.حالا باید خروجی ماژول sinGen را به ورودی datamodule پورت SampleToAK (که قبلا به idataIn متصل بود) متصل کنیم. قبلا در ماژول tester مقدار دلخواهی برای idataIn درنظر می گرفتیم و ماژول دیتا را شبیه سازی می کردیم اما اکنون دیگر به این پورت نیازی نداریم و از خروجی تولید کننده ی سیگنال سینوسی به عنوان ورودی AK استفاده می کنیم.در مرحله ی بعد پورتهای بین ماژولها را متصل کرده و شبیه سازی کردیم.

fpga simulation picture

/ 1 نظر / 5 بازدید
محمد

سلام من ترم 3 برق هستم از میکروها فقط میدونم که یه کامپیوتر کوچیکه همین اما دلم میخواد بیشتر بدونم و یاد بگیرم لطفا رهنمایی کنید از کجا شروع کنم و کودوم زبان های برنامه نویسی رو باید بلد باشم ممنون