نوشته‌ها

کدنویسی آسان به کمک قابلیت Generic

آیا این جملات برای شما هم آشنا هستند؟

این کد‍ را دو ماه پیش نوشتم. بعضی از مقادیر و پارامترها تغییر کرده‌اند و حالا باید آنها را در کد اعمال کنم. اما تغییر کد فوق‌العاده مشکل است. نمی‌دانم دقیقا باید کجای کد را تصحیح کنم! در واقع همه چیز را فراموش کردم.

یا

کدی را که همکار سابق من در یک سال پیش نوشته است برای انجام چند تغییر به من داده‌اند. اما هر چه آن را بررسی می‌کنم، چیزی از آن سر در نمی‌آورم!

بررسی و انجام تغییرات در کدی که چند ماه یا حتی چند سال پیش نوشته است، امری معمول در فرآیند انجام پروژه‌های حرفه‌ای است. این کار می‌تواند فوق‌العاده مشکل و دردسرساز باشد اگر هنگام نوشتن کد، به روزی که مجبور به ایجاد تغییرات در آن هستید فکر نکرده باشید.

ادامه مطلب …

رمز و راز ساختارهای شرطی در زبان VHDL

فکر می‌کنید اگر یک کد بزرگ به زبان VHDL یا Verilog را بررسی کنید، چه ساختاری بیش از بقیه در آن به کار رفته است؟

احتمالا درست حدس زدید…

ساختارهای شرطی.

بنابراین به نظر منطقی است که توجه ویژه‌ای به این ساختار و تکنیک‌های استفاده صحیح از آن داشته باشیم، چون عمده کد شما از آن تشکیل شده است.

در این مقاله، ساختارهای شرطی در زبان VHDL را به صورت کاملا مفهومی بررسی می‌کنم و نکات فوق‌العاده کاربردی و اثرگذار در استفاده بهینه از این ساختارها را به شما معرفی می‌کنم.

ادامه مطلب …

آنچه در سال ۹۵ انجام دادیم

اگر از من در مورد مهمترین دستاوردهای سال ۹۵ برای گروه مهندسی فراد اندیش بپرسند، بدون شک پاسخ من این خواهد بود:

در سال ۹۵ موفق شدیم رشته‌های اعتماد بین خودمان و مخاطبانمان را به نحو چشمگیری تقویت کنیم و این سنگ بنای موفقیت ما در سال‌های بعد خواهد بود.

اما عامل به وجود آمدن این اعتماد چه بود؟

ادامه مطلب …

پروژه: پیاده‌سازی الگوریتم FFT

شاید بتوان الگوریتم FFT را مهمترین الگوریتم ۱۰۰ سال اخیر در حوزه پردازش سیگنال دیجیتال دانست. الگوریتم FFT در بسیاری از سیستم‌های پردازش سیگنال کاربرد دارد و بنابراین، پیاده‌سازی بهینه آن، مساله مهمی در ساخت این نوع سیستم‌ها است. در این مقاله، در مورد این الگوریتم و نحوه پیاده‌سازی آن در FPGA صحبت خواهم کردم و ایده‌هایی را برای پیاده‌سازی ارائه خواهم کرد.

ادامه مطلب …

پروژه هفته: پیاده‌سازی پروتکل RS232

پروتکل RS232 یکی از پروتکل‌های قدیمی اما در عین حال، پرکاربرد در صنایع مختلف است. از این پروتکل می‌توان برای انتقال اطلاعات با سرعت کم و در فواصل متوسط استفاده کرد. با توجه به سادگی این پروتکل و عملکرد مناسب آن از لحاظ انتقال سالم اطلاعات، هنوز هم در بسیاری از کاربردهای صنعتی و نظامی از پروتکل RS232 استفاده می‌شود.

ادامه مطلب …

پیاده‌سازی عملی یک پروژه در FPGA

پیاده‌سازی عملی یک پروژه FPGA شامل مراحلی است که باید پشت سر هم و به دقت باید انجام شوند تا نتیجه مطلوب حاصل شود. در این برنامه ویدئویی، تمام مراحل مربوط به پیاده‌سازی را مرحله به مرحله و به کمک یک برد آموزشی به شما نشان خواهم داد.

ادامه مطلب …

پروژه: پیاده‌سازی فیلتر دیجیتال

فیلتر دیجیتال یکی از مهم‌ترین بخش‌های بیشتر الگوریتم‌های پردازش سیگنال دیجیتال است. تقریبا در اکثر سیستم‌هایی که نوعی از پردازش سیگنال دیجیتال در آنها وجود دارد، یک یا چند فیلتر دیجیتال هم موجود است. روند استفاده از این فیلترها در یک سیستم، از طراحی فیلتر شروع و به پیاده‌سازی آن ختم می‌شود. در این مقاله، بیشتر در مورد موضوعات مربوط به پیاده‌سازی صحبت می‌کنم.

ادامه مطلب …

پروژه: پیاده‌سازی پروتکل SPI

پروتکل SPI یکی از پرکاربردترین استانداردهای ارتباطی برای فواصل کوتاه و سرعت نسبتا زیاد است. در بخش دیجیتال بسیاری از پروژه‌های صنعتی یا نظامی، حداقل یک ارتباط SPI وجود دارد. در اولین قسمت بخش جدید “پروژه هفته“، به معرفی پروتکل SPI و ملزومات پیاده‌سازی آن در FPGA می‌پردازم.

ادامه مطلب …

۱۰ خطای کدنویسی رایج در زبان VHDL

آیا به تازگی شروع به کدنویسی به زبان VHDL کرده‌اید و بعد از نوشتن هر کد با انواع پیام‌های مربوط به خطای کدنویسی روبرو می‌شوید؟

آیا این پیام‌ها شما را سردرگم کرده‌اند و نمی‌دانید چگونه آنها را برطرف کنید؟

در این مقاله، ۱۰ خطای کدنویسی رایج به زبان VHDL را معرفی خواهم کرد و برای هر خطا، دلیل رخ دادن آن، متن پیام خطا، و نحوه برطرف کردن آن را توضیح خواهم داد.
ادامه مطلب …

چطور یک برد آموزشی FPGA مناسب برای یادگیری انتخاب کنیم؟

اگر شما در حال یادگیری FPGA و نحوه پیاده‌سازی مدارات دیجیتال به کمک این تکنولوژی هستید، به احتمال زیاد جستجویی هم در مورد برد آموزشی FPGA در بازار ایران انجام داده‎‌اید و با انواع بردهای ساده و پیچیده برخورد کرده‌اید.

استفاده از یک برد آموزشی FPGA و انجام تمرین‌های متنوع با آن، بدون شک به یادگیری شما و رسیدن به درکی عمیق‌تر از فرآیند پیاده‌سازی دیجیتال کمک خواهد کرد. اما یک برد آموزشی FPGA مناسب دارای چه خصوصیاتی است؟ چه اشتباهات رایجی در انتخاب و خرید این بردها وجود دارند؟

ادامه مطلب …