本文主要是介绍嵌入式系统之KPN网络图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
specification model:
推荐用于并行程序;进程通过无线规格的FIFO队列进行通信。
读:具有破坏性和阻塞。一个进程停留在waiting队列直到它被另外一个进程的通道传输。
写:非阻塞。一个进程不能阻止一个通道传输数据。
KPN图像:(具有下标的节点和边)
节点:进程。
边:通道。(单向的)
KPN:assumption and restriction。
进程只能通过FIFO进行通信;
一个通道传输不可预测的但是时间有限的信息;
在任何时间,一个进程正在计算或者等待它的输入通道的准确信息。
每个进程都跟随着一个连续的程序。
性质一:单调性(monotonicity)
不管输入是什么,它都是之前的一个输出的子集。
性质二:确定性(determinacy)
一个进程网络是确定的,如果所有通道的历史进程只和历史的输入有关。
一个通道的历史:已经读或者写的序列。
函数的行为和时间无关。
增加不确定性:去介绍不确定性的方法。
允许进程去执行非阻塞测试空虚。
允许两个甚至更多的进程从一个通道中读或者写。
允许所有的进程去共享变量。
性质三:SDF(synchronous Data flow,同步数据流)
允许编译时调度;
每个进程在每次的点火的时候进行固定数目的读/写。
调度的两个步骤:
为进程建立相应的执行率的过程;(解决一个系统的线性方程)
决定周期性地调度。
这种调度可以在缓存中没有数据的时候进行。
有n个进程的拓扑矩阵M:
连通的SDF有周期性的调度当且仅当M满足r = n - 1;(Mq = 0有一个最小的整数解)
对于一个不相容的SDF,M满足 r = n;(Mq = 0 有所有的非零的解)
对于一个不连通的SDF而言,M满足r < n -1(Mq = 0,有两个或者是更高维度的解)
举一个栗子:
参考资料:矩阵的秩 http://baike.baidu.com/view/346467.htm?fr=aladdin
对于merge 算法的举例:
这篇关于嵌入式系统之KPN网络图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!