CN102035658B - 一种高速1553b光纤总线ip核 - Google Patents
一种高速1553b光纤总线ip核 Download PDFInfo
- Publication number
- CN102035658B CN102035658B CN2010105629859A CN201010562985A CN102035658B CN 102035658 B CN102035658 B CN 102035658B CN 2010105629859 A CN2010105629859 A CN 2010105629859A CN 201010562985 A CN201010562985 A CN 201010562985A CN 102035658 B CN102035658 B CN 102035658B
- Authority
- CN
- China
- Prior art keywords
- data
- bus
- optical fiber
- core
- state machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Bus Control (AREA)
Abstract
本发明涉及到一种新型光纤总线的1553B协议IP核,该IP核包括基本协议模块和扩展协议模块。基本协议模块实现的是标准1553B总线协议的BC、RT和BM功能,扩展协议模块实现的是大数据传输的BC到RT、RT到BC、RT到RT等功能。除上述功能外,IP核还包含AHB片上总线通信模块、存储器/寄存器访问仲裁模块和光纤总线接口模块。本发明既可兼容传统的1553B协议,又可支持扩展协议,并且可满足200Mbps的数据传输率要求,是具有高度可靠性和扩展性的高速光纤协议IP核。
Description
技术领域
本发明涉及到一种新型光纤总线IP核。该IP核可被应用于高速计算机总线系统中,它包含标准1553B协议功能和扩展协议功能,共享存储器和寄存器的访问仲裁功能,通过片上总线进行通信的功能,同时可对最大数据传输率为200Mbps的高速光纤总线物理接口提供支持。
背景技术
IP核(Intellectual Property)就是具有知识产权的逻辑单元集。芯片设计已由过去的晶体管级设计发展到利用EDA软件进行逻辑设计的阶段,按照不同的使用要求又可分为IP软核和IP硬核(固核)。IP软核是不能直接进行芯片设计的数字逻辑,它没有进行物理级的综合,也没有进行时序验证,因而可被包含进新的设计中,具有高度的灵活性和可重用性。IP硬核是经过综合、布局布线和时序验证的数字逻辑设计,且已被固化在芯片中,是晶体管化了的数字逻辑。
伴随IP核出现的是SOC,SOC就是System On Chip的缩写,与之相类似的是SOPC,它是System OnProgrammable Chip的所写,二者既有共同点又有不同,SOPC是SOC的发展,是包含了CPU(软核或者硬核)的SOC。SOPC技术对片上总线提出了很高的要求,片上总线已经成为IP核集成的关键技术。目前,比较常用的片上总线技术主要有两种,一种是AHB总线,另一种是PLB总线。AHB(Advanced High performance Bus)是由ARM公司开发的一种开放性总线标准,它主要用于系统中高性能、高时钟速率模块间通信。AHB总线接口设计技术是片上系统设计的重要技术。采用该总线结构可以显著简化系统设计,改善系统可扩充性,并提高系统可测缝。PLB总线标准是由IBM公司提出的,它主要被用于XILINX系列的FPGA芯片中。
目前,市场上的主流1553B总线产品的供应商有DDC公司、CONDOR公司、SBS公司(SBS公司和CONDOR公司已经并入GE Intelligent Platforms)。DDC公司的产品有BU-61570系列、BU-61580系列、BU-61585系列、BU-61590系列等,而GE Intelligent Platforms公司的产品有RPCIE-1553、PCC-D-1553等。这些公司的1553B产品虽然种类繁多,但其中的区别也仅仅在于接口形式,其核心芯片的变化并不大,芯片的功能都是基于标准1553B总线协议开发的,对大数据量的数据传输功能明显支持不足。
发明内容
本发明针对市场上1553B总线产品普遍存在的问题,对标准1553B协议进行了扩展,开发出了高速新型光纤总线IP核。
本发明所述的IP核主要包含标准协议模块、扩展协议模块、AHB片上总线接口模块、共享存储器/寄存器访问仲裁模块、光纤总线接口模块。
标准协议模块可被进一步划分为BC子模块、RT子模块和BM子模块。BC子模块由BC系统控制状态机、BC发送状态机、BC接收状态机、BC方式代码状态机、BC广播状态机、BC中断处理状态机、BC存储器访问状态机、BC寄存器访问状态机、BC寄存器管理状态机、BC错误处理状态机等逻辑块构成;RT子模块的结构与BC类似,同样具有发送、接收、广播等逻辑块,但是在实现的细节与BC完全不同;BM子模块由系统控制状态机、字监控状态机、选择型消息监控状态机构成。在上述状态机中,系统控制状态机的作用是获得总线和CPU的数据,并由这些数据驱动状态机的状态转换,从而完成完整的总线事务。中断处理状态机的作用是由协议IP运行中的命令/状态信息不断产生中断信号,并通知对应寄存器的内容及时更新。错误处理状态机的作用是收集由各个模块产生的状态信息,将这些信息进行分析,如果发现错误则更新对应寄存器的内容,同时激活中断处理状态机的出错中断处理功能。
扩展协议模块主要是为了满足图像的大数据量传输的需求而设计的,它包含BC子模块和RT子模块两个构件。在BC子模块中,BC系统控制状态机负责对命令类型进行区分,并负责对大数据进行分片处理。BC发送状态机负责从共享存储区读取待发送的数据,然后对发送的数据进行消息字的记录,并判断发送过程是否结束。BC接收状态机负责对接收到的消息字进行计数,然后把数据写到共享存储区中。在RT子模块中的结构与BC子模块相类似,只是在细节上有所区别。
AHB片上总线接口模块的作用是为IP核的内部逻辑和外部CPU之间搭建一个高速通信桥梁,可以支持SINGLE和BURST传输。该模块包含AHB总线控制状态机、AHB忙等待状态机,可对AHB总线的一般事务和等待操作进行有效控制。
共享存储器/寄存器访问仲裁模块包含CPU锁定寄存器、共享存储器访问控制寄存器和共享寄存器访问控制寄存器。其中,CPU锁定寄存器的作用是根据访问地址和当前IP锁定信号的状态给出CPU锁定信号;共享存储器访问寄存器的作用是由CPU锁定信号、访问地址来决定共享存储器的控制权;共享寄存器访问寄存器的作用是由CPU锁定信号、访问地址来决定共享寄存器的控制权。
光纤总线接口模块包括一个异步FIFO单元、一个接收方向格式转换单元、一个发送方向格式转换单元。异步FIFO的作用是把外部同步数据进行缓存,以便收/发单元的后续处理,接收方向/发送方向格式转换单元的作用是把接口信号格式转换为内部协议处理模块的信号格式。
附图说明
图1BC系统控制状态机。
图2BC发送状态机。
图3BC接收状态机。
图4RT系统控制状态机。
图5RT发送状态机。
图6RT接收状态机。
图7协议IP核设计架构。
具体实施方式
(1)标准1553B协议
标准1553B协议的实现主要包括BC、RT和BM三个模块。其中BC模块是总线事务的发起端,RT模块是总线事务的响应端,二者构成了命令/响应式的1553B总线系统的主体,BM模块是总线事务的监控端,它负责对消息、状态、差错信息进行实时监控。
BC模块是总线事务的发起者,它负责把CPU的控制字和命令字转化为最终的总线命令,因此在BC系统控制状态机的设计中首先判断从共享存储器读取的控制字和命令字,然后驱动状态机跳转到正确的总线处理状态,接着在相应的状态处理过程中,根据命令类型启动BC发送状态机、BC接收状态机、RT到RT状态机或者方式代码处理状态机等等,这个状态机的处理过程如图1所示。
在BC发送状态机的实现中,首先在发送空闲状态判断发送使能标志(由BC系统控制状态机产生),如果该标志已被使能则获得发送数据字个数和发送数据字的起始地址,然后跳转到BC发送的循环发送状态;在循环发送状态BC逻辑一方面对发送数据字计数器不断进行加1操作并判断是否跳到发送结束状态,另一方面要从共享存储器中读取发送的数据并把数据发送出去;在发送结束状态,BC逻辑会生成一个标志信号以通知系统控制状态机发送任务已经结束了,然后再跳转到发送空闲状态去,如图2所示。
BC接收状态机的实现与发送状态机类似,所不同的是在发送状态机中BC逻辑将共享存储器中的数据发送到总线上去,而接收状态机会将总线数据写入到共享存储器中去,具体流程请参图3。
RT模块是总线事务的响应者,因此根据总线上的命令字、状态字、数据字进行处理状态的变迁是非常重要的,而这一步骤要依赖于命令字、状态字和数据字的正确区分。对这三种字类型的区分是通过消息字的同步类型、消息字的上下文以及字间隔的超时等因素综合考虑的,一般来说将数据字正确区分出来要相对容易一些,而将命令字和状态字进行区分则要复杂得多,具体做法可以按照下述步骤进行:
步骤1:若一个命令/状态字的子地址域不是0,也不是8,则这个字是命令字;
步骤2:若一个命令/状态字的字前间隔时间大于响应超时时间,则这个字是命令字;
步骤3:若一个命令/状态字是来自于和前一个字不相同的总线通道,则这个字是命令字;
步骤4:若两个连续的命令/状态字,第一个字有字前间隔,则这是两个命令字用于RT-RT单播或RT-RT广播的传输;
步骤5:若一个命令/状态字的RT地址域是11111,则这是一个广播命令字;
步骤6:若一个命令/状态字的前一个非连续的命令/状态字是一个广播命令,则这个字是命令字;
步骤7:若目前正在分析的消息是非RT-RT传输的接收消息,则如果命令/状态字有一个不同于前一个命令/状态字的RT地址域,则这个字是另一条消息的命令字;
步骤8:若已经分析完了一串数据字并且确认该消息是一个完整有效的消息,且在该消息之后是一段间隔时间,则下一个命令/状态字将是一个命令字。
在正确区分消息字类型的基础上,再采取一定的状态处理流程,RT的系统控制状态机、发送状态机、接收状态机、方式代码状态机等,将会得以实现(主要的状态转换图请参考图4、图5、图6)。
BM模块是总线事务的监控者,它可以工作在消息监控模块也可以工作在字监控模块。在消息监控模块中,BM逻辑需采用和RT逻辑相同的方法区分命令字、状态字和数据字,然后根据不同的字类型把总线上的单个消息字组合成不同的消息并写入共享存储器中,最后产生相应的中断信号通知CPU去指定地址读取消息。在子监控模式下,BM逻辑将从总线上获取的字数据和同步类型写入共享存储其的两个相邻地址空间内,然后由CPU软件去固定的地址空间内获得字数据和控制数据。
(2)扩展1553B协议
扩展1553B协议在实现中的关键问题是怎样区分大数据命令字、如何将大数据进行分片以及如何将超长的数据存放在共享存储器中,而不会破坏基本协议的数据访问机制。
为了进行大数据命令字的区分,在大数据的控制状态机中,将一些基本协议用不到的方式代码(10110、10111、11000、11001、11010、11011)设定为大数据传输的特殊方式代码,然后对这些方式代码进行判别,并做出相应的处理。
所谓“大数据分片”是指将一个超长的数据字序列(例如:32K个字)划分为多个小数据块,然后采用某种机制打破基本1553B协议规定的32个字的消息边界,实现一个超长的消息传输。为此,在大数据的发送、接收以及其他的相关状态机中,都对大数据的分片提供了必要的支持。首先,在BC端接收到CPU传递过来的控制字和命令字时,将大数据的总长度和一次传输的数据片(超长消息)的长度都进行了规定,然后发送到总线上,接下来再启动该消息片的传输,在传输完成后,再定义下一个数据片的长度,进行下一个数据片的传输......直到全部数据传输完毕。
为了配合大数据的传输,共享存储器的数据存取机制也和基本协议的处理有所不同。基本协议把一条消息的描述栈定义为四个字长,而扩展协议为了标识出一个数据片的存储地址的需要描述栈被定义为五个字长。有了这个存储地址的额外信息,IP逻辑就可以把规定长度的数据字从共享存储器中读出(或者把规定长度的数据字写入到共享存储器),而不会破坏基本协议的存储机制。
(3)AHB总线接口
AHB总线接口在实现中的主要问题是如何满足严格的总线时序。为此在设计总线控制状态机时充分考虑了时序因素,在其中插入了多个等待周期,只有在条件满足的前提下状态机的状态才会发生变迁,否则会保持不变。为了使CPU和IP逻辑都有足够的时间对AHB总线事务进行处理,在AHB总线接口逻辑中设计了忙等待状态机,通过该状态机可将AHB总线事务延后几个周期,待双方准备好之后再继续通信。
(4)共享存储器/寄存器仲裁
共享存储器/寄存器仲裁模块是为了防止CPU和IP逻辑访存的冲突,以及IP同时访问存储器和寄存器的冲突。在实现中,CPU锁定寄存器在系统时钟的上升沿,首先对CPU端的片选信号进行锁存,如果该信号有效则设置CPU锁定信号,反之解除CPU锁定信号。当CPU锁定信号有效时,仲裁逻辑需要对CPU的地址信号进行判断,如果地址落入共享存储器/寄存器的地址范围内则设置CPU访问存储器锁定信号或CPU访问寄存器锁定信号;如果CPU锁定信号无效时,仲裁逻辑需要检查IP访问信号是否有效,当IP访问存储器信号有效时则设置IP访问存储器锁定信号,当IP访问寄存器信号有效时则设置IP访问寄存器锁定信号。有了这些锁定信号的控制,就可以有效避免前文提到的几种冲突。
(5)光纤总线接口
光纤总线接口模块的设计既可以实现IP内部信号格式和外部信号格式的转换,又可以起到数据缓存的作用。
数据格式的转换分为IP接收方向和发送方向这两种转换。在接收方向上,总线接口模块在外部时钟的上升沿,对输入的同步数据进行锁存,然后将获得的数据写入一个接收FIFO中,接着在FIFO的另一侧由系统时钟将FIFO中的数据读出,最后把数据的格式进行规范并和时钟一起送给其他IP逻辑。在发送方向上,总线接口模块在系统时钟的上升沿,将发送的数据写入一个发送FIFO中,然后在FIFO的另一侧再使用总线时钟将FIFO中的数据读出,最后把数据的格式转换为总线格式并和总线时钟一起发送到总线物理接口设备上。在这个过程中,不论是接收FIFO还是发送FIFO都起到了数据缓存的作用,因而能够确保数据的高速传输。
上述所有光纤协议IP核的各个组成模块按照图7所示的设计架构进行组织。
以上所述,仅是本发明的较佳实例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何精于本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出其他种种的改良或修饰为等同变化的等效实例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (6)
1.一种高速1553B光纤总线IP核,其特征在于:所述的IP核包含标准协议模块、扩展协议模块、AHB片上总线接口模块、共享存储器/寄存器访问仲裁模块和光纤总线接口模块,所述扩展协议模块包含BC子模块和RT子模块,所述BC子模块包含BC系统控制状态机、BC发送状态机和BC接收状态机,其中所述BC系统控制状态机负责对命令类型进行区分,并负责对大数据进行分片处理;所述BC发送状态机负责从共享存储区读取待发送的数据,然后对发送的数据进行消息字的记录,并判断发送过程是否结束;所述BC接收状态机负责对接收到的消息字进行计数,然后把数据写到共享存储区;所述对大数据进行分片处理是将一个超长的数据字序列划分为多个小数据块,首先在BC端接收到CPU传递过来的控制字和命令字时,将大数据的总长度和一次传输的数据片的长度进行规定,然后发送到总线上,再启动数据片的传输,传输完成后再定义下一个数据片的长度,从而进行下一个数据片的传输,直到全部数据传输完毕。
2.如权利要求1所述的一种高速1553B光纤总线IP核,其特征在于:所述AHB片上总线接口模块包含AHB总线控制状态机和AHB忙等待状态机,所述AHB片上总线接口模块支持单次和突发传输方式。
3.如权利要求1所述的一种高速1553B光纤总线IP核,其特征在于:所述共享存储器/寄存器访问仲裁模块可保证IP核和CPU能够安全地对共享存储器和寄存器进行访问。
4.如权利要求1所述的一种高速1553B光纤总线IP核,其特征在于:所述光纤总线接口模块包含异步FIFO单元、接收方向格式转换单元和发送方向格式转换单元,该光纤总线接口模块按照光纤总线物理接口定义的数据格式进行高速数据交互,支持200Mbps的总线数据传输率。
5.如权利要求1所述的一种高速1553B光纤总线IP核,其特征在于:所述扩展协议模块中的BC子模块,该子模块能够处理BC到RT方向、RT到BC方向、RT到RT方向的大数据单播消息。
6.如权利要求1所述的一种高速1553B光纤总线IP核,其特征在于:所述扩展协议模块中的RT子模块,该子模块能够处理BC到RT方向、RT到BC方向、RT到RT方向的大数据单播消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105629859A CN102035658B (zh) | 2010-11-26 | 2010-11-26 | 一种高速1553b光纤总线ip核 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105629859A CN102035658B (zh) | 2010-11-26 | 2010-11-26 | 一种高速1553b光纤总线ip核 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102035658A CN102035658A (zh) | 2011-04-27 |
CN102035658B true CN102035658B (zh) | 2012-07-04 |
Family
ID=43888030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105629859A Expired - Fee Related CN102035658B (zh) | 2010-11-26 | 2010-11-26 | 一种高速1553b光纤总线ip核 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102035658B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102831096B (zh) * | 2012-08-17 | 2016-05-18 | 中国科学院空间科学与应用研究中心 | 一种1553b总线协议ip核 |
CN103077147B (zh) * | 2012-12-31 | 2015-10-28 | 北京石竹科技股份有限公司 | 一种基于链表的全功能1553b总线ip核 |
CN104794090A (zh) * | 2014-01-22 | 2015-07-22 | 北京浩正泰吉科技有限公司 | 一种远程终端模块 |
CN105550140B (zh) * | 2014-11-03 | 2018-11-09 | 联想(北京)有限公司 | 一种电子设备及数据处理方法 |
CN106506308B (zh) * | 2016-10-19 | 2019-07-02 | 北京空间飞行器总体设计部 | 一种基于时间同步的航天器1553b总线通信系统 |
CN110213143B (zh) * | 2019-05-21 | 2021-04-09 | 中国科学院国家空间科学中心 | 一种1553b总线ip核及监视系统 |
CN110188054B (zh) * | 2019-05-27 | 2023-10-27 | 中国航空无线电电子研究所 | 1553总线网络产品 |
CN114201429A (zh) * | 2021-09-03 | 2022-03-18 | 北京航天长征飞行器研究所 | 一种基于dsp的1553b总线通讯系统及方法 |
CN119513007A (zh) * | 2025-01-21 | 2025-02-25 | 中科亿海微电子科技(成都)有限公司 | 一种基于fpga的1553b总线协议器通信装置及其控制方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101175077A (zh) * | 2007-10-26 | 2008-05-07 | 华中科技大学 | 光纤通道知识产权核 |
CN101800600A (zh) * | 2009-12-30 | 2010-08-11 | 航天时代电子技术股份有限公司 | 一种基于1553b总线的光电转换电路及其实现方法 |
CN101799795A (zh) * | 2009-12-30 | 2010-08-11 | 北京龙芯中科技术服务中心有限公司 | 一种1553b总线监控器及具有该监控器的总线系统 |
-
2010
- 2010-11-26 CN CN2010105629859A patent/CN102035658B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101175077A (zh) * | 2007-10-26 | 2008-05-07 | 华中科技大学 | 光纤通道知识产权核 |
CN101800600A (zh) * | 2009-12-30 | 2010-08-11 | 航天时代电子技术股份有限公司 | 一种基于1553b总线的光电转换电路及其实现方法 |
CN101799795A (zh) * | 2009-12-30 | 2010-08-11 | 北京龙芯中科技术服务中心有限公司 | 一种1553b总线监控器及具有该监控器的总线系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102035658A (zh) | 2011-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102035658B (zh) | 一种高速1553b光纤总线ip核 | |
CN103297330B (zh) | 灵活地将终端逻辑集成到各种平台 | |
US7752374B2 (en) | Method and apparatus for host messaging unit for peripheral component interconnect busmaster devices | |
CN101859290B (zh) | 热插拔接口控制方法和装置 | |
CN101669098B (zh) | 始发设备通知方法和设备 | |
KR100843495B1 (ko) | 부착된 컴퓨터 시스템의 파워 오프시 rfid 태그로서비스 데이터를 전송하는 방법 및 이를 위한 컴퓨터시스템 | |
US9448870B2 (en) | Providing error handling support to legacy devices | |
JPH10510646A (ja) | 周辺装置接続バスでのバースト同報通信 | |
CN101719110A (zh) | 光通信器件中多路i2c器件的实时监控方法 | |
US6763415B1 (en) | Speculative bus arbitrator and method of operation | |
CN105095254A (zh) | 一种实现数据一致性的方法及装置 | |
CN101916237A (zh) | 一种pci总线dma高速数据传输方法 | |
CN107423180A (zh) | 一种固态硬盘及其诊断方法 | |
US6912611B2 (en) | Split transactional unidirectional bus architecture and method of operation | |
US7383372B2 (en) | Bus system, station for use in a bus system, and bus interface | |
US6813673B2 (en) | Bus arbitrator supporting multiple isochronous streams in a split transactional unidirectional bus architecture and method of operation | |
US5968144A (en) | System for supporting DMA I/O device using PCI bus and PCI-PCI bridge comprising programmable DMA controller for request arbitration and storing data transfer information | |
US6785758B1 (en) | System and method for machine specific register addressing in a split transactional unidirectional bus architecture | |
US6901475B2 (en) | Link bus for a hub based computer architecture | |
US6446154B1 (en) | Method and mechanism for virtualizing legacy sideband signals in a hub interface architecture | |
US20030061424A1 (en) | Method and apparatus for dual queue head processing of interrupt endpoints | |
US6654845B1 (en) | System and method implementing a secondary bus to avoid read data latency | |
JPS5913762B2 (ja) | 情報バス制御装置 | |
US6507609B1 (en) | Mechanism for capturing and reporting interrupt events of different clock domains | |
US6052745A (en) | System for asserting burst termination signal and burst complete signal one cycle prior to and during last cycle in fixed length burst transfers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120704 Termination date: 20141126 |
|
EXPY | Termination of patent right or utility model |