论文部分内容阅读
随着集成电路设计方法的迅速发展,基于IP(Intellectual Property)核的电路设计方法正广泛应用到各类通信接口电路设计中,该方法不仅能提高设计效率、缩短产品的设计周期,而且所建立的IP库能为今后的设计降低成本。采用CPCI(Compact Peripherial Component Interface)总线的通信板卡被广泛地应用在军事、工业控制、电信等领域。它兼容PCI总线,且具有传输速度快、可靠性高、兼容性好等特点,但是基于CPCI总线的通用串行通信接口卡,大多采用国外的芯片,昂贵的价格导致设计成本很高,关键是缺乏自主知识产权。本论文所进行的基于FPGA开发的CPCI总线多功能卡及WDM驱动程序设计属于自主研发,因而具有现实意义和实际应用价值。论文首先对CPCI总线协议以及UART数据传输格式及两个软核的功能和结构进行深入的分析,详细讨论了各功能模块的设计与实现方法;并在PCI软核设计中考虑可靠的代码设计,为了解决PCI接口与用户接口之间的不同时钟域之间数据的传输,提出了采用改进型格雷码指针方式和同步器并用的设计方法实现异步FIFO。另外,在UART的动态扩展电路中提出了一种即节省中断资源又保持实时性和高可靠性的中断管理机制;接着利用QuartusII工具分别对两个软核进行了功能仿真以及两个软核综合之后的时序仿真,并通过实现PCI总线多端口通用串行通信卡的硬件电路设计,采用逻辑分析工具SignalTap II对验证板进行了验证,仿真和验证结果都表明所设计的两个软核分别符合PCI总线规范V2.2版本和UART数据传输协议;另外,讨论了在验证板PCB布线中的关键问题;最后,对使用WDM技术开发设备驱动程序进行了论述,开发了在Windows2000下具有即插即用的PCI总线的多串口卡驱动程序,并编写了相应的应用程序对其进行测试。测试结果表明该通信卡能被PC机识别并得到分配资源空间,同时在设备管理器中枚举出多个串口。通过应用程序的连续测试,显示数据传输正确且系统硬件电路和驱动程序工作正常,从而进一步证明了本文设计的两个软核是可用的,通过复用软核的方法实现多串口的动态扩展是可行的。基于FPGA实现的PCI总线接口IP核和UART核而设计的通信卡具有很好的灵活性和核的可移植性,该设计方法在相关集成电路设计领域具用较好的参考和应用价值。