摘要:本文设计了一个基于FPGA的USB接口控制器(controller_372),用于管理USB总线控制芯片CH372。用户可以直接在FPGA的系统时钟频率下实现USB的数据传输,而不必关心CH372苛刻的时序要求。该控制器(controller_372)根据CH372的指令集,建立了自己的指令集和中断方式,用户对controller_372发出指令后即可等待controller_372返回的中断,一旦中断返回即表示指令执行成功,无需关心对CH372所做的实际具体操作过程,大大简化了用户FPGA主状态机的设计。论文给出了controller_372的设计和使用方法,详细地介绍了contlroller_372的指令集和中断产生原理。本设计在专用的Cyclone EP1C12开发板上进行了功能验证,具有使用方便可靠和移植性强的特点。