新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > Xilinx FPGA的Fast Startup

Xilinx FPGA的Fast Startup

作者:Joachim Meyer时间:2011-11-11来源:电子产品世界收藏

  系统分区

本文引用地址:http://www.eepw.com.cn/article/125814.htm

  对于这种情形,系统分区是显而易见的。我们把我们ECU设计分成作为高优先级分区的系统处理器部分和作为低优先级分区的应用处理部分。

  这种设计与Virtex-6设计存在很多相似之处,但不同的是,我们用SPI取代BPI作为外置闪存的接口,因此必须用CAN控制器取代TFT控制器。上电后,系统控制器只有有限的时间引导并准备好处理第一个通信数据。由于ECU使用CAN总线用于通信,这个引导时间一般限制为100毫秒。按照传统配置方法,使用带低成本配置接口(如SPI或Quad-SPI)的大型Spartan-6很难达到如此严格的时序要求。而使用速度更快、更加昂贵的配置接口在汽车领域中是无法接受的。

  测量装置

  对于SP605汽车ECU演示来说,我们在实验室中进行了测量,图6给出了测量装置。图中左侧是一个基于Spartan-3的X1500汽车平台,它实现了针对CAN总线的网络发包器,该发生器能够收发CAN消息并使用硬件计时器测量CAN消息之间的时间。右侧为目标平台,它没有直接与CAN总线相连,而是使用来自额外的定制电路板的CAN收发器。除了提供一个CAN PHY之外,这个定制电路板还要控制目标电路板的电源。

  

 

  图6 – 汽车ECU的测量装置

  测量配置时间的程序从网络发包器处于空转(空档)状态下开始,此时CAN PHY电路板上的CAN收发器也处于睡眠模式,SP605也与电源断开。接着,网络发包器启动一个硬件计时器并发送一条CAN消息。识别CAN总线上的事件后,CAN PHY被唤醒并重新让SP605接通电源。然后开始载入来自SPI闪存的初始比特流。

  由于没有接收器确认由网络发包器发送的消息,这条消息立刻重复发送,直至已经完成其配置并用有效的波特率配置了CAN内核。一旦Spartan-6设计的CAN内核确认了这条消息,网络发包器的CAN内核将触发一个中断,由这个中断停止硬件计时器。该计时器现在保存着SP605设计的引导时间。测量结果包括SP605设计内一个额外的硬件计时器,此结果表明,当执行该软件来配置内置BRAM内存的CAN内核时,软件启动时间可以忽略不计。

  表3表示每个分区的资源消耗。百分比信息是用来表示使用的XC6S45LXT器件的有效资源的总数量。

  

 

  表3 – Spartan-6设计中占用的FPGA资源

  

 

  表4 – 测得的Spartan-6配置时间



关键词: 赛灵思 Xilinx FPGA

评论


相关推荐

技术专区

关闭