जेटीजी: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 12: Line 12:


== इतिहास ==
== इतिहास ==
1980 के दशक में, [[बॉल ग्रिड ऐरे]] और इसी तरह की माउंटिंग तकनीकों का उपयोग करने वाले मल्टी-लेयर सर्किट बोर्ड और [[ एकीकृत परिपथ ]] (ICs) मानक बन रहे थे, और IC के बीच कनेक्शन बनाए जा रहे थे जो जांच के लिए उपलब्ध नहीं थे। सर्किट बोर्डों में अधिकांश विनिर्माण और फील्ड दोष बोर्डों पर खराब [[ मिलाप ]] जोड़ों, बोर्ड कनेक्शनों के बीच की खामियों, या आईसी पैड से लीड फ्रेम को पिन करने के लिए बांड और बांड तारों के कारण थे। ज्वाइंट टेस्ट एक्शन ग्रुप (जेटीएजी) का गठन 1985 में एक आईसी पैड से दूसरे में पिन-आउट दृश्य प्रदान करने के लिए किया गया था ताकि इन दोषों का पता लगाया जा सके।
1980 के दशक में, [[बॉल ग्रिड ऐरे]] और इसी तरह की माउंटिंग तकनीकों का उपयोग करने वाले मल्टी-लेयर सर्किट बोर्ड और [[ एकीकृत परिपथ ]] (आईसीएस) मानक बन रहे थे, और आईसी के बीच संयोजन बनाए जा रहे थे जो जांच के लिए उपलब्ध नहीं थे। सर्किट बोर्डों में अधिकांश विनिर्माण और फील्ड दोष बोर्डों पर खराब [[ मिलाप ]] जोड़ों, बोर्ड संयोजनों के बीच की खामियों, या आईसी पैड से लीड फ्रेम को पिन करने के लिए बांड और बांड तारों के कारण थे। ज्वाइंट टेस्ट एक्शन ग्रुप (जेटीएजी) का गठन 1985 में एक आईसी पैड से दूसरे में पिन-आउट दृश्य प्रदान करने के लिए किया गया था ताकि इन दोषों का पता लगाया जा सके।


उद्योग मानक 1990 में [[IEEE|आईईईई]] Std के रूप में आईईईई मानक बन गया। 1149.1-1990<ref name="ieee1149.1-1990">Copies of [http://standards.ieee.org/reading/ieee/std_public/description/testtech/1149.1-1990_desc.html IEEE 1149.1-1990] or its 2001 update may be bought from the IEEE.</ref> कई वर्षों के प्रारंभिक उपयोग के बाद। उसी वर्ष, [[इंटेल]] ने जेटीएजी ([[80486]]) के साथ अपनी पहली [[सेंट्रल प्रोसेसिंग यूनिट]] जारी की, जिसके कारण सभी निर्माताओं ने तेजी से उद्योग को अपनाया। 1994 में, एक पूरक जिसमें [[सीमा स्कैन विवरण भाषा]] (बीएसडीएल) का विवरण शामिल था, जोड़ा गया था। EXTEST के लिए सभी-शून्य के उपयोग के संबंध में और परिशोधन, SAMPLE के उपयोग को PRELOAD से अलग करना और OBSERVE_ONLY कोशिकाओं के लिए बेहतर कार्यान्वयन को 2001 में जारी किया गया और जारी किया गया।<ref name="ieee1149.1-2001">{{cite web|url=http://standards.ieee.org/reading/ieee/std_public/description/testtech/1149.1-2001_desc.html|title=IEEE 1149.1-2001}}</ref> 1990 के बाद से, इस मानक को दुनिया भर की [[ इलेक्ट्रानिक्स ]] कंपनियों द्वारा अपनाया गया है। [[सीमा स्कैन]] अब ज्यादातर जेटीएजी का पर्याय बन गया है, लेकिन जेटीएजी का ऐसे निर्माण अनुप्रयोगों से परे आवश्यक उपयोग है।
उद्योग मानक 1990 में [[IEEE|आईईईई]] मानक 1149.1-1990<ref name="ieee1149.1-1990">Copies of [http://standards.ieee.org/reading/ieee/std_public/description/testtech/1149.1-1990_desc.html IEEE 1149.1-1990] or its 2001 update may be bought from the IEEE.</ref> के रूप में प्रारंभिक उपयोग के कई वर्षों के बाद आईईईई मानक बन गया। उसी वर्ष, [[इंटेल]] ने जेटीएजी ([[80486]]) के साथ अपनी पहली [[सेंट्रल प्रोसेसिंग यूनिट]] जारी किया, जिसके कारण सभी निर्माताओं ने तेजी से उद्योग को अपना लिया था। 1994 में, एक पूरक जिसमें [[सीमा स्कैन विवरण भाषा]] (बीएसडीएल) का विवरण शामिल था, जो जोड़ा गया था। परीक्षा के लिए सभी शून्यों के उपयोग के संबंध में और परिशोधन, मानक के उपयोग को प्रीलोड से अलग करने और केवल अवलोकन के लिए बेहतर कार्यान्वयन के लिए किया गया था और 2001 में जारी किया गया था।<ref name="ieee1149.1-2001">{{cite web|url=http://standards.ieee.org/reading/ieee/std_public/description/testtech/1149.1-2001_desc.html|title=IEEE 1149.1-2001}}</ref> 1990 के बाद से, इस मानक को दुनिया भर की [[ इलेक्ट्रानिक्स ]] कंपनियों द्वारा अपनाया गया है। [[सीमा स्कैन]] अब ज्यादातर जेटीएजी का पर्याय बन गया है, लेकिन जेटीएजी का ऐसे निर्माण अनुप्रयोगों से परे आवश्यक उपयोग है।


=== [[डिबगिंग]] ===
=== [[डिबगिंग]] ===


हालांकि जेटीएजी के शुरुआती अनुप्रयोगों ने बोर्ड स्तर के परीक्षण को लक्षित किया, यहाँ जेटीएजी मानक को डिवाइस, बोर्ड और प्रणाली परीक्षण, [[निदान]] और दोष अलगाव में सहायता के लिए डिज़ाइन किया गया था। आज जेटीएजी का उपयोग एकीकृत परिपथों के उप-ब्लॉकों तक पहुँचने के प्राथमिक साधन के रूप में किया जाता है, जिससे यह [[ अंतः स्थापित प्रणाली ]] को डीबग करने के लिए एक आवश्यक तंत्र बन जाता है जिसमें कोई अन्य डीबग-सक्षम संचार चैनल नहीं हो सकता है।{{citation needed|reason=This statement claims that JTAG is of critical use for a certain application but doesn't provide any source that supports the statement.|date=October 2017}} अधिकांश प्रणालियों पर, जेटीएजी-आधारित [[डिबग]]िंग CPU रीसेट के बाद पहले निर्देश से उपलब्ध है, जो इसे शुरुआती बूट सॉफ़्टवेयर के विकास में सहायता देता है जो कुछ भी सेट होने से पहले चलता है। एक [[इन-सर्किट एमुलेटर]] (या, अधिक सही ढंग से, एक जेटीएजी एडॉप्टर) जेटीएजी का उपयोग लक्ष्य सेंट्रल प्रोसेसिंग यूनिट के अंदर ऑन-चिप डिबग मॉड्यूल तक पहुँचने के लिए परिवहन तंत्र के रूप में करता है। वे मॉड्यूल सॉफ़्टवेयर डेवलपर्स को एक एम्बेडेड प्रणाली के सॉफ़्टवेयर को आवश्यकता पड़ने पर सीधे मशीन निर्देश स्तर पर, या (अधिक विशिष्ट रूप से) उच्च स्तरीय भाषा स्रोत कोड के संदर्भ में डीबग करने देते हैं।
हालांकि जेटीएजी के शुरुआती अनुप्रयोगों ने बोर्ड स्तर के परीक्षण को लक्षित किया, यहाँ जेटीएजी मानक को डिवाइस, बोर्ड और प्रणाली परीक्षण, [[निदान]] और दोष अलगाव में सहायता के लिए डिज़ाइन किया गया था। आज जेटीएजी का उपयोग एकीकृत परिपथों के उप-ब्लॉकों तक पहुँचने के प्राथमिक साधन के रूप में किया जाता है, जिससे यह [[ अंतः स्थापित प्रणाली ]] को डीबग करने के लिए एक आवश्यक तंत्र बन जाता है जिसमें कोई अन्य डीबग-सक्षम संचार चैनल नहीं हो सकता है।{{citation needed|reason=This statement claims that JTAG is of critical use for a certain application but doesn't provide any source that supports the statement.|date=October 2017}} अधिकांश प्रणालियों पर, जेटीएजी-आधारित [[डिबग|डिबगिंग]] सीपीयू रीसेट के बाद पहले निर्देश से उपलब्ध है, जो इसे शुरुआती बूट सॉफ़्टवेयर के विकास में सहायता देता है जो कुछ भी सेट होने से पहले चलता है। एक [[इन-सर्किट एमुलेटर]] (या, अधिक सही ढंग से, एक जेटीएजी एडॉप्टर) जेटीएजी का उपयोग लक्ष्य सेंट्रल प्रोसेसिंग यूनिट के अंदर ऑन-चिप डिबग मॉड्यूल तक पहुँचने के लिए परिवहन तंत्र के रूप में करता है। वे मॉड्यूल सॉफ़्टवेयर डेवलपर्स को एक एम्बेडेड प्रणाली के सॉफ़्टवेयर को आवश्यकता पड़ने पर सीधे मशीन निर्देश स्तर पर, या (अधिक विशिष्ट रूप से) उच्च स्तरीय भाषा स्रोत कोड के संदर्भ में डीबग करने देते हैं।


प्रणाली सॉफ़्टवेयर डिबग समर्थन कई सॉफ़्टवेयर डेवलपर्स के लिए जेटीएजी में रुचि रखने का मुख्य कारण है। कई सिलिकॉन आर्किटेक्चर जैसे कि PowerPC, MIPS, ARM, और x86 ने मूल जेटीएजी प्रोटोकॉल के आसपास एक संपूर्ण सॉफ़्टवेयर डीबग, निर्देश ट्रेसिंग और डेटा ट्रेसिंग इन्फ्रास्ट्रक्चर का निर्माण किया। अक्सर व्यक्तिगत सिलिकॉन विक्रेता इन एक्सटेंशनों के कुछ हिस्सों को ही प्रायुक्त करते हैं। कुछ उदाहरण एआरएम [[कोरसाइट]] और [[नेक्सस (मानक)]] के साथ-साथ इंटेल के बीटीएस (ब्रांच ट्रेस स्टोरेज), एलबीआर (लास्ट ब्रांच रिकॉर्ड), और आईपीटी (इंटेल प्रोसेसर ट्रेस) कार्यान्वयन हैं। ऐसे कई अन्य सिलिकॉन विक्रेता-विशिष्ट एक्सटेंशन हैं, जिन्हें गैर-प्रकटीकरण समझौते के अलावा प्रलेखित नहीं किया जा सकता है। जेटीएजी मानक को अपनाने से जेटीएजी-केंद्रित डिबगिंग वातावरण को शुरुआती प्रोसेसर-विशिष्ट डिज़ाइनों से दूर करने में मदद मिली। प्रोसेसर को सामान्य रूप से रोका जा सकता है, सिंगल स्टेप किया जा सकता है, या स्वतंत्र रूप से चलने दिया जा सकता है। RAM में कोड के लिए (अक्सर एक विशेष मशीन निर्देश का उपयोग करके) और ROM/फ़्लैश दोनों में कोड ब्रेकप्वाइंट सेट कर सकते हैं। डेटा ब्रेकप्वाइंट अक्सर उपलब्ध होते हैं, जैसा कि रैम में बल्क डेटा डाउनलोड होता है। अधिकांश डिज़ाइनों में हाल्ट मोड डिबगिंग है, लेकिन कुछ डिबगर्स को रजिस्टरों और डेटा बसों तक पहुंचने की अनुमति देते हैं, बिना कोर को डिबग किए रोकने की आवश्यकता होती है। कुछ टूलचेन जटिल हार्डवेयर घटनाओं पर डीबगर (या ट्रेसिंग) गतिविधि को ट्रिगर करने के लिए एआरएम एंबेडेड ट्रेस मैक्रोसेल (ईटीएम) मॉड्यूल या अन्य आर्किटेक्चर में समकक्ष कार्यान्वयन का उपयोग कर सकते हैं, जैसे कि एक विशेष सबरूटीन से एक रजिस्टर में पहले सात एक्सेस को अनदेखा करने के लिए प्रोग्राम किए गए [[तर्क विश्लेषक]] .
प्रणाली सॉफ़्टवेयर डिबग समर्थन कई सॉफ़्टवेयर डेवलपर्स के लिए जेटीएजी में रुचि रखने का मुख्य कारण है। कई सिलिकॉन आर्किटेक्चर जैसे कि पावरपीसी, एमआईपीएस, एआरएम, और एक्स86 ने मूल जेटीएजी प्रोटोकॉल के आसपास एक संपूर्ण सॉफ़्टवेयर डीबग, निर्देश ट्रेसिंग और डेटा ट्रेसिंग इन्फ्रास्ट्रक्चर का निर्माण किया। अक्सर व्यक्तिगत सिलिकॉन विक्रेता इन एक्सटेंशनों के कुछ हिस्सों को ही प्रायुक्त करते हैं। कुछ उदाहरण एआरएम [[कोरसाइट]] और [[नेक्सस (मानक)]] के साथ-साथ इंटेल के बीटीएस (ब्रांच ट्रेस स्टोरेज), एलबीआर (लास्ट ब्रांच रिकॉर्ड), और आईपीटी (इंटेल प्रोसेसर ट्रेस) कार्यान्वयन हैं। ऐसे कई अन्य सिलिकॉन विक्रेता-विशिष्ट एक्सटेंशन हैं, जिन्हें गैर-प्रकटीकरण समझौते के अलावा प्रलेखित नहीं किया जा सकता है। जेटीएजी मानक को अपनाने से जेटीएजी-केंद्रित डिबगिंग वातावरण को शुरुआती प्रोसेसर-विशिष्ट डिज़ाइनों से दूर करने में मदद मिली। प्रोसेसर को सामान्य रूप से रोका जा सकता है, सिंगल स्टेप किया जा सकता है, या स्वतंत्र रूप से चलने दिया जा सकता है। रैम में कोड के लिए (अक्सर एक विशेष मशीन निर्देश का उपयोग करके) और रैम/फ़्लैश दोनों में कोड ब्रेकप्वाइंट सेट कर सकते हैं। डेटा ब्रेकप्वाइंट अक्सर उपलब्ध होते हैं, जैसा कि रैम में बल्क डेटा डाउनलोड होता है। अधिकांश डिज़ाइनों में हाल्ट मोड डिबगिंग है, लेकिन कुछ डिबगर्स को रजिस्टरों और डेटा बसों तक पहुंचने की अनुमति देते हैं, बिना कोर को डिबग किए रोकने की आवश्यकता होती है। कुछ टूलचेन जटिल हार्डवेयर घटनाओं पर डीबगर (या ट्रेसिंग) गतिविधि को ट्रिगर करने के लिए एआरएम एंबेडेड ट्रेस मैक्रोसेल (ईटीएम) मॉड्यूल या अन्य आर्किटेक्चर में समकक्ष कार्यान्वयन का उपयोग कर सकते हैं, जैसे कि एक विशेष सबरूटीन से एक रजिस्टर में पहले सात एक्सेस को अनदेखा करने के लिए प्रोग्राम किए गए [[तर्क विश्लेषक]] .


कभी-कभी [[एफपीजीए]] डेवलपर डीबगिंग टूल विकसित करने के लिए जेटीएजी का भी उपयोग करते हैं।<ref name="fpga">[http://www.embeddeddesignindia.co.in/ART_8800568419_2800006_TA_d2d96055.HTM Select the right FPGA debug method] {{Webarchive|url=https://web.archive.org/web/20100427145744/http://www.embeddeddesignindia.co.in/ART_8800568419_2800006_TA_d2d96055.HTM |date=27 April 2010 }} presents one of the models for such tools.</ref> [[ CPU ]] के अंदर चलने वाले सॉफ़्टवेयर को डिबग करने के लिए उपयोग की जाने वाली वही जेटीएजी तकनीकें FPGA के अंदर अन्य डिजिटल डिज़ाइन ब्लॉक को डीबग करने में मदद कर सकती हैं। उदाहरण के लिए, कस्टम जेटीएजी निर्देश FPGA के अंदर संकेतों के मनमाने सेट से निर्मित पठन रजिस्टरों को अनुमति देने के लिए प्रदान किए जा सकते हैं, जो उन व्यवहारों के लिए दृश्यता प्रदान करते हैं जो सीमा स्कैन संचालन के लिए अदृश्य हैं। इसी तरह, ऐसे रजिस्टर लिखने से नियंत्रणीयता मिल सकती है जो अन्यथा उपलब्ध नहीं है।
कभी-कभी [[एफपीजीए]] डेवलपर डीबगिंग टूल विकसित करने के लिए जेटीएजी का भी उपयोग करते हैं।<ref name="fpga">[http://www.embeddeddesignindia.co.in/ART_8800568419_2800006_TA_d2d96055.HTM Select the right FPGA debug method] {{Webarchive|url=https://web.archive.org/web/20100427145744/http://www.embeddeddesignindia.co.in/ART_8800568419_2800006_TA_d2d96055.HTM |date=27 April 2010 }} presents one of the models for such tools.</ref> [[ CPU | सीपीयू]] के अंदर चलने वाले सॉफ़्टवेयर को डिबग करने के लिए उपयोग की जाने वाली वही जेटीएजी तकनीकें FPGA के अंदर अन्य डिजिटल डिज़ाइन ब्लॉक को डीबग करने में मदद कर सकती हैं। उदाहरण के लिए, कस्टम जेटीएजी निर्देश FPGA के अंदर संकेतों के मनमाने सेट से निर्मित पठन रजिस्टरों को अनुमति देने के लिए प्रदान किए जा सकते हैं, जो उन व्यवहारों के लिए दृश्यता प्रदान करते हैं जो सीमा स्कैन संचालन के लिए अदृश्य हैं। इसी तरह, ऐसे रजिस्टर लिखने से नियंत्रणीयता मिल सकती है जो अन्यथा उपलब्ध नहीं है।


=== फर्मवेयर भंडारण ===
=== फर्मवेयर भंडारण ===
Line 36: Line 36:
जेटीएजी सीमा स्कैन तकनीक डिवाइस पिन सहित एक जटिल एकीकृत सर्किट के कई तर्क संकेतों तक पहुंच प्रदान करती है। टीएपी के माध्यम से सुलभ सीमा स्कैन रजिस्टर (बीएसआर) में संकेतों का प्रतिनिधित्व किया जाता है। यह परीक्षण और डिबगिंग के लिए संकेतों की स्थिति को नियंत्रित करने के साथ-साथ परीक्षण की अनुमति देता है। इसलिए, सॉफ्टवेयर और हार्डवेयर (निर्माण) दोनों दोषों का पता लगाया जा सकता है और एक ऑपरेटिंग डिवाइस की निगरानी की जा सकती है।
जेटीएजी सीमा स्कैन तकनीक डिवाइस पिन सहित एक जटिल एकीकृत सर्किट के कई तर्क संकेतों तक पहुंच प्रदान करती है। टीएपी के माध्यम से सुलभ सीमा स्कैन रजिस्टर (बीएसआर) में संकेतों का प्रतिनिधित्व किया जाता है। यह परीक्षण और डिबगिंग के लिए संकेतों की स्थिति को नियंत्रित करने के साथ-साथ परीक्षण की अनुमति देता है। इसलिए, सॉफ्टवेयर और हार्डवेयर (निर्माण) दोनों दोषों का पता लगाया जा सकता है और एक ऑपरेटिंग डिवाइस की निगरानी की जा सकती है।


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


== विद्युत विशेषताएँ ==
== विद्युत विशेषताएँ ==
Line 63: Line 63:
जेटीएजी प्लेटफॉर्म अक्सर आईईईई 1149.1 विनिर्देश द्वारा परिभाषित मुट्ठी भर संकेतों को जोड़ते हैं। एक प्रणाली रीसेट (SRST) सिग्नल काफी सामान्य है, डिबगर्स को पूरे प्रणाली को रीसेट करने देता है, न कि केवल जेटीएजी समर्थन वाले हिस्से। कभी-कभी मेजबान द्वारा या जेटीएजी के माध्यम से निगरानी की जा रही डिवाइस द्वारा गतिविधि को ट्रिगर करने के लिए उपयोग किए जाने वाले ईवेंट सिग्नल होते हैं; या, शायद, अतिरिक्त नियंत्रण रेखाएँ।
जेटीएजी प्लेटफॉर्म अक्सर आईईईई 1149.1 विनिर्देश द्वारा परिभाषित मुट्ठी भर संकेतों को जोड़ते हैं। एक प्रणाली रीसेट (SRST) सिग्नल काफी सामान्य है, डिबगर्स को पूरे प्रणाली को रीसेट करने देता है, न कि केवल जेटीएजी समर्थन वाले हिस्से। कभी-कभी मेजबान द्वारा या जेटीएजी के माध्यम से निगरानी की जा रही डिवाइस द्वारा गतिविधि को ट्रिगर करने के लिए उपयोग किए जाने वाले ईवेंट सिग्नल होते हैं; या, शायद, अतिरिक्त नियंत्रण रेखाएँ।


भले ही कुछ उपभोक्ता उत्पाद एक स्पष्ट जेटीएजी पोर्ट कनेक्टर प्रदान करते हैं, कनेक्शन अक्सर मुद्रित सर्किट बोर्ड पर विकास [[प्रोटोटाइप]] और/या उत्पादन के अवशेष के रूप में उपलब्ध होते हैं। उपयोग किए जाने पर, ये कनेक्शन अक्सर [[रिवर्स इंजीनियरिंग]] के लिए सबसे व्यवहार्य साधन प्रदान करते हैं।
भले ही कुछ उपभोक्ता उत्पाद एक स्पष्ट जेटीएजी पोर्ट कनेक्टर प्रदान करते हैं, संयोजन अक्सर मुद्रित सर्किट बोर्ड पर विकास [[प्रोटोटाइप]] और/या उत्पादन के अवशेष के रूप में उपलब्ध होते हैं। उपयोग किए जाने पर, ये संयोजन अक्सर [[रिवर्स इंजीनियरिंग]] के लिए सबसे व्यवहार्य साधन प्रदान करते हैं।


=== कम पिन काउंट जेटीएजी (आईईईई 1149.7) ===
=== कम पिन काउंट जेटीएजी (आईईईई 1149.7) ===
Line 100: Line 100:
=== जेटीएजी आईईईई Std 1149.1 (सीमा स्कैन) निर्देश ===
=== जेटीएजी आईईईई Std 1149.1 (सीमा स्कैन) निर्देश ===


निर्देश रजिस्टर का आकार छोटा होता है, शायद चार या सात बिट चौड़ा। BYPASS और EXTEST को छोड़कर, सभी निर्देश ऑपकोड को TAP कार्यान्वयनकर्ता द्वारा परिभाषित किया गया है, जैसा कि उनके संबंधित डेटा रजिस्टर हैं; अपरिभाषित निर्देश कोड का उपयोग नहीं किया जाना चाहिए। दो प्रमुख निर्देश हैं:
निर्देश रजिस्टर का आकार छोटा होता है, शायद चार या सात बिट चौड़ा। BYPASS और परीक्षा को छोड़कर, सभी निर्देश ऑपकोड को TAP कार्यान्वयनकर्ता द्वारा परिभाषित किया गया है, जैसा कि उनके संबंधित डेटा रजिस्टर हैं; अपरिभाषित निर्देश कोड का उपयोग नहीं किया जाना चाहिए। दो प्रमुख निर्देश हैं:


* BYPASS निर्देश, TAP के निर्देश रजिस्टर आकार की परवाह किए बिना सभी का एक ओपकोड, सभी TAP द्वारा समर्थित होना चाहिए। निर्देश एक बिट डेटा रजिस्टर (जिसे बायपास भी कहा जाता है) का चयन करता है। निर्देश इस उपकरण को बायपास करने की अनुमति देता है (कुछ नहीं करें) जबकि स्कैन पथ में अन्य उपकरणों का प्रयोग किया जाता है।<ref name="ieee1149.1-2001" />* वैकल्पिक IDCODE निर्देश, एक कार्यान्वयनकर्ता-परिभाषित ओपकोड के साथ। IDCODE 32-बिट रजिस्टर (IDCODE) से जुड़ा है। इसका डेटा एक मानकीकृत प्रारूप का उपयोग करता है जिसमें एक निर्माता कोड ([[JEDEC]] मानक निर्माता की पहचान कोड मानक, JEP-106 से प्राप्त), निर्माता द्वारा निर्दिष्ट एक भाग संख्या और एक भाग संस्करण कोड शामिल होता है। IDCODE व्यापक रूप से समर्थित है, लेकिन सार्वभौमिक रूप से समर्थित नहीं है।
* BYPASS निर्देश, TAP के निर्देश रजिस्टर आकार की परवाह किए बिना सभी का एक ओपकोड, सभी TAP द्वारा समर्थित होना चाहिए। निर्देश एक बिट डेटा रजिस्टर (जिसे बायपास भी कहा जाता है) का चयन करता है। निर्देश इस उपकरण को बायपास करने की अनुमति देता है (कुछ नहीं करें) जबकि स्कैन पथ में अन्य उपकरणों का प्रयोग किया जाता है।<ref name="ieee1149.1-2001" />* वैकल्पिक IDCODE निर्देश, एक कार्यान्वयनकर्ता-परिभाषित ओपकोड के साथ। IDCODE 32-बिट रजिस्टर (IDCODE) से जुड़ा है। इसका डेटा एक मानकीकृत प्रारूप का उपयोग करता है जिसमें एक निर्माता कोड ([[JEDEC]] मानक निर्माता की पहचान कोड मानक, JEP-106 से प्राप्त), निर्माता द्वारा निर्दिष्ट एक भाग संख्या और एक भाग संस्करण कोड शामिल होता है। IDCODE व्यापक रूप से समर्थित है, लेकिन सार्वभौमिक रूप से समर्थित नहीं है।
Line 110: Line 110:
आईईईई 1149.1 (जेटीएजी) मानक सीमा स्कैन अनुप्रयोगों का समर्थन करने के लिए कई निर्देशों का वर्णन करता है। इनमें से कुछ निर्देश अनिवार्य हैं, लेकिन सीमा स्कैन परीक्षण के बजाय डिबग के लिए उपयोग किए जाने वाले टीएपी कभी-कभी इन निर्देशों के लिए न्यूनतम या कोई समर्थन नहीं देते हैं। वे अनिवार्य निर्देश सीमा स्कैन विवरण भाषा फ़ाइल में परिभाषित सीमा स्कैन रजिस्टर (बीएसआर) पर काम करते हैं और इसमें शामिल हैं:
आईईईई 1149.1 (जेटीएजी) मानक सीमा स्कैन अनुप्रयोगों का समर्थन करने के लिए कई निर्देशों का वर्णन करता है। इनमें से कुछ निर्देश अनिवार्य हैं, लेकिन सीमा स्कैन परीक्षण के बजाय डिबग के लिए उपयोग किए जाने वाले टीएपी कभी-कभी इन निर्देशों के लिए न्यूनतम या कोई समर्थन नहीं देते हैं। वे अनिवार्य निर्देश सीमा स्कैन विवरण भाषा फ़ाइल में परिभाषित सीमा स्कैन रजिस्टर (बीएसआर) पर काम करते हैं और इसमें शामिल हैं:


* बाह्य परीक्षण के लिए EXTEST, जैसे कि बोर्ड स्तर के व्यवहारों की जांच के लिए पिन का उपयोग करना
* बाह्य परीक्षण के लिए परीक्षा, जैसे कि बोर्ड स्तर के व्यवहारों की जांच के लिए पिन का उपयोग करना
* EXTEST से पहले लोड हो रहे पिन आउटपुट मानों को प्रीलोड करें (कभी-कभी SAMPLE के साथ संयुक्त)
* परीक्षा से पहले लोड हो रहे पिन आउटपुट मानों को प्रीलोड करें (कभी-कभी मानक के साथ संयुक्त)
* बाउंड्री स्कैन रजिस्टर में सैंपल रीडिंग पिन वैल्यू
* बाउंड्री स्कैन रजिस्टर में सैंपल रीडिंग पिन वैल्यू


Line 140: Line 140:
== उदाहरण: [[ARM11]] डिबग TAP ==
== उदाहरण: [[ARM11]] डिबग TAP ==


एक उदाहरण वास्तविक प्रणालियों में जेटीएजी के संचालन को दिखाने में मदद करता है। यहाँ उदाहरण ARM11 प्रोसेसर, ARM1136 का डिबग TAP है<ref name="ARM1136">[http://infocenter.arm.com/help/topic/com.arm.doc.ddi0211k/DDI0211K_arm1136_r1p5_trm.pdf ARM1136JF-S and ARM1136J-S Technical Reference Manual] revision r1p5, ARM DDI 0211K.  Chapter 14 presents the Debug TAP.  Other ARM11 cores present the same model through their Debug TAPs.</ref> मुख्य। प्रोसेसर में स्वयं व्यापक जेटीएजी क्षमता है, जो कि अन्य CPU कोर में पाई जाती है, और इसे जेटीएजी के माध्यम से और भी व्यापक क्षमताओं के साथ चिप्स में एकीकृत किया गया है।
एक उदाहरण वास्तविक प्रणालियों में जेटीएजी के संचालन को दिखाने में मदद करता है। यहाँ उदाहरण ARM11 प्रोसेसर, ARM1136 का डिबग TAP है<ref name="ARM1136">[http://infocenter.arm.com/help/topic/com.arm.doc.ddi0211k/DDI0211K_arm1136_r1p5_trm.pdf ARM1136JF-S and ARM1136J-S Technical Reference Manual] revision r1p5, ARM DDI 0211K.  Chapter 14 presents the Debug TAP.  Other ARM11 cores present the same model through their Debug TAPs.</ref> मुख्य। प्रोसेसर में स्वयं व्यापक जेटीएजी क्षमता है, जो कि अन्य सीपीयू कोर में पाई जाती है, और इसे जेटीएजी के माध्यम से और भी व्यापक क्षमताओं के साथ चिप्स में एकीकृत किया गया है।


यह एक गैर-तुच्छ उदाहरण है, जो जेटीएजी-सक्षम प्रणाली के एक महत्वपूर्ण क्रॉस सेक्शन का प्रतिनिधि है। इसके अलावा, यह दिखाता है कि जेटीएजी के रजिस्टर रीड/राइट प्रिमिटिव का उपयोग करके नियंत्रण तंत्र कैसे बनाए जाते हैं, और कैसे वे जटिल तर्क तत्वों के परीक्षण और डिबगिंग की सुविधा के लिए गठबंधन करते हैं; सीपीयू आम हैं, लेकिन एफपीजीए और एप्लिकेशन-विशिष्ट एकीकृत सर्किट में अन्य जटिल तत्व शामिल हैं जिन्हें डीबग करने की आवश्यकता है।
यह एक गैर-तुच्छ उदाहरण है, जो जेटीएजी-सक्षम प्रणाली के एक महत्वपूर्ण क्रॉस सेक्शन का प्रतिनिधि है। इसके अलावा, यह दिखाता है कि जेटीएजी के रजिस्टर रीड/राइट प्रिमिटिव का उपयोग करके नियंत्रण तंत्र कैसे बनाए जाते हैं, और कैसे वे जटिल तर्क तत्वों के परीक्षण और डिबगिंग की सुविधा के लिए गठबंधन करते हैं; सीपीयू आम हैं, लेकिन एफपीजीए और एप्लिकेशन-विशिष्ट एकीकृत सर्किट में अन्य जटिल तत्व शामिल हैं जिन्हें डीबग करने की आवश्यकता है।
Line 155: Line 155:


* <code>BYPASS</code> और <code>IDCODE</code>, मानक निर्देश जैसा कि ऊपर वर्णित है
* <code>BYPASS</code> और <code>IDCODE</code>, मानक निर्देश जैसा कि ऊपर वर्णित है
* <code>EXTEST</code>, <code>INTEST</code>, मानक निर्देश, लेकिन बाहरी सीमा स्कैन श्रृंखला के बजाय कोर पर काम करना। <code>EXTEST</code> मुख्य रूप से डेटा को कोर में लिखने के लिए है, <code>INTEST</code> नाममात्र इसे पढ़ने के लिए है; लेकिन दो स्कैन चेन उस नियम के अपवाद हैं।
* <code>परीक्षा</code>, <code>INTEST</code>, मानक निर्देश, लेकिन बाहरी सीमा स्कैन श्रृंखला के बजाय कोर पर काम करना। <code>परीक्षा</code> मुख्य रूप से डेटा को कोर में लिखने के लिए है, <code>INTEST</code> नाममात्र इसे पढ़ने के लिए है; लेकिन दो स्कैन चेन उस नियम के अपवाद हैं।
* <code>SCAN_N</code> उपयोग की जाने वाली क्रमांकित स्कैन श्रृंखला का चयन करने के लिए एआरएम निर्देश <code>EXTEST</code> या <code>INTEST</code>. छह स्कैन चेन हैं:
* <code>SCAN_N</code> उपयोग की जाने वाली क्रमांकित स्कैन श्रृंखला का चयन करने के लिए एआरएम निर्देश <code>परीक्षा</code> या <code>INTEST</code>. छह स्कैन चेन हैं:
** <code>0</code> - डिवाइस आईडी रजिस्टर, रीड-ओनली आइडेंटिफिकेशन डेटा के 40 बिट
** <code>0</code> - डिवाइस आईडी रजिस्टर, रीड-ओनली आइडेंटिफिकेशन डेटा के 40 बिट
** <code>1</code> - डिबग स्थिति और नियंत्रण रजिस्टर (DSCR), 32 बिट्स का उपयोग डिबग सुविधाओं को संचालित करने के लिए किया जाता है
** <code>1</code> - डिबग स्थिति और नियंत्रण रजिस्टर (DSCR), 32 बिट्स का उपयोग डिबग सुविधाओं को संचालित करने के लिए किया जाता है
Line 163: Line 163:
** <code>6</code> - एंबेडेड ट्रेस मॉड्यूल (ईटीएम), 40 बिट्स (7 बिट एड्रेस, एक 32-बिट लंबा डेटा शब्द, और एक आर/डब्ल्यू बिट) एक निष्क्रिय निर्देश और डेटा ट्रेस तंत्र के संचालन को नियंत्रित करने के लिए उपयोग किया जाता है। यह या तो ऑन-चिप एंबेडेड ट्रेस बफर (ETB), या एक बाहरी हाई स्पीड ट्रेस डेटा कलेक्शन पॉड को फीड करता है। ट्रेसिंग निष्क्रिय डिबगिंग (निष्पादन इतिहास की जांच) और प्रदर्शन ट्यूनिंग के लिए प्रोफाइलिंग का समर्थन करता है।
** <code>6</code> - एंबेडेड ट्रेस मॉड्यूल (ईटीएम), 40 बिट्स (7 बिट एड्रेस, एक 32-बिट लंबा डेटा शब्द, और एक आर/डब्ल्यू बिट) एक निष्क्रिय निर्देश और डेटा ट्रेस तंत्र के संचालन को नियंत्रित करने के लिए उपयोग किया जाता है। यह या तो ऑन-चिप एंबेडेड ट्रेस बफर (ETB), या एक बाहरी हाई स्पीड ट्रेस डेटा कलेक्शन पॉड को फीड करता है। ट्रेसिंग निष्क्रिय डिबगिंग (निष्पादन इतिहास की जांच) और प्रदर्शन ट्यूनिंग के लिए प्रोफाइलिंग का समर्थन करता है।
** <code>7</code> - डिबग मॉड्यूल, 40 बिट्स (7 बिट एड्रेस, एक 32-बिट लंबा डेटा शब्द, और एक आर/डब्ल्यू बिट) हार्डवेयर ब्रेकप्वाइंट, वॉचपॉइंट, और बहुत कुछ एक्सेस करने के लिए उपयोग किया जाता है। इन्हें तब लिखा जा सकता है जब प्रोसेसर चल रहा हो; इसे डिबग मोड में होने की आवश्यकता नहीं है।
** <code>7</code> - डिबग मॉड्यूल, 40 बिट्स (7 बिट एड्रेस, एक 32-बिट लंबा डेटा शब्द, और एक आर/डब्ल्यू बिट) हार्डवेयर ब्रेकप्वाइंट, वॉचपॉइंट, और बहुत कुछ एक्सेस करने के लिए उपयोग किया जाता है। इन्हें तब लिखा जा सकता है जब प्रोसेसर चल रहा हो; इसे डिबग मोड में होने की आवश्यकता नहीं है।
* <code>HALT</code> और <code>RESTART</code>, ARM11-विशिष्ट निर्देश CPU को रोकने और पुनः आरंभ करने के लिए। इसे रोकने से कोर डिबग मोड में आ जाता है, जहां ITR का उपयोग निर्देशों को निष्पादित करने के लिए किया जा सकता है, जिसमें DCC का उपयोग करके डीबग (जेटीएजी) होस्ट और CPU के बीच डेटा स्थानांतरित करना शामिल है।
* <code>HALT</code> और <code>RESTART</code>, ARM11-विशिष्ट निर्देश सीपीयू को रोकने और पुनः आरंभ करने के लिए। इसे रोकने से कोर डिबग मोड में आ जाता है, जहां ITR का उपयोग निर्देशों को निष्पादित करने के लिए किया जा सकता है, जिसमें DCC का उपयोग करके डीबग (जेटीएजी) होस्ट और सीपीयू के बीच डेटा स्थानांतरित करना शामिल है।
* <code>ITRSEL</code>, ITR के साथ कुछ कार्यों में तेजी लाने के लिए ARM11-विशिष्ट निर्देश।
* <code>ITRSEL</code>, ITR के साथ कुछ कार्यों में तेजी लाने के लिए ARM11-विशिष्ट निर्देश।
वह मॉडल अन्य एआरएम कोर में प्रयुक्त मॉडल जैसा दिखता है। गैर-एआरएम प्रणाली में आम तौर पर समान क्षमताएं होती हैं, शायद जेटीएजी, या अन्य विक्रेता-विशिष्ट योजनाओं के शीर्ष पर नेक्सस (मानक) प्रोटोकॉल का उपयोग करके प्रायुक्त की जाती हैं।
वह मॉडल अन्य एआरएम कोर में प्रयुक्त मॉडल जैसा दिखता है। गैर-एआरएम प्रणाली में आम तौर पर समान क्षमताएं होती हैं, शायद जेटीएजी, या अन्य विक्रेता-विशिष्ट योजनाओं के शीर्ष पर नेक्सस (मानक) प्रोटोकॉल का उपयोग करके प्रायुक्त की जाती हैं।
Line 174: Line 174:
सॉफ़्टवेयर डिबग करने का एक मूल तरीका एकल थ्रेडेड मॉडल प्रस्तुत करना है, जहां डीबगर समय-समय पर प्रोग्राम के निष्पादन को रोकता है और रजिस्टर सामग्री और मेमोरी (परिधीय नियंत्रक रजिस्टरों सहित) द्वारा उजागर की गई स्थिति की जांच करता है। जब दिलचस्प कार्यक्रम की घटनाएँ सामने आती हैं, तो एक व्यक्ति एक विशेष दुर्व्यवहार कैसे होता है, यह देखने के लिए एकल चरण निर्देश (या स्रोत कोड की पंक्तियाँ) लेना चाहता है।
सॉफ़्टवेयर डिबग करने का एक मूल तरीका एकल थ्रेडेड मॉडल प्रस्तुत करना है, जहां डीबगर समय-समय पर प्रोग्राम के निष्पादन को रोकता है और रजिस्टर सामग्री और मेमोरी (परिधीय नियंत्रक रजिस्टरों सहित) द्वारा उजागर की गई स्थिति की जांच करता है। जब दिलचस्प कार्यक्रम की घटनाएँ सामने आती हैं, तो एक व्यक्ति एक विशेष दुर्व्यवहार कैसे होता है, यह देखने के लिए एकल चरण निर्देश (या स्रोत कोड की पंक्तियाँ) लेना चाहता है।


तो उदाहरण के लिए एक जेटीएजी होस्ट कोर को रोक सकता है, डिबग मोड में प्रवेश कर सकता है, और फिर ITR और DCC का उपयोग करके CPU रजिस्टर पढ़ सकता है। प्रोसेसर स्थिति को सहेजने के बाद, यह उन रजिस्टरों को किसी भी मूल्य के साथ लिख सकता है, फिर सीपीयू पर मनमाने ढंग से एल्गोरिदम निष्पादित कर सकता है, प्रणाली स्थिति को चित्रित करने में सहायता के लिए स्मृति और बाह्य उपकरणों तक पहुंच सकता है। डिबगर द्वारा उन कार्यों को करने के बाद, राज्य को पुनर्स्थापित किया जा सकता है और RESTART निर्देश का उपयोग करके निष्पादन जारी रखा जा सकता है।
तो उदाहरण के लिए एक जेटीएजी होस्ट कोर को रोक सकता है, डिबग मोड में प्रवेश कर सकता है, और फिर ITR और DCC का उपयोग करके सीपीयू रजिस्टर पढ़ सकता है। प्रोसेसर स्थिति को सहेजने के बाद, यह उन रजिस्टरों को किसी भी मूल्य के साथ लिख सकता है, फिर सीपीयू पर मनमाने ढंग से एल्गोरिदम निष्पादित कर सकता है, प्रणाली स्थिति को चित्रित करने में सहायता के लिए स्मृति और बाह्य उपकरणों तक पहुंच सकता है। डिबगर द्वारा उन कार्यों को करने के बाद, राज्य को पुनर्स्थापित किया जा सकता है और RESTART निर्देश का उपयोग करके निष्पादन जारी रखा जा सकता है।


डिबग मोड को अतुल्यकालिक रूप से डिबग मॉड्यूल द्वारा वॉचपॉइंट या ब्रेकपॉइंट को ट्रिगर करके, या डीबग किए जा रहे सॉफ़्टवेयर से बीकेपीटी (ब्रेकपॉइंट) निर्देश जारी करके भी दर्ज किया जाता है। जब इसका उपयोग निर्देश अनुरेखण के लिए नहीं किया जा रहा है, तो ETM डिबग मोड में प्रवेश को भी ट्रिगर कर सकता है; यह राज्य और इतिहास के प्रति संवेदनशील जटिल ट्रिगर्स का समर्थन करता है, साथ ही डिबग मॉड्यूल द्वारा उजागर की गई सरल पता तुलनाओं का भी समर्थन करता है। डिबग मोड में एसिंक्रोनस ट्रांज़िशन DSCR रजिस्टर पोलिंग द्वारा पता लगाया जाता है। इस तरह सिंगल स्टेपिंग को प्रायुक्त किया जाता है: कोर को रोकें, अगले निर्देश या अगले उच्च-स्तरीय स्टेटमेंट पर एक अस्थायी ब्रेकपॉइंट सेट करें, RESTART, पोल DSCR जब तक आप डिबग स्टेट में एसिंक्रोनस एंट्री का पता नहीं लगाते हैं, उस अस्थायी ब्रेकपॉइंट को हटा दें, दोहराएं।
डिबग मोड को अतुल्यकालिक रूप से डिबग मॉड्यूल द्वारा वॉचपॉइंट या ब्रेकपॉइंट को ट्रिगर करके, या डीबग किए जा रहे सॉफ़्टवेयर से बीकेपीटी (ब्रेकपॉइंट) निर्देश जारी करके भी दर्ज किया जाता है। जब इसका उपयोग निर्देश अनुरेखण के लिए नहीं किया जा रहा है, तो ETM डिबग मोड में प्रवेश को भी ट्रिगर कर सकता है; यह राज्य और इतिहास के प्रति संवेदनशील जटिल ट्रिगर्स का समर्थन करता है, साथ ही डिबग मॉड्यूल द्वारा उजागर की गई सरल पता तुलनाओं का भी समर्थन करता है। डिबग मोड में एसिंक्रोनस ट्रांज़िशन DSCR रजिस्टर पोलिंग द्वारा पता लगाया जाता है। इस तरह सिंगल स्टेपिंग को प्रायुक्त किया जाता है: कोर को रोकें, अगले निर्देश या अगले उच्च-स्तरीय स्टेटमेंट पर एक अस्थायी ब्रेकपॉइंट सेट करें, RESTART, पोल DSCR जब तक आप डिबग स्टेट में एसिंक्रोनस एंट्री का पता नहीं लगाते हैं, उस अस्थायी ब्रेकपॉइंट को हटा दें, दोहराएं।
Line 224: Line 224:
उन कनेक्टर्स में केवल चार मानकीकृत सिग्नल (TMS, TCK, TDI, TDO) से अधिक शामिल होते हैं। आमतौर पर रीसेट सिग्नल प्रदान किए जाते हैं, TRST (TAP रीसेट) और SRST (प्रणाली रीसेट) में से एक या दोनों। कनेक्टर आमतौर पर बोर्ड-अंडर-टेस्ट का लॉजिक सप्लाई वोल्टेज प्रदान करता है ताकि जेटीएजी एडेप्टर उपयुक्त लॉजिक स्तरों का उपयोग करें<!-- eg 5, 3.3, ..., 1V, ... -->. बोर्ड वोल्टेज बोर्ड के वर्तमान डिबगर इनपुट के रूप में भी काम कर सकता है। अधिक जटिल डिबगिंग आर्किटेक्चर का समर्थन करने के लिए अन्य ईवेंट इनपुट या आउटपुट सिग्नल प्रदान किए जा सकते हैं, या सामान्य प्रयोजन इनपुट/आउटपुट | सामान्य प्रयोजन I/O (GPIO) लाइनें।
उन कनेक्टर्स में केवल चार मानकीकृत सिग्नल (TMS, TCK, TDI, TDO) से अधिक शामिल होते हैं। आमतौर पर रीसेट सिग्नल प्रदान किए जाते हैं, TRST (TAP रीसेट) और SRST (प्रणाली रीसेट) में से एक या दोनों। कनेक्टर आमतौर पर बोर्ड-अंडर-टेस्ट का लॉजिक सप्लाई वोल्टेज प्रदान करता है ताकि जेटीएजी एडेप्टर उपयुक्त लॉजिक स्तरों का उपयोग करें<!-- eg 5, 3.3, ..., 1V, ... -->. बोर्ड वोल्टेज बोर्ड के वर्तमान डिबगर इनपुट के रूप में भी काम कर सकता है। अधिक जटिल डिबगिंग आर्किटेक्चर का समर्थन करने के लिए अन्य ईवेंट इनपुट या आउटपुट सिग्नल प्रदान किए जा सकते हैं, या सामान्य प्रयोजन इनपुट/आउटपुट | सामान्य प्रयोजन I/O (GPIO) लाइनें।


जेटीएजी संचालन के संयोजन के साथ हाई-स्पीड [[ अनुरेखण (सॉफ्टवेयर) ]] का समर्थन करने के लिए उच्च अंत उत्पाद अक्सर घने कनेक्टर (अक्सर 38-पिन [[MICTOR]] कनेक्टर) का उपयोग करते हैं। एक हालिया चलन है कि विकास बोर्ड जेटीएजी में एक USB इंटरफ़ेस को एकीकृत करते हैं, जहाँ एक सीरियल पोर्ट के लिए एक दूसरे चैनल का उपयोग किया जाता है। (छोटे बोर्ड यूएसबी के माध्यम से भी संचालित किए जा सकते हैं। चूंकि आधुनिक पीसी सीरियल पोर्ट को छोड़ देते हैं, ऐसे एकीकृत डिबग लिंक डेवलपर्स के लिए अव्यवस्था को काफी कम कर सकते हैं।) प्रोडक्शन बोर्ड अक्सर [[नाखून परीक्षक का बिस्तर]] पर भरोसा करते हैं। परीक्षण बिंदुओं के लिए बेड-ऑफ-नेल कनेक्शन परीक्षण और प्रोग्रामिंग के लिए।
जेटीएजी संचालन के संयोजन के साथ हाई-स्पीड [[ अनुरेखण (सॉफ्टवेयर) ]] का समर्थन करने के लिए उच्च अंत उत्पाद अक्सर घने कनेक्टर (अक्सर 38-पिन [[MICTOR]] कनेक्टर) का उपयोग करते हैं। एक हालिया चलन है कि विकास बोर्ड जेटीएजी में एक USB इंटरफ़ेस को एकीकृत करते हैं, जहाँ एक सीरियल पोर्ट के लिए एक दूसरे चैनल का उपयोग किया जाता है। (छोटे बोर्ड यूएसबी के माध्यम से भी संचालित किए जा सकते हैं। चूंकि आधुनिक पीसी सीरियल पोर्ट को छोड़ देते हैं, ऐसे एकीकृत डिबग लिंक डेवलपर्स के लिए अव्यवस्था को काफी कम कर सकते हैं।) प्रोडक्शन बोर्ड अक्सर [[नाखून परीक्षक का बिस्तर]] पर भरोसा करते हैं। परीक्षण बिंदुओं के लिए बेड-ऑफ-नेल संयोजन परीक्षण और प्रोग्रामिंग के लिए।


=== एडेप्टर हार्डवेयर ===
=== एडेप्टर हार्डवेयर ===
एडेप्टर हार्डवेयर व्यापक रूप से भिन्न होता है। जब विकास बोर्ड में एकीकृत नहीं किया जाता है, तो लक्ष्य बोर्ड पर जेटीएजी कनेक्टर से जुड़ने के लिए इसमें एक छोटी केबल शामिल होती है; डिबगिंग होस्ट से कनेक्शन, जैसे यूएसबी, पीसीआई, या ईथरनेट लिंक; और दो संचार डोमेन को अनुकूलित करने के लिए पर्याप्त इलेक्ट्रॉनिक्स (और कभी-कभी गैल्वेनिक अलगाव प्रदान करते हैं)। एक अलग बिजली आपूर्ति की आवश्यकता हो सकती है। दोनों गूंगे एडेप्टर हैं, जहां मेजबान सभी जेटीएजी संचालन का निर्णय लेता है और करता है; और स्मार्ट वाले, जहां उस काम में से कुछ एडॉप्टर के अंदर किया जाता है, अक्सर एक माइक्रोकंट्रोलर द्वारा संचालित होता है। स्मार्ट एडेप्टर ऑपरेशन अनुक्रमों के लिए लिंक विलंबता को समाप्त करते हैं जिसमें चरणों के बीच स्थिति परिवर्तन के लिए मतदान शामिल हो सकता है, और तदनुसार तेजी से थ्रूपुट की पेशकश कर सकता है।
एडेप्टर हार्डवेयर व्यापक रूप से भिन्न होता है। जब विकास बोर्ड में एकीकृत नहीं किया जाता है, तो लक्ष्य बोर्ड पर जेटीएजी कनेक्टर से जुड़ने के लिए इसमें एक छोटी केबल शामिल होती है; डिबगिंग होस्ट से संयोजन, जैसे यूएसबी, पीसीआई, या ईथरनेट लिंक; और दो संचार डोमेन को अनुकूलित करने के लिए पर्याप्त इलेक्ट्रॉनिक्स (और कभी-कभी गैल्वेनिक अलगाव प्रदान करते हैं)। एक अलग बिजली आपूर्ति की आवश्यकता हो सकती है। दोनों गूंगे एडेप्टर हैं, जहां मेजबान सभी जेटीएजी संचालन का निर्णय लेता है और करता है; और स्मार्ट वाले, जहां उस काम में से कुछ एडॉप्टर के अंदर किया जाता है, अक्सर एक माइक्रोकंट्रोलर द्वारा संचालित होता है। स्मार्ट एडेप्टर ऑपरेशन अनुक्रमों के लिए लिंक विलंबता को समाप्त करते हैं जिसमें चरणों के बीच स्थिति परिवर्तन के लिए मतदान शामिल हो सकता है, और तदनुसार तेजी से थ्रूपुट की पेशकश कर सकता है।


{{As of|2018}}, होस्ट से [[USB]] लिंक वाले एडेप्टर सबसे आम दृष्टिकोण हैं। उच्च अंत उत्पाद अक्सर [[ईथरनेट]] का समर्थन करते हैं, इस लाभ के साथ कि डीबग होस्ट काफी दूरस्थ हो सकता है। एडेप्टर जो हाई स्पीड ट्रेस पोर्ट का समर्थन करते हैं, उनमें आमतौर पर कई मेगाबाइट ट्रेस बफर शामिल होते हैं और उस डेटा को होस्ट तक पहुंचाने के लिए हाई स्पीड लिंक (USB या ईथरनेट) प्रदान करते हैं।
{{As of|2018}}, होस्ट से [[USB]] लिंक वाले एडेप्टर सबसे आम दृष्टिकोण हैं। उच्च अंत उत्पाद अक्सर [[ईथरनेट]] का समर्थन करते हैं, इस लाभ के साथ कि डीबग होस्ट काफी दूरस्थ हो सकता है। एडे