chapter程控仪器消息交换协议.pptx
《chapter程控仪器消息交换协议.pptx》由会员分享,可在线阅读,更多相关《chapter程控仪器消息交换协议.pptx(107页珍藏版)》请在咨信网上搜索。
1、一、自动测试系统的消息交换一、自动测试系统的消息交换nGPIB器件数据标准推荐消息交换控制协议n“协议”给出器件处理程控消息和响应消息的严格行为准则,协调控制器与器件之间的通信行为,约束器件间的消息通信。控制器器件命令数据第一节 消息交换控制协议第一节 消息交换控制协议IEEE488.2GPIB标准IEEE488.1数据语法结构、编码标准公用命令消息交换控制协议消息交换控制协议概述第一节 消息交换控制协议消息交换控制协议消息交换控制功能概念模型消息交换控制状态图消息交换控制构成机制消息交换操作流程消息交换控制协议构成第一节 消息交换控制协议IEEE488.1总线IO控制(IOC)状态报告(SR
2、)器件功能(DF)消息交换接口(MEI)IEEE488.1远地消息IEEE488.1器件消息和get器件特定数据器件状态IEEE488.1 STBIEEE488.1 istIEEE488.2 reqt reqf消息状态消息二、消息交换控制功能构成模型二、消息交换控制功能构成模型第一节 消息交换控制协议1、GPIB总线电缆和信号线驱动器机械、电器相容2、IOC(IO控制)接口功能功能和运行相容AHLSHTDCDT处理状态报告、消息交换DABDABDCLSDCGETGPIB接口标准GPIB器件数据标准接口功能状态报告MEI第一节 消息交换控制协议(1)接收数据拜特IOC 置 bav=1特殊处理ib
3、_full=1IOC 置 bav=0 =IBLACSACDSYNbav:拜特可用消息IB:输入缓冲区LACS:听者作用态ACDS:接收数据态第一节 消息交换控制协议(2)发送数据拜特IOC 置 brq=1特殊处理oq_empty=1IOC 置 brq=0=BUSSGNSTACSYN已传响应结束符?RMT_sent=1后续处理NYbrq:拜特请求消息SGNS:源方产生态TACS:讲者作用态RMT_sent:响应消息结束符已发送第一节 消息交换控制协议(3)响应器件清除接口消息dcas=1 抑制 DACDCAS接收 DCL 或 SDC初始化器件功能初始化 MEIdcas=0释放 DACDCAS:器
4、件清除作用态第一节 消息交换控制协议n(4)响应群触发GETMEI触发控制框器件功能IOCGET,*TRG软逻辑硬件同步启动单个器件同步启动多个器件1.执行特定操作2.由*DDT定义的器件动作第一节 消息交换控制协议get=1 抑制 DACDTASGET v*TRG启动get=0释放 DACDTAS:器件触发作用态第一节 消息交换控制协议3、器件功能 1.接受来自MEI的合法的、可执行的器件消息单元,产生相应的远控操作。2.接受来自MEI的有效询问请求,并返回响应数据去MEI。3.向状态报告框反映有关器件功能状态消息。DFMEI命令合法命令正确执行错误命令、不可执行命令无法执行的命令第一节 消
5、息交换控制协议4、状态报告n响应串行查询和并行查询;n接收来自MEI的错误状态和DF的状态消息;n产生STB、ist、reqf、reqt到IOC。5、消息交换控制接口n处理发到器件和从器件来的所有IEEE488.1的器件相关消息。第一节 消息交换控制协议IEEE 488.1 BusIOC消息交换控制器件功能(DF)输入缓冲器(IB)语法分析程序(Parser)执行控制(EC)响应格式化程序(RF)输出序列(OQ)触发控制ponib_emptyib_fullcleareom,queryp_blockedresetec_blockedreset可执行消息元素ec_idle执行错误p_idel命令错
6、误GETDABENDGETgetp_idel,ec_idel,ib_emptyoq_emptyoq_fullclearrf_blockedreset询问错误响应数据响应消息元素MAVSTB,reqt,reqf,ist触发bavbrqdcasgetRMT_sentIEEE488.1远地消息DABENDGET已分析消息元素消消息息交交换换控控制制接接口口第一节 消息交换控制协议(1)输入缓冲器(Input Buffer)仪器内部存储器的一部分,采用FIFO数据结构n三种操作1.装入数据2.取出数据3.清空n两个消息1.ib_empty2.ib_fulln有关规则1.深度:大于等于零2.溢出:不允许
7、溢出3.清零:当且仅当 pon 或 dcas 消息为真第一节 消息交换控制协议(2)语法分析器(Parser)1)作用:n从IB中取出DAB、END、GET消息并将其分离为各种句法元素;n将句法元素转变为内部表语,发给EC;n产生eom、query消息;n检查Command Error,向状态报告单元指示出有错误的句法和题头。第一节 消息交换控制协议2)规则n检出命令错(Command Error)n在一个程控消息中发现一个语法错误;n发现一个不认识的题头;n发现一个对应题头属错误类型的参数;n在一程控消息的第一个字节与程控消息结束符之间,遇到一个GET消息。n错误处理n对已通过语法分析的元素
8、,器件可选择“丢弃”或“执行”n发出Command Error消息到状态报告n丢弃后续的DAB和GET,直到下列条件为真,然后复位:dcas=1;pon=1;eom=1;brq=q&ib_empty=1 第一节 消息交换控制协议n语法分析器复位n使Parser回到仪器程控命令的根级,等待处理将接收到的程控消息的第一个字节n复位条件dcas=1;pon=1;eom=1;brq=q&ib_empty=1第一节 消息交换控制协议3)语法分析消息1)已分析的消息元素2)被检消息的结束符eom3)被检消息的询问query4)语法分析器空闲p_idle5)语法分析器阻塞p_blocked第一节 消息交换控
9、制协议n已分析的消息元素n代表程控消息的全部或部分的器件内部表语n被检消息的结束符eomn当以下任一条件产生时,Parser设置eom=TRUEn从Ib中收到;n分析到一个;n出现在程控消息第一字节和之间的情况除外。n触发控制单元已将(trigger)消息传送到DF时。n下列任一条件产生时,Parser设置eom=FALSEnParser被复位;n从Ib收到任何其它的或消息时。第一节 消息交换控制协议n被检消息的询问queryn以下任一条件产生时,Parser设置query=TRUE:n有效的;n有效的:n宏标记,其中包括了;n或“*TRG”命令,该命令使器件执行*DDT,并且由器件设计者规定
10、器件的触发作用会产生一个n当Parser复位或从Ib收到任何其它或消息时,Parser设置query=FALSE第一节 消息交换控制协议n语法分析器空闲p_idlenp_idle=TRUE nParser已分析了前面所有的消息,而且并未实际处理一个有效的或一个有效的时。np_idle=FALSEn其它任何情况n语法分析器阻塞p_blockednp_blocked=TRUEnParser等待EC完成前面已分析的消息元素的处理时。np_blocked=FALSEn其它任何情况第一节 消息交换控制协议(3 3)执行控制()执行控制(Execution ControlExecution Control
11、)1)功能n接收来自Parser的内部表示码,处理耦合参数、询问和器件同步命令,生成可执行的消息元素(EME)n耦合参数:n询问:n当聚集了足以启动器件操作的消息后,将EME传给器件功能n根据所执行的命令的不同,以不同的方式处理下一条消息n顺序命令:n重叠命令:第一节 消息交换控制协议2)错误处理nEC应检测出执行错误,并向状态报告框报告n执行错误:n程控数据超界或与其能力不一致;n一个有效的程控消息由于某些器件的状态而不能被适当地执行。3)EC复位n以前的状态不再影响新的程控消息npon=1 或 dcas=1 EC复位第一节 消息交换控制协议4)执行控制消息n执行控制消息元素n执行控制空闲消
12、息ec_idleA.所有被延迟的命令都已执行完毕,并且B.执行控制已准备好接收一个来自语法分析器的新命令或询问,并且a.执行控制被复位,或b.以前所有的命令都已被执行完毕n执行控制阻塞消息ec_blockedn当EC已准备好将一个有效询问请求发给DF时,如需等待RF和DF处理前一个有效询问请求时,EC置ec_blocked=TRUE。第一节 消息交换控制协议器件功能器件功能n包含所有特定器件的特点和功能,从执行控制接收可执行的消息元素,并执行相应的操作。n规则:n从执行控制接收有效询问请求,向响应格式化器发出所要求的任何响应数据;n向状态报告单元报告器件信息。n器件功能消息n开机消息pon:n
13、MEI复位,进入IDLE态;n进入“命令操作完成空闲态”;“询问操作完成空闲态”;n当MEI进入IDLE态后,pon撤销。第一节 消息交换控制协议(4 4)响应格式化程序)响应格式化程序n任务:将来自器件功能的数据元素的内部表示按语法规则转变成一串数据串。n规则:n分隔响应消息单元;n用响应消息结束符结束最后一个响应消息单元;n复位:n新的响应消息单元不再受复位前条件的影响ndcas=1;或 pon=1;复位。n响应格式消息n响应消息元素n响应格式器阻塞rf_blockedn当RF有一个响应消息单元要放入Oq,而oq_full=TRUE时,rf_blocked=TRUE第一节 消息交换控制协议
14、(5 5)输出队列)输出队列存放响应消息存放响应消息n应有足够的长度以防止死锁n可以延迟对冗长响应数据的格式化到输出时进行,以降低对Oq长度的要求。n当dcas=1;或 pon=1时清空n输出队列消息n“消息可用”消息(MAV)n“输出队列满”消息(oq_full)第一节 消息交换控制协议n可选的功能框n允许器件用硬件高速响应GET消息而不会违反命令的执行顺序规则。n出发控制规则:GETib_empty p_idle ec_idle get将GET直接送往DFIBParserEC器件功能DFYNYN高速硬件同步(6 6)触发控制)触发控制第一节 消息交换控制协议(7)消息交换控制)消息交换控制
15、三、消息交换控制操作三、消息交换控制操作1、消息交换的基本原则2、正常操作流程3、出错和违约第一节 消息交换控制协议1、消息交换的基本原则n完整性n对应性n顺序性第一节 消息交换控制协议完整性完整性n保证程控消息(询问消息)、响应消息的完整性n控制器启动消息交换,在传送完整的询问消息之后,才应从器件读取相应的响应消息;n器件在分析完完整的询问消息后,才应产生响应消息元素;n控制器接收到完整的响应消息之后,才能发出新的程控消息。-nController发完整的询问消息nDevice接受分析完整地询问消息nController接受完整的响应消息第一节 消息交换控制协议对应性对应性n器件对于收到的每
16、个完整的询问消息,应产生唯一对应的完整的响应消息。n一个询问消息单元可以对应多个响应消息单元,但这些响应消息单元式固定唯一的;n(个数、顺序、种类)n复合询问所对应的应是唯一对应的复合响应消息;n复合响应消息的顺序应对应复合询问消息的顺序。n复合响应消息若超出Oq的存储能力,则MEI有关功能框进入阻塞态n响应消息的产生:n立即产生n推迟产生:当Controller读取时才产生。第一节 消息交换控制协议顺序性顺序性n器件必须按接收程控消息元素的次序来分析、解释执行所含的命令:n可以单个执行先收到的可语法分析的消息元素,也可以到收到分界符、结束符时执行整个程控消息;n先收到的先执行,在先期收到的程
17、控消息单元执行完毕前,不应执行任何程控消息n在执行连续的程控消息单元之前,应执行已知的全部程控消息n顺序命令n重叠命令n对GET消息,器件应按执行程控消息元素相同的次序执行GET消息。如果在执行程控消息之前收到GET,则推迟执行GET。第一节 消息交换控制协议2、消息交换控制正常操作流程第一节 消息交换控制协议第一节 消息交换控制协议IDELREADQUERYDONERESPONSESENDbav|get|!ib_emptyqueryeom&!bav&!get&ib_empty!eom&brqeom&(!bav&!get&ib_empty)RMT_sentbav|geteomdcaspon正常
18、的操作流程正常的操作流程第一节 消息交换控制协议助记符名称说明IDLE空闲态产生初始化动作,等待接收消息READ读态收到程控命令读、语法分析、执行消息QUERY询问态收到有效询问继续READ态动作并格式化,存储响应消息以备发送SEND发送态控制器读响应数据,但程控命令未分析完分析执行询问消息并格式化,发送响应消息RESPONSE响应态分析完完整的程控命令格式化、发送响应消息DONE完成态已发送等待下一个消息正常的操作流程状态表正常的操作流程状态表第一节 消息交换控制协议IDEL-IDEL-空闲态空闲态n操作:n器件等待控者消息,接收的下一个数据将被解释为新的程控消息的开始;Oq为空。nINIT
19、IALIZE操作(dcas|pon=TRUE):n清除Ib、Oq;n复位Parser、EC、RF。n状态变迁:n=READnbav|get|!ib_empty=TRUE(有命令到达)第一节 消息交换控制协议READ-READ-读态读态n操作:nIOC从总线读取消息,放入Ib,Parser、EC动作,Oq为空。n状态变迁:n=QUERYnquery=TRUE(分析出一个有效询问,需产生响应消息)n=IDELneom=TRUE(命令结束)第一节 消息交换控制协议QUERY-QUERY-询问态询问态n操作:nIOC从总线读取消息,放入Ib,Parser、EC动作,n状态变迁:n=SENDnbrq&!
20、eom=TRUE(控者开始读响应数据,但还未分析完整个命令)n=RESPONSEneom&(!brq&!get&ib_empty)=TRUE(命令分析完,且没有新命令到达)第一节 消息交换控制协议SEND-SEND-发送态发送态n操作nParser、EC继续工作,RF产生并装入到Oq,IOC从Oq取出数据发送到控制器。n状态变迁n=RESPONSEneom&(!bav&!get&ib_empty)=TRUE(命令分析完,且没有新命令到达)第一节 消息交换控制协议RESPONSE-RESPONSE-响应态响应态n操作nRF格式化数据到Oq,IOC发送数据到控制器。n状态变迁n=DONEnRMT_
21、sent=TRUE(IOC已发送响应消息结束符)第一节 消息交换控制协议DONE-DONE-完成态完成态n操作nParser、EC、RF处于非激活态,Ib、Oq为空。n状态变迁n=READnbav|get=TRUE(收到新命令)第一节 消息交换控制协议IDELREADQUERYDONERESPONSESENDeom&(bav|get|!ib_empty)!eom&!bav&!get&ib_emptyeomDEADLOCKoq_full&rf_blocked&ec_blocked&p_blocked&ib_full&(bav|get)brq&!bav&!get&ib_emptybrq&!bav&
22、!get&ib_emptybav|get|(eom&!ib_empty)bav|get12223331:DeadLock2:Unterminated3:Interrupted出错和违约出错和违约第一节 消息交换控制协议n原因(在QUERY态出现下面条件)oq_full&rf_blocked&ec_blocked&p_blocked&ib_full&(bav|get)=TRUEn操作:n向报告“询问错”;nParser和EC继续工作;n丢弃响应消息;n可以通过清空Oq和复位RF而脱离DEADLOCK态。n状态变迁n=IDEL neom=TRUEndcas|pon=TRUE(执行INITIALIZ
23、E操作)MEI内部出现阻塞控制器不读响应消息,继续发程控命令置brq=FALSE;控制器读器件时不发送任何响应消息DEADLOCK-DEADLOCK-死锁死锁第一节 消息交换控制协议UNTERMINATEDUNTERMINATEDn原因:nIDEL 或 READ:nbrq&(!bav&!get&ib_empty)=TRUEnSEND:n!eom&!bav&!get&ib_empty=TRUEn操作:n在“标准事件状态寄存器”中设置“询问错误”位;n清除Oq;n选择地执行来自不完整消息中的任意元素。(同一消息中的前面所有消息应被执行);n丢弃任意部分分析过的,以便Parser能准备好去分析一个新
24、的;n置brq=FALSE;nMEC进入IDLE态。器件被设为讲者,但无话可讲询问消息不完整第一节 消息交换控制协议INTERRUPTEDINTERRUPTEDn原因:nQUERYneom&(bav|get|!ib_empty)=TRUEnSENDnbav|get|(eom&!ib_empty)=TRUEnRESPONSEnbar|get=TRUEn操作:n在“标准事件状态寄存器”中设置“询问错误”位;n清除Oq;n复位EC和RF,以便当器件收到一个新的询问消息单元时能发出正确的响应消息;n置brq=FALSEnMEC进入READ态;控制器没有读完完整的响应消息,又开始发新的程控命令第一节 消
25、息交换控制协议总总 结结n状态(7)n(IDLE)(READ)n(QUERY)(SEND)(RESPONSE)(DONE)n(DEADLOCK)n动作(3)nINTIALIZEnUNTERMINATEDnINTERRUPTEDn错误类型(3)n命令错误(Parser)n执行错误(EC)n询问错误(MEC)n(DEADLOCK)(UNTERMINATED)(INTERRUPTED)处理程控命令处理程控询问处理死锁错误第一节 消息交换控制协议MEC的设计实现举例一、仪器的程控消息一、仪器的程控消息器件的听格式n功能级定义(高级)n规定句法元素的功能含义;供器件指令集的设计者使用。n编码级定义(低级
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- chapter 程控 仪器 消息 交换 协议
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。