通道控制装置的制作方法

文档序号:12123737阅读:263来源:国知局
通道控制装置的制作方法

本发明是涉及一种多通道控制装置,尤其涉及一种可调整多个通道的输出数据的顺序的一储存装置控制电路。



背景技术:

随着技术的演进,一个储存装置所能储存的数据量也越来越大。因此,当储存在储存装置内的数据需要被读取出来时,其复杂度也随着提高。以目前的闪存为例,为了增加一闪存的数据读取速度,所述闪存会通过多个数据通道来将数据从所述闪存内读出。从所述闪存内读出的数据会先被译码,然后才会将译码后的数据传送给一主机。一般而言,所述闪存的译码器一次只能接收一个通道的通道数据。因此,一仲裁电路就是用来决定出所述多个数据通道的一输出顺序,以控制所述多个数据通道依据所述输出顺序来输出通道数据给所述译码器。然而,所述输出顺序并不是一成不变的,其有可能是随时都需要被调整的。再者,当所述输出顺序出现错误时,所述仲裁电路必需有能力快速地更正所述输出顺序。因此,提供一个具有随时调整通道输出数据的顺序的储存装置控制电路是此领域所亟需解决的问题。



技术实现要素:

因此,本发明的一目的在于公开一种可调整多个通道的输出数据的顺序的储存装置控制电路。

依据本发明的一实施例,其公开一种通道控制装置。所述通道控制装置包括有一多任务电路、一排序电路以及一仲裁电路。所述多任务电路是耦接于多个通道,用来依据一选择信号从所述多个通道中选择一选取通道来输出一通道数据,所述多个通道是分别对应到多个预定数位数字。所述排序电路是用来依照所述多个通道的数据输出顺序来排列所述多个预定数位数字以组成一多个排列后数位数字。所述仲裁电路是用来依据所述多个排列后数位数字来决定出所述选择信号。

附图说明

图1是本发明一种通道控制装置的一实施例示意图。

图2是本发明一排序电路的一实施例示意图。

图3是本发明多个储存电路内所储存的多个预定数位数字的变化的一第一实施例示意图。

图4是本发明多个储存电路内所储存的多个预定数位数字的变化的一第二实施例示意图。

图5是本发明多个储存电路内所储存的多个预定数位数字的变化的一第三实施例示意图。

图6是本发明读取一通道数据的一实施例时序图。

其中,附图标记说明如下:

100 通道控制装置

102 多任务电路

104 排序电路

106 仲裁电路

108 储存电路

110 多个通道

110a、110b、110c、110d 通道

104a、104b、104c、104d 储存电路

104a_1~104d_4 储存单元

S1~S4 清除信号

具体实施方式

在说明书及后续的权利要求当中使用了某些词汇来指称特定的组件。所属领域中具有通常知识者应可理解,硬件制造商可能会用不同的名词来称呼同一个组件。本说明书及后续的权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。在通篇说明书及后续的请求项当中所提及的「包括」是一开放式的用语,故应解释成「包括但不限定于」。此外,「耦接」一词在此是包括任何直接及间接的电气连接手段,因此,若文中描述一第一装置耦接于一第二装置,则代表所述第一装置可直接电气连接于所述第二装置,或者通过其他装置或连接手段间接地电气连接至所述第二装置。

请参考图1。图1所示是依据本发明一种通道控制装置100的一实施例示意图。通道控制装置100包括有一多任务电路102、一排序电路104以及一仲裁电路106。本实施例的通道控制装置100可视为一储存电路的多个通道控制装置。为了更清楚描述本实施例通道控制装置100的操作特征,图1另绘示出一储存电路108以及多个通道110,其中多个通道110是耦接于储存电路108,多个通道110是用来将数据输出或输入储存电路108。多任务电路102是耦接于多个通道110,用来依据一选择信号Ss来从多个通道110中选择一选取信道来输出一信道数据Dout,多个通道110是分别对应到多个预定数位数字。排序电路104用来依照多个通道110的数据输出顺序来排列所述多个预定数位数字以组成一多个排列后数位数字。仲裁电路106是用来依据所述多个排列后数位数字来决定出选择信号Ss。通道数据Dout会被传送至一译码器112,译码器112所输出的一译码数据会被传送至一主机(未显示)。

为了方便叙述,本文以多个通道110包括有四个通道110a、110b、110c、110d为例子来说明本实施例的技术特征,但并不是本发明的限制所在。此外,多个通道110a、110b、110c、110d是分别利用多个预定数位数字[0001]、[0010]、[0100]、[1000]来表示,其中每一个预定数位数字会具有四个位,所述四个位中只有一个位是1,而其余的位为0。进一步而言,对应到第一个通道110a的第一个预定数位数字[0001]的四个位中,其最低有效位(即第一有效位)的值为1,其余较高的有效位的值为0;对应到第二个通道110b的第二个预定数位数字[0010]的四个位中,其最低有效位的值为0,第二有效位的值为1,其余较高的有效位的值为0;对应到第三个通道110c的第三个预定数位数字[0100]的四个位中,其最低有效位以及第二有效位的值为0,第三有效位的值为1,其余较高的有效位的值为0;以及对应到第四个通道110d的第四个预定数位数字[1000]的四个位中,其最低有效位、第二、第三有效位的值为0,而其最高有效位(即第四有效位)的值为1。同理,若储存电路108具有五个通道,则每一个通道是利用五个位来表示,其中所述五个位中只有一个位是1,而其余的位为0。因此,本发明的通道个数是相同于代表每一个通道的预定数位数字的位个数。

另一方面,排序电路104也会包括有多个储存电路104a、104b、104c、104d,多个储存电路104a、104b、104c、104d是用来依据多个通道110a、110b、110c、110d的数据输出顺序来写入多个预定数位数字[0001]、[0010]、[0100]、[1000]以组成所述多个排列后数位数字。换句话说,在本实施例中,多个储存电路104a、104b、104c、104d的个数是相同于多个通道110a、110b、110c、110d的个数。

请参考图2,图2所示是依据本发明排序电路104的一实施例示意图。排序电路104包括有四个储存电路104a、104b、104c、104d,每一个储存电路会包括有多个储存单元,其用来储存一个预定数位数字的多个位值。进一步而言,在本实施中,每一个储存电路会包括有四个储存单元,每一个储存单元是用来储存一个预定数位数字的一个位值。因此,每一个储存电路的储存单元的个数是相同于所述预定数位数字的位个数。在本实例中,第一储存电路104a会包括有四个储存单元104a_1、104a_2、104a_3、104a_4,第二储存电路104b会包括有四个储存单元104b_1、104b_2、104b_3、104b_4,第三储存电路104c会包括有四个储存单元104c_1、104c_2、104c_3、104c_4,以及第四储存电路104d会包括有四个储存单元104d_1、104d_2、104d_3、104d_4。举例来说,当第一储存电路104a的四个储存单元104a_1、104a_2、104a_3、104a_4用来储存第一预定数位数字[0001]时,第一储存单元104a_1是用来储存预定数位数字[0001]中最低的有效位[1],第二储存单元104a_2是用来储存预定数位数字[0001]中第二有效位[0],第三储存单元104a_3是用来储存预定数位数字[0001]中第三有效位[0],第四储存单元104a_2会用来储存预定数位数字[0001]中最高有效位[0]。因此,储存电路104a、104b、104c、104d中的每一个储存电路都可以用来储存预定数位数字[0001]、[0010]、[0100]、[1000]中的任何一个数位数字。

此外,本实施的储存电路104a、104b、104c、104d是以矩阵的方式排列,如图2所示,其中第一储存电路104a是对应到一最高的数据输出顺序,第二储存电路104b是对应到一次高的数据输出顺序,第三储存电路104c是对应到一第三高的数据输出顺序,以及第四储存电路104d是对应到一最低的数据输出顺序。换句话说,第一储存电路104a是用来写入对应到一最高数据输出顺序的通道的预定数位数字,第二储存电路104b是用来写入对应到一次高数据输出顺序的通道的预定数位数字,第三储存电路104c是用来写入对应到一第三高数据输出顺序的通道的预定数位数字,以及第四储存电路104d是用来写入对应到一最低数据输出顺序的通道的预定数位数字。仲裁电路106是读取第一储存电路104a内的预定数位数字(即最高数据输出顺序的通道的预定数位数字)来产生选择信号Ss以使得排在最高数据输出顺序的所述信道输出其信道数据,即D1、D2、D3或D4。

再者,本实施的储存电路104a、104b、104c、104d另受控于四个清除信号S1、S2、S3、S4,其中第一个清除信号S1是连接至第一储存单元104a_1、第一储存单元104b_1、第一储存单元104c_1以及第一储存单元104d_1;第二个清除信号S2是连接至第二储存单元104a_2、第二储存单元104b_2、第二储存单元104c_2以及第二储存单元104d_2;第三个清除信号S3是连接至第三储存单元104a_3、第三储存单元104b_3、第三储存单元104c_3以及第三储存单元104d_3;以及第四个清除信号S4是连接至第四储存单元104a_4、第四储存单元104b_4、第四储存单元104c_4以及第四储存单元104d_4。第一个清除信号S1是用来将第一储存单元104a_1、第一储存单元104b_1、第一储存单元104c_1以及第一储存单元104d_1内的位值归零。第二个清除信号S2是用来将第二储存单元104a_2、第二储存单元104b_2、第二储存单元104c_2以及第二储存单元104d_2内的位值归零。第三个清除信号S3是用来将第三储存单元104a_3、第三储存单元104b_3、第三储存单元104c_3以及第三储存单元104d_3内的位值归零。第四个清除信号S4是用来将第四储存单元104a_4、第四储存单元104b_4、第四储存单元104c_4以及第四储存单元104d_4内的位值归零。

请注意,在本实施例中,储存电路104a、104b、104c、104d内的每一个储存单元都是以一个正反器(flip-flop)来实现,但此并不作为本发明的限制所在。

请再次参考图2。当仲裁电路106依据多个通道110的数据输出顺序来将预定数位数字[0001]、[0010]、[0100]、[1000]写入储存电路104a、104b、104c、104d时,仲裁电路106会从第四个储存电路104d开始将对应到一最高数据输出顺序的通道的一第一顺位数位数字(例如[1000])写入,当所述第一顺位数位数字被写入到第四个储存电路104d之后,所述第一顺位数位数字会被往上传送至写入第三个储存电路104c。接着,仲裁电路106就会继续将对应到一次高数据输出顺序的通道的一第二顺位数位数字(例如[0010])写入第四个储存电路104d。当所述第二顺位数位数字被写入到第四个储存电路104d之后,所述第一顺位数位数字会被往上传送至写入第二个储存电路104b,而所述第二顺位数位数字会被往上传送至写入第三个储存电路104c。接着,仲裁电路106就会继续将对应到一第三高数据输出顺序的通道的一第三顺位数位数字(例如[0100])写入第四个储存电路104d。当所述第三顺位数位数字被写入到第四个储存电路104d之后,所述第一顺位数位数字会被往上传送至写入第一个储存电路104a,所述第二顺位数位数字会被往上传送至写入第二个储存电路104b,而所述第三顺位数位数字会被往上传送至写入第三个储存电路104c。最后,仲裁电路106就会将对应到一最低数据输出顺序的通道的一第四顺位数位数字(例如[0001])写入第四个储存电路104d。如此一来,仲裁电路106就可以依据多个通道110的数据输出顺序来将预定数位数字[0001]、[0010]、[0100]、[1000]写入储存电路104a、104b、104c、104d中。因此,在本实施例中,所述多个排列后数位数字的顺序依序为[1000],[0010],[0100]以及[0001]。

接着,仲裁电路106就会读取第一个储存电路104a内的所述第一顺位数位数字[1000]来产生选择信号Ss以控制多任务电路102输出第四信道110d的信道数据D4。请参考图3,图3所示是依据本发明储存电路104a、104b、104c、104d内所储存的所述多个预定数位数字的变化的一第一实施例示意图。请注意,为了简化起见,图3所示的储存电路104a、104b、104c、104d所分别储存的二进制制的数位数字[1000]、[0010]、[0100]、[0001]是分别以其十进制制的等效值8、2、4、1来表示。因此,在第一个周期CLK1中,仲裁电路106会读取第一个储存电路104a内的数位数字[1000]来产生选择信号Ss以控制多任务电路102将第四信道110d的信道数据D4输出为通道数据Dout。在第二个周期CLK2中,若第四信道110d的信道数据D4已经传输完毕,则第一个储存电路104a内的数位数字[1000]就会归零,即[0000]。接着,在第三个周期CLK3中,原本储存在第二个储存电路104b的数位数字[0010]就会被传送至第一个储存电路104a,而第二个储存电路104b的数位数字[0010]就会归零,即[0000]。此外,仲裁电路106会读取第一个储存电路104a内的数位数字[0010]来产生选择信号Ss以控制多任务电路102将第二信道110b的信道数据D2输出为通道数据Dout。因此,利用同样的方法,在第四个周期CLK4以及第五个周期CLK5中,原本储存在第三个储存电路104c以及第四个储存电路104d分别的数位数字[0100]以及[0001]就可以分别被传送至第二个储存电路104b以及第三个储存电路104c。此时,也就是在第五个周期中CLK5中,第四个储存电路104b的数位数字会被归零。接着,在第六个周期中CLK6中,仲裁电路106才会将对应到第四通道110d的数位数字[1000]写入第四个储存电路104d中。请注意,在本实施例中,在第三个周期CLK3至第六个周期中CLK6期间,仲裁电路106会持续读取第一个储存电路104a内的数位数字[0010]来控制多任务电路102将第二信道110b的信道数据D2输出为通道数据Dout。

从以上段落的描述可以得知,当排在第一顺位的第四信道110d的信道数据D4在第一个周期CLK1被读取完毕之后,第四通道110d的数位数字[1000]会在四个周期(即CK2至CK5)之后的第六个周期CLK6中被重新被写入最后一个顺位的第四个储存电路104d内。因此,本发明的排序电路104可以有效地依据一预定数据输出顺序来输出多个通道110a、110b、110c、110d内的通道数据D1、D2、D3或D4。

在另一个例子中,当仲裁电路106依据另一个数据输出顺序将预定数位数字[0010]、[0001]、[0100]、[1000]分别写入储存电路104a、104b、104c、104d之后,若来自一主机(未显示)的一信号指示上述的数据输出顺序发生错误,则本发明的排序电路104也具有快速清除储存电路104a、104b、104c、104d内任何一个预定数位数字的能力。具体来说,请参考图4。图4所示是依据本发明储存电路104a、104b、104c、104d内所储存的所述多个预定数位数字的变化的一第二实施例示意图。同理,为了简化起见,图4所示的储存电路104a、104b、104c、104d所分别储存的二进制制的数位数字[0010]、[0001]、[0100]、[1000]是分别以其十进制制的等效值2、1、4、8来表示。举例来说,在第二个周期CLK2中,当来自一主机(未显示)的一信号指示储存在第二个储存电路104b内的数位数字[0001]有误时,所述主机就会直接利用图2所述的第一个清除信号S1来将第二个储存电路104b的第一储存单元104b_1所储存的位值归零,也就是将第一储存单元104b_1原本所储存的位1切换为位0。

接着,利用本发明图3所提出的方法,在第三个周期CLK3以及第四个周期CLK4中,原本储存在第三个储存电路104c以及第四个储存电路104d分别的数位数字[0100]以及[1000]就可以分别被传送至第二个储存电路104b以及第三个储存电路104c。此时,也就是在第四个周期中CLK4中,第四个储存电路104d的数位数字会被归零。接着,在第五个周期中CLK5中,仲裁电路106才会将对应到第一通道110a的数位数字[0001]写入第四个储存电路104d中。请注意,在本实施例中,在第一个周期CLK1至第六个周期中CLK6期间,仲裁电路106会持续读取第一个储存电路104a内的数位数字[0010]来控制多任务电路102将第二信道110b的信道数据D2输出为通道数据Dout。换句话说,当本发明的排序电路104在清除储存电路104b(或104c、104d)所储存的数位数字的同时,仲裁电路106依然能够继续读取第一个储存电路104a内的数位数字来输出对应信道的信道数据。因此,本发明的通道控制装置100具有较高的数据读取效率。

此外,在另一个例子中,当仲裁电路106依据所述数据输出顺序将预定数位数字[0010]、[0001]、[0100]、[1000]分别写入储存电路104a、104b、104c、104d之后,若来自一主机(未显示)的一信号指示排序电路104中有两个(或以上)储存电路内所储存的数位数字有误时,则本发明的排序电路104也具有快速清除多个储存电路内的数位数字的能力。具体来说,请参考图5。图5所示是依据本发明储存电路104a、104b、104c、104d内所储存的所述多个预定数位数字的变化的一第三实施例示意图。同理,为了简化起见,图5所示的储存电路104a、104b、104c、104d所分别储存的二进制制的数位数字[0010]、[0001]、[0100]、[1000]是分别以其十进制制的等效值2、1、4、8来表示。举例来说,在第二个周期CLK2中,当来自一主机(未显示)的一信号指示储存在第二个储存电路104b以及第三个储存电路104c内分别的数位数字[0001]以及[0100]有误时,所述主机就会直接利用图2所述的第一个清除信号S1以及第三个清除信号S3来将第二个储存电路104b的第一储存单元104b_1以及第三个储存电路104c的第三储存单元104c_3所储存的位值归零,也就是将第一储存单元104b_1以及第三储存单元104c_3原本所储存的位1切换为位0。

接着,利用本发明图3所提出的方法,在第三个周期CLK3中,原本储存在第四个储存电路104d内的数位数字[1000]会先被传送至第三个储存电路104c。此时,也就是在第三个周期中CLK3中,第二个储存电路104b的数位数字依然为零,而第四个储存电路104d的数位数字会被归零。接着,在第四个周期中CLK4中,储存在第三个储存电路104c内的数位数字[1000]会被传送至第二个储存电路104b,而第三个储存电路104c的数位数字会被归零。接着,在第五个周期中CLK5中,仲裁电路106才会将对应到第一通道110a的数位数字[0001]写入第四个储存电路104d中。接着,在第六个周期中CLK6中,储存在第四个储存电路104d内的数位数字[0001]会被传送至第二个储存电路104b,而第四个储存电路104d的数位数字会被归零。最后,在第七个周期中CLK7中,仲裁电路106才会将对应到第三通道110c的数位数字[0100]写入第四个储存电路104d中。请注意,在本实施例中,在第一个周期CLK1至第六个周期中CLK7期间,仲裁电路106会持续读取第一个储存电路104a内的数位数字[0010]来控制多任务电路102将第二信道110b的信道数据D2输出为通道数据Dout。换句话说,当本发明的排序电路104在清除储存电路104b以及104c(或104d)所储存的数位数字的同时,仲裁电路106依然能够继续读取第一个储存电路104a内的数位数字来输出对应信道的信道数据。因此,本发明的通道控制装置100具有较高的数据读取效率。

请参考图6。图6所示是依据本发明读取一通道数据的一实施例时序图。图6是以读取第一通道110a的第一通道数据D1为例。图6包括有一时钟信号CLK、一请求信号TAKE、一准许信号GRANT以及通道数据Dout。在本实施例中,假设相对于第一通道110a的预定数位数字[0001]已经被储存在储存电路104a中。因此,当一主机在时间t1发出请求信号TAKE给通道控制装置100以读取第一通道110a的第一通道数据D1,通道控制装置100内的仲裁电路106就会检查储存在储存电路104a是否为预定数位数字[0001]。当仲裁电路106发现储存在储存电路104a为预定数位数字[0001],仲裁电路106就会在下一个周期(也就是大约在时间t2)发出准许信号GRANT给所述主机。当所述主机收到准许信号GRANT之后,仲裁电路106就会在下一个周期(也就是大约在时间t3)控制多任务器102将第一通道110a的第一通道数据D1输出为通道数据Dout。换句话说,在本实施例中,当一主机发出请求信号TAKE给通道控制装置100以读取具有最优先级的一信道的一信道数据时,信道控制装置100最快会在收到请求信号TAKE后的第三个周期就输出正确的通道数据Dout。换言之,本发明的通道控制装置100具有快速的信道选取速度。

综上所述,利用本发明所提出的排序电路104,本发明的通道控制装置100除了可以依序一预定的数据输出顺序来输出多个信道的信道数据之外,其还可以随时快速地更改所述预定的数据输出顺序,以使得通道控制装置100具有较高的通道选取以及数据读取效率。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1