در نظریهٔ اطلاعات، کد وارِسیِ پَریتهٔ کمچگال (Low-density parity-check code, LDPC) - یا بهاختصار، کد اِلدیپیسی - یک کد تصحیحکنندهٔ خطای خطی بلوکی است؛ روشی برای انتقال پیام از راه یک کانال نویزی. یک کد الدیپیسی، بهکمک یک گراف تانِر (Tanner graph) پراکنده (یک زیرکلاس گراف دوبخشی) ساخته میشود.[۱] کدهای الدیپیسی، کدهای نزدیکشونده به ظرفیت کانال هستند، یعنی آستانهٔ نویز آنها، در عمل، به بیشینهٔ نظری (حد شانون) کانال بیحافظهٔ متقارن، بسیار نزدیک است. آستانهٔ نویز، حد بالای نویز کانال است که تا پیشاز آن، احتمال از دست رفتن اطلاعات را میتوان با کد کردن پیام، دلخواه کوچک کرد. با استفاده از روش انتشار باور تکرارشونده (iterative)، شمار محاسبات لازم برای کدگشایی الدیپیسی، رابطهٔ خطی با طول کد دارد.
کدهای الدیپیسی، بهافتخار رابرت گالاگِر - که مفهوم الدیپیسی را سال ۱۹۶۰ در پایاننامهٔ دکترایش در مؤسسه فناوری ماساچوست پیش نهاد و گسترد - بهنام کدهای گالاگر هم شناخته میشوند.[۲][۳] ازآنجاکه کدهای الدیپیسی به کدگشایی تکرارشوندهٔ پُرمحاسبات نیاز داشتند، چندین دهه بیکاربرد ماندند. در ۱۹۹۳، کدهای توربو اختراع شدند که بهکمک کدگشایی تکرارشونده، عملکرد بسیار بهتری از کدهای دیگر تا آن زمان داشتند. اما کدهای توربو، ثبت اختراع شدهبودند و برای استفاده نیاز به پرداخت هزینه داشتند؛ بنابراین، کدهای الدیپیسی با اقبال روبهرو شدند، چراکه نشان داده شدهبود که عملکرد مشابهی با کدهای توربو دارند و ثبت اختراع هم نشدهبودند.[۴] حتی اکنون هم که دیگر حق ثبت اختراع کدهای توربو برداشته شدهاست (از ۲۹ اوت ۲۰۱۳)،[۵] کدهای الدیپیسی، بهسبب برتریهای فنیشان، همچنان بهکار میروند.
کدهای الدیپیسی، ویژگیهای ترکیبی ایدئال دارند. گالاگر در پایاننامهاش نشان داد که این کدها، با احتمال زیاد به حد گیلبرت-وارشاموف (Gilbert-Varshamov bound) برای کدهای خطیِ در میدان باینری (binary field) دست مییابند. در سال ۲۰۲۰ هم نشان دادهشد که کدهای الدیپیسی گالاگر به ظرفیت کدگشایی لیستی، همچنین به حد گیلبرت-وارشاموف برای کدهای خطی در هر میدانی دست مییابند.[۶]
ازآنجاکه کدهای الدیپیسی - که نخستین بار در ۱۹۶۳ از سوی گالاگر پیشنهاد شدند - عملی نبوند، تا ۱۹۹۶ - که کار او دوباره مورد توجه قرار گرفت -[۷] فراموش شدند. کدهای توربو - دستهٔ دیگری از کدهای نزدیکشونده به ظرفیت کانال که ۱۹۹۳ کشف شدند - در سالهای پایانی دههٔ ۹۰ میلادی، روش کدگذاریِ برگزیده شدهبودند و از آنها در کاربردهایی مانند شبکهٔ فضای دوردست ناسا و مخابرات ماهوارهای بهره گرفتهمیشد. از آن پس بود که کدهای الدیپیسی، بهعنوان جایگزینی که عملکرد مشابه داشتند و از طرفی مشکل حق ثبت اختراع هم نداشتند، با اقبال روبهرو شدند.[۴] از آن زمان، با پیشرفتهایی که کدهای الدیپیسی از نظر کفِ خطا و عملکرد در نرخ کدهای بزرگتر کردند، از کدهای توربو پیشی گرفتند. کدهای توربو تنها برای نرخ کدهای کوچکتر مناسبترند.[۸]
در سال ۲۰۰۳، یک کد الدیپیسی به سبک تکرار-انباشت بیقاعده (irregular repeat accumulate, IRA)، بر شش کد توربو چیره شد و بهعنوان کد تصحیحکننده خطا در استاندارد جدید DVB-S2 برای تلویزیون دیجیتال برگزیده شد.[۹] کمیته گزینش DVB-S2، برای برآورد پیچیدگی کدگشایی کدهای توربو پیشنهادشده، از یک روش کدگشایی سریالی - که در مقایسه با کدگشایی موازی، ناکارآمدتر بود - بهره گرفت. این، کدهای توربوی پیشنهادشده را واداشت تا از فریمهایی که طولشان نصف فریمهای کدهای الدیپیسی پیشنهادشده بود، استفاده کنند.[نیازمند منبع]
در سال ۲۰۰۸، کد الدیپیسی، کدهای توربو کانولوشنال را به عنوان سیستم تصحیح خطای پیشرو (FEC) برای استاندارد ITU-T G.hn شکست داد.[۱۰] G.hn، کدهای الدیپیسی را بهجای کدهای توربو برگزید، زیرا پیچیدگی کدگشایی کمتری داشتند (بهویژه وقتی با سرعت داده نزدیک به ۱٫۰ گیگابیتبرثانیه کار میکنند)، نیز برایاینکه کدهای توربو پیشنهادشده، کفِ خطای (error floor) قابل توجهی در محدوده عملکرد موردنظر دارند.[۱۱]
کدهای الدیپیسی همچنین برای اِتِرنت 10GBASE-T استفاده میشوند که دادهها را با سرعت ۱۰ گیگابیتدرثانیه از راه کابل زوجِ بههمتابیده منتقل میکند. از ۲۰۰۹، کدهای الدیپیسی نیز بخشی از استاندارد Wi-Fi 802.11 بهعنوان بخشی اختیاری از 802.11n و 802.11ac، در مشخصات لایهٔ فیزیکی شبکه (PHY) با گذرداد زیاد (high throughput) هستند.[۱۲] الدیپیسی، همچنین بخش اجباری 802.11ax (Wi-Fi ۶) است.[۱۳]
برخی از سیستمهای OFDM، یک کد تصحیح خطای بیرونی هم دارند که خطاهای گاهبهگاه را که از تصحیح خطای الدیپیسی درونی بهجا ماندهاند (در اثر کف خطا) - حتی در نرخهای خطای بیت کم - برطرف میکند (کدهای همپیوسته را ببینید).
برای نمونه، کد رید-سولومون با کُدمدولاسیون (coded modulation) الدیپیسی (RS-LCM)، از یک کد بیرونی رید-سولومون بهره میبرد.[۱۴] استانداردهای DVB-S2، DVB-T2 و DVB-C2، همگی از کد بیرونی بیسیاچ برای برطرف کردن خطاهای بهجامانده از کدگشایی الدیپیسی بهره میبرند.[۱۵]
سیستم 5G NR، از کد قطبی برای کانالهای کنترل و از کد الدیپیسی برای کانالهای انتقال داده استفاده میکند.[۱۶][۱۷]
اگرچه کاربرد کد الدیپیسی برای تصحیح خطا در درایوهای هارددیسک موفق بودهاست، برای بهرهگیری کامل از قابلیت تصحیح خطای این کد در درایوهای حالت جامد، سنجش ولتاژ دقیق سلولهای حافظهٔ این درایوها لازم است، که به افزایش تأخیرِ خواندن از حافظه میانجامد. LDPC-in-SSD یک رویکرد برای بهرهگیری از کد الدیپیسی و با افزایش اندک تأخیر در این حافظههاست.[۱۸]