逻辑电路装置以及可编程逻辑电路的工作方法

文档序号:6429367阅读:123来源:国知局
专利名称:逻辑电路装置以及可编程逻辑电路的工作方法
技术领域
本发明涉及利用了可以在工作中变更要实现的功能的可编程逻辑电路的逻辑电路装置。
背景技术
如果用一个集成电路来构成进行由多个工序组成的一连串处理的电路,则需要使集成电路整体的处理速度与需要最高的处理能力的工序相适应。但是,实际上因为还存在许多用较低处理能力就可以充分处理的工序,所以作为集成电路整体其处理能力过剩。
近年来,提出了可以在工作中改变要实现的功能的可编程逻辑电路。该可编程逻辑电路是可以在电路工作中改变电路整体或者一部分的逻辑构成的电路。例如,可以列举可以高速变更逻辑构成那样的现场可编程门阵列(FPGA)等。而且,以下只表示为“可编程逻辑电路”。
以往,提出了分时变更在可编程逻辑电路上实现的功能的方法。在该方法中,根据各工序需要的处理能力预先确定各工序的处理时间的分配。然后,根据该处理时间分配来变更用可编程逻辑电路实现的、用于进行各工序处理的功能。
专利文献1-特开2001-202236公报在现有的方法中,需要预先确定处理时间的分配,以便使分配给需要高处理能力的工序的处理时间增加,使分配给用低处理能力就可以处理的工序的处理时间缩短。因此,不能做到与各工序所需要的处理能力的动态变化相对应来分配适当的处理时间。

发明内容
鉴于上述问题的存在,本发明的目的在于提供一种可以根据各工序处理所需要的处理能力来自动地调整处理时间的通用逻辑电路。
为了解决上述问题,本发明的逻辑电路包括存储与多个电路各自有关的电路构成信息的电路构成信息存储器;在工作中使用上述电路构成信息可以对电路构成进行再构成的可编程逻辑电路;把与上述各电路的处理有关的输入数据和输出数据存储到上述每个电路中的处理数据存储装置;把对上述处理数据存储器的上述输入或者输出数据的至少一方的存储量在上述每个电路中监视,当这些存储量满足某一条件时,变更上述可编程逻辑电路的电路构成的控制单元。
如果采用本发明,则根据各工序处理需要的处理能力,可以自动地调整处理时间。


图1是说明本发明的各实施方式的逻辑电路装置的概念的图。
图2是逻辑电路装置的工作例子。
图3是逻辑电路装置的工作例子。
图4是逻辑电路装置的工作例子。
图5是逻辑电路装置的工作例子。
图6是可编程逻辑电路的内部构成的方框图。
图7是可编程逻辑电路的电路构成的再构成工作的流程图。
图8是实施方式1的逻辑电路装置的方框图。
图9是采用实施方式1的逻辑电路装置的单位电路切换工作的流程图。
图10是采用实施方式1的逻辑电路装置的、计算处理各单位电路优先度的流程图。
图11是采用实施方式1的逻辑电路装置的、同一优先度的单位电路有多个的情况时的单位电路选择处理的流程图。
图12是实施方式3的逻辑电路装置的方框图。
图13是使实施方式3的逻辑电路装置工作时的、表示各单位电路的工作状况的时间图的一例。
图14是无线接收机的方框图。
图15是把本发明的一实施方式的逻辑电路装置适用于无线接收机的数字电路部分的例子的概要图。
图16是表示把本发明的一实施方式的逻辑电路装置适用于无线接收机的数字电路部分时的、表示各单位电路的工作状况的时间图的一例。
具体实施例方式
(概要)在本发明的各实施方式中,使用可以在工作中变更要实现的功能的可编程逻辑电路。这样的可编程逻辑电路是可以通过在电路的工作中再构成电路整体或者一部分的逻辑构成变更实现的功能的电路。例如,可以列举可以高速执行逻辑构成的再构成那样的现场可编程门阵列(FPGA)和可编程逻辑器件(PLD)等。而且,以下只表示为“可编程逻辑电路”。
图1表示使用了可编程逻辑电路的逻辑电路装置的概要。在图1中,是把由从步骤A到步骤D的4个步骤组成的处理用一个可编程逻辑电路121执行的例子。为了简单说明,表示可编程逻辑电路是1个的情况。
一般这样的处理可以通过使用进行步骤A、B、C以及D的各个处理的专用电路A、B、C以及D,和暂时存储对各专用电路的输入以及来自各专用电路的输出的FIFO型存储器100、101、102、103以及104实现。
与此相反,图1的逻辑电路装置代替4个专用电路,具备可编程逻辑电路121;4种电路信息A、B、C以及D;FIFO切换单元122;进行可编程逻辑电路121以及FIFO切换单元122的工作控制的控制单元123。
上述的电路信息A、B、C以及D是规定可编程逻辑电路121的电路构成的电路构成信息。即,可编程逻辑电路121根据从外部给予的电路信息实现各种逻辑电路。例如,如果向可编程逻辑电路121给予电路信息A则可编程逻辑电路121作为电路A工作。如果向可编程逻辑电路121给予电路信息B则可编程逻辑电路121作为电路B工作。
另外,可编程逻辑电路121具有可以对电路构成进行再构成的性质。即,可编程逻辑电路121通过变更从外部给予的电路信息,可以变更电路构成。例如,如图2所示,如果向根据电路信息A作为电路A工作的可编程逻辑电路121给予电路信息B,则如图3所示可编程逻辑电路121作为电路B工作。
本实施方式的逻辑电路装置120利用可编程逻辑电路121的可以再构成这一性质。然后,如从图2到图5所示,在某一时刻使可编程逻辑电路121作为电路A工作,在另一时刻作为电路B工作,在再一时刻作为电路C工作,在另外的再一时刻作为电路D工作。因此,在某一时刻只进行电路A的处理,其他的电路(B~D)的处理处于停止状态。这样,一面每时每刻使利用可编程逻辑电路121实现的电路种类发生变化,一面进行步骤A、B、C以及D的处理。
在再构成可编程逻辑电路121的电路构成时,FIFO切换单元122变更与可编程逻辑电路121连接的FIFO型存储器。例如,在使可编程逻辑电路121作为电路C工作时,如图4所示,在可编程逻辑电路121的输入一侧上连接FIFO102,在输出一侧上连接FIFO103。在使可编程逻辑电路121作为电路D工作时,如图5所示,在可编程逻辑电路121的输入一侧上连接FIFO103,在输出一侧上连接FIFO104。
上述的可编程逻辑电路121的电路构成的再构成工作以及FIFO切换单元122的连接FIFO切换工作用控制单元123的控制进行。在本发明的各实施方式中,控制单元123确定在可编程逻辑电路中进行再构成的时刻。控制单元123监视FIFO1000、1001、1002、1003以及1004存储的数据量。然后,控制单元123根据数据量确定可编程逻辑电路是否进行再构成。即,控制单元123进行各单位电路的工作的安排。
图6是表示可编程逻辑电路121的内部构成的概要。可编程逻辑电路121具备多个单位块600;进行这些单位块600相互连接的多个单位间连接单元610。单位块600包括对已输入的数据进行逻辑计算的LUT601;用于取得把LUT601的计算结果输出给其他单位块时的输出同步的D-触发器(FlipFlop)602。单位块600包括存储多个电路信息的RAM603;切换给予LUT601的电路信息的切换单元604。单位块600具备在切换给予LUT601的电路信息时用于退避·复原D-触发器602的状态信息的RAM605;切换退避·复原的状态信息的切换单元606。
单位块间连接单元610具备根据与单位块间的连接关系有关的电路信息把来自单元块600的输出输出到另一单位块600的连接单元611;存储规定单位块间的连接关系的多个电路信息的RAM612;切换给予连接单元611的电路信息的切换单元613。
RAM603从外部接收与逻辑计算有关的电路信息并存储。RAM612从外部接收与单位块间的连接关系有关的电路信息并存储。RAM605和外部进行状态信息的交换。切换单元604以及606从控制单元123接收控制信号进行给予LUT601以及单位块间连接单元610的电路信息的切换工作。切换单元613在从外部接收控制信号使D-触发器602的状态信息退避到RAM605中的同时,向D-触发器602给予与进行下一工作的电路有关的状态信息。
而且,在此说明LUT601进行逻辑计算,但也可以执行算术计算和简单的程序。
图7是在可编程逻辑电路121的工作中进行再构成的顺序的流程图。
(步骤S701)控制单元123从外部向RAM603以及RAM612提供与进行下次工作的电路对应的电路信息603-2以及电路信息612-2。另外,从外部向RAM605提供与进行下次工作的电路对应的状态信息605-2。而且,当在RAM603、605以及612中已存储有需要的数据时,可以省略此步骤的处理。
(步骤S702)控制单元123向未图示的时钟信号提供单元发送控制信号。时钟信号提供单元停止对可编程逻辑电路121提供时钟信号使处理停止。
(步骤S703)控制单元123向FIFO切换单元122发送控制信号,把与进行下次工作的电路对应的FIFO(未图示)连接到可编程逻辑电路121中。
(步骤S704)控制单元123向切换单元606发送控制信号。切换单元606把D-触发器602保持的状态信息退避到RAM605中。被退避的状态信息作为状态信息605-1存储到RAM605。
(步骤S705)控制单元123向切换单元604发送控制信号。切换单元604从RAM603向LUT601拷贝与进行下次工作的电路构成有关的电路信息603-2。另外,控制单元123向切换单元613发送控制信号。切换单元613把与进行下次工作的电路的连接关系有关的电路信息612-2从RAM612拷贝到连接单元611。而且,控制单元123向切换单元606发送控制信号。切换单元606把与下次工作的电路对应的状态信息605-2复原到D-触发器602上。
(步骤S706)控制单元123向时钟信号提供单元发送控制信号。时钟信号提供单元向可编程逻辑电路121再次开始时钟信号的供给。
(步骤S707)另外,如果需要,则控制单元123向切换单元606发送控制信号,可以把在步骤S704中退避到RAM612中的状态信息605-1保存到未图示的外部存储器中。
可编程逻辑电路121的电路构成根据以上说明的顺序再构成。
根据RAM603、605以及612的效果,可以屏蔽把电路信息输入到可编程逻辑电路121的时间。因此,可编程逻辑电路121可以高速地进行电路构成的再构成。而且,在各实施方式中虽然是设置有RAM603、605以及612的构成,但这些RAM603不是必须的。即使是可以从可编程逻辑电路121的外部高速发送接收电路信息和状态信息的构成也可以实现。
另外,在图6中被存储到RAM603、605以及612中的电路信息以及状态信息是2个,但也可以存储比2个多的电路信息以及状态信息。可以存储到RAM603、605以及612中的电路信息以及状态信息的数也可以根据和外部的状态信息以及状态信息的发送接收速度确定。
(实施方式1)图8是本发明实施方式1的使用了可编程逻辑电路的逻辑电路装置800的方框图。此逻辑电路装置800包括图6的单位块600以及单元块间连接单元610集中多个构成的可编程逻辑电路801;向可编程逻辑电路801提供电路信息的电路信息提供单元802;存储电路信息的电路信息存储单元803。此电路信息是在可编程逻辑电路801构成各单位电路时使用的电路构成信息。
本实施方式的逻辑电路装置800包括连接用可编程逻辑电路801实现的各电位电路间的FIFO806;选择从FIFO806连接到用可编程逻辑电路801实现的各单位电路的输入一侧的输入FIFO选择单元804;选择从FIFO806连接到用可编程逻辑电路801实现的各单位电路的输出一侧的输出FIFO选择单元805。输入FIFO的选择单元804以及输出FIFO选择单元805与上述的FIFO切换单元122对应。
本实施方式的逻辑电路装置800包括管理可编程逻辑电路801的状态信息的状态信息管理单元808;存储状态信息的状态信息存储单元809。
可编程逻辑电路801一面每时每刻把电路构成再构成为N个单位电路的中任意1个一面工作。用可编程逻辑电路801实现的各单位电路从FIFO806经由输入FIFO选择单元804读出在各单位电路的处理中所需要的数据,经由输出FIFO选择单元805把各单位电路的处理结果的数据写入FIFO806。可编程逻辑电路801接收来自控制单元807的控制信号变更电路构成。而且,为了简单说明设置以下的前提条件。
(A1)全部的单位电路串联连接。
(A2)全部的单位电路1对1输入。
(A3)作为逻辑电路装置800整体1对1输出。
电路信息提供单元802从电路信息存储单元803读出在控制单元807中指定的单位电路的电路信息,提供给可编程逻辑电路801。
电路信息存储单元803存储与N个单位电路相当的电路信息803-1、803-2、...、803-N。以下,把使用电路信息803-k可编程逻辑电路801实现的单位电路称为单位电路803k。另外,为了简单说明,进一步设置以下的前提条件。
(A4)在本实施方式的逻辑电路装置800中,从逻辑电路装置800整体的输入一侧开始在第k个位置的单位电路是单位电路803-k(k=1,2,...,N)。因此,在逻辑电路装置800整体的输出一侧最近的单位电路是单位电路803-N。
FIFO806具有连接N个单位电路间的N-1个FIFO(FIFO806-1,806-2,...,806-(N-1));作为电路整体的输入一侧FIFO的FIFO806-a;作为电路整体的输出一侧FIFO的FIFO806-b。而且,为了简单说明,进一步设置以下的前提条件。
(A5)与单位电路803-k的输出一侧连接的FIFO是FIFO806-k。
(A6)与单位电路803-(k+1)的输入一侧连接的FIFO是FIFO806-k。
(A7)各FIFO的容量相同。
而且,FIFO806并不局限于先入先出型的专用存储器,也可以是先入先出那样构成(或者控制)的DRAM等的通用存储元件。
输入FIFO选择单元804从FIFO806中选择需要连接到用控制单元807指定的单位电路上的输入FIFO。然后,输入FIFO选择单元804从选择出的输入FIFO向可编程逻辑电路801提供数据。
输出FIFO选择单元805从FIFO806中选择需要连接到用控制单元807指定的单位电路上的输入FIFO。然后,输出FIFO选择单元805把从可编程逻辑电路101输出的数据存储到选择出的输出FIFO中。
状态信息管理单元808从状态信息存储单元809中读出用控制单元807指定的单位电路的状态信息,提供给可编程逻辑电路801。另外,状态信息管理单元808从可编程逻辑电路801读出由控制单元807指定的单位电路的状态信息,存储到状态信息存储单元809。
状态信息存储单元809存储与N个单位电路各自对应的状态信息809-1、809-2、...、809-N。以下,把与电路信息803-k对应的状态信息记述为状态信息809-k。
控制单元807进行各FIFO(FIFO806-1、806-2、...、806-(N-1)、806-a、806-b)保持的数据量的监视、用可编程逻辑电路801实现的单位电路的选择、切换用可编程逻辑电路801实现的单位电路时的控制。另外,控制单元807存储在可编程逻辑电路801中存储工作中的单位电路的识别符。以下,参照图9说明控制单元807的工作。
(S901)控制单元807以某一时间间隔监视FIFO106的各FIFO保持的数据量。在本实施方式中为了简单说明假设此时间间隔为一定,但也可以是变化的。例如,在设置了时间间隔的上限后随着可编程逻辑电路101的工作时间加长,也可以使时间间隔加长。或者,在设置了时间间隔的上限后随着各FIFO保持的数据量的平均值或者合计值增大,使时间间隔增大。或者,也可以在各FIFO每次进行读写时,或者各FIFO在规定次数的每次进行读写时监视。
(S902)控制单元807根据各FIFO保持的数据量,选择在可编程逻辑电路101中实现的单位电路。控制单元807根据从各FIFO的容量和各FIFO保持的数据量中求得的各单位电路的输入FIFO的数据量和输出FIFO的空闲容量选择单位电路。
因为输入FIFO在空闲状态下没有输入数据,所以各单位电路不能进行处理。另外,在输出FIFO的充满的状态下,新生成的处理结果丢失。
因此,控制单元807根据各FIFO的监视结果,选择输入FIFO保持的数据量在预先确定的阈值Tin以上,并且输出FIFO的空闲容量在预先确定的阈值Tout以下的单位电路。
(S903)控制单元807调查被选择出的单位电路、在可编程逻辑电路801中现在工作中的单位电路是否相同。控制单元807比较在可编程逻辑电路801中现在工作中的单位电路识别符,和在步骤S902中控制单元807选择出的单位电路的识别符。当2个识别符相同时,因为不需要可编程逻辑电路801的电路构成的再构成,所以返回S901的处理。当2个识别符不同时因为需要可编程逻辑电路801的电路构成的再构成,所以进行以下步骤的处理。
(S904)控制单元807把选择出的单位电路的电路信息以及状态信息提供给可编程逻辑电路801。控制电路807把选择出的单位电路的识别符通知电路信息提供单元802和状态信息管理单元808。
电路信息提供单元802如果从控制单元807通知识别符,则从电路信息存储单元803中读出与识别符对应的单位电路的电路信息,提供给可编程逻辑电路801。然后,把电路信息存储到可编程逻辑电路801的RAM603中。如果电路信息的提供结束,则电路信息提供单元802通知控制单元807。
状态信息管理单元808如果从控制单元807通知识别符,则从状态信息存储单元809读出与识别符对应的单位电路的状态信息,提供给可编程逻辑电路801。然后,存储到可编程逻辑电路801的RAM605。状态信息提供单元808在状态信息的提供结束后通知控制单元807。
控制单元807在从电路信息提供单元802以及状态信息提供单元808的双方接收通知后,进行以下步骤的处理。
(S905)控制单元807使可编程逻辑电路801的工作停止。控制单元807控制未图示的时钟信号提供单元,使时钟信号的提供停止。
(S906)控制单元807通知被选择的单位电路的识别符,和被输入FIFO选择单元804和输出FIFO选择单元805选择出的单位电路的识别符。输入FIFO选择单元804以及输出FIFO选择单元805把从控制单元807通知的与识别符对应的FIFO连接到可编程逻辑电路801。
(S907)控制单元807控制可编程逻辑电路801的切换单元606,把现在的D-触发器602的状态存储在RAM605中。
(S908)控制单元807控制可编程逻辑电路801的切换单元604,把存储在RAM603中的下一工作的单位电路的电路信息提供给LUT201。控制单元807控制可编程逻辑电路801的切换单元613,把存储在RAM612中的下一工作的单位电路的电路信息提供给连接单元611。控制单元807控制可编程逻辑电路801的切换单元606,把存储在RAM605中的下一工作的单位电路的状态信息提供给D-触发器602。
(S909)控制单元808再开始可编程逻辑电路801的工作。即,控制单元808控制未图示的时钟信号提供单元再开始时钟信号的供给。
(S910)控制单元808控制可编程电路801的切换单元606,把在步骤S907中存储在RAM605中的状态信息提供给状态信息管理单元808。控制单元807向状态信息管理单元808通知此前工作的单位电路的识别符,保存该单位电路的状态信息。状态信息管理单元108把从切换单元606提供的状态信息存储在状态信息存储单元809。
以上,如果是本实施方式的逻辑电路装置,则即使在各单位电路需要的处理能力动态变化时也可以对应。
(实施方式2)以下,说明本发明的实施方式2的逻辑电路装置。逻辑电路装置800的构成因为和实施方式1一样所以省略说明。在本实施方式中,用控制单元807进行的单位电路的选择处理(步骤S902)和实施方式1不同。
在实施方式中在从优先度1到优先度4的4个阶段评价各单位电路的优先度。优先度1是最高的优先度。优先度4表示不能处理的状态。本实施方式的控制单元807选择优先度最高的单位电路。
图10是采用本实施方式的控制单元807的电位电路的优先度确定处理的流程图。以下,参照

优先度确定处理。控制单元807根据以下的流程图设定全部单位电路的优先度。
(S1001)输入FIFO保持的数据量是0时,或者,输出FIFO充满的情况。
该单位电路不是与进行处理相应的形态。这是因为如果在输入FIFO中没有数据就不能进行处理,另外如果输出FIFO充满则处理结果丢失的可能性高的缘故。因此,控制单元807把该单位电路的优先度设定为最低,即设定在优先度4上。
(S1002)输入FIFO保持的数据量比阈值Tin多的情况。
该单位电路的输入FIFO有将要溢出的可能性。因此,控制单元807把该单位电路的优先度设定为最高,即优先度为1。
(S1003)输入FIFO保持的数据量比阈值Tout少的情况。
认为在该单位电路的输出FIFO中有充分空闲容量。因此控制单元807把该单位电路的优先度设定为优先度2。
(S1004)在上述以外时。
控制单元807把该单位电路的优先度设定为优先度3。
而且,在本实施方式的步骤S1001中,是把输入FIFO保持的数据量是0,或者,输出FIFO充满的情况作为对象,但也可以以任何阈值作为基准确定作为对象的条件。例如,也可以是输入FIFO保持的数据量比阈值Tmin小的情况,或者,输出FIFO保持的数据量比阈值Tmax多的情况。此时,不满足Tmin≤Tin,Tmax≥Tout也可以。
在设定了全部的单位电路的优先度后,控制单元807选择具有最高优先度的单位电路。但是,控制单元807在具有最高优先度的单位电路有多个时,还需要从中选择一个单位电路。这种情况下,控制单元807用图11所示的处理选择单位电路。
(S1101)控制单元807调查在被此优先度分类的单位电路中在可编程逻辑电路801中是否存在现在工作中的单位电路。控制单元807因为存储现在工作中的单位电路的识别符,所以只要从被此优先度分类的单位电路中查找和存储着的识别符具有同一识别符的单位电路即可。当现在工作中的单位电路存在时,选择该单位电路。
(S1102)控制单元807当现在工作中的单位电路不存在时,求各单位电路的连续处理可能量。控制单元807选择连续处理可能量最高的单位电路。而且,连续处理可能量在输入FIFO保持的数据量和输出FIFO的空闲容量中被定义为小容量的值。因此,控制单元807如以下那样求连续处理可能量。
(S1102-1)控制单元807比较输入FIFO保持的数据量和输出FIFO的空闲容量。
(S1102-2)如果输入FIFO保持的数据量一方多,则控制单元807把输出FIFO的空闲容量设置为可以连续处理量。
(S1102-1)如果输出FIFO的空闲容量一方多,则控制单元807把输出FIFO保持的数据量设置为可以连续处理量。
在可以连续处理量的计算时,可以根据各单位电路在1次处理中使用的输入数据量和各单位电路在1次处理中输出的输出数据量的比,在输入FIFO保持的数据量和输出FIFO的空闲容量的各自上乘以系数调整。例如,如果是进行数据的压缩处理的单位电路,则输出数据的量应该比输入数据的量平均少。这种情况下,例如考虑在输入FIFO保持的数据量上乘以相当于平均压缩率的系数调整后进行比较。然后,如果调整后的输入FIFO保持的数据量多,则可以连续处理量也可以采用调整后的值。
如上所述,本实施方式的逻辑电路装置是在根据各单位电路的输入FIFO的数据量和输出FIFO的数据量求优先度后选择电路。输入FIFO的数据量和输出FIFO的数据量认为反映了各单位电路需要的处理能力。因此,本实施方式的逻辑电路装置可以根据各单位电路需要的处理能力自动地分配处理时间。
另外,本实施方式的逻辑电路装置使现在工作中的单位电路尽可能长时间工作。因此,本实施方式的逻辑电路装置可以减少伴随电路切换的工作停止次数。由此,本实施方式的逻辑电路装置可以抑制逻辑电路装置整体的处理能力减少。
而且,在上述的图11的处理(从同一优先度的多个单位电路中选择1个的处理)中,可以进一步进行如下的判定。即,当有工作中的单位电路时,如果该单位电路的工作时间比阈值Texe短则选择此电路,当不是时也可以进行步骤S1102的处理。
(实施方式3)以下,说明本发明的实施方式3的逻辑电路装置。本实施方式和实施方式1、2的不同之处在于可编程逻辑电路的个数。在本实施方式中可编程逻辑电路是多个。图12是表示本实施方式的逻辑电路装置的构成。
在这种情况下,可以同时使多个单位电路工作。在哪个可编程逻辑电路801-1、801-2、...、801-m中,使哪个电位电路工作在本实施方式中由控制单元807确定。但是,在向逻辑电路装置给予电路信息时,可以由人指定。在由人指定时,对于可编程逻辑电路的各自只要和实施方式1、2同样进行切换即可。
另外,即使在控制单元807确定时,也是只要和实施方式2一样确定各单位电路的优先度,按照优先度高的顺序选择m个单位电路即可。当可以执行的电路是不足m个时,可以停止一部分可编程逻辑电路。
图13是用具有4个可编程逻辑电路(可编程逻辑电路A、B、C、D)的逻辑电路装置执行由7个步骤(步骤1、2、...、7)组成的一连串的处理时的时间图。步骤1是7个步骤中最靠近输入侧的步骤。步骤7是7个步骤中最靠近输出侧的步骤。从步骤2到步骤6的步骤按照号码顺序连接成一列。7个步骤用分别对应的7个单位电路实现。图13表示各步骤在哪个可编程逻辑电路中进行的时间变化的一例。
如果是本实施方式的逻辑电路,则可以跨越多个可编程逻辑电路执行。即,因为有可能在某一可编程逻辑电路中不能执行而可以在另一可编程逻辑电路中执行,所以可以有效地灵活运用可编程逻辑电路的处理能力。因此,容易根据需要向各单位电路分配处理能力。
而且,在本实施方式中假设可编程逻辑电路有多个,但代替它准备一个大的可编程逻辑电路,分割它使用也一样。
(变形例)在单位电路的选择时,也可以从各单位电路的输入FIFO的数据量、输出FIFO的空闲容量、工作时间等中例如使用函数求评价值,选择评价值最高的单位电路。
另外,单位电路是否在工作中、工作时间,以及可以连续处理量可以在求优先度的阶段评价。例如,也可以是单位电路是否在工作中优先度在1阶段中不同。
另外,在上述步骤S1001中,假设是“输入FIFO的数据量是0或者输出FIFO充满”,但也可以用阈值判定。例如也可以是“输入FIFO的数据量在阈值Tempty以下,或者,输出FIFO的空闲容量在阈值Tfull以下”。即,当输入FIFO空闲或者处于基于它的状态时,或者当输出FIFO充满或者处于基于它的状态时不进行处理也可以。
(应用例)以下,参照

把本发明的一实施方式的逻辑电路装置适用于无线接收机的数字电路的一例。图14是无线接收机的方框图。
此无线接收机包括接收电波的天线1400;从接收到的电波中抽出特定的频带的信号带通滤波器1401;发振器1403;乘算来自发振器1403的信号和来自带通滤波器1401的输出信号的乘法器1402;AD变换来自乘法器1402的输出信号的AD变换器1404。
此无线接收机包括对来自AD变换器1404的输出信号实施正交变换的正交变换单元1405;解调在正交变换单元1405中正交变换后的信号输出编码数据的解调器1406;纠正编码数据的错误的纠错器1407;译码从纠错器1407输出的编码数据输出声音数据的译码器1408。
此无线接收机包括对从译码器1408输出的声音数据实施DA变换输出声音信号的DA变换器1409;根据声音信号发出声音的扬声器1410。
带通滤波器1401和乘法器1402和发振器1403和AD变换器1404和DA变换器1409都是模拟电路。正交变换单元1405和解调器1406和纠错器1407和译码器1408都是数字电路。
正交变换单元1405包括在来自AD变换器1404的输出数据中使特定频率成分的数据通过的带通滤波器1405-1;发振器1405-3;乘算基于来自发振器1405-3的信号的值和来自带通滤波器1405-1的数据的乘法器1405-2;在来自乘法器1405-2的数据中使特定频率以下成分的数据通过的低通滤波器1405-4。
正交变换单元1405包括使来自发振器1405-3的信号的相位偏移π/2的相位移位单元1405-6;乘算基于来自相位移位单元1405-6的信号的值和来自带通滤波器1405-1的数据的乘法器1405-5;在自乘法器1405-5的数据中使特定频率以下的成分数据通过的低通滤波器1405-7。低通滤波器1405-4以及低通滤波器1405-7的输出成为正交变换单元1405的输出。
在此无线接收机的数字电路单元中适用本发明的一实施方式的逻辑电路装置。图15是说明逻辑电路装置的适用概要的图。
在数字电路1501中包含正交变换单元1405和解调器1406和纠错器1407和译码器1408。经由FIFO100、101、102、103、104连接数字电路1501的各电路的输入输出。
然后,用本实施方式的一实施方式的逻辑电路装置1500置换数字电路1501。本实施方式的一实施方式的逻辑电路装置1500具有与正交变换单元1405对应的电路信息1501;与解调器1406对应的电路信息1502;与纠错器1407对应的电路信息1503;与译码器1408对应的电路信息1504。代替使数字电路1501的各自工作,使本实施方式的一实施方式的逻辑电路装置1500工作。本实施方式的一实施方式的逻辑电路装置1500和图2至图5一样工作。即,控制单元123在程序逻辑电路121中再构成电路构成的同时,切换连接到FIFO切换单元122上的FIFO。
图16是使数字电路1501工作时,和使逻辑电路装置1500工作时的、处理能力和时间关系的一例。在图16中,表示在处理能力的轴方向上越宽处理能力越高。当使数字电路1501工作时使各电路并列工作。与此相反当使逻辑电路1500工作时,与各电路相当的处理分时进行。即使在使数字电路1501和逻辑电路装置1500中任意1个工作时也不改变进行的处理量。即,即使在逻辑处理电路1500中也可以执行和数字电路1501同样的处理。
而且,图16示例了按照正交变换单元、解调单元、纠错器、译码器的顺序逻辑电路装置1500工作时的情况。但是,根据被存储在各电路间的FIFO中的数据量工作的顺序因为多样变化,所以并不局限于必须按此顺序工作。
本应用例说明了把本发明一实施方式的逻辑电路装置适用于无线接收机的例子。但本发明并不局限于无线接收机,即使是无线发送机也可以通过完全相同的方法来加以适用。另外,当然也可以适用于其他的数字电路,例如运动图象和声音的编码和译码等。
该应用例的优点是即使是需要与多个通信方式和多个编码方式对应的无线接收机,也只要准备电路信息即可。当使用数字电路1501时,需要为每个方式准备电路。但是,如果是逻辑电路装置1500则没有必要。当要求高的处理能力时,如实施方式3所说明的那样,只要使逻辑电路装置1500具备多个可编程逻辑电路121即可。
权利要求
1.一种逻辑电路装置,其特征在于包括存储分别与多个单位电路有关的电路构成信息的电路构成信息存储器;在工作中使用上述电路构成信息可以对电路构成进行再构成的可编程逻辑电路;把与上述单位电路的各自处理有关的输入数据和输出数据存储在每个上述各电位电路中的处理数据存储器;和监视与上述单位电路的各自处理有关的上述输入数据或者上述输出数据中的至少一方的、存入上述处理数据存储器的存储量,当存储量满足某一条件时,变更上述可编程逻辑电路的电路构成的控制单元。
2.如权利要求1所述的逻辑电路装置,其特征在于上述控制单元监视与上述单位电路的各自处理有关的上述输入数据的存储量,把上述可编程逻辑电路的电路构成变更为满足以下的(A)和(B)的条件的单位电路的电路构成(A)与该单位电路的处理有关的输入数据的存储量超过第1阈值;(B)该单位电路与在上述可编程逻辑电路上现在构成的单位电路不同。
3.如权利要求1所述的逻辑电路装置,其特征在于上述控制单元监视与上述电路单位的各自处理有关的上述输出数据的存储量,把上述可编程逻辑电路的电路构成变更为满足以下的(A)和(B)的条件的单位电路的电路构成(A)与该单位电路的处理有关的输出数据的存储量低于第2阈值;(B)该单位电路与在上述可编程逻辑电路上现在构成的单位电路不同。
4.如权利要求1所述的逻辑电路装置,其特征在于上述控制单元监视与上述电路单位的各自处理有关的上述输入数据和上述输出数据的存储量,当在上述可编程逻辑电路上现在构成的单位电路即现在单位电路满足以下的(A)和(B)中任意1个条件时,把上述可编程逻辑电路的电路构成变更为其他的单位电路的电路构成(A)与上述现在单位电路有关的处理的输入数据的存储量低于第3阈值;(B)与上述现在单位电路有关的处理的输出数据存储量超过第4阈值。
5.如权利要求1所述的逻辑电路装置,其特征在于上述控制单元监视与上述电路单位的各自处理有关的上述输入数据和上述输出数据的存储量,当在上述可编程逻辑电路上现在构成的单位电路即现在单位电路满足以下的(A)和(B)中任意1个条件时,把上述可编程逻辑电路的电路构成变更为其他的单位电路的电路构成(A)与上述现在单位电路有关的处理的输入数据的存储量低于第3阈值;(B)与上述现在单位电路有关的处理的输出数据的可存储量低于第4阈值。
6.如权利要求1所述的逻辑电路装置,其特征在于上述控制单元监视与上述单位电路的各自处理有关的上述输入数据和上述输出数据的存储量,上述控制单元具备使用上述输入数据的存储量和上述输出数据的存储量来求出分别与上述单位电路有关的优先度的优先度计算单元,上述控制单元当具有最高优先度的单位电路与在上述可编程逻辑电路上现在构成的单位电路不同时,把上述可编程逻辑电路的电路构成变更为具有上述最高优先度的单位电路的电路构成。
7.如权利要求6所述的逻辑电路装置,其特征在于上述控制单元当在上述可编程逻辑电路上现在构成的单位电路具有最高优先度时,不改变上述可编程逻辑电路的电路构成。
8.如权利要求6所述的逻辑电路装置,其特征在于上述控制单元当存在多个具有上述最高优先度的单位电路时,使用上述输入数据的存储量和上述输出数据的存储量来估算具有上述最高优先度的单位电路的各自的连续处理可能量,把上述可编程逻辑电路的电路构成变更为具有最大连续处理可能量的单位电路的电路构成。
9.如权利要求6所述的逻辑电路装置,其特征在于上述优先度计算单元当与某一单位电路的处理有关的输入数据的存储量超过第1阈值时,给予该单位电路最高的优先度。
10.如权利要求9所述的逻辑电路装置,其特征在于上述优先度计算单元把比上述最高优先度低的优先度给予还满足以下(A)和(B)中任意1个条件的单位电路(A)与该单位电路的处理有关的输入数据的存储量低于第1阈值;(B)与该单位电路的处理有关的输出数据的存储量低于第2阈值。
11.如权利要求6所述的逻辑电路装置,其特征在于上述优先度计算单元把最低优先度给予满足以下(A)和(B)中任意1个条件的单位电路(A)与该单位电路的处理有关的输入数据的存储量低于第1阈值;(B)与该单位电路的处理有关的输出数据的存储量超过第2阈值。
12.如权利要求6所述的逻辑电路装置,其特征在于上述优先度计算单元把最低优先度给予满足以下(A)和(B)中任意1个条件的单位电路(A)与该单位电路的处理有关的输入数据的存储量低于第1阈值;(B)在上述处理数据存储器内,为了存储与该单位电路的处理有关的新的输出数据而可使用的量低于第2阈值。
13.如权利要求1所述的逻辑电路装置,其特征在于上述处理数据存储器是先入先出型的存储器。
14.一种可编程逻辑电路的工作方法,是使用可以根据电路构成信息在工作中变更电路构成的可编程逻辑电路,在上述可编程逻辑电路上使多个单位电路分时工作的方法,其特征在于把在基于上述各单位电路的处理中使用的输入数据,以及作为基于上述各单位电路的处理的结果而输出的输出数据存储到存储器中,对上述各单位电路监视上述输入数据或者上述输出数据的至少一方的存储量,根据上述存储量而从上述多个单位电路中选择在上述可编程逻辑电路上构成的单位电路,把选择出的单位电路的电路构成信息提供给上述可编程逻辑电路,根据所提供的电路构成信息来变更上述可编程逻辑电路的电路构成。
15.如权利要求14所述的可编程逻辑电路的工作方法,其特征在于在上述监视中监视上述输入数据的存储量,在上述单位电路的选择中,选择还满足以下(A)和(B)中任意1个条件的单位电路(A)与该单位电路的处理有关的上述输入数据的存储量超过第1阈值;(B)该单位电路与在上述可编程逻辑电路上现在构成的单位电路不同。
16.如权利要求14所述的可编程逻辑电路的工作方法,其特征在于在上述监视中监视上述输入数据的存储量,在上述单位电路的选择中,选择还满足以下(A)和(B)中任意1个条件的单位电路(A)与该单位电路的处理有关的上述输出数据的存储量低于第2阈值;(B)该单位电路与在上述可编程逻辑电路上现在构成的单位电路不同。
17.如权利要求14所述的可编程逻辑电路的工作方法,其特征在于在上述监视中,监视上述输入以及输出数据的存储量,在上述单位电路的选择中,当在上述可编程逻辑电路上现在构成的单位电路即现在单位电路满足以下的(A)和(B)中任意1个条件时,选择与上述现在单位电路不同的其他的单位电路(A)与上述现在单位电路的处理有关的输入数据的存储量低于第3阈值;(B)与现在单位电路的处理有关的输出数据的存储量超过第4阈值。
18.如权利要求14所述的可编程逻辑电路的工作方法,其特征在于在上述监视中,监视上述输入数据的存储量以及输出数据的可存储量,在上述单位电路的选择中,当在上述可编程逻辑电路上现在构成的单位电路即现在单位电路满足以下的(A)和(B)中任意1个条件时,选择与上述现在单位电路不同的其他的单位电路(A)与上述现在单位电路的处理有关的输入数据的存储量低于第3阈值;(B)上述存储器可以存储与上述现在单位电路的处理有关的新的输出数据的量低于第4阈值。
19.如权利要求14所述的可编程逻辑电路的工作方法,其特征在于在上述监视中,监视上述输入数据的存储量和上述输出数据的存储量,在上述单位电路的选择中,使用上述输入数据的存储量和上述输出数据的存储量来求出上述单位电路的各自的优先度,从上述多个单位电路中选择上述优先度最高的单位电路。
20.如权利要求19所述的可编程逻辑电路的工作方法,其特征在于在上述单位电路的选择中,当在上述可编程逻辑电路上现在构成的单位电路即现在单位电路具有最高优先度时,选择上述现在单位电路,上述单位电路变更不改变上述可编程逻辑电路的电路构成。
全文摘要
一种逻辑电路装置,包括存储分别与多个单位电路有关的电路构成信息的电路构成信息存储器;在工作中使用上述电路构成信息可以对电路构成进行再构成的可编程逻辑电路;把与上述各电路有关的输入数据和输出数据存储在每个上述各电位电路中的处理数据存储器;对上述各电路的每个监视对上述处理数据存储器的上述输入或者输出数据中的至少一方的存储量,当这些存储量满足某一条件时,变更上述可编程逻辑电路的电路构成的控制单元。在用可编程逻辑电路来分时地使多个单位电路工作时,可以自动地分配各单位电路所需要的处理能力。
文档编号G06F17/50GK1601904SQ200410079888
公开日2005年3月30日 申请日期2004年9月23日 优先权日2003年9月24日
发明者菅野伸一, 宮本幸昌, 樽家昌也, 大根田拓 申请人:株式会社东芝
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1