#XFFT, #FFT
✅ محاسبه و پیاده سازی تبدیل فوریه در FPGA روی دنبالههای فریم بندی شده به عنوان بخش جدایی ناپذیر سیستمهای پردازش سیگنال شناخته میشود.
❇️ در حالت کلی FFT الگوریتم پیچیدهای محسوب میشود و پیاده سازی بهینه سخت افزاری آن در FPGA کاملاً چالش برانگیز است. به همین دلیل است که اکثر سازندگان تراشههای FPGA یک IP Core قابل سفارشی سازی در اختیار کاربرانشان قرار میدهند. اگر چه با استفاده از این IP Core ها مهندس پیاده ساز به راحتی و تنها با چند کلیک میتواند یک الگوریتم FFT به طرحش اضافه کند، اما با این وجود هر طراحی برای استفاده از آنها بازهم نیاز دارد برخی از جزئیات پیاده سازی FFT را روی سخت افزار بشناسد.
📌 در جدیدترین مقاله منتشر شده در پایگاه دانش هگزالینکس نحوه فراخوانی و سفارشی سازی Xilinx FFT IP Core و پارامترهای آن تشریح شده است.
🔖 مطالعه ادامه مطلب »
@Hexalinx
✅ محاسبه و پیاده سازی تبدیل فوریه در FPGA روی دنبالههای فریم بندی شده به عنوان بخش جدایی ناپذیر سیستمهای پردازش سیگنال شناخته میشود.
❇️ در حالت کلی FFT الگوریتم پیچیدهای محسوب میشود و پیاده سازی بهینه سخت افزاری آن در FPGA کاملاً چالش برانگیز است. به همین دلیل است که اکثر سازندگان تراشههای FPGA یک IP Core قابل سفارشی سازی در اختیار کاربرانشان قرار میدهند. اگر چه با استفاده از این IP Core ها مهندس پیاده ساز به راحتی و تنها با چند کلیک میتواند یک الگوریتم FFT به طرحش اضافه کند، اما با این وجود هر طراحی برای استفاده از آنها بازهم نیاز دارد برخی از جزئیات پیاده سازی FFT را روی سخت افزار بشناسد.
📌 در جدیدترین مقاله منتشر شده در پایگاه دانش هگزالینکس نحوه فراخوانی و سفارشی سازی Xilinx FFT IP Core و پارامترهای آن تشریح شده است.
🔖 مطالعه ادامه مطلب »
@Hexalinx
#LATCH, #VHDL
❇️ چرا لچها بد هستند و چگونه از سنتز لچ جلوگیری کنیم.
✅ در الکترونیک دیجیتال لچ عنصری است که برای انجام عملیات نمونه برداری و نگه داری (sample and hold) مقادیر باینری مورد استفاده قرار میگیرد، و عملکردی مشابه فلیپ فلاپ یا رجیستر دارد، اما برخلاف فلیپ فلاپها، که حساس به لبه هستند و با لبه بالا رونده و یا پایین رونده کلاک نمونه برداری میکنند، لچها حساس به سطح هستند.
✅ در حالت کلی لچها باعث افزایش سربار و ابجاد محدودیت برای ابزار پیاده سازی هنگام مسیریابی درون تراشه میشوند.
مطالعه ادامه مطلب »»
@Hexalinx
❇️ چرا لچها بد هستند و چگونه از سنتز لچ جلوگیری کنیم.
✅ در الکترونیک دیجیتال لچ عنصری است که برای انجام عملیات نمونه برداری و نگه داری (sample and hold) مقادیر باینری مورد استفاده قرار میگیرد، و عملکردی مشابه فلیپ فلاپ یا رجیستر دارد، اما برخلاف فلیپ فلاپها، که حساس به لبه هستند و با لبه بالا رونده و یا پایین رونده کلاک نمونه برداری میکنند، لچها حساس به سطح هستند.
✅ در حالت کلی لچها باعث افزایش سربار و ابجاد محدودیت برای ابزار پیاده سازی هنگام مسیریابی درون تراشه میشوند.
مطالعه ادامه مطلب »»
@Hexalinx
#UART, #RS232
✳️ پیاده سازی ماژول UART در FPGA
✅ طی سالهای اخیر مقالات متعددی در رابطه با این پروتکل و پیاده سازی آن به زبان فارسی منتشر شده است، از این رو ما قصد نداریم چرخ را مجدداً اختراع کنیم و آموزشهای متعددی را که در رابطه با UART در اختیار همگان هست، مجدداً باز نشر دهیم.
🔖 این نوشتار از پایگاه دانش هگزالینکس به تشریح عملکرد و نحوه استفاده از بهینه ترین پیاده سازی UART، برای تراشههای شرکت Xilinx اختصاص دارد. استفاده از واژه بهینه ترین به هیچ وجه اغراق نیست، زیرا طراحی آن توسط مهندسان Xilinx صورت گرفته و شما با مطالعه کدها به سادگی موضوع را درک خواهید کرد.
مطالعه متن کامل مقاله »
@Hexalinx
✳️ پیاده سازی ماژول UART در FPGA
✅ طی سالهای اخیر مقالات متعددی در رابطه با این پروتکل و پیاده سازی آن به زبان فارسی منتشر شده است، از این رو ما قصد نداریم چرخ را مجدداً اختراع کنیم و آموزشهای متعددی را که در رابطه با UART در اختیار همگان هست، مجدداً باز نشر دهیم.
🔖 این نوشتار از پایگاه دانش هگزالینکس به تشریح عملکرد و نحوه استفاده از بهینه ترین پیاده سازی UART، برای تراشههای شرکت Xilinx اختصاص دارد. استفاده از واژه بهینه ترین به هیچ وجه اغراق نیست، زیرا طراحی آن توسط مهندسان Xilinx صورت گرفته و شما با مطالعه کدها به سادگی موضوع را درک خواهید کرد.
مطالعه متن کامل مقاله »
@Hexalinx
#KV260, #KRIA
❇️ کیت آموزشی هوش مصنوعی KV260 اولین کیت توسعه داده شده با هدف Vison AI و مبتنی بر پلتفرم K26 SOM شرکت Xilinx است. بورد میزبان (کریر) در برگیرنده مجموعه کاملی از اینترفیسها شامل Ethernet ، USB 3.0 ، HDMI ، Display Port ، MIPI Sensor ، Pmod و MicroSD است.
✳️ این کیت مجهز به یک Heatsink و یک فن نسبتاً بزرگ است که تبادل گرمایی مناسبی را برای اپلیکیشنهای سنگین فراهم میکند.
🔖 قیمت این کیت بسیار مقرون به صرفه است و تنها $199 دلار است. البته در صورت تمایل به خرید تمامی ملزومات آن نیاز به پرداخت $85 دیگر نیز خواهید داشت.
🎥 مشاهده ویدئو »
@Hexalinx
❇️ کیت آموزشی هوش مصنوعی KV260 اولین کیت توسعه داده شده با هدف Vison AI و مبتنی بر پلتفرم K26 SOM شرکت Xilinx است. بورد میزبان (کریر) در برگیرنده مجموعه کاملی از اینترفیسها شامل Ethernet ، USB 3.0 ، HDMI ، Display Port ، MIPI Sensor ، Pmod و MicroSD است.
✳️ این کیت مجهز به یک Heatsink و یک فن نسبتاً بزرگ است که تبادل گرمایی مناسبی را برای اپلیکیشنهای سنگین فراهم میکند.
🔖 قیمت این کیت بسیار مقرون به صرفه است و تنها $199 دلار است. البته در صورت تمایل به خرید تمامی ملزومات آن نیاز به پرداخت $85 دیگر نیز خواهید داشت.
🎥 مشاهده ویدئو »
@Hexalinx
#FPGA, #ARM, #DSP
✳️ چرا باید تا این حد زمان و هزینه صرف کنیم تا کار با FPGA ها را فرا بگیریم؟
✳️ واقعاً چرا باید به جای ARM و یا DSP کار با FPGA را یاد بگیریم؟
✅ جواب بسیار کوتاه به این سوأل در علاقه و برنامه ریزی کاری شما نهفته است.
📌 اما بد نیست این را بدانید که ما در میانه راه یک انقلاب بزرگ به نام هوش مصنوعی در سالهای آینده هستیم، راهی که در نهایت تمامی سرگرمیهای امروز را به کارهای مهم همه روزه ما تبدیل خواهد کرد. گام نهادن در این راه بدون فراگیری دانش های FPGA ابتر خواهد بود.
مطالعه متن کامل مقاله »
@Hexalinx
✳️ چرا باید تا این حد زمان و هزینه صرف کنیم تا کار با FPGA ها را فرا بگیریم؟
✳️ واقعاً چرا باید به جای ARM و یا DSP کار با FPGA را یاد بگیریم؟
✅ جواب بسیار کوتاه به این سوأل در علاقه و برنامه ریزی کاری شما نهفته است.
📌 اما بد نیست این را بدانید که ما در میانه راه یک انقلاب بزرگ به نام هوش مصنوعی در سالهای آینده هستیم، راهی که در نهایت تمامی سرگرمیهای امروز را به کارهای مهم همه روزه ما تبدیل خواهد کرد. گام نهادن در این راه بدون فراگیری دانش های FPGA ابتر خواهد بود.
مطالعه متن کامل مقاله »
@Hexalinx
#UltraRAM, #UltraScale
✳️بلوکهای UltraRAM در تراشههای UltraScale-Plus
✅ حافظههای اولترا یا UltraRAM ها بلوکهای جدید حافظه در تراشههای FPGA هستند که در خانواده شرکت Xilinx معرفی شدهاند.
✅ بلوکهای UltraRAM جایگزینی برای حافظههای چند گیگابایتی SDRAM و یا حافظههای EPROM که در کنار تراشههای FPGA مورد استفاده قرار میگیرد، نیستند. هدف اصلی از معرفی این SRAM های بزرگ به تعویق انداختن نیاز طراح به استفاده از حافظههای جانبی بزرگ است. به عنوان نمونه برخی از مهمترین انگیزههایی که ممکن است برای بکارگیری این حافظهها وجود داشته باشد عبارتند از:
1️⃣ حافظههای SRAM داخلی تراشه FPGA سریعتر از حافظههای خارجی SDRAM در کنار تراشه FPGA هستند.
2️⃣ برآورده کردن ملاحظات زمان بندی برای حافظههای SRAM داخلی بسیار ساده تر از حافظههای خارجی است.
3️⃣ برخلاف SDRAMها، حافظههای SRAM داخلی نیازی به استفاده از پروتکلها و اینترفیسهای پیچیده برای کنترل و تبادل داده ندارد.
مطالعه متن کامل مقاله »
@Hexalinx
✳️بلوکهای UltraRAM در تراشههای UltraScale-Plus
✅ حافظههای اولترا یا UltraRAM ها بلوکهای جدید حافظه در تراشههای FPGA هستند که در خانواده شرکت Xilinx معرفی شدهاند.
✅ بلوکهای UltraRAM جایگزینی برای حافظههای چند گیگابایتی SDRAM و یا حافظههای EPROM که در کنار تراشههای FPGA مورد استفاده قرار میگیرد، نیستند. هدف اصلی از معرفی این SRAM های بزرگ به تعویق انداختن نیاز طراح به استفاده از حافظههای جانبی بزرگ است. به عنوان نمونه برخی از مهمترین انگیزههایی که ممکن است برای بکارگیری این حافظهها وجود داشته باشد عبارتند از:
1️⃣ حافظههای SRAM داخلی تراشه FPGA سریعتر از حافظههای خارجی SDRAM در کنار تراشه FPGA هستند.
2️⃣ برآورده کردن ملاحظات زمان بندی برای حافظههای SRAM داخلی بسیار ساده تر از حافظههای خارجی است.
3️⃣ برخلاف SDRAMها، حافظههای SRAM داخلی نیازی به استفاده از پروتکلها و اینترفیسهای پیچیده برای کنترل و تبادل داده ندارد.
مطالعه متن کامل مقاله »
@Hexalinx
#HLS, #FPGA
✳️ به شکل سنتی معمولا ً از زبانهای HDL برای پیاده سازی طرح در سطح RTL استفاده میشود. با گذشت زمان، طراحی در سطوح انتزاعی بالاتر از سطح RTL و توصیف رفتار مدار به جای پیاده سازی جز به جز عملکرد آن و همینطور استفاده از بلوکهای IP Core که به صورت مدوام و بدون محدودیت قابل بکارگیری در طراحیهای جدید را دارند، باعث سرعت بخشیدن و تسهیل روند طراحی شدهاند.
✅ با پیچیده تر شدن سیستمها و افزایش فشارهای ناشی از محدود شدن زمانهای مجاز برای توسعه و ارائه محصول به بازار، توسعه دهندگان و تولیدکنندگان اصلی تراشههای FPGA را بر آن داشت تا به منظور کاهش زمان توسعه هر چه بیشتر به سمت استاندارد سازی و معرفی یک زنجیره ابزار نرم افزاری تر گام بردارند.
✅ یکی از این تکنیکها سنتز سطح بالا یا HLS نام دارد. سنتز سطح بالا را میتوان به عنوان یک ابزار کارآمد با بهره وری قابل قبول برای طراحی سخت افزار در نظر گرفت. در حالت کلی در سنتز سطح بالا از سورس فایلهای نوشته شده به زبان C و ++C برای تولید کدهای RTL استفاده میشود.
مطالعه متن کامل مقاله »
@Hexalinx
✳️ به شکل سنتی معمولا ً از زبانهای HDL برای پیاده سازی طرح در سطح RTL استفاده میشود. با گذشت زمان، طراحی در سطوح انتزاعی بالاتر از سطح RTL و توصیف رفتار مدار به جای پیاده سازی جز به جز عملکرد آن و همینطور استفاده از بلوکهای IP Core که به صورت مدوام و بدون محدودیت قابل بکارگیری در طراحیهای جدید را دارند، باعث سرعت بخشیدن و تسهیل روند طراحی شدهاند.
✅ با پیچیده تر شدن سیستمها و افزایش فشارهای ناشی از محدود شدن زمانهای مجاز برای توسعه و ارائه محصول به بازار، توسعه دهندگان و تولیدکنندگان اصلی تراشههای FPGA را بر آن داشت تا به منظور کاهش زمان توسعه هر چه بیشتر به سمت استاندارد سازی و معرفی یک زنجیره ابزار نرم افزاری تر گام بردارند.
✅ یکی از این تکنیکها سنتز سطح بالا یا HLS نام دارد. سنتز سطح بالا را میتوان به عنوان یک ابزار کارآمد با بهره وری قابل قبول برای طراحی سخت افزار در نظر گرفت. در حالت کلی در سنتز سطح بالا از سورس فایلهای نوشته شده به زبان C و ++C برای تولید کدهای RTL استفاده میشود.
مطالعه متن کامل مقاله »
@Hexalinx
#ISE, #Verilog
✳️ هگزالینکس همچنان با شعار عمیق یاد بگیریم، دقیق بکار بگیریم در کنار شماست و در راستای هدف اصلی خود که همانا پایه ریزی نسخه آنلاین آموزشهای دانشگاهی و صنعتی در حوزه تراشههای قابل پیکرهبندی میباشد، در حال گام برداشتن است.
📌 برای دسترسی به جزئیات این دوره و نحوه شرکت در آن به سایت هگزالینکس مراجعه بفرمایید.
📚 اطلاعات بیشتر و ثبت نام »
@Hexalinx
✳️ هگزالینکس همچنان با شعار عمیق یاد بگیریم، دقیق بکار بگیریم در کنار شماست و در راستای هدف اصلی خود که همانا پایه ریزی نسخه آنلاین آموزشهای دانشگاهی و صنعتی در حوزه تراشههای قابل پیکرهبندی میباشد، در حال گام برداشتن است.
📌 برای دسترسی به جزئیات این دوره و نحوه شرکت در آن به سایت هگزالینکس مراجعه بفرمایید.
📚 اطلاعات بیشتر و ثبت نام »
@Hexalinx
#DSP48, #DSP58
✳️ این نوشتار از پایگاه دانش هگزالینکس یک بروزرسانی برای مقالهای است که پیش تر تحت عنوان بلوکهای DSP48 : قلب تپنده پردازش سیگنال منتشر شده است و در آن تاریخچه پیداش بلوکهای DSP48 و سیر تکاملی آن در طی یک بازه زمانی ۱۵ ساله به شکل خلاصه مورد بررسی قرار گرفت.
✅ در این مقاله قصد داریم بلوکهای قدرتمند پردازش سیگنال در تراشههای Versal را که DSP58 نام دارند، به علاقمندان و طراحان سخت افزار معرفی کنیم.
مطالعه متن کامل مقاله »
@Hexalinx
✳️ این نوشتار از پایگاه دانش هگزالینکس یک بروزرسانی برای مقالهای است که پیش تر تحت عنوان بلوکهای DSP48 : قلب تپنده پردازش سیگنال منتشر شده است و در آن تاریخچه پیداش بلوکهای DSP48 و سیر تکاملی آن در طی یک بازه زمانی ۱۵ ساله به شکل خلاصه مورد بررسی قرار گرفت.
✅ در این مقاله قصد داریم بلوکهای قدرتمند پردازش سیگنال در تراشههای Versal را که DSP58 نام دارند، به علاقمندان و طراحان سخت افزار معرفی کنیم.
مطالعه متن کامل مقاله »
@Hexalinx
#DMA
✳️ کاربرد DMA چیست؟
✅ در عمل بدون DMA، زمانی که پردازنده ARM در تراشههای Zynq در حال استفاده از ورودی/خروجی های پر سرعت است، در تمام مدتی که فرایند خواندن یا نوشتن در حال انجام است، به طور کامل مشغول است و در نتیجه، نمیتواند روی تسکهای دیگری کار کند. با استفاده از DMA، پردازنده ابتدا فرایند انتقال را آغاز میکند و سپس هنگامی که انتقال در جریان است مشغول اجرای تسکهای دیگر میشود. معمولاً در انتها، زمانی که کل فرایند تبادل داده به اتمام برسد، وقفهای توسط DMA تولید میشود و پردازنده از اتمام کار با خبر میشود.
❗️هنگام استفاده از پردازنده های MicroBlaze درون تراشههای FPGA و یا هنگام استفاده از تراشههای Zynq چندین انتخاب برای تبادل دادههای پرسرعت وجود دارد که آشنایی با آنها میتواند باعث افزایش کیفیت طراحی شود.
@Hexalinx
✳️ کاربرد DMA چیست؟
✅ در عمل بدون DMA، زمانی که پردازنده ARM در تراشههای Zynq در حال استفاده از ورودی/خروجی های پر سرعت است، در تمام مدتی که فرایند خواندن یا نوشتن در حال انجام است، به طور کامل مشغول است و در نتیجه، نمیتواند روی تسکهای دیگری کار کند. با استفاده از DMA، پردازنده ابتدا فرایند انتقال را آغاز میکند و سپس هنگامی که انتقال در جریان است مشغول اجرای تسکهای دیگر میشود. معمولاً در انتها، زمانی که کل فرایند تبادل داده به اتمام برسد، وقفهای توسط DMA تولید میشود و پردازنده از اتمام کار با خبر میشود.
❗️هنگام استفاده از پردازنده های MicroBlaze درون تراشههای FPGA و یا هنگام استفاده از تراشههای Zynq چندین انتخاب برای تبادل دادههای پرسرعت وجود دارد که آشنایی با آنها میتواند باعث افزایش کیفیت طراحی شود.
@Hexalinx