MIMO पास करने वालों के लिए ...

शुभ दिन, हेब्र! MIMO तकनीक (मल्टीपल इनपुट-मल्टीपल आउटपुट) के विषय का विश्लेषण, जो अब हर जगह उपयोग किया जाता है, मैंने पाया कि घरेलू साहित्य में इस विषय पर कितनी कम सामग्री प्रस्तुत की गई है। मैंने नियमित रूप से लगभग 3 वर्षों तक हबर को पढ़ा और मैंने इस मुद्दे पर एक पूर्ण शैक्षिक कार्यक्रम भी नहीं देखा। मैं इस स्थिति को ठीक करने की कोशिश करूंगा। आईटी कैसे काम करता है और यह आज भी प्रासंगिक क्यों है, साथ ही इस तकनीक के विकास का इतिहास भी। जो रुचि रखते हैं कृपया बिल्ली के लिए पूछें।

थोड़ा इतिहास
आज के दूरसंचार वातावरण में होने वाली बड़ी संख्या में प्रौद्योगिकियां सैन्य विकास से "पैर उगाती हैं"। उदाहरण के लिए, ऑर्थोगोनल फ्रिक्वेंसी मल्टीप्लेक्सिंग (ओएफडीएम) की तकनीक को 80 के दशक में हमारे अमेरिकी दोस्तों ने वापस प्रस्तावित किया था, लेकिन इसे लागू करना हाल ही में संभव हुआ क्योंकि यह सिस्टम की प्रोसेसिंग पावर (कुख्यात एफटी को दोष देना) की बेहद मांग है।

MIMO को केवल विविधता प्रौद्योगिकी के रूप में प्रस्तुत किया जाता था (हमारे पास एक प्रसारण और एन प्राप्त करने वाले एंटेना हैं)। इस विचार को साकार करते हुए, सैन्य ट्रोपोस्फेरिक स्टेशनों की कई श्रृंखलाएं जारी की गईं (शायद कोई ऐसे स्टेशनों पर सेवा करने के लिए हुआ) और सिद्धांत रूप में, उस स्तर पर, अतिरिक्त एंटेना की तैनाती की लागतों का भुगतान किया गया।

प्रसंस्करण सिद्धांत एक फावड़ा की तरह सरल था: दो प्राप्त शाखाओं में, सिग्नल-टू-शोर अनुपात की तुलना की गई थी और इस मूल्य के मूल्यांकन के अनुसार, प्रत्येक प्रसंस्करण शाखा को वजन गुणांक सौंपा गया था जो निर्णय लेने में भूमिका निभाते हैं, मोटे तौर पर बोलते हुए, क्या प्रेषित किया गया था: 0 या 1. यह सरल प्रणाली है। और इष्टतम वजन बढ़ाने (MRC) की कसौटी कहा जाता था।

आगे और भी। 1997 में, ईरानी-अमेरिकी अलमाउती प्रसिद्ध थिसिस पर आधारित एक नवीनता प्रदान करता है, इसे स्पेस-टाइम ब्लॉक कोड (STBC) कहते हैं। इसके बाद, MIMO के विषय पर प्रकाशनों की संख्या साल-दर-साल बढ़ती जाती है और यह विषय इस तथ्य की पृष्ठभूमि के खिलाफ बहुत प्रासंगिक हो जाता है कि संचार प्रणालियों की आवृत्ति और ऊर्जा दक्षता अधिक से अधिक कठिन हो गई है (सबसे प्रभावी सिग्नल-कोड निर्माण पहले से ही सोचा गया था)। और फिर यह चला गया और चला गया: स्पैट-टेम्पोरल ट्रेलिस कोडिंग , स्थानिक बहुसंकेतन, साथ ही बड़ी संख्या में डिकोडिंग एल्गोरिदम से सरलतम "अधिकतम संभावना (एमएल-अधिकतम समानता)" एक जीपीयू पर स्पाइनल टर्बो डीकोडिंग, आदि।
यह कैसे काम करता है
और थोड़ा और सिद्धांत
रेडियो चैनल
सामान्य तौर पर, यह वर्गीकरण बहुत बड़ा है और इसकी समीक्षा एक अलग लेख के योग्य है, लेकिन हम केवल कुछ बिंदुओं पर ध्यान देंगे।

ट्रांसमीटर (टी) से रिसीवर (आर) तक का मार्ग पारित करना, हमारी रेडियो तरंग (ऊर्जा में खो जाता है), और यह कितना खो देता है यह इस बात पर निर्भर करता है कि हमारे टी और आर के बीच प्रत्यक्ष दृश्यता है या नहीं। यदि यह है, तो नुकसान का मुख्य दोष वितरण माध्यम (पथ हानि) के नुकसान के साथ है, अगर कोई प्रत्यक्ष दृश्यता नहीं है, तो मज़ा शुरू होता है। विभिन्न बाधाओं का सामना करते हुए, लहर कई तरीकों से गंतव्य तक जाती है (बहुपथ प्रसार) और, तदनुसार, प्रत्येक बीम एक अलग दूरी की यात्रा करता है। रिसेप्शन पर, ये सभी बीम एंटीपेज़ में स्टैक कर सकते हैं, जो सिग्नल की तीव्रता को और कम कर देता है, जिससे सिग्नल स्तर लगातार "फ्लोट" होता है। इसलिए, अनिश्चित स्वागत के क्षेत्र में, आपके मोबाइल फोन यह तय नहीं कर सकते हैं कि कितने "सिग्नल चिपकते हैं"।

इस सारे अपमान को लुप्त होती कहा गया। वे अलग हैं और विभिन्न कानूनों द्वारा वर्णित किया जा सकता है। एक निरंतर घटक (प्रत्यक्ष दृश्यता की उपस्थिति) की उपस्थिति में, चावल वितरण उपयुक्त है, और इसकी अनुपस्थिति में, रेले वितरण (एक विशेष संस्करण)। मैं जानबूझकर फॉर्मूले नहीं दूंगा, वे बड़े और डरावने हैं।
MIMO यहाँ है
हम विश्लेषण करेंगे कि यह सबसे सरल उदाहरण का उपयोग करके कैसे काम करता है। हमारे पास ट्रांसमिशन में 2 एंटेना और रिसेप्शन में एक है।



k तथाकथित कॉम्प्लेक्स चैनल ट्रांसफ़र फंक्शन है (इसके फेज़ रिस्पॉन्स और फ़्रीक्वेंसी रिस्पॉन्स को निर्धारित करते हुए), इसके अलावा, प्राप्त संकेतों में से प्रत्येक के लिए प्रत्येक समय बिंदु के लिए अलग है। मुख्य आकर्षण ठीक है कि प्रत्येक प्राप्त एंटेना के लिए संकेत विभिन्न रास्तों से होकर जाते हैं

STBC विधि के अनुसार, इनपुट डेटा स्ट्रीम को जोड़े में विभाजित किया जाता है [c1, c2], इसके अलावा, पहले आधे चक्र के अंतराल में, प्रतीक c1 को एंटीना T1 के माध्यम से और प्रतीक c2 को एंटीना T2 के माध्यम से प्रेषित किया जाता है। दूसरे आधे चक्र के अंतराल पर, ट्रांसमिशन ऑर्डर को बदल दिया जाता है: चित्रा में c2 प्रतीक (जैसा कि (-c * 2) दर्शाया गया है) का उलटा T1 एंटीना के माध्यम से प्रेषित होता है, और C2 प्रतीक T2 एंटीना के माध्यम से प्रेषित होता है (चित्र में दिखाया गया है (c * 1)। यह एल्गोरिथ्म आसानी से दर्शाया जा सकता है। एक मैट्रिक्स के रूप में, जहां लाइन नंबर ट्रांसमीटर नंबर के अनुरूप होगा, और कॉलम नंबर ट्रांसमिशन के आधे चक्र (सामान्य मामले में, माप का चरण) की संख्या होगी। प्रतीक " * ", जैसा कि पहले से ही अनुमान लगाया गया है, एक जटिल युग्मन है।



नतीजतन, इनपुट पर हमें 2 सिग्नल मिलते हैं (पहली और दूसरी घड़ी के लिए गुणा प्रतिक्रियाएं), कई दिलचस्प गणितीय परिवर्तनों के बाद हमें मूल सिग्नल मिलता है, या इन संकेतों के एक जोड़े के रूप में। दरअसल, पूरी चिप इस तथ्य में निहित है कि इनमें से प्रत्येक सिग्नल 2 बार प्रसारित किया गया था।

यह क्यों संभव है? क्योंकि k प्रत्येक किरण के लिए अलग है , और Alamouti मैट्रिक्स (ऊपर आंकड़ा) ओर्थोगोनल है

अभ्यास

अब सिमुलेशन करते हैं और MISO को SISO (सिंगल आउट में सिंगल) से पहले जीतते हुए देखते हैं।



मैं मतलाब के ई में अपनी सारी गणना और अनुकरण करता हूं क्योंकि यह दुनिया में सबसे अच्छा वातावरण है, ऐसे प्रयोगों के लिए बहुत सुविधाजनक है।

यहाँ आलमूटी वक्र की गणना के लिए वास्तविक अंश है:

numOfBlk = 1e6; %     qampoz = 4; %     SNRdB = 6:1:40; %   / linColor = 'b'; %  1 linSym = 'o'; %  2 errRate = zeros(size(SNRdB)); % %  for i = 1 : length(SNRdB) txData = randint(numOfBlk*2,1,qampoz);%   temp = reshape(txData,numOfBlk,2); %   temp = qammod(temp,qampoz); % H = 1/sqrt(2) * (randn(numOfBlk,2) + sqrt(-1)*randn(numOfBlk,2)); % ( ) txMod(:,1) = H(:,1).* 1/sqrt(2).*temp(:,1) + H(:,2).* 1/sqrt(2).*temp(:,2) ; %   txMod(:,2) = -H(:,1).*(1/sqrt(2).*temp(:,2)').' + H(:,2).*(1/sqrt(2).*temp(:,1)').' ; txMod = awgn(txMod,SNRdB(i),'measured'); temp(:,1) = sqrt(2)*(H(:,1)'.' .* txMod(:,1) + H(:,2) .* txMod(:,2)'.')./(abs(H(:,1)).^2 + abs(H(:,2)).^2); temp(:,2) = sqrt(2)*(H(:,2)'.' .* txMod(:,1) - H(:,1) .* txMod(:,2)'.')./(abs(H(:,1)).^2 + abs(H(:,2)).^2); rxData(:,1) = qamdemod(temp(:,1),qampoz); % rxData(:,2) = qamdemod(temp(:,2),qampoz); [numErr errRate(i)] = symerr(rxData,reshape(txData,numOfBlk,2)); %  end 


यह हिस्सा क्लासिक सर्किट के लिए है:

 %SISO for i = 1 : length(SNRdB) temp = qammod(txData,qampoz); H = 1/sqrt(2) * (randn(numOfBlk*2,1) + sqrt(-1)*randn(numOfBlk*2,1));%   txMod = H.*temp; txMod = awgn(txMod,SNRdB(i),'measured'); temp = txMod./H; rxData = qamdemod(temp,qampoz); [numErr errRate(i)] = symerr(rxData,txData); end 


ग्राफ से पता चलता है कि त्रुटि संभावना Rosh = 10 ^ (- 3) का लाभ लगभग 12 [dB] है । और यह सिर्फ एक बड़ी रकम है।

निष्कर्ष में

पढ़ने वालों के लिए धन्यवाद, मैं यह नोट करना चाहता हूं:

बाकी MIMO-OFDM में पहले से ही है और यह एक अलग लेख का विषय है।

Source: https://habr.com/ru/post/In150225/


All Articles