百科问答小站 logo
百科问答小站 font logo



USB芯片到底完成了哪些工作? 第1页

  

user avatar   bei-ji-85 网友的相关建议: 
      

题主是想从0开始实现一套USB控制器?还是如何操作USB控制器?

怎么实现控制器可以参考USB规范:

USB.org - USB 2.0 Documents

,规范就几百页,还只是基础规范,不建议直接搞,上手太慢,意义也不大(除非你真是想学这方面的),做产品的话更不值得,市面上有现成的东西。

如果是想知道控制器怎么操作,先看一下控制器的类型,PC的一般是:

USB 1.1 UHCI/OHCI

USB 2.0 EHCI

USB 3.0 XHCI

常见的是EHCI+UHCI/OHCI这种组合,规范网上都有(不在USB-IF网站,在各个厂商那),下一份研究一下就可以了。

嵌入式还有Synopsis和Mentor Graphics的控制器,到这俩厂商网站上找。

或者如果没有开源的限制,去看Linux实现也可以。

即使这样,也不建议直接从头开始写USB协议栈,因为USB协议栈很大,一个基本的USB实现需要包含:控制器驱动+Device框架(USBD)+至少一个Class驱动,最精简的写法估计也得上万行,并且还要把这套东西整合到原有系统的设备管理框架里,不值得从头弄。

供应商给方案就直接拿来用,没有方案找方案,尽量不考虑从头写。一般厂商给方案的时候,都附带有USB控制器的驱动,二次开发的时候一般写的都是Class驱动(简单的情况下几百行就搞定),有控制器驱动的前提下,可以考虑二次开发。

拿FPGA实现USB这个我没搞过,直观感觉是比前面的更复杂,规范就几百页,能把人搞死。




  

相关话题

  大容量移动硬盘的选择,有电源是否很重要,买8T的稳定吗? 
  如何看待台积电董事长称,全球缺芯归根结底是疫情造成的,美国不应试图转移供应链? 
  2021年还有没有大牌新款的usb录音设备? 
  孩子喜欢理论物理,可妻子希望他做程序员怎么办? 
  为什么英特尔酷睿 CPU 已经做到了 12 代,但很多人的笔记本电脑仍在使用 5 代或更早的处理器? 
  如何用U盘代替开机键? 
  如何看待上海交大建成全国最强超算,碾压哈佛、剑桥等名校? 
  为什么电脑还沿用冯·诺伊曼结构而不使用哈佛结构? 
  如何看待华为推出 990E 版的 Mate 40E,并定价 4599 元起? 
  《三体》中让你印象最深的科幻点子有哪些?以及他们的科学背景? 

前一个讨论
为什么中国办得出北京奥运会水准的奥运会,却办不出东京马拉松水准的马拉松?
下一个讨论
为什么有的USB Hub不能单独弹出某个端口的移动硬盘?





© 2024-12-22 - tinynew.org. All Rights Reserved.
© 2024-12-22 - tinynew.org. 保留所有权利