به نام خدا : آموزش FPGA جلسه۵ آموزش VHDL جلسه۲ : سلام خدمت دوستان….بعد چند روزی تاخیر(!) دوباره اومدیم(آخه رفته بودیم دانشگو ^_^) تو این سری فیلم های آموزش fpga رسیدیم به برنامه نویسی fpga به زبون vhdl که تو این جلسه مباحث زیر رو میخوام بگم( آموزش vhdl )….انشاالله بدردتون بخوره وخوشتون بیاد…..اگه هم نیومد به بزرگی خودتون ببخشید…..در ضمن اگه جاییش رو متوجه نشدید بگید ما در بست در خدمتیم(تو سایت و تو همین مطلب مطرح کنید ^_^ )؛ دوستان اول فیلم رو ببینید و بعد بیان این مطلب رو بخونن.
اولین کد fpga : اولین پروژه ای رو که میبینید توش میخوام در مورد مد inout صحبت کنم…..که کد پروژش رو در زیر میبینید….
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity VHDL_MODULE is
Port (a,b : in std_logic;
c : inout std_logic;
d : out std_logic);
end VHDL_MODULE;
architecture Behavioral of VHDL_MODULE is
begin
c <= a AND b;
d <= c;
end Behavioral;
دومین کد fpga : اینم از مداری که میخوایم کدش رو بنویسیم(البته به روش انتساب ساده)
اینم از کدهای vhdl مدار بالا :
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity VHDL_MODULE is
Port (a,b,c,d : in std_logic;
e : out std_logic);
end VHDL_MODULE;
architecture Behavioral of VHDL_MODULE is
begin
e <= (a AND b) OR (c AND d);
end Behavioral;
همون طور که در معماری میبینید نوشتن کد مدار مورد نظر به روش انتساب ساده به نظر ساده میاد….ولی فک کن اگه ۲۰ تا گیت داشتیم که به هم وصل بودن بازم میتونستیم از این روش استفاده کنیم؟؟؟>>>>> شدنش میشه ولی به چه قیمتی…..با استفاده از این روش شونصد ساعت وقط ازت میگیره تازه شونصد بار هم باید کد ها رو چک کنی که نکنه یه وقط پرانتزی چیزی جا انداخته باشی >>> در کل وقتی تعداد گیت ها زیاد میشه این روش زیاد مناسب نیست.
سومین کد fpga : اینم از مداری که میخوایم کدش رو بنویسیم(دقیقا همون مدار شکل بالایی هستش فقط در نوشتن کدهای vhdl به جای استفاده از روش انتساب ساده….از سیگنال استفاده میکنیم….که در فیلم سیگنال چیه و توضیحش و و و ^_^ رو توضیح دادم.)
اینم از کد های vhdl پروژه ….. روش : استفاده از سیگنال
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity VHDL_MODULE is
Port (a,b,c,d:in std_logic; e:out std_logic);
end VHDL_MODULE;
architecture Behavioral of VHDL_MODULE is
signal sig1,sig2 : std_logic;
begin
sig1 <= a AND b;
sig2 <= c AND d;
e <= sig1 OR sig2;
end Behavioral;
اینم از فیلم آموزش این جلسه
هزینه استفاده از این مطلب : اگه مطلب مفید بود یه فاتحه برا کسایی که تازه از دنیا رفتن بخونید.
داستان : من تو دانشگاه کتاب “نگاهی به تاریخ جهان” رو تموم کردم(جلد۱ اش رو تموم کردم تازه…..۳ جلد هستش O_o….خدا رحم کنه ^_^)….خیلی خوبه که در کنار مطالعه درسها و… سطح مطالعه غیر درسیتون رو افزایش بدید(بابا کتاب خون…..بابا نسیهط!!! >>> ^_^)….. مثلا اگه از تاریخ کمی اطلاعات داشته باشید میبینید که این اروپا که الان پیشرفته هستش و بعضی(به نظر من احمق ها) هی میگن ما جهان سومی هستیم و اونا جهان چیزومی(!) اگه تاریخ رو بخونن میبینن که اروپا در اکثر مواقع زیر چیز آسیا بوده(روم نمیشه اینجا بگم ^_^)……حالا یه عده آدم چیز هی میگن جهان چیزمی جهان چیزمی(استادای دانشگامون رو میگم ^_^) و ما رو میخوان تحقیر کنن(به نظر من…..خداییش من از این حرف اینا خیلی ناراحت میشم)……..انشاالله کشور ما هم (با کمک ما جون ها ^_^) پیشرفت میکنه و مشکلات (انشاالله) یکی پس از دیگری حل میشه……
فعلا یا علی….
مهمان
آقا دمت گرم. خدا قوت. خیلی از آموزش هایت استفاده می کنم. واقعا عالی هستند.
مهمان
سلام. خسته نباشید ممنون از زحمتی که می کشید امیدوارم که موفق و کامروا باشید.
( از لندن)
نویسنده این مطلب
سلام
خواهش میکنم
مهمان
من میخام ۷۴۲۴۵ رو که یه بافر دوطرفست رو …. کنم باید از inout استفاده کنم؟
مهمان
خدا قوت