আমি শুনেছি ডি + এবং ডি- ডিফারেন্সিয়াল সিগন্যাল, কম্পিউটারে কোনও ইউএসবি ডিভাইস সংযোগ করার সময় আমি সেগুলি অদলবদল করে রাখলে কী ব্যাপার হয়?
আমি শুনেছি ডি + এবং ডি- ডিফারেন্সিয়াল সিগন্যাল, কম্পিউটারে কোনও ইউএসবি ডিভাইস সংযোগ করার সময় আমি সেগুলি অদলবদল করে রাখলে কী ব্যাপার হয়?
উত্তর:
নিষ্ক্রিয় অবস্থায় প্রবেশের সময় এবং প্রস্থান করার সময়, পোলারিটি গুরুত্বপূর্ণ এবং ডি + এবং ডি-লাইনগুলি অদলবদলে সমস্যা দেখা দেবে।
ইউএসবি ডেটা এনআরজেড কোডিত যেমন "ওয়ান" দৈহিক স্তরের কোনও পরিবর্তন দ্বারা প্রতিনিধিত্ব করা হয় না, এবং "জিরো" শারীরিক স্তরের পরিবর্তন দ্বারা প্রতিনিধিত্ব করা হয় (নীচের চিত্রটি দেখুন)। অতএব, সিগন্যালটি উল্টানো (উদাহরণস্বরূপ, ডি + এবং ডি- অদলবদল করে) এর ফলে ডেটা সংক্রমণের সময় কোনও কার্যকরী পরিবর্তন হয় না। তবে ডেটা সংক্রমণের আগে এবং পরে সমস্যা হতে পারে যা ডিভাইসের সাথে যোগাযোগকে হত্যা করতে পারে।
হোস্টটিতে প্রতিটি ডেটা লাইনে 15 কিলো ডাউন-ডাউন প্রতিরোধক অন্তর্ভুক্ত থাকে। যখন কোনও ডিভাইস সংযুক্ত থাকে না, তখন এটি উভয় ডেটা লাইনগুলিকে তথাকথিত "একক-সমাপ্ত শূন্য" স্থিতিতে (ইউএসবি ডকুমেন্টেশনে এসই0) টেনে তোলে এবং পুনরায় সেট বা সংযোগ বিচ্ছিন্ন সংযোগের নির্দেশ দেয়। একটি ইউএসবি ডিভাইস 1.5 কিলো প্রতিরোধকের সাহায্যে ডেটা লাইনগুলির একটিতে উচ্চ টান। এটি হোস্টের একটি পুল-ডাউন প্রতিরোধককে অতিক্রম করে এবং "জে" নামে একটি অলস অবস্থায় ডেটা লাইনগুলি ফেলে দেয়। ইউএসবি 1.x এর জন্য, ডেটা লাইনের পছন্দটি ইঙ্গিত দেয় যে ডিভাইসটি কতটা সিগন্যাল রেট দেয়; পূর্ণ-ব্যান্ডউইথ ডিভাইসগুলি ডি + উচ্চ টানায়, যখন লো-ব্যান্ডউইথ ডিভাইসগুলি ডি উচ্চকে টান দেয়।
ডেটা এনআরজেডআই-এনকোড থাকা অবস্থায়, সিঙ্ক্রোনাইজেশন ক্রম এবং ইওপি স্থির অবস্থার (জে / কে / এসই0) পদে সংজ্ঞায়িত করা হয়। ডি + এবং ডি- এ স্যুইচ করা হলে, জে রাষ্ট্র কে দিয়ে স্যুইচ করা হয় এবং এসই0 এখনও এসই0 (উভয় লাইন কম) থাকে। সুতরাং সিঙ্ক ক্রম এবং ইওপি বিপরীতে ভুল হয়ে যাবে। ইউএসবি 1.x এ, ডি + এবং ডি- যদি অদলবদল হয় তবে একটি পূর্ণ-ব্যান্ডউইথ ডিভাইসগুলি লো-ব্যান্ডউইথ এবং তদ্বিপরীত হিসাবে স্বীকৃত হয়। সুতরাং ডিভাইসটি এমনকি হোস্টের মতো একই গতিতে যোগাযোগ করবে না।
একটি ইউএসবি প্যাকেটের প্রান্ত, যা ইওপি (শেষের প্যাকেট) নামে পরিচিত, এসই 0 এর 2 বিট বার (সর্বোচ্চ + ডি + এবং ডিও উভয়ই সর্বাধিক নীচে) এবং জে রাজ্যের 1 বিট সময় দ্বারা ট্রান্সমিটার ড্রাইভিং দ্বারা নির্দেশিত। এর পরে, ট্রান্সমিটারটি ডি + / ডি− লাইনগুলি চালনা বন্ধ করে দেয় এবং পূর্বোক্ত টানা আপ প্রতিরোধকরা এটি জে (নিষ্ক্রিয়) অবস্থায় ধরে রাখে।
ডি + / ডি-অদলিত ড্রাইভারের সাহায্যে হোস্ট সঠিক (SE0, SE0, J) এর পরিবর্তে সিকোয়েন্সটি (SE0, SE0, K) দেখতে পাবে। হোস্টটি তখন প্যাকেটের সমাপ্তি সনাক্ত করতে ব্যর্থ হতে পারে যা সমস্যার কারণ হতে পারে।
ডিভাইস এবং হোস্ট যদি ইউএসবি স্পেসিফিকেশনের সাথে কঠোরভাবে অনুসরণ করে, ডি + এবং ডি-পিনগুলি অদলবদল করতে ব্যর্থ হতে পারে। এটি উপলব্ধিযোগ্য যে হোস্টের ডিজাইনার যেমন একটি ব্যর্থতা মোড পূর্বেই দেখেছিলেন এবং এর জন্য সামঞ্জস্যপূর্ণভাবে তৈরি করেছিলেন। তবে এই জাতীয় পরিবর্তিত তারটি বাস্তবে কার্যকর হবে কি না, এটি অবশ্যই নির্দিষ্টকরণের সাথে মেনে চলবে না।
অপর সদস্য অ্যান্ড্রু কোহলস্মিথ যখন অভিজ্ঞ ইউএসবি হাবের পিনগুলি ঘটনাক্রমে অদলবদল করে তখন এটি অনুভব করে। সংযুক্ত ডিভাইসগুলি প্রদর্শিত না হওয়ায় সমস্যাটি নিজেকে প্রকাশ করেছিল। ইউএসবি ডিভাইসটি দেখায় যে এটি চালিত হয়েছিল তবে এটি হাবের উজানের পাশের কম্পিউটারের দ্বারা একেবারেই স্বীকৃত হয়নি (যা হোস্টের কাছে সঠিকভাবে তারযুক্ত ছিল)।
সম্পাদনা করুন: যারা মন্তব্য করেছেন তাদেরকে ধন্যবাদ। আমি আপনার সহায়ক নোটগুলি থেকে জোর এবং বিশদ যুক্ত করেছি।
আমি ডি + এবং ডি- অদলবদল করা হয় তখনই আমি ডিভাইসগুলিকে স্বল্প গতি হিসাবে আলোচনার বিষয়টি দেখেছি। এটি ছিল একটি পূর্ণ গতির (12 এমবিপিএস) ডিভাইস এবং একটি ভিআইএ চিপসেট ভিত্তিক পোর্ট।