موضوع مقاله: اینتل ۸۲۵۹ | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # اینتل ۸۲۵۹ | مقدمه: در ابتدا قطعه اولیه ۸۲۵۹ بود، سپس نسخه بعدی با پسوند A که با پردازنده ۸۰۸۶ یا 8088 سازگار بود. | ## بخش 1: اینتل ۸۲۵۹ | ۸۲۵۹ چندین منبع ورودی وقفه را به عنوان یک خروجی وقفه به ریزپردازنده میزبان ادغام می‌کند و سطوح وقفه موجود در یک سیستم را فراتر از یک یا دو سطح موجود در تراشه پردازنده گسترش می‌دهد. 8259A در PC اصلی که در سال ۱۹۸۱ معرفی شد گنجانده شد و در PC/XT که در ۱۹۸۳ معرفی شد هم حفظ شد. ۸۲۵۹ با معماری APIC اینتل از زمان معرفی آن در رایانه‌های شخصی چند پردازنده ای متقارن، همزیستی داشته‌ است. رایانه‌های شخصی مدرن شروع به حذف تدریجی 8259A به نفع معماری APIC اینتل کرده‌اند. توضیح عملکرد پین‌های سیگنال اصلی روی یک ۸۲۵۹ به شرح زیر است: هشت خط درخواست ورودی وقفه به نام IRQ0 تا IRQ7، یک خط خروجی درخواست وقفه به نام INTR، خط تأیید وقفه به نام INTA, D0 تا D7 برای ارتباط سطح وقفه یا آفست بردار. روی ۸۰۸۶/۸۰۸۸، کنترل‌کننده وقفه زمانی که یک وقفه رخ می‌دهد، یک عدد وقفه در گذرگاه داده ارائه می‌دهد. چرخه وقفه ۸۰۸۰/۸۰۸۵ سه بایت در گذرگاه داده صادر می‌کند (مطابق با یک دستور CALL در مجموعه دستورالعمل ۸۰۸۰/۸۰۸۵). | ## بخش 2: اینتل ۸۲۵۹ | 8259A عملکردهای بیشتری را در مقایسه با ۸۲۵۹ (به ویژه حالت بافر و حالت فعال سطح) ارائه می‌دهد و با حالات بالاتر سازگار است. برنامه‌نویسی یک ۸۲۵۹ در قالبDOS و مایکروسافت ویندوز، برای دلیل سازگاری با نسخه‌های قبلی، مشکلات گیج کننده ای را به وجود آورده‌ است که به قدمت PC اصلی معرفی شده در سال ۱۹۸۱ باز می‌گردد. انتظار می‌رود درایورهای دستگاه DOS پس از اتمام سرویس دستگاه خود، EOI غیر اختصاصی را به ۸۲۵۹ها ارسال کنند. این کار با وجود ۳۲ بردار وقفه اول (INT00-INT1F) انجام می‌شد که توسط پردازنده برای کیس‌های استثنا داخلی رزرو شده بود (این امر به دلایلی برای طراحی رایانه شخصی نادیده گرفته شد). به دلیل بردارهای رزرو شده برای استثناها، اکثر سیستم عامل‌های دیگر (حداقل اصلی) 8259 IRQ ها (در صورت استفاده در یک پلت فرم) را به یک افست پایه بردار وقفه دیگر ترسیم می‌کنند. سایر سیستم عامل‌ها از آنجایی که اکثر سیستم عامل‌های دیگر امکان تغییر در انتظارات درایور دستگاه را فراهم می‌کنند، سایر حالت‌های عملکرد ۸۲۵۹، مانند Auto-EOI، ممکن است استفاده شوند. این امر به ویژه برای سخت‌افزار مدرن x86 (که در آن ممکن است زمان قابل‌توجهی برای تأخیر فضای آدرس ورودی/خروجی هنگام برقراری ارتباط با ۸۲۵۹ صرف شود) مهم است. | ## بخش 3: اینتل ۸۲۵۹ | این همچنین تعدادی بهینه‌سازی دیگر را در همگام سازی، مانند بخش‌های بحرانی، در یک سیستم چند پردازنده ای x86 با 8259s امکان‌پذیر می‌کند. حالت‌های راه‌اندازی لبه و سطح از آنجایی که گذرگاه ISA از وقفه‌های راه‌اندازی سطح پشتیبانی نمی‌کند، حالت راه‌اندازی سطح ممکن است برای وقفه‌های متصل به دستگاه‌های ISA استفاده نشود. در سیستم‌های MCA، دستگاه‌ها از وقفه‌های راه‌اندازی سطح استفاده می‌کنند و کنترل‌کننده وقفه برای همیشه در حالت راه‌اندازی در سطح کار می‌کند. هنگامی که نویز کاهش می‌یابد، یک مقاومت کششی خط IRQ را به بالا برمی‌گرداند و در نتیجه یک وقفه کاذب ایجاد می‌کند. اگر سیستم یک درخواست تأیید ارسال کند، ۸۲۵۹ چیزی برای حل کردن ندارد و بنابراین در پاسخ یک IRQ7 ارسال می‌کند. در بسیاری از سیستم‌ها، ورودی IRQ با نوشتن یک I/O از بین می‌رود و پردازنده منتظر نمی‌ماند تا نوشتن به دستگاه I/O برسد. اگر پردازنده به کار خود ادامه دهد و 8259 IRQ را قبل از اینکه ورودی IRQ غیرفعال شود، باز کند، ۸۲۵۹ دوباره INTR را تأیید می‌کند. | ## جمع‌بندی | دوم این است که IRQ2 مربوط به ۸۲۵۹ مستر زمانی فعال است که خطوط IRQ 8259 برده در لبه سقوط یک تأیید وقفه غیرفعال هستند.