基于IP模块的PCI接口设计及FPGA实现
水线技术在这些关键路径上加入适当数量的触发器,减小 时延。软件上的一些设置也有利于提高综合后电路的频率,如状态机采用ONE HOT编码,减小FANOUT数量,屏蔽操作数共享功能等。通过上述方法,我们的设计综合后电路的频率从38MHz提升到63MHz。
综合完成后可生成用于MAXPLUSⅡ环境下布局布线的EDIF文件,如要作门级仿真,也可同时生成带延时的VHDL网表文件。在MAX-PLUSⅡ中调入EDIF文件后,设置ASSIGN菜单下相关参数并指明PCI Core的库路径。编译EDIF文件时要设置EDIF NETLIST READER为SYNOPSYS或SYNPLIFY。第一次布局布线,最好不要加入ACF文件。完成后,按要求生成PCI Core的ACF文件并放在工作目录下,加入自己的约束条件,然后进行第二次布局布线,此时应设置产生用于VERIBEST进行功能验证的VHDL网表文件。布局布线后,进行时间参数分析。我们的设计结果PCI时钟为30MHz,CPU时钟为57MHz。
3. 设计验证
设计验证包括静态时序分析,功能验证及板级验证。静态时序分析用于分析建立/保持时间,时钟到输出时间等时间参数是否满足PCI规范。33MHz、32位的PCI规范要求建立时间小于7ns,保持时间为0ns,时钟到输出时间小于11ns,分析时必需考虑触发器的影响,对关键路径加以细致入微的计算。MAXPLUSⅡ提供了比较好的静态时序分析功能,设计工程师负责设置并分配时间参数,软件计算后给出分析结果,如果不满足要求,可在重新布局布线时加上相关约束条件。时序分析结束后,还需进行功能验证,在VERIBEST环境下对布局布线后生成的VHDL网表仿真,此时应选择OPEN POST_LAYOUT SIMULATOR进入仿真器。VERIBEST会自动生成VHDL格式的端口映射文件,并自动关联SDF文件,用户无需额外设置。此时的功能仿真,调试相对较难,信号间关联关系可通过VHDL网表文件查询。
基于PCI Core的FPGA设计的板级验证可考虑采用Altera公司提供的PCI通用开发板,该板支持Altera所有的PCI MegaCore模块,用户可通过板上的SDRAM,PMC插槽,RS232端口实现用户逻辑与PCI Core的接口,也可以利用板上PROTOTYPE区实现用户逻辑的功能。PCI开发板演示软件可以显示数据传输速率,也可用于调试,配置PCI Core。
基于IP模块的PCI设计为用户在FPGA目标器件上实现PCI接口提供了一种有效的途径,设计工程师可以将主要精力集中于非PCI部分,通过将FPGA厂商提供的IP模块与原理图、状态机及HDL语言等设计方法有机的结合,采用层次化结构,在功能强大的EDA软件环境下,于较短的时间内完成复杂电子系统的设计。
- 用大电流LDO为FPGA供电需要低噪声、低压差和快速瞬态响应(08-17)
- 基于FPGA 的谐波电压源离散域建模与仿真(01-30)
- 基于FPGA的VRLA蓄电池测试系统设计(06-08)
- 降低从中间总线电压直接为低电压处理器和FPGA供电的风险(10-12)
- FPGA和功能强大的DSP的运动控制卡设计(03-27)
- DE0-Nano-SoC 套件 / Atlas-SoC 套件(10-30)