Host Controller และ Hub อุปกรณ์ต่อพ่วงผ่านพอร์ต USB
Host Controller และ Hub อุปกรณ์ต่อพ่วงผ่านพอร์ต USB อุปกรณ์ต่อพ่วงต่างๆในปัจจุบัน ไม่ว่าจะเป็นเมาส์ คีย์บอร์ด ฮาร์ดดิสก์ Flash Drive กล้องเว็บแคม ปริ้นเตอร์ และอีกหลายๆ อย่าง ต่างก็ต้องเชื่อมด้วยพอร์ต USB ทั้งนั้น แต่อย่างไรก็ดีพอร์ต USB ที่เราใช้กันอยู่ในเวลานี้ก็มีข้อดีประการหนึ่งคือ มันสามารถรองรับการเชื่อมต่อของอุปกรณ์ได้มากถึง 127 ตัว เพียงแต่การที่เราจะเชื่อมต่ออุปกรณ์ให้ได้จำนวนตามนั้นจริงๆ มันเป็นสิ่งที่ทำได้ยากมาก
ตามข้อกำหนดของการเชื่อมต่อด้วยมาตรฐาน USB นั้น อุปกรณ์ที่เชื่อมต่อทุกๆตัวจะถูกควบคุมด้วย Host Controller (ส่วนประกอบหนึ่งที่รวมอยู่ในชิปเซ็ตของเมนบอร์ด) โดยส่วนควบคุมจะทำหน้าที่จัดสรรตำแหน่งให้กับอุปกรณ์ต่างๆ โดยใช้ข้อมูลขนาด 7 บิต ทำให้ตำแหน่งที่ใช้งานได้มีจำนวนทั้งสิ้น 128 ตำแหน่ง
แต่เนื่องจากตัว Host Controller ก็ต้องมีตำแหน่งของตัวเองเหมือนกัน ดังนั้นมันจะสงวนตำแหน่ง 0000000 ไว้ใช้เอง ส่วนตำแหน่งอื่นอีก 127 ตำแหน่งจะถูกนำไปใช้กับอุปกรณ์ที่เชื่อมต่อ
ความแตกต่างพื้นฐานระหว่าง Host Controller กับ Hub และการทำงานของอุปกรณ์
- Hub จะเป็นส่วนที่ทำหน้าที่ขยายหรือกระจายการเชื่อมต่อให้อุปกรณ์ต่างๆ สามารถส่งผ่านข้อมูลไปยัง Host Controller ได้ โดยการเชื่อมต่อแต่ละจุดจะต้องมีฟังก์ชันการทำงานอย่างน้อย 1 อย่าง แต่ละอย่างจะถูกอ้างถึงโดยใช้ที่อยู่ 1 ตำแหน่ง
- อย่างเช่นการเชื่อมต่อของ Flash Drive กับฮาร์ดดิสก์ แต่ในกรณีที่เป็นเครื่อง Multi-Function ซึ่งทำงานได้หลาย ๆ อย่าง และยังทำหน้าที่เป็น Hub ด้วย มันจะต้องใช้การอ้างตำแหน่งจำนวนมากขึ้นตามจำนวนฟังก์ชันการทำงานที่เพิ่มมากขึ้น ด้วยเหตุนี้จำนวนอุปกรณ์ USB ที่สามารถเชื่อมต่อได้มากที่สุด ถึงอาจจะไม่ใช่ 127 ตัวตามที่มาตรฐานระบุไว้เสมอไป เพราะมันขึ้นอยู่กับชนิดของอุปกรณ์ที่เชื่อมต่อด้วย
- นอกจากนั้นก็ยังต้องใช้ Hub ในการเชื่อมต่อด้วยเสมอ และ Hub แต่ละตัวก็ต้องมีการจัดสรรตำแหน่งเช่นกัน ซึ่งนั่นทำให้อุปกรณ์ที่เชื่อมต่อได้ลดจำนวนลงไปอีก และที่ยุ่งยากไปกว่านั้นก็คือ Hub เหล่านั้นจะต้องมีแหล่งจ่ายไฟเป็นของตัวเอง เพื่อให้สามารถจ่ายพลังงานให้กับอุปกรณ์ที่เชื่อมต่อได้อย่างเพียงพอด้วย