پرده برداری از رازهای نهفته در USB


 






 
Universal serial Bus یکی از بزرگ ترین موفقیت های جهان کامپیوتر محسوب می شود. براساس اعلام کمپانی اینتل از زمان آغاز استفاده از این روش انتقال اطلاعات در سال 1996، در حال حاضر بیش از 6 میلیارد وسیله USB در دنیا در حال کار است.

موفقیت USB عمدتاً به دو فاکتور مربوط می شود. فاکتور اول، قابلیت ساده اما هوشمندانه آن در تأمین انرژی یک وسیله جانبی در عین فراهم نمودن امکان انتقال اطلاعات است. فاکتور دوم، این واقعیت است که ابزارها و پروتکل USB بسیار هوشمندتر از چیزی هستند که اغلب افراد فکر می کنند.
USB یک سیستم پیچیده است که به ابزاری با نیازمندی های داده های متفاوت اجازه می دهد از پهنای باند در دسترس، به بهترین نحو ممکن استفاده کنند. حتی ساده ترین و ارزان ترین ابزار USB نیز دارای یک چیپ مبتنی بر ریزپردازنده اختصاصی است که مستقیماً با انتقال اطلاعات به پی سی میزبان سر و کار دارد. چیپ ست های سخت افزاری USB که در داخل ابزار USB گنجانده شده اند وظیفه اداره کل مبادلات را به عهده دارند و نرم افزاری که از این ابزار استفاده می کند دلیلی برای نگرانی در مورد جزئیات چگونگی انتقال اطلاعات ندارد.

پروتکلی برای همه مناسبت ها
 

پیچیدگی و هوشمندی USB چیزی است که آن را قادر می کند با هر وسیله ای که اطلاعات و داده ها را به پی سی منتقل می کند کار کند. جهانی کردن یا universal نمودن آن بدین معنا است که برای این که یک وسیله بتواند پهنای باند 480Mbits/sec را با یک اتصال USB 2 به اشتراک بگذارد کار بسیار زیادی باید صورت بگیرد. به عنوان مثال یک ماوس به پهنای باند زیادی نیاز ندارد اما باید دارای تأخیر اندکی باشد تا وقتی که شما آن را حرکت می دهید نشان گر ماوس ویندوز بدون هیچ گونه تأخیر قابل تشخیصی حرکت کند. برای امکان پذیر نمودن این کار، یک ماوس می تواند یک کانال ارتباطی را که به آن یک pipe گفته می شود در حالت interrupt transfer باز کند. این موضوع یک پاسخ سریع به ابزار را با تأخیر اندک و نیازمندی کم به پهنای باند تضمین می کند.
از سوی دیگر یک دیسک سخت نیازی به پاسخ با تأخیر بسیار اندک ندارد بلکه فقط نیاز به دریافت حداکثر مقدار پهنای باند در هر جایی که بتواند داده ها را در قطعات بزرگ منتقل کند دارد. برای انجام این کار، دیسک سخت می تواند یک لوله ارتباطی را در حالت bulk transfer که تمام پهنای باند بدون استفاده را اختصاص می دهد اما تضمینی در مورد تأخیر نمی دهد باز کند و بدین ترتیب ماوس ارجحیت را به خودش اختصاص می دهد. در نهایت، وسیله ای مثل یک دوربین وب به سادگی نیاز به یک سرعت انتقال ثابت تضمین شده دارد تا بتواند به یک نرخ فریم مشخص دست پیدا کند اما بسته های داده که بعضاً به طور اتفاقی به مقصد نمی رسند اهمیتی ندارد. دوربین می تواند یک لوله را در حالت isochronous که یک پهنای باند تضمین شده را فراهم می کند اما قادر به فراهم نمودن صحت دقیق و کامل داده ها نیست باز کند.

کابل های فیزیکی
 

همان گونه که از اسم آن پیدا است، USB یک سیستم انتقال داده سریال است؛ داده ها به صورت یک بیت دیجیتال( یک صفر یا یک) در هر زمان به کابل های فیزیکی فرستاده می شوند و در سمت دیگر مجدداً به شکل بایت در می آیند. نرخ بالای انتقال از طریق انتقال هریک از بیت های دیجیتال در یک بازه زمانی بسیار کوتاه و به عبارت دیگر با فرکانس بالا حاصل می شود.
این کار ممکن است خیلی هم خلاقانه نباشد؛ اگر شما مقدار زیادی بیت های داده داشته باشید و بخواهید آن ها را از یک محل به محل دیگر انتقال دهید انتقال آن ها در بسته های بزرگ بسیار بهتر از انتقال این داده ها به صورت یکی یکی از طریق یک کابل است. برای انجام این کار شما از یک باس موازی( به عنوان مثال 8 قطعه مجزا سیم برای مشخص کردن صفر و یک) استفاده می کنید و بدین ترتیب می توانید کل بایت های اطلاعات را در یک زمان منتقل نمائید. و در ایام گذشته و در زمانی که ترانزیستورها بسیار آهسته بودند و انرژی زیادی مصرف می کردند سیستم های سریع انتقال داده ها موازی بودند و ارتباطات سریال برای سیستم های کند اما قابل اطمینان که در آن ها پهنای باند اهمیت زیادی نداشت نگه داشته می شد. اما ترانزیستورهای مدرن می توانند با مصرف انرژی اندک، بسیار سریع تر کار کنند، هزینه آن ها تقریباً صفر است و استفاده از این ترانزیستورها در ارتباطات سریال فرکانس بالا در مقایسه با ارتباطات موازی ارزان تر تمام می شود. استفاده از آن ها ساده تر هم هست: سیستم های موازی انتقال اطلاعات وقتی به سرعت های بالا می رسند از مشکلات مربوط به تداخل امواج و همزمان سازی رنج می برند به همین دلیل است که ATA سریال جایگزین ATA موازی در دیسک های سخت و PCI Express جایگزین PCI معمولی در کارت های توسعه داخلی پی سی ها شده است. سیم های کم تر به معنای کابل های باریک تر با امکان کنترل ساده تر است.

کانکتورها
 

اگر به یک کانکتور USB استاندارد( کانکتور تختی که به پی سی متصل می کنید) نگاه کنید یک سؤال بدیهی در ذهن تان شکل می گیرد: اگر USB یک سیستم سریال است برای کار کرد خود تنها به دو سیم نیاز دارد یکی برای سیگنال و یکی برای اتصال زمین اما در واقع دارای کانکتورهای چهار پینی است به اضافه سپر بیرونی آن که به زمین متصل می شود و در مجموع 5 سیم را ایجاد می کند. اگر از بالا به یک کانکتور USB نوع A نگاه کنید کانداکتور سمت راست فراهم کننده انرژی است و یکی دیگر که در سمت دیگر قرار گرفته کانکتور اضافی زمین است. اما هنوز هم یکی از دو کانکتور میانی بلااستفاده به نظر می رسد.

سیگنال دهی متفاوت
 

در واقع، USB برای انتقال داده ها فقط از یک سیم استفاده نمی کند بلکه در تکنیکی به نام سیگنال دهی متفاوت یا differential signaling از دو سیم بهره برداری می نماید؛ به همین دلیل است که در مجموع 5 کانکشن دارد. از این سیم ها با عنوان -Data و Data+ یاد می شود که داده های مشابه را در زمان مشابه حمل می کنند بنابراین کانکشن یک شمای ارتباطی سریالی واقعی پیدا می کند اما سیم Data- نشان دهنده یک 1 منطقی با ولتاژ منفی است که آن را به تصویر آینه ای سیم Data+ تبدیل می کند. سپس وسیله دریافت کننده داده ها را با در نظر گرفتن اختلاف بین آن ها از نو می سازد. از هر گونه تداخلی که در مسیر رسیدن به وسیله گیرنده توسط سیم ها دریافت شود بر روی هر دو سیم مشابه خواهد بود اما به دلیل این که این، تفاوت بین این دو است که داده های واقعی را شکل می دهد، این تداخل به شکل مؤثری کنسل می شود.

ارتباط سریال واقعی
 

برخی از پروتکل های سریال، به عنوان مثال RS232 قدیمی داده ها را به شکل سریال منتقل می کنند اما دارای پین های متعدد و اختصاصی زیادی برای وساطت بین دو انتهای گیرنده و فرستنده هستند. اما USB واقعاً یک سیستم سریال است زیرا فقط یک مسیر تک بیتی برای داده ها وجود دارد. این بدان معنا است که USB( حداقل در نسخه های 1.1 و 2 ) تنها یک سیستم half-duplex است: یک سیستم ارتباطی دو طرفه که در هر لحظه معین، یک وسیله در حال گوش کردن است و فقط یک وسیله می تواند حرف بزند. وقتی که حرف زدن گوینده به پایان می رسد شنونده مجبور است از همان دو جفت سیم برای پاسخ استفاده کند. در این روش برای حفظ یکپارچگی و همزمانی و تصحیح خطاها حتی به سطوح بیش تری از هوشمندی نیاز است.

یکی از بزرگ ترین جذابیت های USB، کانکتورهای استاندارد شده آن است که به صدها نوع ابزار و وسائل جانبی اجازه می دهد فقط از تعداد اندکی کابل استفاده کنند. برای این که متوجه تفاوت یک USB host با یک peripheral را درون یک peripheral نزنید، باید بدانید که دو طرف یک کابل USB همیشه با هم تفاوت دارد. دو نوع اصلی، کانکتور " A-type" downstream؛ کانکتور عریض و مسطح که به پی سی متصل می شود و کانکتور چهار گوش upstream است که به وسائل جانبی نظیر چاپ گرها متصل می شود. دو نوع رایج دیگر عبارت اند از کانکتورهای Mini و Micro، قسمت فوقانی کانکتور Mini کمی باریک تر است در حالی که کانکتور Micro ضخامت بیش تری دارد.
منبع: بزرگراه رایانه، شماره 129