شروع كار با fpga:

بعد از فراهم كردن مقدمات و برنامه هاي لازم شروع به برنامه نويسي مي كنيم. نرم افزار Xilinx ISE را اجرا مي كنيم. از منوي فايل گزينه ي new project را انتخاب كرده و مشخصات برد و كابل ارتباطي را در پنجره ي باز شده تعيين مي كنيم. زبان VHDL را نيز به عنوان زبان برنامه نويسي انتخاب مي كنيم. سپس ساير مراحل wizard را با زدن next به اتمام مي رسانيم. در پنجره ي سمت چپ بر روي نام پروژه كليك راست كرده وگزينه new source را انتخاب مي كنيم. از كادر باز شده verilog modle را انتخاب مي كنيم. برنامه ي مورد نظر را به زبان HDL مي نويسيم. براي مثال دراينجا ما برنامه اي مي نويسيم كه باعث چشمك زدن يكي از LED هاي روي برد مي شود. برنامه ي HDL آن به اين صورت است:

module blindled (clk,out);

         input clk;

         output out;

         reg out;

         reg [0:32]a;

         always @ (posedge clk)

                  begin

                            a=a+1;

                            out=a[32];      

endmodule

طرز كار برنامه به اين صورت است كه a را 32 بيتي در نظر مي گيرد و با زدن هر كلاك يكي به a اضافه مي كند. بعد از آنكه بيت آخر a،يك شد out هم يك مي شود.(يعني LED روشن مي شود.) و دوباره با اضافه كردن يك به a بيت آخر صفر شده و out صفر مي شود.(LED خاموش مي شود.) و اين كار هميشه ادامه مي يابد...

بعد از نوشتن برنامه و ذخيره كردن آن از سمت چپ synthesize را انتخاب مي كنيم.نرم افزار مشكلات برنامه را بررسي مي كند و در صورت وجود error اعلام مي كند. بعد از آن بايد مشخص كنيم هر كدام از متغيرهاي input و output كه در برنامه داريم مربوط به كدام پايه از fpga روي برد مي شود. براي تعيين پايه ي مورد نظر از سمت چپ user constrains و سپس Edit Implemention را انتخاب مي كنيم. از پنجره ي جديد باز شده از پايين ports را انتخاب مي كنيم. حال بايد از كاتالوگي كه قبلا از سايت xess دانلود كرديم استفاده كنيم و پايه ي متصل به clk و يكي از پايه هاي متصل به LED ها را انتخاب مي كنيم. مثلا پايه ي 77 مربوط به clk مي شود پس p77 را در جلوي input مي نويسيم و يكي از LED ها را انتخاب كرده و پايه ي متصل به آن را به output مي دهيم.(مثلا پايه ي متصل به sevensegment leftA)

پنجره را بسته و save مي كنيم و از كادر باز شده Reset‌را انتخاب مي كنيم. سپس از سمت چپ نرم افزار ISE گزينه ي Implemention را انتخاب مي كنيم تا درستي پايه ها را چك كند. بعد از آن بايد bitfile را از پروژه برداشته و روي برد load  كنيم. به شاخه اي كه project را در آن ساخته ايم مي رويم و فايل با پسوند bit را مي يابيم. برد را روشن كرده و اتصالات لازم را برقرار مي كنيم. برنامه ي gxload را اجرا كرده و در كادر مربوطه مشخصات برد و چگونگي ارتباط را مشخص كرده و فايل bit را به داخل كادر fpga/CPLD كشيده و رها مي كنيم. سپس با انتخاب گزينه ي load برنامه را بر روي برد بار مي كنيم. با load كردن يك برنامه ي جديد ،برنامه ي قبلي برد،پاك مي شود. با اجراي برنامه ي gxtest برنامه ر ا تست مي كنيم. مي بينيم LED ي مورد نظر با فركانسي كه تعيين كرده ايم چشمك مي زند!

/ 2 نظر / 10 بازدید
حميد

سلام دوست عزيز.اگه به مجموعه جواهری در قصر علاقه مندی يه سر به وبلاگ من بزن. عكس موزيك مصاحبه با دوبلور های این فیلم و همه چی در مورد اين سريال توش پيدا مي شه. منتظرت هستم

hadi

salam code i ke neveshtin eshtebahe , nemishe tuye always @ chizi mesle a = a+1 nevesht baiad bejaye = alamate <= ro gozasht . man ba xilinx kar nakardam vali tu barname nevisihaye verilog ba quartus va maxplus ye term ba ina kar kardim