(光学工程专业论文)基于dspfpga的can总线数据通信系统.pdf_第1页
(光学工程专业论文)基于dspfpga的can总线数据通信系统.pdf_第2页
(光学工程专业论文)基于dspfpga的can总线数据通信系统.pdf_第3页
(光学工程专业论文)基于dspfpga的can总线数据通信系统.pdf_第4页
(光学工程专业论文)基于dspfpga的can总线数据通信系统.pdf_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

硕士论文墓于ds p+f p oa的c a n总线数据通信系统 ab s t ra c t c o n t r o 1 l e ra r e an e t w o r ki so n eo ft h ea r e an e t w o r kw h i c ha p p 1 i e dmos t p o p u l a ri nw o r l d . i d e .i t sa阴t i 一 帕s t e rs e r i a lc o mmu n i c a t i o nb u s. i th a s h i g hr a t ei nt h ei n d u s t r yc o n t r o 1c o nunu n i c a t i o nare a , h i g hp e r f o r man c ei n e m i,andh a s c a p a b i 1 i t yt o c h e c ka l lt h e m i s t a k e s. c an a r e an e t , o r k h a s b e e n a 1 r e a d yu s e di nt h el o t so fi n d u s t r yc o n t r o la r e aw i t hi t sf l e x i b l ea n d r e l i a b l e . c o n t r o l l e ra r e an e t w o r kc o 咖u n i c a t i o ns y s t e mb a s eo nf pgaa n dd s pi s d e d i c a t e t o b u i l d c anm u t i 一 n o d e c o mmu n i c a t i o n w i t h h i g h s p e e d a n d r e l i a b i l i t y. t h r o u g hc o nunu n i c a t i o n b e t w e e na l 1n o d e sa n d n o d ep r o c e s s o r p r o c e s si n t e r n a ld a t et or e a l i z es y s t e mc o l l a b o r a t i o n . t h i st h e s i si st or e a l i z ec 胡 r e a lt i . ec o 咖u n i c a t i o nb e t , e e ni n frare d t a r g e td e t e c ts y s t 朗 andc o n t r o ls y s t e m,i m a g e 一 p r o c e s ss y s t e m. i tu s e st h e f p g aandd s pt omak ec o r ep r o c e s s o ru n i t. t h i ss y s t e mr e a l i z et h em u t in o d e s r e l i a b l ec o 咖u n i c a t i o no u to fp r o c e s s o ra n ds p is e r i a lc o m m u n i c a t i o ni nt h e p r o c e s s o ru n i tt h r o u g h d s pp r o g r a m m i n gf p g a m o d e 1 d e s i g n i n g. t h u st h i s s y s t e m c o m p l e t et h ed a t e即p l i e da n dp r o c e s si nt h ef p g a . k e y 贾 o r d s :c o n t r o l l e r a r e an e t w o r k , mut i es m a s t e r , i n f r are d t a r g e t d e t e c t s y s t e m s e r i a 1p e r i p h e r a l i n t e r f a c e , s e r i a l c o n 叮 lu n i c a t i o n 声明 本学位论文是我在导师的指导下取得的研究成果,尽我所知,在 本学位论文中,除了加以标注和致谢的部分外,不包含其他人已经发 表或公布过的研究成果,也不包含我为获得任何教育机构的学位或学 历而使用过的材料。与我一同工作的同事对本学位论文做出的贡献均 已在论文中作了明确的说明。 研究生签名 、 : 高洋 . 2 尹 刁 月刁 日 学位论文使用授权声明 南京理工大学有权保存本学位论文的电子和纸质文档,可以借阅 或上网公布本学位论文的部分或全部内容,可以向有关部门或机构送 交并授权其保存、借阅或上网公布本学位论文的部分或全部内容。对 于保密论文,按保密的有关规定和程序处理。 研究生签名二 业 碑 一 词年 日 月 和 硕士论文 基于dsp+fpg a的c a n总线数据通信系统 1 . 绪论 1 . ic an总线的产生和发展 控制器局部网 ( c an一c o n t r o l l e r a r ean etw o r k )是b o s c h 公司为现代汽车 应用领先推出的一种多主机局部网,由于其卓越性能现已广泛应用于工业自 动 化、多种控制设备、交通工具、医疗仪器以 及建筑、环境控制等众多部门。 随着计算机硬件、 软件技术及集成电路技术的迅速发展, 工业控制系统己 成 为计算机技术应用领域中最具活力的一个分支, 并取得了巨大进步. 由于对系统 可靠性和灵活性的高要求,工业控制系统的发展主要表现为:控制面向多元化, 系统面向分散化,即负载分散、功能分散、危险分散和地域分散。 分散式工业控制系统就是为适应这种需要而发展起来的。 这类系统是以 微型 机为核心,将 sc 技术一仁 o m p u t er ( 计算机技术) 、 c o 刊 t rol( 自 动控制技术) 、 c 以 公 侧 n i c ati on ( 通信技术) 、 c rt ( 显示技术) 和 c han g e( 转换技术) 紧密结合 的产物。 它在适应范围、 可扩展性、 可维护性以 及抗故障能力等方面, 较之分散 型仪表控制系统和集中型计算机控制系统都具有明显的优越性。 典型的分散式控制系统由 现场设备、 接口 与计算设备以 及通信设备组成。 现 场总线 ( f i e l d b u s) 能同时满足过程控制和制 造业自 动化的需要, 因而现场总线 己成为工业数据总线领域中最为活跃的一个领域。 现场总线的研究与应用己成为 工业数据总线领域的热点。 尽管目 前对现场总线的研究尚未能提出一个完善的标 准, 但现场总线的高性能价格比 将吸引众多工业控制系统采用。 同时, 正由于现 场总线的标准尚未统一, 也使得现场总线的 应用得以不拘一格地发挥, 并将为现 场总线的完善提供更加丰富的依据。控制器局部网 c an ( c o ntr o l l er a e ran e t w o r k )正是在这种背景下应运而生的. 由于c an为愈来愈多不同领域采用和推广, 导致要求各种应用领域通信报文 的标准化.为此,1 9 9 1 年 9 月 p h i l i ps s 印i c o n d u cto r s 制订并发布tc an技 术规范 ( v e r s ionz . 0 ) 。该技术规范包括a 和b 两部分。2 . 以给出了曾 在c an 技术规范版本1 . 2 中定义的c an报文格式,而2 . ob给出了 标准的和扩展的两种 报文格式. 此后, 1 9 93年n月工 50正式 颁布了 道路交通运载工具一数字信息交 换 一 高 速 通 信 控 制 器 局 部 网(c an ) 国 际 标 准“ 5 0 1 1 8 9 8) , 和 控 制 器 局 部 网 标 准 化、 规范化推广铺平了 道路j . 1 . zc 胡总线的特点 c an总线是德国b osch 公司从80年代初为 解决 现代汽车中 众多的 控制与测 试仪器之间的数据交换而开发的一种串 行多主数据通信协议, 通信介质可以是双 绞线、同 轴电 缆或光导纤维。 通信速率可达1 阳ps。 c an总线通信接口 中集成了 c a n 协议的物理层和数据链路层功能, 可完成对通信数据的成帧处理, 包括位填 硕士论文基于o s p 十 fpg a的c a n总线数据通信系统 充、数据块编码、循环冗余检验、优先级判别等项工作。 c an协议的一个最大特点是废除了传统的 站地址编码, 而代之以 对通信数据 块进行编码。 采用这种方 法的 优点可使网 络内的 节点个数在理论上不受限 制, 数 据块的标识码可由n位或29位二进制数组成, 因此可以定义211 或2 29个不同 的数据块, 这种按数据块编码的方式, 还可使不同的节点同时接收到相同的数据, 这一点在分布式控制系统中非常有用。 数据段长度最多为8 个字节, 可满足通常 工业领域中控制命令、工作状态及测试数据的一般要求。同时,8 个字节不会占 用总线时间过长, 从而保证了通信的实时性。 c an协议采用c rc检验并可提供相 应的错误处理功能, 保证了数据通信的可靠性。 c an卓越的特性、 极高的可靠性 和独特的设计, 特别适合工业过程监控设备的互连, 因此, 越来越受到工业界的 重视,并已公认为最有前途的现场总线之一。 另外, c an 总线采用了多主竞争式总线结构, 具有多主站运行和分散仲裁的 串行总线以及广播通信的特点. c an 总线上任意节点可在任意时刻主动地向网络 上其它节点发送信息而不分主次,因此可在各节点之间实现自由通信。 以n 总线 协议已被国际标准化组织认证, 技术比较成熟, 控制的芯片已经商品化, 性价比 高, 特别适用于分布式测控系统之间的数通讯。 c 洲总线基本特点总结11 : ( l)c an 采用多主方式工作, 网络上任意节点均可以在任意时刻主动地向网 络上的其它节点发送信息,而不分主从,通讯方式灵活; (2 )c an 信息帧采用短帧结构,对高优先级的通信请求来说,1 朋ps通信速 率时, 最长的等待时间为0 . 1 5 ms, 完全可以 满足现场控制的实时性要求。 每一帧 的 有效字节数为8 个,这样传输时间短,受干扰的概率低; ( 3)c 洲 协议废除了传统的站地址编码,而对通讯数据块进行编码,使网络 中的节点个数在理论上不受限制, 网 络中的不同节点同时接到相同的数据, 使总 线上传输的信息总量减少; (4 )c a n网络上的信息可分成不同的优先级,满足不同的实时性要求; (5) c an 采用非破坏性总线裁决技术( cs做/ cd) ,大大节省了总线冲突裁决 时间;最重要的是在网络负载很重的情况下也不会出现网络瘫痪情况( 以 太网则 可能) ; (6 )c a n网络具有点对点、组播和全局广播等几种通讯方式; ( 7) 具有极好的检错效果,c an 的每帧信息都具有c rc 校验和其他检错措 施, 保证了错误的输出率极低: (8 )c an 的直接通讯距离最远可达10 腼( 速率s k b ps 以下): 通讯速率最高 可达1 肠ps ( 此时距离易长4 如);最多可接节点达1 10 个。 硕士论文基于o s p 十 f p g a的c a n总线数据通信系 统 ( 9)以 n 协 议 也 是 建 立 在 国 际 标 准 组 织 的 开 放 系 统 互 连 模 型 基 础 上 的 , 不 过 其结构只有3 层,物理层,数据链路层 ( nc 目 标层,nlac 传输层)和应用层。 1 . 3c an总线通讯系统在红外目 标探测系统中的应用 本文c an总线通讯系统主要基于红外红外目 标探测系统, 在目 标探测系统中 主要完成图像处理系统与探测系统和控制器系统之间的高低码盘, 方位码盘以及 控制信号的数据通信, 由于红外探测系统整体结构要求通讯系统传输介质必须通 过汇流环,而且汇流环的电磁干扰很有可能会影响到通讯系统的正常通信,c an 总线通讯系统拥有高位速率, 高抗电磁干扰性, 而且能够检测出 产生的任何错误 从而保证了整体系统的正常运转。 与之前红外目 标探测系统中所用的4 85总线通 讯系统相比c an总线系统拥有很多优势: 表r s 一 4 8 5 c a n 一 b u s特性比校 特性 防一 4 8 5 刹 络一can 一 b o., 辫 络 拓朴结构 直 线 拓 , 卜一 直 线 拓 朴 褚 专 愉介质双绞线双绞线 硬件成本 很 低一 姆个节点 皮木悯加大约2 0元 总线利用串低高 网 络 特 性一 单 主 结 构 多主结构 数据才 专 翰率 低 最高只 1 达i m b p 容错机阴 无一 由 硬 件 完 成 错 误 处 理 和 境 错 , 制 通讯失败书 很 高一 极 低 节点嘴 币吴 的影响故降节点有可能铮致核个网络仰痪故隆节点对俄个网络无澎响 通1 凡 蹄离上z km 可 达1 0 k i节吸 s k b ps) 网络阅试容易需要 1 定的技术基侧 : 开发难度容易需要 一 定的技术支待 后期维护成本较高 恨低 图 1 . ir s 4 8 5 与c a n 一 b u s 特性比较 1 . 4 本论文主要研究内容: 本论文通过对c an 总线的特点的介绍, 阐述了c an 总线系统在红外目 标探测 系统中的应用。通过对整体c an 总线通讯系统功能的分析完成了 基于dsp +fpga 的c an总线数据通信系统从软件到硬件, 从原理图到pcb 电路板的设计, 实现了 红外图像处理系统与控制系统,红外探测系统之间的可靠性通讯. ( 1). 通过对系统需求分析和c an总线内 核控制器编成,完成了红外图 像处 理系统与控制系统,红外探测系统之间的高低方位码盘,控制信号的数据通信。 (2 ) . 通过对d sp中s pi内核控制器编成和f pga 中s pi模块的逻辑设计完成 了 再dsp 和f p g a 之间对c an总线数据帧的重新封装和串 行通讯。 (3 ) . 通过f p ca中逻辑模块设计和对c an总线数据帧的解析完成了高地码盘, 方位码盘,控制信号在图像处理系统中的应用。 硕士论文基于d s p+fpo a的c a n总线数据通信系统 2 . c a n 总线通信原理 2 . i c an总线通信基本介绍 控制器局域网 c an 为串行通讯协议,能有效地支持具有很高安全等级的分 布实时控制。 c an 的应用范围很广, 从高速的网络到低价位的多路接线都可以使 用c an, 其传输速度可达1 砒it/s. c an总线通信原理的制定目 的是为了 在任何 两个 c an 仪器之间建立兼容性。可是,兼容性有不同的方面,比如电气特性和 数据转换的解释。为了达到设计透明度以 及实现灵活性,根据 1 5 0 / 0 51 参考模 型, c 酬 被细分为以 下不同的层次: 图 2 . ic a n协议在周围各层中所发挥的作用 ( 1) 数据链路层 数据链路层分为逻辑链路控制子层 ( l l c)和媒体访问控制子层( 撇c ) . 逻辑 链路控制子层 (l lc) 的作用范围如下: 逻辑链路控制子层 ( l lc) 首先为远程数据请求以及数据传输提供服务。 其次 是确定由实际要使用的 l lc 子层接收哪一个报文。最后为恢复管理和过载通知 硕士论文基于d s p + fpg a的c 八 n总线数据通信系统 提 供 手 段 。 魏 里 , 定 义 对 象 处 理 较 为 自 由 。 媒体访问控制子层 ( 以c )的作用范围如下: 掀c子层是c an 协议的核心。它把接收到的报文提供给 l lc 子层,并接收 来自 l lc 子层的报文。 磁c子层的作用主要是传送规则,也就是控制帧结构、 执行仲裁、 错误检测、出错标定、 故障界定。 总线上什么时候开始发送新报文及 什么时候开始接收报文, 均在袱c 子层里确定. 位定时的一些普通功能也可以 看 作是m 人 c子层的一部分。理所当然,琳c子层的修改是受到限制的. ( 2 )物理层 物理层的作用是在不同节点之间根据所有的电气属性进行位的实际传输。 物 理层定义信号是如何实际地传输的,因此涉及到位时间、位编码、同步的解释。 同一网络的物理层对于所有的节点当然是相同的。 尽管如此, 在选择物理层方面 还是很自由的zj 。 2 . zc an总线通信原理基本概念 以n总线通信系统协议中定义了许多通信传输的规范,这些规范保证着c an 总线系统的正常通信: 报文: 总线上的报文以不同的固定报文格式发送, 但长度受限.当总线空闲 时任何连接的单元都可以开始发送新的报文. 信息路由: 在c an 系统里, 以n的节点不使用任何关于系统配置的报文( 比 如,站地址) .以 下为几个重要的概念t,j : ( 1) 系统灵活性:不需要应用层以及任何节点软件和硬件的任何改变,可以 在 c an 网络中直接添加节点。 ( 2 )报文路由:报文的内容由识别符命名。识别符不指出报文的目的地, 但解 释数据的含义。 因此, 网络上所有的节点可以通过报文滤波确定是否应对该数据 做出反应. ( 3) 多播:由于引入了 报文滤波的概念, 任何节点都可以 接收报文,并与此同 时对此报文做出反应。 ( 4 ) 数据连贯性:应确保报文在c an 网络里同时被所有的节点接收 ( 或同时不 被接收) 。因 此, 系统的数据连贯性是通过多 播和错误处理的原理实现的。 位速率: 不同的系统, c an 的速度不同。 可是, 在一个给定的系统里, 位速 率是唯一的,并且是固定的。 优先权:在总线访问期间, 识别符定义一个静态的报文优先权。 远程数据请求: 通过发送远程帧, 需要数据的节点可以 请求另一节点发送相 应的数据帧。数据帧和相应的远程帧是由 相同的识别符命名的。 多主机: 总线空闲时, 任何单元都可以 开始传送报文. 具有较高优先权报文 硕士论文基于d s p + f p g a的c a n总线数据通信系统 的单元可以获得总线访问权。 仲裁: 只要总线空闲, 任何单元都可以 开始发送报文。 如果2 个或2 个以 上 的单元同时开始传送报文, 那么就会有总线访问 冲突。 通过使用了 识别符的逐位 仲裁可以 解决这个冲突。 仲裁的机制确保了 报文和时间均不损失. 当具有相同识 别符的数据帧和远程帧同时初始化时, 数据帧优先于远程帧。 仲裁期间, 每一个 发送器都对发送位的电平与被监控的总线电平进行比较。 如果电 平相同, 则这个 单元可以继续发送。如果发送的是一 “ 隐性”电平而监视的是一 “ 显性”电平, 那么单元就失去了仲裁,必须退出发送状态。 安全性: 为了 获得最安全的数据发送, c an 的每一个节点均采取了强有力的 措施以便于错误检测、错误标定及错误自检。 错误检测:要进行检测错误,必须采取以 下措施: ( 1)监视 ( 发送器对发送位的电平与被监控的总线电平进行比较) ( 2)循环冗余检查 (3 ) 位填充 (4 ) 报文格式检查 错误检测的执行:错误检测的机制要具有以下的属性: ( 1)检测到所有的全局错误 ( 2)检测到发送器所有的局部错误 ( 3)可以 检测到报文里多达 5 个任意分布的错误 (4 ) 检测到报文里长度低于巧 ( 位)的突发性错误 ( 5)检测到报文里任一奇数个的错误 错误标定和恢复时间: 任何检测到错误的节点会标志出损坏的 报文。 此报文 会失效并将自 动地开始重新传送. 如果不再出现错误的话, 从检测到错误到下一 报文的传送开始为止,恢复时间最多为31个位的时间。 故障界定: c 洲 节点能够把永久故障和短暂扰动区别开来。 故障的节点会被 关闭. 连接: c an 串行通讯链路是可以 连接许多单元的总线。 理论上, 可连接无数 多的单元。 但由于实际上受延迟时间以 及/ 或者总线线路上电气负载的影响, 连 接单元的数量是有限的。 单通道: 总线包括有一单独的通 道。 通过此通道可以 获得数据的再同步报文。 要使此通道实现通讯, 有许多的 方法可以 采用, 如使用单芯线( 加上接地) 、 2条 差分线、光缆等等。 总 线 值( b u s va l ue s) : 总 线 有 一 个 补 充 的 逻 辑 值: “ 显 性” 或“ 隐 性” . “ 显 性” 位和“ 隐性” 位同时传送时, 总线的结果值为“ 显性” .比如, 在总线的“ 写 硕士论文基于d s p+f p g a的c a n总线数据通信系 统 一 与 ” 执 粉 时 , 逻 辑。 代 表“ 显 性 ” 等 级 , 逻 辑1 代 表“ 隐 性 ” 等 级 . 应答: 所有的接收器检查报文的连贯性。 对于连贯的报文, 接收器应答, 对 于不连贯的报文,接收器作出标志。 睡眠模式/ 唤醒: 为了减少系统电源的功率消耗,可以将 c an 器件设为睡眠模式以便停止内部活 动及断开与总线驱动器的连接。 c 酬 器件可由 总线激活, 或系统内部状态而被唤 醒。唤醒时,虽然 做c子层要等待一段时间使振荡器稳定,然后还要等待一段 时间直到与总线活动同步 ( 通过检查11个连续的“ 隐性” 的位) , 但在总线驱动 器被重新设置为 “ 总线在线”之前,内部运行已重新开始。 2 . 3c an 总线报文传输 c an总线报文传输有两种不同的帧格式,不同之处为识别符场的长度不同: 具有11 位识别符的 帧称之为标准帧. 而含有29 位识别符的帧为扩展帧闭 。 报文传输由以下4 个不同的帧类型所表示和控制: 数据帧:数据帧将数据从发送器传输到接收器。 远程帧:总线单元发出远程帧,请求发送具有同一识别符的数据帧. 错误帧:任何单元检测到总线错误就发出 错误帧。 过载帧: 过载帧用以在先行的和后续的数据帧 ( 或远程帧) 之间提供一附加 的延时。 数据帧和远程帧可以使用标准帧及扩展帧两种格式。 它们用一个帧间空间与 前面的帧分隔. 2 . 3 . ic an数据帧 数据帧由 7个不同的位场组成:帧起始 ( s t artof fr胡e ) 、仲裁场 ( a r b i t r a t i o n fra 功 e ) 、控制场 ( c o n t r o 1 f r 胡e ) 、数据场 ( d a t afr姗 ) 、 c rc 场 ( c r cf r ame ) 。 墨 辉军翔可于 育 : 图 2 . 2数据帧结构 硕士论文基于d s p + fpg a的c 人 n总线数据通信系统 帧起始( 标准格式和扩展格式) : 帧起始( s o f)标志数据帧和远程帧的起始, 仅由一个 “ 显性” 位组成。只在总线空闲时才允许站开始发送 ( 信号) .所有的 站必须同步于首先开始发送报文的站的帧起始前沿。 仲裁场:标准格式帧与扩展格式帧的仲裁场格式不同。 标准格式里, 仲裁场由11 位识别符和rtr位组成。 识别符位由工 d 一 2 8. 二 i d-1 8 。 扩展格式里,仲裁场包括29 位识别符、s rr 位、i de 位、rtr位.其识别符由 i d 一 2 8 i d 一 0 。 3a n d a r d比r ma t 卜竺鲤生小咒斗召竺竺 门1 11 。,。 , 一 。髻 1 “ 1 郎 ! , 一 敬 五 丁 户 ! ,一 口. c 1 冬 l 9 匡 二 1 1 b l t l d e 扣 t i f i e r l 叫 i j 旧 图 2 . 3数据帧中标准格式与扩展格式仲裁场对比 控制场 ( 标准格式以 及扩展格式) :控制场由6个位组成.标准格式的控制 场格式和扩展格式的不同. 标准格式里的帧包括数据长度代码、i de 位、 及 保留位ro。扩展格式里的帧包括数据长度代码和两个保留位:ri和ro。其 保留 位必须发送为显性,但是接收器认可 “ 显性”和 “ 隐性” 位的组合。 a巾朋 滋 ion j卜 日e l d 门 呀- 一 一-一一c n t 曰 lfi e l deseees ee - 一-门卜 5 怕nd 田 心f 伪m己田dext已们ed f 口 ml 盆 0 留a 日e 闭 i del rt旧 门 f 砚 口 以二a- 创d l 刀 0r 匀二 日 e目 爬留 rved b 朽 da恤【 曰 粗巾0 以 l e 图 2 . 4数据帧中控制场结构 数据长度代码 ( 标准格式以及扩展格式) :数据长度代码指示了数据场里的 字节数量。 数据长度代码为4 个位, 它在控制场里发送。 数据长度代码中数据字 硕士论文 基于o s p+fpg a的c a n总线数据通信系统 节数的编码 d 一 “ 显性” , r 一 “ 隐性” . 允许的数据字节数:0,1 , , 7, 8。其他的数值不允许使用,数据场由数据帧里的发送数据组成.它可以为0 一 8 个字节,每字节包含了8个位,首先发送m sb。 nu mb 叮o f da 怕 脚t e s 0 欲 a l月粗仇( 义 司 e 。 l o 二 二 ! 0 1 2 3 4 5 6 7 8 d d d d d d d d r d d d d 【 f r d d d f r d d r r d d r d r d r d r d 图 25数据长度代码 c r c场 ( 标准格式以及扩展格式) :c rc 场包括c r c序列 ( c r cs e q u e n c e ) , 其后是 c rc 界定符 ( c r cd e l i m i t e r ) . c r c序列 ( 标准格式以及扩展格式)由 循环冗余码求得的帧检查序列最适用于位数低于 1 27 位 ( b ch 码的帧。为进 行 c rc 计算,被除的多项式系数由无填充位流给定,组成这些位流的成分是: 帧起始、仲裁场、 控制场、数据场 ( 假如有) ,而15 个最低位的系数是0 。 将此 多项式被下面的多项式发生器除 ( 其系数以2为模) : x1 5+x 1 4+x1 0+xs+x7+x4+x3+ 1 这个多项式除法的余数就是发送到总线上的c rcs equence( crc序列) 。为了 实 现这个功能, 可以 使用巧 位的 位移寄存器 一 r c-rg( 14: 0)。 如果n x t b it 指示 位流的下一位,那么从帧的起始到数据场末尾都由没有填充的位顺序给定. 应答场( 标准格式以及扩展格式):应答场长度为2个位, 包含应答间隙(ack sl叮)和应答界定符 ( a ck d e limit e r). 在 ack场 ( 应答场)里,发送站发送 两个“ 隐性” 位。 当 接收器正 确地接收到有效的报文, 接收器就会在应答间隙(ack s l at)期间 ( 发送a ck 信号)向发送器发送一“ 显性” 位以示应答。 硕士论文基于o s p + fpg a的c a n总线数据通信系统 苏七 日e l d ackfi loe n dot 斤ame ackoe l i m淞 f ack9 0 t 图 2 . 5应答场 帧结尾( 标准格式以及扩展格式) : 每一个数据帧和远程帧均由一标志序列 定界。 这个标志序列由 7个 “ 隐性”的 位组成t2 . 2 . 3 . 2远程帧 通过发送远程帧, 作为某数据接收器的站可以初始化通过其资源节点传送不 同的数据。远程帧也有标准格式和扩展格式,而且都由6个不同的位场组成: 帧起始、 仲裁场、 控制场、 c rc 场、 应答场、 帧结尾。 与数据帧相反, 远程帧的 rtr位是 “ 隐性”的。它没有数据场,数据长度代码的数值是不受制约的 ( 可 以标注为容许范围里0 8的任何数值) 。 此数值是相应于数据帧的数据长度代 码。 夔 泣 产茹与并拿 一 : 。一 图 2 . 6远程帧结构 2 . 3 . 3c an错误帧 硕上论文基于d s p + fpo a的c 冉 n总线数据通信系 统 为了 能 正 确 地 终 止 错 误 帧, 一“ 错 误 被 动 ” 的 节 点 要 求 总 线 至 少 有 长 度 为3 个位时间的总线空闲 ( 如果 “ 错误被动”的接收器有局部错误的话) 。因此,总 线的载荷不应为1 0 既s 。 错误标志有两种形式:主动的错误标志和被动的错误标志。 ( 1 ) 主动的错误标志由6 个连续的 “ 显性”位组成。 ( 2) 被动的错误标志由6 个连续的“ 隐性” 的位组成, 除非被其他节点的 “ 显性”位重写。 0歇a - r翻1 】 e 任 阵刃 rfr am任 ! 门 t e 市别 me s p 盆e or e rt o 旷 f 匆c 即即】 o a d ra me 翔p e 甲 osit 咖 ot e 肋r f ! 刃5 :rro r, ” 图 2 . 7错误帧结构 检测到错误条件的“ 错误激活” 的站通过发送主动错误标志指示错误。 错误 标志的形式破坏了从帧起始到c rc 界定符的位填充的规则,或者破坏了a ck 场 或帧结尾场的固定形式. 所有其他的站由此检测到错误条件并与此同时开始发送 错误标志。因此, “ 显性”位的序列导致一个结果,这个结果就是把个别站发送 的不同的错误标志叠加在一起。 这个序列的总长度最小为6个位, 最大为12 个 位。检测到错误条件的 “ 错误被动”的站试图通过发送被动错误标志指示错误。 “ 错误被动”的站等待 6个相同极性的连续位 ( 这 6个位处于被动错误标志的 开始) 。当这6 个相同的位被检测到时,被动错误标志的发送就完成了.错误界 定符包括8 个 “ 隐性”的位。 错误标志传送了以后, 每一站就发送 “ 隐性” 的位 并一直监视总线直到检测出一个“ 隐 性” 的 位为止。 然后就开始发送其余7 个“ 隐 性”位。 2 . 3 . 4c a n 过载帧 过载帧包括两个位场: 过载标志和过载界定符。 有三种过载的情况, 这三种 情况都会引发过载标志的传送: ( 1) 接收器的内部情况 ( 此接收器对于下一数据帧或远程帧需要有一延时) 。 ( 2) 在间歇的 第一和第二字节检测到一个“ 显性” 位. ( 3)如果c an 节点在错误界定符或过载界定符的第8位 ( 最后一位)采样到 一个显性位, 节点会发送一个过载帧。 错误计数器不会增加。 根据过载情况 1而 硕 上论 文荃于os p 十 fpg a的 c an总线数据通信系统 引 发的过载帧只允许 起始于所期望的 间歇的第一个 位时间 ,而根据情况 2和 情 况3 引发的过载 帧应起始于所检测到“ 显性” 位之后的位。 通常为了 延时 下一 个 数据帧或远程帧,两种过载帧均可产生. 。 d 过 : 二e o r 1叫 se 一一 , l * ; 、。洲呼,n ter 巨 盯 。 r 图 卿te r p-rl!日 a m e 为e n o 翻 d 已 m 能 fllo。 , 。 。 r 二尸 ., 图 2 . 8过载帧结构 2 . 3 . 5帧空间 数据帧 ( 或远程帧) 与先行帧的隔离是通过帧间空间实现的, 无论此先行帧 类型如何 ( 数据帧、远程帧、错误帧、过载帧) .所不同的是,过载帧与错误帧 之前 没有帧间空间, 多个过载帧之间也 不是由 帧间 空间隔离的。 帧间空间 包括间 歇、总线空闲的位场. 如果 “ 错误被动”的站已作为前一报文的发送器时,则其 帧空间除了 间歇、总线空闲外, 还包括称作挂起传送 ( 别spenot 以 n s m i s s i o n ) 的位场。 对于已作为前一报文发送器的 “ 错误被动”的站,其帧间空间如下图所示: 阅叫 - - 一一1 刊 可e rf r a 州e 3孩c e一, 一, - 一 书卜 图 2 . 9帧空间结构 间 歇 ( i nter耐ssio n): 间歇包括3 个 “ 隐 性”的 位。 间歇期间, 所有的站 均不允许传送数据帧或远程帧,唯一要做的是标示一个过载条件。 总 线空闲 ( b u s i d l e):总 线空 闲的时间是任意的。 . 只要总线被认定为 空闲, 任何等待发 送报文的 站就会访问 总线。 在发 送其他 报文期间, 有报文被挂起, 对 于 这样的 报文, 其传送起始 于间 歇之后的 第一个位。 总线上检测到的“ 显性” 的 位可被解释为帧的起始。 硕士论文 基于d s p + fpg a的c a n总线数据通信系统 挂起传送 ( s u s p e n d t r a n s m i s s i o n ) : “ 错误 被动” 的 站发送报文后, 站就在 下一 报文开始传送之前或总线空闲 之前发出8 个 “ 隐性” 的位跟随在间 歇的 后面。 如果与此同时另一站开始发送报文 ( 由 另一站引 起) ,则此站就 作为 这个报文的 接收器。 2 . 3 . 6c an报文滤 波效验 报文滤波取决于整个识别 符。 允许在报文滤波中将任何的 识别符位设置为 “ 不考虑” 的可选屏蔽寄存器, 可以选择多组的识别符, 使之被映射到隶属的接 收缓冲器里。 如果使用屏蔽寄存器, 它的每一个位必须是可编程的,即,他们能 够被允许或禁止报文滤波。 屏蔽寄存器的长度可以包含整个识别符, 也可以包含 部分的识别符。 校验报文有效的时间点, 发送器与 接收器各 不相同: 发 送器 ( t r a ns毗t t er) : 如果 直到 帧的末尾 位均没有错误, 则此报文 对于发 送器有效。 如果报文破损, 则报文会根据优先权自 动重发。为了能够和其他报文 竞争总线,重新传输必须在总线空闲时启动。 接收 器 ( r eceive r):如果直 到一最 后的 位 ( 除了 帧末尾位) 均没有错误, 则报文对于接收器有效。 帧末尾最后的位被置于“ 不重要” 状态, 如果是一个“ 显 性”电平也不会引起格式错误。 2 . 3 . 7c an 错误处理 有以 下5种不同的错误类型 ( 这5种错误不 会相互排斥) ( 1 )位错误 ( b i te r r o r ) 单元在发送位的同时也对总线进行监视。 如果所发送的位值与所监视的位值不相 符合, 则在此位时间里检测到一 个位错误。 但是在仲 裁场 (ar b itra t i onf ie l d) 的填充位流期间或应答间隙 (acks l 价)发送一 “ 隐性”位的情况是例外的 此时, 当监视到一“ 显性” 位时, 不会发出 位错误。 当 发送器发 送一个被动错误 标志但检测到 “ 显性”位时,也不视为位错误. ( 2 ) 填充错误 ( s t u f fe r r o r ) 如果在使用位 填充法进行编码的信 息中, 出现了 第 6个连续 相同的 位电 平时, 将检测到一个填充错误。 ( 3 )c r c错误 ( c r ce r r o r ) c 既 序列包括发送器的c rc 计算结果。 接收器计 算 c rc 的方法与发 送器相同。 如果计 算结果与接收到c rc 序列的 结果不 相符, 则检测到一个c rc 错误。 ( 4 )形式错误 ( f o rm e r r o r ) 当一个固 定形式的位场含有1个或多 个非法位, 则检测到一个形式错误。 ( 备注: 接收器的 帧末尾最后一位期间的显性 位不被当作帧 错误) 硕上论文 基于d s p+印g 八的c a n总线数据通信系统 ( 5 ) 应 答 错 误 ( a c k n 湃l e d g m e n t e r r o r ) 只要在应答间隙 (a ck sl0t)期间 所监 视的 位不为 “ 显性” ,则发 送器 会检测到 一 个应答错误川 . 2 . 3 . sc an错误界定 至于故障界定,单元的状态可能为以下三种之一: ( 1) 错误主动 ( 2 ) 错误被动 ( 3 ) 总线关闭 “ 错误主动” 的单元可以正 常地参与 总线通讯并在 错误被检测到时发出 主动错 误 标志。 “ 错误被动”的单元不允许发送主动错误标志。 “ 错误被动”的单元参与总线通 讯,在错误被检测到时只发出被动错误标志。而且,发送以后, “ 错误被动”单 元将在初始化下一个发 送之前处于 等待状态。 “ 总线关闭”的 单元不允许 在总线上 有任何的 影响 ( 比如,关闭输出驱动 器) 。 在每一总线单元里使用两 种计 数以 便故障界 定: 发送错误计数,接收 错误 计数。 这些计数按以下规则改变: ( 1)当接收器检测到一个错误,接收错误计数就加 1 。在发送主动错误标志或 过载标志期间所检测到的错误为位错误时,接收错误计数器值不加 1 。 ( 2) 当错误标志发 送以 后, 接收 器检测到的 第一个位为“ 显性” 时, 接收 错误 计数 值加8 。 ( 3 ) 当 发送器 发送一 错误标志时,发 送错 误计 数器值加8 。 ( 4 ) 发 送主 动错误标志或过载标志时, 如果发 送器检测到位错误, 则发送 错误 计数器值加 8 。 ( 5 ) 当发送主动错误标志或过载标志时, 如果接受器检测到位错误 ( 位错误) , 则接收错误计数 器值 加8 。 ( 6 ) 在发送主动错误标志、被动错误标志或过载标志以后, 任何节点最多容许 7 个连续的 “ 显性” 位。 以下的情况, 每一发送器 将它们的发送错误计数值加8 , 及每一接收器的 接收 错误计数值加8 : 当检测到第14个连续的 “ 显性” 位后; 在检测到第8 个 跟随 着被动错误标志的连续的 “ 显性” 位以后; 在每一附 加的8 个连续 “ 显性” 位顺序 之后。 ( 7 )报文成功传送后 ( 得到a c k及直到帧末尾结束没有 错误) , 发送错误计数 器值减 1 ,除非已经是0. (8) 如果接收错误计 数值介于 1 和 1 27 之间, 在成 功地接收到 报文后 ( 直到 应答间隙接收没有错误,及成功地发送了a ck 位) ,接收错误计数器值减 1 。如 硕士论文 基于 o s p+fpg a的c a n总线数据通信系统 果接收错误计数器值是0 , 则 它保持0 , 如果大于127 , 则 它会设 置一个介于1 19 到127之间值。 ( 9 ) 当发送错误计数器值等于或超过 128时,或当接收错误计数器值等于或 超过1 28 时, 节点为 “ 错误被动” 。 让节点 成为 “ 错误被动” 的错 误条 件致使节 点发出主动错误标志. ( 10)当发送错误计数器值大于或等于2 56 时,节点为 “ 总线关闭” 。 ( 1 1 ) 当发送错误计数器值和接收错误计数器值都小于或等于 1 27 时,“ 错误 被动”的节点重新变为 “ 错误主动气 ( 12) 在总线监视到12 8次出 现 11个 连续“ 隐性” 位之后, “ 总 线关闭” 的节 点可以 变成“ 错误主 动” ( 不再是“ 总线关闭” ) , 它的错误计数值也 被设置为0, 。 硕士论文 基于 d s p+fpg a的c 产 n总线数据通信系统 3 . c a n 总线通讯系统硬件设计 3 . ic an 总线通讯系统工作原理 c an总线 通讯系 统硬件设计主要包括硬件电路三 个方面的设计如图3 . 1 。 ( 1) 对d spt m s32 o l f 2 4 07 功能运用分 析的 外围电 路设计, 在这一 部份主 要 是确定 翎s 3 2 o l f 2 4 07 c an 内核和 s pi 内核在系统中的功能运用,并对 t ms3 2 o l f 2 4 o 7 外围电 路包括j a 丁 g 下载电 路, 时 钟震荡电 路, 以 及c an总线和s pi 接口 电路设计. o sp 内 部f l ash 存储d sp 的 程序和初始 化数据; ( 2) 对f p g a c yclone e p l c6pq2 40芯片配 置电 路和外围电路进 行设计, 主 要包括j a tg 下载电 路和e zp r 渊 电 路设计, 扩 pr 哪 存储f 邢a 的固 化程序, 系统 上电后自动加载. ; ( 3) 对c an总线收发器的 接口电 路设计, 主要考虑电 阻匹配和oc一 oc信号 隔离电路设计. 整体工作流程为:由 c an 收发器t ja10 50 进行 c an 总线由差分 信号到竹l 电平信号的转化, 数据通过收发器进行各节点的输入输出; 为了增强抗干扰能力 c an 总线数据经过光电祸合器 6 n 1 3 了 进行由电信号到光信号再到电信号的转换: 对d s pt ms3 2 o l f 2 4 07 内 部的c a n 核编程,实 现其负责c an 总线数据高低码 盘, 方 位码盘, 控制 信号的 编解码和 帧封装: 再 通过对d sps pi 内 核进行编程和f p g a 内部 s pi 模块编程实现 dsp 与 f pga 基于 s pi 的可靠性数据通信。 数据通过f pga 内部f i f o 和 u rart 模块进行输入输出, 经过 7 4lv c ee h 1 6 2 2 45 与图像处理板通信。 图 3 . 1硬件系统结构图 硕士论文基于 o s p + fpg a的c a n总线数据通信系统 式选 择由林 s ell 和m se10管脚确定。 器件的工 作状态分为 三种: 一种 称之为用户 状态 ( u ser 二 ode ) ,指 电路 中器 件 正常工作 的状 态 ;一种是 配 置状态 (confi guration) , 指将编程数据 装入器件的过程, 也可称之为构造: 第 三种就 是初始化状态 ( i nitiali zation) ,器件复位各类寄存器, . 让 1/0引脚为逻辑器 件正常工作作准备。本文在调试过程中采用 j t ag 配置方式,在系统脱机运行后 采用e:pr 渊 配置器件e pcsl进行配置。 j t ag 是基于 i e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论