Board logo

标题: 预测试的片上系统设计加快了可编程器件的开发 [打印本页]

作者: 520503    时间: 2013-10-24 22:33     标题: 预测试的片上系统设计加快了可编程器件的开发

关键字:预测试   片上系统   可编程器件   PLD  
  许多中等规模的可编程逻辑器件(PLD)设计,特别是控制方面的应用,通过片上总线互联一些接口至微处理器,这些微处理器可以是片上芯片或外部的。虽然每个接口往往是相对简单的,构建所有片上的互连和对它们进行调试的任务可能会非常耗时和令人沮丧。越来越多的设计人员使用预设计的基于处理器系统的开发板来加快开发过程。  

  这种方法有几个好处。首先,没有必要装配许多IP或构建选择的IP至片上总线的缓冲。此外,片上总线结构不需要选择和构建。第二是没有必要手工连接各种IP至片上总线。即使是本文中讨论的相对较小的设计,使用约1000个查找表(LUT),对于顶层的连接大约需要300行的 Verilog代码。第三,使用这种方法构建硬件的时间大大减少。设计人员可能需要花数天时间来组成基本的硬件部分,并进行所有重要的接口调试。一旦调试接口工作使设计已经处于稳定状态,添加或删除接口就变得非常简单。此外,如果修改设计导致调试接口失败,很容易返回到最近所知的成功设计版本。 

  典型的开发板

  这里以开发环境为实例,允许设计人员用预先设计的系统作为起点,然后修改它来构建自己的样机,在将它移植到最终的系统之
前使用莱迪思的MachXO迷你开发板。虽然适用于许多应用场合,这个电路板最适用于控制设计,这种设计往往用小型的非易失可编程逻辑器件来实现。图1说明了典型的用可编程逻辑器件实现控制应用的功能。

  

图1用可编程逻辑器件实现的典型控制功能


  迷你开发板的中心是MachXO 2280非易失、基于闪存的拥有2280个LUT逻辑实现的可编程逻辑器件。图2展示了MachXO迷你开发板,并对主要接口加了注释。这个电路板提供五种主要的功能:

•通过发光二极管组、扩展端、DIP开关和按钮开关提供GPIO和状态指示器。
• SPI闪存和I2C温度传感器用作这些常用串行接口的例子。
• SRAM内存提供了额外的便笺式存储器。
•通过USB的RS232提供了一个调试接口。
•通过USB的JTAG用作对器件编程的接口。

  对于开发过程而言,通过USB接口至RS232的方式和通过USB至 JTAG的方式是至关重要的。利用这两个小的“B”型的USB连接器,可以通过电缆连接到任何个人电脑的USB接口。一旦加载适当的驱动程序(适用于Windows XP及更高版本),通过USB接口至JTAG的方式允许莱迪思的ispVM软件对所需修改设计的MachXO进行编程。采用相应的驱动程序,通过USB接口至RS232的方式对通过USB至RS232的方式进行仿真。驱动程序包括Linux的最新版本,也可用于Windows XP及更高版本。串行端口只作为主机的“COM”端口。此接口为片上设计提供了一个简便的方法,用于发送状态及适当修改、调试信息至主处理器。   

  

图2 MachXO迷你开发板


  预测试片上系统设计 

  迷你开发板加速开发的关键是采用预开发的,预加载的片上系统(SOC)设计,可以作为用PLD实现控制功能的起点。下面是一个典型的开发流程和相关的时间,假设相应的软件工具和驱动程序已被加载至PC主机:  

1。验证硬件和接口的正常运行如所期望的那样。(通常为5分钟。)此刻设计人员已经了解了硬件情况。
2。确认可以使用ispVM编程软件将FPGA配置文件再次载入MachXO。 (通常为5分钟。)
3。使用ispLEVER设计软件重新编译设计,并确认所产生的配置如预期的情况工作。 (通常为10分钟。)此时,设计者有一个已知的良好起点。
4。首先修改设计,重新编译并加载新的配置。(通常是60分钟,但实际的时间取决于所修改的量。)

  按照这个开发流程,初始开发需要几个星期的时间可以减少到数小时。SoC设计的概况如图3所示。可以看到设计由六个接口和一个微处理器组成,并通过一个片上总路线联在一起。

  

图3  MachXO迷你板预装载了SOC设计


  这个设计的中心是片上总线。使用WISHBONE标准:WISHBONE是一个开放源代码的总线标准,为SOC设计提供了一个理想的基本结构。WISHBONE标准的优点有以下几个方面:


• WISHBONE是开放源代码,所以可以用于各种FPGA或ASIC。
•有大量的适用于WISHBONE接口开放源码IP。
•简单但灵活的定义使设计人员能够对性能的复杂性进行平衡。  

  由于许多用于控制的可编程逻辑器件的性能要求相对较低,Wishbone总线是与主微处理器作为主器件(master)的共享总线。地址总线有24位,保留的前3位用于产生从器件的选择信号。

  LatticeM





欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0