《现代电子技术》2006年第16期摘录:程维等:基于【)SP技术的接触
-
如发现有乱码,请点击下面链接浏览原文
正文摘录:
程维等:基于【)SP技术的接触网数据采集卡的开发SRAM采用CypressSemiconductor生产的CY7C1021V33,他是64k×16位高速异步SRAM,存取时间为12ns,作为系统的数据存储器和程序存储器。当系统上电时【)SP将存储在FLASH里的程序读入SRAM高速运行。(;PI。D主要用作FI。ASI-{和SRAM的逻辑控制。1.2串行接收模块设计串行接收模块采用TI公司的Tu6(2550芯片,TLl6(;550是性能很高的异步通信芯片,能够对从激光雷达接收的数据进行串行至并行的转换,对从I)SP接收的数据进行并行至串行的转换,从而实现DSP与激光雷达之间的串行通讯。I)SF’通过Tu6C550扩展RS232串口与激光雷达进行串行通讯的系统框图如图2所示。DsP}++{TLl6c550k—-一MAX232f++I激光雷达图2串行接收模块系统框图电路中MAX232主要完成RS232电平的转换。激光雷达系统在给【)SP传输数据时,MAX232接收自激光雷达采集的数据,然后将电平转换后的数据传送至Tu6C550,在完成串行数据转换为并行数据后,并行数据并行传至【)St’中进行相应的处理。1.3PCI接口的实现目前实现.PCI接口的主要有2种办法:(1)用CPI。D/FPGA实现该方法实现的PCI接口的优点在于其灵活的可编程性。首先PCI接口可以依据插卡功能进行最优化,而不必实现所有的PCI功能,这样可以节约系统的逻辑资源;其次可以将PCI插卡上的其他用户逻辑与PCI接口逻辑集成在一个芯片上,实现紧凑的系统设计;再者当系统升级时,只需对可编程器件重新进行逻辑设计而无需更新PCB版图。但该法相对比较复杂,实现难度大。(2)用专用PCI接口芯片实现专用PCI接口芯片可以实现完整的PCI主控模块和目标模块接口功能,将复杂的PCI总线接口转换为相对简单的用户接口。厂商对PcI总线接口进行了严格的测试,用户只要设计转换后的总线接口即可。考虑到系统开发的成本和周期,用专用接口芯片实现PCI总线的接口较理想。PCI2040是T1公司设计的专门用来完成C5000系列和C6000系列【)St’和PCI总线进行接口的专用芯片,他符合PCI局部总线2.2规范,同时提供了1个串行R()M接口,1个通用输入、输出接口和1个通用总线接口(可用来提供JTAG接口),他可以兼容3.3V和5V,以适应不同的PCI总线电压。PCI2040可以通过8b的HPI接口与TMS320(:54X或16b的HPI接口与TMS320(:6X实现无缝连接。PCI2040与(254.02之间不需要信号的电平转换,也不需要额外的控制逻辑电路,接口电路十分简单。其硬件接口连】8接如图3所示。图3C5402HPI口与PCI2040连接示意图2数据采集卡的软件设计数据采集卡的软件包括3部分:C5402数据采集处理程序;数据采集卡的Windows驱动程序;计算机应用软件部分。其中C5.402的程序采用CCS集成开发环境,采集卡驱动程序采用JLIN(X)公司的WinI)rivet。程序进行开发。2.1PCI设备windows驱动程序设计PCI2040实现对底层硬件控制的关键在于驱动程序的开发。只有编写了正确合理的驱动程序,才能实现底层硬件和上层软件的数据交换。所以,要通过HPl口实现与【)SP的通信,需要编写驱动程序。如果直接使用DDK编写PCI设备的驱动程序,需要大量windows底层的知识,难度比较大。因此可以使用别驱动程序的编写工具,如Vtools和win[)rivei‘。我们选用了’Win[)river。win—Driver与其他驱动程序开发工具的最大不同是他可以在编程者不太了解windows内核的情况下编写驱动程序。这样,可以把精力主要放在功能的实现上,同时用Win—Driver写成的驱动程序只需做很少的修改就能很方便地适用于各种操作系统,如windows9x,Windows2000,windowsNT以及I。inux等。利用WinDri’ver开发驱动程序的具体步骤如下:(1)进入win[)rivei’后,选择“Createanewdriver‘project”选项,弹出图4所示界面。(2)在图4左边的设备选择栏中选择“PcI:TIPCI2040PCI一【)St’Bridge-(;ontroller”,然后点击右边的“(;enerate.INF、file”创建采集卡的驱动程序并安装。(3)驱动程序安装完成后,双击设备选择栏中的“PCI:TIP(;1204.OPCI—I)St’Bridge·(20ntroller’”进入PCI2040的开发工具界面,对PCI卡上的配置寄存器,I/()空间,内存范围,中断,片内寄存器进行设置。(4)选择“(}enerateCode'’选项,生成源代码,创建可
阅读此文(图):
点击此处在线翻阅