新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 单片机总线接口芯片及其ISA模式应用

单片机总线接口芯片及其ISA模式应用

作者:时间:2012-02-20来源:网络收藏

2.3 串行EEPROM的配置

相比,PCI支持三个物理空间:存储器地址空间、I/O地址空间和配置空间。配置空间是PCI所特有的一个空间,所有的PCI设备必须提供配置空间。串行EEPROM存储了PCI9052重要的配置信息,如设备号DID、制造商号VID、子设备号SDID、子制造商号SVID、中断号、设备类型号、局部空间基地址、局部空间描述符、片选响应以及局部响应控制CNTRL等信号。EEPROM的内容非常重要,它直接关系到整个板卡能否正常工作,在设计时要非常注意。

系统加电时,通过PCI的RST复位以后,PCI9052首先检测EEPROM是否存在。如果检测到EEPROM首字不是FFFFH,PCI9052将依次读取EEPROM的内容来初始化内部寄存器。PCIBIOS根据配置寄存器的内容进行系统资源分配,这样,整个PCI设备的资源才不会发生冲突,从而实现了PCI的即插即用的特性。

PCI9052的内部寄存器为总线的设计与实现提供了最大的灵活性,这些寄存器可以分为两类:PCI配置寄存器和局部配置寄存器。PCI配置寄存器有6个基地址寄存器,这些基地址是在系统中的物理地址。其中,基地址0和基地址1分别是以内存方式和I/O方式访问局部配置寄存器的基地址,基地址2和基地址3分别映射到局部基地址0和局部基地址1。局部总线配置寄存器用于设定局部总线的工作方式,如基地址和地址范围等。实际上,9052在PCI和总线之间起到一个翻译作用,要访问端地址只需对PCI端基地址进行操作就可以了。对于我们的设计,EEPROM的值及装入顺序如表1所示。

24.jpg

表1中,DID和VID是PLX公司的标志,一般不能更改。操作系统就是通过DID、VID、SDID、SVID及设备类型码来识别不同厂家的设备的。

在ISA下,局部空间1必须映射为I/O空间,局部空间0必须映射为内存空间。另外要注意:在ISA下虽然不存在片选信号,但我们必须设置它,使它的值和局部空间1的基地址和范围相匹配,否则,局部地址空间无法响应PCI的控制指令。同样,如果用到局部地址空间0,也要设置它的值。

对于PCI9052,它的配置寄存器的内容是在复位时通过串行EEPROM加载的。在ISA下,串行EEPROM一定不能省略,我们一般使用松下公司的NM93CS46或与之兼容的存储器。配置寄存器的内容编写完以后,可以用编程器写入EEPROM中。另外,也可以通过主机在线烧写,但由于各种原因,成功率很低。

3 板卡调试

板卡做好以后,就可以插入主机板的PCI插槽中进行调试。在调试的过程中,为了跟踪信号的变化通常要用到数字示波器,另外,还需要一个软件调试工具。PLX公司提供了一个905X的专用调试软件PLXmon,我们可以从它的网站免费下载。PLXmon包括以下功能:PCI总线的探测与选择;配置寄存器的检查和修改;内存空间的显示、修改和填充;EEPROM内容的读写等。利用这个工具,我们可以很清楚地看到EEPROM的内容以及PCI配置寄存器和局部端配置寄存器的内容,另外,用户还可以进行内存和I/O端口的读写。

此外,我们也可以用WinDriver或SoftICE软件进行板卡调试,但总的来说,使用起来都不如PLXmon方便。有了开发工具,设计者就可以根据板卡的具体要求进行调试了。

4 驱动程序的编写

板卡调试成功以后就可以编写驱动程序了。目前,编写驱动程序最常用的工具是VtoolsD和WinDriver,它们都是专门的驱动开发工具。尤其是WinDriver,开发人员不需要掌握WINDOWS驱动编程的知识,利用它的向导工具,能很快地开发出高质量的驱动程序。

在Windows9x环境下,操作系统统一管理硬件资源,出于安全性考虑,ring3层程序不能直接访问硬件(I/O端口访问除外),因此,必须编写运行在ring0层的虚拟设备驱动程序(VxD)来响应系统底层的中断。如果板卡只有I/O操作,而没有用到中断和内存操作,可以不用编写驱动程序,直接在程序里实现输入输出就可以了。编程的方法是先找到板卡,再找到卡中与我们用到的局部空间相对应的PCI基地址,然后就可以根据要求对这个基地址进行操作了。如果在WINDOWS98以上版本的操作系统下,就要编写WDM设备驱动程序了。

5 结束语

由于PCI总线数据吞吐量大,传输速率高,在微机设计中,基于PCI总线的设计成为主流。PCI9052是一款优秀的PCI,设计者用它可避免直接面对复杂的PCI总线协议,降低了设计难度,从而使用户可以集中精力解决具体的问题,缩短了开发周期。实践证明,PCI9052为开发作为总线接口目标设备的产品,特别是对基于ISA总线的接口板向PCI的转换提供了极大的方便。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭