作者:Steve Leibson, 赛灵思战略营销与业务规划总监
George T Haber,Cresta基金创建者,CrestaTech的创建者,发表了他自己的“哈勃定律”—— “ 如果一个事情可以用软件实现,那它一定可以被实现 。鉴于我40年的嵌入式设计经验,毫无疑问‘哈勃定律’是正确的。”这是真的吗?让我们来把它变成现实吧!
If it can be done in Software, it will! - George T Haber
1st SHOULD: 如果你可以在一个微控制器或者微处理器上,仅使用软件来实现嵌入式系统,这是可以变成现实的(You SHOULD)。
Jim Hwang,赛灵思首席工程师,也说过同样的观点。文章最后的短视频演示了赛灵思最新发布的适用于Zynq SoCs/MPSoCs的 SDSOC开发环境。
大多数算法开发者通常在起始阶段使用C或者C++编码,编译器针对PC进行编译,因为现在PC实在是太便宜而且普遍了。当他们的新算法在计算机上运行、验证后,如果算法性能可以达到目标应用的需求,并且目标应用可以接受PC(基于PC架构的单板计算机)的成本和功耗。ok,他们就大功告成了。然而,如果目标系统是一个嵌入式系统,这显然还没完。
2nd SHOULD: Hwang在上面的视频中提到:“作为一个经验法则,如果你可以在软件中运行完整的代码,那你就应该这么做(You SHOULD)。”
但是,多数嵌入式系统采用应用处理器或者微控制器,而不是计算机处理器。
3rd SHOULD: 假设,你可以在PC上重新编译你的算法然后放到嵌入式平台上(例如ARM架构的应用处理器或者微控制器架构)运行的话,那为何不这么做呢。(then you SHOULD)上述是由Hwang在视频中提出的观点,再次肯定了哈勃定律:“ 如果一个事情可以用软件实现,那它一定可以被实现! ”
当你不能承受计算机的成本和功耗,或者计算机无法实现所需性能时,你就会感觉被困住了。价格Price,功耗Power,性能Performance是工程优化的“3P标准”,假如一个基于PC的解决方案不能满足嵌入式系统要求,那你需要其他一些东西来实现。
这就是SDSoC开发环境需要做的事情。赛灵思Zynq全可编程SoC和Zynq UltraScale+ MPSoC系列在单芯片上集成了ARM处理器和可编程逻辑,后者可为你提供解决繁重嵌入式处理任务的有力支持。当你的应用代码运行于处理器(甚至是多核处理器系统)仍然无法满足的时候,你就需要使用Zynq和Zynq UltraScale+ MPSoC系列来实现。通过可编程逻辑生成的“片上硬件加速器”可以使你的嵌入式系统性能提升1-2个数量级,并同时降低系统功耗,从而使你的嵌入式系统满足“3P标准”。
在没有SDSOC开发环境之前,你需要将基于HLL的程序代码转换为HDL来手动将你的程序移植到Zynq器件上,且已经有许多成功的例子。但这些都很花时间。SDSOC开发环境可以自动为应用程序进行多种此类转换,使你可以在短期内实现对“3P标准”指标的优化。
正如昨天Maxfield在Embedded.com所写,“SDSOC开发环境已经经过使用者超过一年的测试”且这些测试者已经在性能和开发周期上获得了提升。
所以George T Haber是正确的:“如果一个事情可以用软件实现,那它一定可以被实现!”
PS:“ 如果其它的软件不能实现,SDSOC一定可以! ”
这这段视频中,Jim Hwang(赛灵思首席工程师)将向您演示如何快速地创建一个简单的图像处理流水线,实时检测运动物体。把运动物体边缘勾勒并实时地插入到视频流中,视频帧速是1080p每秒60帧。
如需转载,请注明出处