Impluse C编程模型 建立软件和硬件相结合的设计需要对并行编程技术有所了解。为了帮助建立高度并行的混合硬件/软件应用,Impulse C库包括了设置和管理多个独立过程的功能,它可以通过数据流、信号和可选的共享存储资源相连接。 Impulse C编程模型(概念上和1980年C.A.R.Hoare描述的通信时序处理模型类似)提供了对硬件/软件划分和同步的系统级控制,同时允许用标准C构造编写和自动优化独立过程。
 图a,Impulse C编程模型:通信主要通过数据流(映射为生成硬件中的FIFO),其它需要同步的信号,本地存储器。 使用Impulse C库功能,C语言可用来描述高度并行的应用,具有最小的软件编程复杂度,同时具有用标准C开发环境下编译和调试的能力。例如,使用Impulse C库功能,一个简单的图像滤波器可以用如下的代码风格描述(实际算法省略) 这设计方法的结果是底层硬件平台的实际情况被抽象,用户(他可能是有经验的C程序员,但几乎没有硬件设计知识)不必学习硬件设计方法,就可以描述和运行混合软件/硬件应用。
|