JTAG कुछ विषम शब्द है। शुरू करने के लिए, शब्द एक विशिष्ट कनेक्टर और प्रोटोकॉल निर्दिष्ट कर सकता है, जो एक घड़ी संकेत (टीसीके), मोड-सेलेक्ट (टीएमएस), और डेटा इन / आउट (टीडीआई / टीडीओ) से बना है। इसमें उपकरणों का एक नेटवर्क शामिल है, जहां प्रत्येक डिवाइस का TDO एक तथाकथित स्कैन श्रृंखला में अगले डिवाइस के TDI से जुड़ा हुआ है। टीएमएस का उपयोग सभी उपकरणों को एक साथ विभिन्न मोड में करने के लिए किया जाता है ।
स्कैन श्रृंखला पर उपकरण आमतौर पर एक बड़े बदलाव रजिस्टर के रूप में जुड़े होते हैं, जिसमें प्रत्येक व्यक्तिगत डिवाइस में रजिस्टर शामिल होते हैं। जब डिवाइस SHIFT_IR या SHIFT_DR स्थिति में होते हैं, तो वे दो अस्थायी रजिस्टरों में से एक स्कैन श्रृंखला से जुड़ते हैं: एक निर्देश रजिस्टर, और एक डेटा रजिस्टर।
मान के शिफ्ट हो जाने के बाद, TCD को टॉगल करते हुए UPMSATE_IR या UPDATE_DR मोड को उचित रूप से TMS सेट करके सक्रिय किया जा सकता है। इस बिंदु पर, मूल्य "प्रभाव लेता है" रजिस्टर में स्थानांतरित हो गया। उदाहरण के लिए, एक FPGA के IR में विभिन्न अनुक्रमों को स्थानांतरित करने और UPDATE_IR में संक्रमण के कारण FPGA को कॉन्फ़िगरेशन, रीडबैक, सामान्य रनटाइम या एक्सेस विशिष्ट उपयोगकर्ता रजिस्टरों और JTAG- विशिष्ट प्राइमेटीविट में विभिन्न मोड में प्रवेश करने का कारण होगा।
इसी तरह, कैप्चर स्टेट्स का उपयोग डिवाइस से एक मान को "पढ़ने" के लिए किया जा सकता है और इसे IR या DR में डाल दिया जा सकता है, जिसे TDO के माध्यम से स्थानांतरित किया जा सकता है और अंततः JTAG प्रोग्रामर द्वारा पढ़ा जा सकता है।