به نام خدا : آموزش FPGA جلسه۱ مقدمه : سلام خدمت دوستان…بعد از مدتی که آموزش های AVR رو گزاشتم تو سایت این دفه میخوام به لطف خدا آموزش fpga و آموزش vhdl (زبان برنامه نویسی fpga) با استفاده از تراشه های xilinx رو تو سایت قرار بدم…..
والا من زیاد حوصله نوشتن و کپی کردن مطلب از سایت های دیگه رو ندارم …۶ تا عنوان زیر رو میتونید در فایل های pdf اییی که در ته همین مطلب گزاشتم و کتابی که معرفی کردم برید و این عناوین توی اینا قشنگ توضیح داده شده….(آقای x : دادا یهو این مطلب رو هم نمینوشتی و خودت رو راحت میکردی ^_^ >>> جواب من : والا من سعی میکنم بیشتر آموزش های سایت رو پروژه محور قرار بدم وگرنه شما میتونید برید یه کتاب بخرید و یا فایل های pdf توی اینترنت رو بخونید….حالا من بیام و اینا رو دوباره تو سایت خودم تکرار کنم و کپی کنم چه فایده ای داره…..عوضش میام و آموزش رو صورت قرار دادن پروژه های ساده تا سخت تو سایت قرار میدم. )
۱) FPGA چیست
۲) کاربرد FPGA
۳) مقایسه بین FPGA-CPLD-ASIC-و…
۴) زبان های برنامه نویسی FPGA : من از زبون برنامه نویسی vhdl استفاده میکنم و آموزش و پروژه های این سایت برمبنای همین زبون هستش.
۵) پیش نیاز FPGA : حد اقل شما باید مطلب زیر رو بخونید تا بتونید با fpga کار کنید >>> آشنایی مختصر با گیت های منطقی
۶) انواع مدل تراشه XILINX : والا من با SPARTAN XC3S400 کار میکنم ، چون هم نسبت به بقیه تراشه ها ارزونتره و هم برا یادگیری و بستن پروژه(های ساده) مناسبه….
نرم افزار های کار با FPGA
والا اینجا نرم افزار هایی رو میگم که خودم باهاشون کار میکنم….نرم افزار های دیگه ای هم برا کار با fpga هستش که من کاری باهاشون ندارم….
۱) Xilinx ISE 7.1i : این نرم افزار محلی هستش برا نوشتن کد ها که کامپایلر هم شاید بشه بهش گفت…..والا این نرم افزار فک کنم تا الان نسخه ۱۴٫۷ اش هم اومده باشه….ولی با توجه به این که معمولا افراد رو یه نسخه کار میکنن(نه تنها این نرم افزار بلکه تمامی نرم افزار ها) …علت این که ما با این نسخه ( Xilinx ISE 7.1i) کار میکنیم اینه که منابع آموزشی و افرادی که باهاش کار میکنن براش زیاده و اگر به مشکلی برخوردیم احتمال به جواب رسیدن زیاده……وگرنه منم از خدامه برم و با جدیدترین نسخه کار کنم….ولی چون میدونم منبع آموزشی براش کمه لذا با همین نسخه کار میکنم و کامل یادش میگیرم و بعد اگه خواستم میرم سراغ جدید ترین نسخه و با اون کار میکنم(این طوری هم کار با اون نسخه جدیده هم آسون تر میشه برام)
در هر صورت از طریق لینک زیر میتونید انواع نسخه های این نرم افزار رو ببینید :
ISE Design Tools
لینک دانلود ان نرم افزار هم در زیر میزارم(البته باید ورژن ۷٫۱ رو انتخاب کنید و بعد دانلود کنید ^_^) :
دانلود ISE 7.1
۲) Modelsim.SE.10.1c.x64 : برا شبیه سازی هم از این نرم افزار استفاده میکنم….(البته مثل پروتئوس نیست ولی میشه گفت مثل keil هستش تقریبا)
توجه : مثل این که نسخه ModelSim SE 5.8 با XILINX ISE 7 سازگار نیست….برا من که این طور بود….حالا شاید اشتباه از منه بوده باشه…..ولی نسخه Modelsim.SE.10.1c.x64 مشکلی با XILINX ISE 7 نداره.
ابزار مورد نیاز FPGA
۱) برد آموزشی FPGA : والا در این زمینه الی ماشاالله برد مرد زیاده…فقط یه چیز که هست اینه که اصلا از برد هایی که مثل شکل زیر هستش(یعنی امکانات زیاد دارن) نخرید…..
چون اینا معمولا چینی هستش و یا همراه این برد ها CD آموزش کار باهاش ارائه نمیشه و یا اگه هم ارائه بشه به زبون چیزی هستش و خیلی خیلی خیلی از دوستان ممکنه اصلا نحوه کار رو متوجه نشن و الکی ۳۰۰ تومن پول بی زبون هدر میره.(من تجربم بالاس….۲ تا برد آموزشی در این زمینه خریدم o_O) ولی اگه مطمئن بودید که کسی قبلا این برد رو خریده و تونسته باهاش کار کنه و یا دفترچه راهنمای کار باهاش به انگلیسی یا فارسی هستش بخریدش….چون در غییر این صورت عین چیز توش میمونید و اصلا نمیتونید باهاش کار کنید.
ولی اگه نظر منو میخواین به نظرم اصلا از این برد هایی که کلی امکانتا دارن اصلا نخرید و عوضش از این بردهایی که ساده هستن رو بخرید …مثل بردی که عکسش رو در زیر میبینید…..(منظورم این نیست که برید همینو بخرید….منظورم اینه که بردی بخرید که فقط تراشه رو ، رو PCB سوار کردن)…..این طوری خودتون میتونید در تمام پروژه ها ازش استفاده کنید و هر پروژه ای که دوستاشتید باهاش درست کنید.
۲) پروگرامر FPGA : والا پروگرامر FPGA برا Xilinx در ۲ نوع Parallel و USB موجود هستش…که نوع parallel برا زمان دایناسور ها هستش….و اگه بگیرید عین چیز پشیمون میشید…چون دیگه پورت parallel تو لبتاب ها اصلا نیست و فقط تو کامپوترهای زمان بوغلی شاه قاجار موجود هستش ^_^ …
لذا حتما حتما از نوع USB ایش رو بخرید…..قیمتش حدود ۲۰۰ تومن(نوع چینیش هستش) که تو بازار پیدا میشه و نوع ایرانی با گارانتی هم ۲۵۰ تومن هستش که سایت زیر میفروشه
سایت خرید پروگرامر FPGA
یه سایت دیگه
توجه : درایور این پروگرامر رو در زیر میزارم…حتما دانلودش کنید……سر دانلود کردن و پیدا کردن این پدرم در اومد(!!!)
شکل پروگرامر FPGA سری USB به صورت زیر هستش :
کتاب آموزش FPGA
۱) پولی
والا در این زمینه (مثل تمام زمینه ها دیگه) کتاب های زیادی تو بازار هستش….که میتونید لیستشون رو تو سایت خانه کتاب مشاهده کنید.
من ۳ تا از کتاب های آموزش fpga رو خریدم که به نظرم بهترینشون (که هم قیمتش مناسبه هم خوب توضیح داده) کتاب آشنایی با تراشه های FPGA و زبان VHDL نوشته ی کاوه فارغی انتشارات کانون نشر علوم هستش.
خودم هم همین کتاب رو خوندم،میخونم و خواهم خوند (^_^)
۲) رایگان
اگه از من میشنوید در زمینه خرید کتاب خساست به خرج ندید….مثلا کتاب بالا رو من خودم دو بار خریدمش…..قیمتش حدود ۵ تومن هستش(اوووووووف چقدر کتابه رو تبلیغ کردم ^_^ >>> ولی خداییش کتاب خوبی هستش)
ولی با این حال چند تا PDF تونت هستش در این زمینه که بدک نیستن(مطالعشون کنید بد نیست…خوبه…..اما نباید ازش به عنوان یه رفرنس و مرجع استفاده کنید.)
تو فایلی که ته مطلب گزاشتم تمام کتب درست و حسابی (به زبون VHDL) که تو نت هستش رو براتون گزاشتم….البته اگه خواستین بازم تو نت سرچ کنید(ولی آموزش به زبون VHDL فک نکم غیر از اینایی که من گزاشتم چیز دیگه ای گیرتون بیاد….اگه چیزی پیدا کردید لطفا لینکش رو هم اینجا بزارید….)
دانلود کتاب های pdf آموزش FPGA
توجه : این جلسه رو من حتما باس میزاشتم تو سایت….والا خودم هم از این جور مطالب خوشم نمیاد …. ولی همینا خیلی خیلی مهمه به خاطر همین گزاشتم……سر هر کدوم از عناوین من کلی وقت گزاشتم و مطالعه کردم…..(نه بابا !!! )…..که یه جورایی تجربه میشه بهش گفت(^_^ …بابا تجربه…)
در جلسات آینده انشاالله اگه عمری باشه میخوام پروژه های عملی آسون براتون بزارم وکم کم پروژه ها رو سخت تر و بهتری بزارم….
مهمان
خدا خیرت بده برادر
مهمان
ممنون حاجی

مهمان
سلام
ممنون از شما
مهمان
سلام و ممنون از سایت و مطالب خوبتون.
چرا هرجا من میبینم برای استفاده از FPGA از زبان VHDL استفاده می کنند. چرا از Verilog یا SystemVerilog استفاده نمیشه؟
آیا مزیتی هست یا فرقی نداره؟
آخه من Verilog و SystemVerilog را تا حدی بلدم و فکر می کنم که با اونها راحت تر بتونم کار کنم.
ممنون میشم اگر یه توضیحی بدین.
نویسنده این مطلب
سلام
نمیدونم.
مهمان
سلام زبان VHDL نخستین بار توسط وزارت دفاع آمریکا به منظور طراحی و توصیف مدارهای مجتمع سرعت بالا طراحی شد و مورد استفاده قرار گرفت. سپس در سال 1987 توسط انجمن IEEE (انجمن مهندسان برق و الکترونیک) در قالب استاندارد IEEE 1076-1987 ارائه گردید. پس از گذشت چند سال و انجام پارهای ار تصحیحات، استاندارد دوم این زبان تحت عنوان IEEE 1076-1993 در اختیار عموم قرار گرفت. برای همین تقریبا کامل تر از بقیه زبان ها استاندارد و راحت هستش و تقریبا 80 درصد سیستم ها از این زبان استفاده میکنن بهترین نمونه سیستم هواپیمای F-22 Raptor تماما با FPGA به زبان VHDL طراحی شده.
مهمان
سلام هیچ فرقی بین vhdl و verilog نیست و هر دو یکسان هستن هر کاری که با اولی میشه کرد با دومی هم میشه حتی تو یه پروژه میشه از هر دو زبان استفاده کرد هر کدوم رو راحتی ادامه بده پشیمون نمیشی هو دو در یک سطح هستند…
مهمان
سلام آقا مهدی چیشد؟
نویسنده این مطلب
سلام
نه والا اطلاعی ندارم – سمتش رفتم تا حالا
مهمان
سلام آقامهدی خسته نباشید وممنون بابت مطالب مفیدی که آموزش میدید ببخشید شما میدونید چجور میشه یک نمونه tnm5000A+ ساخت؟یا مطالبی میدونید که بتونه کمکم کنه وازشون راهنمایی بگیرم؟ آیا پیاده سازی spi و jtag ورابط usb برروی fpga کافیه؟
مهمان
سلام دستت درد نکنه بابت این همه مطالب خوب… من پروگرامر tnm2000+ رو دارم الان یه cpld xc95288xl خریدم و خود پروگرامر هم پشتیبانی میکنه میخوام بدونم خود تراشه رو چطوری باید پروگرام کرد ؟
تازه با ise14.7 شروع کردم
vhdl
مهمان
سلام
اگه به سایت دکتر صدری مراجعه کنید آموزش کامل fpga توش هست.
مهمان
سلام!
ببخشید یه درخواست ازت داشتم!
میدونم که این مطلب قدیمیه و شاید هیچی یادت نباشه! ولی
۱) میشه بری روی بردت رو نگاه کنی ببینی دقیقا چه مدلی هست و از چه شرکتیه و از کجا خریدی؟
۲) من از شرکت نوآوران الکترونیک پرسیدم گفتن اصلا ما برد قرمز نداریم! چطور برد تو قرمزه؟
اصلی ترین سوالم اینه لطفا حتما به این پاسخ بده
۳) آیا وقتی برد رو خریدی پین هدر هاش روش لحیم شده بود یا لحیم کردی؟ (این حیاتیه جان خودم)
ممنون تورو خدا جواب بدی ها نری بگی چیزی یادم نیست
چند روز درگیر خرید FPGA هستم اعصابم خورد شده برا همین بهت اسرار کردم که جواب بدی
ممنون
یا علی مدد…!
نویسنده این مطلب
سلام

۱-برا نوآوران هستش – من میگم نوآورانه یعنی نوآورانه دیگه داش
اینم سایتش
www.ne-ir.com
رنگ بردو چیکار داری – قبلا قرمز میزده – الان صورتی
۲-لحیم شده بود – کیت که نمیخری هدربرد داری میخری.
مهمان
سلام!
این بردی که شما دارید اینه دیگه؟
http://www.ne-ir.com/DevelopmentBoards/NPB150.aspx?lang=Fa
میخواستم بپرسم که باید پروگرمر جدا براش تهییه کرد یا رو خودش چیزی داره؟
با پارلل میشه پروگرمش کرد؟ مثل usb کار میکنه؟ یعنی برنامه ها ساپورتش میکنن؟ و آیا پارلل روش خود برد برات میفرستن؟
نویسنده این مطلب
سلام
آره فک کنم همینه – تا جایی که یادمه پروگرامر جدا میخواست.
مهمان
ممنون از مطالب خوبتون
مهمان
ممنون بابت مطلبتون
مهمان
سلام..ممنون از سایت خوبتون…
لطفا یه توضیحی در مورد کاربرد fpga… و این که چه مزیت هاییی نسبت به بقیه میکرو ها داره(هر چند فکر میکنم fpga میکرو نباشه..بزار به حساب بی سوادیم.)…کلا تو ایران چه بازار کاری داره؟
نویسنده این مطلب
سلام
والا زیاد دربارش اطلاعات ندارم که بخوام به شما بدم
و این که Fpga یه پروسسور هستش و میکرو کنترلر ها یه پروسسور دارن و یه سری امکانات مثلا Adc-timer-pwm و…
والا بازار کارش چون توش نبودم و کلا تو این فازها نیستم اطلاعتاتی ندارم و تنها چیزی که میدونم اینه که تو مخابرات و صنایع نظامی کاربرد داره
و تا جایی که اطلاعات دارم(شک دارم چون فقط شنیدم و خودم تست نکردم) میشه داخلش چند تا میکرو Avr و Arm قرار داد(به کمک Core ها) و هم برا کارای کنترلی ازش استفاده میشه کرد و هم پردارش با سرعت بالا
برا کارایی که نیاز به سرعت پردارش بالا دارن اینا مناسبه….
به نظرم از متخصصش سوال کنی بهتر میتونه راهنماییت کنه تا من
مهمان
سلام، با تشکر از سایت خوبتون.
یه سایت ایرانی که من دیدم فقط در مورد FPGA هست و مطالب رو از پایه شروع کرده و توضیح میده سایت فراد اندیش هست…
faradandish.ir
فکر کنم شما بتونید جواب سوالاتون رو اونجا پیدا کنید.
مهمان
بی زحمت نحوه ی دانلود نرم افزارISE 7.1 رو از سایتی که گذاشتین هم بگین
یه کد MD5SUM میده اونو باید چیکار کنیم که دانلود بشه؟
نویسنده این مطلب
بهتره جدید ترین نسخه موجود رو دانلود کنید
من دانبود نکرم…این کتاب های آموزش fpga رو خریدم و توش یه سی دی بود شامل نرم افزار های مورد نیاز و…
مهمان
سلام.
ممنون بابت آموزش هاتون.
دوستان اگر دنبال بورد آموزشی با قیمت مناسب می گردید یه گزینه ی خیلی خوب بورد پازج-۱ هستش که توسط یک شرکت ایرانی داره تولید میشه و به زودی عرضه میشه. خوبی این بورد این هست که خودش پروگرمر USB رو بورد داره و FPGA اون هم SPARTAN-6 هستش. قیمتش هم گفتن چیزی بین ۲۵۰ الی ۳۰۰ (یعنی حدود قیمت یه پروگرمر).
این هم آدرس سایتش:
www.posedge.ir
مهمان
واقعا استفاده کردم..امیدوارم خسته نشی و بتونی همینجوری عالی و با ارایه تجربیاتت که خیلی ارزشمند هستند علاقه مندارو راهنمایی کنی..دمت گرم
مهمان
سلام خسته نباشید
پایه های مورذ نیاز spartan برای پروگرام کردن چه شماره هابی هستند ؟
میشه از برد آموزشی استفاده نکرد و مستقیما پروگرامر را به تراشه وصل کرد ؟
نویسنده این مطلب
سلام
فک کنم حد اقل یه مدار رو باید درست کنید تو نت سرچ کنید میاد…ولی دردسر داره…من به شخصه حال این کارا رو ندارم اصلا….
مهمان
ممنون
مهندس این پروگرمره spartan 6 رو ساپورت نمیکنه؟
نویسنده این مطلب
اطلاعات دقیق ندارم….
تو فروشگاه ها معمولا جزئیات مربوط به پروگرامر رو نوشتن…اگه ننوشته بودن تو گوگل سرچ کنی میاد
مهمان
سلام
لطفا میشه بگین هدربورد و پروگرمری رو که استفاده میکنین از کجا تهیه کردین؟
نویسنده این مطلب
سلام
http://www.ne-ir.com/
مهمان
من پروگارمر رو دارم و ویندوز 8.1 دارم و وقتی وصل میکنم کلا تو دیوایس منیچر میشناسه و درایور نمیخاد دیگه این یعنی چی؟
مهمان
این پروگرامر که نصب میکنیم باید قبلش ISE نصب باشه یا فرقی نمیکنه؟
بعد واسه ویندوز 8.1 چه نسخه ای از ISE باید نصب بشه؟
میشه یه اموزش از نصب این پروگرامر و کار باهاش رو هم بزارین
نویسنده این مطلب
نسخه بالا
دقیقا نمیدونم
فقط میدونم که نسخه ۷٫۱ جواب نمیده…
یعنی موقع پروگرام کردن روی fpga به مشکل بر میخوری…
۱۴٫۷ نصب کن….من اگه جای تو باشم این کار رو میکنم
مهمان
ممنون میشم روش نصبشو بگین
مهمان
سلام
من این پروگرامر رو دارم و ویندوز 8.1 دارم و وقتی کابل رو میزنم تو قسمت دیوایس منیجر اون رو میشناسه
یعنی درایور نمیخاد؟ موضوع چیه؟
نویسنده این مطلب
سلام
نمیدونم….
مهمان
سلام
دمت گرم .
ممنون از سایت خوب و بی نظیر تون
داداش راستش این لینکی که برای دانلود ISE v7 گذاشتی بعد از کلی گرفتن اطلاعات و شماره شناسنامه و… آخر این فایلو به ما نداد. تو نت هم فقط ورژن 14 پیدا میشه. اگه میشه به لطفی بکن آپ کن خودت
نویسنده این مطلب
از سایت p30 دانلود میتونی نسخه ۱۴ رو دانلود کنی….سایت eca هم میفروشه……نسخه ۱۴ و ۷ زیاد فرق آنچنانی نداره که اذیتت کنه
خودم هم الان با ۱۴ کار میکنم
مهمان
متاسفانه این نوع convertتوش تعریف نشده
نویسنده این مطلب
اینجا مطرح کنید
http://www.eca.ir/forum2/index.php?board=103.0
مهمان
با سلام
برنامه تبدیل فرمتstd_logic_vector به float typeدر vhdlرو می خوام
میشه راهنماییم کنید .
نویسنده این مطلب
سلام
تو language template اگه نگاه کنید کل توابع vhdl رو توش نشون داده….ازش میتونی استفاده کنی….
مهمان
سلام آقا مهدی، ممنونم از پستت.
به نظرتون سفارش یک مدار FPGA کامل که در هر ثانیه بتونه حدود 1 ترا Hash با الگوریتم SHA256 انجام بده و یکم هم با پروتکل های اینترنتی کار کنه چقدر میشه؟
نویسنده این مطلب
سلام
نمیدنم….پروژه انجام نمیدم…قیمت دستم نیست
نویسنده سایت
دستت درد نکنه
خیلی خوب بود
نویسنده سایت
هدر بردت مال چه شرکتیه ؟
نویسنده این مطلب
http://www.ne-ir.com
مهمان
haji to miduni khili damet garme?
نویسنده این مطلب
والا ما هنوز ریشمون در نیومده…
خانه خدا هم نرفتیم
مهمان
سلام . من تازه می خوام FPGA شروع کنم و فارغ التحصیل کارشناسی الکترونیک هستم به نظرتون با VHDL
شروع کنم یا Verilog ؟
نویسنده این مطلب
سلام
والا منم کلی ور رفتم که کدوم رو انتخاب کنم…..ولی به جواب درست و درمونی نرسیدم….چون تعریف vhdl رو شنیده بودم رفتم سمتش و …
مهمان
مثل همیشه حرف نداشت

واقعا حرف نداشت
نمیدونم چرا منم وقتی خبر نامه میاد پاک میکنم اما این یکی رو شانسی باز کردم
خدا قوت
نویسنده این مطلب
سر همین خبرنامه شرکت هاستم ، سایتم رو فرستاد رو هوا….گفتن این کار خلاف قوانین هستش
مهمان
aqa mamnoon va sepas gozar
khoda qovvvatet bede omidvaram hich vaqt az in enerji khobi ke mizari zarrei kam nashe be omid haq
man asheq kar ba labview ham hastam age etelaati dashti bezar kheyli mabhas jaleb va be roziie to sanaat
bazam azat mamnonam
man farsi dastam kheyli konde bebakhshid ke fingilish neveshtam
مهمان
ن داداش مخلصتم
ایشالا سرم خلوت بشه میذارم حتما
مهمان
اره درست شد
مشکل برنامم توی ی خطش بود ک اونجا گیر میکرد
دیگ دیروز جواب گرفتم
بازم ممنون جواب دادی
اگ بتونم درباره sim 900 مطلب میذارم بچه ها استفاده کنن
برنامه رو هم میذارم
مهمان
سلام مهدی جان
دمت گرم
من همونم ک واسه sim900 مزاحمت شدم
پروژه حل شد داداش
خیلی آقایی
نویسنده این مطلب
سلام
گفتم که من با این کار نکردم….کدی هم که تو دادی شونصد خط بود و نامنظم….
یه کاری کن…..یه ۰ و ۱ ارسال کن….از وقفه هم استفاده نکن….بببین ارسال و دریافت میشه یا نه
نویسنده این مطلب
بازم شرمنده داش….من راسش اصلا با SIM900 کار نکرده بودم….اگه مطلب در موردش بزاری که خیلی خوب میشه
مهمان
سلام
آقا مهدی ممنون خیلی عالی بود
نویسنده سایت
نویسنده سایت
واقعا عالیییییییییییییییییییییی بود دستت درد نکنه آقا مهدی