موضوع مقاله: کد بلوکی فضا-زمانی | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # کد بلوکی فضا-زمانی | مقدمه: کدگذاری بلوکیِ فضا-زمانی، تکنیکی در ارتباطات بی‌سیم است که با انتقال چندین نسخه از یک رشته از داده‌ها به‌کمک چندین آنتن در فرستنده، و سپس بهره‌گیری از نسخه‌های دریافت‌شده در گیرنده، قابلیت اطمینان انتقال داده‌ها را افزایش می‌دهد. | ## بخش 1: کد بلوکی فضا-زمانی | این که سیگنال فرستاده‌شده باید از یک محیط انتقال پُرچالِش‌ که دارای پراکَنِش، بازتاب، شکست امواج الکترومغناطیسی، و ... بگذرد و سپس ممکن است در اثر نویز گرمایی گیرنده بیشتر هم خراب شود، به این معنی است که برخی از نسخه‌های دریافت‌شده داده‌ها ممکن است از نسخه‌های دیگر به سیگنال فرستاده‌شده شبیه‌تر (نزدیک‌تر) باشند. این افزونگی (به انگلیسی: redundancy)، شانس بهره‌گیری از یک یا چند نسخه دریافت‌شده برای کدگشایی صحیح سیگنال دریافت‌شده را بیشتر می‌کند. در واقع، کدگذاری فضا-زمانی، همه نسخه‌های سیگنال دریافت‌شده را به روشی بهینه ترکیب می‌کند تا بیشترین اطلاعات ممکن را از هر یک از آنها استخراج کند. مقدمه تا نخستین سال‌های دهه نود میلادی، بیشتر تلاش‌ها در ارتباطات بی‌سیم بر بهره‌گیری از یک آرایۀ آنتن، تنها در یک سوی لینک بی‌سیم - معمولاً در گیرنده - متمرکز بود. تااینکه فُوشینی (یا به ایتالیایی: فوسکینی) و گانس، همچنین فوشینی و تِلاتار نشان دادند که اگر در محیط‌های انتقال دارای پراکنش بسیار، آرایه‌های آنتن در هر دو سوی لینک مخابراتی به کار گرفته شوند، ظرفیت انتقال داده‌ها افزایش قابل توجهی می‌یابد. یک روش بهره‌گیری از چندین آنتن، داشتن چندین آنتن در فرستنده، و تنها به دلخواه، چندین آنتن در گیرنده است. تارخ، سِشادری و کالدِربَنک نشان دادند که کدگذاری فضا-زمانی نسبت به سیستم‌های تک‌آنتنی، نرخ خطا را بهبود قابل توجه می‌بخشند. اما اَلَموتی و سپس تارخ، جعفرخانی و کالدِربَنک، از کدهای بلوکی ساده‌تر برای کدهای بلوکی فضا-زمانی بهره گرفتند. کدگذاری بلوکی فضا-زمانی، فرستادن چندین نسخه اضافی از داده‌ها برای مبارزه با محوشوندگی کانال مخابراتی و نویز حرارتی گیرنده است، به امید این که برخی از آنها بهتر به گیرنده برسند. در کدگذاری بلوکی فضا-زمانی، رشتۀ داده‌هایی که قرار است منتقل شود، در بلوک‌هایی کد می‌شود که از آنتن‌های فاصله‌دار و در طول زمان منتشر می‌شوند. درحالی‌که بودن چندین آنتن در فرستنده لازم است، بودن چندین آنتن در گیرنده لازم نیست، اگرچه بودن آنها عملکرد را بهبود می‌بخشد. به دریافت چندین نسخه از یک رشته داده‌ها، تنوع در دریافت گفته می‌شود، که تا پیش از مقاله فوشینی در ۱۹۹۸، بسیار به آن پرداخته شده‌بود. هر سطر نشان‌دهنده یک بازه زمانی و هر ستون نشان‌دهنده ارسال‌های یک آنتن در طول زمان است. نرخ کد یک کد بلوکی فضا-زمانی، شمار سمبول‌هایی‌ست که به‌طور متوسط در هر بازه زمانی یک بلوک منتقل می‌شوند. اگر یک بلوک، سمبول را کد کند، نرخ کد چنین می‌شود تنها یک کد بلوکی فضا-زمانی استاندارد می‌تواند به نرخ کامل (نرخ ۱) دست یابد (کد الموتی). اما مسئله این است که کدهایی که این معیار را برمی‌آورند، به جز یکی، باید بخشی از نرخ داده‌شان را فدا کنند (کد الموتی را ببینید). افزون‌ بر این، کدهای بلوکی فضا-زمانی شبه‌متعامد هم هستند که به بهای افزایش تداخل میان‌سمبولی، به نرخ داده بیشتری دست می‌یابند. بنابراین، عملکرد نرخ خطای آنها محدود به کمترین حد عملکرد کدهای بلوکی فضا-زمانی متعامد با نرخ ۱ است که به‌سبب متعامد بودن، انتقال‌ بی‌تداخل میان‌سمبولی را فراهم می‌کنند. | ## بخش 2: کد بلوکی فضا-زمانی | طراحی کدهای بلوکی فضا-زمانی طراحی کدهای بلوکی فضا-زمانی بر پایۀ معیار تنوع است، که تارخ و همکاران در مقاله پیشین‌شان دربارۀ کدهای ترلیس فضا-زمانی پیش نهاده بودند. می‌توان نشان داد که بر پایۀ این معیار، کدهای بلوکی فضا-زمانی متعامد به بیشترین تنوع می‌رسند. معیار تنوع کد زیر را در نظر بگیرید فرض کنید که کد دریافت‌شده که اشتباه کدگشایی شده‌است نیز چنین باشد سپس ماتریس زیر را در نظر بگیرید برای دست یافتن به بیشترین مرتبۀ تنوع ممکن - یعنی - باید این ماتریس برای هر جفت کلمۀ کد متمایز و ، رتبه کامل داشته باشد. حال اگر دارای کمترین رتبه روی مجموعه جفت‌های کلمات کد متمایز باشد، آنگاه مرتبه تنوع این کد فضا-زمانی، برابر با می‌شود. این در حالی‌ست که کدهای ترلیس فضا-زمانی، هم تنوع و هم بهرۀ کدگذاری را فراهم می‌کنند، چرا که یک کد ترلیس را در فضا و زمان توزیع می‌کنند. الموتی ساده‌ترین کد بلوکی فضا-زمانی را ۱۹۹۸ پیش نهاد، گرچه خودش آن را «کد بلوکی فضا-زمانی» نام نگذاشت. او آن را برای یک سیستم با دو آنتن فرستنده طراحی کرد که ماتریس کدگذاری آن چنین بود و * نشان‌دهنده مزدوج مختلط است. روشن است که نرخ این کد برابر ۱ است، زیرا دو سمبول را در دو بازه زمانی منتقل می‌کند. در واقع، این نتیجۀ تعامد سمبول‌ها پس از پردازش در گیرنده است؛ دو نسخه از هر سمبول فرستاده‌ شده و نسخه‌ هم دریافت شده. کد الموتی، یک کد بلوکی فضا-زمانی ویژه است؛ این تنها کد بلوکی فضا-زمانی متعامد است که به نرخ ۱ دست می‌یابد. به بیان دیگر، این تنها کد بلوکی فضا-زمانی است که بی‌نیاز از فدا کردن نرخ داده‌، به بهرۀ تنوع کامل دست یابد. اما ازآنجاکه مدولاسیون QAM تقریباً در همه سیستمهای مخابراتی به کار گرفته می‌شود، کد الموتی برتری قابل توجهی نسبت به کدهای بلوکی فضا-زمانی با مرتبۀ بیشتر پیدا می‌کند، حتی اگر آنها به عملکرد نرخ خطای بهتری دست یابند («محدودیت‌های نرخ» را ببینید). اهمیت کد الموتی در این است که نخستین روش کدگذاری بود که امکان تنوع کامل را با پیچیدگی پردازش خطی در گیرنده فراهم می‌کند. نخستین طرح‌های تنوع ارسال، نیازمند پردازش‌هایی بودند که پیچیدگی‌شان به صورت نمایی با شمار آنتن‌های فرستنده افزایش می‌یافت. افزون بر این، کد الموتی نخستین طرح تنوع ارسال حلقه‌باز بود که چنین قابلیتی داشت. کدهای بلوکی فضا-زمانی با مرتبۀ بیشتر تارخ و همکاران مجموعه‌ای از کدهای بلوکی فضا-زمانی را پیش نهادند که سرراست بودند و این کدها را چنین نام گذاشتند. آنها همچنین نشان دادند که برای بیش از دو آنتن در فرستنده، هیچ کدی نمی‌تواند به نرخ کامل دست یابد. با این حال، این کدها نمونه‌های روشنی هستند که چرا نرخ کد نمی‌تواند به ۱ برسد و چه مسائل دیگری باید در طراحی کدهای بلوکی فضا-زمانی خوب حل شوند. آنها همچنین کدگشایی خطی و ساده‌ای را با فرض در دست بودن اطلاعات کامل وضعیت کانال پیش نهادند. | ## بخش 3: کد بلوکی فضا-زمانی | سه آنتن در فرستنده دو کد ساده برای حالت سه آنتن در فرستنده چنین هستند این کدها به ترتیب به نرخ ۱/۲ و ۳/۴ دست می‌یابند. این دو ماتریس نمونه‌هایی هستند از این که چرا کدهای مربوط به بیش از دو آنتن باید نرخ را فدا کنند — این تنها راه برای دستیابی به تعامد است. یک مشکل خاص دربارۀ این است که توان سمبول‌هایی که فرستاده می‌شوند، یکسان نیست؛ یعنی سیگنال فرستاده‌شده، پوش ثابتی ندارد و بنابراین توانی که هر آنتن می‌فرستد متغیر است، که هر دو نامطلوب هستند. از آن زمان، نسخه‌های اصلاح‌شده‌ای از این کد که بر این مشکل چیره می‌شوند، پیش نهاده شده‌اند. چهار آنتن در فرستنده دو کد ساده برای حالت چهار آنتن در فرستنده چنینند این کدها، همانند همتایان سه آنتنی‌شان، به ترتیب به نرخ ۱/۲ و ۳/۴ می‌رسند. نسخه بهبودیافتۀ کد چنین‌ست که همه آنتن‌ها در همه بازه‌های زمانی، توان یکسانی می‌فرستند. کدگشایی از ویژگی‌های جالب کدهای بلوکی فضا-زمانی متعامد این است که کدگشایی به روش درست‌نمایی بیشینه در گیرنده را می‌توان تنها با پردازش خطی انجام داد. در لحظۀ ، سیگنال دریافت‌شده از آنتن را با نشان میدهیم که بهره مسیر از آنتن فرستندۀ ام تا آنتن گیرندۀ ام است و سیگنالی است که آنتن فرستنده ام می‌فرستد، و نمونه‌ای از نویز سفید جمع‌شونده گاوسی (AWGN) است. متغیرهای تصمیم‌گیری چنین می‌شوند که علامت در ردیف ام ماتریس کدگذاری‌ست و نشان دهنده این است که (تا یک اختلاف علامت) عنصر ام ماتریس کدگذاری به ازای است. محدودیت‌های نرخ کد گذشته از اینکه برای بیش از دو آنتن در فرستنده، کد بلوکی فضا-زمانی متعامد، مختلط و با نرخ کامل نمی‌توان یافت، نشان داده شده‌است که برای بیش از دو آنتن، بیشترین نرخ کد ممکن، ¾ است. کدهایی طراحی شده‌اند که تا حد خوبی به این نرخ دست می‌یابند، اما طول بلوک آنها بسیار بزرگ است، که آنها را در عمل نامناسب می‌کند، زیرا کدگشایی نمی‌تواند تا وقتی که همه انتقال‌ها در یک بلوک دریافت نشده باشند، آغاز شود. برای نمونه، کدی برای شانزده آنتن در فرستنده، دارای نرخ 9/16 و طول بلوک 22880 بازۀ زمانی است. ثابت شده‌است که بیشترین نرخی که هر کد با آنتن در فرستنده می‌تواند به آن برسد چنین است که یا اگر هیچ پردازش خطی در ماتریس کد مجاز نباشد. کدهای بلوکی فضا-زمانی شبه‌متعامد این کدها متعامد کامل نیستند و تنها به مقداری از بهرۀ تنوع دست می‌یابند. نمونه‌ای از این کدها که جعفرخانی پیش نهاده است، چنین است تنها ستون‌های (1 و 2)، (1 و 3)، (2 و 4) و (3 و 4) متعامد هستند. با این حال، این کد، کدی با نرخ کامل است و تنها به پردازش خطی در گیرنده نیاز دارد، اگرچه کدگشایی آن کمی پیچیده‌تر از کدهای بلوکی فضا-زمانی متعامد است. نتایج نشان می‌دهند که این کد، از نظر نرخ خطای بیتی در محدوده خوبی از نسبت‌ سیگنال به نویز، از کد بلوکی فضا-زمانی متعامد چهار آنتنی بهتر عمل می‌کند. | ## جمع‌بندی | با این حال، در SNRهای بیشتر (از حدود ۲۲ dB در این مورد خاص)، تنوع افزودۀ کدهای بلوکی فضا-زمانی متعامد به BER بهتری می‌انجامد.