论文部分内容阅读
PCI(Peripheral Component Interconnect)总线是由Intel公司开发的一种高性能、低成本的计算机局部总线。随着PCI总线的广泛应用,PCI接口控制器己经成为各种计算机系统很重要的功能模块电路。但是,由于总线规范定义了严格的电气特性和时序要求,PCI总线接口电路的设计方法也就成为超大规模集成电路设计部门所面临的挑战性课题。
本设计来源于云南大学信息学院计算机系统结构实验室承接的云南省教育厅科学研究基金项目(项目编号6Y0046D):“基于CPID的数字系统设计关键技术研究”。
本设计根据:PCI总线规范2.3,在Quartus II开发环境下,利用VHDL硬件描述语言设计了基于FPGA的32位/33MHz的PCI接口控制器的IP软核,从而在一片FPGA芯片上实现了快速高效的从PCI接口控制器的控制逻辑。测试结果正确,在Altera公司的ACEX1K系列芯片的EP1K30QC208-2芯片上调试运行良好。
本论文专门针对IP软核的设计方法,首先根据EDA和FPGA的自顶向下的设计方法,分析了从PCI IP软核的模块功能结构划分以及时序要求,以达到IP核的可复用性。然后主要考虑PCI状态机转化为VHDL代码完成对模块功能的代码设计和测试平台的编写。最后对各个模块的集成以及整体IP软核的测试,主要通过时序仿真分析延时的影响,通过输入输出的测试数据向量分析以达到功能仿真要求。
本设计的主要内容集中于从PCI总线的规范分析、状态机设计和模块功能代码设计。重点分析了从PCI的配置空间、读写时序以及中断方式,在状态机设计时重点考虑了非法状态的软着陆以及代码设计时断言的设计技巧,这些设计技巧对其他大型接口电路的设计有直接的实际意义。
基于FPGA设计的从PCI IP软核,可以很方便的进行移植和扩展,嵌入到数字系统中作为通信接口,这样可以大大缩短数字电路的开发时间,减少PCB的面积,提高整个系统的性能,即使印刷电路板PCB完成后,也可以通过FPGA的在线可重构性,随时修改设计而不必要改动硬件设计。并且通过研究IP标准和设计方法,对以后的计算机体系结构的研究具有一定的现实意义。