تحقیق در مورد پردازش در كامپيوتر
قسمتی از متن:
بافرهاي داده USB
كنترلر USB ، بايد بافرهايي براي ذخيره دادههايي كه دريافت ميكند يا دادههايي كه آماده فرستادن روي باس هستند، داشته باشد. بعضي از تراشهها مانند NET2888 محصول NetChip ، از رجيسترهاي به عنوان بافر استفاده ميشكند. در حالي كه برخي ديگر ، از جمله EZ-USB شركت سيپرس از بخشي از حافظه داده به عنوان بافر بهره ميبرند.
رجيسترهايي كه دادههاي رسيده يا منتقل شده را نگهداري ميكنند، عموماً داراي ساختار FIFO (اولين ورودي، اولين خروجي) هستند. در هر خواندن از يك FIFO ، بايتي كه بيشتر از همه در حافظه بوده است بازگردانده ميشود. با هر نوشتن به روي FIFO ، بايت بعد از همه بايتهايي كه در FIFO، محلي را كه داده بعدي در ن قرار دارد نشان ميدهد.
در تراشههاي ديگر، مثل سري enCore شركت سيپرس، بافرهاي USB در حافظه داده جاسازي شدهاند و برنامه تراشه هر موقعيت را براي نوشتن يا خواندن از آن انتخاب ميكند و اشارهگري كه به طور خودكار افزايش يابد تا محل دادة بعدي را مشخص كند. وجود ندارد. بايتهاي درون بافر فرستنده USB از پايينترين آدرس به بالاترين آدرس نوشته ميشوند و بايتهاي بافر دريافت به ترتيب رسيدن، از پايينترين آدرس به بالاترين آدرس ذخيره ميگردند. اين بافرها ساختار FIFO ندارند ولي گاهي با اين نام خوانده ميشوند.