我是一名嵌入式系统工程师,我们公司正在计划一个USB 3.0(主机和设备)协议合规套件/后硅验证,涵盖功能测试案例。实际上,我之前曾在低速外设(如I2C,SPI开发裸机(没有任何操作系统)测试用例)的功能验证上工作,在一个简单的微控制器上运行。我不确定我是否可以用USB做同样的事情,因为我认为协议本身很复杂。是否需要使用OS或RTOS开发测试用例?功能测试用例可以在单处理器系统上运行吗?我知道linux内核和U-BOOT有USB支持。如果使用内核更好,内核中现有的USB堆栈如何用于编写测试用例?有人能说清楚这个吗?
答案 0 :(得分:0)
USB 3.0(特别是超高速)并不是一个简单的块,它的验证涵盖了整个硬件和软件规格以及互操作性测试。见http://www.usb.org/developers/compliance/
如果您是依赖此块的硅片验证的人,那么您真的需要聘请具有这方面经验的专业服务公司,否则您的公司将承担运送产品的风险无法获得徽标(或更糟)。你应该在录音前搞定它们,这样你的公司就可以减少非常昂贵的错误。而且我不是这样说来侮辱你,而是告诉你,如果你在询问它堆栈溢出,你就没有能力在不久的将来完成这项工作。
但是,当我为ASIC进行USB2.0高速认证时,我们必须在被测设备上有一个功能堆栈(我们的芯片,这是一个带集成USB PHY的ARM),我们运行了USB认证在Windows PC上测试,附带一组特定的USB外围设备("金树"),另外我们还要做眼图等,以验证我们的波形是否合规。我们也使用Mac进行了测试,但这更像是一个营销决策,而不是合规性问题。