用于耦合基带处理器和应用程序处理器的可配置串行总线的制作方法

文档序号:6432027阅读:171来源:国知局
专利名称:用于耦合基带处理器和应用程序处理器的可配置串行总线的制作方法
背景技术
今天的便携式通信产品使用可以执行各种应用程序的电路。一些新应用程序是用户定义的,而更复杂的应用程序甚至是可以下载的。一种产品的市场成功可能取决于一连串的连续升级以及改进的应用程序,以增进产品特征和功能性。同时,用户期望产品包括高的数据传输速率性能,有时还期望具有更小的产品尺寸和费用。
正在进行竞争的通信产品可以是基于码分多址(CDMA)、全球移动通信系统(GSM)、时分多址(TDMA)系统、第三代(3G)系统以及其他系统的。这样,可用于一种通信产品的应用程序如果不修改可能就不能用于其他产品。换句话说,在数字信号处理器(DSP)上运行的、实现用于一个标准的若干通信协议的应用程序,不能正常地接口到基于另一个协议的应用程序。因此,一直需要更好的方法,使得应用程序不进行大的修改就可以与许多通信产品一起正常地运行。


在说明书的结束部分具体指出并清楚要求了本发明的主题。但是,通过参考下面的详细描述并同时结合附图,可以最好地理解有关本发明的组织、操作方法,以及本发明的目的、特征和优点,在附图中图1是图示应用程序处理器与数字信号处理器之间的接口的框图;图2是示出了根据本发明实施例的应用程序处理器的一部分和基带处理器的一部分的框图;以及图3是可以在图2的应用程序处理器与基带处理器之间传输的信号的时序图。
应该理解,为了图示的简单和清楚,图中图示的单元没有必要按比例绘制。例如,为了清楚起见,一些单元的尺寸相对于其他单元被放大。
具体实施例方式
在下面的详细描述中,给出了大量具体的细节,以提供对本发明的完整理解。但是,本领域的技术人员应该理解,没有这些具体的细节也可以实施本发明。在其他情况下,没有详细描述公知的方法、过程、元件和电路,以免模糊本发明。
图1是图示系统10的应用程序处理器12与数字信号处理器(DSP)16之间的接口的框图。除非特别说明,否则应该理解在整个说明书中,本发明涉及经过处理器之间的接口来操纵和/或移动数据的动作和/或过程,这从下面的讨论变得很清楚。这样,处理器12和16可以是微处理器、微控制器、精简指令集计算(RISC)处理器、英国剑桥ARM Holdings公司的ARMTM核、加州圣克拉拉的Intel公司的StrongARMTM核或XScaleTM核、或者嵌入式核,但是本发明的范围不限制在这一方面。应该理解,图1中示出的处理器的框图是说明性的框图,本发明的范围不限于这些例子。
本发明实施例中表示的体系结构,可以应用于便携式计算产品、网络产品、数码相机应用产品、无线技术中的产品,以及基于仪表化和自动应用的更广范围的消费品。还应该理解,这里所公开的电路可以用在许多系统中,仅仅作为示例,所述系统包括蜂窝无线电话通信系统、个人通信系统(PCS)、调制解调器、双向无线电通信系统、单向和双向寻呼机、个人数字助理(PDA)以及其他手持设备。
如图1所示,应用程序处理器12可以包括专用于所选应用程序的硬件和软件。这样,应用程序处理器12可以有能力处理专用于所选产品的功能。作为示例,如果系统10被用于蜂窝电话通信系统中,那么应用程序处理器12可以处理专用于语音识别的算法。另一方面,基带处理器16可以有能力处理专用于无线数据通信和RF信令的算法。这样,基带处理器16可以处理与码分多址(CDMA),全球移动通信系统(GSM),北美数字蜂窝(NADC),时分多址(TDMA),和例如宽带CDMA(WCDMA)、CDMA-2000的第三代(3G)系统等等相关联的算法。
在一些体系结构中,基带处理器16和应用程序处理器12可以分别作为主处理器和从处理器。不管可能执行什么应用程序,也不管应用程序处理器12和基带处理器16是怎样布置的,接口20都可以在应用程序处理器12和基带处理器16之间提供高带宽互连。接口20可以包括处于应用程序处理器12中的具有焊盘/封装端子的数据端口14,所述焊盘/封装端子可以电连接到与基带处理器16中的数据端口18相关联的焊盘/封装端子。存储器15可以被连接到应用程序处理器12,存储器17可以被连接到基带处理器16。存储器15和存储器17可以是静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)或者例如闪存的非易失性存储器。
图2是示出了可以通过接口20被电连接的应用程序处理器12的一部分和基带处理器16的一部分的框图。具体来说,该图提供了可以与应用程序处理器12集成的端口14以及可以与基带处理器16集成的端口18。端口14包括提供数据的存储寄存器TX通道24到TX通道26,所述数据可以通过TX控制器28被传输到端子/焊盘(引脚),再经过接口20的互连被传输到基带处理器16的端口18。TX通道24到TX通道26也被称为通道寄存器,它们可以将所存储的数据提供给已被选择用于有效传输数据的数据端子。由端口18中的RX控制器48接收的数据可以被存储在寄存器RX通道44到RX通道46中。以类似的方式,基带处理器16的端口18中的存储寄存器TX通道54到TX通道56可以提供数据,所述数据通过TX控制器58、经过接口20的互连被传输到应用程序处理器12的端口14。由端口14中的RX控制器38接收的数据可以被存储在寄存器RX通道34到RX通道36中。控制寄存器22和42可以提供控制信号,所述控制信号影响各个端口14和18内的以及通过接口20的数据传输、存储和路由。
应用程序处理器12和基带处理器16可以在十四个信号通路或连接上进行彼此间的通信,但是这不是对本发明的限制。连接端口14和端口18的所述十四个信号通路可以被看作是两组信号通路。TX控制器28和RX控制器48之间的第一组信号通路(入站(inbound)信号),包括下列信号,即CLOCK(时钟)、STROBE(选通)、WAIT(等待)以及数据信号DATA0、DATA1、DATA2和DATA3。RX控制器38和TX控制器58之间的第二组信号通路(出站(outbound)信号),也包括附加的信号,即CLOCK、STROBE、WAIT和数据信号DATA0、DATA1、DATA2和DATA3。相同的信号名称表示同样类型的信号可以在该信号通路上传输。例如,在第一组中,数据信号DATA0、DATA1、DATA2和DATA3可以在所述信号通路上从TX控制器28被传输到RX控制器48,而在第二组中,数据信号DATA0、DATA1、DATA2和DATA3可以在所述信号通路上从TX控制器58被传输到RX控制器38。在这个具体的实施例中,有四个出站数据信号通路和四个入站数据信号通路,但是入站和出站信号通路的数量不是意于对本发明进行限制。
控制寄存器22中的存储寄存器或配置寄存器21以及控制寄存器42中的配置寄存器41可以被编程,从而定义经过接口20的数据流。通过编程配置寄存器21,可以修改将数据从TX控制器28有效传输到RX控制器48的信号通路的数量。配置寄存器21中数据字段的两个位的值,可以控制有效(active)的数据信号DATA0、DATA1、DATA2和DATA3的数量。换句话说,配置寄存器21可以设定所有数据信号通路都用于传输数据,或者一些数据信号通路用于传输数据,或者数据信号通路中的任何一个都不传输数据。换而言之,如由配置寄存器的数据字段中的数据所确定的,端口14和端口18之间的一部分信号通路可以被编程而变为是无效(inactive)的。类似地,通过编程配置寄存器41,可以修改将数据从TX控制器58有效传输到RX控制器38的信号通路的数量。根据本发明的一个实施例,配置寄存器41中两位的寄存器字段可以控制传输数据信号DATA0、DATA1、DATA2和DATA3的哪一个信号通路是有效的以及哪一个是无效的。虽然已经将配置寄存器21和配置寄存器41描述为寄存器,但是用于存储数据字段值的方法不限于这个方面。本发明的其他实施例可以使用例如存储器或锁存器的其他方法,来存储寄存器字段中的数据。
存储在配置寄存器21和配置寄存器41的寄存器字段中的数据值,可以在软件例程中的程序控制下被改变。或者,存储在寄存器字段中的数据值可以在应用程序处理器12和基带处理器16的加电过程期间被初始化。对于任一一种方法,在第一组中的数据信号通路的数量以及在第二组中的数据信号通路的数量可以被设置,以经过接口20传输数据。这样,根据本发明的实施例,可以修改配置寄存器21和/或配置寄存器41的初始设置,从而提供接口20中的可选数量的有效数据信号通路。利用在程序控制下被定义的寄存器字段,基于在处理器12和/或基带处理器16中运行的应用程序改变数据信号通路的数量,可能是人们所希望的。
图3是示出了根据具体实施例的信号CLOCK 60、DATA 62、STROBE 64和WAIT 68在时间周期t0、t1、t2、t3、t4和t5的波形的时序图。简单地参照图2和图3,信号CLOCK 60的波形可以代表在接口20中标记为CLOCK的信号的时序;信号DATA 62的波形可以代表标记为DATA0、DATA1、DATA2和DATA3的信号;信号STROBE 64的波形可以代表标记为STROBE的信号;以及,信号WAIT 68的波形可以代表标记为WAIT的信号。这样,所述波形代表可以在TX控制器28和RX控制器48之间传输的信号,或者可以在RX控制器38和TX控制器58之间传输的信号。
在操作中,配置寄存器21和配置寄存器41的寄存器字段可以被编程,从而设置可以在处理器12和基带处理器16之间传输数据的数据信号通路的数量。在编程之后,四个入站数据信号通路和四个出站数据信号通路可以是有效的。或者,对于入站或出站数据信号通路来说,有少于四个的数据信号通路是有效的。应该注意,有效入站数据信号通路的数量和有效出站数据信号通路的数量可以相匹配也可以不相匹配。这样,在已经被编程成为有效的数据信号通路上,在基带处理器16和应用程序处理器12之间可以传输数据。
由图2和图3中的信号时钟表示的可配置快速时钟信号(speed clocksignal),可以由TX控制器28(或TX控制器58)提供,而STROBE信号可以被提供用于指示消息开始(或消息结束)。在STROBE信号有效时,在数据信号通路上提供通道号,用于标识数据可以从其传输的通道。此外,WAIT信号可以被接收,用于指示接收缓冲器可能已满,要停止进一步的数据传输。
作为示例,配置寄存器21的寄存器字段可以被编程,以允许传输数据信号DATA0、DATA1、DATA2和DATA3的所有四个信号通路都是有效的。应用程序处理器12现在可以在第3通道上将十六进制数据7FBE传输到基带处理器16。在STROBE信号有效时,四个数据信号通路在时间周期t0期间提供数据值3,用于标识第3通道正在传输数据。在STROBE信号之后,在时间周期t1、t2、t3和t4期间,可以提供十六进制数据7FBE的数据值。数据信号通路可以在时间周期t5期间提供值0,用于指示从第3通道的数据传输已经结束,或者提供一个值以标识可以从其传输数据的新的通道。注意,这个例子只需要数据从应用程序处理器12被传输到基带处理器16,但是,配置寄存器41的寄存器字段可以被单独编程,并且在第二组信号通路上在基带处理器16和应用程序处理器12之间可以类似地传输数据。
作为另一个示例,应用程序处理器12可以在第2通道上将八进制数据7471传输到基带处理器16。在这个例子中,配置寄存器21的寄存器字段可以被编程,以允许四个信号通路中的三个有效。当在时间周期t0期间STROBE信号可能有效时,可以在三个数据信号通路上提供值2,以标识数据正从哪一个通道被传输。在STROBE信号之后,在时间周期t1、t2、t3和t4中,可以从连接到三个有效数据信号通路的三个端子提供八进制数据7471。配置寄存器21(和/或配置寄存器41)的寄存器字段还可以被编程来允许四个信号通路中的一个或两个有效,以传输二进制数据。
如所示出和描述的,第一组信号通路提供从应用程序处理器12到基带处理器16的数据传输,而第二组信号通路提供从基带处理器16到应用程序处理器12的数据传输。配置寄存器21和41的寄存器字段,可以被编程以允许所选数量的信号通路有效。十六进制数(基数16)可以在四个信号通路有效时被传输,八进制数(基数8)可以在三个信号通路有效时被传输,而二进制数(基数2)可以在两个信号通路有效时被传输。可以基于正被运行的应用程序、带宽性能标准或功率消耗限制,来修改被选为有效的数据信号通路的数量。
虽然在这里已经图示和描述了本发明的某些特征,但是对于本领域的技术人员来说,将可以想到许多修改、替换、改变和等同物。因此,应该理解,所附权利要求意于覆盖落在本发明的实质精神内的所有这样的修改和改变。
权利要求
1.一种装置,包括存储寄存器,用于存储第一数据值和第二数据值;通道,用于存储数据;以及第一端子、第二端子、第三端子和第四端子,所述第一、第二、第三和第四端子用于根据被译码以选择四个有效端子的所述第一和第二数据值来从所述通道提供十六进制数据,并且所述第一、第二和第三端子用于根据被译码以选择三个有效端子的所述第一和第二数据值来从所述通道提供八进制数据。
2.如权利要求1所述的装置,还包括用于提供时钟信号的端子,其中,所述十六进制数据随所述时钟信号而改变;以及用于提供选通信号的端子,其中,在所述选通信号期间在所述第一、第二、第三和第四端子上提供对所述通道的标识。
3.如权利要求2所述的装置,还包括用于接收等待信号的端子,其中,在接收到所述等待信号时所述十六进制数据不随所述时钟信号改变。
4.如权利要求1所述的装置,还包括用于提供时钟信号的端子,其中,所述八进制数据随所述时钟信号而改变;以及用于提供选通信号的端子,其中,在所述选通信号期间在所述第一、第二和第三端子上提供对所述通道的标识。
5.如权利要求4所述的装置,还包括用于接收等待信号的端子,其中,在接收到所述等待信号时所述八进制数据不随所述时钟信号改变。
6.一种设备,包括存储寄存器,用于存储数据字段值;通道,用于存储数据;以及数据端子,用于从所述通道提供数据,所述数据具有由所述数据字段值确定的基数值。
7.如权利要求6所述的设备,其中,根据所述数据字段值从所述数据端子提供八进制数据。
8.如权利要求6所述的设备,其中,根据所述数据字段值从所述数据端子提供十六进制数据。
9.如权利要求6所述的设备,还包括用于提供选通信号的端子,其中,在所述选通信号期间从所述数据端子提供所述通道的标识值。
10.一种系统,包括第一处理器,所述第一处理器具有用于出站数据的第一组端子以及用于入站数据的第二组端子,并包括具有数据字段的寄存器,所述数据字段用于确定在所述第一组中提供出站数据的端子;耦合到所述第一处理器的静态随机存取存储器;以及第二处理器,所述第二处理器具有用于入站数据的第一组端子和用于出站数据的第二组端子,所述第二处理器的所述第一组端子被耦合到所述第一处理器的所述第一组端子,所述第二处理器的所述第二组端子被耦合到所述第一处理器的所述第二组端子。
11.如权利要求10所述的系统,还包括所述第二处理器中的具有数据字段的寄存器,所述数据字段用于确定所述第二组中提供出站数据的端子。
12.如权利要求10所述的系统,还包括所述第一处理器中的通道,用于根据所述数据字段以十六进制格式在所述第一组端子提供出站数据。
13.如权利要求10所述的系统,还包括所述第一处理器中的通道,用于根据所述数据字段以十六进制格式在所述第二组端子接收入站数据。
14.如权利要求10所述的系统,还包括所述第一处理器中的通道,用于根据所述数据字段以八进制格式在所述第一组端子提供出站数据。
15.如权利要求10所述的系统,还包括所述第一处理器中的通道,用于根据所述数据字段以八进制格式在所述第二组端子接收入站数据。
16.如权利要求10所述的系统,其中,所述第一处理器是应用程序处理器。
17.如权利要求10所述的系统,其中,所述第二处理器是基带处理器。
18.一种方法,包括写数据字段的数据位;将数据存储在存储设备中;以及在第一组端子中的数据端子提供所述被存储的数据,其中,根据所述数据位的值所述数据端子的一部分是无效的。
19.如权利要求18所述的方法,包括在第二组端子中的数据端子接收数据,其中,根据所述数据位的值所述数据端子的一部分是无效的。
20.如权利要求18所述的方法,还包括在所述第一组端子中提供选通信号,其中,在所述选通信号有效时所述数据端子提供所述存储设备的标识。
21.如权利要求20所述的方法,还包括在所述第一组端子中提供时钟信号,其中,在紧跟所述选通信号之后的时钟信号的若干时钟周期中所述数据端子以十六进制格式提供被存储的数据。
22.如权利要求20所述的方法,还包括在所述第一组端子中提供时钟信号,其中,在紧跟所述选通信号之后的时钟信号的时钟周期中所述数据端子以八进制格式提供被存储的数据。
23.一种方法,包括从一组数据端子中选择数据端子来提供数据;从第一端子提供时钟信号;从第二端子提供选通信号;以及在所述选通信号无效时在所选定的数据端子提供数据,所述数据根据所述时钟信号改变。
24.如权利要求23所述的方法,还包括提供接收等待信号的第三端子,所述等待信号防止在所述数据端子所提供的数据改变。
25.如权利要求23所述的方法,还包括当存储发送到所述数据端子的数据的通道寄存器为空时,从所述数据端子提供空数据。
26.如权利要求25所述的方法,还包括在所述选通信号有效时,从所选定的数据端子提供与所述通道寄存器相对应的标识值。
27.一种方法,包括通过第一组数据引脚将数据从应用程序处理器传输到基带处理器;以及通过第二组数据引脚将数据从所述基带处理器传输到所述应用程序处理器。
28.如权利要求27所述的方法,还包括对所述应用程序处理器中的寄存器编程,以从所述第一组数据引脚中选择数据引脚来提供十六进制、八进制或二进制数据。
29.如权利要求27所述的方法,还包括对所述基带处理器中的寄存器编程,以从所述第二组数据引脚中选择数据引脚来提供十六进制、八进制或二进制数据。
30.如权利要求28所述的方法,其中,所述从应用程序处理器向基带处理器传输数据的操作还包括向所述基带处理器传输时钟信号。
31.如权利要求29所述的方法,其中,所述从基带处理器向应用程序处理器传输数据的步骤还包括向所述应用程序处理器传输时钟信号。
32.一种包括在其上存储有指令的存储介质的物品,所述指令被计算平台执行时将导致(a)通过第一组数据引脚将数据从应用程序处理器传输到基带处理器;以及(b)通过第二组数据引脚将数据从所述基带处理器传输到所述应用程序处理器。
33.如权利要求32所述的物品,其中,所述基带处理器包括寄存器,并且其中所述指令被执行时还会导致对所述基带处理器中的寄存器编程,以从所述第一组数据引脚中选择数据引脚来提供十六进制、八进制或二进制数据。
34.如权利要求32所述的物品,其中,所述应用程序处理器包括寄存器,并且其中所述指令被执行时还会导致对所述应用程序处理器中的寄存器编程,以从所述第二组数据引脚中选择数据引脚来提供十六进制、八进制或二进制数据。
全文摘要
一种系统,包括应用处理器和基带处理器,所述应用处理器和基带处理器可以被配置来进行通信,所述通信通过数据传输来进行,其中,根据寄存器的数据字段中的被编程位,所述数据是十六进制格式、八进制格式或十进制格式的。
文档编号G06F13/42GK1610893SQ02823218
公开日2005年4月27日 申请日期2002年11月21日 优先权日2001年11月29日
发明者斯科特·格伦 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1