本申请是第200780028566.3号发明专利申请的分案申请,该母案申请的申请日为2007年7月25日,发明名称为“CPU连接电路、数据处理装置、算术处理设备、使用这些模块的便携式通信终端及数据传送方法”。
发明内容
本发明将解决的问题
本发明是考虑到所述问题而设计的,其一个示例性目的在于提供CPU连接电路,该CPU连接电路是两个CPU通过交替地进行布置在两个CPU之间的两个缓冲器之间的转换来防止数据处理不能被接收侧的CPU充分执行的事件而将要使用的电路,并且提供数据处理装置、算术处理设备、使用了这些模块的便携式通信终端以及数据传送方法。
解决问题的手段
为了实现所述示例性目的,根据本发明的第一示例性方面,提供了一种包括两个缓冲器的CPU连接电路,该电路被连接在两个CPU之间,用于中继从两个CPU中的至少一个到两个CPU中的另一个的数据传送,特征在于包括:用于监控发送侧CPU所存储在两个缓冲器的任何一个中的数据的量是否到达预定的阈值的装置;以及用于当发送侧CPU所存储在缓冲器中的数据的量到达阈值时,请求接收侧CPU获取存储在缓冲器中的数据,并且将发送侧CPU的数据存储目的地改变为两个缓冲器中的另一个的装置,阈值是大于发送侧CPU发送至缓冲器的数据的单位量的值。
在本发明的第一示例性方面中,缓冲器经由串行传输路径合适地连接至发送侧CPU。缓冲器经由并行传输路径连接至接收侧CPU也是合适的。
在本发明的第一示例性方面中,CPU连接电路优选地包括用于每个数据传输方向的另外的两个缓冲器,其中,对于每个数据传输方向,CPU连接电路都设置阈值;监控数据的量是否到达阈值;请求接收侧CPU获取数据;并且改变发送侧CPU的数据存储目的地。
根据本发明的第一示例性方面,如下情况是合适的,CPU连接电路中继两个CPU的两个方向的数据传送;并且当两个CPU都需要向缓冲器传送数据时,优先级被预先设置以确定两个CPU的哪一个在上游侧。
在本发明的第一示例性方面的配置的任何一个中,合适还包括用于根据从接收侧CPU输入的控制信号来动态地设置阈值的装置。此外,如下情况是合适的,当发送侧CPU改变作为数据存储目的地的缓冲器时,如果在改变后的缓冲器中仍有先前所存储的并且没有被接收侧CPU获取的数据,那么溢出信号至少被输出至接收侧CPU。此外,接收侧CPU从缓冲器获取数据的速率合适地大于从发送侧CPU到缓冲器的数据传送速率。此外,发送侧CPU发送至缓冲器的数据是分组数据是合适的。
此外,为了实现所述示例性目的,根据本发明的第二示例性方面,提供了一种包括两个缓冲器的、用于通过从发送侧CPU向接收侧CPU传送数据来处理数据的数据处理装置,特征在于包括:用于监控发送侧CPU所存储在两个缓冲器的任何一个中的数据的量是否到达预定的阈值的装置;以及用于当发送侧CPU所存储在缓冲器中的数据的量到达预定的阈值时,请求接收侧CPU的算术处理装置获取存储在缓冲器中的数据,并且将发送侧CPU的数据存储目的地改变为两个缓冲器中的另一个的装置,阈值是大于发送侧CPU发送至缓冲器的数据的单位量的值。
在本发明的第二示例性方面中,缓冲器经由串行传输路径合适地连接至发送侧CPU。此外,缓冲器经由并行传输路径合适地连接至算术处理装置。此外,合适还包括用于根据从算术处理装置输出的控制信号来动态地设置阈值的装置。
在根据本发明的第二示例性方面的配置的任何一个中,如下情况是合适的,当发送侧CPU改变作为数据存储目的地的缓冲器时,如果在改变后的缓冲器中仍有先前所存储的并且没有被算术处理装置获取的数据,那么溢出信号至少被输出至算术处理装置。此外,接收侧CPU的算术处理装置从缓冲器获取数据的速率合适地大于从发送侧CPU到缓冲器的数据传送速率。此外,发送侧CPU发送至缓冲器的数据合适地是分组数据。
此外,为了实现所述示例性目的,根据本发明的第三示例性方面,提供了一种算术处理设备,特征在于包括:经由数据传输路径连接至第二CPU的两个缓冲器;用于监控第二CPU所传送并存储在两个缓冲器的任何一个中的数据的量是否到达预定的阈值的装置;以及用于当第二CPU所存储在缓冲器中的数据的量到达阈值时,请求算术处理装置获取存储在缓冲器中的数据,并且将第二CPU的数据存储目的地改变为两个缓冲器中的另一个的装置,阈值是大于第二CPU发送至缓冲器的数据的单位量的值。
在本发明的第三示例性方面中,阈值根据来自算术处理装置的控制信号而动态地设置是合适的。此外,如下情况是合适的,当改变作为从第二CPU传送的数据的数据存储目的地的缓冲器时,如果在改变后的缓冲器中仍有先前所存储的并且没有被算术处理装置获取的数据,那么溢出信号被输出至算术处理装置。此外,算术处理装置从缓冲器获取数据的速率合适地大于从第二CPU到缓冲器的数据传送速率。此外,第二CPU所存储在缓冲器中的数据合适地是分组数据。
此外,为了实现所述示例性目的,根据本发明的第四示例性方面,提供了一种利用了包括两个缓冲器的并且被连接在两个CPU之间的CPU连接电路的数据传送方法,特征在于包括:在缓冲器中设置大于发送侧CPU发送至缓冲器的数据的单位量的值作为所存储的数据的量的阈值;监控发送侧CPU所存储在两个缓冲器的任何一个中的数据的量是否到达阈值;以及当发送侧CPU所存储的数据的量到达阈值时,请求接收侧CPU获取数据,并且将发送侧CPU的数据存储目的地改变为两个缓冲器中的另一个。
此外,为了实现所述示例性目的,根据本发明的第五示例性方面,提供了一种数据传送方法,特征在于包括:将包括两个缓冲器和算术处理装置的接收侧CPU连接至发送侧CPU;在缓冲器中设置大于发送侧CPU发送至缓冲器的数据的单位量的值作为所存储的数据的量的阈值;监控发送侧CPU所存储在两个缓冲器的任何一个中的数据的量是否到达阈值;以及当发送侧CPU所存储的数据的量到达阈值时,请求算术处理装置获取数据,并且将发送侧CPU的数据存储目的地改变为两个缓冲器中的另一个。
在本发明的第五示例性方面中,阈值是根据从算术处理装置输出的控制信号而动态地设置的是合适的。此外,如下情况是合适的,当改变作为从发送侧CPU传送的数据的存储目的地的缓冲器时,如果在改变后的缓冲器中仍有先前所存储的并且没有被算术处理装置获取的数据,那么溢出信号被输出至算术处理装置。此外,接收侧CPU被合适地连接至发送侧CPU,从而算术处理装置从缓冲器获取数据的速率大于从发送侧CPU到缓冲器的数据传送速率。
在本发明的第四或第五示例性方面的配置的任何一个中,发送侧CPU向缓冲器发送分组数据是合适的。
在本发明的第四示例性方面中,利用了对于每个数据传输方向都包括两个缓冲器的CPU连接电路,该电路被连接在两个CPU之间,数据传送方法合适地包括,对于每个数据传输方向,设置阈值;监控数据的量是否到达阈值;请求接收侧CPU获取数据;并且改变发送侧CPU的数据存储目的地。
此外,在本发明的第四示例性方面中,数据传送方法包括当两个CPU都需要向缓冲器传送数据时,预先设置优先级以确定两个CPU的哪一个在发送侧。
在本发明的第四示例性方面中,合适根据从接收侧CPU输入的控制信号来对于每个传输方向都动态地设置阈值。此外,如下情况是合适的,当发送侧CPU改变作为数据存储目的地的缓冲器时,如果在改变后的缓冲器中仍有先前所存储的并且没有被接收侧CPU获取的数据,那么溢出信号至少被输出至接收侧CPU。此外,两个CPU被合适地连接,从而接收侧CPU从缓冲器获取数据的速率大于从发送侧CPU到缓冲器的数据传送速率。此外,对于每个数据传输方向,发送侧CPU向缓冲器发送分组数据是合适的。
此外,为了实现所述示例性目的,根据本发明的第六方面,提供了一种便携式通信终端,特征在于包括两个CPU,这两个CPU包括通信CPU和应用CPU,其中根据本发明的第一示例性方面的配置中的任何一个的CPU连接电路被布置在从通信CPU到应用CPU的数据传输路径上。
此外,为了实现所述示例性目的,根据本发明的第七示例性方面,提供了一种便携式通信终端,特征在于包括两个CPU,这两个CPU包括通信CPU和应用CPU,便携式通信终端构成了根据本发明的第二示例性方面的配置中的任何一个的数据处理装置,其中通信CPU作为发送侧CPU,并且应用CPU作为接收侧CPU。
此外,为了实现所述示例性目的,根据本发明的第八示例性方面,提供了一种便携式通信终端,特征在于包括两个CPU,这两个CPU包括通信CPU和应用CPU,其中根据本发明的第三示例性方面的配置中的任何一个的算术处理设备被应用作应用处理CPU。
本发明的优点
根据本发明,可提供CPU连接电路,该CPU连接电路是两个CPU通过交替地进行布置在两个CPU之间的两个缓冲器之间的转换来防止数据处理不能被接收侧的CPU充分执行的事件,而将要使用的电路,并且可提供数据处理装置、算术处理设备、使用了这些模块的便携式通信终端以及数据传送方法。
具体实施方式
[发明的原理]
在以下描述中,两个CPU是通信CPU和应用CPU的情况被用作示例;然而,该描述类似地应用于目的是其他处理的CPU。
图1示出在两个CPU与缓冲IC之间的连接的状态。
缓冲IC3被布置在两个CPU之间,在缓冲IC3中形成了包括两个缓冲器和一个开关的电路,该开关在通信CPU(CCPU)1和应用CPU(ACPU)2之间的数据传送中交替地进行两个缓冲器之间的转换,用于将缓冲器之一设置为数据写入缓冲器。
每个CPU和缓冲IC3彼此合适地连接,从而从缓冲IC3到ACPU2的数据传送速度高于从CCPU1到缓冲IC3的数据传送速度。这里,以上条件通过在CCPU1和缓冲IC3之间使用串行IF连接以及在缓冲IC3和ACPU2之间使用总线IF连接来满足;然而,其他连接方法也是可用的。
当两个缓冲器之一(在其中写入数据的缓冲器)的所存储的数据的量到达设置值时,作为从CCPU1传送的数据的存储目的地的缓冲器(数据写入缓冲器)被另一个缓冲器替换。顺便提及,对缓冲IC3设置设置值,并且存储数据量的确定也由缓冲IC3进行。
在替换了数据写入缓冲器后,缓冲IC3向ACPU2输出数据获取请求。当从缓冲IC3收到请求时,ACPU2试图通过直接存储器存取(DMA)来从在替换前用作数据写入缓冲器的缓冲器获取数据。在操作中,因为缓冲IC3的缓冲器被ACPU2视为存储器,所以ACPU2进行类似于从存储器读取数据的操作的操作。
当缓冲器中所存储的数据量再次到达设置值时,缓冲IC3通过(最初作为数据写入缓冲器的)另一个缓冲器来替换数据写入缓冲器以类似地在其中存储数据,并且缓冲IC3向ACPU2输出数据获取请求以重复地进行类似的操作。
顺便提及,CCPU1不辨认缓冲IC3的存在,仅仅输出数据。
由于上述操作,即使ACPU2在接收来自缓冲IC3的数据获取请求时未能立即获取数据,数据丢失也不发生。因此,可以防止ACPU2未能充分处理数据的事件。
在这方面,设置值可根据将由ACPU2执行的应用来任意设置。当使用大的设置值时,增加了对于因为ACPU2的数据获取延迟而导致的数据丢失的预防效果,但是延迟了ACPU2的数据处理。相反,当使用小的设置值时,对于因为ACPU2的数据获取延迟而导致的数据丢失的预防效果变得更小,但是数据处理几乎以实时的方式由ACPU2执行。因此,仅必需的是,根据将由ACPU2执行的应用的类型来确定设置值,以平衡数据丢失预防效果和数据处理的实时性质。
此外,设置值不需要对于两个缓冲器而言是必然共用的,而可对于各个缓冲器设置不同的值。此外,设置值不限于仅使用部分缓冲器的值,而可使用全部缓冲器。例如,对于X字节的缓冲器,可设置X字节的设置值。
当使用大的设置值时,增加了缓冲器溢出预防效果而降低了ACPU操作率(因为ACPU可一次从缓冲器获取数据);然而,直到预定量的数据被存储在缓冲器中,数据才能由ACPU侧获取,这导致了延迟。因此,根据目的,将仅为了最佳地平衡缓冲器溢出预防效果和数据延迟长度而进行设置。
例如,为了在CCPU和ACPU之间通信分组数据,将一个分组的容量设置为缓冲器设置值是合适的。这是因为在分组数据的情况下,应用的处理仅在一个分组的数据被存储之后才是可以的(换言之,即使ACPU从缓冲器获取了每个数据大小小于一个分组的数据,ACPU也不能处理所获取的数据;也就是说,仅当得到一个分组的数据时,ACPU才处理数据)。
然而,如果两个缓冲器的设置值都等于从CCPU1输入的数据的单位量,那么ACPU2的数据获取中的延迟立即导致缓冲器溢出。因此,缓冲器设置值的任何一个都需要大于从CCPU1输入的数据的单位量。
在具体的示例中,在CCPU1以一个字节为单位处理数据(缓冲IC3中的输入数据)的情况下,如果缓冲器的两个设置值都是一字节,那么当ACPU2的数据获取延迟时缓冲器溢出立即发生,并且因此不能得到数据丢失预防效果。在此情况下,通过对于缓冲器的任何一个都将值设置为等于或大于二字节,可以得到数据丢失预防效果。
即使增加了缓冲器容量,在操作上也不发生任何麻烦。然而,具有大容量的缓冲器是昂贵的,而且有着大的尺寸;因此,对于制造成本,指定设置值仅使用部分缓冲器将会是不利的。
另一方面,当缓冲器容量太小时,可能即使指定设置值使用缓冲器的总体容量,也不能充分得到缓冲器溢出预防效果。因此,适合应用具有足够根据从CCPU发送的数据的大小以及ACPU的数据处理性能来得到缓冲器溢出预防效果的容量的缓冲器。
随后,将给出对于用来基于上述原理执行本发明的合适模式的描述。
[第一示例性实施例]
将给出对本发明合适地应用于其中的第一示例性实施例的描述。如图1所示,配置了根据该示例性实施例的数据处理装置,从而缓冲IC3被布置在通信CPU(CCPU)1和应用CPU(ACPU)2之间,在缓冲IC3中形成了包括两个缓冲器和一个开关的电路,该开关交替地进行两个缓冲器之间的转换。
图2示出缓冲IC3的内部结构。在缓冲IC3中,构建了CPU连接电路。
缓冲IC3包括能够存储两帧数据的缓冲器。这两帧中,一帧用作数据写入帧以写入来自CCPU1的数据,另一帧用作ACPU2的数据读取帧。在两帧的使用中它们交替地变为彼此。
此外,通过缓冲IC3中的存储控制器301,预先任意设置一帧的可存储在缓冲器中的数据的量。
对于从缓冲IC3到ACPU2的数据获取请求,使用了“数据获取请求信号”。此信号在数据读取缓冲器满足ACPU2从它读取数据的条件的定时(timing)(数据写入缓冲器变为数据读取缓冲器的定时)生效(asserted),并且此信号在数据被ACPU2从缓冲器中读取的定时失效(negated)。
此外,在数据存储在两个缓冲器中的情况下,如果另外从CCPU1接收到数据,那么缓冲IC3可生成溢出中断信号(OVR)以向ACPU2通知数据丢失的发生。
在检测到中断时,ACPU2对每个系统执行错误处理。
此外,缓冲IC3拥有可从ACPU2控制的流控制信号的功能。通过控制此信号,数据重传可通知给CCPU1。
图3示出缓冲IC3的操作流程。这里,在最初的状态,缓冲器302是数据写入缓冲器,缓冲器303是数据读出缓冲器。
当数据被从CCPU1收到时,存储控制器301确认先前所存储的数据是否正保持在数据写入缓冲器中(缓冲器302;步骤S101)。如果数据正保持在其中,那么控制器301执行溢出处理。
如果数据没有保持在其中(步骤S101中的“否”),那么存储控制器301将从CCPU1接收的数据存储在数据写入缓冲器中,并且确认存储在数据写入缓冲器中的数据的量是否到达设置值(步骤S102)。
如果数据写入缓冲器的所存储的数据量没有到达设置值(步骤S102中的“否”),那么存储控制器301将从CCPU1接收的数据存储在数据写入缓冲器中,直到所存储的数据量到达设置值。
当数据写入缓冲器的所存储的数据量到达设置值时(步骤S102中的“是”),存储控制器301进行数据写入缓冲器从缓冲器302到缓冲器303的转换(步骤S103)。此后,控制器301向ACPU2发送对存储在缓冲器302中的数据的数据获取请求(步骤S104)。
存储控制器301确认先前所存储的数据是否正保持在变为数据写入缓冲器的缓冲器303中(步骤S101)。如果数据正保持在其中,那么控制器301执行溢出处理。
如果数据没有保持在数据写入缓冲器中(步骤S101中的“否”),那么存储控制器301将从CCPU1接收的数据存储在数据写入缓冲器中,并且确认存储在数据写入缓冲器中的数据的量是否到达设置值(步骤S102)。
如果数据写入缓冲器的所存储的数据量没有到达设置值(步骤S102中的“否”),那么存储控制器301将从CCPU1接收的数据存储在数据写入缓冲器中,直到所存储的数据量到达设置值。
当数据写入缓冲器的所存储的数据量到达设置值时(步骤S102中的“是”),存储控制器301进行数据写入缓冲器从缓冲器303到缓冲器302的转换(步骤S103)。此后,控制器301向ACPU2发送对存储在缓冲器303中的数据的数据获取请求(步骤S104)。
在这点后,只要数据被从CCPU1收到,存储控制器301就重复地执行类似的处理。
图4示出利用缓冲IC3的在CPU之间的数据传送操作的示例。
这里假设从CCPU1到缓冲IC3的数据传送速度与从缓冲IC3到ACPU2的数据传送速度之比是1比4。
在t0时刻,CCPU1开始向缓冲IC3输入数据。存储控制器301将所输入的数据存储在缓冲器302中。
在t1时刻,缓冲器302的所存储的数据量到达设置值。存储控制器301将数据写入缓冲器改变为缓冲器303,并且使对存储在缓冲器302中的数据的获取请求信号生效以向ACPU2输出该信号。
在t2时刻,存储在缓冲器302中的数据完全被ACPU2获取,并且数据获取请求信号失效。
在t3时刻,当缓冲器303的所存储的数据量到达设置值时,存储控制器301将数据写入缓冲器改变为缓冲器302,并且使对存储在缓冲器303中的数据的获取请求信号生效以向ACPU2输出该信号。
在t4时刻,存储在缓冲器303中的数据完全被ACPU2获取,并且数据获取请求信号失效。
随后,重复执行类似的处理;在t8时刻,数据获取请求信号失效,从而完成了从CCPU1到ACPU2的数据传送。
图5示出利用缓冲IC3的在CPU之间的数据传送操作的另一示例。
如以上的描述,假设从CCPU1到缓冲IC3的数据传送速度与从缓冲IC3到ACPU2的数据传送速度之比是1比4。
在t0时刻,CCPU1开始向缓冲IC3输入数据。存储控制器301将所输入的数据存储在缓冲器302中。
在t1时刻,缓冲器302的所存储的数据量到达设置值。存储控制器301将数据写入缓冲器改变为缓冲器303,并且使对存储在缓冲器302中的数据的获取请求信号生效以向ACPU2输出该信号。
在t2时刻,存储在缓冲器302中的数据完全被ACPU2获取,并且数据获取请求信号失效。
在t3时刻,当缓冲器303的所存储的数据量到达设置值时,存储控制器301将数据写入缓冲器改变为缓冲器302,并且使对存储在缓冲器303中的数据的获取请求信号生效以向ACPU2输出该信号。这里,ACPU2处于繁忙状态,即使收到了数据获取请求也不能立即开始获取数据。
在t41时刻,ACPU2开始获取存储在缓冲器303中的数据。顺便提及,假设t3时刻到t41时刻的间隔(T3)小于在缓冲器的存储数据量到达设置值的时间段(T1)和ACPU2从缓冲器获取数据所需的时间段(T2)之间的差值(T1-T2)(在此情况下,所需的存储时间T1=4a,所需的获取时间T2=a,并且延迟时间T3=2a)。
在t42时刻,存储在缓冲器303中的数据完全被ACPU2获取,并且数据获取请求信号失效。
在t5时刻,缓冲器302的所存储的数据量到达设置值。存储控制器301将数据写入缓冲器改变为缓冲器303,并且使对存储在缓冲器302中的数据的获取请求信号生效以向ACPU2输出该信号。
在t6时刻,存储在缓冲器302中的数据完全被ACPU2获取,并且数据获取请求信号失效。
随后,重复执行类似的处理;在t8时刻,数据获取请求信号失效,从而完成了从CCPU1到ACPU2的数据传送。
图6示出利用缓冲IC3的在CPU之间的数据传送操作的另一示例。
如以上的描述,假设从CCPU1到缓冲IC3的数据传送速度与从缓冲IC3到ACPU2的数据传送速度之比是1比4。
在t0时刻,CCPU1开始向缓冲IC3输入数据。存储控制器301将所输入的数据存储在缓冲器302中。
在t1时刻,缓冲器302的所存储的数据量到达设置值。存储控制器301将数据写入缓冲器改变为缓冲器303,并且使对存储在缓冲器302中的数据的获取请求信号生效以向ACPU2输出该信号。
在t2时刻,存储在缓冲器302中的数据完全被ACPU2获取,并且数据获取请求信号失效。
在t3时刻,当缓冲器303的所存储的数据量到达设置值时,存储控制器301将数据写入缓冲器改变为缓冲器302,并且使对存储在缓冲器303中的数据的获取请求信号生效以向ACPU2输出该信号。这里,ACPU2处于繁忙状态,即使收到了数据获取请求也不能立即开始获取数据。
在t43时刻,ACPU2开始获取存储在缓冲器303中的数据。顺便提及,假设t3时刻到t43时刻的间隔(T3)大于在缓冲器的存储数据量到达设置值的时间段(T1)和ACPU2从缓冲器获取数据所需的时间段(T2)之间的差值(T1-T2)(所需的存储时间T1=4a,所需的获取时间T2=a,并且延迟时间T3=3.3a)。
在t44时刻,缓冲器302的所存储的数据量到达设置值。存储控制器301试图将数据写入缓冲器改变为缓冲器303;然而,在这个时间点,存储在缓冲器303中的数据没有完全被ACPU2获取。因此,存储控制器301生成溢出中断信号(OVR)以向ACPU2通知数据丢失的发生。
如从以上描述中所能看到的,当ACPU2的数据获取延迟时间(T3)小于在缓冲器的存储数据量到达设置值的时间段(T1)和ACPU2从缓冲器获取数据所需的时间段(T2)之间的差值(T1-T2)时,可防止因为缓冲器溢出而发生数据丢失。
如上所述,按照根据示例性实施例的CPU连接电路,可改进ACPU和CCPU之间的串行传送速度以与CCPU的平均处理速度匹配。
[第二示例性实施例]
将给出对本发明合适地应用于其中的第二示例性实施例的描述。
配置了根据该示例性实施例的数据处理装置从而像在第一示例性实施例中的一样,缓冲IC31被连接在CCPU1和ACPU2之间。然而,如图7所示,在此示例性实施例中应用通知信号从ACPU2输入至缓冲IC31(存储控制器311)。
应用通知信号是标识将由ACPU2执行的应用之一的信息。
当与和CCPU1的数据通信相关联的应用在ACPU2中被激活(activate)时,ACPU2向缓冲IC31输出应用通知信号。
当缓冲IC31收到信号时,存储控制器311对缓冲器312和313设置阈值,这些阈值对所激活的应用而言是最佳的,以便从CCPU1接收数据。
如上所述,通过根据将由ACPU2执行的应用的类型来改变对缓冲器312和313所设置的阈值,可以在根据应用的类型的最佳条件下从CCPU1向ACPU2传送数据(数据丢失的发生被抑制,并且ACPU侧的获取延迟不容易发生)。
顺便提及,在ACPU2通过同时执行多个应用来执行多任务处理的情况下,不言而喻缓冲器设置值可根据将被执行的应用的组合而改变。
[第三示例性实施例]
将给出对本发明合适地应用于其中的第三示例性实施例的描述。
图8示出根据该示例性实施例的数据处理装置的结构。如图8所示,构建了此示例性实施例从而第一示例性实施例的缓冲IC3的功能被合并作ACPU201中的缓冲部分30。
因为数据处理装置的总体操作类似于以上第一示例性实施例的总体操作,所以将避免对其重复的描述。
[第四示例性实施例]
将给出对本发明合适地应用于其中的第四示例性实施例的描述。
图9示出根据该示例性实施例的数据处理装置的配置。在根据该示例性实施例的数据处理装置中,第一CPU10和第二CPU20分别经由串行IF和总线IF连接到缓冲IC32。此外,第一CPU10和第二CPU20经由缓冲IC32双向地传送数据。
图10示出缓冲IC32中的CPU连接电路的结构。在缓冲IC32中,该示例性实施例仅包括一个存储控制器321,但包括两个存储器、两个串行IF以及两个总线IF(存储器322a和322b、串行IF323a和323b以及总线IF324a和324b),其中它们的每一对中的一件(存储器322a、串行IF323a以及总线IF324a)用来从第一CPU10向第二CPU20传输数据,并且它们的每一对中的另一件(存储器322b、串行IF323b以及总线IF324b)用来从第二CPU20向第一CPU10传输数据。
从第一CPU10向第二CPU20传送数据的操作以及从第二CPU20向第一CPU10传送数据的操作类似于第一示例性实施例的从CCPU1向ACPU2的传送操作(存储控制器321在两个方向上都单独地控制数据传送);因此,将避免对其重复的描述。
[第五示例性实施例]
将给出对本发明合适地应用于其中的第五示例性实施例的描述。
根据该示例性实施例的数据处理装置的配置类似于第四示例性实施例的配置,其中第一CPU和第二CPU分别经由串行IF和总线IF连接到缓冲IC33。此外,第一CPU和第二CPU经由缓冲IC33双向地传送数据。然而,如图11所示,在该示例性实施例中数据写入请求信号从第一和第二CPU的每一个输入至缓冲IC33。CPU在缓冲器中写入(传送)数据之前,数据写入请求信号被输入至缓冲IC33中的存储控制器331。
图12示出缓冲IC33中的CPU连接电路的结构。
在该示例性实施例中,缓冲IC33包括两个串行IF以及两个总线IF(串行IF333a和333b以及总线IF334a和334b),其中它们的每一对中的一件(串行IF333a、总线IF334a)用来从第一CPU向第二CPU传输数据,并且它们的每一对中的另一件(串行IF333b、总线IF334b)用来从第二CPU向第一CPU传输数据。顺便提及,不同于第四示例性实施例的是,缓冲IC33仅包括一个存储器332(两个缓冲器帧)。
在根据该示例性实施例的数据处理装置中,因为第一CPU10和第二CPU20共享一个存储器332,所以需要控制这些CPU以便不同时执行数据写入操作。因此,存储控制器331基于来自每个CPU的数据写入请求而如下控制操作。
对第一和第二CPU的每一个设置数据写入操作的优先级;当两个CPU都请求数据写入操作时,具有较高优先级的CPU被允许进行数据写入操作。在当具有较低优先级的CPU正在进行数据写入操作时的情况下,如果具有较高优先级的CPU请求数据写入操作,那么被处理的操作可以继续或者可被中断以执行具有较高优先级的CPU的数据写入操作。
顺便提及,可预先设置软件,从而第一CPU10和第二CPU20的每个通过使用对所关联的CPU的流控制信号来指示数据传输定时,因此排他地进行数据写入操作。在此情况下,不需要来自每个CPU的数据写入请求。
因为数据传送自身的操作(缓冲)类似于第一示例性实施例的操作(缓冲),所以将避免对其的描述。
[第六示例性实施例]
将给出对本发明合适地应用于其中的第六示例性实施例的描述。
图13示出根据该示例性实施例的便携式电话终端的配置。便携式电话终端是包括两个CPU即通信CPU和应用CPU的双CPU蜂窝电话。
将给出对根据本发明的便携式电话终端的操作的描述。
天线21所接收的无线电信号被无线电电路22转换成电信号,该电信号然后被模拟信号处理部分23转换成数字信号。模拟信号处理部分23所转换的数字信号经由数字信号处理部分24输入至CCPU1。馈送给CCPU1的数字信号作为数字数据经由缓冲IC3向ACPU2发送。ACPU2处理所输入的数字数据并且进行例如将所处理的数据存储在存储器25中、从音频输出部分27产生声音或者在显示部分28上显示图像的处理。
另一方面,ACPU2处理经由操作部分26进行的输入操作以及经由音频输入部分29输入的声音,以向CCPU1传送所处理的数据。CCPU1将从ACPU2输入的数据发送至数字信号处理部分24,以将数据转换成模拟电信号。数字信号处理部分24经由模拟信号处理部分23将模拟电信号输入至无线电电路22。无线电电路22将所输入的模拟电信号转换成无线电信号并且经由天线21发送信号。
通过在CCPU1和ACPU2之间布置类似于第一示例性实施例的缓冲IC的缓冲IC,即使在通信期间ACPU是繁忙的,缓冲器溢出也不容易发生并且通信质量的稳定性也得到了改进。
因为从CCPU向ACPU的数据传送操作自身类似于第一示例性实施例的数据传送操作,所以将避免对其重复的描述。
顺便提及,在此情况下,CCPU和ACPU通过类似于第一示例性实施例的电路配置的电路配置彼此连接;然而,不言而喻CCPU和ACPU可通过类似于第二或第三示例性实施例的电路配置的电路配置彼此连接。
此外,第四或第五示例性实施例的第一CPU和第二CPU显然可用作CCPU和ACPU。
顺便提及,示例性实施例是本发明的合适的实施示例,但是本发明不被示例性实施例所限制。
例如,在每个示例性实施例中,在配置的示例中两帧的缓冲器交替地在数据读出缓冲器和数据写入缓冲器之间转换;然而,也可以是配置包括如图14所示的三个或更多的缓冲器,以便轮换地使用这些缓冲器。
如上所述,对本发明而言各种变化是可以的。
本申请基于并且要求于2006年7月28日递交的、申请号2006-206808的日本专利申请的优先权,该日本专利申请的公开通过引用而被全部并入于此。