একটি ইউএসবি কেবলে, ডি + এবং ডি-তারগুলি অদলবদল করা ঠিক আছে কি?


54

আমি শুনেছি ডি + এবং ডি- ডিফারেন্সিয়াল সিগন্যাল, কম্পিউটারে কোনও ইউএসবি ডিভাইস সংযোগ করার সময় আমি সেগুলি অদলবদল করে রাখলে কী ব্যাপার হয়?


আকর্ষণীয় প্রশ্ন ... সমস্ত বৈধ ডিফারেনশিয়াল প্রোটোকলগুলির জন্য বৈধ .. CAN এর মতো!
স্বানন্দ

উত্তর:


58

সারাংশ

নিষ্ক্রিয় অবস্থায় প্রবেশের সময় এবং প্রস্থান করার সময়, পোলারিটি গুরুত্বপূর্ণ এবং ডি + এবং ডি-লাইনগুলি অদলবদলে সমস্যা দেখা দেবে।

ডেটা ট্রান্সমিশন

ইউএসবি ডেটা এনআরজেড কোডিত যেমন "ওয়ান" দৈহিক স্তরের কোনও পরিবর্তন দ্বারা প্রতিনিধিত্ব করা হয় না, এবং "জিরো" শারীরিক স্তরের পরিবর্তন দ্বারা প্রতিনিধিত্ব করা হয় (নীচের চিত্রটি দেখুন)। অতএব, সিগন্যালটি উল্টানো (উদাহরণস্বরূপ, ডি + এবং ডি- অদলবদল করে) এর ফলে ডেটা সংক্রমণের সময় কোনও কার্যকরী পরিবর্তন হয় না। তবে ডেটা সংক্রমণের আগে এবং পরে সমস্যা হতে পারে যা ডিভাইসের সাথে যোগাযোগকে হত্যা করতে পারে।

নিষ্ক্রিয় অবস্থা থেকে বের হচ্ছে

হোস্টটিতে প্রতিটি ডেটা লাইনে 15 কিলো ডাউন-ডাউন প্রতিরোধক অন্তর্ভুক্ত থাকে। যখন কোনও ডিভাইস সংযুক্ত থাকে না, তখন এটি উভয় ডেটা লাইনগুলিকে তথাকথিত "একক-সমাপ্ত শূন্য" স্থিতিতে (ইউএসবি ডকুমেন্টেশনে এসই0) টেনে তোলে এবং পুনরায় সেট বা সংযোগ বিচ্ছিন্ন সংযোগের নির্দেশ দেয়। একটি ইউএসবি ডিভাইস 1.5 কিলো প্রতিরোধকের সাহায্যে ডেটা লাইনগুলির একটিতে উচ্চ টান। এটি হোস্টের একটি পুল-ডাউন প্রতিরোধককে অতিক্রম করে এবং "জে" নামে একটি অলস অবস্থায় ডেটা লাইনগুলি ফেলে দেয়। ইউএসবি 1.x এর জন্য, ডেটা লাইনের পছন্দটি ইঙ্গিত দেয় যে ডিভাইসটি কতটা সিগন্যাল রেট দেয়; পূর্ণ-ব্যান্ডউইথ ডিভাইসগুলি ডি + উচ্চ টানায়, যখন লো-ব্যান্ডউইথ ডিভাইসগুলি ডি উচ্চকে টান দেয়।

ডেটা এনআরজেডআই-এনকোড থাকা অবস্থায়, সিঙ্ক্রোনাইজেশন ক্রম এবং ইওপি স্থির অবস্থার (জে / কে / এসই0) পদে সংজ্ঞায়িত করা হয়। ডি + এবং ডি- এ স্যুইচ করা হলে, জে রাষ্ট্র কে দিয়ে স্যুইচ করা হয় এবং এসই0 এখনও এসই0 (উভয় লাইন কম) থাকে। সুতরাং সিঙ্ক ক্রম এবং ইওপি বিপরীতে ভুল হয়ে যাবে। ইউএসবি 1.x এ, ডি + এবং ডি- যদি অদলবদল হয় তবে একটি পূর্ণ-ব্যান্ডউইথ ডিভাইসগুলি লো-ব্যান্ডউইথ এবং তদ্বিপরীত হিসাবে স্বীকৃত হয়। সুতরাং ডিভাইসটি এমনকি হোস্টের মতো একই গতিতে যোগাযোগ করবে না।

অলস রাজ্যে প্রবেশ করা

একটি ইউএসবি প্যাকেটের প্রান্ত, যা ইওপি (শেষের প্যাকেট) নামে পরিচিত, এসই 0 এর 2 বিট বার (সর্বোচ্চ + ডি + এবং ডিও উভয়ই সর্বাধিক নীচে) এবং জে রাজ্যের 1 বিট সময় দ্বারা ট্রান্সমিটার ড্রাইভিং দ্বারা নির্দেশিত। এর পরে, ট্রান্সমিটারটি ডি + / ডি− লাইনগুলি চালনা বন্ধ করে দেয় এবং পূর্বোক্ত টানা আপ প্রতিরোধকরা এটি জে (নিষ্ক্রিয়) অবস্থায় ধরে রাখে।

ডি + / ডি-অদলিত ড্রাইভারের সাহায্যে হোস্ট সঠিক (SE0, SE0, J) এর পরিবর্তে সিকোয়েন্সটি (SE0, SE0, K) দেখতে পাবে। হোস্টটি তখন প্যাকেটের সমাপ্তি সনাক্ত করতে ব্যর্থ হতে পারে যা সমস্যার কারণ হতে পারে।

এখানে চিত্র বর্ণনা লিখুন

উপসংহার

ডিভাইস এবং হোস্ট যদি ইউএসবি স্পেসিফিকেশনের সাথে কঠোরভাবে অনুসরণ করে, ডি + এবং ডি-পিনগুলি অদলবদল করতে ব্যর্থ হতে পারে। এটি উপলব্ধিযোগ্য যে হোস্টের ডিজাইনার যেমন একটি ব্যর্থতা মোড পূর্বেই দেখেছিলেন এবং এর জন্য সামঞ্জস্যপূর্ণভাবে তৈরি করেছিলেন। তবে এই জাতীয় পরিবর্তিত তারটি বাস্তবে কার্যকর হবে কি না, এটি অবশ্যই নির্দিষ্টকরণের সাথে মেনে চলবে না।

অপর সদস্য অ্যান্ড্রু কোহলস্মিথ যখন অভিজ্ঞ ইউএসবি হাবের পিনগুলি ঘটনাক্রমে অদলবদল করে তখন এটি অনুভব করে। সংযুক্ত ডিভাইসগুলি প্রদর্শিত না হওয়ায় সমস্যাটি নিজেকে প্রকাশ করেছিল। ইউএসবি ডিভাইসটি দেখায় যে এটি চালিত হয়েছিল তবে এটি হাবের উজানের পাশের কম্পিউটারের দ্বারা একেবারেই স্বীকৃত হয়নি (যা হোস্টের কাছে সঠিকভাবে তারযুক্ত ছিল)।

সূত্র: উইকিপিডিয়া

সম্পাদনা করুন: যারা মন্তব্য করেছেন তাদেরকে ধন্যবাদ। আমি আপনার সহায়ক নোটগুলি থেকে জোর এবং বিশদ যুক্ত করেছি।


2
এটি লক্ষ করা উচিত যে হোস্টটি কম / পূর্ণ গতির সাথে পৃথক করে যে লাইনটি কোন রেখাটি টানছে। আপনি যদি ডি + / ডি-লাইনগুলি অদলবদল করেন তবে ডিভাইসটি হোস্টের মতো একই গতিতে যোগাযোগও করবে না। তদতিরিক্ত, ডেটা এনআরজেডআই-এনকোড থাকা অবস্থায়, সিঙ্ক সিকোয়েন্স এবং ইওপি জে / কে / এসই 0 এর শর্তে সংজ্ঞায়িত করা হয়েছে এবং বিপরীতে ভুল হয়ে যাবে।
অবাকর

2
আমি অভিজ্ঞতা থেকে বলতে পারি যে ডি + / ডি- অদলবদল করার ফলে একটি অ-কার্যকর ইউএসবি ইন্টারফেসের ফলস্বরূপ। আমাকে কিছু প্রোটোটাইপগুলি পুনরায় কাজ করতে হয়েছিল যাতে তাদের মধ্যে একটি ইউএসবি হাব নির্মিত হয়েছিল। এত মজা নেই।
akohlsmith

@avakar বিশদ জন্য আপনাকে ধন্যবাদ। আমি মনে করি উত্তরটি বেশিরভাগ ক্ষেত্রে সংক্ষিপ্তভাবে আবৃত হয়েছে, তবে আমি আরও বিশদ যুক্ত করার চেষ্টা করব যাতে এটি আরও স্পষ্ট হয়।
travisbartley

@ অ্যান্ড্রু কোহলস্মিথ এটি দরকারী তথ্য। যদি আপনি মনে করতে পারেন তবে আপনার জন্য আমার কিছু প্রশ্ন আছে। ডিভাইস বা হাবের পিন অদলবদল ছিল? ত্রুটিটি কীভাবে প্রকাশিত হয়েছিল? আপনি যখন ডিভাইসটি সংযুক্ত করেছেন, তখন এটি ত্রুটিযুক্ত হিসাবে স্বীকৃত বা স্বীকৃত ছিল না? আপনি কীভাবে সমস্যাটি সনাক্ত করলেন? যে কোনও বিবরণ সাহায্য করবে, আমি উত্তরে আপনার তথ্য যুক্ত করার চেষ্টা করব।
travisbartley

2
@ ট্র্যাভ 1 এস আমি হাবের পাশে ডি + / ডি- অদলবদল করেছিলাম। ডিভাইসটি প্রদর্শিত না হওয়ায় সমস্যাটি নিজেই প্রকাশ পেয়েছিল। ইউএসবি কী দেখায় যে এটি চালিত হয়েছিল তবে এটি হাবের উজানের পাশে কম্পিউটারের দ্বারা একেবারেই স্বীকৃত হয়নি (যা হোস্টের কাছে সঠিকভাবে তারযুক্ত ছিল)। ডায়াগনোসিসটি সম্পর্কে লিখতে আমি বিব্রতবোধ করছি, এটি হাব কনফিগারেশন / সফ্টওয়্যার সমস্যা বলে ভেবে আমি অনেক সময় ব্যয় করেছি। শেষ পর্যন্ত আমি তারগুলি সনাক্ত করেছিলাম তবে শেষ পর্যন্ত করেছি কারণ আমি নিশ্চিত হয়েছি ইউএসবি ইথারনেটের মতো এবং পিনগুলি স্বয়ংক্রিয়ভাবে বদলাতে পারে। আমি ভৃল ছিলাম. :-)
অ্যাকোহলস্মিথ

1

আমি ডি + এবং ডি- অদলবদল করা হয় তখনই আমি ডিভাইসগুলিকে স্বল্প গতি হিসাবে আলোচনার বিষয়টি দেখেছি। এটি ছিল একটি পূর্ণ গতির (12 এমবিপিএস) ডিভাইস এবং একটি ভিআইএ চিপসেট ভিত্তিক পোর্ট।


2
এটি @ ট্রাভ 1 এস ইউএসবি 1.x সম্পর্কে যা বলেছেন তা প্রমাণিত করে
বৈভব গার্গ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.