基于FPGA的嵌入式系统USB接口设计

[10-10 20:38:44]   来源:http://www.88dzw.com  单片机学习   阅读:8119

文章摘要:摘要:设计基于FPGA的IP-BX电话应用系统,用于传统的电话网络(PSTN)与PC机之间的接口连接。USB2.0接口器件EZ-USB FX2 CY7C68013A-56工作在slave FIFO模式,为基于FPGA的嵌入式系统与PC机之间提供数据和命令通道,从而可满足PC机与FPGA之间数据与命令的高速传输,实现PSTN与PC机之间的电话通信。硬件调试结果表明系统工作稳定,通话质量满足要求。关键词:接口;FPGA;USB2.0;slave FIFO 通用串行总线USB(Universal Serial Bus)是应用于PC领域的接口技术,已得到广泛应用。USB2.0已成为目前电脑中的标

基于FPGA的嵌入式系统USB接口设计,标签:单片机开发,单片机原理,http://www.88dzw.com

摘要:设计基于FPGA的IP-BX电话应用系统,用于传统的电话网络(PSTN)与PC机之间的接口连接。USB2.0接口器件EZ-USB FX2 CY7C68013A-56工作在slave FIFO模式,为基于FPGA的嵌入式系统与PC机之间提供数据和命令通道,从而可满足PC机与FPGA之间数据与命令的高速传输,实现PSTN与PC机之间的电话通信。硬件调试结果表明系统工作稳定,通话质量满足要求。
关键词:接口;FPGA;USB2.0;slave FIFO

    通用串行总线USB(Universal Serial Bus)是应用于PC领域的接口技术,已得到广泛应用。USB2.0已成为目前电脑中的标准扩展接口。本系统设计的目的在于为公共交换电话网络(PSTN)和PC机之间提供一个数字接口,设计中PC机是主机,基于FPGA的嵌入式系统是USB设备。该系统是IP-PBX的简化系统,大量工作由PC的服务器完成,而这里重点介绍以FPGA为控制核心的USB接口设计。

1 系统结构设计
    该系统通过TRM(Telephone Response Module)和PC服务器实现PSTN网络和Internet网络之间自由、高效通话。图l为整个系统结构示意图。


    系统工作过程:当有来电时,DAA向FPGA申请中断。FPGA收到中断后,使用USB的中断传输向主机报告有外接来电,则PC的应用软件会提示用户选择摘机或拒绝。摘机后,FPGA在接收到命令后就会接通电话,然后语音数据通过USB的同步传输进行双向传送。当用户向外拨号时,其过程与来电时的情况是相同的。

2 系统硬件模块设计
2.1系统硬件框图
    本设计采用FPGA作为核心控制器件,其控制对象是USB2.0接口器件EZ-USB FX2 CY7C68013A-56。图2为EZ-USB器件工作在Slave FIFO模式下时FX2 USB和FPGA的典型电路连接图。

www.88dzw.com
    USB总线驱动(USBD)是在主机控制器驱动和USB设备驱动之间的模块,它对应USB协议的USBD,在Windows系统中由USBD.SYS模块提供。它是在某一操作系统上对USB总线和协议提供支持的软件,独立于USB设备和USB设备驱动,并对它们进行控制和提供统一编程接口。
    USB主控制器驱动程序(HCD)处于最底层,它负责对主机控制器进行抽象和对USB提供低级支持。
3.3 PC端的软件设计
    PC端的软件设计采用面向对象程序设计,分为核心类(包括Provider,Data,Net)和应用类(包括UI,Call,Record)。其中核心类提供对硬件、操作系统和网络环境的支持,应用类在核心类的基础上提供对用户操作的支持。Provider类定义对USB设备的读写操作,提供读取数据方法(readusb())和写数据方法(writeusb());Data类包括地址数据(Address)、音频数据(Audio)和控制数据(Command)的定义,并提供数据的分解方法(Decompose())和组合方法(Compose());Net类提供对网络的支持,包括网络协议的选择和数据的接收与发送。UI类提供对用户界面的支持,包括窗口、对话框等,实现基本用户框架与应用入口;Call类提供通话功能;Record类则提供电话录音功能;根据不同应用要求,可扩展其他应用类。具体结构如图5所示。

[1] [2] [3]  下一页


Tag:单片机学习单片机开发,单片机原理维修教程知识 - 单片机学习