تبلیغات
باران الکترونیک - قسمت پنجم: ایجاد حافظه FIFO با استفاده ازFIFO Generator در ISE

حافظه FIFO (First In Last Out) در کاربردهایی که با یک جریانی از سیگنال مواجه هستیم مورد استفاده قرار می­گیرد. برای مثال، یک حسگر تصویر یا یک مبدل آنالوگ به دیجیتال که داده­های ورودی به صورت پیوسته وارد سیستم می­شود نیاز به یک حافظه FIFO برای ذخیره داده­ها و سپس پردازش آن­ها می­باشیم.

برای استفاده از FIFO در  باید از IP Core Xilinx، FIFO Generator استفاده می­کنیم. برای ایجاد این IP Core می­توان به دو روش زیر عمل کرد:

الف) به صورت مستقل از پروژه

از منوی start مسیری که در شکل نشان داده شده است را دنبال کنید تا نرم­افزار Core Generator باز شود.

ب) در داخل نرم­افزار ISE

از قسمت Project، New Source را انتخاب کنید. گزینه اول را انتخاب کنید و بعد از وارد کردن اسم فایل روی Next کلیک کنید.

در هر دو حالت به پنجره زیر می­رسید. در قسمت Search IP Catalog کلمه fifo را وارد کنید. FIFO Generator را انتخاب کنید و Next را بزنید.

در این مرحله پنجره FIFO Generator نمایش داده می­شود. روی Next کلیک کنید تا وارد صفحه 2 شوید. روی Next کلیک کنید.

در این صفحه نوع حافظه مورد استفاده برای ساختن FIFO را انتخاب کنید. همچنین می­توانید در این صفحه مشخص کنید که فرکانس نوشتن داده­ها با فرکانس خواندن داده­ها یکسان باشند یا متفاوت باشند.

Read Mode

·         Standard FIFO

یک فیفوی استاندارد بدون وجود هرگونه رجیستر برای خروجی ایجاد می­کند.

·         First-Word Fall-Through FIFO (FWFT)

یک فیفو با خروجی­هایی که به صورت رجیستر هستند ایجاد می­کند. با انتخاب این گزینه می­توان به بدون انجام عملیات خواندن به داده بعدی که در فیفو وجود دارد دسترسی پیدا کرد. همچنین وقتی که داده در فیفو قرار بگیرد بلافاصله در خروجی قرار می­گیرد.

Optional Flags, Handshaking, and Initialization

Optional Flags

·         Almost Full Flag

یک پورت خروجی تولید می­کند که نشان دهنده این است که فقط یک داده دیگر می­تواند داخل فیفو وارد شود.

·         Almost Empty Flag

یک پورت خروجی تولید می­کند که نشان دهنده این است که فقط یک داده دیگر می­تواند از فیفو خوانده شود.

Handshaking Options

·         Write Port Handshaking

o       Write Acknowledge

این سیگنال بیانگر این است که عملیات خواندن با موفقیت انجام شده است. می­تواند active high یا active low باشد.

o       Overflow (Write Error)

این فلگ بیانگر این است که عملیات خواندن قبلی موفقیت آمیز نبوده است.

·         Read Port Handshaking

o       Valid (Read Acknowledge)

این فلگ مشخص می­کند که چه زمانی داده­ای که در باس خروجی قرار می­گیرد، معتبر می­باشد.

o       Underflow (Read Error)

این فلگ مشخص می­کند که عملیات خواندن قبلی موفق آمیز نبوده است.

Initialization and Programmable Flags

·         Reset Pin

با فعال شدن پین ریست، تمام شمارنده­ها، رجیسترهای خروجی و حافظه­ها ریست می­شود.

Programmable Flags

·         Programmable Full Type

می­توانید انتخاب کنید که با رسیدن داده­های داخل فیفو به تعداد مشخص توسط پین prog_full به شما خبر داده شود.

·         Programmable Empty Type

می­توانید انتخاب کنید که با کم شدن داده­های داخل فیفو از یک تعداد مشخص توسط پین prog_empty به شما خبر داده شود.

Data Count

·         Write Data Count (Synchronized with Write Clk)

تعداد داده­های نوشته شده در فیفو را مشخص می­کند.                  

·         Read Data Count (Synchronized with Read Clk)

بیانگر تعداد داده­های خوانده شده از فیفو می­باشد.             

Summary

در این پنجره خلاصه­ای از تنظیمات فیفو نشان داده می­شود.

بلوک فیفو در صفحه شماتیک در شکل زیر نشان داده شده است.

دانلود فایل PDF

منبع

LogiCORE IP FIFO Generator, Product Guide, PG057 December 18, 2012


نظرات()   
   
حسین
یکشنبه 22 شهریور 1394 01:46 ب.ظ
من فایل رو دانلود کردم
ولی اشکال داره و باز نمیشه
پاسخ امیرحسین رستمی : لینک دانلود درست شد. لطفا دوباره تلاش نمایید.
 
لبخندناراحتچشمک
نیشخندبغلسوال
قلبخجالتزبان
ماچتعجبعصبانی
عینکشیطانگریه
خندهقهقههخداحافظ
سبزقهرهورا
دستگلتفکر
آخرین پست ها