3 寄存器配置
设计好接口连接,接口设计工作只完成了50%。由于PCI9054是通用PCI接口功能芯片,它的功能还不一定能够满足用户的需求,所以还要进行功能寄存器设置,以使接口电路具有特定的功能。寄存器的配置包括E2PROM初始化,以及Local功能寄存器和PCI配置寄存器的配置。
3.1 E2PROM初始化
在计算机的加电自检期间,PCI总线的RST信号复位,PCI9054内部寄存器的默认值作为回应。PCI9054输出本地LRESET信号并检测串行E2PROM。如果串行E2PROM中的前33个比特不全为1,那么PCI9054确定串行E2PROM为非空,用户可通过向9054的寄存器CNTRL的CNTRL29位写1来加载E2PROM的内容到PCI9054的内部寄存器,配置的信息(设备识别号,供应商代码号,Local总线三个空间的大小以及三个空间的基地址等)事先要利用编程写入配置寄存器中。
3.2 PCI配置寄存器的配置
配置PCI配置寄存器比较简单。主要是填写生产商ID号、器件ID号、类码子系统ID号和子系统生产商ID号。对于PCI9054,其生产商ID号为10B5,器件ID号为9054,子系统号ID为9054,子系统ID号为10B5,类码号为0680,表示其为桥设备中的其他桥设备类。
3.3 本地配置寄存器的配置
对于本地配置寄存器的配置就是对本地地址空间及其本地总线属性的配置。这些配置是根据实际开发的硬件板卡的硬件资源进行配置。设备人员配置寄存器的任务就是要把某一段本地地址应设为PCI地址。也就是当主机CPU要访问本地地址空间时,要知道其对应的PCI总线地址。
4 电路板实现与测试
PCI规范对扩展板的机械和电气方面都有一系列的规范要求。在布板和绘图的过程中需要特别注意一些技术要求,布出来的板子工作起来才会稳定可靠。如:除了PCI协议中的信号线外,连接器本身的信号引脚值得注意,如板卡存在信号PRSNT1和PRSNT2;电源的退耦、PCI协议信号线的走线长度限制和扩展板上信号线的负载要求等都是在布板过程中特别应该重视的,都要满足PCI电气规范的要求。
该设计中严格按照规范要求设计,PCI连接器上的PRSNT1而开路,PRSNT2接地,表示本板卡的最大功耗为15 W。元件的退耦电容采用0.1μF,电源的滤波电容采用10μF的电解电容。采用存储器映射的传输方式,本地时钟采用20 MHz时,通过测试,传输速率能够达到20 MB/s以上,提高本地时钟的频率,数据传输率还能够更高。
5 结 语
这里实现的PCI数据传输接口,有效地解决了系统的数据传输问题,有利于数据的实时处理,获得了比较满意的效果。随着信号处理技术的发展,这种基于PCI的数据传输接口有着十分广阔的应用前景。