🔖 با سلام و عرض ادب خدمت همراهان گرامی که به ما اعتماد کردید و اجازه دادید با مطالب علمی کوتاه در خدمتتون باشیم، ضمن تشکر از شما لازم می دونم جهت بهره برداری هر چه بهتر از مطالب ارائه شده چند نکته رو به اطلاعتون برسونم.
مطالب آموزشی غالبا به صورت پیوسته ارائه نمی شوند و برحسب نیاز منتشر می شوند، اما با توجه به هشتک ها به راحتی میشه بهشون دسترسی پیدا کرد.
تا به امروز مطالب در سه سطح ارائه شده اند
1️⃣ سطح اول که برای بیان مبانی کار و مفاهیم اولیه است #Essentials
2️⃣ سطح دوم که برای افرادی است که مدتی است در دنیای طراحی سخت افزاری حضور دارند و دنبال تکمیل مهارتهاشون هستند. #Intermediate
3️⃣ و سطح سوم که کاملا به طرح موضوعات پیشرفته و روز دنیا می پردازه و برای کسانی است که سالها در این حوزه فعالیت داشتند. #Advanced
✅ بعلاوه اینکه با استفاده از هشتک های مناسب دسته بندی موضوعی روی نکات هم انجام شده، به عنوان مثال مهندسانی که تمایل داشته باشند در جریان کلیه اطلاعات ارائه شده در رابطه با تراشه Zynq قرار بگیرند، می توانند به راحتی با جستجوی #Zynq به نتیجه مطلوب خود برسند.
در آینده با راه اندازی کامل سایت، مقالات کاملا کاربردی و عمیق خدمتتان ارائه می گردد.
پیروز و سلامت باشید.
@Hexalinx
مطالب آموزشی غالبا به صورت پیوسته ارائه نمی شوند و برحسب نیاز منتشر می شوند، اما با توجه به هشتک ها به راحتی میشه بهشون دسترسی پیدا کرد.
تا به امروز مطالب در سه سطح ارائه شده اند
1️⃣ سطح اول که برای بیان مبانی کار و مفاهیم اولیه است #Essentials
2️⃣ سطح دوم که برای افرادی است که مدتی است در دنیای طراحی سخت افزاری حضور دارند و دنبال تکمیل مهارتهاشون هستند. #Intermediate
3️⃣ و سطح سوم که کاملا به طرح موضوعات پیشرفته و روز دنیا می پردازه و برای کسانی است که سالها در این حوزه فعالیت داشتند. #Advanced
✅ بعلاوه اینکه با استفاده از هشتک های مناسب دسته بندی موضوعی روی نکات هم انجام شده، به عنوان مثال مهندسانی که تمایل داشته باشند در جریان کلیه اطلاعات ارائه شده در رابطه با تراشه Zynq قرار بگیرند، می توانند به راحتی با جستجوی #Zynq به نتیجه مطلوب خود برسند.
در آینده با راه اندازی کامل سایت، مقالات کاملا کاربردی و عمیق خدمتتان ارائه می گردد.
پیروز و سلامت باشید.
@Hexalinx
#High_Level_Synthesis
#HLS
#Advanced
✅ سنتز سطح بالا چیست؟
زمان بر بودن پروسه طراحی سخت افزار در سطح رجیستر RTL و همچنین انعطاف پذیری پایین در اصلاح یک مدار از پیش طراحی شده از چالش های بزرگی هستند که طراحان سخت افزار در FPGA همواره با آن روبرو هستند، از این رو شرکت های سازنده تراشه FPGA همواره در صدد ارائه ابزاری جهت برنامه نویسی سطح بالا برای این تراشه ها بوده اند، در سالهای اخیر شرکت XILINX ابزار سنتز سطح بالای خود به نام VIVADO HLS را ارائه داده است و همچنین تلاش های فراوانی جهت توسعه هر چه بیشتر اون انجام داده. این ابزار می تواند الگوریتم های ارائه شده به زبان C و C++ را به مدارات RTL جهت پیاده سازی بر روی تراشه های FPGA تبدیل کند. در حقیقت HLS بعد از زبان های HDL که جایگزین طراحی شماتیک در سطح گیت شدند، گامی مهم دیگری در جهت کاهش پیچیدگی های طراحی و همچنین افزایش بهره وری است.
@Hexalinx
#HLS
#Advanced
✅ سنتز سطح بالا چیست؟
زمان بر بودن پروسه طراحی سخت افزار در سطح رجیستر RTL و همچنین انعطاف پذیری پایین در اصلاح یک مدار از پیش طراحی شده از چالش های بزرگی هستند که طراحان سخت افزار در FPGA همواره با آن روبرو هستند، از این رو شرکت های سازنده تراشه FPGA همواره در صدد ارائه ابزاری جهت برنامه نویسی سطح بالا برای این تراشه ها بوده اند، در سالهای اخیر شرکت XILINX ابزار سنتز سطح بالای خود به نام VIVADO HLS را ارائه داده است و همچنین تلاش های فراوانی جهت توسعه هر چه بیشتر اون انجام داده. این ابزار می تواند الگوریتم های ارائه شده به زبان C و C++ را به مدارات RTL جهت پیاده سازی بر روی تراشه های FPGA تبدیل کند. در حقیقت HLS بعد از زبان های HDL که جایگزین طراحی شماتیک در سطح گیت شدند، گامی مهم دیگری در جهت کاهش پیچیدگی های طراحی و همچنین افزایش بهره وری است.
@Hexalinx
#Place_and_Route, #PAR
#Native_Circuit_Description, #NCD
#Intermediate
✅ منظور از جانمایی و مسیر یابی در FPGA چیست؟
فرایند جانمایی و مسیر یابی یا همان place and route - PR فایل NCD تولید شده در فرایند MAP را تحویل می گیرد و با جانمایی عناصر موجود در طرح و برقراری ارتباطات و اتصالات بین آنها فایل NCD جدیدی تولید می کند که برای تولید بیت فایل خروجی توسط BitGen مورد استفاده قرار می گیرد.
فایل NCD فایلی است که توصیفی محلی از مدار طراحی شده را در خود ذخیره می کند.
@Hexalinx
#Native_Circuit_Description, #NCD
#Intermediate
✅ منظور از جانمایی و مسیر یابی در FPGA چیست؟
فرایند جانمایی و مسیر یابی یا همان place and route - PR فایل NCD تولید شده در فرایند MAP را تحویل می گیرد و با جانمایی عناصر موجود در طرح و برقراری ارتباطات و اتصالات بین آنها فایل NCD جدیدی تولید می کند که برای تولید بیت فایل خروجی توسط BitGen مورد استفاده قرار می گیرد.
فایل NCD فایلی است که توصیفی محلی از مدار طراحی شده را در خود ذخیره می کند.
@Hexalinx
#PYNQ
#Python
#Advanced
✅ پروژه PYNQ چیست؟
پروژه PYNQ یک پروژه منبع باز یا Open-Source است که برای تسهیل فرایند طراحی سیستم های تعبیه شده (embedded) روی تراشه های ZYNQ توسط Xilinx ارائه شده است. در این پروژه طراحان با بکاگیری زبان برنامه نویسی و کتابخانه های پایتون قادر خواهند بود به بهترین شکل از مزایای بخش برنامه پذیر و پروسسور ARM موجود در تراشه ZYNQ استفاده کنند و سیستم های خود را توسعه دهند، در واقع PYNQ پروژه ای است که برای توسعه دهندگان نرم افزار (و نه سخت افزار) که علاقه مند به بهره گیری از قابلیت های ZYNQ هستند توسعه داده شده است.
@Hexalinx
#Python
#Advanced
✅ پروژه PYNQ چیست؟
پروژه PYNQ یک پروژه منبع باز یا Open-Source است که برای تسهیل فرایند طراحی سیستم های تعبیه شده (embedded) روی تراشه های ZYNQ توسط Xilinx ارائه شده است. در این پروژه طراحان با بکاگیری زبان برنامه نویسی و کتابخانه های پایتون قادر خواهند بود به بهترین شکل از مزایای بخش برنامه پذیر و پروسسور ARM موجود در تراشه ZYNQ استفاده کنند و سیستم های خود را توسعه دهند، در واقع PYNQ پروژه ای است که برای توسعه دهندگان نرم افزار (و نه سخت افزار) که علاقه مند به بهره گیری از قابلیت های ZYNQ هستند توسعه داده شده است.
@Hexalinx
لطفا به ما بگویید علاقه مند به کدامیک از موضوعات زیر هستید، با توجه به متفاوت بدون سطوح مهارتی اعضای کانال، به ما کمک کنید تا مطالبی متناسب با نیازهای شما ارائه بدهیم.
Final Results
22%
آموزش مفاهیم و مقدمات برنامه نویسی HDL
6%
آموزش کار با ابزار ISE و معرفی ویژگی های آن
16%
آموزش کار با ابزار Vivado و معرفی ویژگی های آن
24%
آموزش نکات مرتبط با پردازش سیگنال در FPGA
2%
آموزش های مرتبط با تراشه های Zynq
12%
آموزش های مرتبط با HLS و ابزار Vivado_HLS
4%
آموزش کار با پتالینوکس، لینوکس و پایتون (PYNQ)
6%
معرفی ساختار تراشه های FPGA (سری 7 به بعد)
10%
آموزش کار با ابزار قدرتمند SDSoC برای طراحی روی Zynq
🌐 سوالات کاربران
✅ آیا برای FFT دو بعدی هم IP Core داریم؟
اگر نداریم چجوری باید پیاده سازی بشه، چون در FFT دو بعدی داده ها دو بار باید ترانهاده بشوند. نحوه ترانهاده کردن داده ها به چه صورته؟ در صورتی که داده های ما به صورت یک بعدی وارد FFT می شوند.
✳️ متاسفانه پاسخ به این سوال خیر است و برای FFT دوبعدی IP Core وجود نداره.
اما باید توجه داشت که ترانهاده کردن یک ماتریس در FPGA عملا هیچ عملیات اضافی نداره، در ماتریس ترانهاده فقط جای عناصر ماتریس با هم عوض میشه، چون در FPGA ماتریس ها همانند بردارها به صورت پشت سرهم ذخیره می شوند، عملا فقط با کنترل آدرس یک حافظه میشه یک ماتریس رو به صورت ساده یا به صورت ترانهاده از داخل یک حافظه بازخوانی کرد.
@ask_linx
@Hexalinx
✅ آیا برای FFT دو بعدی هم IP Core داریم؟
اگر نداریم چجوری باید پیاده سازی بشه، چون در FFT دو بعدی داده ها دو بار باید ترانهاده بشوند. نحوه ترانهاده کردن داده ها به چه صورته؟ در صورتی که داده های ما به صورت یک بعدی وارد FFT می شوند.
✳️ متاسفانه پاسخ به این سوال خیر است و برای FFT دوبعدی IP Core وجود نداره.
اما باید توجه داشت که ترانهاده کردن یک ماتریس در FPGA عملا هیچ عملیات اضافی نداره، در ماتریس ترانهاده فقط جای عناصر ماتریس با هم عوض میشه، چون در FPGA ماتریس ها همانند بردارها به صورت پشت سرهم ذخیره می شوند، عملا فقط با کنترل آدرس یک حافظه میشه یک ماتریس رو به صورت ساده یا به صورت ترانهاده از داخل یک حافظه بازخوانی کرد.
@ask_linx
@Hexalinx
📋ابتدایی ترین و اصلی ترین منابع برای طراحی روی تراشه های FPGA شرکت Xilinx بلوک های منطقی قابل برنامه ریزی (CLBs) هستند. هر CLB متشکل از دو اسلایس (Slice) است. این اسلایس ها همانطور که در شکل نشان داده شده است، به ماتریسی از سوییچ ها متصل هستند و از آن برای برقراری ارتباط با سایر اسلایس ها و یا سایر منایع موجود در تراشه استفاده می کنند.
📋 اسلایس ها از رجیستر ها و LUT ها ساخته شده اند. جداول درستی یا LUT ها دقیقا همان عناصری هستند که برای ساخت مدارات ترکیبی مورد استفاده قرار می گیرند. هر کدام دارای رجیستر اختصاصی هستند و از ترکیب این LUT ها و رجیسترهای متناطرشون به همراه یکسری عناصر دیگر اسلایس ها شکل می گیرند.
📋 در کنار LUT ها و رجیستر ها، زنجیره بیت نقلی (Carry Chain) که در محاسبات ریاضی بسیار پرکاربرد هست و باعث افزایش چشمگیر سرعت انجام محاسبات می شود نیز در درون اسلایس ها وجود دارد. (در شکل با عبارت CIN و COUT نشان داده شده است.
@Hexalinx
📋 اسلایس ها از رجیستر ها و LUT ها ساخته شده اند. جداول درستی یا LUT ها دقیقا همان عناصری هستند که برای ساخت مدارات ترکیبی مورد استفاده قرار می گیرند. هر کدام دارای رجیستر اختصاصی هستند و از ترکیب این LUT ها و رجیسترهای متناطرشون به همراه یکسری عناصر دیگر اسلایس ها شکل می گیرند.
📋 در کنار LUT ها و رجیستر ها، زنجیره بیت نقلی (Carry Chain) که در محاسبات ریاضی بسیار پرکاربرد هست و باعث افزایش چشمگیر سرعت انجام محاسبات می شود نیز در درون اسلایس ها وجود دارد. (در شکل با عبارت CIN و COUT نشان داده شده است.
@Hexalinx
#Basic
#CLB, #SLICE, #PAR
✅ معرفی Slice و CLB بخش دوم
📋 در شکل بالا نحوه اتصال دو CLB به یک سوییچ ماتریس نشان داده شده است. اسلایس ها از طریق این سوییچ ماتریس ها به شبکه سرتاسری مسیرها در FPGA دسترسی پیدا می کنند. در این مسیرهای سرتاسری، مسیرهای مجزا برای داده و کلاک در نظر گرفته شده که در شکل نیز با نام Clk و Data نشان داده شده اند. در حالت کلی کاربر روی نحوه استفاده از سوییچ ها و مسیریابی بین عناصر موجود در تراشه دخالت نمی کند و این کار به صورت اتوماتیک توسط ابزار و در مرحله post place & route انجام می شود.
.
@Hexalinx
#CLB, #SLICE, #PAR
✅ معرفی Slice و CLB بخش دوم
📋 در شکل بالا نحوه اتصال دو CLB به یک سوییچ ماتریس نشان داده شده است. اسلایس ها از طریق این سوییچ ماتریس ها به شبکه سرتاسری مسیرها در FPGA دسترسی پیدا می کنند. در این مسیرهای سرتاسری، مسیرهای مجزا برای داده و کلاک در نظر گرفته شده که در شکل نیز با نام Clk و Data نشان داده شده اند. در حالت کلی کاربر روی نحوه استفاده از سوییچ ها و مسیریابی بین عناصر موجود در تراشه دخالت نمی کند و این کار به صورت اتوماتیک توسط ابزار و در مرحله post place & route انجام می شود.
.
@Hexalinx
#PYNQ
#ZYNQ
#Advanced
✅ معرفی بورد PYNQ-Z1 برای پروژه PYNQ
بورد PYNQ-Z1 برای اجرای پروژه منبع باز PYNQ یک روی تراشه های ZYNQ توسط شرکت Digilent طراحی و ارائه شده است. مهمترین امکانات این بورد به شرح زیر است.
❗️تراشه XC7Z020-1CLG400C
❗️حافظه 16 بیتی DDR3 با ظرفیت 512MB
❗️فلش QSPI با ظرفیت 16MB
❗️تغذیه مستقل از USB یا آداپتور کمکی
❗️پشتیبانی از Micro SD
❗️پشتیبانی از USB Host
❗️پشتیابنی از USB-UART
❗️پشتیبانی از USB-JTAG
❗️پشتیبانی از Ethernet PHY
❗️میکروفن
❗️پورت HDMI
❗️کلید فشاری، سوییچ و LED
❗️کانکتور Arduino
🔖 با وجود اینکه بورد PYNQ-Z1 به طور اختصاصی برای پروژه PYNQ به کار گرفته می شود، اما این بورد یک نمونه کاملا ارزان قیمت و آکادمیک است و به تراشه Zynq مجهز شده است و به راحتی می تواند برای کلیه آموزش های پایه ای و البته حرفه ای مورد استفاده قرار بگیرد.
@Hexalinx
#ZYNQ
#Advanced
✅ معرفی بورد PYNQ-Z1 برای پروژه PYNQ
بورد PYNQ-Z1 برای اجرای پروژه منبع باز PYNQ یک روی تراشه های ZYNQ توسط شرکت Digilent طراحی و ارائه شده است. مهمترین امکانات این بورد به شرح زیر است.
❗️تراشه XC7Z020-1CLG400C
❗️حافظه 16 بیتی DDR3 با ظرفیت 512MB
❗️فلش QSPI با ظرفیت 16MB
❗️تغذیه مستقل از USB یا آداپتور کمکی
❗️پشتیبانی از Micro SD
❗️پشتیبانی از USB Host
❗️پشتیابنی از USB-UART
❗️پشتیبانی از USB-JTAG
❗️پشتیبانی از Ethernet PHY
❗️میکروفن
❗️پورت HDMI
❗️کلید فشاری، سوییچ و LED
❗️کانکتور Arduino
🔖 با وجود اینکه بورد PYNQ-Z1 به طور اختصاصی برای پروژه PYNQ به کار گرفته می شود، اما این بورد یک نمونه کاملا ارزان قیمت و آکادمیک است و به تراشه Zynq مجهز شده است و به راحتی می تواند برای کلیه آموزش های پایه ای و البته حرفه ای مورد استفاده قرار بگیرد.
@Hexalinx
🔖 با توجه به نتایج نظر سنجی و علاقه شما عزیزان به مطالب پایه ای VHDL و FPGA از این هفته به بعد، به صورت مداوم آموزش های کوتاهی در قالب ویدیو و متن های کوتاه با کمله کلیدی #Basic ارائه می شود که امیدوارم به بهترین شکل پاسخگوی نیاز شما باشد.
🔖 علاوه بر این به پاس اعتماد شما، یک سرفصل کاملا جدید با عنوان پردازش سیگنال روی FPGA برای شما تدارک خواهیم دید و در قالب ویدیو و مقالات کاربردی خدمتتان ارائه خواهیم کرد. نکات آموزشی در رابطه با محاسبات ممیز ثابت، فیلترهای دیجیتال، IP Core های پرکاربرد، تکنیک های به اشتراک گذاری منابع و ... از جمله مواردی هستند که در این سلسله آموزش ها پوشش داده می شوند و در غالب کمله کلیدی #DSP بیان می گردند.
🔖 همچون گذشته در کنار دو این دو بخش جدید، نکات آموزشی پیشرفته، اخبار روز دنیا، موضوعات مربوط به سیستم های توکار و مفاهیم عمیق پیاده سازی همچنان به عنوان بخشی از علاقه مندی های شما به صورت روزانه منتشر خواهد.
این آغاز ماجراجویی شماست، با ما همراه باشید ...
@Hexalinx
🔖 علاوه بر این به پاس اعتماد شما، یک سرفصل کاملا جدید با عنوان پردازش سیگنال روی FPGA برای شما تدارک خواهیم دید و در قالب ویدیو و مقالات کاربردی خدمتتان ارائه خواهیم کرد. نکات آموزشی در رابطه با محاسبات ممیز ثابت، فیلترهای دیجیتال، IP Core های پرکاربرد، تکنیک های به اشتراک گذاری منابع و ... از جمله مواردی هستند که در این سلسله آموزش ها پوشش داده می شوند و در غالب کمله کلیدی #DSP بیان می گردند.
🔖 همچون گذشته در کنار دو این دو بخش جدید، نکات آموزشی پیشرفته، اخبار روز دنیا، موضوعات مربوط به سیستم های توکار و مفاهیم عمیق پیاده سازی همچنان به عنوان بخشی از علاقه مندی های شما به صورت روزانه منتشر خواهد.
این آغاز ماجراجویی شماست، با ما همراه باشید ...
@Hexalinx
#Basic
#SLICE, #SLICER, #SLICEM
✅ انواع اسلایس در FPGA های سری 7
🔖 کلیه منابع موجود درون اسلایس ها برای محاسبات منطقی، محاسبات ریاضی و ذخیره سازی به عنوان ROM قابل استفاده هستند. در معماری تراشه های سری 7 دو نوع Slice و دو نوع CLB وجود دارد.
1️⃣ اسلایس منطقی و محاسباتی (SLICER)
این اسلایس ها با بکارگیری منابع درونی خود به عنوان منابع منطقی، محاسباتی و ROM مورد استفاده قرار می گیرند.
2️⃣ اسلایس کامل (SLICEM)
این اسلایس ها علاوه بر انجام محاسبات منطقی، ریاضی و ROM از دو عملکرد اضافی نیز پشتیبانی می کنند و می توانند به عنوان حافظه (RAM) و یا شیفت رجیستر (Memory/SRL) مورد استفاده قرار بگیرند.
🔖 انتخاب بین این اسلایس ها توسط ابزار سنتز و به صورت اتوماتیک صورت می گیرد، اما با توجه به محدودیت تعداد اسلایس های کامل، طراحی درست می تواند منجربه به استفاده بهینه از آنها شود.
@Hexalinx
#SLICE, #SLICER, #SLICEM
✅ انواع اسلایس در FPGA های سری 7
🔖 کلیه منابع موجود درون اسلایس ها برای محاسبات منطقی، محاسبات ریاضی و ذخیره سازی به عنوان ROM قابل استفاده هستند. در معماری تراشه های سری 7 دو نوع Slice و دو نوع CLB وجود دارد.
1️⃣ اسلایس منطقی و محاسباتی (SLICER)
این اسلایس ها با بکارگیری منابع درونی خود به عنوان منابع منطقی، محاسباتی و ROM مورد استفاده قرار می گیرند.
2️⃣ اسلایس کامل (SLICEM)
این اسلایس ها علاوه بر انجام محاسبات منطقی، ریاضی و ROM از دو عملکرد اضافی نیز پشتیبانی می کنند و می توانند به عنوان حافظه (RAM) و یا شیفت رجیستر (Memory/SRL) مورد استفاده قرار بگیرند.
🔖 انتخاب بین این اسلایس ها توسط ابزار سنتز و به صورت اتوماتیک صورت می گیرد، اما با توجه به محدودیت تعداد اسلایس های کامل، طراحی درست می تواند منجربه به استفاده بهینه از آنها شود.
@Hexalinx
#FLY_BY
#DDR3
#Intermediate
✅ تفاوت توپولوژی Fly_by و T در اتصال حافظه های DDR3/4.
✳️ در اتصال حافظه های DDR3/4 به پردازنده و FPGAها، مسیرهای کلاک، آدرس و کنترل میتوانند به دو صورت Fly_by یا T متصل شوند.
افزایش فرکانس کاری، کاهش مقدار و طول stub های مسیر و درنتیجه بهبود SI و زمانبندی سیگنالهای حافظه، از مزایای توپولوژی Fly_by است. بعلاوه این توپولوژی به علت انحراف بسیار اندک زمانبندی بین سیگنالهای گروه آدرس و گروه داده باعث کاهش نویز سوئیچینگ همزمان (SSN) میشود.
توپولوژی T در هنگام مسیریابی و طراحی PCB بسیار پر چالش است اما با این حال این توپولوژی نیز کاربردهای خودش را دارد.
طراحی و مسیریابی Fly_by سادهتر از T است. اما این توپولوژی برای فعالیتهای با ظرفیت بالا و قطعاتی مانند LPDDR3 DDP(Double die package) یا QDP خوب کار نمیکند. هرچند در قطعات SDP توپولوژی Fly_by راه کم دردسرتری است.
#Hexalinx
#DDR3
#Intermediate
✅ تفاوت توپولوژی Fly_by و T در اتصال حافظه های DDR3/4.
✳️ در اتصال حافظه های DDR3/4 به پردازنده و FPGAها، مسیرهای کلاک، آدرس و کنترل میتوانند به دو صورت Fly_by یا T متصل شوند.
افزایش فرکانس کاری، کاهش مقدار و طول stub های مسیر و درنتیجه بهبود SI و زمانبندی سیگنالهای حافظه، از مزایای توپولوژی Fly_by است. بعلاوه این توپولوژی به علت انحراف بسیار اندک زمانبندی بین سیگنالهای گروه آدرس و گروه داده باعث کاهش نویز سوئیچینگ همزمان (SSN) میشود.
توپولوژی T در هنگام مسیریابی و طراحی PCB بسیار پر چالش است اما با این حال این توپولوژی نیز کاربردهای خودش را دارد.
طراحی و مسیریابی Fly_by سادهتر از T است. اما این توپولوژی برای فعالیتهای با ظرفیت بالا و قطعاتی مانند LPDDR3 DDP(Double die package) یا QDP خوب کار نمیکند. هرچند در قطعات SDP توپولوژی Fly_by راه کم دردسرتری است.
#Hexalinx
#Adaptive_Compute_Acceleration_Platform
#ACAP
#Advanced
✅ معرفی ACAP
شرکت Xilinx پلتفرم شتاب دهی محاسباتی تطبیقی خود یا همان ACAP را با هدف کمک به مراکز داده برای پاسخ به سونامی تقاضای محاسبات مورد نیاز هوش مصنوعی توسعه داده است. در واقع ACAP یک معماری محاسباتی چند هسته ای قابل برنامه ریزی و ناهمگن است که می تواند در طول عملیات به صورت پویا ظرف چند میلی ثانیه ویرایش شود تا پاسخگوی تغییرات بوجود آمده در حجم محاسبات باشد. شرکت Xilinx ادعا می کند که تراشه های 7 نانومتری جدیدش بسیار قدرتمندتر از ترکیب CPU و GPU هستند و راندمان کاری بالاتری به ازای هر وات توان مصرفی ارائه می دهند.
@Hexalinx
#ACAP
#Advanced
✅ معرفی ACAP
شرکت Xilinx پلتفرم شتاب دهی محاسباتی تطبیقی خود یا همان ACAP را با هدف کمک به مراکز داده برای پاسخ به سونامی تقاضای محاسبات مورد نیاز هوش مصنوعی توسعه داده است. در واقع ACAP یک معماری محاسباتی چند هسته ای قابل برنامه ریزی و ناهمگن است که می تواند در طول عملیات به صورت پویا ظرف چند میلی ثانیه ویرایش شود تا پاسخگوی تغییرات بوجود آمده در حجم محاسبات باشد. شرکت Xilinx ادعا می کند که تراشه های 7 نانومتری جدیدش بسیار قدرتمندتر از ترکیب CPU و GPU هستند و راندمان کاری بالاتری به ازای هر وات توان مصرفی ارائه می دهند.
@Hexalinx
#ZYNQ
✅ استفاده از تراشه های Zynq 7000 و Zynq ultrascale plus به عنوان کنترلر اصلی در ماشین های استخراج بیت کوین شرکت Bitman.
بر اساس ادعای شرکت سازنده با استفاده از تراشه zynq با توان مصرفی کمتری می توان به حداکثر راندمان دست یافت. علاوه بر این BOM و فضای مصرفی روی بورد نیز کاهش پیدا می کند.
البته توجه داشت باشید که خود تراشه zynq برای استخراج مورد استفاده قرار نمی گیره و این کار غالبا با تراشه های ASIC انجام می شه.
https://www.aparat.com/v/QMKG1
@Hexalinx
✅ استفاده از تراشه های Zynq 7000 و Zynq ultrascale plus به عنوان کنترلر اصلی در ماشین های استخراج بیت کوین شرکت Bitman.
بر اساس ادعای شرکت سازنده با استفاده از تراشه zynq با توان مصرفی کمتری می توان به حداکثر راندمان دست یافت. علاوه بر این BOM و فضای مصرفی روی بورد نیز کاهش پیدا می کند.
البته توجه داشت باشید که خود تراشه zynq برای استخراج مورد استفاده قرار نمی گیره و این کار غالبا با تراشه های ASIC انجام می شه.
https://www.aparat.com/v/QMKG1
@Hexalinx
آپارات - سرویس اشتراک ویدیو
بکارگیری تراشه های zynq در ماینر ها برای تولید بیت کوین
در این ویدیو استفاده از تراشه های Zynq 7000 و Zynq ultrascale plus به عنوان کنترلر اصلی در ماشین های استخراج بیت کوین شرکت Bitman، نشان داده شده است.
بر اساس ادعای شرکت سازنده با استفاده از تراشه Zynq بالاترین راندمان ممکن در ازای مصرف توان به مراتب کمتری…
بر اساس ادعای شرکت سازنده با استفاده از تراشه Zynq بالاترین راندمان ممکن در ازای مصرف توان به مراتب کمتری…
#Essentials
✅ آیا تا به حال به اهمیت رعایت مساله زمانبندی در طراحی های FPGA فکر کردید؟ آیا با مفاهیم ساده و اولیه سنجش کارایی یک پیاده سازی آشنایی دارید؟ تا به حال به این فکر کردید که چرا برخی از پیاده سازی ها با وجود اینکه نتایج شبیه سازی آن ها کاملا درست است، اما نتایج سخت افزاری کاملا اشتباه و نامعتبر دارند؟
به طور کلی انجام مجاسبات ریاضی و پردازش سیگنال در FPGA نیازمند رعایت اصول پیاده سازی خاص در این مدارهاست، سوال اینجاست که اگر این اصول رعایت نشود، چه مشکلی پیش می آید؟
✅ قبل از پاسخ به این سوال اجازه بدهید در پست زیر یکسری مفاهیم مقدماتی را به زبان ساده توصیف کنیم. هر طراح FPGA باید با مفاهیمی همچون #Race_Condition و #Glitch آشنایی داشته باشد تا بتواند دلیل رعایت یکسری از اصول را در برنامه نویسی متوجه شود، و برای آن ها راه حل مناسب پیدا کند. این آغاز ماجراجویی شماست، با ما همراه باشید ...
@Hexalinx
✅ آیا تا به حال به اهمیت رعایت مساله زمانبندی در طراحی های FPGA فکر کردید؟ آیا با مفاهیم ساده و اولیه سنجش کارایی یک پیاده سازی آشنایی دارید؟ تا به حال به این فکر کردید که چرا برخی از پیاده سازی ها با وجود اینکه نتایج شبیه سازی آن ها کاملا درست است، اما نتایج سخت افزاری کاملا اشتباه و نامعتبر دارند؟
به طور کلی انجام مجاسبات ریاضی و پردازش سیگنال در FPGA نیازمند رعایت اصول پیاده سازی خاص در این مدارهاست، سوال اینجاست که اگر این اصول رعایت نشود، چه مشکلی پیش می آید؟
✅ قبل از پاسخ به این سوال اجازه بدهید در پست زیر یکسری مفاهیم مقدماتی را به زبان ساده توصیف کنیم. هر طراح FPGA باید با مفاهیمی همچون #Race_Condition و #Glitch آشنایی داشته باشد تا بتواند دلیل رعایت یکسری از اصول را در برنامه نویسی متوجه شود، و برای آن ها راه حل مناسب پیدا کند. این آغاز ماجراجویی شماست، با ما همراه باشید ...
@Hexalinx
#Race_Condition
#Metastabilty
#Glitch
✳️ رخداد #Race_Condition نتیجه و حاصل یک طراحی نامناسب برای یک لچ یا فلیپ فلاپ در FPGA است. در واقع نشان دهنده وضعیتی است که در آن داده و کلاک ورودی به یک فلیپ فلاپ در یک زمان تغییر می کنند و نتیجه خروجی بستگی به این دارد که کدام یک از این دو در اصطلاح برنده شود.
✳️ در موارد نادر، ممکن است در زمان تغییر وضعیت کلاک، داده دقیقا برابر 0 و یا 1 باشد ، ولی در اکثر موارد داده مقداری بین 0 و یا 1 دارد، یعنی در بازه زمانی گذر از حالت low به حالت high قرار دارد. در این چنین شرایطی خروجی برای یک لحظه بین 0 و 1 باقی می ماند، (برای مثال در یک سیستم با ولتاژ 5V ، خروجی ممکن است برای مدت زمان خیلی کوتاهی مثلا چند نانو ثانیه حدود 2.5V باشد. هنگامی که این اتفاق می افتد در اطلاح گفته می شود خروجی ناپایدار یا #Metastable است. ناپایدار بودن باعث ایجاد اثرات جدی و منفی بر روی عملکرد سیستم می شود از همه بدتر اینکه، تقریبا تکرار پذیری این حالت ناپایدار تقریبا غیرممکن است و بنابراین پیدا کردن منشا خطا و برطرف کردن آن بسیار سخت است.
✳️ مسئله ناپداری در خروجی فقط مختص به فلیپ فلاپ ها نیست و ممکنه به دلیل تاخیر وضعیت نامتناسب در ورودی های گیت های منطقی نیز وجود داشته باشد و باعث ایجاد مشکلات ناخواسته بشود، این رخداد نیز در اصطلاح #Glitch نامیده می شود.
✳️ برای جلوگیری از بروز چنین مشکلاتی در طراحی، طراح باید با در نظر گرفتن بدترین شرایط ممکن، آنالیز زمانی کاملا دقیقی روی مداری که طرحی کرده است، انجام دهد. این نوع آنالیزها عموما با بکارگیری تاخیرهای انتشار، تاخیرهای مسیر بین عناصر موجود در FPGA، محاسبه زمان بندی high و low شدن سیگنال و یکسری پارامترهای دیگر انجام می شود. این کار عموما زمان بر است، اما شرکت های سازنده تراشه های قابل برنامه ریزی ابزارهای مناسبی را برای انجام این تحلیل ها ارائه داده اند.
@Hexalinx
#Metastabilty
#Glitch
✳️ رخداد #Race_Condition نتیجه و حاصل یک طراحی نامناسب برای یک لچ یا فلیپ فلاپ در FPGA است. در واقع نشان دهنده وضعیتی است که در آن داده و کلاک ورودی به یک فلیپ فلاپ در یک زمان تغییر می کنند و نتیجه خروجی بستگی به این دارد که کدام یک از این دو در اصطلاح برنده شود.
✳️ در موارد نادر، ممکن است در زمان تغییر وضعیت کلاک، داده دقیقا برابر 0 و یا 1 باشد ، ولی در اکثر موارد داده مقداری بین 0 و یا 1 دارد، یعنی در بازه زمانی گذر از حالت low به حالت high قرار دارد. در این چنین شرایطی خروجی برای یک لحظه بین 0 و 1 باقی می ماند، (برای مثال در یک سیستم با ولتاژ 5V ، خروجی ممکن است برای مدت زمان خیلی کوتاهی مثلا چند نانو ثانیه حدود 2.5V باشد. هنگامی که این اتفاق می افتد در اطلاح گفته می شود خروجی ناپایدار یا #Metastable است. ناپایدار بودن باعث ایجاد اثرات جدی و منفی بر روی عملکرد سیستم می شود از همه بدتر اینکه، تقریبا تکرار پذیری این حالت ناپایدار تقریبا غیرممکن است و بنابراین پیدا کردن منشا خطا و برطرف کردن آن بسیار سخت است.
✳️ مسئله ناپداری در خروجی فقط مختص به فلیپ فلاپ ها نیست و ممکنه به دلیل تاخیر وضعیت نامتناسب در ورودی های گیت های منطقی نیز وجود داشته باشد و باعث ایجاد مشکلات ناخواسته بشود، این رخداد نیز در اصطلاح #Glitch نامیده می شود.
✳️ برای جلوگیری از بروز چنین مشکلاتی در طراحی، طراح باید با در نظر گرفتن بدترین شرایط ممکن، آنالیز زمانی کاملا دقیقی روی مداری که طرحی کرده است، انجام دهد. این نوع آنالیزها عموما با بکارگیری تاخیرهای انتشار، تاخیرهای مسیر بین عناصر موجود در FPGA، محاسبه زمان بندی high و low شدن سیگنال و یکسری پارامترهای دیگر انجام می شود. این کار عموما زمان بر است، اما شرکت های سازنده تراشه های قابل برنامه ریزی ابزارهای مناسبی را برای انجام این تحلیل ها ارائه داده اند.
@Hexalinx