耦合设备、处理器装置、数据处理装置、传输数据的方法

文档序号:6444324阅读:250来源:国知局
专利名称:耦合设备、处理器装置、数据处理装置、传输数据的方法
技术领域
本发明的实施例总体上涉及耦合设备、处理器装置、数据处理装置以及传输数据的方法。
背景技术
对于具有处理器的多种装置而言,需要在被设置于所述处理器之外的存储器和所述处理器之间传输数据。在这种情况下,所述处理器可能具有并行数据接口而存储器可能具有串行数据接口。人们希望这样的装置功能强大并且价格便宜。


在图中,贯穿不同的视图,同样的附图标记通常涉及同样的部件。附图不必按比例确定,其重点通常在于图示本发明的原理。在下面的描述中,参考下面的

本发明的各个实施例,其中
图I示出根据本发明实施例的具有耦合设备的数据处理装置;以及 图2示出根据本发明实施例的耦合设备。
具体实施方式

参考图1,在下面将更详细地描述根据本发明实施例的具有耦合设备的数据处理装置。框图中所示的框分别表示功能框或电路框,所示的双向箭头分别表示不同框之间的连接或耦合。图I示出具有在图I中用符号“串行闪存”102表示的串行闪存存储器101、耦合设备103和在图I中用符号“核”107 (处理器、处理器内核)表示的处理器106的数据处理装置100。在图I中用符号“高速缓存” 105表示的高速缓冲存储器104被示于耦合设备内。被示为双向箭头的串行数据连接存在于串行闪存存储器101和耦合设备103之间。存储器101和耦合设备103之间的分离虚线109 (在图I中用符号“串行接口”110表示)表示串行闪存存储器101和耦合设备103通过串行数据接口彼此耦连。耦合设备103和处理器106通过显示为双向箭头的并行地址总线111彼此耦合。而且,耦合设备103和处理器106通过显示为另一双向箭头的并行数据总线112彼此耦合。位于耦合设备103和处理器106之间的分离虚线113 (在图I中用符号“并行接口”114表示)表示耦合设备103和处理器106通过并行数据接口彼此耦连。耦合设备103可以被理解为将用于存储器101的串行数据接口上的串行数据格式转换为用于处理器106的并行数据接口上的并行数据格式(或反之亦然)的转换设备或桥。由于所提供的高速缓冲存储器104,该串并桥额外地具有高速缓存能力。因此,增加了通过耦合设备103的可能数据吞吐量以及因此在处理器106中的可能数据处理速度;例如由处理器106执行的软件应用程序需要来自串行闪存存储器101的数据的情况,或处理器106需要执行应用程序的指令代码的情况,其中所述应用程序在指令代码能够被处理器106执行之前必须从串行闪存存储器101传输到处理器106。所描述的该装置使得所谓“代码执行就绪(Code execution in place)”成为可能,即清楚地表达从存储器101加载到处理器106的指令代码的直接、立即的执行。在本发明的实施例中,指令代码的直接和立即执行意味着在代码可以被处理器执行之前该代码不再需要被拷贝到例如具有快速并行访问能力的附加存储器中。耦合设备103执行用于串行闪存存储器101和高速缓冲存储器104的控制和通信的协议。例如,用于把将被执行的指令代 码加载到处理器106的工作流程如下处理器106通过并行接口请求用于执行的具有具体地址的指令代码的数据字。所请求的具体地址通过并行地址总线111被传输给耦合设备103。在所请求的地址被存储在高速缓冲存储器104中(所谓的“高速缓存命中”)的情况下,在这种情况下同样存储在高速缓冲存储器104中的相关的数据内容通过并行数据总线112被传输给处理器106。在所请求的地址没有存储在高速缓冲存储器104中(所谓的“高速缓存未命中”)的情况下,提供通过串行数据连接108对串行闪存存储器101的内容的访问。例如,包括所请求的数据字的多个数据字(通常为包括作为一部分的所请求指令代码或所请求数据的大量数据)通过串行数据连接108被传输;并且,高速缓冲存储器104的存储器行被完全重新填充。在这种情况下,所请求的数据字首先以串行数据格式从存储器101传输给耦合设备103,然后它以并行数据格式从耦合设备103传输给处理器106。在本发明的实施例中,耦合设备103和处理器106可以被容纳或集成在一个单一集成电路中。在本发明的实施例中,耦合设备103和处理器106可以通过并行数据总线结构彼此相连。这代表了功能强、效率高和价格低的装置。串行闪存存储器101可以被作为外部存储器连接到所述集成电路,其中串行闪存存储器101和所述集成电路例如可以被容纳在公共印刷电路板上。在这样的装置中使用的串行闪存存储器而不是并行闪存存储器使得减少该装置的复杂性和成本成为可能。通过串行外部存储器而不是并行外部存储器和其它事物,降低了集成电路所要求的连接终端数量以及印刷电路板上连接线或连接导线的复杂性。在处理器106执行其指令代码被存储在外部存储器的软件应用程序,以及处理器106请求该指令代码的特定被请求数据字的情况下,这通常可以从高速缓冲存储器104取得并可以以很快速的方式传输给处理器106。使得指令代码的直接和立即执行成为可能。在指令代码执行之前不需要从串行外部存储器中读取应用程序的指令代码,并且在应用程序的执行期间不需要将它缓存在快速访问的额外存储器中。由于不需要处理器106对串行闪存存储器101进行直接访问,出于这一目的,处理器106不需要串行接口。处理器106的存储器接口不需要以对串行接口的支持作为补充。通常现存的并行接口就足够了。通过耦合设备103,提高了具有处理器和外部串行存储器的装置的性能,例如关于软件应用程序的实时性的性能。所述数据处理装置适合于用于诸如移动无线电话之类的通信终端设备。参考图2,在下面将更详细地描述根据本发明的实施例的耦合设备。框图中所示的框分别表示功能块或电路块,所示的双向箭头分别表示不同块之间的连接或耦合。图2示出类似于图I的耦合设备103的耦合设备201,然而,其所示更加详细。作为示例,耦合设备201具有彼此耦合的高速缓存数据区202和高速缓存控制逻辑203,该耦合由双向箭头204所表示。高速缓存数据区202和高速缓存控制逻辑203可以被理解为和图I所示的高速缓冲存储器104类似类型的高速缓冲存储器。耦合设备201进一步包括与用于连接外部设备的并行数据连接206耦合的第一接口控制器205,所述外部设备使用并行数据格式作为数据传输。第一接口控制器205与高速缓存控制逻辑203耦合(由双向箭头207表示)。第一接口控制器205和并行数据连接206可以被理解为并行数据接口,其中所述控制器明确表示嵌入在所述接口中的“智能”。例如,第一接口控制器205可以控制并行数据总线,它可以对数据进行多路复用,它可以编码或解码数据,并且它可以来回地切换数据总线上的操作状态。耦合设备201进一步包括与用于连接外部设备的串行数据连接209耦合的第二接口控制器208,所述外部设备使用串行数据格式作为数据传输。第二接口控制器208也与高速缓存控制逻辑203耦合(由双向箭头210表示)。第二接口控制器208和串行数据连接209可以被理解为串行数据接口,其中所述控制器明确表示嵌入在所述接口中的“智能”。例如,第二接口控制器208是用于接口类型“SPI ”的控制器。高速缓存数据区202和高速缓存控制逻辑203可以用不同的方式进行组织,例如以存储器单元的大小、路径数和总大小为特征。在本发明的实施例中,假定高速缓存数据区202具有多个存储器单元,它们中的每个具有四个数据字的大小。当通过并行数据连接206接收到对特殊地址的数据字的请求时,高速缓存控制逻辑203确定分配给所述地址的数据字是否存储在高速缓存数据区202中。在所述数据字存储在高速缓存数据区202中的情况下,通过并行数据连接206输出所述数据字。在所述数据字没有存储在高速缓存数据区202中的情况下,要求完全下载高速缓存数据区202的相应存储器行。在这种情况下,并行数据连接206的总线周期被延迟很长,直到具有四个数据字的存储器行的下载完成。然后,通过并行数据连接206输出包括在四个被下载的数据字中的被请求的数据字。图2所示的实施例进一步包括彼此耦合的缓冲数据区211和缓冲控制逻辑212,该耦合由双向箭头213所表示。缓冲数据区211和缓冲控制逻辑212可以被理解为与高速缓冲存储器独立设置的缓冲存储器,但是其与高速缓冲存储器和其它部件耦合,从而使得各种部件的协同控制成为可能。缓冲数据区211与第一接口控制器215相耦合(通过双向箭头214表示),缓冲控制逻辑212与高速缓存控制逻辑203耦合(通过双向箭头215表示)并且与第二接口控制器208耦合(通过双向箭头216表示)。而且,提供一个或多个控制线217以将缓冲控制逻辑212与外部设备相耦合,所述外部设备与并行数据连接206相耦合。可以使用旁路高速缓冲存储器的串行数据连接209来读取并且可以依靠缓冲存储器通过并行数据连接206来输出更大的数据块或一更通常地一没有按某种概率存储在高速缓存数据区202中的这样的数据块。为了这一目的,起始地址和相应数据块的大小被移交给缓冲控制逻辑212。缓冲控制逻辑212通过第二接口控制器208触发数据块的数据读入,并且将串行读入的数据存储在缓冲数据区211中,直到全部被请求的数据块都被读入。
在缓冲数据区211中通过串行数据连接209进行的数据块的读入可以与通过并行数据连接206进行的对高速缓存数据区202中所存储数据的请求和输出并行发生。在请求没有存储在高速缓冲存储器中的数据的情况下,必须发生高速缓存数据区202的存储器行的完全下载,通过串行数据连接209正在进行的到缓冲数据区211的数据读入可能被临时中断,并且通过串行数据连接209进行的到高速缓存数据区202的存储器行的下载具有更高的优先权。在本发明的实施例中,在全部请求的数据块被读入所连接的外部设备的缓冲数据区211后,缓冲控制逻辑212向例如已通过控制线217请求所述数据块的处理器指示所述数据块被全部提供在缓冲存储器中。然后,所述数据块通过并行数据连接206被全部传输给外部设备。例如,这可以通过DMA (直接存储器访问)数据传送进行,或在外部设备是“C166”类型的处理器的情况下,通过所谓的PEC-传送。在所描述的部件协作中,如果希望位于高速缓冲存储器中并且可能在时间上是关键性的数据被要求通过并行数据连接206输出,则通过缓冲存储器旁路掉所述高速缓冲存储器不会引起任何延迟。通过串行数据连接209进入缓冲数据区211的相对慢的数据读入可以与通过并行数据连接206的其它数据的请求和输出并行发生,并且通过串行数据连接209进行到高速缓冲存储器中的数据下载比读入到缓冲存储器中具有更高的优先权。只要 全部数据块被提供在缓冲数据区211中,它就可以通过并行数据连接206被相对快速地输出。因此,例如,全部SMS (短消息业务)可以从移动无线电话的串行闪存存储器加载到移动无线电话的处理器中,而不会干扰处理器的其它数据请求。根据本发明的实施例,提供了用于耦合存储器与处理器的耦合设备,所述存储器具有串行数据输出,所述处理器具有并行数据输入。所述耦合设备可以包括接收数据的串行数据接口、发送数据的并行数据接口以及耦合到所述串行数据接口和所述并行数据接口的高速缓冲存储器,其中所述高速缓冲存储器被配置为接收和存储已通过所述串行数据接口以串行数据格式接收的数据,并将存储在所述高速缓冲存储器中的数据传送给所述并行数据接口。根据本发明的另一实施例,提供了一种处理器装置。所述处理器装置可以包括用于耦合存储器与处理器的耦合设备,所述存储器具有串行数据输出,所述处理器具有并行数据输入,其中所述耦合设备可以包括接收数据的串行数据接口、发送数据的并行数据接口以及耦合到所述串行数据接口和所述并行数据接口的高速缓冲存储器,其中所述高速缓冲存储器被配置为接收和存储已通过所述串行数据接口以串行数据格式接收的数据,并将存储在所述高速缓冲存储器中的数据传送给所述并行数据接口。所述处理器装置可以进一步包括具有并行数据接口的处理器,所述处理器的并行数据接口耦合到所述耦合设备的并行数据接口。根据本发明的又另一实施例,提供了一种数据处理装置。所述数据处理装置可以包括用于耦合存储器与处理器的耦合设备,所述存储器具有串行数据输出,所述处理器具有并行数据输入,其中所述耦合设备可以包括接收数据的串行数据接口、发送数据的并行数据接口以及耦合到所述串行数据接口和所述并行数据接口的高速缓冲存储器,其中所述高速缓冲存储器被配置为接收和存储已通过所述串行数据接口以串行数据格式接收的数据,并将存储在所述高速缓冲存储器中的数据传送给所述并行数据接口。所述数据处理装置可以进一步包括具有并行数据接口的处理器和具有串行数据接口的存储器,所述处理器的并行数据接口耦合到所述耦合设备的并行数据接口,所述存储器的串行数据接口耦合到所述耦合设备的串行数据接口。根据本发明的又另一实施例,提供了一种将数据从存储器传送到处理器的方法,所述存储器具有串行数据输出,所述处理器具有并行数据输入。所述方法可以包括将数据以串行数据格式从所述存储器传送到高速缓冲存储器,在所述高速缓冲存储器中接收和存储以串行数据格式接收的数据,从所述高速缓冲存储器中读取所存储的数据并且将所述读取数据以并行数据格式传送给所述处理器。根据本发明的又另一实施例,提供了一种将数据从处理器传送到存储器的方法,所述处理器具有并行数据输入,所述存储器具有串行数据输出。所述方法可以包括从将数据所述处理器以并行数据格式传送到高速缓冲存储器,在所述高速缓冲存储器中接收和存储以并行数据格式接收的数据,从所述高速缓冲存储器中输出已所存储的数据以及将所述 输出数据以串行数据格式传送给所述存储器。所描述的实施例适用于耦合设备、处理器装置、数据处理装置以及传送数据的方法是有效的。在本发明的各个实施例中,所述并行数据接口被进一步配置为接收数据。在本发明的实施例中,所述并行数据接口被配置为接收指示数据或哪些数据应当通过并行数据接口传送的指令数据。在本发明的实施例中,所述并行数据接口并行数据总线和并行地址总线。在本发明的实施例中,所述串行数据接口被进一步配置为传送数据。在本发明的实施例中,所述串行数据接口被配置为传送指示数据或哪些数据应当从所述存储器中被读出并且应当通过所述并行数据接口接收的指令数据。 在本发明的实施例中,所述高速缓冲存储器被配置为检查由通过所述并行数据接口接收的指令数据所请求的数据是否存储在所述高速缓冲存储器中,并且在所述请求数据被存储在所述高速缓冲存储器的情况下,直接将它们输出给所述并行数据接口,而在所述请求数据没有被存储在所述高速缓冲存储器的情况下,使所述串行数据接口传送指令数据,所述指令数据指示所述请求数据应当从存储器中被读出并且应当通过所述串行数据接口被接收。在本发明的实施例中,所述高速缓冲存储器被配置为在所述请求数据没有存储在所述高速缓冲存储器的情况下,使所述串行数据接口传送指令数据,所述指令数据指示大于所述请求数据且包括所述请求数据的数据量应当从存储器中被读出并且应当通过所述串行数据接口被接收。在本发明的实施例中,所述数据量至少足以填充所述高速缓冲存储器的存储器行。在本发明的实施例中,所述请求数据包括应当由具有并行数据接口的处理器通过所述并行数据接口接收且应当由所述处理器直接执行的指令代码。在本发明的实施例中,所述耦合设备可以进一步包括缓冲存储器,所述缓冲存储器与所述串行数据接口和所述并行数据接口耦合,其中所述缓冲存储器被配置为存储所述串行数据接口已经接收的数据以及将存储在所述缓冲存储器中的数据输出给所述并行数据接口。在本发明的实施例中,所述高速缓冲存储器被配置为接收所述并行数据接口已经接收的数据并将所述接收数据输出给所述串行数据接口。在本发明的实施例中,所述处理器是通信终端设备的处理器。在本发明的实施例中,所述处理器是移动无线电话的处理器。
在本发明的实施例中,所述处理器装置可以包括在集成电路中。在本发明的实施例中,所述存储器是串行闪存存储器。 在本发明的实施例中,所述数据处理装置以公共基底上的电路形式实现。在本发明的实施例中,所述数据由所述处理器请求。在本发明的实施例中, 一种用于传送数据的方法可以进一步包括检查由所述处理器请求的数据是否存储在所述高速缓冲存储器中,在所述请求数据被存储在所述高速缓冲存储器的情况下,从所述高速缓冲存储器中读出数据并直接将所述读出的数据传送给所述处理器,在所述请求数据没有存储在所述高速缓冲存储器的情况下,从所述存储器请求所述数据。在本发明的实施例中,所述请求数据包括应当由所述处理器直接执行的指令代码。虽然已经参考具体实施例特别示出和描述了本发明,但是本领域技术人员应当理解的是,可以进行各种形式和细节上的变化,而不背离由附加的权利要求确定的本发明的精神和范围。本发明的范围因此由附加的权利要求指定,并且由此包括在权利要求的等价的意思和范围内的所有变化。
权利要求
1.一种用于耦合存储器与处理器的耦合设备,所述存储器包括串行数据输出,所述处理器包括并行数据输入,所述耦合设备包括 接收数据的串行数据接口; 发送数据的并行数据接口; 耦合到所述串行数据接口和所述并行数据接口的高速缓冲存储器,其中所述高速缓冲存储器被配置为接收和存储已通过所述串行数据接口以串行数据格式接收的数据,并将存储在所述高速缓冲存储器中的数据传送给所述并行数据接口。
2.权利要求I的耦合设备, 其中所述并行数据接口被进一步配置为接收数据。
3.权利要求2的稱合设备, 其中所述并行数据接口被配置为接收指令数据,所述指令数据指示数据或哪些数据应当通过所述并行数据接口传送。
4.权利要求3的稱合设备, 其中所述并行数据接口包括并行数据总线和并行地址总线。
5.权利要求I的稱合设备, 其中所述串行数据接口被进一步配置为传送数据。
6.权利要求5的稱合设备, 其中所述串行数据接口被配置为传送指令数据,所述指令数据指示数据或哪些数据应当从存储器中被读出并且应当通过所述并行数据接口被接收。
7.权利要求3的稱合设备, 其中所述高速缓冲存储器被配置为检查由通过所述并行数据接口接收的指令数据所请求的数据是否存储在所述高速缓冲存储器中,并且在所述请求数据被存储在所述高速缓冲存储器的情况下,直接将它们输出给所述并行数据接口,而在所述请求数据没有被存储在所述高速缓冲存储器的情况下,使所述串行数据接口传送指令数据,所述指令数据指示所述请求数据应当从存储器中被读出并且应当通过所述串行数据接口被接收。
8.权利要求7的稱合设备, 其中所述高速缓冲存储器被配置为在所述请求数据没有存储在所述高速缓冲存储器的情况下,使所述串行数据接口传送指令数据,所述指令数据指示大于所述请求数据且包括所述请求数据的数据量应当从存储器中被读出并且应当通过所述串行数据接口被接收。
9.权利要求8的稱合设备, 其中所述数据量至少足以填充所述高速缓冲存储器的存储器行。
10.权利要求7的耦合设备, 其中所述请求数据包括应当由具有并行数据接口的处理器通过所述并行数据接口接收且应当由所述处理器直接执行的指令代码。
11.权利要求I的耦合设备,进一步包括 缓冲存储器,所述缓冲存储器与所述串行数据接口和所述并行数据接口耦合,其中所述缓冲存储器被配置为存储所述串行数据接口已经接收的数据以及将存储在所述缓冲存储器中的数据输出给所述并行数据接口。
12.权利要求2的稱合设备,其中所述高速缓冲存储器被配置为接收所述并行数据接口已经接收的数据并将所述接收数据输出给所述串行数据接口。
13.一种处理器装置,包括 用于耦合存储器与处理器的耦合设备,所述存储器包括串行数据输出,所述处理器包括并行数据输入,所述耦合设备包括 接收数据的串行数据接口; 发送数据的并行数据接口; 耦合到所述串行数据接口和所述并行数据接口的高速缓冲存储器,其中所述高速缓冲存储器被配置为接收和存储已通过所述串行数据接口以串行数据格式接收的数据,并将存储在所述高速缓冲存储器中的数据传送给所述并行数据接口 ;以及 具有并行数据接口的处理器,所述处理器的并行数据接口耦合到所述耦合设备的并行数据接口。
14.权利要求13的处理器装置, 其中所述处理器是通信终端设备的处理器。
15.权利要求14的处理器装置, 其中所述处理器是移动无线电话的处理器。
16.权利要求13的处理器装置, 其被包括在集成电路中。
17.一种数据处理装置,包括 用于耦合存储器与处理器的耦合设备,所述存储器包括串行数据输出,所述处理器包括并行数据输入,所述耦合设备包括 接收数据的串行数据接口; 发送数据的并行数据接口; 耦合到所述串行数据接口和所述并行数据接口的高速缓冲存储器,其中所述高速缓冲存储器被配置为接收和存储已通过所述串行数据接口以串行数据格式接收的数据,并将存储在所述高速缓冲存储器中的数据传送给所述并行数据接口; 具有并行数据接口的处理器,所述处理器的并行数据接口耦合到所述耦合设备的并行数据接口 ;以及 具有串行数据接口的存储器,所述存储器的串行数据接口耦合到所述耦合设备的串行数据接口。
18.权利要求17的数据处理装置, 其中所述存储器是串行闪存存储器。
19.权利要求17的数据处理装置, 以在公共基底上的电路形式实现。
20.一种将数据从存储器传送到处理器的方法,所述存储器包括串行数据输出,所述处理器包括并行数据输入,所述方法包括 将数据以串行数据格式从所述存储器传送到高速缓冲存储器; 在所述高速缓冲存储器中接收和存储以串行数据格式接收的数据; 从所述高速缓冲存储器中读取所存储的数据;以及将所读取的数据以并行数据格式传送给所述处理器。
21.权利要求20的方法, 其中所述数据由所述处理器请求。
22.权利要求21的方法,进一步包括 检查由所述处理器请求的数据是否存储在所述高速缓冲存储器中; 在所述请求数据存储在所述高速缓冲存储器的情况下,从所述高速缓冲存储器中读出数据并直接将该读出的数据传送给所述处理器; 在所述请求数据没有存储在所述高速缓冲存储器的情况下,从存储器请求所述数据。
23.权利要求20的方法, 其中所述请求数据包括应当由所述处理器直接执行的指令代码。
24.一种将数据从处理器传送到存储器的方法,所述处理器包括并行数据输入,所述存储器包括串行数据输出,所述方法包括 将数据以并行数据格式从所述处理器传送到高速缓冲存储器; 在所述高速缓冲存储器中接收和存储以并行数据格式接收的数据; 从所述高速缓冲存储器中输出所存储的数据;以及 将所述输出数据以串行数据格式传送给所述存储器。
全文摘要
本发明的实施例总体上涉及耦合设备、处理器装置、数据处理装置以及传输数据的方法。在本发明的实施例中,提供了用于耦合存储器与处理器的耦合设备,所述存储器具有串行数据输出,所述处理器具有并行数据输入。所述耦合设备可以包括接收数据的串行数据接口、发送数据的并行数据接口以及所述到所述串行数据接口和所述并行数据接口的高速缓冲存储器,其中所述高速缓冲存储器被配置为接收和存储已通过所述串行数据接口以串行数据格式接收的数据,并将存储在所述高速缓冲存储器中的数据传送给所述并行数据接口。
文档编号G06F13/16GK102637153SQ201110453608
公开日2012年8月15日 申请日期2007年9月28日 优先权日2006年9月28日
发明者C.埃本, D.伯格曼, E.拉巴里 申请人:英飞凌科技股份公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1