首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于EP2SGX系列FPGA的PCI接口设计
来源:本站整理  作者:佚名  2009-12-02 09:22:13




    PCI总线是同步总线,时序要求比较严格,比如:Tval最大为11 ns,Tprop最大为10 ns,Tsu最小为7 ns,Th为0 ns,此外,PCI总线接口还需要一定数量的宏单元和I/0引脚。在本设计中,为了同时实现光纤数据传输等其他的逻辑功能,选用了ALTERA公司StratixIIGX系列中型号为EP2SGX90EF1152的一款FPGA芯片。该芯片主要性能如下:片内90 960个逻辑单元;4.5 Mb的RAM资源;支持12路高速串行收发器通道,每路传输速率高达6.375 Gb/s;接口电平支持:LVTTL、LVDS、LVPECL。3.3-V PCI等众多I/O标准。EP2SGX系列芯片内部有专门支持PCI电气特性的区域(Bank),非常适合于PCI接口的开发。


3 PCI接口设计实现
    本设计利用ALTERA公司的QuartusIl7.2软件和硬件描述语言,采用自顶向下的设计方法进行PCI接口的逻辑设计,并利用QuartusII软件对设计进行了功能和时序仿真。
    设计的具体流程如下:首先从总体上考虑:PCI接口作为一个功能模块,嵌入在FPGA内部,内侧面向用户逻辑,外侧通过芯片的I/O管脚与PCI总线相连。在用户端,需要把复杂的PCI总线命令转换为便于用户使用的类似ISA总线的命令格式,把地址线与数据线分离,并产生单独的读写控制信号。其次,根据总体要求,进行顶层设计和内部模块划分。最后,对具体的功能模块用软件编程实现并进行功能仿真。
    本设计中PCI接口的总体框图如图4所示。由图4可知,PCI接口主要由地址/命令锁存和译码、内部通信、外部通信和总线状态机、中断处理等模块组成。

3.1 地址/命令锁存和译码
    由于PCI总线为地址和数据复用型总线,在使用中需将地址和数据进行分离,首先要对PCI总线上的32位地址/数据总线锁存。译码是对来自主机的PCI总线命令信号CBE[3..0]和IDSEL信号进行识别,并相应地向内部逻辑发出配置空间读写操作、I/O读写操作、存储器读写操作等信号。
3.2 外部通信
    外部通信接口主要完成对PCI总线的应答,并发出相应的信号。对于渎写操作,接口发出DEVSEL#信号响应PCI的FRAME#信号,完成握手。PCI协议规定了在交易期间对地址/数据总线和命令/字节使能总线进行奇偶校验。读交易期间,接口被要求驱动PAR信号线;写交易期间,目标将计算AD[31..0]和CBE[3..0]上的奇偶性,并把PERR信号送给PCI。
3.3 内部通信
    内部通信接口主要产,丰面向用户端,便于用户使用的一信号,包括复位信号、分离的读和写信号、地址总线、32位的数据读写总线。
3.4 总线状态机
    该模块足本设计的关键部分,其主要功能是根据PCI协议产生总时序来控制总线交易。总线状态机包含的状态主要有总线空闲状态、总线停靠状态、主设备数据传输状态、从设备数据传输状态、配置空间读写状态、目标I/O空间读写状态、主设备读写状态、总线翻转状态、数据传输终止状态等。以上各状态主要依据输入的PCIRST、FRAME#、IDSEL、CBE [3..0 ]、GNT#、IRDY#、TRDY#、STOP#等信号变化进行状态转换。
3.5 中断处理
    本模块主要实现各种外部中断源的输入处理、中断允许寄存器和中断状态寄存器的控制和管理、INTA#信号的输出处理等。


4 工具软件在PCI总线调试中的使用
    在板卡的调试过程中使用了WinDriver软件,该软件是美国Jungo公司出品用于编写驱动程序的一种工具,是主要针对PCI、ISA、USB的一种开发工具。该软件对于调试PCI板卡很方便。用户不需要复杂的编程就能控制PCI没备进行读写操作,从而在硬件刚设计调试时,就能测试板卡性能的好坏,可测试的功能具体包括VenderID、Device ID的识别、基地址的分配、中断的分配、I/O端口的读写测试等。

上一页  [1] [2] [3] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:204,875.00000 毫秒