欢迎来到天天文库
浏览记录
ID:43974249
大小:5.44 MB
页数:91页
时间:2019-10-17
《嵌入式系统原理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、嵌入式系统原理8嵌入式网络与协议栈1内容嵌入式网络几种常用的网络技术工业网络与现场总线嵌入式系统的联网嵌入式internet蓝牙技术I2C总线21概述设计嵌入式网络的原因计算/处理资源的分散性减少处理的数据量模块化设计需求系统可靠性要求网络技术的应用物理层联网通信技术工业控制领域internet应用3内容嵌入式网络几种常用的网络技术家庭网络-最后100米工业网络与现场总线嵌入式系统的联网嵌入式internet蓝牙技术I2C总线42嵌入式网络contents分布式嵌入式系统基于网络的设计过程几种常用的网络技术简介52.1.1分布式嵌入式系统分布式嵌入式系统的组成62.1.2网络的抽
2、象模型72.1.3网络的形式点对点网络单工半双工双工总线多级网络多种网络8点对点网络需要考虑流量控制不需要考虑冲突例如:2台计算机通过RS232通信9总线节点节点节点典型消息格式例如:常用的以太网10多级网络11多种网络高速网低速网工厂自动化网络与现场总线12132.1.4报文传递编程通常的编程方式请求/应答方式推移方式142.1.4报文传递编程-请求/应答方式发送报文发送一个报文result=send_packet(address,data,length);报文尺寸大于发送单位-分拆for(i=0;i3、cket(address,&message.data[i]);15利用中断方式发送报文发送报文的方式查询方式中断方式16利用中断方式接收报文中断控制器收到报文,产生中断中断服务例程执行,读取报文如果处理时间短,直接处理如果处理时间长,把报文提交给中断任务进行处理17通信编程的阻塞式与非阻塞式小结阻塞式发送数据,直到完成发送,调用才返回接收数据,直到收到数据后,调用才返回非阻塞式发送数据,调用立即返回;以后在需要的时候查询发送是否完成-发送的数据放到发送队列中接收数据,无论是否收到数据,均立即返回。如果收到数据,则进行处理;如果未收到数据,以后在需要的时候继续执行接收操作-检查接收4、队列中是否有报文18例:非阻塞方式……send_packet(…)//只把报文交给发送“过程/任务/队列”wait(…)//延时,等待发送完成if(send_finished){//如果发送完成…}Else{//如果发送未完成…}19例:阻塞方式…send_packet(…)//函数返回时,报文已发送…202.1.4报文传递编程-推移方式数据的发送方在不需要等待请求的情况下主动发送数据。推移方式适用于数据发送方周期性地产生数据的系统中,如工厂中连续过程控制系统的传感器节点,不断向控制主机发送数据;广泛应用于汽车上的CAN总线网络系统;现场总线网络的过程数据的通信机制等。21例:汽5、车网络系统-推移方式222.2基于网络的嵌入式系统设计contents通信分析系统性能分析考虑网络中的优先级倒置硬件平台设计、分配与调度232.2.1通信分析报文传输延迟算法发送方的开销+网络传输延迟+接收方的开销网络传输延迟起主要作用242.2.2系统性能分析考虑-网络无干扰执行延迟时间252.2.2系统性能分析考虑-网络有干扰由于P1到P2的数据依赖,任何P1执行时间的不确定将使得P2的开始时间不确定。由于P2和P3分配到同一个嵌入式设备M2上,意味着P2的就绪时间和执行时间的变化将会影响到P3的完成时间。由于P3到P4的数据依赖,P3完成时间的变化将影响P4的开始时间。266、2.2.2系统性能分析考虑-原则对复杂的基于网络应用的嵌入式系统进行精确的性能分析,要使用CAD工具。有些算法可以有效地确定进程开始和完成时间的上界和下界。如果没有计算机辅助分析工具来帮助分析性能,那么手工设计必须满足硬实时要求的嵌入式系统时一定要小心。系统在力图达到硬实时的时间确定性要求时,应确保关键性的任务是活动的,这一点非常重要。例如:设计一个嵌入式硬实时系统,包括通信部分、数据处理部分、人机界面部分,为了保证系统的时间确定性,通常用户界面活动和其他非基本任务可以临时关掉。如果需要多个关键性任务能够同时发生或运行,那么系统设计时一定要保证它们不共享任何处理器资源和通信链接资7、源。这是一种保守的设计策略,使用CAD工具有助于放宽某些限制,以便更充分地发挥硬件效率。272.2.3网络中的优先级倒置报文的优先级不同当一个低优先级报文在网络上传输时,网络的使用权就被分配给该低优先级报文,允许它阻塞任何高优先级报文,直到把该报文传输完成为止。因为每个报文的长度都有限,这种现象不会导致死锁,但是可能会延缓关键性的通信。对此唯一能做的就是分析网络的行为来确定优先级倒置是否可能导致一些报文延迟时间过长。报文的优先级相同网络的用户(进程)的优先级不同,导致优先级倒置2
3、cket(address,&message.data[i]);15利用中断方式发送报文发送报文的方式查询方式中断方式16利用中断方式接收报文中断控制器收到报文,产生中断中断服务例程执行,读取报文如果处理时间短,直接处理如果处理时间长,把报文提交给中断任务进行处理17通信编程的阻塞式与非阻塞式小结阻塞式发送数据,直到完成发送,调用才返回接收数据,直到收到数据后,调用才返回非阻塞式发送数据,调用立即返回;以后在需要的时候查询发送是否完成-发送的数据放到发送队列中接收数据,无论是否收到数据,均立即返回。如果收到数据,则进行处理;如果未收到数据,以后在需要的时候继续执行接收操作-检查接收
4、队列中是否有报文18例:非阻塞方式……send_packet(…)//只把报文交给发送“过程/任务/队列”wait(…)//延时,等待发送完成if(send_finished){//如果发送完成…}Else{//如果发送未完成…}19例:阻塞方式…send_packet(…)//函数返回时,报文已发送…202.1.4报文传递编程-推移方式数据的发送方在不需要等待请求的情况下主动发送数据。推移方式适用于数据发送方周期性地产生数据的系统中,如工厂中连续过程控制系统的传感器节点,不断向控制主机发送数据;广泛应用于汽车上的CAN总线网络系统;现场总线网络的过程数据的通信机制等。21例:汽
5、车网络系统-推移方式222.2基于网络的嵌入式系统设计contents通信分析系统性能分析考虑网络中的优先级倒置硬件平台设计、分配与调度232.2.1通信分析报文传输延迟算法发送方的开销+网络传输延迟+接收方的开销网络传输延迟起主要作用242.2.2系统性能分析考虑-网络无干扰执行延迟时间252.2.2系统性能分析考虑-网络有干扰由于P1到P2的数据依赖,任何P1执行时间的不确定将使得P2的开始时间不确定。由于P2和P3分配到同一个嵌入式设备M2上,意味着P2的就绪时间和执行时间的变化将会影响到P3的完成时间。由于P3到P4的数据依赖,P3完成时间的变化将影响P4的开始时间。26
6、2.2.2系统性能分析考虑-原则对复杂的基于网络应用的嵌入式系统进行精确的性能分析,要使用CAD工具。有些算法可以有效地确定进程开始和完成时间的上界和下界。如果没有计算机辅助分析工具来帮助分析性能,那么手工设计必须满足硬实时要求的嵌入式系统时一定要小心。系统在力图达到硬实时的时间确定性要求时,应确保关键性的任务是活动的,这一点非常重要。例如:设计一个嵌入式硬实时系统,包括通信部分、数据处理部分、人机界面部分,为了保证系统的时间确定性,通常用户界面活动和其他非基本任务可以临时关掉。如果需要多个关键性任务能够同时发生或运行,那么系统设计时一定要保证它们不共享任何处理器资源和通信链接资
7、源。这是一种保守的设计策略,使用CAD工具有助于放宽某些限制,以便更充分地发挥硬件效率。272.2.3网络中的优先级倒置报文的优先级不同当一个低优先级报文在网络上传输时,网络的使用权就被分配给该低优先级报文,允许它阻塞任何高优先级报文,直到把该报文传输完成为止。因为每个报文的长度都有限,这种现象不会导致死锁,但是可能会延缓关键性的通信。对此唯一能做的就是分析网络的行为来确定优先级倒置是否可能导致一些报文延迟时间过长。报文的优先级相同网络的用户(进程)的优先级不同,导致优先级倒置2
此文档下载收益归作者所有