专利名称:支持突发读写操作的处理装置的制作方法
技术领域:
包含可编程处理器和与该可编程处理器连接的外围设备的数字信号处理系统,其中,处理器被设置为相应地使用针对单个数据元素的读操作和写操作与外围设备进行通信。
背景技术:
虽然通过增大时钟频率而以更快的速度执行操作,或者通过使用像超长指令字处理器或超标量处理器这样的并行体系结构从而与其它的操作并行地执行,使得可编程处理器的计算能力不断增大,但是,基于这些处理器的系统的总体性能通常被其外围设备的带宽的限制所阻碍,例如输入/输出(I/O)设备,物理存储器或数据总线。为了减轻这些限制,可以将(多级)高速缓存结合到这些系统中,以尽可能多地保存处理器的局部数据,因此减少了用于从系统的更远的部分取回数据所需的数据带宽,如在US 6,574,707 B2中所公开的。此外,无论何时需要总线或者存储器带宽,例如当高速缓存访问失效时,通过使用所谓的突发操作来有效地使用该带宽,通过此操作,多个数据元素被包括在单独的原子操作中,这需要较少的控制开销。通常,可编程处理器经由针对单个数据元素的读操作和写操作产生I/O请求。通过使用高速缓存,这些单个数据元素操作被自动地转化为突发操作,因为高速缓存为处理器提供了接口,从而使用单个元素操作来服务处理器,而一般使用突发操作来访问系统的其他部分。后者特别用于读操作,而在高速缓存访问失效的情况下,高速缓存将使用一或多个突发操作取回从系统请求的整个高速缓存线。依赖于所使用的高速缓存写策略,当存在高速缓存时的处理器写或者导致突发行为或者导致单个元素访问。使用“直写式”(write-through)策略的高速缓存将把单个数据元素写到系统中,使用叫做“回写式”(write-back)写策略的高速缓存将主要以突发模式把整个高速缓存块写到系统中。只要在高速缓存中写命中,那么只更新在高速缓存中的数据。只有当由于这样的写命中已经改变的高速缓存块(即,已经变成“脏”(dirty))必须从此高速缓存中收回,以便为将存储到相同高速缓存位置的新取回的块让出空间时,所述脏块才被写回系统。在写失效(write miss)的情况下,高速缓存或者将取来失效的数据块并且随后把取来的块写入高速缓存(“按写分配”(write allocate)的“回写”策略),或者绕过高速缓存并且直接把单个数据元素写到系统中(“非按写分配”的“回写”策略)。
特别是在成本敏感和低功耗的应用中,高速缓存的使用的主要缺点在于面积和功耗开销方面。此外,对于实时系统,高速缓存的动态行为使得预计有保证的实时性能较为困难。对于处理数据流的信号处理应用,传统的高速缓存大多数情况下没有性能优点,这是因为数据项经常被读写一次,并且没有临时的数据局部性可以应用。因为这些原因,嵌入系统只能使用相对简单的高速缓存,或者根本不使用高速缓存。相对简单的高速缓存使用非按写分配的直写策略,即,一旦数据被写在高速缓存中存在的存储器地址,数据就被写入高速缓存和存储器中,然而一旦数据被写在不存在于高速缓存中的存储地址处,则该数据只被写入存储器中,而不用把他们从存储器中取入高速缓存。在这种嵌入系统中,通常设计硬连线(hardwired)的加速器,以使得他们以突发方式执行系统I/O。由于这些加速器被调整为特定的应用,因此调整加速器以适应于其将要被应用到的系统环境是可行的,从而保证了这种行为。对更灵活的片上系统的需求导致越来越多地使用可编程加速器。这种可编程处理器通常基于加载/存储体系结构,其中,这些处理器使用针对单个数据元素的读和写操作与系统通信,即,每个读/写操作包含单个地址,将从该地址读出与处理器的数据通路宽度相匹配的单个数据元素(例如32位的字),或者包含一地址,将在该地址写入单个数据元素,这都在软件程序控制之下。虽然程序员可以映射(信号处理)以流的方式访问系统数据的应用,但是程序员通常没有办法控制处理器如何访问系统数据。如果高速缓存不存在于系统中,则单个数据元素的操作将直达系统总线或存储器,例如,由于为每个单独的数据项建立新的传输的开销而导致可用带宽的无效使用。这将导致总线/存储器带宽的低效的使用并且会严重的影响系统的总体性能。
发明内容
发明的目的是提供一个高效的,低成本且低功耗的可编程处理系统,其不具有高速缓存或者仅具有相对简单的高速缓存。
该目的通过所说明的类型的处理器来实现,其特征在于,突发生成设备用于分别将多个读操作或者多个写操作组合到单个突发读操作或单个突发写操作中。通过将关于单个数据元素的读和写操作转换为单个突发读和写操作,可以更有效地使用外围设备的可用带宽,从而增加处理系统的总体性能。为了生成突发操作不需要高速缓存,但是替代地使用专用电路,使得解决方案与具有高速缓存的可编程处理系统相比,具有较低的成本和较低的功耗。
本发明的实施例的特征在于,所述可编程处理器还用于分别使用突发读操作或突发写操作与所述外围设备进行通信,并且其中,所述突发生成设备还用于分别将所述突发读操作与另一个突发读操作,或者与至少一个读操作组合到所述单个突发读操作中,以及将所述突发写操作与另一个突发写操作,或者与至少一个写操作组合到单个突发写操作中。可以将由可编程处理器生成的突发操作与一个或多个关于关于单个数据元素的操作进行组合,或者与一个或多个其它突发操作进行组合,以形成单个突发操作,从而使得能够更有效地使用外围设备的可用带宽。
本发明的一个实施例的特征在于,如果突发读操作或突发写操作的尺寸大于单个突发读操作或单个突发写操作的期望尺寸,则突发生成设备还用于分别将所述突发读操作或所述突发写操作分割为两个或多个突发操作。一旦突发操作的尺寸比单个突发操作的期望尺寸更大,则突发操作就被分成两个或多个突发操作。后者的尺寸可以等于或小于单个突发操作的期望尺寸,并且在后一情况下,可以将所得到的突发操作与另一个突发操作,或者与至少一个单个数据元素操作组合到单个突发操作中。
本发明的一个实施例的特征在于,可编程处理器包括至少一个用于存储所述突发生成设备的控制信息的配置寄存器。处理器内的配置寄存器可以被编程以控制突发生成设备以不同的方式运行。可以从处理系统编程这些配置寄存器,或者由可编程处理器本身来编程这些配置寄存器。
本发明的一个实施例的特征在于,配置寄存器用于分别存储单个突发读操作或单个突发写操作的期望尺寸。通过选择单个突发操作的尺寸,能够根据应用程序的特征以及处理系统的特征,在减少操作的数量和避免执行操作过程中的长时间的延迟这两方面之间找到最优的平衡。
本发明的一个实施例的特征在于,配置寄存器还用于存储超时值,其用于控制两个连续的单个突发操作之间的最大时间间隔。如果由突发生成设备接收的连续的关于单个数据元素的操作之间的时间间隔大于超时值,则提前释放单个突发操作,因此可以避免在执行操作中的长时间的延迟。
本发明的一个实施例的特征在于,突发生成设备包括汇集器电路,用于从可编程处理器接收读和写操作,以及根据从所述读和写操作导出的信息来生成专用令牌,分别触发单个突发读操作或单个突发写操作的释放;用于存储专用令牌的第一FIFO缓冲器;用于存储分别从读和写操作导出的信息的第二FIFO缓冲器;释放电路,用于在从第一FIFO缓冲器接收的专用令牌的控制下,启动从第二FIFO缓冲器分别释放单个突发写操作或单个突发读操作。突发生成设备的该实施例仅需要两个相对简单的电路和两个FIFO缓冲器,提供了一个低成本并且低功耗的解决方案。
本发明的一个实施例的特征在于,如果单个突发操作的尺寸不等于所述单个突发操作的期望尺寸,则所述突发生成设备还用于分别触发所述单个突发读操作或所述单个突发写操作的释放。在特定条件下,为了改进总体系统性能,即使不具有所期望的尺寸也释放单个突发操作是有利的。
本发明的一个实施例的特征在于,单个突发操作的释放依赖于所述多个读操作或所述多个写操作是否涉及对应的多个存储器地址,其中,所述对应的多个存储器地址按递增顺序排列,并且地址间距对应于单个数据元素的尺寸。依赖于所使用的通信或外围设备,可能支持不同的寻址方案,这影响了由突发生成器进行突发释放的规则。最简单的是由按递增顺序排列的地址支持的突发访问,一个数据元素地址分离。替代方案是,可以允许环绕式寻址。例如,具有支持关键字优先高速缓存取回的总线的情况。在这种情况下,如果使用高速缓存的处理器首先要求在地址8处的数据元素,则比起请求在地址0、4、8、12的数据序列更好的方案是,高速缓存可以请求在地址8、12、0、4的数据序列。其他的总线或存储器协议可以允许多维突发访问,而在这样的情况下,突发可以由在存储器映射中形成多维空间的地址处的数据元素组成。这种情况的一个例子是支持二维突发访问的总线,其支持高效地读和写通常在图形和视频处理应用中使用的二维的数据块。
本发明的一个实施例的特征在于,单个突发操作的释放依赖于由突发生成设备接收的下一个突发写或读操作是否分别具有与单个突发操作的期望尺寸相等的尺寸。一旦可编程处理器发出已经具有期望尺寸的突发操作,则为了避免由处理器发出的所述突发操作的破碎,即使它没有期望的尺寸,也释放由突发生成设备在那时正在组合的单个突发操作。
本发明的一个实施例的特征在于,单个突发操作的释放依赖于是否从所述可编程处理器接收到刷新指令。该实施例允许在可编程处理器的控制下释放单个突发操作,例如,在处理最后,保证全部数据最终被写入外围设备。
本发明的一个实施例的特征在于,所述(突发)读或写操作分别被设置为包括以下信息分别指示所述(突发)读或写操作的有效性的标识符;分别指示(突发)读操作或(突发)写操作的标识符;所述(突发)读或所述(突发)写操作分别涉及的存储器地址;在(突发)写操作的情况下将写入所述存储器的数据;分别指示(突发)读操作或(突发)写操作的开始的标识符;分别指示所述(突发)读操作或所述(突发)写操作的尺寸的标识符。
使用编码在由可编程处理器发出的(突发)操作中的信息,突发生成设备识别出操作的类型,即,读或写操作,以及单个元素操作或突发操作,并且使用该信息将(突发)操作组合到单个突发操作中。
本发明的一个实施例的特征在于,所述(突发)读或写操作分别还包括以下信息指示(突发)操作所涉及的单个数据元素的位数(即,数据类型(例如字节、半字或字))的标识符;在(突发)写操作的情况下,指示单个数据元素中的、数据必须被写入的位位置的屏蔽标识符。使用该附加信息,可以从数据元素内的特定位位置读数据,或将数据写入数据元素内的特定位位置。
本发明的一个实施例的特征在于,外围设备是物理存储器。本发明的一个实施例的特征在于外围设备是通信装置。通信设备,例如系统总线,以及物理存储器都是处理系统中的外围设备,使用(突发)读和写操作频繁地访问它们,本发明对于这些设备特别有利。
图1是一个根据本发明的处理系统的示意图;图2是突发生成设备的实施例的示意图;图3是显示在根据图2的突发生成设备的操作期间的输入信号和输出信号的时序图。
具体实施例方式
图1是一个处理系统的示意图,包括可编程处理器PROC,突发生成器BG,系统总线SB,存储器MEM以及外围设备PD。存储器MEM例如是同步动态随机访问存储器(SDRAM)。外围设备PD例如是显示器或网络连接。存储器MEM和外围设备PD都与系统总线SB连接。系统总线SB可以包含单独的地址总线和单独的数据总线,或者组合的地址和数据总线。数据总线例如是32位的数据总线。处理器PROC例如是RISC处理器,其执行RISC类型的操作,一般包括用于表明待执行的操作的类型的操作码,一个或两个指定用于获取变量数据的位置的寄存器索引,以及一个指定用于写入结果数据的位置的寄存器索引。读和写操作是特定的操作,即,读操作的变量是存储器地址,而写操作的变量是存储器地址和待存储的数据,它们被发送到存储器接口。读操作的结果待读取的数据。或者,处理系统可以包括多于一个可编程处理器,用于以流的方式处理数据,其中,由不同的处理器执行对数据的连续操作。处理器PROC的I/O端口经由连接101和103连接到突发生成器BG的输入端口。突发生成器BG的输出端口经由连接109与系统总线SB相连。经由系统总线SB和连接105将从存储器MEM或外围设备PD读出的数据传输到处理器PROC。处理器PROC具有配置寄存器CR,其可以被编程为经由连接107来控制突发生成器BG以按照希望的方式工作。在操作中,处理器PROC使用读操作和写操作与处理系统的其它部分进行通信,以便经由存储器映射I/O地址读或写单个数据元素。在软件程序的控制下,处理器PROC执行读操作,处理所读取的数据,并且执行写操作。或者例如,如果存在高速缓存,则处理器PROC使用突发读操作或突发写操作与处理系统的其它部分进行通信。
图2是突发生成器BG的示意图,包括汇集器COL,先进先出缓冲器BUF1,先进先出缓冲器BUF2以及释放器REL。缓冲器BUF1和BUF2是阻塞型的,这意味着当试图把信息写入已满的缓冲器BUF1和BUF2中时,汇集器COL将暂停,并且当试图从空的缓冲器BUF1和BUF2中读信息时,释放器REL将暂停。在操作中,汇集器COL以信号的汇集的形式从处理器PROC接收读和写操作valid信号指示操作的有效性,并且当等于假(false)时指示NOP操作,否则等于真(true),写允许信号we,当等于真时,指示操作是指写操作,并且当等于假时指示操作是指读操作,地址信号addr,指示操作所引用的存储器映射I/O地址,写数据信号wdata,当写操作时保存将被写的数据,
start信号,当为真时,指示(突发)读或写操作的开始,size信号是指(突发)读或写操作的尺寸减1,即,参与操作的单个数据元素的数量减1。
如以下将要论述的,如果合适,汇集器COL将来自处理器PROC的(突发)读和写操作汇集到单个突发读或写操作中。以信号的汇集的形式由汇集器COL接收的信息由汇集器COL写入缓冲器BUF2。此外,汇集器COL在缓冲器BUF1中写入释放令牌(token),指示(突发)读或写操作必须在单个突发读或写操作中从缓冲器BUF2释放。如果可编程处理器PROC只支持对单个数据元素的读和写操作,那么这意谓着当发出这种操作时,start信号为真并且size信号等于零,即,指示为1的突发尺寸。或者,如果处理器PROC也支持突发读和写操作,则size信号可以指示比1大的突发尺寸,并且start信号只在这种突发操作的开始为真。
图3是时序图,其显示在图2中显示的突发生成器BG的工作期间的输入信号和输出信号。经由配置寄存器CR,突发生成器BG被配置为构成尺寸为四的单个突发读和写操作,即,包括四个单个数据元素。32位数据元被写入存储器MEM或外围设备PD,并且存储器MEM和外围设备PD的存储器地址被表示为字节地址,即地址4,8,12等等。时钟信号clock表示由处理系统的时钟生成的信号,未在图1中显示。在图3的上部显示了在突发生成器BG的输入101处的信号,并且在图3的下部显示了在突发生成器BG的输出109处的信号。参考图3,因为valid信号,写允许信号we和突发开始信号start为高,而size信号的值为“1”,即突发写操作具有两个数据元素的突发尺寸,所以突发生成器BG首先从处理器PROC接收突发写操作。如addr信号所指示,数据元素必须被写在存储器映射地址“4”和“8”。接下来,如具有值“0”的突发尺寸信号size,在两个时钟信号期间为高的start信号,以及为高的valid和we信号所指示的,突发生成器BG接收对于存储器地址“12”和“16”的两个单个数据元素写操作。当接收到对存储器地址“16”的写操作时,汇集器COL已汇集了尺寸为四的单个突发写操作,并且将值为“3”的令牌放入释放令牌缓冲器BUF1。令牌是一个值,其表示在计划释放的单个突发写操作中汇集器COL已经汇集的写操作的数量减一。在301所指的时钟信号处,计划要释放的第一个单个突发写操作。释放器REL接收值为“3”的令牌并且使用该令牌值来初始化计数器,该计数器持续跟踪将被释放的写操作的数量。随后,如size信号“3”以及在释放器REL的输出端口处的addr信号所指示,释放器REL从缓冲器BUF2取回相应的四个写操作,构造包括四个写操作的单个突发写操作,并且经由输出109和系统总线SB将所述单个突发写操作发送到存储器映射地址“4”、“8”、“12”和“16”。在第一个单个突发写操作的合成之后,第二个被合成。由于size信号等于“1”,addr信号“20”和“24”,并且valid,start和we信号为高,所以汇集器COL接收对存储器映射地址为“20”和“24”的两个数据元素的突发写操作。接下来,汇集器COL接收对存储器地址“32”的写操作。虽然在接收到对存储器映射地址“32”的写操作时,未达到尺寸为四的所期望的突发操作尺寸,但是仍提前释放到此所构成的第二个单个突发写操作,这是因为最后收到的写操作的存储器映射地址与之前的写操作的存储器地址相隔的距离不恰当,即,存储器映象地址“32”与存储器地址“24”相隔的距离不恰当(即,不在存储器映射地址“28”),因为到目前为止已经合成的单个突发写操作包含分别在存储器映射地址“20”和“24”的写操作。汇集器COL把值为“1”的令牌放入释放令牌缓冲器BUF1。在由303所指的clock信号处,计划释放第二个突发写操作。释放器REL接收值为“1”的令牌并且使用该令牌值以初始化一计数器,该计数器用于持续跟踪将被释放的写操作的数量。随后,如值为“1”的size信号和在释放器REL的输出端口处的addr信号所指,释放器REL从缓冲器BUF2检索相应的两个写操作,构造这两个写操作的单个突发写操作,并且经由输出109和系统总线SB将该单个突发写操作发送到存储器映射地址“20”和“24”。对存储器地址“32”的写操作形成第三个单个突发写操作的第一个操作。第三个单个突发写操作预计在clock信号305提前释放,这是因为接收到对存储器地址“36”的单个数据元素读操作,并且写和读操作不能被组合在单个突发操作中。通过we信号为低,valid信号和start为高,size信号等于零,以及值为“36”的addr信号来指示对存储器地址“36”的读操作。汇集器COL把值为“0”的令牌放入释放令牌缓冲器BUF 1。释放器REL接收该令牌并且使用其作为值来初始化计数器,该计数器持续跟踪将被释放的写操作的数量。随后,由于值为“0”的size信号和在释放器REL的输出端口的addr信号的指示,释放器REL从缓冲器BUF2中取回相应的写操作,构造该写操作的单个突发写操作,并且经由输出109和系统总线SB将第三个单个突发写操作发送到存储器地址“32”。如值为“3”的size信号,以及在汇集器COL的输入端口101的addr信号“40”,“44”,“48”和“52”所指示,因为下一个由汇集器COL接收到的突发读操作已经具有想要的尺寸4,所以第一个单个突发读操作计划在clock信号307提前释放。汇集器COL把值为“0”的令牌放入释放令牌缓冲器BUF1。释放器REL从缓冲器BUF1取回该令牌,并且构造从缓冲器BUF2取回的读操作的单个突发读操作。如值为“0”的size信号以及在释放器REL的输出端口109处的值为“36”的addr信号所指示,由释放器REL释放单个突发读操作。第二个单个突发读操作由最后接收的突发读操作组成。值为“3”的令牌被放入释放令牌缓冲器BUF1,并且释放器REL根据从缓冲器BUF2导出的信息构造第二个单个突发读操作。值为“3”的size信号,以及在释放器REL的输出端口的值为“40”,“44”,“48”以及“52”的addr信号指示第二个突发读操作的释放。
在一可选实施例中,处理系统还包括一相对简单的高速缓存,其使用具有非按写分配的直写式的写策略,并且位于可编程处理器PROC和突发生成器BG之间。在读操作的情况下,高速缓存把单个数据元素读操作转换为突发读操作。对于写操作,突发生成器BG把接收自可编程处理器PROC的(突发)写操作组合成单个突发写操作。在突发读操作的情况下,由突发生成器BG接收的start信号只在这种突发读操作的开始时为真,并且通常size信号保持一个等于高速缓存块的尺寸减一的值,即,指示突发尺寸等于高速缓存块尺寸。在单个数据元素写操作的情况下,start信号为真并且size信号值为“0”,其指示尺寸为1的突发尺寸。
在另一个可选实施例中,设置突发生成器BG以经由连接103从可编程处理器PROC接收刷新(flush)输入信号,参见图1。当刷新信号为高电平时,计划由汇集器COL释放当前被合成的单个突发操作,即使其没有恰当的尺寸。在这种方法中,保证操作不会一直保留在缓冲器BUF2中,例如在处理的结尾,当没有足够的、用于完成单个突发操作的元素时。
在另一个可选实施例中,汇集器包括计时器,其计算连续到来的(突发)读或写操作之间的时钟周期的数量。如果计数器值超过特定的可配置的值,则安排由汇集器COL释放当前被合成的单个突发操作,即使其没有适当的尺寸。通过这种方法,保证在操作被释放之前,不会在突发生成器中保持太长时间,否则将导致长时间的延迟,这会影响系统的总体性能。可以经由配置寄存器CR来设置可配置的超时值。
在另一个可选实施例中,汇集器COL还从可编程处理器PROC接收数据尺寸信号dsize和写屏蔽信号wrnask,其可用于指示操作涉及的数据元素的准确的位数。wmask信号指示用于存储数据的数据元素中的特定的位位置。dsize和wrnask信号只允许写和读单个数据元素的一些部分,例如32位数据元素的特定字节。
在另一个可选实施例中,不同的寻址方案可以允许环绕式(wrap-around)寻址。例如在具有支持关键字优先高速缓存取回的总线的情况下。在这种情况下,如果使用高速缓存的处理器首先要求在地址8处的数据元素,则比起请求在地址0、4、8、12的数据序列更好的方案是,高速缓存可以请求在地址8、12、0、4的数据序列。其他的总线或存储器协议可以允许多维突发访问,而在这样的情况下,突发可以由在存储器映射中形成多维空间的地址处的数据元素组成。这种情况的一个例子是支持二维突发访问的总线,其支持高效地读和写通常在图形和视频处理应用中使用的二维的数据块。
应该注意,上述实施例用于说明而不是限制本发明,而本领域技术人员能够在不脱离所附权利要求的范围的情况下设计许多替代实施例。在权利要求中,括号中的任何参考标记不应被解释为限制该权利要求。词“包含”不排除存在除权利要求中列出的元素或步骤以外的元素或步骤。在元素之前的词“一个”不排除存在多个这样的元素。在列举了多个装置的装置权利要求中,这些模块中的多个可以通过同一硬件来实现。在相互不同的从属权利要求中叙述特定方案并不表示不能利用这些方案的组合。
权利要求
1.一种数字信号处理系统,包括可编程处理器(PROC)和连接到所述可编程处理器的外围设备(PD,MEM),其中,所述处理器被设置为分别使用关于单个数据元素的读操作和写操作与所述外围设备通信,所述数字信号处理系统的特征在于,突发生成设备(BG)用于分别将多个读操作或多个写操作组合到单个突发读操作或单个突发写操作中。
2.根据权利要求1所述的处理系统,其特征在于,所述可编程处理器还用于分别使用突发读操作或突发写操作与所述外围设备进行通信,并且其中,所述突发生成设备还用于分别将所述突发读操作与另一个突发读操作,或者与至少一个读操作组合到所述单个突发读操作中,以及将所述突发写操作与另一个突发写操作,或者与至少一个写操作组合到单个突发写操作中。
3.根据权利要求2所述的处理系统,其特征在于,如果所述突发读操作或突发写操作的尺寸大于所述单个突发读操作或单个突发写操作的期望尺寸,则所述突发生成设备还用于分别将所述突发读操作或所述突发写操作分割为两个或多个突发操作。
4.根据权利要求1所述的处理系统,其特征在于,所述可编程处理器包括至少一个用于存储所述突发生成设备的控制信息的配置寄存器(CR)。
5.根据权利要求4所述的处理系统,其特征在于,所述配置寄存器用于分别存储所述单个突发读操作或所述单个突发写操作的期望尺寸。
6.根据权利要求5所述的处理系统,其特征在于,所述配置寄存器还用于存储超时值,该超时值用于控制两个连续的单个突发操作之间的最大时间间隔。
7.根据权利要求1所述的处理系统,其特征在于,所述突发生成设备包括汇集器电路(COL),用于从所述可编程处理器接收所述读和写操作,以及根据从所述读和写操作导出的信息来生成专用令牌,分别触发所述单个突发读操作或所述单个突发写操作的释放;用于存储所述专用令牌的第一FIFO缓冲器(BUF1);用于存储分别从所述读和写操作导出的信息的第二FIFO缓冲器(BUF2);释放电路(REL),用于在从所述第一FIFO缓冲器接收的专用令牌的控制下,启动从所述第二FIFO缓冲器分别释放所述单个突发写操作或所述单个突发读操作。
8.根据权利要求2所述的处理系统,其特征在于,如果所述单个突发操作的尺寸不等于所述单个突发操作的期望尺寸,则所述突发生成设备还用于分别触发所述单个突发读操作或所述单个突发写操作的释放。
9.根据权利要求8所述的处理系统,其特征在于,所述单个突发操作的释放依赖于所述多个读操作或所述多个写操作是否涉及对应的多个存储器地址,其中,所述对应的多个存储器地址按递增顺序排列,并且地址间距对应于单个数据元素的尺寸。
10.根据权利要求8所述的处理系统,其特征在于,所述单个突发操作的释放依赖于由所述突发生成设备接收的下一个突发写或读操作是否分别具有与所述单个突发操作的期望尺寸相等的尺寸。
11.根据权利要求8所述的处理系统,其特征在于,所述单个突发操作的释放依赖于是否从所述可编程处理器接收到刷新指令。
12.根据权利要求2所述的处理系统,其特征在于,所述(突发)读或写操作分别被设置为包括以下信息分别指示所述(突发)读或写操作的有效性的标识符;分别指示(突发)读操作或(突发)写操作的标识符;所述(突发)读或所述(突发)写操作分别涉及的存储器地址;在(突发)写操作的情况下将写入所述存储器的数据;分别指示(突发)读操作或(突发)写操作的开始的标识符;分别指示所述(突发)读操作或所述(突发)写操作的尺寸的标识符。
13.根据权利要求12所述的处理系统,其特征在于,所述(突发)读或写操作分别还包括以下信息指示所述(突发)操作所涉及的单个数据元素的位数的标识符;在(突发)写操作的情况下,指示单个数据元素中的、数据必须被写入的位位置的屏蔽标识符。
14.根据权利要求1所述的处理系统,其特征在于,所述外围设备是物理存储器。
15.根据权利要求1所述的处理系统,其特征在于,所述外围设备是通信设备。
全文摘要
一种数字信号处理系统,包括可编程处理器(PROC)和经由突发生成设备(BG)连接到所述可编程处理器的外围设备(PD,MEM)。所述处理器被设置为分别使用关于单个数据元素的读操作和写操作与所述外围设备通信。所述突发生成设备(BG)分别将多个读操作或多个写操作组合到单个突发读操作或单个突发写操作中。
文档编号G06F13/28GK101040272SQ200580035405
公开日2007年9月19日 申请日期2005年8月11日 优先权日2004年8月17日
发明者叶罗恩·A.·J.·莱特恩 申请人:皇家飞利浦电子股份有限公司