1 绪论
1.1 引言
随着科技的发展及战争的需要,战车、舰船、飞机等武器平台上电子设备越来越多,越来越复杂,于是将电子设备按一定的协议联网加以有效地综合,使之达到资源和功能共享已成为必然的要求。电子综合的支撑技术是联网技术,而武器平台上的联网技术不同于一般的局域网络技术,它特别强调网络的可靠性和实时性[1]。1553B总线最初是在七十年代末为适应飞机的发展由美国提出的飞机内部电子系统联网标准,其后由于它的高可靠性和灵活性而在其他的机动武器平台上也得到了较广泛的应用。
MIL-STD-1553B是70年代发展起来的“飞机内部时分制指令响应式多路传输数据总线”,它具有可靠性高、速度快、反应灵敏、双冗余等特点,特别适用于快速反应武器系统[2]。虽然其传输速率只有1Mbit/s,但它并没有因后来发展起来的高速网遭淘汰, 而是随微电子技术和计算机技术的发展而不断提高。世界上许多集成电路公司和厂家都不断开发和生产集成度更高、通用性更强的1553B总线系列器件。这些器件优化了1553B总线通讯接口,减轻了主机的通讯负担,从而提高了系统的可靠性[3]。
1.2国内外1553B总线研究发展状况及涉及领域
随着时代的发展,对于增加飞机推力、改善气动性能等技术的成熟,航空系统设计任务的重点,逐渐集中在飞机内部的电子设计上。与此同时,信息工程、计算机技术、控制技术、电子技术都有了长足的进步。航空电子综合化技术就是在这样的背景下产生的[3]。技术的核心问题是实现信息采集、处理、分配、存储的一个系统。MIL-STD-1553B多路总线是综合化航空电子系统设备间的数据交换纽带,它将所有的综合化航空电子子系统连接在一起,共同构成具有特殊性的分布式计算机网络,从而实现综合系统内部的信息共享和系统综合化控制。
航空电子系统中,不仅需要不同的硬件接口来应付不同的航空设备,而且航空设备内部接口连线也十分复杂和混乱,可靠性能也不高[3]。为了解决这个状况,提出了在航空电子系统中使用数据总线,使得不同的航空电子设备之间能够互相通信。美国军方提出的MIL-STD-1553B数据总线协议就是在航空电子综合化技术发展过程中形成的现代航空机载系统设备互联的网络接口标准。从推出到现在,经过三十多年的发展,1553B总线技术也在不断的改进。目前1553B总线已经成为在航空航天领域占统治地位的总线标准。
国内对 1553B 总线协议进行了跟踪研究,制定了相应的国军标 GJB289A,科研院所和相关单位在这方面做了大量的工作,也取得了一定的成绩。如成都恩菲特公司自主研发的 eph31580 型芯片[1]。如图1.2所示:
图1.1成都恩菲特eph31580 型芯片
1.3本论文的研究内容及安排
从接口实现的具体功能出发,采用自顶向下的设计思想,结合大型可编程逻辑器件的特点,提出了一种基于FPGA的1553B总线接口系统的设计方法。对系统进行了总体分析及结构设计,使用硬件描述语言VHDL对设计进行了描述,最后在FPGA 上进行了实现。
1553B总线系统的关键核心部分是总线接口芯片,在充分检索相关资料后,对MIL-STD-1553B数据总线协议进行分析研究,设计基于FPGA的1553B总线控制器,并要设计预留工作方式选择信号及控制信号,以可将总线控制器、远程终端接口、总线监视器结合起来以达到通用航空总线接口的功能。完成相应的软件系统语言程序最后经综合和仿真验证后,在特定的FPGA中实现。
采取的设计步骤安排如下:
第1章:主要阐述了MIL-STD-1553B总线技术的国内外发展情况以及相关领域的运用。第2章:查找一些MIL-STD-1553B数据总线协议的资料,并对其进行初步的制定步骤。第3章:结合相关书籍和设计方法对1553B总线接口提出总体的设计方案。
第4章:应用1553B总线接口的具体设计与实现FPGA,并最后对其中每个小模块的设计作详细的设计。
第5章:1553B总线接口试验分析,主要介绍总线接口芯片测试系统设计及其测试的结果分析以及系统性能分析。
第6章:总结了本文的研究设计工作,并对将来进一步的工作做了展望。
2 MIL-STD-1553B数据总线协议简介
2.1 1553B数据总线的应用和特点
由于其传输速率高,设备之间连接简单灵活,噪声容限高,通信效率高而且可靠,为美军标所采用,将其作为机载设备相互通信的总线标准。从推出到现在,经过三十年的发展,1553B总线技术也在不断的改进。目前1553B总线已经成为在航空航天领域占统治地位的总线标准[4]。
MIL-STD-1553B的其可靠性、稳定性的特点,在美国等过早已得到认可,且对1553B的使用,已由军飞机的使用扩展到坦克、船舶、卫星、武器等领域。
图2.1 1553B航空总线的大体应用领域
综合起来1553B总线有以下几个优良特点[5][6]:
(1)实时性好,1553B总线的传输码速率为1Mbps,每条消息最多包含32个字,传输一个固定不变的消息所需时间短。
(2)合理的差错控制措施和特有的方式命令,为确保数据传输的完整性,1553B采用了合理的差错控制措施——反馈重传纠错方法。当总线控制器BC向某一终端RT发出一个命令或发送一个消息时,终端应在给定的响应时间内发回一个状态字,如果传输的消息有错,终端就拒绝发回状态字,由此报告上次消息传输无效。而方式命令不仅使系统能完成数据通讯控制任务,还能调查故障情况并完成容错管理功能。
(3)总线效率高,总线形式的拓扑结构对总线效率的要求比较高,为此1553B对涉及总线效率指标的某些强制性要求如命令响应时间、消息间隔时间以及每次消息传输的最大和最小数据块的长度都有严格限制。
(4)具有命令/响应以及“广播”通讯方式,BC能够以“广播”方式向所有RT发送一个时间同步消息,这样总线上的所有消息传输都由总线控制器发出的指令来控制,相关终端对指令应给予响应并执行操作。这种方式非常适合集中控制的分布式处理系统。
2.2 编码方式
1553B总线上数据是以双相曼彻斯特编码的方式传输的。曼彻斯特码是一种广泛应用于航空电子综合系统中的、线数据传输的双极性码。它在每个码位中点存在一个跳变。1信号是一个由l到0的负跳沿,而O信号是由0到1的正跳沿。它本身包含了自定时的信息,因此它不需要独立的信道来传输位定时信息,它可以直接从数据中分离出定时时钟,在传输代码信息的同时,也将时钟同步信号一起传输到对方,每位编码中有一跳变,不存在直流分量,因此具有自同步能力和良好的抗干扰性能[7]。
它是主要用在数据同步传输中的一种编码方式。图2.2给出了 ManehesterIx编码的方式
同时此种编码方式还能与变压器祸合相协调,十分适合用在变压器祸合形式,长度为6m(20英尺)左右的场合,在航空电子综合系统中,它是最主要的编码形式[8]。
图2.2 Manehester11编码
2.2.1 FPGA的内部结构应用特点:
1)采用FPGA设计ASIC电路(专用集成电路),用户不需要投片生产,就能得到合用的芯片。
2)FPGA可做其它全定制或半定制ASIC电路的中试样片。
3)FPGA内部有丰富的触发器和I/O引脚。
4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
5) FPGA采用高速CMOS工艺,功耗低,可以与CMOS、TTL电平兼容[9]。
可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA 进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM 编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。
2.3 硬件描述语言(HDL)
硬件描述语言HDL(Hardware Description Language )是一种用形式化方法来描述数字电路和数字逻辑系统的语言。数字逻辑电路设计者可利用这种语言来描述自己的设计思想,然后利用EDA工具进行仿真,再自动综合到门级电路,最后用ASIC 或FPGA实现其功能[7]。
举个例子,在传统的设计方法中,对2输入的与门,我们可能需到标准器件库中调个74系列的器件出来,但在硬件描述语言中,“&”就是一个与门的形式描述,“C = A & B”就是一个2输入与门的描述。而“and”就是一个与门器件[10]。
硬件描述语言发展至今已有二十多年历史,当今业界的标准中(IEEE标准)主要有VHDL和Verilog HDL 这两种硬件描述语言。
2.3.1 VeriIog HDL
在数字电路设计中,数字电路可简单归纳为两种要素:线和器件。线是器件管脚之间的物理连线;器件也可简单归纳为组合逻辑器件(如与或非门等)和时序逻辑器件(如寄存器、锁存器、RAM等)。一个数字系统(硬件)就是多个器件通过一定的连线关系组合在一块的。因此,Verilog HDL的建模实际上就是如何使用HDL语言对数字电路的两种基本要素的特性及相互之间的关系进行描述的过程。
随着Verilog-XL算法的成功,Verilog HDL语言得到迅速发展。1989年,Cadence 公司收购了GDA公司,Verilog HDL语言成为Cadence公司的私有财产。1990年,Cadence公司决定公开VerilogHDL语言,于是成立了OVI(Open Verilog International)组织,负责促进Verilog HDL语言的发展。基于Verilog HDL的优越性,IEEE于1995年制定了Verilog HDL的IEEE标准,即Verilog HDL1364-1995;2001年发布了Verilog HDL 1364-2001标准。在这个标准中,加入了Verilog HDL-A标准,使Verilog有了模拟设计描述的能力[11][12]。Verilog HDL适合算法级(Algorithm)、寄存器传输级(RTL)、逻辑级(Logic)、门级(Gate)和板图级(Layout)等各个层次的设计和描述[11]。具体如表2.2所示。
表2.2 不同层级的描述方式
2.3.2 VHDL语言
VHDL 语言能够成为标准化的硬件描述语言并获得广泛应用,它自身必然具有很多其他硬件描述语言所不具备的优点[1]。归纳起来VHDL 语言主要具有以下优点:
(1) VHDL 语言功能强大,设计方式多样
VHDL 语言具有强大的语言结构,只需采用简单明确的VHDL语言程序就可以描述十分复杂的硬件电路。同时,它还具有多层次的电路设计描述功能。此外,VHDL 语言能够同时支持同步电路、异步电路和随机电路的设计实现, 这是其他硬件描述语言所不能比拟的。VHDL 语言设计方法灵活多样,既支持自顶向下的设计方式,也支持自底向上的设计方法;既支持模块化设计方法,也支持层次化设计方法。
(2) VHDL 语言具有强大的硬件描述能力[10]
VHDL 语言具有多层次的电路设计描述功能,既可描述系统级电路,也可以描述门级电路;描述方式既可以采用行为描述、寄存器传输描述或者结构描述,也可以采用三者的混合描述方式。同时,VHDL 语言也支持惯性延迟和传输延迟,这样可以准确地建立硬件电路的模型。VHDL 语言的强大描述能力还体现在它具有丰富的数据类型。VHDL 语言既支持标准定义的数据类型,也支持用户定义的数据类型,这样便会给硬件描述带来较大的自由度。
(3) VHDL 语言具有很强的移植能力
VHDL 语言很强的移植能力主要体现在:对于同一个硬件电路的VHDL 语言描述,它可以从一个模拟器移植到另一个模拟器上、从一个综合器移植到另一个综合器上或者从一个工作平台移植到另一个工作平台上去执行。
(4) VHDL 语言的设计描述与器件无关
采用VHDL 语言描述硬件电路时,设计人员并不需要首先考虑选择进行设计的
器件。这样做的好处是可以使设计人员集中精力进行电路设计的优化,而不需要考虑其他的问题。当硬件电路的设计描述完成以后,VHDL 语言允许采用多种不同的器件结构来实现。
(5) VHDL 语言程序易于共享和复用
VHDL 语言采用基于库( library) 的设计方法。在设计过程中,设计人员可以建立各种可再次利用的模块,一个大规模的硬件电路的设计不可能从门级电路开始一步步地进行设计,而是一些模块的累加。这些模块可以预先设计或者使用以前设计中的存档模块,将这些模块存放在库中,就可以在以后的设计中进行复用[11]。
由于VHDL 语言是一种描述、模拟、综合、优化和布线的标准硬件描述语言,因此它可以使设计成果在设计人员之间方便地进行交流和共享,从而减小硬件电路设计的工作量,缩短开发周期。
2.3.3 veriIog HDL和VHDL的比较
目前最主要的硬件描述语言是VHDL和Verilog HDL。VHDL发展的较早,语法严格,而Verilog HDL是在C语言的基础上发展起来的一种硬件描述语言、语法较自由(目前ASIC设计多采用Verilog语言)[10]。VHDL和VerilogHDL两者相比,VHDL 是一种高级的描述语言,通常更适合行为级和RTL级的描述,可以用于高级建模,而VerilogHDL则是一种比较低级的描述语言,更适合于RTL级,尤其是门级电路的描述,易于控制电路的资源。另外,从两种语言推进的过程来看,VHDL语言偏重标准化考虑,而Verilog语言由于是在Cadence扶植下针对EDA工具开发的硬件描述语言,因此,跟EDA工具的结合更为密切。学习VHDL比学习Verilog难一些,但Verilog 自由的语法也使得的初学者容易上手但也容易出错。国外电子专业很多在本科阶段教授VHDL,在研究生阶段教Verilog。从国内来看,VHDL的参考书很多,便于查找资料,而VerilogHDL的参考书则很少,这给学习Verilog HDL带来不少困难。结合两者的优点,经常采用VHDL和VerilogHDL两种混合语言进行电子线路描述,使得利用语言描述硬件的效果更佳[12][13]。
2.4 1553字结构
1553B总线协议规定,总线上数据是以曼彻斯特编码的字格式进行传输的。协议规定每次信息传输包括命令字、数据字(指令字和状态字)等几种字格式。每种字的字长为20位,因为总线数据传输速率是1Mb1t/s,所以传输每一位需要 1us的时间,传输一个完整的字需要20us。这几种字格式的有效信息位是16位,每个字的前3位为同
步位,用来表示数据到来并区分为何种字类型。最后一位为校验位,1553B协议规定总线上传输的数据全部采用奇校验,这种做法方便各个终端设备的接口统一,保证数据传输的可靠性。由发送端为数据进行补奇,接收端进行奇校验。数据是以曼彻斯特编码的方式传输的。同步头是判断数据类型和捕获总线上数据的重要信息,同步头总共占用3个数据位,它的特点就是电平变化以1.5个数据位为单位,因此接收端只要判断电平在1.5个数据单位变化就认为是同步头。同步头分为两种:前 1.5个数据位为高电平,后1.5个数据位为低电平的同步头用来表示这个字为命令字(方式指令字)或者状态字;前1.5个数据位为低电平,后1.5个数据位为高电平的同步头用来表示这个字为数据字[15]。
图2.3 1553B总线命令字/数据字/状态字格式图
2.5 155B总线的网络拓扑结构
MIL-STD-1553B总线网络由终端、字系统和总线传输介质组成。终端是使数据总线和子系统相连接的电子组件。字系统为多路数据总线上接收数据传输服务的装置
或功能单位。总线控制器(BC)是总线系统上传输的信息并有选择地提取信息以备后用的终端。
1553B总线系统采用命令、响应式传输的操作方式。只有当总线控制器发出命令后,远程终端才能做出响应,也即远程终端永远是被动的,即使它想给BC或者给别的RT发信息。
2.6 对于BC功能的155B工作模式
1553B的三种工作模式:总线控制器(Bus Controller),远程终端(Remote Terminal),总线监控器(Bus Monitor)。
其中总线控制器(BC):对1553B总线的控制和管理,也是所有信息传输动作的发起者。任何时刻总线上只有一个总线控制器,其负责发送命令、参与数据传输、接收状态响应和检测总线系统。
2.7 155B总线的传输方式和数据格式
1553B总线的传输速度是1Mb/s,采用曼彻施特II型编码,半双工工作方式。信号以串行数字脉冲编码调制(PCM)形式在数据总线上传输。逻辑1为双极编码信号1/0,即一个正脉冲继之一个负脉冲,逻辑0为双极编码信号0/1,即一个负脉冲继之一个正脉冲[14][15]。
图2.4 155B总线的传输方式
1553B信息流由一串1553B消息由命令字、数据字、状态字组成。所有1553B 字都是20bit长,每一个字都应是:3为同步头+16位数据/命令/状态为+1为奇偶校
验。同步和奇偶校验位被1553硬件用在确定1553信息格式和数据错误的时候[17]。
3 155B3总线接口设计总体方案
3.1 1553B数据总线系统的设计
总线系统原理工作硬件组成如图3.1
cs
图3.1 总线总体设计思路组成
1553B总线接口主要包括3大模块,双通道收发器、1553B协议处理器和接口寄存器,以及使用FPGA的片内双口RAM存储器。双通道收发器属于电平转换设备,不能够在FPGA内部实现,可以用收发芯片等来完成其功能。1553B协议处理器完成总线控制器的主要功能。CPU处理器,EPROM,RAM,信道切换逻辑等组成,完成接收与发送消息的打包和解包处理,以便于子系统接收/发送。与宿主机接口模块实现宿主机与总线接口板间的接口,连有双端口存储器,驱动电路和译码电路。双口存储器主要用于主机和总线接口板进行信息交换的缓冲区,减少主机的负荷。
3.2 1553B协议处理器结构
1553B协议处理器是一个1553B总线接口的核心部分。它完成包括收发消息,数据流控制等多种协议处理流程。因为总线接口可以分为总线控制器BC、远程终端RT和总线监视器BM三种类型,所以协议处理器按功能可以划分为BC、RT或者BM。本设计要实现的BC和RT在有些功能上是相同的,所以部分模块是BC/RT通用的。
总线控制器BC实现的功能[18]
总线控制器是总线信息传输的发起者,要实现的具体功能包括:
(l)信息的正确发送:包括命令字/方式指令的写入、添加同步头、字计数、曼彻斯特编码等。
(2)信息的正确接收:包括状态字和数据字的接收、同步头识别、字计数、曼
彻斯特解码、产生中断及奇偶校验等。
(3)字/消息的处理:包括命令字提取,双命令字的协调、状态字的分析、接口
寄存器的读写、自测试、存储器及缓冲器读写等。
所以,以下的实验内容主要是围绕着这子模块进行编写和设计。如图3.3 就是对该些
图3.2 总线接口系统结构图
(1)模拟收发器部分:简要来说接收部分是将双电平曼彻斯特码转化为单电平曼彻斯特码,而发送部分则是将单电平曼彻斯特码转化为双电平曼彻斯特码,包括模拟接收器和模拟发送器两部分。
①模拟接收器:数字逻辑与数据总线相接的最基本前端模拟部件。由于FPGA纯粹基于数字电路设计,所以对于模拟接收中的模拟量处理部分,要经过外部模拟电路进行实现。尽管总线上的信号是以数字形式传输的,但连接终端的双绞屏蔽线电缆,其特性会引起信号衰减,终端收到的信号常是一个失真的正弦波。总线上的输入信号通过滤波消除了高频噪声。门限检出为抑制低频噪声创造了条件且具有与逻辑检测相兼容的数字输出。并将双极性的曼彻斯特码转换为单极性的曼彻斯特码。
②模拟发送器:数字逻辑与数据总线相接的模拟部件,它是将FPGA发出的单极性信号转变为符合MIL-STD-1553B标准的双极性信号。
(2)总线接口部分:接收部分实现的功能是将曼彻斯特码转换为单极性不归零码(NRZ 码),并且实现对同步头的检测,以及奇偶位的校验,实现串/并转换。发送部分实现的功能是将曼彻斯特码转换为双极性不归零码(NRZ码),并且实现对同步头的编码,实现状态字、数据字和命令字的编码,以及奇偶位的产生,进行并/串转换。根据1553B 通讯协议的规定,发送器要禁止发送大于800微秒的消息。包括数字接收器,数字发送器和发送超时检测三部分。
①数字发送器:该部分即为曼彻斯特码编码,它是将单极性不归零码转换为单极性的曼彻斯特码,而且实现对同步头的编码,以及奇偶位的产生,并对数据进行并/串转换。
②数字接收器:该部分即为曼彻斯特码解码,功能与发送器刚好相反,是将单极性曼彻斯特码转换为单极性不归零码,同时实现对同步头的检测,以及奇偶位校验位检测,位计数检测,同步时钟的提取,以及数据的串/并转换。
③发送超时检测:在MIL-STD-1553B协议标准中规定发送器要禁止发送大于800微秒的消息。本模块就是对发送器进行计时控制,当发送器发送的消息时间大于800微秒时,它就关断发送器。
(3)总线协议处理模块:实现命令字、状态字以及方式命令译码,进行RT地址比较,子地址比较,进行命令字、状态字和方式命令译码,进行错误检测及发送中断信号等。并要为其余模块发送相应控制量,实现对总线接口的控制。包括命令字/状态字译码及数据控制,地址控制,检错控制,命令字发送及状态字设置,发送器控制等几部分。
①命令字/状态字译码及命令字发送控制部分:该模块实现的功能是在BC工作方式下发送命令字,且在BC/RT/MT三种工作模式下对命令字或状态字进行译码,产生相应的控制信号实现对其他模块的控制,如对地址控制部分,检错控制部分,命令字发送/状态字设置部分,以及发送器控制部分等,本部分是接口芯片的一个核心部分。
②地址控制部分:该模块实现对各工作方式下输入双口RAM的地址的控制以及读写使能。包括地址变换和地址选择两部分。
③检错控制部分:该模块用于检测消息传输过程中发生的错误,包括字计数检测及RT响应超时检测,并且根据其它模块检测到的RT地址错误、奇偶校验错误和位计数错误等产生中断信号[17]。
④状态字设置部分:该模块实现RT工作方式下的返回状态字设置,及对状态字和当前命令字和上一命令字进行存储,以备方式命令的消息方式的实现。
⑤发送器控制模块:针对不同的工作方式的所需要发送的数据的选择。
⑥时钟产生:对外部输入时钟进行处理产生不同频率的时钟。它实质上是一个计数器,对外部输入时钟进行分频处理。
(4)主处理器接口部分:实现主处理机与总线接口交换信息的功能,通过共享RAM来实现。包括并行通信接口、串行通信接口、存储器接口和双端口RAM。其中每部分的具体功能如下:
①存储器接口:它实际上是一个隔离器,对外部子系统处理器和总线接口芯片对双口RAM进行访问的信号进行处理,它不允许两者同时对双口RAM进行读或者写,当两者同时读或写时,进行相应控制,规定两者的访问优先级。
②双口RAM:它是整个芯片的数据存储区,用以存储不同工作方式下的各类字,是传输消息的内容数据,也是处理器与总线接口芯片通信的数据交换媒介[18]。
③并行通信控制接口:该部分主要实现总线接口芯片与主处理器并行通信。
④串行通信接口:该部分即为了实现总线接口芯片的串行通信,在FPGA中嵌入UART(通用异步收发器),可以与具有UART的通信接口部件相连接,例如通过RS232总线与PC机进行串行通信。
3.3 总线接口寄存器模块功能
接口寄存器是以控制和状态寄存器来实现的,主要有以下几个寄存器:远程终端命令字寄存器:RT模式下,存储接收到的所有命令字和方式指令字。接收命令字寄存器:只在RT的模式下使用,信息完整的接收后,命令字会从远程终端命令字寄存器送入此寄存器[18]。
第一命令字寄存器:存放BC要发送的命令字,或者存放RT一>RT传输的第一个命令字。
矢量字/第二命令字/方式指令数据寄存器:在BC模式下,可以存放RT一>RT传输时的第二个命令字或者方式指令需要的数据字;在RT模式下,存放方式指令提取的矢量字。
第一状态字寄存器:存放RT返回的状态字,或者是RT一>RT模式下RT返回的第一个状态字。
同步/第二状态字/返回方式指令数据寄存器:在BC模式下,此寄存器既可以存放来自RT一>RT模式下传输的第二个状态字也可以存放来自RT的方式指令返回字:RT模式下,作为存放带数据字的方式指令字的数据字的寄存器。
操作寄存器:子系统用来控制总线接口的寄存器。配置整个接口的功能选择。方式指令寄存器:RT接收到的方式指令[14]。
4 1553B总线接口具体设计与实现
4.1总线BC功能
总线控制器BC是1553B总线上唯一可以发起和终止消息传输任务的终端。一条总线上只可以存在一个总线控制器,它是1553B总线的指挥和调度者。其主要功能是,向系统中的远程终端发出指令,控制终端的行为。包括发送广播指令,模式代码(mode code)指令;普通发送数据指令,普通接收数据指令。
作为总线控制器,要实现的任务包括:
(1)数据字的正确接收:包括接收器,同步检出,数据检出,曼彻斯特n码错误检出奇偶检测,位/字计数;
(2)数据字的发送:包括发送控制,同步/数据编码,时钟产生;
(3)字/消息的处理:包括,a接收部分,计数器,状态寄存器;b自测试部分;c主子系统接口部分,控制,数据地址,控制寄存器;d存储器缓冲器部分;e状态字译码部分,字计数识别,消息错误检出等任务[18]。
作为MILSTD一1553B总线的通用接口应完成以下功能:①将总线上的串行信息流转换成处理机可以处理的并行信息或者与之相反;②接收或发送信息时,能够识别或生成标准的1553B信息字和消息;③完成与处理机之间的信息交换,这包括1553B信息地址的分配,命令字(或状态字)的译码或返回状态字、发送数据字等。4.2 1553B协议处理器BC功能模块设计
4.2.1 模拟收发器
模拟收/发器是BCR/T/MT直接与传输电缆接口的关键部件,1553B总线采用的是双相码中的曼彻斯特码,本身包含了自定时的信息,同时它能与变压器祸合协调,十分适宜用于变压器祸合形式,电缆长度为500英尺左右航电综合系统中。简要的说就是将双电平曼彻斯特码转化为单电平曼彻斯特码,以及将单电平曼彻斯特码转化为双电平曼彻斯特码。
4.2.2 总线控制器BC设计
总线接口的每一种类型的终端的设计都包括模拟收发器、总线接口模块、总线控制模块、处理机接口模块四部分,都需要完成字处理和消息处理,而BC是总线上唯一被安排为执行建立和启动数据传输任务的终端,被指派启动数据总线上信息传输任务的终端。针对BC功能,其FPGA部分的逻辑结构如图4.1示。
外部时钟
图4.1 总线控制器内部结构图
下面将结构图中的各小模块进行设计说明。
4.2.3 消息发送器
在BC模式下,需要涉及到发送指令文字,所以发送消息控制模块根据工作模式从接口寄存器中读取相应的指令字,从而判断消息传输模式是否带数据字等。然后控制发送单元将指令字和数据字发送出去。BC在发送命令字的同时也对发出的命令字进行译码,包括提取RT地址,以及要发送数据字的个数,来产生控制信号提供给其他模块。在RT模式只需要发送状态字、数据字和方式指令数据码,数据字计数需要从命令字的字计数字段提取,方式指令数据码是BC通过方式指令字读取的RT状态,包括上一状态字、上一命令字、矢量字等。
Moore型有限状态机的输出只与有限状态机的当前状态有关,与输入信号的当前值无关。在图4.2中描述了Moore型有限状态机的示意图.
图4.2 Moore型有限状态机示意图
Moore型有限状态机在时钟clock脉冲的有效边沿后的有限个门延时后,输出达到稳定值。即使在一个时钟周期内输入信号发生变化,输出也会在一个完整的时钟周期内保持稳定值而不变。输入对输出的影响要到下一个周期才能反映出来,Moore型有限状态机最重要的特点就是将输入与输出信号隔离开来。
单进程Moore型有限状态机,其VHDL语言描述如下:
Library ieee;
Use ieee.std_logic_1164.all;
Entity moore is
Port(datain : in std_logic_vector(1 downto 0);
Clk,clr : in std logic;
q : out std_logic_vector(3 downto 0);
End moore;
Architecture behav of moore is
Type st_type is (st0,st1,st2,st3,st4);
Signal c_st : st_type;
Begin
Processs(clk,clr)
Begin
If clr=’1’ then
C_st<=st0; q<=”0000”;
Elsif clk event and clk=’1’ then
Case c_st is
When st0=>if datain”10” then c st<=st1;
Else c_st<=st0; end if; q<=”1001”;
When st1=>if datain”11” then c st<=st2;
Else c_st<=st1; end if; q<=”0101”;
When st2=>if datain”01” then c st<=st3;
Else c_st<=st0; end if; q<=”1100”;
When st3=>if datain”00” then c st<=st4;
Else c_st<=st2; end if; q<=”0010”;
When st4=>if datain”11” then c st<=st0;
Else c_st<=st3; end if; q<=”1001”;
When others=>c_st,=st0;
End case;
End if;
End process;
End behav;
其特点是组合进程和时序进程在同一个进程中,此进程可以认为是一个混合进程。注意在此进程中,CASE语句处于测试时钟上升沿的ELSIF语句中,因此在综合时,对Q的赋值操作必然引进对Q锁存的锁存器。这就是说,此进程中能产生两组同步的时序逻辑电路,一组是状态机本身,另一组是由CLK作为锁存信号的4位锁存器,负责锁存输出数据Q。与多进程的状态机相比,这个状态机结构的优势是,输出信号不会出现毛刺现象。这是由于Q的输出信号在下一个状态出现时,由时钟上升沿锁入锁存器后输出,即有时序器件同步输出,从而很好地避免了竞争冒险现象。
从输出的时序上看,由于Q的输出信号要等到进入下一状态的时钟信号的上升沿进行锁存,即Q的输出信号在当前状态中由组合电路产生,而在稳定了一个时钟周期后在次态由锁存器输出,因此要比多进程状态机的输出晚一个时钟周期,这是此类状态机的缺点。图4.3单进程Moore状态机的工作时序图:
图4.3 单进程Moore型状态机的工作时序
4.2.4寄存器
1:I/O写寄存器
寄存器的写操作VHDL语言描述如下:
write:proeess(strb,wr) FPGA的I/O端口进程
begin
if(wr’event and wr=’0’)then 写信号wr有效时继续执行该进程
if(ios=’0’ and strb=’0’)then 判断是信息否是写外部I/O端口
case addr is
when”11111”=>commandword<=datadsp; 写入I/O地址IF
when”11110”=>dataword<=datadsp; 写入I/O地址IE
when”11101”=>timerword<=datadsp; 写入I/O地址ID
when others=>null;
end case;
end if;
end if;
end proeess;
其操作波形如图4.4所示:图中在wr下降沿,在strb和ios信号为低电平时分别对I/O端口1F,lE,1D都进行了写操作。
图4.4 I/O接口写操作
2:I/O读寄存器
读寄存器的VHDL实现如下:
read:process(strb,rd) 读FPGA的I/O进程
begin
if(rd’event and rd=’0’)then 读信号rd有效时执行该进程
if(ios=’0’ and strb=’0’)then 判断端口状态
case addr is
when”11100”=>datadsp<=datal553; 读出1553B数据,地址IC
when”11011”=>datadsp<=statusl553; 读出1553B状态,地址IB
when”11010”=>datadsp<=timervalue; 读出计数器的值,地址IA
when other=>datadsp=>”zzzzzzzzzzzzzzzz”; 读其它I/O端口则总线置为高阻状态end case;
end if;
else
datadsp<= “zzzzzzzzzzzzzzzz”;
end if;
end process:
4.2.5 计数器
计数器单元的功能是实现一个4~12微妙的计数器,如图4.5所示。该计数器的输入信号有:(l)clock32m,32兆赫兹的时钟输入信号;(2)timerstart,计数器启动信号;
TIMRER
图4.5 计数器方框图
(3)timerclr,计数器清零信号;(4)timerctl,计数器控制信号,当该端口收到一个高脉冲时,表示F206要写入新的计数值,该计数值由F206通过I/O地址ID写入FPGA 的寄存器timerword;计数器收到该信号后,就会把新的计数值装入计数周期单元中,该值由用户自己定义大小,它的取值范围M为:
4微妙12微妙
计数器的时钟周期计数器的时钟周期
可算得,128 384之间;
CAN总线协议解析 李玉丽 (吉林建筑工程学院电气与电子信息工程学院,吉林长春,130021 ) 摘要:现场总线的发展与应用引起了传统控制系统结构的改变。控制局域网(C AN)总线因其自身的特点被广泛应用于 自动控制领域。本文对C AN总线协议作了详尽解析。 关键词:C AN总线;隐性位;显性位;节点 中图分类号:T U 85 文献标识码:A CAN(Cont roll e r A rea N et work)是分布式实时控 制系统的串行通信局域网,称谓CAN总线。在数据 实时传输中,设计独特、低成本,具有高可靠性,得到 广泛应用。 本文着重解析C AN 技术规范2.0B 版的CAN 的分层结构规范和CAN 报文结构规范。重点在于 充分理解CAN总线协议精髓,有助于CAN总线的 局网设计、软件编程、局网维护。 一、C AN的分层结构 CAN 遵从O SI ( Ope n Syste m I nte rc onnec ti on Re fe re nce Mode l ) 模型,其分层结构由高到低如图1 所示。 图1 C AN的分层结构 对应OSI 模型为两层,实际为三层,即LLC、 MA C、PL S。由此而知,对应于CAN总线系统每个 节点都是三层结构。数据发送节点数据流为LLC→ MA C→P LS ,然后将数据发送到总线上;而对于挂在 总线上的所有节点(包括发送节点)的接收的数据流 为PL S→MA C→LLC。 这种分层结构的规范保证了CAN 总线的多主 方式工作模式,即不分主从,非破坏性的仲裁工作模 式。而LLC 层的报文滤波功能可实现点到点、一点 对多点、全局广播、多点对一点,多点对多点等数据 传递方式。 各分层主要功能如下: LLC 层:接收滤波、超载通知、恢复管理; MAC 层:控制帧结构、执行仲裁、错误检测、出 错标定、故障界定。该层是CAN的核心; PL S 层:位编码/ 解码、位定时。 二、CAN总线的报文规范 CAN报文的传送有4 种不同类型的帧结构,数 据帧、远程帧、出错帧、超载帧。CA B2.0B 有4 种帧 格式。 (一)数据帧
AXI总线协议资料整理 第一部分: 1、AXI简介:AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持显著传输访问和乱序访问,并更加容易就行时序收敛。AXI 是AMBA 中一个新的高性能协议。AXI 技术丰富了现有的AMBA 标准内容,满足超高性能和复杂的片上系统(SoC)设计的需求。 2、AXI 特点:单向通道体系结构。信息流只以单方向传输,简化时钟域间的桥接,减少门数量。当信号经过复杂的片上系统时,减少延时。 支持多项数据交换。通过并行执行猝发操作,极大地提高了数据吞吐能力,可在更短的时间内完成任务,在满足高性能要求的同时,又减少了功耗。 独立的地址和数据通道。地址和数据通道分开,能对每一个通道进行单独优化,可以根据需要控制时序通道,将时钟频率提到最高,并将延时降到最低。第二部分: 本部分对AXI1.0协议的各章进行整理。 第一章 本章主要介绍AXI协议和AXI协议定义的基础事务。 1、AXI总线共有5个通道分别是read address channel 、write address channel 、read data channel 、write data channel、write response channel。每一个AXI传输通道都是单方向的。 2、每一个事务都有地址和控制信息在地址通道(address channel)中,用来描述被传输数据的性质。 3、读事务的结构图如下:
+接口+协议+规范工业自动化领域各种总线 工业自动化总标识特点简介 ASI 用于下位控制级的传感器/执行器总线【整理】ASI接口/协议 /规范用于将传感器和执行器连接AS-interface AS 至上位控制层,布线简单、经济。IEC EN 50295 符合国际标准和interface 标准。62026-2 传感器接执行器/AS-i = AS-Interface(口)是用于连接执行器和传感器的现 场总线通讯方案。BACnet==楼【整理】工业自动Building Automation Control Network 化之楼宇自动化之宇自动控制网.
用于执行器/传感器领域的多主站总线 对总线带宽的有效利用使得CANopen能 够在数据传输速率相对较低的情况下实现较短的系统响应时间。CAN 总线的主 要优点有:数据安全性高,能够保留多主站能力。 CC-Link 主要针对亚洲市场的现场总线 CC-Link(Control & Communication
Link,控制与通信链路)是一种开放式总线系统,用于控制级和现场总线级之间的通讯,应用范围主要为亚洲地区。 ControlNet 标准化现场总线 ControlNet 是一种开放式标准现场总线系统。该总线协议允许循环数据和非循 DALI 楼宇自动化领域的通讯标准【整理】工业自动)是一种跨越厂商标准 (IEC60929DALI 化总线之楼宇自动化之照明接口:的协议,其目的是在照明应用中确保电子DALI1-镇流器的互用性。这个新标准用于替代调光器接口。10VDigital ,数字可寻址照明接口(DALI)是一种楼Addressable Lighting Interface化
AXI 总线协议资料整理 第一部分: 1、AXI 简介:AXI (Adva need eXte nsible In terface 是一种总线协议,该协议是ARM 公司提出的AMBA( Advanced Microcontroller Bus Architecture)3.0 协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控 制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首 地址,同时分离的读写数据通道、并支持显著传输访问和乱序访问,并更加容易就行时序收敛。AXI 是AMBA 中一个新的高性能协议。AXI 技术丰富了现有的AMBA标准内容,满足超高性能和复杂的片上系统(SoC)设计的需求。 2、AXI 特点:单向通道体系结构。信息流只以单方向传输,简化时钟域间的桥接,减少门数量。当信号经过复杂的片上系统时,减少延时。 支持多项数据交换。通过并行执行猝发操作,极大地提高了数据吞吐能力,可在更短的时间内完成任务,在满足高性能要求的同时,又减少了功耗。 独立的地址和数据通道。地址和数据通道分开,能对每一个通道进行单独优化,可以根据需要控制时序通道,将时钟频率提到最高,并将延时降到最低。第二部分: 本部分对AXI1.0 协议的各章进行整理。 第一章 本章主要介绍AXI 协议和AXI 协议定义的基础事务。 1 、AXI 总线共有5 个通道分别是read address channel 、write address channel 、read data channel、write data channe、l write response ehanne。每一个AXI传输通道都是单方向的。 2、每一个事务都有地址和控制信息在地址通道( address channel 中,用来描述被传输数据的性质。 3、读事务的结构图如下:
工业现场总线协议解析 工业网络通常采用现场总线协议,通过实时和可靠的分布式控制功能来连接生产车间中的仪器仪表和机械设备,比较容易并且可靠的控制所实现的系统。现场总线标准应用非常广泛,大量已经安装的设备都采用了现场总线。但是,大部分这些现场总线标准都是基于(已有的)串行通信协议标准(与RS485或者RS232相似),没有充分发挥应用广泛的以太网技术的优势。 随着系统复杂程度的增加,大部分现场总线难以满足平台通用性和系统性能的要求。这促使设备生产商转向采用基于以太网的通信技术,实现高性能、低成本和很好的通用性。很多现场总线标准都已经集成到工业以太网协议中,采用很少的控制功能,实现实时通信和工业互联,同时保护了在现场总线软件和已有设备上的投入。 控制区域网(CAN)是一种广播、差分串行总线标准,工作在干扰较大的电力机械(噪声)环境中。CANopen建立在自动化应用CAN (例如,数据链路层和物理层)基础上,能够实现百分之百的数据完整性,而采用以太网无法满足这一要求。 DeviceNet是设备级网络,为工业自动化提供可靠、高效的数据处理功能。ControlNet是一种实时、确定性、可重
构的控制层网络,适用于数据和消息的高速传送。DeviceNet 和ControlNet的应用层基于公共工业协议(CIP)层,它也用于Ethernet/IP中。这些协议目前由独立开放设备供应商协会(ODV A)管理。 LonWorks是用于开发照明和HV AC等自动化/控制应用的流行协议标准。LonWorks网络设备可使用各种介质,包括双绞线、电源线、以太网、光纤和RF等。 Modbus是为可编程逻辑控制器(PLC)应用开发的免版税开放串行通信协议。Modbus支持很多设备连接在同一网络上,例如监控以及数据采集(SCADA)系统中管理计算机和远端单元(RTU)的连接等。Modbus基本结构由Modbus/IDA进行管理,这一自动设备独立用户和供应商组织希望能够推动这一协议标准的广泛应用。 过程现场总线(PROFIBUS)是一种现场总线协议。对于分散外围设备和过程自动化(DP和PA)这两种PROFIBUS,在分散生产和过程控制中,PROFIBUS DP一般通过中央控制器对传感器和激励器进行控制。应用较少的PA主要用于监视测量设备。经过多年的应用,PROFIBUS在生产和过程自动化方面都得到了广泛认可。Profibus国际组织(PI)不断完善并推进PROFIBUS技术的应用。 串行实时通信系统(SERCOS)接口为运动控制、数字伺服驱动和输入/输出(I/O)设备提供标准、实时、高性能通信链接。
工业自动化领域各种总线+协议+规范+接口 用于下位控制级的传感器 AS-interface 至上位控制层,布线简单、经济。 interface 62026-2 AS-Interface 是用于连接执行器和传感器的现场总线通 讯方案。 Building Automation Control Network
用于执行器 对总线带宽的有效利用使得 够在数据传输速率相对较低的情况下实 较短的系统响应时间。 点有:数据安全性高,能够保留多 力。 主要针对亚洲市场的现场总线 CC-Link 控制与通信链路)是一种开放式总线系统,用于控制级和现场总线级之间的通讯, 范围主要为亚洲地区。 标准化现场总线 ControlNet 统。 同时通过总线进行交换, 响。
楼宇自动化领域的通讯标准 DALI 协议, 器的互用性。 光器接口。 数字可寻址照明接口( Addressable Lighting Interface 宇自动 制。 百叶帘或温度控制,可直接与楼宇管理统进行通讯。 采用 DeviceNet 统, 区也得到越来越多的应用。 CAN 总线。
楼宇自动化领域的通讯标准 EIB 总线) 主要在欧洲地区广泛应用。 免维护、无需电池、无需接线 是一种无线技术。 主要用于楼宇自动化: 不同的设备模块(比如一个灯的开关)内嵌了 制该设备。 EtherCAT Technology 网)是用于工业自动化的以太网解决方 具有性能优异和操作简单等特点。
来自 Ethernet/IP Vendor Association 商协会)制定的工业以太网标准,它以Ethernet TCP/IP 网络总线 以太网是办公领域的一项重要标准, 所具备的很多优点,如传输速率高、与现有网络的集成简单、 多等,在 充分体现。 符合
[Guide Subtitle] [optional] UG761 (v13.1) March 7, 2011 [optional]AXI Reference Guide UG761 (v13.1) March 7, 2011
Xilinx is providing this product documentation, hereinafter “Information,” to you “AS IS” with no warranty of any kind, express or implied. Xilinx makes no representation that the Information, or any particular implementation thereof, is free from any claims of infringement. Y ou are responsible for obtaining any rights you may require for any implementation based on the Information. All specifications are subject to change without notice. XILINX EXPRESSL Y DISCLAIMS ANY WARRANTY WHA TSOEVER WITH RESPECT TO THE ADEQUACY OF THE INFORMATION OR ANY IMPLEMENTATION BASED THEREON, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR REPRESENT ATIONS THAT THIS IMPLEMENTA TION IS FREE FROM CLAIMS OF INFRINGEMENT AND ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A P ARTICULAR PURPOSE. Except as stated herein, none of the Information may be copied, reproduced, distributed, republished, downloaded, displayed, posted, or transmitted in any form or by any means including, but not limited to, electronic, mechanical, photocopying, recording, or otherwise, without the prior written consent of Xilinx. ? 2011 Xilinx, Inc. XILINX, the Xilinx logo, Virtex, Spartan, ISE, and other designated brands included herein are trademarks of Xilinx in the United States and other countries. All other trademarks are the property of their respective owners. ARM? and AMBA? are registered trademarks of ARM in the EU and other countries. All other trademarks are the property of their respective owners. Revision History The following table shows the revision history for this document: Date Version Description of Revisions 09/21/2010 1.0Initial Xilinx release in 12.4. 03/01/2011 2.0Second Xilinx release in 13.1. Added new AXI Interconnect features. Corrected ARESETN description in Appendix A. 03/07/2011 3.0Corrected broken link. AXI Reference Guide https://www.wendangku.net/doc/a710177271.html, UG761 (v13.1) March 7, 2011
DeviceNet 现场总线协议讲解
Devicenet 简介: DeviceNet 是由美国 Rockwell 公司在 CAN 基础 上推出的一种低成本的通信链接, 是一种低端网络系统。 它将基 本工业设备连接到网络,从而避免了昂贵和繁琐的硬接线。 DeviceNet 是一种简单的网络解决方案,在提供多供货商同类部 件间的可互换性的同量, 减少了配线和安装工业自动化设备的成 本和时间。DeviceNet 的直接互连性不仅改善了设备间的通信, 而且同时提供了相当重要的设备级诊断功能。 现场总线系统的结构和技术特点 1. 现场总线的历史和发展 现场总线是 20 世纪 80 年代中期在国际上发展起来的。 随着 微处理器与计算机功能的不断增强和价格的急剧下降, 计算机与 计算机网络系统得到迅速发展, 而处于生产过程底层的测控自动 化系统,采用一对一联机,用电压、电流的模拟信号进行测量控 制, 或采用自封闭式的集散系统, 难以实现设备之间以及系统与 外界之间的信息交换,使自动化系统成为“信息孤岛”。要实现整 个企业的信息集成, 要实施综合自动化, 就必须设计出一种能在 工业现场环境运行的、性能可靠、造价低廉的通讯系统,形成工 厂底层网络, 完成现场自动化设备之间的多点数字通讯, 实现底
层现场设备之间以及生产现场与外界的信息交换。 现场总线就是 在这种实际需求的驱动下应运产生的。 它作为过程自动化、 制造 自动化、楼宇、交通等领域现场智能设备之间的互连通信网络, 沟通了生产过程现场控制设备之间及其与更高控制管理层网络 之间的联系,为彻底打破自动化系统的信息孤岛创造了条件。 由于标准实质上并未统一, 所以对现场总线的定义也是各有 各的定义。下面给出的是现场总线的两种有代表性的定义。 (l) ISA SP50 中对现场总线的定义。现场总线是一种串行的 数字数据通讯链路,它沟通了过程控制领域的基本控制设备(即 场地级设备)之间以及与更高层次自动控制领域的自动化控制设 备(即车间级设备)之间的联系。 这里的现场设备指最底层的控制监测、 执行和计算设备, 包 括传感器、控制器、智能阀门、微处理器和内存等各种类型的仪 表产品。 (2)根据国际电工委员会 IEC 标准和现场总线基金会 FF 的 定义: 现场总线是连接智能现场设备和自动化系统的数字式、 双 向传输、 多分支结构的通讯网路。 现场总线的本质含义表现在以 下 6 个方面: a)现场通讯网路: 用于过程以及制造自动化的现场设备或现 场仪表互连的通讯网路。 b)现场设备互连:现场设备或现场仪表是指传感器、变送器
DeviceNet 现场总线协议讲解 Devicenet 简介: DeviceNet 是由美国Rockwell 公司在CAN 基础上推出的一种低成本的通信链接,是一种低端网络系统。它将基本工业设备连接到网络,从而避免了昂贵和繁琐的硬接线。DeviceNet 是一种简单的网络解决方案,在提供多供货商同类部件间的可互换性的同量,减少了配线和安装工业自动化设备的成本和时间。DeviceNet 的直接互连性不仅改善了设备间的通信,而且同时提供了相当重要的设备级诊断功能。现场总线系统的结构和技术特点 1. 现场总线的历史和发展 现场总线是20世纪80年代中期在国际上发展起来的。随着微处理器与计算机功能的不断增强和价格的急剧下降,计算机与计算机网络系统得到迅速发展,而处于生产过程底层的测控自动化系统,采用一对一联机,用电压、电流的模拟信号进行测量控制,或采用自封闭式的集散系统,难以实现设备之间以及系统与外界之间的信息交换,使自动化系统成为“信息孤岛”。要实现整个企业的信息集成,要实施综合自动化,就
必须设计出一种能在工业现场环境运行的、性能可靠、造价低廉的通讯系统,形成工
厂底层网络,完成现场自动化设备之间的多点数字通讯,实现底层现场设备之间以及生产现场与外界的信息交换。现场总线就是在这种实际需求的驱动下应运产生的。它作为过程自动化、制造自动化、楼宇、交通等领域现场智能设备之间的互连通信网络,沟通了生产过程现场控制设备之间及其与更高控制管理层网络之间的联系,为彻底打破自动化系统的信息孤岛创造了条件。 由于标准实质上并未统一,所以对现场总线的定义也是各有各的定义。下面给出的是现场总线的两种有代表性的定义。 (l) ISA SP50 中对现场总线的定义。现场总线是一种串行的数字数据通讯链路,它沟通了过程控制领域的基本控制设备(即场地级设备)之间以及与更高层次自动控制领域的自动化控制设备(即车间级设备)之间的联系。 这里的现场设备指最底层的控制监测、执行和计算设备, 包括传感器、控制器、智能阀门、微处理器和内存等各种类型的仪表产品。 (2)根据国际电工委员会IEC 标准和现场总线基金会FF 的定义:现场总线是连接智能现场设备和自动化系统的数字式、双向传输、多分支结构的通讯网路。现场总线的本质含义表现在以下6 个方面: a)现场通讯网路:用于过程以及制造自动化的现场设备或
AXI总线的一些知识 AXI-stream总线简介-LDD 本节介绍的AXI是个什么东西呢,它其实不属于Zynq,不属于Xilinx,而是属于ARM。它是ARM最新的总线接口,以前叫做AMBA,从3.0以后就称为AXI了。 Zynq是以ARM作为核心的,运行时也是第一个“醒”过来,然后找可执行代码,找到后进入FSBL(第一引导阶段),接着找配置逻辑部分的bit文件,找到后就叫醒PL按照bit中的方式运行,再接着找可执行代码,进入SSBL(第二引导阶段),这时就可以初始化操作系统的运行环境,引导像Linux这样的大型程序,随后将控制权交给Linux。Linux运行时可以跟PL进行数据交互。注意了,就在这时候,数据交互的通路,就是我们本节要讲的AXI总线。 说白了,AXI就是负责ARM与FPGA之间通信的专用数据通道。 ARM内部用硬件实现了AXI总线协议,包括9个物理接口,分别为AXI-GP0~AXI-GP3,AXI-HP0~AXI-HP3,AXI-ACP接口。如下图黄圈所示。 可以看到,只有两个AXI-GP是Master Port,即主机接口,其余7个口都是Slave Port(从机接口)。主机接口具有发起读写的权限,ARM可以利用两个AXI-GP主机接口主动访问PL 逻辑,其实就是把PL映射到某个地址,读写PL寄存器如同在读写自己的存储器。其余从机接口就属于被动接口,接受来自PL的读写,逆来顺受。 这9个AXI接口性能也是不同的。GP接口是32位的低性能接口,理论带宽600MB/s,而HP和ACP接口为64位高性能接口,理论带宽1200MB/s。 有人会问,为什么高性能接口不做成主机接口呢?这样可以由ARM发起高速数据传输。答案是高性能接口根本不需要ARM CPU来负责数据搬移,真正的搬运工是位于PL中的DMA 控制器。 位于PS端的ARM直接有硬件支持AXI接口,而PL则需要使用逻辑实现相应的AXI协议。Xilinx提供现成IP如AXI-DMA,AXI-GPIO,AXI-Datamover都实现了相应的接口,使用时直接从XPS的IP列表中添加即可实现相应的功能。 有时,用户需要开发自己定义的IP同PS进行通信,这时可以利用XPS向导生成对应的IP。xps中用户自定义IP核可以拥有AXI-Lite,AXI4,AXI-Stream,PLB和FSL这些接口。 后两种由于ARM这一端不支持,所以不用。
工业自动化领域各种总线+协议 +规范 +接口 工业自动化总标识特点简介说明线/ 协议 / 接 口的名称 ASI 用于下位控制级的传感器/ 执行器总线 ? AS-interface用于将传感器和执行器连接至上位控制层,布 线简单、经济。 AS interface符合国际标准EN 50295和IEC 62026-2 标准。 ? 【整理】ASI 接口 / 协议/ 规范 AS-Interface(AS-i =执行器/传感器接口)? 是用于连接执行器和传感器的现场总线通讯方案。 BACnet==楼宇自动控制网络数据通讯协议Building Automation Control Network 【整理】工业自动化之 楼宇自动化之通讯协 议: BACnet ? CANopen 用于执行器/ 传感器领域的多主站总线? 对总线带宽的有效利用使得 CANopen能够在数据传输速率相
对较低的情况下实现较短的系统响应时间。CAN 总线的主要 优点有:数据安全性高,能够保留多主站能力。 ? CC-Link主要针对亚洲市场的现场总线 CC-Link ( Control & Communication Link,控制与通信链路) 是一种开放式总线系统,用于控制级和现场总线级之间的通讯, 应用范围主要为亚洲地区。 ? ControlNet标准化现场总线 ControlNet是一种开放式标准现场总线系统。该总线协议允许 循环数据和非循环数据同时通过总线进行交换,而两者之间互 不影响。 DALI 楼宇自动化领域的通讯标准? DALI 标准( IEC60929)是一种跨越厂商的协议,其目的是在照 明应用中确保电子镇流器的互用性。这个新标准用于替代1-10V 调光器接口。 ? 数字可寻址照明接口( DALI,Digital Addressable Lighting Interface)是一种楼宇自动化标准,用于电子镇流器的数字【整理】工业自动化总线之楼宇自动化之照明接口: DALI
硕士学位论文 AMBA AXI4总线的研究与实现 RESEARCH AND IMPLEMENTATION OF AMBA AXI4 BUS 杨舜琪 哈尔滨工业大学 2011年12月
国内图书分类号:TN47 学校代码:10213 国际图书分类号:621.3 密级:公开 工学硕士学位论文 AMBA AXI4总线的研究与实现 硕士研究生 :杨舜琪 导 师 :张岩教授 申请学位 :工学硕士 学科 :微电子学与固体电子学 所在单位 :深圳研究生院 答辩日期 :2011年12月 授予学位单位 :哈尔滨工业大学
Classified Index: TN47 U.D.C: 621.3 Dissertation for the Master Degree in Engineering RESEARCH AND IMPLEMENTATION OF AMBA AXI4 BUS Candidate:Shunqi YANG Supervisor:Prof. Yan ZHANG Academic Degree Applied for:Master of Engineering Speciality:Microelectronics and Solid-State Electronics Affiliation:Shenzhen Graduate School Date of Defence:December, 2011 Degree-Conferring-Institution:Harbin Institute of Technology
哈尔滨工业大学工学硕士学位论文 摘要 随着集成电路设计复杂度的提高和产品上市时间压力的增大,基于IP核复用的SoC(System on Chip)设计已经成为一种重要的设计方法。总线桥的设计和IP核的互连问题已经成为SoC平台中最重要的课题。IP核互连的方法,总线桥的设计以及总线协议决定了SoC平台的性能。AMBA(Advanced Microcontroller Bus Architecture)总线规范由ARM公司定义。它是一组基于ARM核的SoC通信的标准协议。最新的AMBA 4.0总线协议具有带宽高、延迟小和设计灵活等诸多优点,它目前已成为业界首选的高性能总线标准。 本文分析并比较了Wishbone总线标准与AMBA 4.0总线标准的异同。根据AMBA 4.0总线标准中AXI4协议和AXI4-Lite协议,设计并实现了总线桥以及互连模块的VLSI结构。本文研究内容主要包含以下三个部分: 首先,为了扩充AXI4总线可使用的IP核资源,本文设计了基于Wishbone 总线和AXI4总线的总线桥IP核,包括把基于Wishbone总线的主设备集成到AXI4总线系统的WB/AXI4总线桥,把基于Wishbone总线的从设备集成到AXI4总线系统的AXI4/WB总线桥,把基于Wishbone总线的主设备集成到AXI4-Lite总线系统的WB/AXI4-Lite总线桥和把基于Wishbone总线的从设备集成到AXI4-Lite总线系统的AXI4-Lite/WB总线桥。 其次,本文设计了基于AXI4总线的两种互连结构,包括交叉开关(crossbar switch)和分享型总线(share bus)。两种互连结构设计主要模块包括地址解码器和仲裁器。 最后,本文针对设计的总线桥和互连结构,使用Verilog HDL语言进行了硬件实现,在ModelSim环境下通过了功能验证,使用ISE13.1工具进行逻辑综合,分析比较了各IP核的性能。 从验证和综合来看,本文的IP设计严格遵循Wishbone总线和AMBA4.0总线的协议规范,WB/AXI4总线桥,AXI4/WB总线桥,WB/AXI4-Lite总线桥和AXI4-Lite/WB总线桥在Xilinx公司Virtex5的FPGA芯片上达到的时钟频率分别279MHz,346 MHz,442 MHz和427 MHz,AXI4总线的交叉开关互连结构在284MHz的工作频率下,拥有22.5Gbps的数据吞吐量,AXI4总线的分享型互连结构在342MHz的工作频率下,拥有6.7Gbps的数据吞吐量,说明各IP 核都具备高速的数据传输能力,完全可以胜任实际应用。 关键词:互连总线;AMBA AXI4总线;Wishbone总线;协议转换
PG021
寄存器空间 全部是小端地址模式: DMA控制寄存器: Bit0:0当前DMA操作完成后停止DMA传输或者S/G方式下未完成的命令或传
输都被清掉。AXI4-Stream outs are potentially terminated early. Descriptors in the update queue are allowed to finish updating to remote memory before engine halt. 1启动DMA传输。 Bit2:软件复位整个DMA引擎。 Bit12:中段完成使能。 Bit13:中段完成延时使能。简单模式下无效。 Bit14:错误中断时能。 Bit23:16中断阈值。最小值为1.每发生一次中断,中断阈值计数器减一,当中断阈值寄存器为0时,DMA引擎向外产生一个中断。简单模式下无效。 Bit31:24中断延时寄存器。用来设置中断超时时间。Interrupt Delay Time Out. This value is used for setting the interrupt timeout value. The interrupt timeout is a mechanism for causing the DMA engine to generate an interrupt after the delay time period has expired. 当中断延时寄存器失效后为了保证仍然可以差生中断。 This is used for cases when the interrupt threshold is not met after a period of time, and the CPU desires an interrupt to be generated. Timer begins counting at the end of a packet and resets with receipt of a new packet or a timeout event occurs. Setting thisvalue to zero disablesthe delay timer interrupt. 如果在一定的时间内,中断阈值寄存器仍然不到0,而且CPU希望产生一个中断。那么在一个数据包完成后,计数器开始计数直到接收到一个新包后或者超时事件发生后复位计数器。 DMA状态寄存器: Bit0:停止状态位。 0=DMA运行 1=DMA通道停止。从DMA控制寄存器的停止位到状态位反映出来有一段时间。Bit1:DMA通道空闲。 Bit3:支持S/G方式否。 Bit4:DMA内部错误。 Bit5:DMA Slave错误。 Bit6:DMA译码错误。 Bit8:SG方式内部错误。 Bit9:SG方式从设备错误。 Bit12:DMA传输完成中断位。如果中断完成了并且中断阈值达到了,就会产生一个AXI DMA中断。
A X I总线中文详解
AXI总线协议资料整理 第一部分: 1、AXI简介:AXI(Advanced eXtensible Interface)是一种总线协议,该协议是ARM公司提出的AMBA(Advanced Microcontroller Bus Architecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持显著传输访问和乱序访问,并更加容易就行时序收敛。AXI 是AMBA 中一个新的高性能协议。AXI 技术丰富了现有的AMBA 标准内容,满足超高性能和复杂的片上系统(SoC)设计的需求。 2、 AXI 特点:单向通道体系结构。信息流只以单方向传输,简化时钟域间的桥接,减少门数量。当信号经过复杂的片上系统时,减少延时。 支持多项数据交换。通过并行执行猝发操作,极大地提高了数据吞吐能力,可在更短的时间内完成任务,在满足高性能要求的同时,又减少了功耗。 独立的地址和数据通道。地址和数据通道分开,能对每一个通道进行单独优化,可以根据需要控制时序通道,将时钟频率提到最高,并将延时降到最低。 第二部分: 本部分对AXI1.0协议的各章进行整理。 第一章 本章主要介绍AXI协议和AXI协议定义的基础事务。
1、 AXI总线共有5个通道分别是read address channel 、 write address channel 、 read data channel 、 write data channel、 write response channel。每一个AXI传输通道都是单方向的。 2、每一个事务都有地址和控制信息在地址通道(address channel)中,用来描述被传输数据的性质。 3、读事务的结构图如下: 4、写事务的结构图如下:
DeviceNet现场总线协议讲解 2008-2-28 10:27:00 来源:中国自动化网浏览:971 网友评论条点击查看 Devicenet简介: DeviceNet是由美国Rockwell公司在CAN基础上推出的一种低成本的通信链接,是一种低端网络系统。它将基本工业设备连接到网络,从而避免了昂贵和繁琐的硬接线。DeviceNet是一种简单的网络解决方案,在提供多供货商同类部件间的可互换性的同量,减少了配线和安装工业自动化设备的成本和时间。DeviceNet的直接互连性不仅改善了设备间的通信,而且同时提供了相当重要的设备级诊断功能。 现场总线系统的结构和技术特点 1. 现场总线的历史和发展 现场总线是20世纪80年代中期在国际上发展起来的。随着微处理器与计算机功能的不断增强和价格的急剧下降,计算机与计算机网络系统得到迅速发展,而处于生产过程底层的测控自动化系统,采用一对一联机,用电压、电流的模拟信号进行测量控制,或采用自封闭式的集散系统,难以实现设备之间以及系统与外界之间的信息交换,使自动化系统成为“信息孤岛”。要实现整个企业的信息集成,要实施综合自动化,就必须设计出一种能在工业现场环境运行的、性能可靠、造价低廉的通讯系统,形成工厂底层网络,完成现场自动化设备之间的多点数字通讯,实现底层现场设备之间以及生产现场与外界的信息交换。现场总线就是在这种实际需求的驱动下应运产生的。它作为过程自动化、制造自动化、楼宇、交通等领域现场智能设备之间的互连通信网络,沟通了生产过程现场控制设备之间及其与更高控制管理层网络之间的联系,为彻底打破自动化系统的信息孤岛创造了条件。 由于标准实质上并未统一,所以对现场总线的定义也是各有各的定义。下面给出的是现场总线的两种有代表性的定义。 (l) ISA SP50中对现场总线的定义。现场总线是一种串行的数字数据通讯链路,它沟通了过程控制领域的基本控制设备(即场地级设备)之间以及与更高层次自动控制领域的自动 化控制设备(即车间级设备)之间的联系。 这里的现场设备指最底层的控制监测、执行和计算设备,包括传感器、控制器、智能阀门、微处理器和内存等各种类型的仪表产品。 (2)根据国际电工委员会 IEC标准和现场总线基金会 FF的定义:现场总线是连接智能现场设备和自动化系统的数字式、双向传输、多分支结构的通讯网路。现场总线的本质含义表现在以下6个方面:
现场总线CC-Link的组织、通信协议和应用 一、组织 1.1 CC-Link合作伙伴协会 CC-Link合作伙伴协会(CLPA)成立于2000年,当时三菱电机发布了CC-Link现场总线技术规范,作为一个开放的工业标准。从那时起,CLPA一直致力于在全球推动和使用这项技术。在过去的14年中,CLPA已经成为现场总线的全球最大组织之一,在全球拥有2000多名会员和270家公司,提供了支持CC-Link的 1300多种产品,这些产品都通过了严格的一致性测试,保证了兼容性。如今,CLPA继续为工业网络提供业界领先的技术;例如,开发出世界上第一个千兆工业以太网:CC-Link IE。 1.2亚洲市场的领导者 CC-Link在亚洲保持着市场的领先地位,已经成为很多行业开放网络的选择–这个领先地位已经由独立的市场研究公司– HIS所证实。 进一步支持这个重要位置的论据是HIS和ARC最近的调查结果:全球大约一半的自动化支出发生在亚洲。除了在亚洲的成功,CC-Link 也获得了世界范围的市场份额;事实上,一些成员公司在亚洲以外的
市场出售了很多的CC-Link兼容产品。这并不奇怪,因为在全球经济增长的同时,很多企业也希望打入亚洲市场,CC-Link是首选的网络技术。 两年前,为了帮助和支持美国与欧洲公司进入亚洲市场,CLPA 实施了一个名为通往中国(G2C)的营销计划。这项计划的目的是帮助企业制定和推动他们的CC-Link兼容设备在中国市场的推广。当时有22家企业参与了G2C活动。随着这项计划的成功,CLPA把这个计划移植到了亚洲,称为通向亚洲(G2A)。 CC-Link的增长和发展获得了许多知名北美公司的支持,如莫仕(Molex)、康耐视(Cognex)和3M公司,现在已经成为CLPA董事会成员。董事会成员在决定CC-Link未来方向和重要举措方面,如G2A 项目,将发挥更大作用。 1.3 什么是CC-Link? “CC-Link”是一个通用术语,经常在CC-Link合作伙伴协会讨论开放网络技术推广时使用。简单地说,今天的CC-Link有两种技术可供选择:现场总线(CC-Link)和工业以太网(CC-Link IE)。这个“家族”的情况由后面的章节详细介绍。 自CLPA成立以来,CC-Link已经演变成一种开放自动化网络技术的综合体系。该技术提供的两个关键收益是效率和信息透明。效率是通过提供当今开放网络的最高性能来保证的,同时确保正常运行时间很少中断。同时,CC-Link也能满足工业4.0要求:企业的所有部门都能够共享和使用相同的信息,确保工厂以最高效率运行,同时仍
AXI总线协议资料整理 第一部分: 1、AXI 简介:AXI (Adva need eXte nsible In terface 是一种总线协议,该协议是 ARM 公司提出的AMBA (Advaneed Microcontroller Bus Architecture) 3.0协议中 最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控 制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持显著传输访问和乱序访问,并更加容易就行时序收敛。AXI是AMBA 中一个新的高性能协议。AXI技术丰富了现有的AMBA标准内容,满足超高性能和复杂的片上系统(SoC)设计的需求。 2、AXI特点:单向通道体系结构。信息流只以单方向传输,简化时钟域间的桥接,减少门数量。当信号经过复杂的片上系统时,减少延时。 支持多项数据交换。通过并行执行猝发操作,极大地提高了数据吞吐能力, 可在更短的时间内完成任务,在满足高性能要求的同时,又减少了功耗。 独立的地址和数据通道。地址和数据通道分开,能对每一个通道进行单独优化,可以根据需要控制时序通道,将时钟频率提到最高,并将延时降到最低。 第二部分: 本部分对AXI1.0协议的各章进行整理。 第一章 本章主要介绍AXI协议和AXI协议定义的基础事务。 1、AXI总线共有5个通道分别是read address channel 、write address channel、read data channel、write data channe、write response channe。每一个AXI传输通道都是单方向的。 2、每一个事务都有地址和控制信息在地址通道(address channel中,用来描 述被传输数据的性质。 3、读事务的结构图如下: