在OpenBus上实践你的新想法

工程师面临的最大挑战是:如何测试他们的好点子,并判断是否值得继续或者放弃。在黑暗的长廊里行走时不可避免的,作为设计的一个部分有时候还值得鼓励。关键是如何找出这些黑暗长廊的是否是死胡同,从而把精力转移到真正有意义的解决方案上来。

传统测试,和组装一个方案意味着几周或者几个月时间的努力工作,而这正是很多设计小组说欠缺的。工程师必须不断讨论,并彻夜的工作以仔细的修正他们的设计。所以工程师们需要的就是一个新的方法,可以收集并测试新的点子,而把所需时间从几周或几月缩短到几天。

新点子的评估和测试需要一个完整的系统 – 包括处理器,可工作的代码,链接端口IO,甚至一些讯号硬件和可编程逻辑。在这一些组件面前,工程师通常都会在白板前思考,评估,把点子仅仅作为一些想法来对待。如果您有兴趣尝试一个更好的方法,请继续阅读。

完善设计的想法

如上所述,在评估点子必须通过一个完整的系统。Altium Designer和NanoBoard的组合可以让工程师拥有一个完整的系统,并提供操作软硬件开发工具,可编程器件,不同的IO,和一系列的测试工具用于嵌入到设计产品中来。

作为总结,我仅仅对本文中涉及的一个新功能做特别的关注,那就是OpenBus。这是一个通过组装基于处理器的的硬件的设计方法。虽然您不一定相信,但是我相信一旦您尝试过,就一定会相信的。

除旧迎新

传统组装一个基于处理器的系统是通过创建原理图来实现的。如果是FPGA的设计,您可能需要HDL编码。原理图和电路设计说明了整个系统是如何连接的,并逐渐的展现出系统里不同元素间交互的关系,对于描述和理解一个系统有很大的价值。

这是一个使用原理图图主要的好处,那就是它能提供的详细程度。原理图是一个完全详细规格,它包括整个设计的每个组件,引脚网和总线,为PCB设计布局而专用的。但是如果一个设计是用于FPGA的话,这样的细节就不是那么的有价值了。

通过与标准信号的总线架构合作,例如Wishbone,有可能获得FPGA设计的详细连接信息。现在该信息不仅不会被忽略,而且这一切都仍然存在。系统会自动管理所有的低阶网格和总线。Altium称此为捕捉模式OpenBus 。

以下的图片显示了之前和之后的区别。图片顶端的原理图中,每个元器件有20-50个管脚需要连线,设计中需要100个以上连线的和总线。而在OpenBus中,在原理图中整个橙色的FPGA元件被放置在图片的左下方,8个简单的元件用8条连线链接着。

拥有大量链接的复杂原理图被简化到一个OpenBus页,并通过原理图来把设计和设计管脚相连接。

建立设计

类似于原理图的捕捉,OpenBus设计是一个图形化的放置和链接流程。元器件从OpenBus的候选板被选择然后被放置在一个OpenBus的文件中。互联的元件得以和处理器的IO,内存总线,或者其他不同元件的端口相连接。所有类似重置,始终和中断的的链接都通过Wishbone总线进行连接。

 
从OpenBus候选板选择包括嵌入式处理器的元器件

要和类似外设IO和内存总线的OpenBus信号连接,链接到FPGA设备的管脚,用户需要一个整体的原理图。当一个新的原理图页加到FPGA项目里时,页面和HDL文件的命令通过Create Sheet标识创建一个页面的标识来连接OpenBus页面,并完成所需的页面的列表。这样网格就可以通过端口,插入的关口或者限制文件和以前一样和器件的管脚相连接。

如果OpenBus的候选板没有包含用户所需的元件,则可以在不同的层面上进行定制化的设计。例如,如果用户在使用Altium Designer的C-硬件功能来编译一个处理器密集的FPGA逻辑设计,则需要在OpenBus页面里放置一个ASP连接。另一方面,如果用户需要创建一个独立的C模块,用户可以通过原理图直接接入。

什么是设计的诀窍呢?

听上去太完美了,不是么?用户的第一反应可能是不相信。但是,所有关于布线,在内存中映射器件,时钟配置,以及重置和中断都可以很轻易的实现。非图形化的信息通过对话框配置。详见下图。


非图形化的信息,包括在内存中映射外设和中断的配置可以通过对话框完成。

关于OpenBus,本文就介绍到这里,其他详细信息,请访问Altium Wiki (wiki.altium.com)。

仍然不是很清楚?没有关系,一个好的工程师在被说服之前需要更多的信息去学习。建议您阅读本期Envision中对Gryphon技术总监Peter Stephens的专访 (www.gryphonsystems.com.au)。


通过OpenBus设计多层,多图像格式播放器。

等一下,更精彩的还在后面

OpenBus为FPGA设计提供一个干净有效的基于处理器和IO系统硬件的组装流程。NanoBoard则提供了一个物理的硬件平台,供用户可以快速引用设计,并测试于调试。

但是,任何智能电子产品的核心是软件。所以能够快速的建立产品的设计是评估新点子的关键步骤。和OpenBus完美结合的是Altium Designer的软件平台搭建器。和OpenBus处理硬件一样,软件平台搭建器可以让用户可视化的把AltiumDesigner提供的所有连接外设所需的低阶驱动代码整合一起。

但是这就又是另外一个故事了,请耐心等待我们的报道。


通过软件平台搭建器建立多层,多格式的媒体播放器的整个IO子系统,让工程师专注于高层次的代码

► 6月9日的Envision首页