Data bus — protsessor, xotira va periferik qurilmalar orasida ma’lumot bitlarini tashiydigan umumiy signal yo‘llari to‘plamidir. U address bus manzilni, control bus esa amal turini bildiradigan klassik tizim modelining ma’lumot qismidir. Zamonaviy qurilmada bu funksiyalar bitta parallel shinada, point-to-point linkda yoki paketlashtirilgan interconnectda amalga oshirilishi mumkin.
Kenglik va uzatish
Bus width bir transferda nechta bit ko‘chirilishini bildiradi. 32-bit data bus nazariy jihatdan bir siklda 32 bit, 64-bit bus esa 64 bit uzatadi. Amaldagi bandwidth faqat kenglikka emas, clock tezligi, har cycle’dagi transferlar, protokol overhead va kutish holatlariga ham bog‘liq.
Synchronous bus umumiy clock bo‘yicha ishlaydi. Asynchronous bus request va acknowledge signallari bilan qatnashuvchilar tezligini moslashtiradi. Double data rate signalning ko‘tarilish va tushish qirralarida transfer qilib, bir xil clock chastotasida samarali tezlikni oshiradi.
Yo‘nalish va boshqaruv
Data bus ko‘pincha bidirectional: protsessor xotiraga yozganda bir yo‘nalishda, o‘qiganda qarama-qarshi yo‘nalishda ishlaydi. Bir vaqtning o‘zida faqat ruxsat berilgan transmitter chiziqlarni boshqarishi kerak. Aks holda bus contention yuz berib, noto‘g‘ri qiymat yoki apparat zarari paydo bo‘lishi mumkin.
Tri-state chiqish faol signal bilan birga yuqori qarshilik holatini taklif qilib, bir nechta qurilmaning umumiy chiziqni bo‘lishishiga imkon beradi. Chip ichidagi ko‘p zamonaviy interconnectlarda esa multiplexer va point-to-point kanal ishlatiladi; tashqi ko‘rinish klassik shared busdan farq qiladi.
Protsessor va xotira
CPU load bajarganda address bus yoki interconnect orqali manzil, control signal orqali o‘qish talabi yuboriladi; data bus javob qiymatini qaytaradi. Cache ko‘p murojaatni yadro yaqinida ushlab, sekinroq tashqi busga bo‘lgan talabni kamaytiradi. Cache line ko‘pincha bir nechta bus beat orqali ko‘chiriladi.
Memory controller DRAM timing va channel tashkilini boshqaradi. ECC qo‘shimcha bitlar orqali ayrim xatolarni aniqlaydi va tuzatadi. Byte enable signal keng bus ichida aynan qaysi baytlar yozilishini ko‘rsatishi mumkin.
Unumdorlik va arbitraj
Bir nechta bus master — masalan, CPU va DMA controller — bir resursni talab qilsa arbiter navbatni belgilaydi. Priority muhim qurilmaning latency’sini kamaytiradi, lekin past ustuvor qurilmani uzoq kutdirishi mumkin. Fairness va quality of service siyosati shu muvozanatni boshqaradi.
Bandwidth hisobida nazariy maksimumdan tashqari transaction setup, turnaround, refresh va idle cycle’lar e’tiborga olinadi. Logic analyzer signal darajasini, protocol analyzer esa transaction ketma-ketligini ko‘rsatadi. Signal integrity muammolari yuqori tezlikda termination, impedance va trace uzunligiga bog‘liq bo‘ladi.
Zamonaviy talqin
PCI Express kabi serial protokollar klassik parallel bus emas, lekin tizim arxitekturasida data transport vazifasini bajaradi. Network-on-Chip paketlar orqali ko‘p yadro va acceleratorlarni bog‘laydi. Shu sabab “data bus” ba’zan fizik simlar, ba’zan esa mantiqiy ma’lumot kanali ma’nosida ishlatiladi.
Burst transfer
Ketma-ket manzillardagi bir nechta data beat’ni bitta address phase’dan keyin uzatish burst deb ataladi. U har word uchun qayta boshqaruv overheadini kamaytiradi va cache line hamda DMA ko‘chirishida samarali. Burst uzunligi target bufferi, bus protokoli va arbitration latency bilan cheklanadi. Agar boshqa master uzoq kutsa arbiter burstni bo‘lishi mumkin. Read va write kanallari mustaqil bo‘lgan protokolda javoblar ID orqali transactionga bog‘lanadi; out-of-order response’lar master tomonidan to‘g‘ri qayta tartiblanadi.
Bog‘liq tushunchalar
Address bus, Control bus, Bus width, DMA, Memory controller, Interconnect