美章网 资料文库 微波测量仪器内部串行总线设计范文

微波测量仪器内部串行总线设计范文

本站小编为你精心准备了微波测量仪器内部串行总线设计参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。

微波测量仪器内部串行总线设计

为降低现代微波测量仪器中硬件的复杂度及并行总线的干扰,本文设计了一种以嵌入式PC为核心,利用CPLD实现SPI串行总线通讯的仪器内部IO总线,并详细阐述了此接口系统中SPI-Master接口的IP核实现。通过SPI总线的主从配置实现仪器硬件模块的自动识别、参数配置及功能控制。该设计简捷、灵活,软硬件系统具有较高的可靠性和可扩展性,目前已成功应用于噪声系数分析仪等测量仪器中。

1.引言

现代微波测量仪器的复杂度和高性能,使得测量仪器的计算机化、模块化、集成化成为趋势(总装备部司令部通信局,信息产业部电子41研究所,现代通信测量仪器:军事科学出版社,1999)。设计一种通用、简捷、模块化、可扩展的软硬件总线平台,在微波测量仪器的研制生产过程中非常重要。面对复杂繁多的电路控制,串行总线以其较少的总线数、方便的PCB布线、灵活的编程设计等特征被越来越多的应用到测量仪器中(数字通信测量仪器:人民邮电出版社,2007),它可以容易地进行电路的增减,而不会影响网络中的其他器件,大大增加软硬件系统的可扩展性。利用成熟的计算机技术,在微波测量仪器中以嵌入式PC为核心,可以方便地进行各种接口的设计和扩展,缩短研制周期。此外,应用可编程逻辑器件,对关键技术和专用电路进行功能划分和设计,不仅减小了硬件系统的体积(赵曙光,郭万有,杨颂华,可编程逻辑器件原理、开发与应用:西安:西安电子科技大学出版社,2001),同时也能够提高仪器的性能和可靠性,使得软件系统的可维护性更强。基于上述思想,本文设计了微波测量仪器中“嵌入式PC+CPLD+串行总线”的增强型SPI总线结构模式,使用CPLD实现仪器内部SPI主从接口控制,优化了微波测量仪器电路结构的同时,满足了仪器对系列化、模块化的要求。其中基于CPLD的增强型SPI-Master接口IP软核,接口只需稍作改动即可实现IP资源复用。

2.串行总线总体设计

根据微波测量仪器硬件电路的组成和特点,设计了一种微波测量仪器内部串行总线,其系统框架如图1所示。整个内部串行总线包括核心CPU、串行总线主控制器以及硬件从控总线控制器。串行总线主控制器以SPI总线为基础,实现了一种适合微波测量仪器的增强型通信控制方式。增强型SPI主控核与ISA总线相连,在一片CPLD上编程实现。该芯片负责完成ISA到SPI总线之间的转换,实现SPIMaster接口模式,通过信号母板,为仪器从控电路板提供实现模块控制所需的所有控制模式。作为从控设备,仪器内部的每个硬件电路板上,与之对应的一片可编程逻辑器件,作为板级IO接口控制器接收、合成来自主控的串行命令。根据串行总线主控制器发送的命令信息,各从控板片内自动查询硬件ID,若某个从控电路板被选择,则继续解析接收的数据信息直至完成从控板内各硬件器件的通信控制。这种主从式识别控制模式,满足了仪器对系列化、模块化的要求,可方便的实现未来仪器硬件的扩展要求。

3.SPI总线主控接口的IP软核设计

同步外设接口(SPI)是由摩托罗拉公司开发的全双工同步串行总线。该总线通讯基于主-从配置,总线形式灵活简单,但通过约定的协议,可以实现复杂的功能,是很多微处理器、微控制器和外围设备之间通讯的一种标准,可以连接许多外围设备[4]。SPI总线传输串行数据时首先传输最高位,波特率最高可达5Mbps,具体速度取决于SPI硬件。总线有4个信号线:SCK、MOSI、MISO、SS(Motorola,Inc,SPIBlockUserGuideV02.06,2002),其中SCK、MOSI、MISO为所有的SPI接口共享。数据传输采用同步方式进行,一次可传送多个8位数据。对于没有SPI总线接口的处理器来讲,要完成对SPI器件的控制,设计花费相对较大;但如果使用一个可编程逻辑器件则完全可以实现不同总线间的数据格式转换。由于不同的处理器,其外围总线也相应不同,因此,本设计中的SPI总线主控制器在CPLD上实现,对于不同的外围总线只需要在接口上作相应的改变即可,方式灵活。CPLD中实现的SPIMaster接口设计框图如图2所示。根据SPI总线协议,设计中使用了自定义的4个接口寄存器实现CPU对主控模块所有命令的数据传送,包括:数据寄存器、状态寄存器、控制寄存器、选择/移位寄存器。考虑到外围总线的可变性,波特率发生器的时钟分频因子、数据传输位数、数据交换方式(查询或中断),在程序中都可动态调整。各寄存器定义如下:数据寄存器:8位可读写的双向数据寄存器。控制寄存器:SPIE:SPI主控制寄存器中断使能位,1表示允许中断,0表示禁止中断。Div[2..0]:获得SPI总线时钟SCK输出的分频比,时钟输出为系统输入时钟的N次分频,其中分频比,可实现4~512分频。例如,Div[2..0]=3,则可实现输入时钟的32分频频率输出。CKPHA:时钟的相位选择,1表示SCK空闲为高,0表示SCK空闲为低。CKPOL:SPI时钟极性控制位。MSTENB:SPI主从模式使能位,1选择为主模式,0为从模式。状态寄存器:SPIF:中断标志,主模式传送结束后激活设置此位。OverRun:写数据标志;1表示正在写数据寄存器,在此位置高之前向数据寄存器中写的数据都被忽略。ColF:主从模式冲突标志;Tx_run:主传输查询标志;1表示数据正在传输,0表示数据传输完成。Slvsel:从控设备选择标志;1表示连接从控设备,0表示无从控设备。从控选择寄存器:BitCnt[2..0]:主模式下移位寄存器中数据移动的位数。Slvsel[4..0]:从控选择位,本设计中可选择的从控芯片最多为32个。从控控制寄存器:此寄存器控制从控设备命令接收模式,可完成从控模块片选信号的状态、HWID配置、主从控制、主控回读以及器件复位等功能。本设计中只用到后三位,提供八种从控命令工作方式,完全满足从控模块中各种不同型号器件的使用。灵活的配置可使用户自定义扩展设计所需。只有当前一个周期传输完成以后,数据才能写入到主数据寄存器中,每次发送之间必须有半个SCK周期的最小声明时间,这个声明时间是处于空闲状态的。如果在连续的传输中不进行声明,那么新的数据就不能被传输。编程使用VHDL语言,在MaxplusII中进行综合编译,经过仿真与实验板波形输出测试,结果正确符合要求。

4.从控板级设计

微波测量仪器通常由若干块功能电路板组成,每个电路板都对应唯一的硬件ID(HWID)号,主机通过此HWID选择相应的从控板,完成所需的信号控制和数据传送。从控的CPLD实现框图如图3示。根据各电路板中硬件功能要求的不同,即可在CPLD中进行直接裁剪,也可通过主机软件进行配置。图4为从控芯片的功能仿真波形。从片控制器接口设计灵活,可连接多个SPI总线或74系列串行总线器件,每个功能板上SPI接口的EEPROM存储了板级的配置信息和参数,使软件系统能够完成硬件的自动识别、自动配置,极大地方便了仪器的生产、调试和维护。此外,当板级模块控制较多而CPLD的IO输出不能满足时,还可容易地通过74HC595进行控制信号的片外拓扑。本设计中还完成了ISA总线访问驱动程序,实现ISA总线接口的直接读取。在系统软件中以动态链接库的形式,通过底层硬件驱动程序,经过不同参数的宏定义映射得到各电路板级功能模块的直接读写控制,模块设计独立,大大增加了软件的可靠性。

5.结束语

经过在噪声系数分析仪等微波测量仪器中长时间的使用,实践证明该总线技术稳定、可靠。设计中采用的分层次、模块化的设计思想,大大优化了仪器的软硬件结构。其中WindowsNT下的直接I/O驱动、用可编程逻辑器件实现的SPI-MasterIP软核,根据不同CPU接口只需稍作改动即可实现IP核的复用,不仅提高了设计效率和资源利用率,更增强了测量仪器软硬件方面的延展性和可维护性。

作者:郑利颖 单位:中国电子科技集团公司第四十一研究所