微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 工业电子 > 计算机系统中数据驱动的计算及其应用

计算机系统中数据驱动的计算及其应用

时间:12-08 来源:互联网 点击:
环境

对于数据驱动计算来说,使用图形化的编程语言更直观、自然,能够充分体现出运算中的并行性和数据依赖性。DDMP处理器的程序设计就使用专用的图形化编程语言,用来编制各种算法的数据流图。软件开发界面如图3所示,不仅能够进行数据流图的编制,还可以进行程序的编译、调试和仿真。


3.2 硬件开发环境

为了将编制好的数据流图真正在硬件上调试和实现,需要有相应的硬件开发平台。目前,DDMP的硬件开发平台有两种,分别基于PCI总线和基于USB接口。DDMP通过PCI接口或USB接口与计算机通信;可以从计算机给DDMP和FPGA进行初始化、下载程序和输入数据,初始化外部存储器,并得到硬件输出的计算结果。

在基于PCI总线的开发平台中,DDMP和两个FPGA组成一个单向的通信环路,DDMP可以给FPGA1发送数据,FPGA1可以给FPGA2发送数据,FPGA2可以给DDMP发送数据。DDMP、FPGA1和FPGA2分别带有外部SDRAM;为了提高外部存储器的访问速度,FPGA配有外部SRAM。

4 基于数据驱动计算的防火墙设计

数据驱动处理器的并行处理能力强、功耗低、安全性高,适用于图像和视频等多媒体处理、网络安全与协议处理等运算复杂度和并发性较高的应用。

嵌入式防火墙用于保护主机安全,要求自身安全性高、体积小、功耗低。DDMP可满足这些要求。

嵌入式防火墙的基本结构如图4所示。首先,进入主机的数据包被储存在缓冲区中;同时,该数据包的IP头和TCP/UDP头被传送到动态包过滤功能模块中处理。在动态包过滤模块中,使用TCP头来确定该数据包是否属于一个新的连接。如果属于,则在数据表中建立一个新的连接表项;包分类模块(分类器)使用过滤规则库检查该数据包。如果该数据包属于已有连接,则数据包状态检测器(SPI)检测该数据包是否为非法状态转移。UDP是一种无连接协议,可以使用IP地址和端口号来建立一个虚拟连接。因此,对于UDP数据包,SPI会使主机更安全。对第四层数据包头部的状态检测之后,只有安全合法的数据包进入应用层过滤器(AF)中,AF检查数据包的内容,包括URL或者E-mail附件等等。最后,合法的数据包从缓冲区中提取并通过防火墙。


嵌入式防火墙中各模块的数据依赖关系如图5所示,包括进程创建、执行和删除、分类器、数据包状态监测器SPI和应用层过滤器APF、高速数据包缓冲等等。把这些数据流变成数据流图,装入DDMP处理器,就是数据驱动防火墙系统的设计要点。

通过软件仿真和硬件测试比较,基于DDMP数据驱动处理器的嵌入式防火墙的SPI模块超过千兆的包处理能力,可满足千兆以太网的需求。

5 总结

数据驱动计算以及数据驱动处理器,具有并行性高、处理能力强、功耗低、安全性能好的优点,虽然目前还未广泛使用,但相关的研究和开发工作一直在进行和发展。本文介绍的DDMP处理器就是基于数据驱动原理、采用异步电路和自定时流水线技术的多核心处理器,已经在图像处理、网络安全等方面取得了较好的研究成果。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top