آموزش اِف‌پی‌جی‌اِی از صفر
3.37K subscribers
520 photos
14 videos
10 files
517 links
آموزش قدم به قدم طراحی دیجیتال به کمک FPGA

🌎 آموزشگاه فراد اندیش
www.FaradAndish.com
☎️ ۴۲۴۳۹۹۰۰
ایمیل سایت:
help@faradandish.com

📌 لینک اولین پست کانال:
https://t.me/fpga0/22
Download Telegram
🆔 @FPGA0
#مقاله۱۲
🎓 ۲ روش برای تعیین استراتژی طراحی در نرم‌افزار ISE

📚 نوشته فاطمه مشاک

📥 در سایت فراد اندیش بخوانید 👇👇👇👇

🌎 http://bit.ly/DesignStrategyGoals
⚡️ نحوه اختصاص پورت‌های مدار به پین‌های FPGA (قسمت دوم)

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

🔷 چون در غیر این صورت، نرم‌افزار ISE از اینکه شما روی بُرد از کدام‌یک از پین‌‌ها برای اتصال به قطعات مختلف استفاده کرده‌اید، اطلاعی ندارد.

این قید ضروری، قید مکان یا Location نام دارد که به‌طور مخفف به‌صورت LOC نوشته می‌شود.

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

🌀 برای مثال، اگر اسیلاتور روی بُرد به پین شماره p14 از FPGA وصل شده باشد، پورت تک‌بیتی Clock مدار را به‌صورت زیر به این پین متصل می‌کنیم:

Net "Clock" LOC = p14;

🔷 اگر بخواهید قید LOC را برای پورت‌های برداری یا چند‌بیتی بنویسید، باید برای هر کدام از بیت‌ها، یک‌بار از قید LOC استفاده کنید و آن بیت را به پین مورد نظرتان از FPGA وصل کنید.

برای اطلاعات بیشتر، می‌توانید مقاله "اختصاص پورت‌های مدار به پین‌های FPGA" را از سایت فراداندیش مطالعه کنید:

🌎 http://bit.ly/Pin_Assignment

🆔 @FPGA0
🌟 آشنایی با نرم‌افزار ویوادو...

🔹 قابلیت‌های مهم نرم‌افزار ویوادو چیست و چرا باید از آن استفاده کنیم؟

🎥 در جدیدترین ویدئوی آموزشی سایت که امروز منتشر می‌شود، شما را با نرم‌افزار اصلی پیاده‌سازی سخت‌افزاری به کمک FPGAهای شرکت Xilinx یعنی ویوادو آشنا می‌کنم.

⚡️ آموزش نرم‌افزار ویوادو تا چند روز دیگر به عنوان جلسه نهم دوره آنلاین طراحی دیجیتال با FPGA اضافه خواهد شد 👇

🆔 @FPGA0
🆔 @FPGA0
#برنامه_ویدئویی۳۸
🎓 آشنایی با نرم‌افزار ویوادو – قسمت اول

🎥 برنامه ویدئویی احمد ثقفی
🕘 زمان: ۱۵ دقیقه

📥 در سایت فراد اندیش ببینید 👇👇👇👇

🌎 http://bit.ly/Vivado1
⚡️ خبر فوری...

🔹آموزش فشرده نرم‌افزار ویوادو در همین هفته به دوره آنلاین طراحی دیجیتال با FPGA اضافه می‌شود

❇️ اگر در دوره آنلاین طراحی دیجیتال با FPGA شرکت کرده‌اید، با ورود به بخش "دوره‌های من" به این آموزش دسترسی خواهید داشت

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

🆔 @FPGA0
🆔 @FPGA0
#برنامه_ویدئویی۳۹
🎓 آشنایی با نرم‌افزار ویوادو – قسمت دوم

🎥 برنامه ویدئویی احمد ثقفی
🕘 زمان: ۱۹ دقیقه

📥 در سایت فراد اندیش ببینید 👇👇👇👇

🌎 http://bit.ly/Vivado2
⚡️ آموزش ویوادو منتشر شد...

🔹 آموزش کاربری روزمره ویوادو در حال حاضر منتشر شده است و به عنوان نهمین جلسه به دوره آنلاین طراحی دیجیتال با FPGA اضافه شده است

🔶 این جلسه، در مقایسه با هشت جلسه قبلی این دوره، بسیار بزرگتر و طولانی‌تر است و شامل ۱۵ درس در مورد کاربری روزمره ویوادو است.

🔹 اگر قبلا در این دوره ثبت‌نام کرده‌اید، همین حلا می‌توانید در سایت لاگین کنید و از بخش "دوره‌های من" به این آموزش دسترسی داشته باشید

🔹 اما اگر در دوره طراحی دیجیتال با FPGA هم شرکت نکرده‌اید نگران نباشید چون من چندین آموزش رایگان کاربردی در مورد ویوادو تهیه کرده‌ام که تا همین حالا دو تا از آنها در سایت منتشر شده‌اند:

🌎 http://bit.ly/Vivado1
🌎 http://bit.ly/Vivado2

🔹 من چند آموزش رایگان دیگر هم آماده کرده‌ام که در روزهای آتی در سایت منتشر خواهند شد.

🆔 @FPGA0
Media is too big
VIEW IN TELEGRAM
⚡️ صدور مدرک آنلاین برای دوره‌های آنلاین فراد اندیش...

🔹تا به امروز، ما امکان صدور مدرک برای شرکت کنندگان در دوره‌های آنلاین را نداشتیم

🌟 ما مشکلات موجود برای انجام این کار را برطرف کرده‌ایم و به زودی این امکان به دوره‌های آنلاین اضافه خواهد شد

🔶 اما مشکلی که برای این کار وجود داشت چه بود؟ و چگونه برطرف شد؟

🔹 برای پاسخ به این سوالات، این ویدئوی کوتاه را مشاهده کنید 👆

🆔 @FPGA0
🌟 فایل قیود کاربر در ویوادو...

🔹 برای پیاده‌سازی عملی یک پروژه به کمک نرم‌افزار ویوادو، حداقل به دو فایل نیاز دارید: فایل VHDL یا Verilog و فایل قیود کاربر یا XDC

🎥 در جدیدترین ویدئوی آموزشی سایت که امروز منتشر می‌شود، شما را با فایل قیود کاربر در نرم‌افزار ویوادو آشنا می‌کنم

🔹 اگر تصمیم دارید پروژه‌ای را به صورت عملی روی FPGA پیاده‌سازی کنید، پیشنهاد می‌کنم حتما این برنامه را ببینید 👇

🆔 @FPGA0
🆔 @FPGA0
#برنامه_ویدئویی۴۰
🎓 فایل قیود کاربر در نرم‌افزار ویوادو

🎥 برنامه ویدئویی احمد ثقفی
🕘 زمان: ۳۰ دقیقه

📥 در سایت فراد اندیش ببینید 👇👇👇👇

🌎 http://bit.ly/XDCfile
Media is too big
VIEW IN TELEGRAM
⚡️ معرفی برد استفاده شده در دوره ویوادو...

🔹 با توجه به اینکه نرم‌افزار ویوادو از FPGAهای سری ۶ پشتیبانی نمی‌کند، امکان استفاده از برد فراد ۱ برای کار با این نرم‌افزار وجود ندارد

🔶 به همین دلیل هم ما برد جدیدی را برای تولید این آموزش تهیه کرده‌ایم

🔹 در این ویدئوی کوتاه، من برد Arty S7 را که در دوره ویوادو استفاده شده است به شما معرفی می‌کنم 👆

👥 اگر برد مناسب دیگری برای کار با نرم‌افزار ویوادو می‌شناسید، خوشحال می‌شوم آن را در بخش نظرات صفحه زیر معرفی کنید 👇

🌎 https://faradandish.com/arty-s7/

🆔 @FPGA0
🌟 دانلود، نصب و کرک نرم‌افزار ویوادو...

🔹 برای پیگیری عملی آموزش‌های مرتبط با نرم‌افزار ویوادو، نیاز به نصب یک نسخه سالم از این نرم‌افزار دارید

🎥 در جدیدترین ویدئوی آموزشی سایت که امروز منتشر می‌شود، شما را با نحوه نصب و کرک نرم‌افزار ویوادو آشنا می‌کنم

🔹 در صفحه این آموزش، لینک دانلود نرم‌افزار را هم قرار داده‌ام تا بتوانید هر چه سریع‌تر آن را نصب کرده و یادگیری را شروع کنید 👇

🆔 @FPGA0
🆔 @FPGA0
#برنامه_ویدئویی۴۱
🎓 دانلود، نصب و کرک نرم‌افزار ویوادو

🎥 برنامه ویدئویی احمد ثقفی
🕘 زمان: ۱۳ دقیقه

📥 در سایت فراد اندیش ببینید 👇👇👇👇

🌎 http://bit.ly/InstallVivado
⚡️ همین حالا در آزمون آنلاین شرکت کنید و مدرک دیجیتالی‌تان را دریافت کنید...

🔹 برای آشنایی با نحوه شرکت در آزمون آنلاین و دریافت مدرک دیجیتالی، ویدئوی زیر را ببینید: 👇

🌎 https://faradandish.com/course-faq/#cer

🔹 اولین آزمون آنلاین که مربوط به دوره طراحی دیجیتال با FPGA است آماده شده است.

🔶 اگر قبلا در دوره آنلاین طراحی دیجیتال با FPGA شرکت کرده‌اید، همین حالا می‌توانید در آزمون آنلاین شرکت کنید و به محض پایان آزمون، مدرک دیجیتالی خودتان را دریافت کنید.

🆔 @FPGA0
⚡️ چرا در FPGA مدار را به‌صورت کاملاً سنکرون پیاده‌سازی کنیم؟ (قسمت اول)

🔷 الگوی استاندارد کدنویسی برای FPGA، شامل مجموعه روش‌ها و تکنیک‌هایی است که منجر به پیاده‌سازی بهینه درون FPGA می‌شود.

🔷 یکی از مهم‌ترین ارکان الگوی استاندارد کدنویسی برای FPGA، پیاده‌سازی مدار به‌صورت کاملاً سنکرون است.

🔷 توصیه مستقیم شرکت Xilinx نیز این است که مدارها را به‌صورت کاملاً سنکرون در FPGA پیاده‌سازی کنیم.

پیاده‌سازی مدار به‌صورت کاملاً سنکرون سه مزیت دارد:

🔆 استفاده از منابع سخت‌افزاری کمتر
🔆 افزایش سرعت مدار
🔆 قابلیت اطمینان بیشتر

اگر دوست دارید بدانید که چگونه پیاده‌سازی کاملاً سنکرون موجب این مزیت‌ها می‌شود، به مقاله زیر در سایت فراداندیش مراجعه کنید:

🌎 https://bit.ly/Synchronous-Implementation

در این مقاله، با مقایسه یک مدار آسنکرون و یک مدار سنکرون پیاده‌سازی شده در FPGA، نحوه استفاده بهینه نرم‌افزار پیاده‌ساز از فلیپ‌فلاپ‌های درون FPGA را نشان خواهم داد.

اما نحوه کدنویسی یک مدار کاملاً سنکرون به چه صورت است؟

در پست بعدی، به این مسئله می‌پردازم.

ادامه دارد...

🆔 @FPGA0
برای پیاده‌سازی حافظه‌های کوچک (در حد چند ده یا چند صد بیت)، بهتر است از کدام نوع حافظه استفاده کنیم؟
Anonymous Quiz
65%
حافظه‌ توزیع‌شد‌‌ه
35%
حافظه‌ بلوکی
♨️ برای اطلاعات بیشتر درباره انواع حافظه‌ها در FPGA و کاربرد هر کدام از آن‌ها، به مجموعه پست زیر مراجعه کنید👇👇👇

https://t.me/fpga0/985
https://t.me/fpga0/986
https://t.me/fpga0/987

🆔 @FPGA0
⚡️ چرا در FPGA مدار را به‌صورت کاملاً سنکرون پیاده‌سازی کنیم؟ (قسمت دوم)

🔷 در پست قبل، به مزایای پیاده‌سازی کاملاً سنکرون در FPGA اشاره کردم. در این پست، به نحوه کدنویسی برای داشتن چنین مداری می‌پردازم.

❇️ نحوه کدنویسی برای توصیف یک مدار کاملاً سنکرون

🔷 شما در پیاده‌سازی یک مدار به‌صورت کاملاً سنکرون، باید تمام ورودی‌ها و تمام ارجاعات درون مدار را همزمان با سیگنال کلاک انجام دهید.

🔷 اما در عمل و در کد VHDL، برای انجام همزمان ارجاعات با سیگنال کلاک، باید به چه ترتیب عمل کرد؟

در پیاده‌سازی HDL (به‌کمک زبان VHDL یا Verilog)، برای سنکرون کردن کامل مدار، باید تمام مدارتان را درون شرط بالارونده کلاک توصیف کنید.

🔷 اکنون به‌کمک یک مثال، منظور از این عبارت را بیان می‌کنم؛ کد زیر را در نظر بگیرید:

architecture Behavioral of synch is
Begin
process(Clock)
Begin
if rising_edge(Clock) then

A <= B;
E <= D;

end if;
end process;
end Behavioral;

🔷 در این کد، دو مشخصه وجود دارد که باعث می‌شود، مدار توصیف شده توسط آن، به‌صورت یک مدار کاملاً سنکرون درون FPGA پیاده‌سازی شود.

❇️ مشخصه اول این است که تنها سیگنالی که درون لیست حساسیت پراسس این کد نوشته شده، سیگنال کلاک است.

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

❇️ مشخصه دومی که در این کد وجود دارد این است که پس از کلمه begin مربوط به این پراسس، شرط لبه بالارونده کلاک نوشته شده است؛ همان‌طور که مشاهده می‌کنید، تمامی ارجاعات، درون این شرط قرار گرفته‌اند.

🔷 مداری که در این کد نمونه توصیف شده است، یک مدار بسیار ساده است که تنها دارای دو ارجاع است؛ اما فرض کنید که مدار شما، مدار پیچیده‌تری باشد که در آن انواع و اقسام ارجاعات و شرط‌ها وجود داشته باشد.

شما باید تمامی ارجاعات و ساختارهای ارجاعی را بدون استثنا درون شرط لبه بالارونده کلاک قرار دهید.

بنابراین، در تمام کدهایی که می‌نویسید، برای داشتن یک مدار کاملاً سنکرون، این دو مشخصه را رعایت کنید.

🆔 @FPGA0