NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 2451 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
صفحه 1 از 5 12345 آخرینآخرین
نمایش نتایج: از 1 به 20 از 86

موضوع: اموزش برنامه نویسی تراشه های fpga

  1. #1
    کاربر ارشد 1nafar آواتار ها
    تاریخ عضویت
    Jul 2007
    نوشته ها
    2,745
    تشکر
    1,266
    تشکر شده 4,874 بار در 1,377 پست

    پیش فرض اموزش برنامه نویسی تراشه های fpga

    با توجه به اینکه منابع اموزش fpga در ایران بسیار کمتر از دیگر میکر ها هست ، تصمیم به شروع اموزش fpga در سایت گرفتیم . برای شروع به بررسی fpga ، نرم افزار های برنامه نویسی و شبیه سازی و ... میپردازیم .
    FPGA چیست؟
    ها نسل جدید مدارهای مجتمع دیجیتال قابل برنامه ریزی هستند که عبارت FPGA از سر کلمه های Field Programmable Logic Gate Array گرفته شده است . سرعت اجرای توابع منطقی در FPGA ها بسیار بالا و در حد نانو ثانیه است . اگر بخواهیم FPGA ها را به طور ساده تشریح کنیم ، عبارت است از یک تراشه که از تعداد بالایی بلوک منطقی - LB (Logic Block) ، خطوط ارتباطی و پایه های ورودی / خروجی (IOB) تشکیل شده است که به صورت آرایه ای در کنار یکدیگر قرار دارند . خطوط ارتباطی که وظیفهء آنها ارتباط بین بلوک های منطقی است از سوئیچ های قابل برنامه ریزی تشکیل شده اند . این سوئیچ ها بسته به نوعی که دارند ، برخی تنها یکبار قابل برنامه ریزی هستند و برخی به تعداد دفعات زیادی برنامه ریزی می شوند .
    بلوک های منطقی نیز دارای انواع مختلفی هستند که عموما توسط المانی پایه ، تمامی توابع منطقی را ایجاد می کنند . به عنوان مثال بلوک های منطقی در خانواده ACT-1 از شرکت Actel ، با پایهء مالتی پلکسری عمل می کنند . به این معنا که توسط مالتی پلکسر ، توانایی ایجاد توابع منطقی مختلف را دارند .
    البته تعداد ورودی های هر بلوک منطقی متفاوت است و به نوع FPGA مربوط می شود . به عنوان مثال بلوک های منطقی در خانوادهء ACT-1 ، از نوع 8 ورودی است . البته در برخی موارد به بلوک های منطقی ، سلول های منطقی نیز گفته می شود (LC) .
    بلوک دیاگرام یک FPGA به طور ساده در شکل زیر نشان داده شده است .



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

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

    کاربرد FPGA :
    FPGA در پیاده سازی توابع نسبتا پیچیده و پیچیدهء دیجیتال به کار می روند که نیاز به سرعت پردازش بالایی دارد . علاوه بر این کاهش سخت افزار مورد نیاز و همچنین برنامه نویسی ساده و استاندارد نیز از دیگر مزیت های استفاده از FPGA است .به علاوه به دلیل استفاده از بلوک های منطقی به جای معماری های risc و... نویز پذیری این تراشه کمتر میباشد .


    برنامه نویسی و طراحی با FPGA :
    برنامه نویسی و طراحی مدارات با FPGA ها به طور کلی به 3صورت انجام می شود .
    - با استفاده از زبان های توصیف سخت افزاری مانند VHDL ، AHDL ، HDL و ...
    - با استفاده از طراحی مدار
    -باساتفاده از زبان های برنامه نویسی سطح بالا مانند c

    این عمل توسط نرم افزارها و ابزارهای برنامه ریزی مختص به هر خانواده انجام می شود که توسط شرکت های سازنده در اختیار طراحان قرار می گیرد . به عنوان نمونه MAX + Plus || و QUARTUS || ابزار های برنامه ریزی FPGA های ساخت شرکت ALTERA هستند .
    در اینجا ما با زبان های c و vhdl کار خواهیم کرد ، چون اغلب دوستان با زبان c اشنایی دارند ، همچنین زبان vhdl دارای توابع بسیار ساده میباشد و یاد گیری ان بسیار اسان است .
    در درس بعدی به بررسی انواع fpga های ساخته شده و نرم افزر های انها خواهیم پرداخت

  2. کاربران : 10 تشکر کرده اند از شما 1nafar برای ارسال این پست سودمند:


  3. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  4. #2
    عضو جدید
    تاریخ عضویت
    Jun 2009
    نوشته ها
    5
    تشکر
    0
    تشکر شده 0 بار در 0 پست

    پیش فرض RE: اموزش برنامه نویسی تراشه های fpga

    سلام
    اولین سوال درس رو من میپرسم ، این fpga ها به چه دردی میخوره ؟ ایا مزیتی نصبت به avr و pic و arm داره ؟ قیمتش چند هست ؟

  5. #3
    کاربر ارشد 1nafar آواتار ها
    تاریخ عضویت
    Jul 2007
    نوشته ها
    2,745
    تشکر
    1,266
    تشکر شده 4,874 بار در 1,377 پست

    پیش فرض RE: اموزش برنامه نویسی تراشه های fpga

    این fpga ها به چه دردی میخوره
    اونا در جاهای که به سرعت پردازش بالا و همچنین پردازش داده با حجم بالا نیاز باشه استفاده میشن ، مثل پرداز ش تصویر و...
    ؟ ایا مزیتی نصبت به avr و pic و arm داره
    هر میکرو ای مزیت خودش رو داره ، اینا هم دارای یه سری مزیت هستند که به مرمرو گفته میشه
    قیمتش چند هست ؟
    بسته به امکانات و تعداد پایه ها بین 2 تا 20 هزار تومان

  6. کاربران : 3 تشکر کرده اند از شما 1nafar برای ارسال این پست سودمند:


  7. #4
    کاربر فعال رهتازالکترونیک آواتار ها
    تاریخ عضویت
    Jan 2010
    نام
    ابراهیم زهرابی
    نوشته ها
    154
    تشکر
    153
    تشکر شده 304 بار در 94 پست

    پیش فرض

    مگه avr برای پردازش تصویر جواب نمی ده؟
    اگه جواب نمی ده armیا fpgaکدومش بهتره؟

  8. #5
    مدیر انجمن Division آواتار ها
    تاریخ عضویت
    Jan 2010
    نام
    افشین علیزاده
    نوشته ها
    628
    تشکر
    206
    تشکر شده 1,013 بار در 407 پست

    پیش فرض

    نقل قول نوشته اصلی توسط رهتازالکترونیک نمایش پست ها
    مگه avr برای پردازش تصویر جواب نمی ده؟
    اگه جواب نمی ده armیا fpgaکدومش بهتره؟
    بحث استفاده از avr تو پروسه پردازش تصوير چيزه جالبي از آب در نمياد چون عملاً تعداد فرم هاي پردازشي خيلي پايين تره و زير ساخت لازمه رو براي اين عمل نداره ولي با اين حال باهاش مي شه يه كارايي رو انجام داد.

    ولي در مورد اينكه arm براي پردازش تصوير بهتره يا fpga اينم باز بستگي به تعداد فرم هاي آبجكت پردازشي شما داره ولي چون arm يه جورايي فريندلي تر از fpga هستش من arm رو براي اين موضوع انتخاب مي كنم البته بحث من كلي هستش .

    كانفيك اوليه fpga براي پردازش تصوير خيلي مشكل و پيچيده هستش (البته به نظره من) ولي اگه كسي تسلط بالاي 70 درصد به كانفيگ اين پروسسور خاص داشته باشه به امتحانش مي ارزه كه حداقل يه تستي رو بكنه .
    سادگی نهایت کمال است
    یه مدتی میشه که نیستم... ولی به زودی بر می گردم...

  9. کاربران : 3 تشکر کرده اند از شما Division برای ارسال این پست سودمند:


  10. #6
    مدیر انجمن farzadsw آواتار ها
    تاریخ عضویت
    Feb 2009
    نام
    تهران
    نوشته ها
    485
    تشکر
    105
    تشکر شده 745 بار در 309 پست

    پیش فرض

    FPGA ها كلا مقوله اي جدا گونه هستن و نه پردازنده هستن و نه ميكروكنترلر .fpga ابزاري هستن براي ساخت مدارهاي منطقي كه ميكروپروسسور هم ميتونه باشه . مقايسه اين 2تا اصلا درست نيست .
    دركل ميشه گفت كار با fpga ها سخته ولي تقريبا همه كاري ميشه با اونها كرد . بنابر اين ميتونيد با اونا پردازش تصوير رو خيلي سريعتر اما سختر انجام بديد .

  11. کاربران : 4 تشکر کرده اند از شما farzadsw برای ارسال این پست سودمند:


  12. #7
    مدیر باز نشسته shayanmelody آواتار ها
    تاریخ عضویت
    Jan 2011
    نام
    شایان نیکزاد
    نوشته ها
    576
    تشکر
    283
    تشکر شده 1,038 بار در 473 پست

    پیش فرض

    سلام .
    میشه لطفا ادامه بدید؟

  13. #8
    مدیر باز نشسته t.o.e آواتار ها
    تاریخ عضویت
    Sep 2010
    نوشته ها
    191
    تشکر
    150
    تشکر شده 122 بار در 60 پست

    پیش فرض Fpga

    سلام:
    منم یه سری چیزها فهمیدم ولی نمیدونم درسته یا نه...
    خانواده altra نسبت به xilinx تو ایران کمتر استفاده میشود ولی تو کار های دقیق کامپایلر qurtus برای altra توی عمل دقیقا عین نرم افزار هست...به عنوان مثال اگر یه دستوری تو کامپایلر 1 نانو ثانیه طول بکشه تو عمل هم ئقیقا همینطوری هست....ولی توی خانواده xilinx همچین چیزی نیست.
    هر کسی خواست fpga altra مدل های جدیدش رو بخره از امجد ...فروشگاه آرمان خرید خارجی کنه بهتره....ما خودمون تو بازار ایران 30000 توامن خریدیم..این بنده خدا خرید خارجی شو برای ما 19000 اورد و خیلی خوب هم جواب میده....
    اطلاعات بیشتری ندارم ...این اطلاعات هم از تجربیات اساتیدم فهمیدم.
    تا اخر اسفند کمتر میام.

  14. #9
    همکار علمی
    تاریخ عضویت
    Jan 2010
    نوشته ها
    302
    تشکر
    945
    تشکر شده 289 بار در 151 پست

    پیش فرض

    چه شماره ای؟

  15. #10
    مدیر باز نشسته t.o.e آواتار ها
    تاریخ عضویت
    Sep 2010
    نوشته ها
    191
    تشکر
    150
    تشکر شده 122 بار در 60 پست

  16. تشکرها از این نوشته :


  17. #11
    عضو جدید
    تاریخ عضویت
    May 2011
    نوشته ها
    9
    تشکر
    0
    تشکر شده 3 بار در 2 پست

    پیش فرض

    سلام، کسی میدونه دقیقا چجوری باید یه قسمت رو به یه پین خاص نسبت داد؟
    مثلا میخوام پین p0-1رو به عنوان خروجی تعریف کنم که مقدار نهایی روی این پایه قرار بگیره.
    کلا چجوری باید ورودی خروجی یه پین رو مشخص کنیم؟
    تشکر

  18. کاربران : 2 تشکر کرده اند از شما HamidTaheri برای ارسال این پست سودمند:


  19. #12
    عضو جدید
    تاریخ عضویت
    Jun 2011
    نوشته ها
    14
    تشکر
    16
    تشکر شده 3 بار در 3 پست

    پیش فرض نتخاب pic يا dspic يا fpga

    با سلام خدمت 1nafar عزيز
    1nafar من از شما خيلي چيزا در مورد PIC و AVR ياد گرفتم و حالا كه ديدم در زمينه‌ي FPGA هم فعاليت ميكنيد خيلي خوشحال شدم. خدا خيرتون بده.
    من يه سوال دارم
    من الان آشنايي اوليه‌اي با ميكرو هاي PIC و AVR پيدا كردم. و خودم PIC رو پسنديدم. اما الان بين انتخاب PIC يا DSPIC يا FPGA مردد شدم و نميدونم كدو رو به صورت حرفه‌اي دنبال كنم.
    ممنون ميشم كه من رو راهنمايي بفرماييد و يك مقايسه‌ي مختصر بفرماييد و بگيد كه توي ايران از كدو بيشتر ميشه پول در آورد!!.
    شاد باشيد

  20. تشکرها از این نوشته :


  21. #13
    مدیر باز نشسته shayanmelody آواتار ها
    تاریخ عضویت
    Jan 2011
    نام
    شایان نیکزاد
    نوشته ها
    576
    تشکر
    283
    تشکر شده 1,038 بار در 473 پست

    پیش فرض

    نقل قول نوشته اصلی توسط HamidTaheri نمایش پست ها
    سلام، کسی میدونه دقیقا چجوری باید یه قسمت رو به یه پین خاص نسبت داد؟
    مثلا میخوام پین p0-1رو به عنوان خروجی تعریف کنم که مقدار نهایی روی این پایه قرار بگیره.
    کلا چجوری باید ورودی خروجی یه پین رو مشخص کنیم؟
    تشکر
    سلام.
    این تاپیک رو نگاه کنید،با عکس توضیح دادم.اگر سوال بود در خدمتم.
    http://www.iranmicro.ir/forum/showthread.php?t=4956

  22. تشکرها از این نوشته :


  23. #14
    ناظم انجمن vahidasm آواتار ها
    تاریخ عضویت
    Feb 2010
    نام
    وحید
    نوشته ها
    754
    تشکر
    1,068
    تشکر شده 881 بار در 470 پست

    پیش فرض

    سلام
    آقا شایان شما از کجا fpga رو شروع کردید؟؟
    منظورم منبع هست.
    من دوس دارم یاد بگیرم ولی نمیدونم باید از کجا شروع کنم
    اولین مرحله شناخت آفرینش همانا خرد است چشم و گوش و زبان سه نگهبان اویند که لاجرم هر چه نیکی و شر است از همین سه ریشه می گیرد .و افسوس که بدنبال کنندگان خرد اندکند باید که به سخن دانندگان راه جست و باید جهان را کاوش نمود و از هر کسی دانشی آموخت و یک دم را هم برای آموختن نباید از دست داد . فردوسی خردمند

  24. تشکرها از این نوشته :


  25. #15
    مدیرکل انجمنها
    تاریخ عضویت
    May 2011
    نام
    احسان صفامنش
    نوشته ها
    1,763
    تشکر
    919
    تشکر شده 2,261 بار در 1,056 پست

    پیش فرض

    دوستان سلام
    اول از همه که arm و avr هیچ ربطی به fpga نداره و حتی نمیشه مقایسه کردشون
    پردازنده ها دونه به دونه یک دستور رو انجام میدن مثلا با یک پالس یک بایت رو شیفت میدن و این دستورات به ترتیب انجام میشن تا مثلا بعد از 10 یا 70 یا 200 یا 1000پالس یا مثلا 2 ثانیه عمل مورد نظر انجام بشه. به این روش میگن پردازش ترتیبی چی ترتیبی
    ولی fpga و cpld و ... مدار های منطقی رو پیاده سازی میکنن و با یک پالس میتونن داده ی ورودی رو پردازش کنن و در خروجی قرار بدن(یک پالس = ورودی---> خروجی)چقدر خفن. به این روش میگن پردازش بلادرنگ چی بلادرنگ.

    ولی خوب این دلیل نمیشه که هیچ کدوم برتری نسبت به اون یکی داشته باشه و هر کدوم در جای خودش
    ویرایش توسط esisafa : 11-10-2011 در ساعت 11:36

  26. کاربران : 4 تشکر کرده اند از شما esisafa برای ارسال این پست سودمند:


  27. #16
    مدیرکل انجمنها
    تاریخ عضویت
    May 2011
    نام
    احسان صفامنش
    نوشته ها
    1,763
    تشکر
    919
    تشکر شده 2,261 بار در 1,056 پست

    پیش فرض

    در مورد زبانشم بگم که باید یک زبان جدید رو یاد بگیرید بلاخره.
    آسون ترین زبان به نظر من ahdl شرکت altera هست. ولی فراگیر نیست و تو نرم افزار quartus دیدمش.
    اگه زبان فراگیر میخواین باید vhdl یاد بگیرین که تو هر جا ازش استفاده میشه و واقعا یک استاندارد بین المللی هست
    از بقیه ی زبونا هم هیچ خبری ندارم
    در زبان ahdl اول هدر ها رو معرفی میکنی. بعد ورودی خروجی ها و بعد بدنه ی اصلی

    توجه: برای کار با HDL حتما باید یکم مدار منطقی بلد باشین. حداقل بدونین جدول حالت چیه

  28. کاربران : 2 تشکر کرده اند از شما esisafa برای ارسال این پست سودمند:


  29. #17
    ناظم انجمن vahidasm آواتار ها
    تاریخ عضویت
    Feb 2010
    نام
    وحید
    نوشته ها
    754
    تشکر
    1,068
    تشکر شده 881 بار در 470 پست

    پیش فرض

    برای یادگیریش منبعی(کتاب یا pdf , ...) هست که مستقیما fpga آموزش داده باشه؟؟
    اولین مرحله شناخت آفرینش همانا خرد است چشم و گوش و زبان سه نگهبان اویند که لاجرم هر چه نیکی و شر است از همین سه ریشه می گیرد .و افسوس که بدنبال کنندگان خرد اندکند باید که به سخن دانندگان راه جست و باید جهان را کاوش نمود و از هر کسی دانشی آموخت و یک دم را هم برای آموختن نباید از دست داد . فردوسی خردمند

  30. تشکرها از این نوشته :


  31. #18
    مدیر باز نشسته shayanmelody آواتار ها
    تاریخ عضویت
    Jan 2011
    نام
    شایان نیکزاد
    نوشته ها
    576
    تشکر
    283
    تشکر شده 1,038 بار در 473 پست

    پیش فرض

    نقل قول نوشته اصلی توسط vahidasm نمایش پست ها
    برای یادگیریش منبعی(کتاب یا pdf , ...) هست که مستقیما fpga آموزش داده باشه؟؟
    سلام.
    شما برای کار کردن با این تراشه ها کلا دو روش دارید.یکی برنامه نویسی و دیگری طراحی شماتیک.
    تو طراحی شماتیک شما میاید گیت های منطقی رو کنار هم میزارید و مدارتون رو درست میکنید(البته بعضی از قطعات پر کاربرد از پیش طراحی شده هست).

    در کل شما باید ابتدا مدارهای منطقی رو بلد باشید.
    یکم رو این قسمت وقت بزارید بعدش برید سراغ این تراشه ها.



    بعد از چند وقت برگشتم



  32. کاربران : 2 تشکر کرده اند از شما shayanmelody برای ارسال این پست سودمند:


  33. #19
    ناظم انجمن vahidasm آواتار ها
    تاریخ عضویت
    Feb 2010
    نام
    وحید
    نوشته ها
    754
    تشکر
    1,068
    تشکر شده 881 بار در 470 پست

    پیش فرض

    مدار منطقی مشکلی ندارم.شما فقط بگین چیکار کنم؟
    ویرایش توسط vahidasm : 11-10-2011 در ساعت 17:28
    اولین مرحله شناخت آفرینش همانا خرد است چشم و گوش و زبان سه نگهبان اویند که لاجرم هر چه نیکی و شر است از همین سه ریشه می گیرد .و افسوس که بدنبال کنندگان خرد اندکند باید که به سخن دانندگان راه جست و باید جهان را کاوش نمود و از هر کسی دانشی آموخت و یک دم را هم برای آموختن نباید از دست داد . فردوسی خردمند

  34. تشکرها از این نوشته :


  35. #20
    مدیرکل انجمنها
    تاریخ عضویت
    May 2011
    نام
    احسان صفامنش
    نوشته ها
    1,763
    تشکر
    919
    تشکر شده 2,261 بار در 1,056 پست

    پیش فرض

    کتابهای آموزش VHDL و Verilog و به زبون فارسی هست. با کتاب بهترین روشه.
    کتاب VHDL برنامه نویسی با مثال- داگلاس پری-فرزاد شکاری زاده - انتشارات نص - یک نمونه کتابه
    اینی که من دارم ویراست چهارمه که خیلی جدید نیست و از جدیدش خبر ندارم

    یکم کتابم بگیریم بد نیست. من که همه کارامو با کامپیوتر میکنم از فیلم گرفته و نرم افزار و آموزش زبان و همه با کامپیوتره. باید تغییر مسیر بدم
    ویرایش توسط esisafa : 11-10-2011 در ساعت 18:13

  36. تشکرها از این نوشته :


صفحه 1 از 5 12345 آخرینآخرین

موضوعات مشابه

  1. سوال در مورد fpga
    توسط engineer1 در انجمن پردازنده هاي ارایه ای
    پاسخ: 360
    آخرين نوشته: 17-01-2015, 15:16
  2. پاسخ: 8
    آخرين نوشته: 10-11-2012, 23:16
  3. آموزش fpga و vhdl
    توسط arsalan681 در انجمن FPGA
    پاسخ: 13
    آخرين نوشته: 22-05-2012, 12:42
  4. کتاب اموزش fpga به زبان c
    توسط 1nafar در انجمن FPGA
    پاسخ: 26
    آخرين نوشته: 22-11-2011, 16:51

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •