基于pci接口的apb总线访问方法

文档序号:6637238阅读:276来源:国知局
基于pci接口的apb总线访问方法
【专利摘要】本发明属于计算机通信【技术领域】,针对PCI接口与APB接口进行相互通信的需求,提出了一种基于基于PCI接口的APB总线访问方法,首先通过PCI模块对将主机的PCI访问请求转换为内部用户信号,接着通过使用控制逻辑,对内部用户信号进行翻译,构建符合APB时序的读写操作时序并输出至APB接口,最后通过对APB接口的响应信号进行监测,完成PCI数据的传输。解决了两个接口之间无法相互访问的问题。通过在实际工程中的应用,该方法能够使PCI接口稳定的、正确的与APB接口进行访问。
【专利说明】基于PCI接口的APB总线访问方法

【技术领域】
[0001]本发明属于计算机通信【技术领域】,涉及FPGA逻辑电路设计的相关技术,尤其涉及一种基于PCI接口的APB总线访问方法。

【背景技术】
[0002]在开发通信系统时,当主机为PCI (Peripheral Component Interconnect)接口,子板为APB (Advanced Peripheral Bus)接口时,板卡之间需要实现数据交互访问。。
[0003]PCI接口工作在33MHz或66MHz频率下,地址数据信号复用;而APB接口工作在80MHz或更高频率下,地址数据信号未复用,并且读操作数据及写操作数据也是未复用,读写操作均需要响应信号来结束操作。
[0004]综上所述,PCI接口和APB接口存在差异,PCI接口与APB接口不能正常交互访问,不能满足系统对于通信的要求。


【发明内容】

[0005]本发明提出了一种基于PCI接口的APB总线访问方法,该方法方便实现了的PCI接口对APB接口正常的读写访问,用来支持PCI主机与APB接口的板卡(设备)进行通信。
[0006]本发明的第一种技术解决方案如下:
[0007]基于PCI接口的APB总线访问方法,其特征在于:包括以下步骤,
[0008]IlPCI接口将PCI设备请求信号发送至PCI模块,所述请求信号是地址数据复用信号,地址数据复用信号的读写复用,地址数据复用信号的地址是32位;
[0009]2】PCI模块将请求信号转换为第一地址信号、数据信号和读写复用信号,再将转换得到的信号发送至信号产生模块;
[0010]3】信号产生模块接收到第一地址信号、数据信号和读写复用信号后,产生控制信号,
[0011]并根据读写复用信号产生读信号和写信号,读信号和写信号中的一个为有效信号;根据接收到的第一地址信号产生第二地址信号,第二地址信号是12位;
[0012]若第一地址信号中包括PCI设备设定的正确地址,则第二地址信号中包括该正确地址;
[0013]读信号用于读第二地址信号对应的数据,写信号用于将所述数据信号的信息写到第二地址信号对应的地址中;
[0014]所述控制信号包括读控制和写控制;
[0015]读控制用于控制读信号读包括正确地址的第二地址信号;
[0016]写控制用于控制写信号将数据信号写到包括正确地址的第二地址信号对应的地址中;
[0017]第二地址信号、数据信号、读信号、写信号、读控制和写控制是非复用信号,信号产生模块将第二地址信号、数据信号、读信号、写信号、读控制和写控制发送至同步模块
[0018]4】同步模块按照APB接口的时钟对接收到的第二地址信号、数据信号、读信号、写信号、读控制和写控制进行时钟同步,然后发送至转换模块;
[0019]5】转换模块按照APB接口的时序对接收到的经过时钟同步的第二地址信号、数据信号、读信号、写信号、读控制和写控制进行时序转换,然后通过APB接口发送至APB设备;
[0020]6]APB设备接收到经过时序转换的第二地址信号、数据信号、读信号、写信号、读控制和与控制后,
[0021]判断读信号和写信号中的有效信号,
[0022]若读信号有效,则进行以下操作:
[0023]a)根据读控制的信息,读取相应的第二地址信号的数据,读取完成后,得到相应的数据信息,然后通过APB接口向同步模块发送数据信息和读取完成的响应信号;
[0024]b)同步模块按照PCI接口的时钟对接收到的数据信息和响应信号进行时钟同步,然后发送至PCI模块;
[0025]c)PCI模块对接收到的数据信息和响应信号进行信号复用得到复用信号,然后按照PCI接口的时序对复用信号进行时序转换,然后发送至PCI设备;
[0026]若写信号有效,则进行以下操作:
[0027]a)根据写控制的信息,将数据信号写到第二地址信号对应的地址中,写完后,通过APB接口向同步模块发送写完的响应信号;
[0028]b)同步模块按照PCI接口的时钟对接收到的响应信号进行时钟同步,然后发送至PCI模块;
[0029]c)PCI模块按照PCI接口的时序对完成时钟同步的响应信号进行时序转换,然后发送至PCI设备。
[0030]上述步骤3】中的读控制还用于控制读信号的开始时间、控制读信号的次数以及控制读信号的持续时间。
[0031]上述步骤3】中的写控制还用于控制写信号的开始时间、控制写信号的次数以及控制写信号的持续时间。
[0032]本发明的第二种技术解决方案如下:
[0033]基于PCI接口的APB总线访问系统,其特征在于:包括PCI设备、设置在PCI设备上的PCI接口、与PCI接口通信连接的PCI模块、与PCI模块通信连接的信号产生模块、与信号产生模块通信连接的同步模块、与同步模块通信连接的转换模块、与转换模块通信连接的APB接口,所述APB接口设置在APB设备上;
[0034]所述PCI模块:用于将PCI设备对APB设备进行访问请求的请求信号转换为第一地址信号、数据信号和读写复用信号,所述请求信号是地址数据复用信号,地址数据复用信号的读写复用,地址数据复用信号的地址是32位;按照PCI接口的时序对由同步模块发送至PCI接口的信号进行时序转换;若由同步模块发送至PCI接口的信号包括至少两种信号,PCI模块用于对由同步模块发送至PCI接口的信号进行信号复用;
[0035]所述信号产生模块:根据接收到的由PCI模块发送至信号产生模块的第一地址信号、数据信号和读写复用信号,产生控制信号、读信号、写信号、第二地址信号;读信号和写信号中的一个为有效信号,第二地址信号对应的地址的位数是12位,若第一地址信号中包括PCI设备设定的正确地址,则第二地址信号中包括该正确地址;
[0036]读信号用于读第二地址信号对应的数据,写信号用于将所述数据信号的信息写到第二地址信号对应的地址中;
[0037]所述控制信号包括读控制和写控制;
[0038]读控制用于控制读信号读包括正确地址的第二地址信号;
[0039]写控制用于控制写信号将数据信号写到包括正确地址的第二地址信号对应的地址中;
[0040]第二地址信号、数据信号、读信号、写信号、读控制和写控制是非复用信号;
[0041]所述同步模块:按照APB接口的时钟对由信号产生模块发送至同步模块的非复用信号进行时钟同步;按照PCI接口的时钟对APB设备完成的访问请求信号进行时钟同步;
[0042]所述转换模块:按照APB接口时序的对时钟同步后的非复用信号进行时序转换;
[0043]所述APB设备:接收到经过时序转换后的非复用信号,对非复用信号中的读信号和写信号,判断读信号和写信号中的有效信号,
[0044]若读信号有效,则根据读控制的信息,读取相应的第二地址信号的数据,读取完成后,得到相应的数据信息,然后通过APB接口向同步模块发送数据信息和读取完成的响应信号,将数据信息和读取完成的响应信号称为APB设备完成的访问请求信号;
[0045]若写信号有效,则根据写控制的信息,将数据信号写到第二地址信号对应的地址中,写完后,通过APB接口向同步模块发送写完的响应信号,将该响应信号称为APB设备完成的访问请求信号。
[0046]上述读控制还用于控制读信号的开始时间、控制读信号的次数以及控制读信号的持续时间。
[0047]上述写控制还用于控制写信号的开始时间、控制写信号的次数以及控制写信号的持续时间。
[0048]本发明具有以下技术效果:
[0049]1、本发明实现了的PCI接口对APB接口正常的读写访问,控制简单,易
[0050]于硬件逻辑实现;
[0051]2、本发明通用性高,能够有效的简化使用者的设计;
[0052]3、本发明可保证PCI接口端能够正常的、稳定的、正确的对APB接口进
[0053]行读写访问。

【专利附图】

【附图说明】
[0054]图1PCI读操作示意图;
[0055]图2PCI写操作示意图。

【具体实施方式】
[0056]本发明提出了一种采用FPGA逻辑电路设计的PCI接口与APB接口的访问方法,可以支持由主机接口作为PCI主设备对下层APB设备进行读写访问的功能。
[0057]本发明提供了一种基于PCI接口的APB总线访问方法,参见图1,PCI读操作示意图,包括以下步骤,
[0058]1、基于PCI接口的APB总线访问方法,其特征在于:包括以下步骤,
[0059]I]PCI接口将PCI设备请求信号发送至PCI模块,所述请求信号是地址数据复用信号,地址数据复用信号的读写复用,地址数据复用信号的地址是32位;
[0060]2】PCI模块将请求信号转换为第一地址信号、数据信号和读写复用信号,再将转换得到的信号发送至信号产生模块;
[0061]3】信号产生模块接收到第一地址信号、数据信号和读写复用信号后,产生控制信号,
[0062]并根据读写复用信号产生读信号和写信号,读信号和写信号中的一个为有效信号;根据接收到的第一地址信号产生第二地址信号,第二地址信号是12位;
[0063]若第一地址信号中包括PCI设备设定的正确地址,则第二地址信号中包括该正确地址;
[0064]读信号用于读第二地址信号对应的数据,写信号用于将所述数据信号的信息写到第二地址信号对应的地址中;
[0065]所述控制信号包括读控制和写控制;
[0066]读控制用于控制读信号读包括正确地址的第二地址信号;
[0067]写控制用于控制写信号将数据信号写到包括正确地址的第二地址信号对应的地址中;
[0068]第二地址信号、数据信号、读信号、写信号、读控制和写控制是非复用信号,信号产生模块将第二地址信号、数据信号、读信号、写信号、读控制和写控制发送至同步模块
[0069]4】同步模块按照APB接口的时钟对接收到的第二地址信号、数据信号、读信号、写信号、读控制和写控制进行时钟同步,然后发送至转换模块;
[0070]5】转换模块按照APB接口的时序对接收到的经过时钟同步的第二地址信号、数据信号、读信号、写信号、读控制和写控制进行时序转换,即将经过经过时钟同步的信号翻译为符合APB接口时序的APB接口信号、适合APB总线的读操作,然后通过APB接口发送至APB设备;
[0071]6]APB设备接收到经过时序转换的第二地址信号、数据信号、读信号、写信号、读控制和与控制后,
[0072]判断读信号和写信号中的有效信号,
[0073]若读信号有效,则进行以下操作:
[0074]a)根据读控制的信息,读取相应的第二地址信号的数据,读取完成后,得到相应的数据信息,然后通过APB接口向同步模块发送数据信息和读取完成的响应信号;
[0075]b)同步模块按照PCI接口的时钟对接收到的数据信息和响应信号进行时钟同步,然后发送至PCI模块;
[0076]c)PCI模块对接收到的数据信息和响应信号进行信号复用得到复用信号,然后按照PCI接口的时序对复用信号进行时序转换,然后发送至PCI设备;
[0077]若写信号有效,则进行以下操作:
[0078]a)根据写控制的信息,将数据信号写到第二地址信号对应的地址中,写完后,通过APB接口向同步模块发送写完的响应信号;
[0079]b)同步模块按照PCI接口的时钟对接收到的响应信号进行时钟同步,然后发送至PCI模块;
[0080]c)PCI模块按照PCI接口的时序对完成时钟同步的响应信号进行时序转换,然后发送至PCI设备。
[0081]其中,步骤3】中的读控制还用于控制读信号的开始时间、控制读信号的次数以及控制读信号的持续时间;写控制还用于控制写信号的开始时间、控制写信号的次数以及控制写信号的持续时间。
[0082]本发明还提供了基于PCI接口的APB总线访问系统,包括PCI设备、设置在PCI设备上的PCI接口、与PCI接口通信连接的PCI模块、与PCI模块通信连接的信号产生模块、与信号产生模块通信连接的同步模块、与同步模块通信连接的转换模块、与转换模块通信连接的APB接口,所述APB接口设置在APB设备上;
[0083]PCI模块:用于将PCI设备对APB设备进行访问请求的请求信号转换为第一地址信号、数据信号和读写复用信号,所述请求信号是地址数据复用信号,地址数据复用信号的读写复用,地址数据复用信号的地址是32位;按照PCI接口的时序对由同步模块发送至PCI接口的信号进行时序转换;若由同步模块发送至PCI接口的信号包括至少两种信号,PCI模块用于对由同步模块发送至PCI接口的信号进行信号复用;
[0084]信号产生模块:根据接收到的由PCI模块发送至信号产生模块的第一地址信号、数据信号和读写复用信号,产生控制信号、读信号、写信号、第二地址信号;读信号和写信号中的一个为有效信号,第二地址信号对应的地址的位数是12位,若第一地址信号中包括PCI设备设定的正确地址,则第二地址信号中包括该正确地址;
[0085]读信号用于读第二地址信号对应的数据,写信号用于将所述数据信号的信息写到第二地址信号对应的地址中;
[0086]控制信号包括读控制和写控制;
[0087]读控制用于控制读信号读包括正确地址的第二地址信号;
[0088]写控制用于控制写信号将数据信号写到包括正确地址的第二地址信号对应的地址中;
[0089]第二地址信号、数据信号、读信号、写信号、读控制和写控制是非复用信号;
[0090]同步模块:按照APB接口的时钟对由信号产生模块发送至同步模块的非复用信号进行时钟同步;按照PCI接口的时钟对APB设备完成的访问请求信号进行时钟同步;
[0091]转换模块:按照APB接口时序的对时钟同步后的非复用信号进行时序转换;
[0092]APB设备:接收到经过时序转换后的非复用信号,对非复用信号中的读信号和写信号,判断读信号和写信号中的有效信号,
[0093]若读信号有效,则根据读控制的信息,读取相应的第二地址信号的数据,读取完成后,得到相应的数据信息,然后通过APB接口向同步模块发送数据信息和读取完成的响应信号,将数据信息和读取完成的响应信号称为APB设备完成的访问请求信号;
[0094]若写信号有效,则根据写控制的信息,将数据信号写到第二地址信号对应的地址中,写完后,通过APB接口向同步模块发送写完的响应信号,将该响应信号称为APB设备完成的访问请求信号。
[0095]本发明的基于PCI接口的APB总线访问系统中,读控制还用于控制读信号的开始时间、控制读信号的次数以及控制读信号的持续时间;写控制还用于控制写信号的开始时间、控制写信号的次数以及控制写信号的持续时间。
[0096]本发明的原理:本发明将PCI设备的PCI请求数据通过PCI模块翻译为用户应用信号(即将复用信号转换为非复用信号),用户应用信号包括数据传输状态、读写操作、地址片选择、地址、读数据、写数据等信号。并将用户应用信号通过同步模块进行同步,接着将同步后的信号通过转换模块后送往APB设备的APB接口,最后通过对APB接口的响应信号进行监测,完成PCI请求数据的传输。
[0097]本方法通过下述步骤实现,具体参照附图给出说明。
[0098]1.逻辑电路单元:
[0099]一个PCI模块①,用于将主机的PCI访问请求转换为内部用户信号;
[0100]一个信号产生模块②,用于将pCI模块①产生的信号规整为读写信号,同时还产生控制信号;
[0101 ] 一个同步模块③,用于对流向APB接口的信号按照APB接口的时钟进行时钟同步,对由APB设备发出的流向PCI接口的信号;按照PCI接口的时钟进行时钟同步;
[0102]一个转换模块④,用于将同步模块③产生的流向APB设备的信号按照APB接口时序进行时序转换。
[0103]2.处理流程:
[0104]a、PCI读操作,如图1,
[0105]主机的PCI读操作通过PCI模块①,产生内部用户信号;
[0106]将上步骤中生成的信号通过读写信号产生模块②,产生易于操作的读请求、地址、控制?目号等;
[0107]通过同步模块③,将上步骤产生的信号(读请求、地址、控制信号)同步至APB时钟域;
[0108]通过转换模块④,将上步骤产生的信号翻译为适合APB总线的读操作;
[0109]将APB总线的响应信号和读数据通过同步模块③同步后,返回给PCI核。
[0110]b、PCI写操作,如图2,
[0111]主机的PCI写操作通过PCI模块①,产生内部用户信号;
[0112]将上步骤中生成的信号通过读写信号产生模块②,产生易于操作的写请求、地址、写数据、控制信号等;
[0113]通过同步模块③,将上步骤产生的信号(写请求、地址、写数据、控制信号)同步至APB时钟域;
[0114]通过转换模块④,将上步骤产生的信号翻译为适合APB总线的读操作;
[0115]将APB总线的响应信号通过同步模块③同步后,返回给PCI模块。
【权利要求】
1.基于PCI接口的APB总线访问方法,其特征在于:包括以下步骤, HPCI接口将PCI设备请求信号发送至PCI模块,所述请求信号是地址数据复用信号,地址数据复用信号的读写复用,地址数据复用信号的地址是32位; 2】PCI模块将请求信号转换为第一地址信号、数据信号和读写复用信号,再将转换得到的信号发送至信号产生模块; 3】信号产生模块接收到第一地址信号、数据信号和读写复用信号后,产生控制信号,并根据读写复用信号产生读信号和写信号,读信号和写信号中的一个为有效信号;根据接收到的第一地址信号产生第二地址信号,第二地址信号是12位; 若第一地址信号中包括PCI设备设定的正确地址,则第二地址信号中包括该正确地址; 读信号用于读第二地址信号对应的数据,写信号用于将所述数据信号的信息写到第二地址信号对应的地址中; 所述控制信号包括读控制和写控制; 读控制用于控制读信号读包括正确地址的第二地址信号; 写控制用于控制写信号将数据信号写到包括正确地址的第二地址信号对应的地址中; 第二地址信号、数据信号、读信号、写信号、读控制和写控制是非复用信号,信号产生模块将第二地址信号、数据信号、读信号、写信号、读控制和写控制发送至同步模块 4】同步模块按照APB接口的时钟对接收到的第二地址信号、数据信号、读信号、写信号、读控制和写控制进行时钟同步,然后发送至转换模块; 5】转换模块按照APB接口的时序对接收到的经过时钟同步的第二地址信号、数据信号、读信号、写信号、读控制和写控制进行时序转换,然后通过APB接口发送至APB设备; 6]APB设备接收到经过时序转换的第二地址信号、数据信号、读信号、写信号、读控制和与控制后, 判断读信号和写信号中的有效信号, 若读信号有效,则进行以下操作: a)根据读控制的信息,读取相应的第二地址信号的数据,读取完成后,得到相应的数据信息,然后通过APB接口向同步模块发送数据信息和读取完成的响应信号; b)同步模块按照PCI接口的时钟对接收到的数据信息和响应信号进行时钟同步,然后发送至PCI模块; c)PCI模块对接收到的数据信息和响应信号进行信号复用得到复用信号,然后按照PCI接口的时序对复用信号进行时序转换,然后发送至PCI设备; 若写信号有效,则进行以下操作: a)根据写控制的信息,将数据信号写到第二地址信号对应的地址中,写完后,通过APB接口向同步模块发送写完的响应信号; b)同步模块按照PCI接口的时钟对接收到的响应信号进行时钟同步,然后发送至PCI丰吴块; c)PCI模块按照PCI接口的时序对完成时钟同步的响应信号进行时序转换,然后发送至PCI设备。
2.根据权利要求1所述的基于PCI接口的APB总线访问方法,其特征在于:所述步骤3】中的读控制还用于控制读信号的开始时间、控制读信号的次数以及控制读信号的持续时间。
3.根据权利要求2所述的基于PCI接口的APB总线访问方法,其特征在于:所述步骤3】中的写控制还用于控制写信号的开始时间、控制写信号的次数以及控制写信号的持续时间。
4.基于PCI接口的APB总线访问系统,其特征在于:包括PCI设备、设置在PCI设备上的PCI接口、与PCI接口通信连接的PCI模块、与PCI模块通信连接的信号产生模块、与信号产生模块通信连接的同步模块、与同步模块通信连接的转换模块、与转换模块通信连接的APB接口,所述APB接口设置在APB设备上; 所述PCI模块:用于将PCI设备对APB设备进行访问请求的请求信号转换为第一地址信号、数据信号和读写复用信号,所述请求信号是地址数据复用信号,地址数据复用信号的读写复用,地址数据复用信号的地址是32位;按照PCI接口的时序对由同步模块发送至PCI接口的信号进行时序转换;若由同步模块发送至PCI接口的信号包括至少两种信号,PCI模块用于对由同步模块发送至PCI接口的信号进行信号复用; 所述信号产生模块:根据接收到的由PCI模块发送至信号产生模块的第一地址信号、数据信号和读写复用信号,产生控制信号、读信号、写信号、第二地址信号;读信号和写信号中的一个为有效信号,第二地址信号对应的地址的位数是12位,若第一地址信号中包括PCI设备设定的正确地址,则第二地址信号中包括该正确地址; 读信号用于读第二地址信号对应的数据,写信号用于将所述数据信号的信息写到第二地址信号对应的地址中; 所述控制信号包括读控制和写控制; 读控制用于控制读信号读包括正确地址的第二地址信号; 写控制用于控制写信号将数据信号写到包括正确地址的第二地址信号对应的地址中; 第二地址信号、数据信号、读信号、写信号、读控制和写控制是非复用信号; 所述同步模块:按照APB接口的时钟对由信号产生模块发送至同步模块的非复用信号进行时钟同步;按照PCI接口的时钟对APB设备完成的访问请求信号进行时钟同步;所述转换模块:按照APB接口时序的对时钟同步后的非复用信号进行时序转换; 所述APB设备:接收到经过时序转换后的非复用信号,对非复用信号中的读信号和写信号,判断读信号和写信号中的有效信号, 若读信号有效,则根据读控制的信息,读取相应的第二地址信号的数据,读取完成后,得到相应的数据信息,然后通过APB接口向同步模块发送数据信息和读取完成的响应信号,将数据信息和读取完成的响应信号称为APB设备完成的访问请求信号; 若写信号有效,则根据写控制的信息,将数据信号写到第二地址信号对应的地址中,写完后,通过APB接口向同步模块发送写完的响应信号,将该响应信号称为APB设备完成的访问请求信号。
5.根据权利要求4所述的基于PCI接口的APB总线访问系统,其特征在于:所述读控制还用于控制读信号的开始时间、控制读信号的次数以及控制读信号的持续时间。
6.根据权利要求5所述的基于PCI接口的APB总线访问系统,其特征在于:所述写控制还用于控制写信号的开始时间、控制写信号的次数以及控制写信号的持续时间。
【文档编号】G06F13/38GK104484298SQ201410727824
【公开日】2015年4月1日 申请日期:2014年12月3日 优先权日:2014年12月3日
【发明者】田园, 李大鹏, 李玉发, 蒲恺 申请人:中国航空工业集团公司第六三一研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1