论文部分内容阅读
摘 要:由于环境的变化,导致DSP+FPGA之间总线时序在通讯过程中会出现微小变化,能够影响二者接口的可靠性。本文通过使用FPGA对模拟实际DSP的总线时序,可以充分地、快速地对DSP+FPGA之间总线接口的可靠性验证。
关键词:FPGA;接口时序;仿真
中图分类号:TN957.51
近年来,FPGA的应用已渗透到航天控制系统中,缩短了有效载荷产品的研制周期,并减小了系统的体积和功耗。另外DSP芯片在复杂算法处理上的优势,航天有效载荷的控制系统大量使用DSP+FPGA的处理结构,能够保证FPGA与DSP之间能够可靠的通讯成为了这个系统可靠运行的关键。二者之间总线接口是相对复杂的设计,二者的总线接口的验证工作也成为了重点。本文就利用FPGA仿真DSP总线时序,来测试FPGA对于DSP总线时序变化对二者之间可靠性进行了研究工作。
1 测试系统硬件结构设计
总线接口测试系统结构框图如图1所示,该测试系统主要由三大模块构成:一个是USB通讯部分,二个是仿真DSP时序的FPGA信号控制处理部分,第三个是被测试FPGA及其外围功能模块。
整个系统是以仿真FPGA为整个系统的控制器,通过与USB2.0控制器CY7C68013与PC机通讯,完成对仿真FPGA产生的总线时序的控制。仿真FPGA能够产生DSP的总线接口时序来完成与被测试FPGA之间的数据交换。
2 DSP总线接口协议
TMS320VC5416是TI公司的一款16bit定点高性能DSP[1]。其主要特点为处理速率最高达160MI/s,具有3条16bit数据存储器总线和1条程序存储器总线,1个40bit桶形移位器和2个40bit累加器,1个17×17乘法器和1个40bit专用加法器,最大8M×16bit的扩展寻址空间,内置128K×16bit的RAM和16K×16bit的ROM,3个多通道缓冲串口(McBSP)。尤其是分开的数据和指令空间使该芯片具有高度的并行操作能力,在单周期内允许指令和数据同时存取,再加上高度优化的指令集,使得该芯片具有很高的运算速度。VC5416的片内外设主要有软件可编程等待状态发生器、可编程分区转换逻辑、1个主机接口HPI、3个多通道缓冲串行口McBSPs、1个硬件定时器、带锁相环的时钟发生器PLL和DMA控制器。
DSP为不同的外部设备提供了多种总线访问方式,主要包括流水协议接口和慢速设备协议接口[2] [3]。流水线协议适合与快速同步设备连接,慢速设备协议接口则主要是为了使处理器能够直接与低性能的存储器和外部设备进行连接,文中采用此协议,来仿真DSP与FPGA之间的通信。
流水协议接口用来提供流水方式的高速数据传输,在该传输协议下,达到每个时钟周期可以进行一个数据传输工作,并且還可以支持连续的多字节的数据传输,从而实现高效的数据读写访问。典型的流水协议接口时序图如图2所示。
慢速设备协议接口则主要是为了使处理器能够直接与低性能的存储器和外部设备进行连接。可以通过设置等待周期来保证对外部慢速设备稳定可靠的访问控制,该协议下的数据访问周期至少为3个时钟周期,典型慢速协议接口写时序如图3所示。
航天系统需要可靠稳定的接口通讯,使用慢速的接口时序来进行FPGA与DSP之间的通讯,本文通过改变接口时序时间来验证该接口的可靠性。仿真FPGA就是要模拟产生DSP总线接口协议,来实现对总线接口的验证。
3 FPGA设计
FPGA只需按照DSP的协议进行接口设计,FPGA程序采用同步设计方式,主要信号、输出信号都由时钟沿驱动,可以有效避免毛刺。程序采用系统时钟对片选信号进行同步,判断片选信号的下降沿和上升沿,在其下降沿时对地址总线进行一次采样,在其上升沿时对地址总线再进行一次采样。由于采用系统时钟判断片选信号的上升沿及下降沿,因此相当于将其延时一个系统时钟周期,此时地址总线已处于稳定状态,因此能够采样到稳定的地址总线状态。
3.1 写操作设计。根据DSP的写周期时序和时序参数值可知,在DSP的写周期,IO空间选通信号IOSTRB信号和写信号WR几乎同时有效,但数据有效在写信号有效之后,因此,采用FPGA采样数据总线时,不能采用WR信号的下降沿对DATA进行采样,只能在WR有效后,在系统时钟SYS CLK的上升沿对数据总线进行采样,这样能够保证FPGA采样到可靠数据。
3.2 读操作设计。根据DSP读周期时序图和时序参数值可知,在DSP读周期,读信号RD最先有效,IO空间选通信号在RD之后有效,DSP在读周期的最后一个时钟周期上升样对数据总线DATA进行采样,因此,只要保证此时刻,FPGA输出数据是稳定的,就能保证DSP读到可靠数据。
4 系统验证
通过改变仿真FPGA模拟产生的总线接口时序,来测试总线接口通讯的可靠性。通过上位机发送总线接口的时序要求,可以看到,当以普通流水协议读数据时,并且延时时钟为3个IO时钟的时刻,可以保证通讯的准确性,通讯的时序图如图4所示。当改变总线接口时序的时候,延时时钟为2个IO时钟的时刻读取到数据总线的数据就会错误,通讯的时序图如图5所示。
5 结论
本文介绍的测试系统,通过改变总线接口时序,来实现对DSP+FPGA之间总线接口时序的验证。保证系统可以在不同的环境条件下,可以稳定、可靠和安全的运行,确保接口的正确性。使用FPGA来仿真DSP的总线控制可以节约开发成本,提高测试的灵活性。
参考文献:
[1]汪安民,王殊.TMS320C54xx DSP 的USB接口实现.电子技术应用,2003(1):72-74.
[2]高路,周起华,张琦.基于FPGA 的DSP 外部总线接口设计.制导与引信,2011,32(2):20-23.
[3]刘书明,苏涛等.TigerSH ARC DSP 应用系统设计[M].北京:电子工业出版社,2004.
作者简介:孙亮(1983-),男,吉林四平人,硕士,研究实习员,研究方向:空间相机计算机控制。
作者单位:中国科学院长春光学精密机械与物理研究所,长春 130033
关键词:FPGA;接口时序;仿真
中图分类号:TN957.51
近年来,FPGA的应用已渗透到航天控制系统中,缩短了有效载荷产品的研制周期,并减小了系统的体积和功耗。另外DSP芯片在复杂算法处理上的优势,航天有效载荷的控制系统大量使用DSP+FPGA的处理结构,能够保证FPGA与DSP之间能够可靠的通讯成为了这个系统可靠运行的关键。二者之间总线接口是相对复杂的设计,二者的总线接口的验证工作也成为了重点。本文就利用FPGA仿真DSP总线时序,来测试FPGA对于DSP总线时序变化对二者之间可靠性进行了研究工作。
1 测试系统硬件结构设计
总线接口测试系统结构框图如图1所示,该测试系统主要由三大模块构成:一个是USB通讯部分,二个是仿真DSP时序的FPGA信号控制处理部分,第三个是被测试FPGA及其外围功能模块。
整个系统是以仿真FPGA为整个系统的控制器,通过与USB2.0控制器CY7C68013与PC机通讯,完成对仿真FPGA产生的总线时序的控制。仿真FPGA能够产生DSP的总线接口时序来完成与被测试FPGA之间的数据交换。
2 DSP总线接口协议
TMS320VC5416是TI公司的一款16bit定点高性能DSP[1]。其主要特点为处理速率最高达160MI/s,具有3条16bit数据存储器总线和1条程序存储器总线,1个40bit桶形移位器和2个40bit累加器,1个17×17乘法器和1个40bit专用加法器,最大8M×16bit的扩展寻址空间,内置128K×16bit的RAM和16K×16bit的ROM,3个多通道缓冲串口(McBSP)。尤其是分开的数据和指令空间使该芯片具有高度的并行操作能力,在单周期内允许指令和数据同时存取,再加上高度优化的指令集,使得该芯片具有很高的运算速度。VC5416的片内外设主要有软件可编程等待状态发生器、可编程分区转换逻辑、1个主机接口HPI、3个多通道缓冲串行口McBSPs、1个硬件定时器、带锁相环的时钟发生器PLL和DMA控制器。
DSP为不同的外部设备提供了多种总线访问方式,主要包括流水协议接口和慢速设备协议接口[2] [3]。流水线协议适合与快速同步设备连接,慢速设备协议接口则主要是为了使处理器能够直接与低性能的存储器和外部设备进行连接,文中采用此协议,来仿真DSP与FPGA之间的通信。
流水协议接口用来提供流水方式的高速数据传输,在该传输协议下,达到每个时钟周期可以进行一个数据传输工作,并且還可以支持连续的多字节的数据传输,从而实现高效的数据读写访问。典型的流水协议接口时序图如图2所示。
慢速设备协议接口则主要是为了使处理器能够直接与低性能的存储器和外部设备进行连接。可以通过设置等待周期来保证对外部慢速设备稳定可靠的访问控制,该协议下的数据访问周期至少为3个时钟周期,典型慢速协议接口写时序如图3所示。
航天系统需要可靠稳定的接口通讯,使用慢速的接口时序来进行FPGA与DSP之间的通讯,本文通过改变接口时序时间来验证该接口的可靠性。仿真FPGA就是要模拟产生DSP总线接口协议,来实现对总线接口的验证。
3 FPGA设计
FPGA只需按照DSP的协议进行接口设计,FPGA程序采用同步设计方式,主要信号、输出信号都由时钟沿驱动,可以有效避免毛刺。程序采用系统时钟对片选信号进行同步,判断片选信号的下降沿和上升沿,在其下降沿时对地址总线进行一次采样,在其上升沿时对地址总线再进行一次采样。由于采用系统时钟判断片选信号的上升沿及下降沿,因此相当于将其延时一个系统时钟周期,此时地址总线已处于稳定状态,因此能够采样到稳定的地址总线状态。
3.1 写操作设计。根据DSP的写周期时序和时序参数值可知,在DSP的写周期,IO空间选通信号IOSTRB信号和写信号WR几乎同时有效,但数据有效在写信号有效之后,因此,采用FPGA采样数据总线时,不能采用WR信号的下降沿对DATA进行采样,只能在WR有效后,在系统时钟SYS CLK的上升沿对数据总线进行采样,这样能够保证FPGA采样到可靠数据。
3.2 读操作设计。根据DSP读周期时序图和时序参数值可知,在DSP读周期,读信号RD最先有效,IO空间选通信号在RD之后有效,DSP在读周期的最后一个时钟周期上升样对数据总线DATA进行采样,因此,只要保证此时刻,FPGA输出数据是稳定的,就能保证DSP读到可靠数据。
4 系统验证
通过改变仿真FPGA模拟产生的总线接口时序,来测试总线接口通讯的可靠性。通过上位机发送总线接口的时序要求,可以看到,当以普通流水协议读数据时,并且延时时钟为3个IO时钟的时刻,可以保证通讯的准确性,通讯的时序图如图4所示。当改变总线接口时序的时候,延时时钟为2个IO时钟的时刻读取到数据总线的数据就会错误,通讯的时序图如图5所示。
5 结论
本文介绍的测试系统,通过改变总线接口时序,来实现对DSP+FPGA之间总线接口时序的验证。保证系统可以在不同的环境条件下,可以稳定、可靠和安全的运行,确保接口的正确性。使用FPGA来仿真DSP的总线控制可以节约开发成本,提高测试的灵活性。
参考文献:
[1]汪安民,王殊.TMS320C54xx DSP 的USB接口实现.电子技术应用,2003(1):72-74.
[2]高路,周起华,张琦.基于FPGA 的DSP 外部总线接口设计.制导与引信,2011,32(2):20-23.
[3]刘书明,苏涛等.TigerSH ARC DSP 应用系统设计[M].北京:电子工业出版社,2004.
作者简介:孙亮(1983-),男,吉林四平人,硕士,研究实习员,研究方向:空间相机计算机控制。
作者单位:中国科学院长春光学精密机械与物理研究所,长春 130033