数据传输装置和数据记录装置及数据传输方法和数据记录方法

文档序号:7531930阅读:308来源:国知局
专利名称:数据传输装置和数据记录装置及数据传输方法和数据记录方法
技术领域
本发明涉及在例如存储器间、通信设备(包括计算机)终端间、信息处理机间、或者主机与外部存储装置间,用非损失型的数据压缩方法传输已压缩的数据的数据传输装置和数据传输方法。
本发明还涉及将来自外部的传输数据以非损失型的数据压缩方式进行数据压缩,并将此已压缩了的数据记录到记录介质上的数据记录装置和数据记录方法,例如对磁盘进行信息数据的记录重放的磁盘装置(硬磁盘驱动器、软磁盘驱动器等)、或者涉及对可写入的光盘(磁光盘、相变化盘等)进行记录重放的光盘驱动器等,特别是作为通过接口总线与主机连接的外部存储装置使用的适用的数据记录装置和数据记录方法。
通常,计算机是用CPU(中央处理装置)通过存储控制装置读出存储在主存储装置中的程序指令,并执行该程序指令,进行各种数据处理和控制的。
此程序指令是进行数据处理等的程序(算法)的单位(步骤),程序通常是由多步骤的程序指令构成。
在记录程序指令的数不多的小规模程序,只进行简单处理的计算机的场合,采用将程序等预先记录在装于计算机内的ROM等上的方式,而像现在这样,在用一台计算机进行多数据处理、控制的场合,就需要有用以存储许多程序、有大规模数据长度的数据的其它存储装置。
因此,迄今为止,都采用使用磁盘的硬磁盘驱动器、使用光磁盘等可写入光盘的光盘驱动器以及使用半导体存储器的大容量型等辅助存储装置,由于通过接口总线连接辅助存储装置和计算机,可将大容量的程序和数据存储在辅助存储装置中。所以,按照来自适当的OS(操作系统)或应用程序所选择的启动、读出请求,把存储在辅助存储装置中的程序和数据读到主存储装置上,进行多数据处理和控制。
因而目前存在外部存储装置大容量化的倾向,已出现了用以增加磁盘和光盘记录容量的各种技术。
特别是由于近年来多媒体的兴起,相对上述外部存储装置的存储容量呈增加的趋势,软件等所需要的信息量,例如程序本身的容量和程序处理的数据容量也增加,因而数据压缩技术的重要性有提高的倾向。
上述数据压缩技术中,特别是无数据损失的非损失型的数据压缩技术(当然有熵编码或无损耗编码),在以下两点已引起重视在将数据存储在外部存储装置中时有外观上能使容量变大的效果;在传输数据时有能更有效地使用通信线路的效果。
用此非损失型的数据压缩技术进行数据压缩的方式是通过使数据中所包含的冗余部分减少来进行数据压缩的方式,该已压缩的数据一旦解压缩后,能完全重现压缩前的数据,具有无信息损失的性质。
但在具有上述这样性质的非损失型的数据压缩技术中,其数据压缩时的压缩率(压缩前数据的数据长/压缩后数据的数据长)随所压缩的数据内容而不同,具有直到被压缩的数据全部压缩完之前不会知道其压缩率的性质。
例如,对冗余度非常大的2值的位·标志·数据等,有时具有5或5以上高的压缩率,相反,对已经用某种方式进行过数据压缩的数据,如果要进一步用这种非损失型的数据压缩技术进行数据压缩,在大多数情况下还具有数据解压缩后难以使用的性质。
还有,用低的压缩率压缩数据时,例如,压缩后的数据只为压缩前的原来的数据的99%大小时,尽管确实进行了数据压缩,但由于压缩前后的数据长度几乎不变,所以没有压缩所带来的优点。
例如,将数据存储到进行随机存取的光盘、磁盘等的外部存储装置时,在以使外观上的存储容量变大为目的进行数据压缩的情况下,在这些外部存储装置,用固定长度的数据,例如用512字节的存贮块单位进行存储。因而,在存储1K字节的数据时,要分两个存贮块进行存储。
对此1K字节的数据进行数据压缩,如压缩后的数据长度在512字节以下,此压缩后的数据在盘上占有的存储区域的大小变成1个存贮块因而在这时数据在盘上占有区域的大小成为未进行数据压缩时的一半,因进行了数据压缩而带来好处。
但是当压缩后的数据长度大于512字节时,数据虽被压缩,但实际上上述压缩后的数据在盘上占有的存储区域的大小变成2个存贮块,与未进行数据压缩时相同。
因而在这种情况下,数据压缩需要的时间(由于也有要解压缩数据的情况,所以记为总的数据压缩/解压缩所需要的时间),以及CPU和数据压缩专用的硬件等要消耗电功率,因而会因数据压缩使系统的整体性能变坏。而且这时从外部存储装置读出压缩后的数据并传输到计算机时,由于数据需要解压缩,因而产生白白浪费解压缩数据所需时间的问题。
而且即使应用将已被压缩的数据分成固定长度的单元进行传输的通信处理时,也有压缩前数据占有的单元数与压缩后数据占有的单元数相同的情况,系统的综合性能提高受到限制。
又例如,为缩短计算机与外部存储装置间数据传输的时间,在以更有效地使用通信线路为目的进行非损失型的数据压缩时,如图43所示,与未进行数据压缩来传输数据时的传输时间tA1相比,传输进行了数据压缩的数据时的传输时间tAC1变短。
在进行数据压缩时,实际的数据传输时间tC1,特别是数据压缩/解压缩长所需要的时间tB1重新成为必要,由于实际上压缩了所传输的数据,外观上的数据长度变小。因而总的来看,由于进行数据压缩使传输时间缩短。在此,如上所述,为了缩短传输时间,有必要高速进行数据压缩,使上述数据压缩/解压缩所需要的时间tB1变短。
而且,且低压缩率进行数据压缩时如图44所示,由于实际的数据传送时间不怎么缩短,数据压缩/解压缩所需要的时间tB2要重新加到其上,结果,传送进行过数据压缩的数据时的传输时间tAC2,比不进行数据压缩传送数据时的传输时间tA2更长。
在这种情况下即使进行数据压缩,也得不到任何好处,相反,由于进行数据压缩,还会使系统整体的性能变坏。
另一方面,在主机与外部存储装置间传输数据时,可使主机具有上述非损失型数据压缩功能。然而,在多台外部存储装置与主机连接的系统中,当从主机将不同的数据传送到多台外部存储装置中时,由于压缩数据需要很长的计算时间,向全部外部存储装置传输完数据需要相当长的时间。
换言之,将不同的数据传送到多台外部存储装置时,存在主机的控制已被数据压缩处理所占有,不能进行其它处理这样的缺点。
当然,只有与有数据压缩功能的主机连接的外部存储装置外观上的数据记录容量变大。即,只有与有数据压缩功能的主机连接的外部存储装置得到数据压缩的好处。还存在有记录了压缩数据的磁盘的外部存储装置只能用有解压缩功能的主机进行重放这样的缺点。
因此,将数据压缩功能赋予外部存储装置,用各个外部存储装置进行压缩处理,能削减用主机压缩处理所费的时间,即使用不具有数据压缩功能的主机,也有用外部存储装置进行数据压缩的好处,即,能使外观上的数据存储容量变大,因而能处理种各种各样的程序和数据。
可是,作为附加到外部存储装置的压缩功能,不是在将模拟信号进行了数字变换的音频数据和图象数据等数字数据场合所采用的有数据损失的压缩技术,例如不是利用公知的离散余弦变换技术的压缩技术,进行解压缩处理时,在采用确实具有与输入数据相同的数据的非损失的数据压缩技术,例如公知的哈夫曼编码技术或者LWZ(Lempel-Ziv and Welch)编码技术的场合,随着供给压缩率的数据内容(例如,在该数据中,使用相同用语、相同表现等到何种程度)的不同而不同,不是固定的。
具体地说,用非损失的数据压缩技术将压缩前的数据进行数据压缩时,使作为压缩率所期待的值(下文简记为期望压缩率)设为2进行说明时,将由主机传输的某个有一定数据长度的1逻辑存贮块部分的数据用外部存储装置进行数据压缩时,如数据压缩像所期待那样工作,即如用与所期待压缩率相同的压缩率进行数据压缩的话,经数据压缩后的数据长度成为1逻辑存贮块的1/2大小的1物理存贮块的大小。这里是把2物理存贮块=1逻辑存贮块来处理。
也就是说,物理容量为500MB(兆字节)的光盘,从主机看来,其外观容量成为1GB(千兆字节)。但是像上述那样,采用非损失的压缩技术作为压缩技术时,经数据压缩后的数据容量由于常常不限于压缩前的数据长度的1/2或其以下,所以1逻辑存贮块部分的传输数据往往容纳不到1物理存贮块。
考虑到与数据压缩相反,具备将数据解压缩的可能性时,也存在1逻辑存贮块部分的数据解压缩后变成跨越三个以上的物理存贮块的数据的情况。这是实际压缩率不到1时产生的现象。
因而这时虽然试图通过数据压缩增加外观容量等来提高性能,但是结果反使性能变坏。即,尽管压缩数据,该数据在光盘上所占的物理容量未变成1逻辑存贮块部分的容量,或者变成在其以上,但是当读出时,解压缩所压缩的数据需要时间,虽然进行过压缩处理,但在光盘上占有的空间仅与未压缩的情况相同,在读出时要花费用以解压缩的时间,并无优点。存在发生这样不良情况的可能性。
而且在磁盘、光盘中,由于随机地进行记录和重放,例如如上所述,将跨越2个以上的物理存贮块的压缩后的数据记录到光盘上时,就成为以物理存贮块为单位的随机记录。
这时,例如跨越2个以上的物理存贮块部分的相互关连的某些压缩后的数据,在磁盘和光盘上,也存在以物理存贮块为单位,分割成在空间上分离开的各个位置进行记录的情况。这在向已记录有数据的磁盘、光盘上随机地记录数据时是明显的。在这样情况下读出磁盘、光盘上的数据时,对上述相互关连的某些压缩后的数据进行检索处理要花费时间,结果,有使存取时间变长的可能。
本发明是为了解决上述课题,提供一种能按照未进行数据压缩的压缩前的数据长及进行过数据压缩后的压缩数据的数据长和设定条件,通过传输压缩前数据与压缩数据中任何一种数据来提高总的系统性能的数据传输装置和数据传输方法。
本发明的另一目的是提供一种对记录在记录介质上的数据中,进行数据压缩的实际压缩率满足一定条件的记录数据不必进行解压缩处理,便能使从记录介质读出数据的速度大幅度提高的数据记录装置和数据记录方法。
而且,本发明的又一目的是提供一种能避免将2个以上的物理存贮块部分的数据以物理存贮块单位记录在分离的物理位置上,而记录在与连续的2个以上的物理存贮块相当的区域,从而能有效地缩短进行数据读出时的查找时间的数据记录装置和数据记录方法。
本发明的数据传输装置是由以下各部分而构成保持压缩前数据的压缩前数据保持装置;将用上述压缩前数据保持装置保持的上述压缩前数据进行数据压缩处理的数据压缩处理装置;保持来自上述数据压缩处理装置的压缩数据的压缩数据保持装置;按照上述压缩前数据和上述压缩数据的各数据长与设定条件判断应传输的数据的判断装置;按照来自上述判断装置的判断结果,在用上述压缩前数据保持装置保持的压缩前数据和用压缩数据保持装置保持的压缩数据中,传输任何一种数据的数据传输装置。
因此,首先用压缩前数据保持装置保持的压缩前数据在数据压缩处理装置中被压缩,并作为压缩数据被保持在压缩数据保持装置中。
随后在判断装置中,按照上述压缩前数据与上述压缩数据的各数据长和设定条件,判断应传输的数据,按照此判断结果,由数据传输装置传输压缩前数据与压缩数据中任何一种数据。
例如,满足上述设定条件时传输压缩数据,未满足上述设定条件时传输压缩前数据。
结果,能防止压缩数据在数据传输端的存储区上占有大小与压缩前数据在存储区占有的大小大体相同这样的现象,从而能避免在数据传输端进行无用的解压缩处理这种不良情况。
这里,作为用上述判断装置进行的判断处理可以是,按照作为压缩前数据的数据长与压缩数据的数据长之差的实际差值和规定的设定差值来进行,当上述实际差值大于上述设定差值时输出表示传输压缩数据的判断结果,当上述实际差值小于上述设定差值时输出表示传输压缩前数据的判断结果。
作为用上述判断装置的判断处理,也可以是,按照作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率和规定的设定压缩率来进行,上述实际压缩率大于上述设定压缩率时,输出表示传送压缩数据的判断结果,上述实际压缩率小于上述设定压缩率时,输出表示传送压缩前数据的判断结果。
而且作为用上述判断装置的判断处理,还可以是,作为压缩前数据的数据长与压缩数据的数据长之差的实际差值大于规定的设定差值,并且作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率也大于规定的设定压缩率时,输出表示传输压缩数据的判断结果,除此外的情况可以输出表示传输压缩前数据的判断结果。按照这种判断处理,在以下场合有效。
例如,实际差值大于设定差值时,考虑到传输压缩数据这样结构的情况,使设定差值为例如512字节时,在压缩前数据有2K字节的数据长的情况下,通过数据压缩使压缩数据的数据长小于1.5K字节时,传输压缩数据。
同样,在压缩前数据有1M字节(1000K字节)的数据长的情况下,通过数据压缩使压缩数据的数据长在999.5K字节以下时,传输压缩数据。
这时,压缩前数据(数据长=1000K字节)与上述压缩数据(数据长=999.5K字节)的比率(实际压缩率)是约1.0005,通过压缩处理削去的数据长(与差值相当)与压缩前数据的数据长的百分比仅是0.05%,由此压缩率看,压缩数据的数据长与压缩前数据的数据长几乎无变化。
这里,只比较实际差值与设定差值来判断应传输压缩数据还是应传输压缩前数据的情况,如实际差值在设定差值以上,即使像上述这样是数据长几乎与压缩前数据长相同的压缩数据,也传输该压缩数据。结果,在数据传输端,上述压缩数据也要用不少时间进行解压缩处理,时间白白浪费。
但是,如按照上述判断处理,像上述那样,由于实际差值在设定差值以上,而且实际压缩率也在设定压缩率以上时,才开始传输压缩数据,所以,即使实际差值在设定差值以上,如实际压缩率未达到设定压缩率也不传输压缩数据。而是代之以传输压缩前数据。这时,由于在数据传输端不进行需要处理时间的解压缩处理,所以不发生时间的浪费。据此,能更进一步提高总系统的性能。
而且,作为在上述判断装置的判断处理,可以是,作为实际压缩率的上述压缩前数据的数据长对压缩数据的数据长的比率,判断此实际压缩率满足预先设定的二个条件中任一个条件,在上述实际压缩率满足一个条件时,输出表示传输压缩前数据的判断结果,上述实际压缩率满足另一条件时,可以输出表示传输压缩数据的判断结果。
这时,将压缩前数据进行数据压缩时,使作为压缩率所期望的值设为期望压缩率β时,能使上述一个条件为0<实际压缩率ε<β(β-1),另一条件为实际压缩率ε≥β(β-1)还可以设置用以将上述设定压缩率或上述设定差值以及上述设定压缩率和上述设定差值变更为任意值的设定值变更装置。这时,能将在出厂阶段的设定差值和设定压缩率变更为用操作者(用户)建立的系统(硬件和软件)在逻辑上或实际上求出的设定差值和设定压缩率。结果,能用最适合于操作者(用户)建立的系统的数据压缩条件来压缩数据,从而能提高文件管理的质量。这会使系统的综合性能提高。
其次,为达到上述目的,本发明的数据传输装置通过设置以下各部分而构成保持压缩前数据的压缩前数据保持装置;将用上述压缩前数据保持装置保持的数据以设定的数据长单位进行数据压缩处理的数据压缩处理装置;保持来自上述数据压缩处理装置的压缩数据的压缩数据保持装置;按照用上述数据压缩处理装置对一部分压缩前数据进行压缩处理得到的一部分压缩数据的数据长和上述一部分压缩前数据的数据长以及设定条件,判断应传送的数据的判断装置;按照来自上述判断装置的判断结果,传输用上述压缩前数据保持装置保持的压缩前数据与用压缩数据保持装置保持的压缩数据中的任何一种数据的数据传输装置。
由此,首先用压缩前数据保持装置保持的压缩前数据在数据压缩处理装置中被用设定的数据长单位进行数据压缩,并作为顺序压缩数据保持在压缩数据保持装置。
而且在判断装置中,按照用上述数据压缩处理装置对一部分压缩前数据进行压缩处理得到的一部分压缩数据的数据长和上述一部分压缩前数据的数据长以及设定条件,判断应传送的数据,按照此判断结果,从数据传输装置传输压缩前数据和压缩数据中的任何一种数据。
例如,满足上述设定条件时,传送压缩数据,未满足上述条件时传送压缩前数据。
结果,能防止出现压缩数据在数据传输端中存储区上占有的大小与压缩前数据在存储区上占有的大小大体相同这样的现像,从而能避免在数据传输端进行无用的解压缩处理这样的不良情况。
特别是在这种结构中,不是对压缩前数据全部进行数据压缩,按照对压缩前数据的一部分进行数据压缩得到的一部分压缩数据的数据长和上述一部分压缩前数据的数据长以及设定条件,判断应传输数据应该作为压缩数据还是应该作为压缩前数据,从而能缩短用于数据压缩的时间。
而且在上述结构中还可以设置顺序删除被上述数据压缩处理装置压缩处理过的压缩前数据的数据删除装置。这时能使压缩前数据保持装置的利用率提高,从而能避免例如,因容量溢出导致的系统停止等。
作为用上述判断装置进行的判断处理,还可以是,预测压缩率是上述一部分压缩前数据的数据长对上述一部分压缩数据的数据长的比率,按照此予测压缩率和规定的设定压缩率来进行判断处理,上述预测压缩率大于上述设定压缩率时输出表示传输压缩数据的判断结果,上述预测压缩率小于上述设定压缩率时输出表示传送压缩前数据的判断结果。
用上述判断装置的判断结果表示传送压缩前数据时,可以停止对向上述一部分压缩前数据进行过压缩处理以后的压缩前数据用数据压缩处理装置进行的压缩处理。这时,判断应传输的数据是压缩前数据时,由于对其后的压缩前数据不进行数据压缩处理,能缩短整体的处理时间(从将压缩前数据进行数据压缩处理阶段到传输压缩前数据或压缩数据的时间)。
也可以设置对上述预测压缩率进行与数据种类相应的加权的加权装置。这时,不管压缩前数据的种类如何,都能使预测压缩率与预想的最终压缩率间的误差减小,能提高综合的系统性能。
还可以设置用以将上述设定压缩率变更为任意值的设定值变更装置。这时,能将出厂阶段的设定压缩率变更为用操作者(用户)建立的系统(硬件和软件)在逻辑上或实验上求出的设定压缩率。结果,能用最合适于操作者(用户)建立的系统的数据压缩条件压缩数据,能提高文件管理的质量。这就有助于系统综合性能的提高。
其次,为达到上述目的,本发明的数据记录装置设置如下各部分构成对记录介质进行数据记录的数据记录装置;对输入数据进行数据压缩处理的数据压缩处理装置;保持未对上述输入数据进行数据压缩处理的压缩前数据和来自上述数据压缩处理装置的压缩数据的数据保持装置;按照上述压缩前数据及上述压缩数据的各数据长和设定条件判断应输出的数据的判断装置;按照来自上述判断装置的判断结果,将用上述数据保持装置保持的压缩前数据和压缩数据中的任何一种数据输出到上述记录装置的数据输出装置。
据此,首先,用数据保持装置保持的压缩前数据在数据压缩处理装置中被进行数据压缩,作为压缩数据保持在数据保持装置。
于是,在判断装置中,按照上述压缩前数据与上述压缩数据的各数据长和设定条件,判断应输出的数据,按照此判断结果,从数据传输装置将压缩前数据和压缩数据中任何一种数据,通过数据输出装置输出到数据记录装置,所输出的压缩前数据或压缩数据被记录在记录介质上。
例如,满足上述设定条件时,在记录介质上记录压缩数据,未满足上述设定条件时,在记录介质上记录压缩前数据。
结果,能防止产生压缩数据在数据传输端占有的存储区上的大小与压缩前数据在存储区上占有的大小大体相同这样的现象,能避免从记录介质上读出时进行无用的解压缩处理这样的不利情况。
即,在记录在记录介质的数据中,对数据压缩产生的实际压缩率不满足设定条件的记录数据不必进行解压缩处理,能大幅度地提高从记录媒体上读出数据的速度。
这里作为用上述判断装置进行的判断处理,是按照作为压缩前数据的数据长与压缩数据的数据长之差的实际差值和规定的设定差值来进行,上述实际差值大于上述设定差值时,将表示输出压缩数据的判断结果输出到数据输出装置,上述实际差值小于上述设定差值时,将表示输出压缩前数据的判断结果输出到数据输出装置。这时,实际差值大于上述设定差值时在记录介质上记录压缩数据,上述实际差值小于上述设定差值时,在记录介质上记录压缩前数据。
作为在上述判断装置的判断处理,按照作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率和规定的设定压缩率来进行,上述实际压缩率大于上述设定压缩率时向数据输出装置输出表示输出压缩数据的判断结果,上述实际压缩率小于上述设定压缩率时,向数据输出装置输出表示输出压缩前数据的判断结果。这时,上述实际压缩率大于上述设定压缩率时,在记录介质上记录压缩数据,上述实际压缩率小于上述设定压缩率时,在记录介质上记录压缩前数据。
作为在上述判断装置的判断处理,当作为压缩前数据的数据长与压缩数据的数据长之差的实际差值大于规定的设定差值,而且,作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率大于设定压缩率时,将表示输出压缩数据的判断结果输出到数据输出装置,在此外的情况,将表示输出压缩前数据的判断结果输出到数据输出装置。这时,上述实际差值在规定的设定差值以上,而且,上述实际压缩率也在规定的设定压缩率以上时,在记录介质上记录压缩数据,在此处的情况,在记录介质上记录压缩前数据。
作为用上述判断装置的判断处理,判断作为上述压缩前数据的数据长对压缩数据的数据长之比率的实际压缩率满足预定的两个条件中的任一个条件,上述实际压缩率满足一种条件时将表示输出压缩前数据的判断结果输出到数据输出装置,上述实际压缩率满足其它条件时将表示输出压缩数据的判断结果输出到数据输出装置。这时,上述实际压缩率满足一种条件时在记录介质上记录压缩前数据,上述实际压缩率满足其他条件时在记录介质上记录压缩数据。
作为上述二个条件,在对压缩前数据进行数据压缩时,压缩率所期望的值设为期望压缩率β时,能使上述一个条件为0<实际压缩率ε<β(β-1),另一条件为实际压缩率ε≥β(β-1)。
这时,首先,输入数据被用数据压缩处理装置进行数据压缩,作为压缩数据保持在数据保持装置,对上述输入数据未实施数据压缩处理的数据作为压缩前数据保持在数据保持装置。而且用判断装置判断数据压缩装置的实际压缩率ε与预测压缩率β的关系,若这种判断装置的判断结果是ε≥β/(β-1)时,即实质上压缩数据的数据长比传输数据的数据长更小时,借助数据输出装置,压缩数据通过数据输出装置输出到数据记录装置。因此,借助数据记录装置,压缩数据被记录在记录介质上。
另一方面,若判断装置的判断结果是0<ε<β/(β-1)时,即,实质上压缩数据的数据长与输入数据的数据长相同或更大时,通过数据输出装置,将压缩前数据输出到数据记录装置。由此,借助数据记录装置将压缩前数据记录到记录介质上。
这样,在上述结构的数据记录装置中,实质上压缩数据的数据长与输入数据的数据长相同或更大时,由于对输入数据未实施数据压缩的原始数据(即压缩前数据)记录在记录介提上,在读出该数据时,不必进行其后的解压缩处理,能大幅度地提高从记录介质进行数据读出的速度。
在本发明的数据记录装置中,以用上述输入数据的数据长决定的单位逻辑存贮块为基准,将在上述输入数据中所定义的地址作为逻辑地址,用数据压缩处理装置以与上述预测压缩率β相同的实际压缩率ε对上述输入数据进行数据压缩处理,将由压缩处理后的压缩数据的数据长决定的单位物理存贮块作为基准,将由在上述记录介质上记录上述压缩数据时的地址分配而定义的地址作为物理地址时,指定与上述输入数据有关的压缩数据或压缩前数据的写入物理地址,将上述压缩数据或压缩前数据输出到上述数据记录装置,这样来构成上述数据输出装置。这时进行以下的工作。
即,首先用数据压缩处理装置将1物理存贮块部分的输入数据进行数据压缩,作为1物理存贮块部分或2个以上的物理存贮块部分的压缩数据保持在数据保持装置,再将对输入数据未实施压缩处理的数据作为1逻辑存贮块部分的压缩前数据保持在数据保持装置。
随后用判断装置判断数据压缩处理装置的实际压缩率ε与预测压缩率β的关系,此判断装置的判断结果是ε≥β/(β-1)时,即实质上压缩数据的尺寸(物理存贮块数)比输入数据的尺寸(构成1逻辑存贮块的物理存贮块数)小时,借助数据输出装置,指定写入物理地址并向数据记录装置输出上述压缩数据。据此,借助数据记录装置将压缩数据记录在记录介质中与该写入物理地址对应的区域。
判断装置的判断结果是0<ε<β/(β-1)时,即实质上压缩数据的尺寸(物理存贮块数)与输入数据的尺寸(构成1逻辑存贮块的物理存贮块数)相同或更大时,借助数据输出装置,指定写入物理地址,并将压缩前数据输出到数据记录装置。据此,用数据记录装置将压缩前数据记录到记录介质上的与该写入物理地址对应的区域。
这时,实质上压缩数据的尺寸(物理存贮块数)与输入数据的尺寸(构成1逻辑存贮块的物理存贮块数)相同或更大时,由于对输入数据不实施数据压缩的原始数据(压缩前数据)记录在记录介质上,所以在读出该数据时,不必进行其后的解压缩处理,能大幅度地提高从记录介质上读出数据的速度。
本发明的数据记录装置,在上述结构中,分配对应表对应着上述输入数据的读出逻辑地址,和与该输入数据有关的压缩数据或压缩前数据的写入物理地址,并设置将所说的分配对应表记录到记录介质上的规定区域的记录装置。
据此,数据输出装置按照用判断装置判断的判断结果有选择地将压缩数据或压缩前数据,指定写入物理地址,输出到数据记录装置时,此输出装置,参照与该输入数据的读出逻辑地址对应的写入物理地址,进而指定该参照的写入物理地址,从分配对应表输出压缩数据或压缩前数据。
这时,在数据输出装置,由于用分配对应表能很容易地确认在外部(例如主机)处理的逻辑地址与在数据记录装置处理的物理地址的对应关系,连接在外部的主机不必管记录介质的物理地址,只用逻辑地址就能对数据记录装置进行数据的存取。
本发明的数据记录装置在上述结构中,按照记录在上述分配对应表上的物理地址,设置表制作装置而构成,所说的表制作装置用以制作将上述记录介质的数据状态记录以物理存贮块单位作为比特信息展开而构成的状态记录表。
据此,用数据输出装置将压缩数据或压缩前数据指定写入物理地址,输出到数据记录装置时,能参照用表制作装置制成的记录状况表的比特信息求出物理地址。
这时,由于能以单纯的I/O的比特单位掌握其记录状况,所以能比参照直接记录在分配对应表上的物理地址寻找写入物理地址更能缩短该检索时间,而且,与从数据上有复杂的比特结构的物理地址掌握该记录状况的情况相比,能缩短在程序调试、系统维护等方面所花费的时间。
本发明的数据记录装置在上述结构中,具备以物理存贮块单位检索记录介质上的实质上未记录区并检测该未记录区的物理地址的个别区域检索装置,指定用个别区域检索装置检出的未记录区域的物理地址,将压缩数据或压缩前数据输出到数据记录装置,这样来构成数据输出装置。
据此,首先用个别区域检索装置以物理存贮块单位检索记录介质的实质上未记录的区域并检测出该未记录区的物理地址。
随后借助数据输出装置,指定用个别区域检索装置检出的物理地址作为写入物理地址,将压缩数据或压缩前数据输出到数据记录装置。据此,用数据记录装置,在记录介质上的与该写入物理地址对应的区域上记录压缩数据或压缩前数据。
这时,在单位物理存贮块部分的未记录区域上随机记录压缩数据或压缩前数据,特别是在有单位物理存贮块部分的尺寸的压缩数据或压缩前数据的记录中是有利的。在跨越2个以上的物理存贮块的压缩数据或压缩前数据的场合,存在记录到以物理存贮块单位分离的物理位置上的情况。
本发明的数据记录装置在上述结构中,当数据压缩处理装置的实际压缩率ε小于予测压缩率β,而且所得到的压缩数据跨越2个以上的物理存贮块时,设置以连续的2个以上的物理存贮块单位检索记录介质上的实质上未记录区域并检测示出该未记录区的物理地址的连续区检索装置,指定用连续区检索装置检出的未记录区的物理地址,将压缩数据或压缩前数据输出到数据记录装置,这样构成数据输出装置。
据此,首先用连续区检索装置以两个以上的物理存贮块单位检索记录介质上的实质上成为未记录区的区域,并检出该未记录区的物理地址。
然后,借助数据输出装置,指定用连续区检索装置检出的物理地址作为写入物理地址,向数据记录装置输出跨越2个以上物理存贮块的压缩数据或压缩前数据。据此,用数据记录装置将压缩数据或压缩前数据记录在记录介质上的与该写入物理地址对应的连续的区域上。
这时,就成为跨越2个以上的物理存贮块的压缩数据或压缩前数据记录在连续的未记录区域上,而不会是跨越2个以上物理存贮块的压缩数据或压缩前数据以物理存贮块单位记录在分离的物理位置上,能有效地缩短读出时的查找时间。
在本发明的数据记录装置中,像下述这样来构成该数据记录装置所用的分配对应表,它配置有第一登录区和第二登录区,其中第一登录区与读出逻辑地址对应地记录输入数据的读出逻辑地址和与该输入数据有关的压缩数据或压缩前数据的物理存贮块单位的写入物理地址;第二登录区,用以在压缩数据或压缩前数据跨越2个以上的物理存贮块时,除该前头的物理存贮块外,记录各物理存贮块的物理地址作为连接地址,在第二登录区中与最终物理存贮块对应的区域上记录无连接地址的信息和表示在记录介质上记录的数据是压缩数据还是压缩前数据的判断数据。
在本发明的数据记录装置中,按数据压缩处理装置的实际压缩率ε与预测压缩率β的关系,有选择地将压缩数据或压缩前数据记录在记录介质上,这时,重新需要用以区别压缩数据或压缩前数据的信息。
而且在此发明中,由于在分配对应表的第二登录区中与最终物理存贮块对应的区域上,合并无连接地址的信息,记录用以区别压缩处理或非压缩处理的判断数据,所以不必在记录介质上重新确保用以登录此判断数据的区域,能避免数据记录容量缩小这样的问题。
本发明的数据传输装置和数据记录装置,不限于以下所示的实施例,当然能采用不超出本发明的要旨的各种结构。
下面,关于本发明的数据传输方法是按照所保持的压缩前数据与对该压缩前数据进行数据压缩处理得到的压缩数据的各数据长和设定条件,判断应传输的数据,按照此判断结果,传送上述压缩前数据和上述压缩数据中任何一种数据。
例如,满足上述设定条件时,传送压缩数据,未满足上述设定条件时传送压缩前数据。
结果,能防止出现压缩数据在数据传输端的存储区上占有的大小与压缩前数据在存储区上占有的大小大体相同这样的现象,可以避免在数据传输端进行无用的解压缩处理这样不良情况。
这里,上述判断也可是按照作为压缩前数据的数据长与压缩数据的数据长之差的实际差值及规定的设定差值来进行,上述实际差值大于上述设定差值时传输压缩数据,上述实际差值小于上述设定差值时传输压缩前数据。
上述判断还可以是按照作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率和规定的设定压缩率来进行,上述实际压缩率大于上述设定压缩率时传输压缩数据,上述实际压缩率小于上述设定压缩率时传输压缩前数据。
在上述数据传输方法中,还可以是,当上述判断结果是作为上述压缩前数据的数据长与压缩数据的数据长之差的实际差值大于规定的设定差值而且作为压缩前数据的数据长对压缩数据的数据长之比率的实际压缩率也大于规定的设定压缩率时,传输压缩数据,除此以外的情况传输压缩前数据。
这时,即使实际差值大于设定差值,而实际压缩率小于设定压缩率时,即如果其数据长与压缩前数据长几乎不变的话,则不传输压缩数据,而是传输压缩前数据。这时,在数据传输端由于不进行需要处理时间的解压缩处理,所以不发生时间的浪费。因此,能更进一步提高系统综合的性能。
而且,上述判断还可以是,按作为上述压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率满足预先设定的2个条件中的任一个条件来进行,上述实际压缩率满足一个条件时传输压缩前数据,上述实际压缩率满足另一条件时传输压缩数据。
这时,作为上述2个条件,当将压缩前数据进行数据压缩,将压缩率所期望的值设为期望压缩率β时,能使上述一个条件为0<实际压缩率ε<β(β-1),上述另一条件为实际压缩率ε≥β(β-1)。
可以将上述设定压缩率或上述设定差值以及上述设定压缩率和上述设定差值变更到任意值。这时能将出厂阶段的设定差值和设定压缩率变更成用操作者(用户)所建立的系统(硬件和软件)在逻辑上或实验上求出的设定差值和设定压缩率。结果,能用对操作者(用户)所建立的系统最适合的压缩条件压缩数据,从而能提高文件管理质量。这有助于提高系统的综合性能。
本发明的数据传输方法,按照对所操作的压缩前数据中的一部分压缩前数据进行压缩处理得到的一部分压缩数据的数据长和上述一部分压缩前数据的数据长以及设定条件,判断应传输的数据,按照此判断结果,传输上述压缩前数据与压缩数据中的任一种数据。
例如,满足上述设定条件时,传输压缩数据,未满足上述设定条件时,传输压缩前数据。
结果,能防止出现压缩数据在数据传送端的存储区上占有的大小与压缩前数据在存储区上占有的大小大体相同这样的现象,从而能避免在数据传送端进行无用的解压缩处理这样的不良情况。
在此方法中,由于不是对压缩前数据全部进行数据压缩,而是按照将压缩前数据的一部分进行数据压缩得到的一部分压缩数据的数据长和上述一部分压缩前数据的数据长以及设定条件,判断应传送的数据应是压缩数据还应是压缩前数据,所以能缩短数据压缩所花费的时间。
而且在上述方法中,可以按顺序删除按上述数据压缩处理进行过压缩处理的压缩前数据。这时能提高压缩前数据保持装置的利用效率,能避免例如因容量溢出导致系统停止等。
作为上述判断,是按照作为上述一部分压缩前数据的数据长对上述一部分压缩数据的数据长的比率的预测压缩率和规定的设定压缩率来进行,上述预测压缩率大于上述设定压缩率时传送压缩数据,上述预测压缩率小于上述设定压缩率时传送压缩前数据。
上述判断结果表示传输压缩前数据时,可以对已向上述一部分压缩前数据进行过压缩处理以后的压缩前数据不进行压缩处理。这时,由于对已判断应传送的数据为压缩前数据时刻后的压缩前数据不进行数据压缩处理,能缩短整体的处理时间(从对压缩前数据进行数据压缩处理阶段到传输压缩前数据或压缩数据的时间)。
可以对上述预测压缩率进行与数据种类对应的加权。这时,不管压缩前数据的种类是什么,都能使预测压缩率与预想的最终压缩率间的误差变小,从而能提高系统的综合性能。
可以将上述设定压缩率变更为任意值。这时,能将出厂阶段的设定压缩率变更为用操作者(用户)建立的系统(硬件或软件)在逻辑上或实验上求出的设定压缩率。结果,能用对操作者(用户)建立的系统最适当的数据压缩条件压缩数据,从而能提高文件管理的质量。这有助于系统综合性能的提高。
其次,本发明的数据记录方法,按照对输入数据不进行数据压缩处理的压缩前数据与对上述输入数据进行数据压缩处理所得到的压缩数据的各数据长和设定条件,判断应记录的数据,按照此判断结果,将压缩前数据与压缩数据中的任一种数据记录到记录介质上。
例如,满足上述设定条件时,在记录介质上记录压缩数据,未满足上述设定条件时,在记录介质上记录压缩前数据。
结果,能防止出现压缩数据在数据传输端的存储区上占有的大小与压缩前数据在存储区上占有的大小大体相同的这样的现象,从而能避免从记录介质上读出数据时进行无用的解压缩处理这样不良情况。
即,在记录于记录介质上的数据中,对进行数据压缩的实际压缩率不满足设定条件的记录数据可以不必进行解压缩处理,所以能大幅度提高从记录介质上读出数据的速度。
这里,作为在上述判断装置的判断处理,是按照作为压缩前数据的数据长与压缩数据的数据长之差的实际差值和规定的设定差值来进行,上述实际差值大于上述设定差值时,将表示输出压缩数据的判断结果输出到数据输出装置,上述实际差值小于上述设定差值时,将表示输出压压缩前数据的判断结果输出到数据输出装置。这时,实际差值大于上述设定差值,在记录介质上记录压缩数据,上述实际差值小于上述设定差值时,在记录介质上记录压缩前数据。
上述判断也可以是按照作为压缩前数据的数据长与压缩数据的数据长之差的实际差值和规定的设定差值来进行,上述实际差值大于上述设定差值时记录压缩数据,上述实际差值小于上述设定差值时记录压缩前数据。
而且,上述判断还可以是,按照作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率和规定的设定压缩率来进行,上述实际压缩率大于上述设定压缩率时记录压缩数据,上述实际压缩率小于上述设定压缩率时记录压缩前数据。
上述判断结果还可以是,当作为压缩前数据的数据长与压缩数据的数据长之差的实际差值大于规定的设定差值,而且作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率也大于规定的设定压缩率时,记录压缩数据,在除此之外的情况记录压缩前数据。
而且,上述判断还可以是,按照作为上述压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率在预先设定的二个条件中满足任一个条件来进行,上述实际压缩率满足一个条件时记录压缩前数据,上述实际压缩率满足另一条件时记录压缩数据。
作为上述二个条件,当将压缩前数据进行数据压缩时把压缩率所期望的值设为期望压缩率β时,能使上述一个条件为0<实际压缩率ε<β(β-1),上述另一条件为实际压缩率ε≥β(β-1)。这时,当实质上压缩数据的数据长与输入数据的数据长相同或更大时,由于在记录介质上记录未对输入数据进行数据压缩的原始数据(即压缩前数据),所以在读出该数据时,不必进行其后的解压缩处理,从而能大幅度地提高从记录介质上读出数据的速度。
在本发明的数据记录方法中,以在上述方法中用上述输入数据的数据长决定的单位逻辑存贮块为基准,将在上述输入数据中定义的地址作为逻辑地址,将上述输入数据用与上述预测压缩率β相同的实际压缩率ε进行数据压缩处理,将用进行过数据压缩处理后的压缩数据的数据长决定的单位物理存贮块作为基准,作为在上述记录介质上记录上述压缩数据时的地址分配表定义的地址作为物理地址时,指定与上述输入数据有关的压缩数据或压缩前数据的写入物理地址,记录上述压缩数据或压缩前数据。
这时,当实质上压缩数据的尺寸(物理存贮块数)与输入数据的尺寸(构成1逻辑存贮块的物理存贮块数)相同或更大时,由于在记录介质上记录未对输入数据进行数据压缩的原始数据(压缩前数据),所以当读出该数据时,不必进行其后的解压缩处理,能大幅度提高从记录介质上读出数据的速度。
本发明的数据记录方法是将在上述方法中与上述输入数据的读出逻辑地址,和与该输入数据有关的压缩数据或压缩前数据的写入物理地址对应的分配对应表记录到记录介质的规定区域。
这时,由于用分配对应表能很容易地确认逻辑地址与物理地址的对应关系,所以与外部连接的例如主机即使不过问记录介质的物理地址只用逻辑地址也能进行数据的存取。
本发明的数据记录方法,在上述方法中,按照记录在上述分配对应表上的物理地址,制成将上述记录介质的数据状态记录以物理存贮块单位作为比特信息展开而构成的状态记录表。
这时,由于能以单纯的I/O比特单位掌握该记录状况,能比参照直接记录在分配对应表上的物理地址查找物理地址更缩短其检索时间,而且,与从在数据上有复杂的比特结构的物理地址来掌握该记录状况的情况相比,能使花费在程序调试、系统维护等的时间缩短。
本发明的数据记录方法,在上述方法中,以物理存贮块单位检索上述记录介质上的实质上成为未记录区的区域,检测出该未记录区的物理地址,指定此已检出的上述未记录区的物理地址,记录上述压缩数据或压缩前数据。
这时,将压缩数据或压缩前数据随机地记录在单位物理存贮块部分的任意未记录区上,特别是在有单位的物理存贮块部分尺寸的压缩数据或压缩前数据的记录中是有利的。在跨过2个以上的物理存贮块的压缩数据或压缩前数据的场合,存在记录在以物理存贮块单位分离开的物理位置上的情况。
本发明的数据记录方法,在上述方法中,上述实际压缩率小于预测压缩率而且所得到的压缩数据跨越2个以上的物理存贮块时,以连续的上述2个以上的物理存贮块单位检索上述记录介质上的实质上成为未记录区的区域,检测出该未记录区的物理地址,指定此已检出的上述未记录区的物理地址,记录上述压缩数据或压缩前数据。
这时,跨越2个以上的物理存贮块的压缩数据或压缩前数据就记录在连续的未记录区上,跨越2个以上的物理存贮块的压缩数据或压缩前数据不会记录在以物理存贮块单位分离的物理位置上,因而能有效地缩短读出数据时的查找时间。
在本发明的数据记录方法中,使在该数据记录方法中所用的上述分配对应表有第一登录区和第二登录区,其中第一登录区,用以与上述读出逻辑地址对应地记录上述输入数据的上述读出逻辑地址和与上述输入数据有关的压缩数据或压缩前数据的物理存贮块单位的写入物理地址;第二登录区,用以在上述压缩数据或压缩前数据跨越2个以上的物理块时,除其前头的物理存贮块外,各物理存贮块的物理地址,分别作为连接地址记录,将无连接地址的信息和表示记录在上述记录介质上的数据是压缩数据还是压缩前数据的判断数据登录在上述第二登录区中与最终物理存贮块对应的区域上。
在本发明的数据记录方法中,按数据压缩处理的实际压缩率ε与预测压缩率β的关系,有选择地将压缩数据或压缩前数据记录到记录介质上,这时,重新需要用以区别压缩数据和压缩前数据的信息。
而且,在此发明中,由于合并无连接地址的信息,将用以区别压缩数据或压缩前数据的判断数据登录在分配对应表的第二登录区中与最终物理存贮块对应的区域,所以不必在记录介质上重新确保用以记录此判断数据的区域,能避免使记录容量缩小这样的问题。
本发明的数据传输方法和数据记录方法不限于以下所示的实施例,只要不超出本发明的要旨,当然能够采用各种结构。


图1是概括地表示本发明的数据传输装置的使用状态的方框图;图2是表示本发明的数据传输装置的第一使用状态的方框图;图3是表示本发明的数据传输装置的第二使用状态的方框图;图4是表示本发明的数据传输装置的第三使用状态的方框图;图5是表示本发明的数据传输装置的第四使用状态的方框图;图6是表示本发明的数据传输装置的第五使用状态的方框图;图7是表示本发明的数据传输装置的第六使用状态的方框图;图8是表示本发明的数据传输装置的实施例硬件结构的方框图;图9是在本发明的数据传输装置实施例中,表示在进行第一处理操作的实施例(以下简记为第一实施例的数据传输装置)中其数据处理装置的数据处理操作的功能方框图;图10是表示在第一实施例的数据传输装置中的数据处理装置的处理操作的流程图(其一);图11是表示在第一实施例是数据传输装置中的数据处理装置的处理操作的流程图(其二);图12是在本发明的数据传输装置的实施例中,表示在进行第二处理操作的实施例(以下简记为第二实施例的数据传输装置)中其数据处理装置的处理操作的功能方框图;图13是表示在第二实施例的数据传输装置中其数据处理装置的处理操作的流程图(其一);图14是表示在第二实施例的数据传输装置中的数据处理装置的处理操作的流程图(其二);图15是在第二实施例的数据传输装置的数据处理装置中,表示预测压缩率运算处理装置的处理操作的功能方框图;图16是在第二实施例的数据传输装置的数据处理装置中,表示预测压缩率运算处理装置的处理操作的流程图;图17是在第二实施例的数据传输装置的数据处理装置中,表示数据压缩处理装置的处理操作的功能方框图;图18是在第二实施例的数据传输装置的数据处理装置中,表示数据压缩处理装置的处理操作的流程图;图19是在本发明的数据传输装置的实施例中,表示编入进行第三处理操作的实施例(以下简记为第三实施例的数据处理装置)的外部存储装置(以下简记为实施例的外部存储装置)的结构的方框图;图20是表示第三实施例的数据处理装置的硬件结构的方框图;图21是表示装在实施例的外部存储装置中的磁光盘的记录格式的一个例子的说明图;图22是在记录在磁光盘的属性数据记录区域的属性数据中,用字节结构表示DDS段的内容的说明图;图23是在记录在磁光盘的属性数据记录区域的属性数据中,表示DDS段的内容、特别是对应分配表(文件分配表)的内容的说明图;图24是表示在第三实施例的数据处理装置的处理操作的功能方框图;图25是表示在第三实施例的数据处理装置中的数据处理装置的处理操作的流程图。
图26是在第三实施例的数据处理装置的数据处理单元中,表示状态记录表制作装置的处理操作的流程图。
图27是表示用状态记录表制作装置制成的状况记录表的内容的说明图。
图28是在第三实施例的数据处理装置的数据处理单元中,表示请求处理装置的处理操作的流程图。
图29是在第三实施例的数据处理装置的请求处理装置中,表示初始化处理装置的处理操作的功能方框图。
图30是在第三实施例的数据处理装置的请求处理装置中,表示初始化处理装置的处理操作的流程图。
图31是在第三实施例的数据处理装置的初始化处理装置中,表示属性数据写入处理装置的处理操作的流程图。
图32是在第三实施例的数据处理装置的请求处理装置中,表示写入处理装置的处理操作的功能方框图。
图33是在第三实施例的数据处理装置的请求处理装置中,表示写入处理装置的处理操作的流程图。
图34是在第三实施例的数据处理装置的写入处理装置中,表示FAT(文件分配表)制作装置的处理操作的流程图(其一)。
图35是在第三实施例的数据处理装置的写入处理装置中,表示FAT制作装置的处理操作的流程图(其二)。
图36是在第三实施例的数据处理装置的FAT制作装置中,表示地址存储处理装置的处理操作的流程图。
图37是在第三实施例的数据处理装置的写入处理装置中,表示数据输出装置的处理操作的流程图。
图38是在第三实施例的数据处理装置的请求处理装置中,表示读出处理装置的处理操作的功能方框图。
图39是在第三实施例的数据处理装置的请求处理装置中,表示读出处理装置的处理操作的流程图。
图40是在第三实施例的数据处理装置的请求处理装置中,表示数据删除处理装置的处理操作的功能方框图。
图41是在第三实施例的数据处理装置的请求处理装置中,表示数据删除处理装置的处理操作的流程图。
图42是对应着磁光盘上的物理上的未记录数据记录容量的减少而使预测压缩率β变小的表示其外观上的逻辑数据记录容量的特性图。
图43是用来说明用非损失的数据压缩技术进行数据压缩的数据传送时间图。
图44是用以说明用低压缩率进行数据压缩的数据传送时间图。
下面将参照图1-图42说明本发明的数据传输装置的优选实施例。
此实施例的数据传输装置1,如图1所示插入并连接数据输出源2与数据输出端3之间构成,上述数据输出源2与数据输出端3,包括诸如通过模拟电路系统对所输入的模拟信号或数字数据进行信号处理,或者通过数字电路进行数据处理,或者用带CPU的计算机按照预定的处理步骤(程序)进行数据处理并通过已知的接口电路供给传输线(由金属线、光纤构成)的数据处理系统。
数据输出源2和数据输出端3除上述以外,在作为分别安装在印刷电路板上的1片LSI时,或作为通信设备和内部有存储介质(半导体存储器等大容量型存储器、光盘等圆盘形记录介质)的外部存储装置时,也包括集中管理处理数据的主机。
现在按照图2-图7说明上述数据传输装置1的一些使用状态的具体例子。
首先,图2所示的例子是按照来自控制器12的控制,通过数据传输装置1进行在一个存储器11内在逻辑上分成的多个文件间的数据传输(数据读出和写入)的例子。
具体地说,按此使用状态的结构,是通过数据总线13连接存储器11和数据传输装置1,通过控制总线14和数据总线15连接控制器12和数据传输装置1,通过存储用控制总线16和地址总线17连接存储器11和控制器12,通过接口总线19连接控制器12和键盘等键输入装置18来构成。
例如,通过操作键输入装置18,输入数据输出源的文件名和数据输出端的文件名,从控制器12对数据传输装置1传送数据传送请求指令,同时向存储器11输出与上述已输入的数据输出源的文件名对应的地址和读出允许信号。
据此,数据从存储器11的输出源文件通过数据总线13传送到数据传输装置1。数据传输装置1像下面将详细说明的那样,将从存储器11传送的数据进行压缩处理或不进行压缩处理传送到存储器11。这时,在再传送之前,先从数据传输装置1向控制器12输出传送请求信号。控制器12按照来自数据传输装置1的发送请求信号的输入,向存储11输出与上述已输入的数据输出端的文件名对应的地址和写入允许信号。
因此,从数据传输装置1输出的压缩数据或未压缩数据(为方便记为非压缩数据)通过数据总线13供给存储器11,并写入上述数据输出端的文件。
下面图3所示的例子,是例如在二个存储器21和22中,按照来自控制器12的控制信号,通过数据存储装置1,进行在一个存储器21内逻辑分开的多个文件和在另一存储器22内逻辑分开的多个文件之间的数据传输(数据的读出和写入)的例子。
具体地说,按照这种使用状态的结构是这样构成的,即分别通过数据总线23和24使用存储器21和22分别与数据传输装置1连接,通过控制总线14和数据总线15使控制器12与数据传输装置1连接,通过存储器用控制总线25、26和地址总线27、28使各存储器21和22与控制器12连接,通过接口总线19使控制器12与键输入装置18连接。
例如,通过操作键输入装置18,输入数据输出源存储器21的设备号与文件名,以及数据输出端的存储器22的设备号与文件名,从控制器12向数据传输装置1传送数据发送请求指令,同时分别通过地址总线27和控制总线25,向与上述已输入的输出源设备号对应的存储器21,输出与当前文件名对应的地址和读出允许信号。
由此,通过数据总线23数据从数据输出源存储器21中的该文件,传送到数据传输装置1。数据传输装置1将从该存储器21传送的数据进行压缩处理或不进行压缩处理,再发送到数据输出端的存储器22。这时,在向数据输出端的存储器22发送之前,先从数据传输装置向控制器12输出发送请求信号。控制器12按照来自数据传输装置1的发送请求信号的输入,向与上述已输入的数据输出端的设备号对应的存储器22,通过地址总线28和控制总线26,输出与成为当前文件名相对应的地址和写入允许信号。
因此,从数据传输装置1输出的压缩数据或非压缩数据通过数据总线24提供给数据输出端的存储器22,并写入该输出端的文件。
图4所示的例子是数据传输装置1插入连接在二个通信设备(包括计算机终端装置)31与32之间作为其中继装置,按照来自控制器12的控制信号,通过数据传输装置1进行各通信设备31和32之间的数据传输的实例。而且各通信设备31和32具有将提供给数据输入/输出端子上的通信数据分别存储到存储器3 3和34的功能。
具体说来,这种使用状态的结构是这样构成的,即通过各自的数据通信线(包括网络通信网)35使各通信设备31和32与数据传输装置1连接,通过控制总线14和数据总线15使控制器12与数据传输装置1连接,通过各自的控制电缆36和37使各通信设备31和32与控制器12连接,通过接口总线19使控制器12与键输入装置18连接。
例如,通过操作键输入装置18,输入数据输出源通信设备31的设备号和数据输出端的通信设备32的设备号,从控制器12向数据传输装置1传送数据发送请求指令,同时通过控制电缆36向与上述已输入的数据输出源设备号对应的通信设备31输出数据输出请求信号。
因此,存储在设在输出源通信设备31内的存储器33中的通信数据,通过数据通信通路35,传送到数据传输装置1。数据传输装置1将从该通信设备31传送的数据进行压缩处理或不进行压缩处理,再通过数据通信通路35传送到数据输出端的通信设备32。这时,在向数据输出端的通信设备32传送之前,先从数据传输装置1向控制器12输出发送请求信号。控制器12按照来自数据传输装置1的发送请求信号的输入,向与上述已输入的数据输出端的设备号对应的通信设备32通过控制电缆37输出数据存储请求信号。
因此,从数据传输装置1输出的压缩数据或非压缩数据通过数据通信通路35提供给输出端的通信设备32,并存储到设在该通信设备32内的存储器34中。
图5所示的例子,是在一块印刷电路板内,将数据传输装置1插入连接在二个微处理器41和42之间,按照来自控制器12的控制信号,通过数据传输装置1进行各微处理器41和42之间的数据传送的例子。各微处理器41和42有将供给数据输入、输出端的处理数据存储到各自的存储器43和44的功能。
具体地,用这种使用状态的结构是这样构成的,即通过各自的数据总线45和46使各微处理器41和42与数据传输装置1连接,通过控制总线14和数据总线15使控制器12与数据传输装置1连接,分别通过控制总线47和48使各微处理器41和42与控制器12连接,通过接口总线19使控制器12与键输入装置18连接。
例如,通过操作键输入装置18,输入数据输出源微处理器41的设备号和数据输出端的微处理器42的设备号,从控制器12向数据传送装置1传送数据发送请求指令,同时通过控制总线47向与上述已输入的数据输出源的设备号对应的微处理器41输出数据输出请求信号。
因此,在输出源的微处理器41内,存储在通过总线49连接的存储器43中的数据通过数据总线45传送到数据传输装置1。数据传输装置1将由该微处理器41传输的数据进行压缩处理或不进行压缩处理,再发送到数据输出端的微处理器42。这时,在向数据输出端的微处理器42发送数据之前,先从数据传输装置1向控制器12输出发送请求信号。控制器12按照来自数据传输装置1的发送请求信号的输入,向与上述已输入的输出端的设备号对应的微处理器42输出数据存储请求信号。
因此,由数据传输装置1输出的压缩数据或非压缩数据通过数据总线46供给输出端的微处理器42,并存储到通过总线50与该微处理器42连接的存储器44中。
图6所示的例子是例如利用数据传输装置1,对主机51与外部存储装置52之间的数据传输的结构,这时是将上述数据传输装置1作为数据处理装置组装在主机51内的实例。
具体地说,用这种使用形态的结构是这样构成的,即通过数据总线、控制总线以及输入输出口54,使主机51内的CPU53与数据传输装置1连接,通过接口总线55使数据传输装置1与外部存储装置52连接。
例如,通过操作与主机51连接的键输入装置18,输入在数据输出源主机51内的数据RAM56分开的文件(原文件、可执行文件等)的文件名和数据输出端的外部存储装置52的设备号,从主机51内的CPU53向数据传输装置1传送数据发送请求指令,同时通过地址总线和控制总线向数据RAM56输出与上述已输入的文件名对应的地址和读出允许信号。
由此,数据从在输出源数据RAM 56中的文件,通过数据总线和输入输出口54传送到数据传输装置1。数据传输装置1将由该数据RAM56发送的数据进行压缩处理或不进行压缩处理,再通过接口总线55发送到与上述已输入数据的数据输出端的设备号对应的外部存储装置52。这时,在向外部存储装置52发送之前,先由数据传输装置1向主机51的CPU53输出发送请求信号。主机51按照来自数据传输装置1的发送请求信号的输入,向与上述已输入的数据输出端的设备号对应的外部存储装置52,输出数据存储请求信号。
因此,由数据传输装置1输出的压缩数据或非压缩数通过接口总线55提供给输出端的外部存储装置52,并存储到装在该外部存储装置52内的记录介质(光盘、磁盘、半导体存储器等)上。
图7所示的例子是在例如主机51与外部存储装置52之间的数据传输中利用上述数据传输装置1,这时是将上述数据传输装置1作为数据处理装置装在外部存储装置52内的实例。此例的具体结构及工作将在后面详细说明。
下面将按照图8-图18说明适用于上述图2-图7所示例子的数据传输装置1的具体结构及其处理操作。并且在对图8-图18的说明中,图2中所示的存储器11内的各文件、图3中所示的存储器21与22、图4中所示的通信设备31和32、图5中所示的微处理器41与42、以及图6中所示的主机51与外部存储装置52,分别统称为如图1所示记为数据输出源2和数据输出端3。
首先,数据处理装置1的硬件结构如图8所示是由如下各部分构成存储各种程序的程序ROM61;预先记录各种数据的ROM62;从上述程序ROM61读出的,为程序运行用的RAM63;存储来自数据输出源2的数据、来自控制器12的控制信号、键输入数据(来自键输入装置18的数据)、以及用各种程序进行数据处理的数据等的数据RAM64;向外部电路(数据输出源2、数据输出端3和控制器12等)进行数据的输入输出的输入口65和输出口66;将存储在数据RAM64中的数据进行压缩处理并存储到数据RAM64的规定区域的数据压缩电路67;分别控制这些电路的CPU(控制装置和逻辑运算装置)68。
上述数据压缩电路67是利用缓冲存储器69对使所供给的数据进行无数据损失即非损失型的数据压缩的电路,例如由微计算机等构成。并且,由于数据压缩电路67的非损失数据压缩技术本身与此发明无直接关系,不再详细说明,例如可以使用按LZW结构的压缩技术。简单地说明按此LZW法的压缩技术,它是利用将输入文字(数据)列,例如在公知的例子中将“RINTINTIN,”变换成代码的变换表的方式。
即方法为,读出输入字符串并预先登录到词典(以下也称为基本变换表)上,例如将26个字母文字变换成代码(进行编码),将未登录到此基本变换表的的字符串制作新的词典(以下也称为编制变换表),一边更新并利用此编制变换表一边压缩输入文字列,同时在解压缩时,换言之即在译码时一边由压缩文字列制作编制变换表一边解压缩文字。
所以,上述各种电路构成是通过由CPU68引出的数据总线DB进行各电路间的数据的交接,特别是通过由CPU68引出的控制总线(图中未绘出)分别用CPU68进行控制来形成的。
来自控制器12的键输入数据、控制信号以及来自数据输出源2的输出数据通过输入口65提供给数据总线BD。
存储在数据RAM64的并向数据输出端3传送的数据(压缩数据或非压缩数据)通过输出口66提供给数据输出端3,存储在数据RAM64的并向控制器12传送的请求信号等通过输出口66供给控制器12。
而且,此数据传输装置1在用数据压缩电路67压缩由数据输出源2发送的数据时,其压缩率,或者压缩前的数据(以后简记为压缩前数据。此压缩前数据与以前出现的非压缩数据意义相同)的数据长度与压缩后的数据(以后简记为压缩数据)的数据长度的差值在规定值以上时将压缩数据发送到数据输出端3,上述压缩率或上述差值未达到规定值时,将压缩前数据传送到数据输出端3。
例如,在对以固定长512字节的存贮块单位存储数据的光盘、磁盘等进行随机存取的外部存储装置中存储数据时,在向此数据传输装置1输入1K字节的非压缩数据的情况下,如果非压缩数据的数据长与压缩数据的数据长的差值在512字节以上,则有能节约盘上的空间的效果。
因而在这样的情况下,求出非压缩数据的数据长与压缩数据的数据长的差值,判断该差值(实际差值)是否在规定值以上例如是否在512字节以上,如上述实际差值在512字节以上就将压缩数据输出到外部存储装置,如上述实际差值不足512字节,就将非压缩数据输出到外部存储装置。
当以缩短主机51与例如上述外部存储装置52之间的数据发送时间为目的时,求出非压缩数据的数据长对压缩数据的数据长的比率(实际压缩率)。即,由于数据压缩/解压缩所需的时间不是固定的,它随数据的大小而不同,这种情况下不能像上述那样用非压缩数据与压缩数据的实际差值进行判断,而是用实际压缩率进行判断。
而且,判断该所求得的实际压缩率是否在预先从理论上或实验上求出的压缩率(设定压缩率)以上,如上述实际压缩率在该设定压缩率以上,就向外部存储装置52输出压缩数据,如上述实际压缩率未达到设定压缩率就向外部存储装置52输出非压缩数据。
在上述非压缩数据与压缩数据中,判断对下面的处理(在上述例子中是向外部存储装置输出的处理)使用哪种数据在此判断所用的上述这样的设定差值、设定压缩率的具体值当然随使用压缩数据的体制而不同。例如数据压缩/解压缩所需的时间随硬件或软件而不同,所以上述设定差值、设定压缩率的具体数值也随硬件或软件而不同。
因此,在此数据处理装置1中,能预先按规格决定上述设定差值和设定压缩率的具体值,然后,想变更上述设定差值和设定压缩率的具体值时,操作者(用户)任何时候都能使用与控制器12连接的键输入装置18来变更。
更具体地,按照图9-图18的功能方框图和流程图说明关于上述数据传输装置1的处理工作的二个例子。按照图9-图11对进行上述处理操作的一种实例的数据传输装置(以下记为第一实施例的数据传输装置)进行说明。
首先,此第一实施例的数据传输装置1,在图10所示的步骤S1中,在接通电源的同时进行初始化操作,例如数据传输装置1内的系统校验、存储器校验和设定等。
然后,在步骤S2中,从程序ROM61读出数据处理装置71(数据处理程序将来自数据输出源2的数据进行压缩处理或不进行压缩处理,输出到数据输出端3的装置参照图9)并写入操作用RAM63,同时在该程序的操作中,为暂存所产生的数据,在操作RAM63中为在构成上述程序的各分程序间的参数的交接等使用的操作区域分配空间。
在数据RAM64上分别分配为存储来自数据输出源2的压缩前数据的压缩前数据存储区、存储来自数据压缩电路67的压缩数据的压缩数据存储区、存储来自数据ROM62的各种固定数据的固定数据存储区。
固定数据存储区有存储预先按规格设定的差值(设定差值α)的差值存储区,和存储预先按规格设定的压缩率(设定压缩率β)的压缩率存储区。按上述设定差值α和设定压缩率β的规格决定的值是例如512字和4/3。
在此步骤S2中,除上述程序的发送处理外,还进行从数据ROM62读出各种固定数据并存储到固定数据存储区这样的处理。这时,记录在数据ROM62中的设定差值α和设定压缩率β分别存储到差值存储区和压缩率存储区。由于设定差值α是字节单位的值(自然数),所以作为定点数据存储;由于设定压缩率β是实数值,所以作为浮点数据存储。
在上述操作用RAM63读出的数据的处理程序71如图9所示,由以下各部分构成进行各种判断的判断装置72;接收通过输入口65从控制器12输入的键输入数据并存储到数据RAM64的规定的存储区的键输入数据接收装置73;接收从数据输出源2通过输入口65输入的压缩前数据并存储到数据RAM64的压缩前数据存储区的压缩前数据接收装置74;接收从数据压缩电路67输出的压缩数据并存储到数据RAM64的压缩数据存储区的压缩数据存储装置75;按照压缩前数据的数据长与压缩数据的数据长分别运算实际差值与实际压缩率的差值。压缩率计算装置76;通过输出口66向控制器12输出发送请求信号的发送请求信号输出装置77;编制用以将压缩前数据或压缩数据发送到数据输出端3的发送请求数据的发送请求数据制作装置78;用以将已制成的发送请求数据通过输出口66输出到数据输出端3的发送请求数据输出装置79;向控制器12输出与信息有关的信息代码的信息输出装置80。
而且,首先,此数据处理程序71在图10的步骤S3中,通过判断装置72进行是否有来自控制器12的发送请求的判断。这种判断是按是否有从控制器12输出的发送请求指令的输入中断来进行。在该步骤S3中,直到输入来自控制器12的上述传送请求指令为止,反复进行。即等待发送请求。
有发送请求时,进到下一步骤S4,通过判断装置72进行是否有键输入的判断。这种判断是按照表示有来自控制器12的键输入中断的信息信号的输入来进行。
此信息信号是按照通过操作者操作键盘等键输入装置18产生的键输入中断,从控制器12输出的,特别是操作者一边看着在与控制器12连接的图中未示出的监测器装置(CTR、液晶显示器等)的画面上显示的设定程序菜单,一边操作键输入装置18,通过输入文件名、设备号、差值和压缩率等,将上述信息信号从控制器12输出。
有键输入时进到下面的步骤S5,通过键输入数据接收装置73,经输入口65接收由控制器12传送的键输入数据,将所接收的该键输入数据存储到数据RAM 64的固定数据存储区。具体地说,上述键输入数据由于与操作者通过操作输入的差值或压缩率有关,如果键输入数据与差值有关,则将此键输入数据存储到固定数据存储区中的差值存储区中,如果键输入数据与压缩率有关,则将此键输入数据存储到固定数据存储区中的压缩率存储区中。
通过这种处理,在步骤S2中已从数据ROM62读出的设定差值α或设定压缩率β就会由键输入的设定差值α或设定压缩率β被改写。
下面在步骤S6中,通过压缩前数据接收装置74,经输入口65接收来自数据输出源2的压缩前数据,进而将所接收的该压缩前数据存储到数据RAM 64的压缩前数据存储区。通常在数据的传送中,是将包括该数据种类、数据长度等信息的首标附加到传输的数据的先头部分来进行。因而,在此步骤S6中,除了存储上述压缩前数据外,还包括在首标中的压缩前数据的数据长有关的数据存储在第一寄存器R1中(在用于数据处理程序71的各种寄存器中作为第一工作用寄存器而说明的寄存器)。
下面在步骤7中,将存储在上述数据RAM64的压缩前数据存储区的压缩前数据输出到数据压缩电路67。数据压缩电路67对所输入的压缩前数据使用缓冲存储器69进行非损失的数据压缩处理(步骤S8)。
下面在步骤S9中,通过压缩数据存储装置75,读出从上述数据压缩电路67输出的压缩数据并存储到数据RAM64的压缩数据存储区。这时,例如按字节数计算从压缩数据开头到压缩数据末尾的字节数,将此计数结果作为压缩数据的数据长度存储到第二寄存器R2(用于数据处理程序71的各种寄存器中,作为第二工作用寄存器R2说明的寄存器)。
下面在步骤S10中,通过差值压缩率计算装置76,根据压缩前数据的数据长与压缩数据的数据长分别计算实际差值和实际压缩率。实际差值的计算是通过从存储在第一寄存器R1的压缩前数据的数据长减去存储在第二寄存器R2的压缩数据的数据长来进行,此减法值作为实际差值存储在第三寄存器R3(用于数据处理程序71的各种寄存器中,作为第三工作用寄存器R3来说明的寄存器)。而实际压缩率的计算是通过用存储在第一寄存器R1的压缩前数据的数据长除以存储在第二寄存器R2的压缩数据的数据长来进行的,此除法值(例如浮点数据)作为实际压缩率存储在第四寄存器R4(用于数据处理程序的各种存贮器中,作为第四工作用寄存器R4来说明的寄存器)。
下面在图11的步骤S11中,通过判断装置72,判断上述实际差值是否在设定差值α以上。这种判断是根据存储在第三寄存器R3的实际差值与存储在差值存储区的设定差值α来进行。
上述实际差值在设定差值α以上时,进入下一个步骤S12,通过判断装置72,这次判断上述实际压缩率是否在设定压缩率β以上。这一判断是根据存储在第四寄存器R4的实际压缩率与存储在压缩率存储区的设定差值α来进行。
上述实际压缩率在设定压缩率β以上时,进入下一步骤S13,通过传送请求数据制作装置78,制成压缩数据的发送请求数据。具体地说,此发送请求数据在例如数据RAM64上分配的程序工作区的规定的数组变数区(传送请求数据区)上形成,例如由首标部与数据部构成。而且,此请求发送数据制作装置78将表示压缩数据的识别代码和存储在第二寄存器R2的压缩数据的数据长记录在首标部,通过附加压缩数据作为数据部,制成压缩数据用的发送请求数据。
下面在步骤S14中,通过信息输出装置80,经输出口66向控制器12输出表示数据被压缩的信息代码(也可以是表示上述压缩数据的识别代码)。控制器12按照来自数据传输装置1的上述信息代码的输入,将表示数据被压缩的信息数据输出到监测器装置。因此,在监测器装置的画面上显示例如“数据已被压缩”这样的信息。
另一方面,在上述步骤S11中,判断实际差值比设定差值α更小时,或者在上述步骤S12中,判断实际压缩率比设定压缩率β更小时,进入步骤S15,通过发送请求数据制作装置78,制成压缩前数据用的发送请求数据。此发送请求数据在分配在数据RAM 64中的上述发送请求数据区上形成,具体来说,记录在首标部表示压缩前数据的识别代码与存储在第一寄存器R,的压缩前数据的数据长,通过附加压缩前数据作为数据部,制成压缩数据用的发送请求数据。
下面在步骤S16中,通过信息输出装置80,经输出口66将表示数据未被压缩的信息代码(也可以是表示上述压缩前数据的识别代码)输出到控制器12。控制器12按照来自数据传输装置1的上述信息代码的输入,将表示数据未被压缩的信息数据输出到监测器装置。因此,在监测器装置的画面上显示例如“数据未被压缩”这样的信息。
在用上述步骤S14或步骤S16的处理已结束的阶段进入下面的步骤S17,通过发送请求信号输出装置77,经输出口66将发送请求信号输出到控制器12。这时,控制器12向数据输出端3输出用以接收从数据传输装置1发送的数据输入的控制信号(写入允许信号、数据存储请求信号等)。因此,数据输出端3进入等待来自数据传输装置1的数据输入状态。
下面在步骤18中,通过发送请求数据输出装置,经输出口66将存储在数据RAM64的上述发送请求数据区的压缩数据用的或压缩前数据用的传送请求数据输出到数据输出端3。
这时,在通过像数据通信线等这样不安全而会出现传输错误的传输路径向数据输出端3输出数据时,在上述发送请求数据输出装置79中,将错误校正符号附加到上述传送请求数据并输出该传送请求数据。
下面在步骤S19中,通过判断装置72判断是否有程序结束请求。这种判断按是否有电源OFF等结束请求中断发生来进行。
而且,在此步骤S19中,无上述结束请求时,回到步骤S3,等待来自数据输出源2的下一个发送请求,有上述结束请求时,就结束此数据处理程序71。
如此,在上述第一实施例的数据传输装置1中,按照实际差值与设定差值α的比较或者实际压缩率与设定压缩率β的比较来判断将发送到数据输出端3的数据应是压缩数据或者应是压缩前数据,由于根据此判断结果将压缩数据或压缩前数据发送到数据输出端3,能防止进行压缩的数据在数据输出端3上占有的在存储区上的大小与不进行压缩的数据在存储区上占有的大小大体相同这样的现象,能避免在数据输出端3进行无用的解压缩处理这样的不适当的情况。
由于借助键输入能自由变更上述设定差值α和设定压缩率β,所以用操作者(用户)建成的系统(硬件和软件)能将在出厂阶段的设定差值α和设定压缩率β变更为从理论上或通过实验推论出的设定差值α和设定压缩率β。其结果是,能用最适合于操作者(用户)建成的系统的数据压缩条件来压缩数据,从而能提高文件管理的质量。这有利于总系统性能的提高。
在上述步骤S14和S16中,由于在监测器画面上显示数据被压缩或未被压缩的信息,所以用户能一目了然地确认所要求的数据(文件)实际上是否压缩,所以操作性提高。
如上述步骤S11和步骤S12所示,实际差值在设定差值α以上,而且实际压缩在设定压缩率β以上时,最初为传输压缩数据而建成了用逻辑积的判断程序,在以下的情况变得有效。
例如,实际差值在设定差值α以上时,在考虑到将压缩数据传送到数据输出端3这样的程序的情况,使设定差值例如为512字节时,在由数据输出源2供给的压缩前的数据有2K字节数据长情况下,在通过数据压缩使压缩数据的数据长变成1.5K字节以下时,将压缩数据发送到数据输出端3。
同样,在数据输出源2供给的压缩前的1M字节(1000K字节)的数据长的情况下,通过数据压缩使压缩的数据长成为999.5K字节以下时,将压缩数据传送到数据输出端3。
这时,压缩前数据(数据长=1000K字节)对上述压缩数据(数据长=999.5K字节)的比率(实际压缩率)约是1.0005,通过压缩处理削去的数据长(相当于差值)对压缩前数据的数据长的百分率仅为0.05%,在达到此压缩率时,压缩数据的数据长几乎与压缩前数据的数据长一样。
这里是只比较实际差值与设定差值α来判断应传送压缩数据还是应传送压缩前数据的情况,如实际差值高于设定差值α,通过压缩处理而削去的数据长(相当于差值)对压缩前数据的数据长的百分率如上述那样例如是0.05%,即使是数据长与压缩数据几乎不变的数据,也将该数据传送到数据输出端3。结果,在数据输出端3,上述压缩数据的解压缩处理就要花费不少时间,导致时间浪费。
但是在上述本实施例的数据传输装置1中,如上所述,由于实际差值高于设定差值α而且实际压缩率也高于设定压缩率β时,才开始发送压缩数据,所以即使实际差值高于设定差值α,如实际压缩率未达到设定压缩率β,就不发送压缩数据,而改为发送压缩前数据。这时,由于在数据输出端3不进行需要处理时间的解压缩处理,所以无时间的浪费。由此,能更进一步提高系统的综合性能。
下面将根据图12-图18对进行处理操作的其它实例的数据传输装置(以下记为第二实施例的数据传输装置)进行说明。
首先,此第二实施例的数据传输装置1在图13所示的步骤S101中,在接通电源的同时进行初始化操作,例如数据传输装置1内的系统校验、存储器校验和设定等。
然后,在步骤S102中,从程序ROM61读出数据处理装置91(数据处理程序将来自数据输出源的数据进行压缩处理或不进行压缩处理输出到数据输出端的装置,对照图12),并写入操作用ROM63,同时在此程序91的工作中生成的数据被暂时保存,在操作用RAM63中为用于构成上述程序的各子程序间的参数的交换等的工作区分配空间。
在数据RAM6中,分配以下存贮区,即存储来自数据输出源2的压缩前数据的压缩前数据存储区、存储来自数据压缩电路67的压缩数据的压缩数据存储区、存储来自数据ROM62的各种固定数据的固定数据存储区。固定数据存储区包括存储预先按规格设定的压缩率(设定压缩率β)的压缩率存储区、存储供一次数据压缩的压缩前数据的数据长(压缩前数据读出尺寸A)的压缩前数据读出尺寸存储区、存储为求得预测压缩率所必须的处理循环的次数B(以后简记为预定循环次数B)的预定循环次数存储区。
上述压缩前数据读出尺寸A是预先按规格决定,例如对数据RAM分配的写入保护的单位长(在本例是2K字节)。对此数据RAM64的写入保护是以由OS数据管理程序以例如2K字节为单位对要将禁止写入对象的数据(在本例中相当压缩前数据)存储到数据RAM64的某存储区时设置的机制,由此,禁止对设置写入保护的存储区写入数据。
此写入保护,按照来自OS的上述数据处理程序91的数据取消请求,例如以2K字节单位写入保护取消,可以对取消该写入保护的存储区写入数据。因而,其它的程序等能将取消写入保护的存储区作为作业区或作为数据存储区来利用。
而且,在此第二实施例的数据传输装置1中,在对全部压缩前数据进行数据压缩前,预先将例如10K字节的压缩前数据进行数据压缩,将用此数据压缩得到的实际压缩率(以后记为预测压缩率)看做对全部压缩前数据的实际压缩率,按照此预测压缩率决定应发送压缩数据还是应发送压缩前数据。
回到图13的流程图进行说明,在上述步骤S102中,进而从数据ROM62中读出各种固定数据并存储到固定数据存储区。这时,登录在数据ROM62的设定压缩率β存储到压缩率存储区。由于此设定压缩率是实数值,例如可作为浮点数据存储。
记录在数据ROM64中的压缩前数据读出尺寸A与预定循环次数B分别存储在压缩前数据读出尺寸存储区和预定循环次数存储区。
在上述操作用RAM63读出的数据处理程序91如图12所示由如下各部分构成进行各种判断的判断装置92;读出通过输入口65从控制器12输入的键输入数据并存储到数据RAM的预定的存储区的键输入数据接收装置93;接收通过输入口65从数据输出源2输入的压缩前数据并存储到数据RAM64的压缩前数据存储区的压缩前数据接收装置94;将压缩前数据的一部分(例如10K字节部分的数据)进行数据压缩求出预测压缩率的预测压缩率计算处理装置95;当预测压缩率满足规定条件时,将压缩前数据全部进行数据压缩处理,而且取消经压缩处理过的压缩前数据的数据压缩处理装置96;通过输出口66向控制器12输出传送请求信号的传送请求信号输出装置97;制作用以使压缩前数据或压缩数据发送到数据输出端3的发送请求数据的发送请求数据制作装置98;用以通过输出口66将所制成的发送请求数据输出到数据输出端3的发送请求数据输出装置99;向控制器12输出与信息有关的信息代码的信息输出装置100。
而且,首先此数据处理程序91,在图13的步骤S103中,通过判断装置92,进行是否有来自控制器12的发送请求的判断。这种判断是按是否有从控制器12输出的发送请求指令的输入中断来进行。在此步骤103中,直到输入来自控制器12的上述发送请求指令为止,反复进行。即等待发送请求。
有发送请求时,进入下一步骤S104,通过判断装置92,进行判断是否有键输入。这种判断是按照表示是否有来自控制器12的键输入中断的信息信号的输入来进行。
此信息信号是由操作者操作键盘等键输入装置18而产生的键输入中断由控制器12输出,特别是通过操作者一边看着在与控制器12连接的图中未示出的监示器装置(CRT、液晶显示器等)的画面上显示的设定程序菜单一边操作键输入装置18,输入文件名、设备号和压缩率等,由控制器12输出上述信息信号。
有键输入时进入下一步骤S105,通过键输入数据接收装置93,经输入口61读出由控制器12传送的键输入数据,将已读出的该键输入数据存储到数据RAM64的固定数据存储区。具体地说,上述键输入数据因与操作者通过键输入操作输入的压缩率有关,将键输入数据存储到固定数据存储区的压缩率存储区。
通过这种处理,在步骤S102从数据ROM62读出的设定压缩率β改写为由键输入的设定压缩率β。
下面在步骤S106中,通过压缩前数据接收装置94,经输入口65读出来自数据输出源2的压缩前数据,进而将该已读出的压缩前数据存储到数据RAM64的压缩前数据存储区。通常,在数据的传输中,是将包括该数据的种类、数据长等信息的首标附加到所传输的数据的先头部分来进行。
因而,在此步骤S106中,除了存储上述压缩前数据外,将与包括在首标中的压缩前数据的数据长有关的数据存储到第一寄存器R1。而且由于此已读出的压缩前数据是写入禁止对象的数据,借助OS的数据管理程序,对该压缩前数据存储区设置写入保护。因此,禁止向上述压缩前数据存储区写入数据。
下面在步骤S107中,进入预测压缩率计算处理装置95(预测压缩率计算处理子程序)。
此预测压缩率计算处理装置95如图15所示,由以下多部分构成进行处理程序的次数判断的判断装置101;从压缩前数据存储区读出用压缩前数据读出尺寸A表示压缩前数据的每一数据长的压缩前数据读出装置102;读出从数据压缩电路67输出的压缩数据并存储到数据RAM64的压缩数据存储区的压缩数据存储装置103;计算用以将压缩数据存储到压缩数据存储区的存储地址的存储地址计算装置104;用压缩前数据读出尺寸A表示的数据长(以下简记为A字节)对压缩前数据计算实际压缩率的压缩率计算装置105;按照用此压缩率计算装置105计算的实际压缩率对全部压缩前数据计算预测压缩率的预测压缩率计算装置106。
而且,此预测压缩率计算处理装置95(预测压缩率运算处理子程序)如图16所示,首先在步骤S201中,使各种参数初始化。具体地说,在此数据处理程序71所用的各种寄存器中,将初始值“0”分别存储到称为变址寄存器i的寄存器(以后简记为变址寄存器i),和第二寄存器R2、第三寄存器R3、和第四寄存器R4。
下面在步骤S202中,通过压缩前数据读出装置102,从压缩前数据存储的前头以A字节读出由使A字节乘以变址寄存器i的值所决定的第i×A字节的压缩前数据。在最初的循环中,从压缩前数据存储区的第0字节读出A字节部分(例如2K字节部分)的压缩前数据。
下面在步骤S203中,将上述已读出的A字节部分的压缩前数据输出到数据压缩电路67。数据压缩电路67使用缓冲存储器69对已输入的A字节部分的压缩前数据进行非损失的数据压缩处理(步骤S204)。这时,与第一实施例的数据传输装置1的情况不同,在此第二实施例中,不必将全部压缩前数据进行数据压缩,可以只将A字节部分(例如2K字节部分)的压缩前数据进行数据压缩,所以能使缓冲存储器69的尺寸减少。
下面在步骤S205中,通过压缩数据存储装置103,读出从上述数据压缩电路67输出的压缩数据,并存储到数据RAM64的压缩数据存储区中与第三寄存器R对应的第N(N为整数)字节(地址)中。在最初的程序中,由于第三寄存器R3的值成为“0”,上述压缩数据由压缩数据存储区的第0字节(最前面地址)存储。这时,计数例如从压缩数据最前面到压缩数据末尾(数据结尾)的字节数,将该计数结果作为压缩数据的数据长存储到第二寄存器R2。
下面在步骤206中,通过存储地址计算装置204,计算压缩数据存储区中的应存储下次压缩数据的区域的地址。这种计算是通过将第三寄存器R3的值(现在的存储地址)与第二寄存器R2的值(现在的压缩数据的数据长)相加,并将此相加值存储到第三寄存器R3来进行。
下面在步骤S207中,通过压缩率计算装置105,求出对这次的2K字节部分的压缩前数据的实际压缩率,采取与上次压缩率的积累。这种计算是通过用第二寄存器R2的值去除A字节,将此除法值(浮点数据)与第四寄存器R4的值(上次的压缩率)相加,再将此相加值再次存储到第四寄存器R4来进行。
下面在步骤S208中,将变址寄存器i的值加1。
下面在步骤S209中,通过判断装置101,判断处理循环次数是否达到求预测压缩率所必须的预定循环次数B。这种判断是按变址寄存器i的值是否变成存储在预定循环次数存储区的预定循环次数B以上来进行。
处理循环次数达到预定循环次数B时,再进入步骤S202,进行该步骤S202以下的处理。例如以A字节为2K字节,为求预测压缩率所必须的压缩前数据的数据长为10K字节时,预定循环次数B成为5。此值预先按规格决定。
而且在上述步骤S209中,当处理循环次数(变址寄存器i的值)达到预定循环次数B时,进入下一步骤210,通过预测压缩率计算装置106求出本次的预测压缩率。这种计算是通过用预定循环次数B除以存储在第四寄存器R4的处理循环次数部分的实际压缩率的累积值,并将此除法值存储到第四寄存器R4来进行。
然而,从数据源2发送的压缩前数据,例如除了正文数据外,位图映象数据、执行文件这样,有数据属性不同的情况。如压缩前数据例如同样是正文数据,即使如上所述用规定循环次数B除以实际压缩率的累积值求出预测压缩率,此预测压缩率与实际上对全部压缩前数据进行数据压缩所得到的实际压缩率的误差也很小。
然而,从数据输出源发送的压缩前数据除了上述正文数据之外,在位图映象数据、执行文件等属性不同的数据时,对这些数据一律采用上述计算方法后,可能会使预想的最终压缩率的误差变大。
因而,在此第二实施例中,准备与数据的种类相应的字式的加权系数C(这可通过预先记录到数据ROM62中来)进行,参照在由数据源2发送的压缩前数据的包头中所包括的数据种类,将与该数据种类相应的加权系数C乘以上述除法值作为预测压缩率。
由此,不管从数据输出源2发送的数据种类如何,对预测压缩率都能使其预想的最终压缩率的误差减小,能使总系统的性能提高。
在上述步骤S210的预测压缩率计算处理结束阶段,此预测压缩率计算处理装置95(预测压缩率计算处理子程序)也结束工作。
下面回到图13所示的主程序,在下一步骤S108中,通过判断装置92,判断预测压缩率是否有效。这种判断是按第四寄存器R4的值(预测压缩率)是否在存储在设定压缩率存储区的设定压缩率β以上来进行。
如预测压缩率在设定压缩率β以上,进入下一步骤S109,进入数据压缩处理装置96(数据压缩处理子程序)。
此数据压缩处理装置96,如图17所示,由以下各部分构成用以判断对全部压缩数据的数据压缩处理是否结束的判断装置111;从压缩前数据存储区分别按A字节读出压缩前数据的压缩前数据读出装置112;读出从数据压缩电路67输出的压缩数据并存储到数据RAM64的压缩数据存储区的压缩数据存储装置113;计算用以将压缩数据存储到压缩数据存储区的存储地址的存储地址计算装置114;从该地址以要求大小删除存储在压缩前数据存储区的压缩前数据的压缩前数据删除装置115。
而且,此数据压缩处理装置96(数据压缩处理子程序),如图18所示,首先在步骤S301中进行压缩前数据的读出点的补正。具体说来,将预定的循环次数B存储到变址寄存器i。
下面在步骤S302中,通过压缩前数据删除装置115,删除存储在压缩前数据存储区的压缩前数据中的,用上述预测压缩率计算处理装置95预先进行过数据压缩处理的压缩前数据。这种删除处理是通过向OS输出以存储删除对象数据的区域的前面地址与删除的数据大小为参数的删除指令来进行。这时的前面地址是数据RAM94上的压缩前数据存储区的前面地址,删除的数据大小是将A字节乘以变址寄存器i的值所得到的值。
通过这种删除指令的输出执行OS的数据管理程序,因此,在压缩前数据存储区中,取消由在参数中包含的前面地址和删除的数据尺寸决定的区域的写入保护。例如为求出预测压缩率而使用10K字节部分的压缩前数据时,取消存储其使用的10K字节部分的压缩前数据的区域中的写入保护。
结果,其它的程序等能将取消了写入保护的此10K字节部分的存储区作为作业区或作为数据存储区来利用。
下面在步骤S303中,通过压缩前数据读出装置112,从压缩前数据存储区的前面以A字节读出由变址寄存器i的值乘以A字节决定的第i×A字节的压缩前数据。
求预测压缩率时,预先使用10K字节的压缩前数据时,由于变址寄存器i的值成为5,压缩前数据读出尺寸A成为2K字节,在此最初的循环中,从压缩前数据存储区的第10K字节读出A字节部分(在此例中是2K字节部分)的压缩前数据。
下面在步骤S304中,将上述已读出的A字节部分的压缩前数据输出到数据压缩电路67。数据压缩电路67,用缓冲存储器69对所输入的A字节部分的压缩前数据进行非损失的数据压缩处理(步骤S305)。
下面在步骤S306中,通过压缩数据存储装置113,读出从上述数据压缩电路67输出的压缩数据并存储到数据RAM64的压缩数据存储区中的与第三寄存器R3的值对应的第N(N为整数)字节(地址)。在最初的循环中,由于第三寄存器R3的值成为与求预测压缩率时的压缩数据的尺寸对应的值,上述压缩数据由压缩数据存储区中的,在求预测压缩率时所存储的压缩数据占有的区域的下一个字节(前面地址)来存储。这时,计数从压缩数据开头到压缩数据结尾(数据结尾)的字节数,将此计数结果作为压缩数据的数据长存储到第二寄存器R2。
下面在步骤S307中,通过存储地址计算装置114,计算在压缩数据存储区中,应存储下一次的压缩数据的区域的地址。这种计算是通过将第三寄存器R3的值(现在的存储地址)与第二寄存器R2的值(现在的压缩数据的数据长)相加,并将此相加值存储到第三寄存器R3来进行。
下面在步骤S308中,通过压缩前数据删除装置115,存储在压缩前数据存储区的压缩前数据中的数据,用步骤S303读出,用步骤305删除被压缩处理过的压缩前数据。即,从由A字节乘以变址寄存器i的值所决定的字节(第i×A字节)删除A字节部分。
这种删除处理与上述步骤S302的情况相同,是通过向OS输出以存储删除对象的数据的区域的前面的地址(压缩前数据存储区的第i×A字节)与删除的数据尺寸(A字节)为参数的删除指令来进行。
按照此删除指令的输出,执行OS的数据管理程序,由此,在压缩前数据存储区中取消由在参数中所包含的前面地址(第i×A字节)与删除的数据尺寸(A字节)决定的区域的写入保护。
结果,其它的程序等能将取消写入保护的此A字节部分的存储区作为工作区或作为数据存储区来利用。
下面在步骤S309中,将变址寄存器i的值加1。
下面在步骤S310中,通过判断装置111来判断是否对全部压缩前数据进行了数据压缩。这种判断是用由A字节乘以变址寄存器i的值所得到的值(即进行过数据压缩处理的压缩前的数据长)是否在存储到第一寄存器R1的全部压缩前数据的数据长以上来进行判断。
判断出对全部压缩前数据未进行数据压缩时,再次回到步骤S303,进行该步骤S303以后的处理,判断对全部压缩前数据已进行过数据压缩时,结束此数据压缩处理装置96(数据压缩处理子程序)的工作。
下面回到图13的主程序,在下一步骤S110中,通过图12所示的发送请求数据制作装置98,制成压缩数据用的发送请求数据。具体地说,此发送请求数据制作在数据RAM64上分配的程序作业区的规定的数组变数区(发送请求数据区)上,例如由首标部和数据部构成。而且此请求发送数据制作装置98,在首标部上记录表示压缩数据的识别代码和存储在第二寄存器R2上的压缩数据的数据长,通过附加压缩数据制成压缩数据用的发送请求数据作为数据部。
下面在步骤S111中,通过信息输出装置100,经输出口66向控制器12输出表示数据已被压缩的信息代码(也可以是表示上述压缩数据的识别代码)。控制器按照来自数据传输装置1的上述信息代码的输入,将表示数据已被压缩的信息数据输出到监示器装置上。由此,在监示器装置的画面上显示出例如“数据已被压缩”这样的信息。
另一方面,在上述步骤S108中,判断预测压缩率未达到设定压缩率β时,进入步骤S112,通过发送请求数据制作装置98,制成压缩前数据用的发送请求数据。此发送请求数据在数据RAM64分配的上述发送请求数据区上制成,具体地说,将表示压缩前数据的识别代码与存储在第一寄存器R1上的压缩前数据的数据长记录在首标部,通过附加压缩数据制成压缩数据用的发送请求数据作为数据部。
下面在步骤S313中,通过信息输出装置100,经输出口66将表示数据未被压缩的信息代码(也可以是表示上述压缩前数据的识别代码)输出到控制器12。控制器12按照来自数据传输装置1的上述信息代码的输入,将表示数据未被压缩的信息数据输出到监示器装置上。由此,在监示器装置的画面上显示出例如“数据未被压缩”这样的信息。
在上述步骤S111或步骤S113的处理结束阶段,进入图14所示的步骤S114,通过发送请求信号输出装置97,经输出口66向控制器12输出发送请求信号。这时,控制器12对数据输出端3输出用以接收由数据传输装置1发送的输入数据的控制信号(写入允许信号、数据存储请求信号等)。因此,数据输出端3成为等待来自数据传输装置1的输入数据的状态。
下面在步骤S115中,通过发送请求数据输出装置99,经输出口66将存储在数据RAM64的上述发送请求数据区的压缩数据或压缩前数据用的发送请求数据输出到数据输出端3。
这时,在向数据输出端3像数据通道等那样经可能发生传输错误的传输路径输出数据时,在上述发送请求数据输出装置99中,将错误校正代码附加到上述发送请求数据上,输出该发送请求数据。
下面在步骤S116中,通过判断装置92,判断是否有程序结束请求。这种判断是以是否产生电源OFF等的结束请求中断来进行判断的。
而且在此步骤S116中,无上述结束请求时回到步骤S103,成为等待来自数据输出源2的下一个发送请求的状态,有上述结束请求时,结束此数据处理程序91。
由此,在上述第二实施例的数据传输装置1中,与上述第一实施例的数据传输装置1相同,按照预测压缩率与设定压缩率β的比较,判断应发送到数据输出端3的数据应作为压缩数据还是应作为压缩前数据,由于是按照此判断结果,将压缩数据或压缩前数据发送到数据输出端3,所以能防止出现进行了数据压缩的数据在数据输出端3占有的存储区域的大小与未进行数据压缩的数据在存储区域上占有的大小大体相同这样的现象,从而能避免在数据输出端3进行无效的解压缩处理这样的不希望出现的情况。
特别是,不必对压缩前数据都进行数据压缩,根据对用压缩前数据的一部分,在本例中用A字节×预定循环次数B求出其尺寸的压缩前数据(例如10K字节的压缩前数据)进行数据压缩而求得的预测压缩率,判断要发送到数据输出端3的数据应作为压缩数据还是应作为压缩前数据,进而当判断要发送到数据输出端3的数据是压缩前数据时,由于对其后的压缩前数据不进行数据压缩处理,所以能缩短整体的处理时间(从读出来自数据输出源2的压缩前数据的阶段到将数据发送到数据输出端3的时间)。
在数据压缩处理装置96的步骤S302和步骤S308中,因顺次删除已进行过数据压缩的压缩前数据并取消其写入保护,所以能提高数据RAM64的利用率,避免因容量溢出造成的系统的停止等。
不必向数据压缩电路67发送全部压缩前数据,由于只发送各A字节部分进行数据压缩处理,所以数据压缩电路62配备的,用于数据压缩处理的缓冲存储器69的容量能减小,能使系统整体的电路结构小型化。
在预测压缩率计算处理装置95的步骤S210中,由于是与从数据输出源2传送的数据种类相应地进行加权求得预测压缩率,所以不管从数据输出源2发送的数据种类如何,对预测压缩率,都能使其与预想的最终压缩率的误差减少,能提高系统的综合性能。
在上述第一实施例的数据传输装置1和第二实施例的数据传输装置1中,能完全适用于使用非损失型的数据压缩的系统。
在数据压缩时,有按文件单位进行数据压缩,或者按将文件划分为固定长的信息组的信息组单位进行数据压缩的情况,任何一种情况也都能适用于上述第一实施例的数据传输装置1和第二实施例的数据传输装置1。
下面将参照图19-图42对适用于上述图7所示的使用形态的第三实施例的数据传输装置1进行说明。
此第三实施例的数据传输装置1装设在主机51的外部存储装置52内,具有作为该外部存储装置52中的数据处理装置1的功能。因而在以下的说明中将此第三实施例的数据传输装置1记为第三实施例的数据处理装置1。
装有此第三实施例的数据传输装置1的上述外部存储装置52,例如是由以磁光盘为记录介质的盘用记录重放装置构成,更详细地如图19所示,它包括图中未示出的盒架,其内部插入可自由旋转地收存与磁场调制方式对应的磁光盘D的磁盘盒(图中未示出);旋转驱动插入此盒架的上述磁盘盒中的磁光盘的主轴马达151;对此磁光盘进行信息信号重放的光拾波器152;对用上述主轴马达151旋转驱动的磁光盘D施加记录用磁场,使磁光盘D的垂直磁化膜(记录层)中的被来自光拾波器152的激光L照射的部分(超过居里点温度的部分)与记录信号对应地磁化的记录用磁场发生装置(内部有励磁线圈构成)153。在此图19中,为避免图面复杂,省略上述磁盘盒。
上述盒架,在其内部设置有使上述磁盘盒的光阀(图中未示出)开闭的图中未示出的公知的光阀开关机构。
因而,通过将上述磁盘盒插入上述盒架,借助上述光阀开关机构打开光阀,在此光阀成为完全打开状态的位置,即在磁盘盒完全插入盒架的位置,磁盘盒向外部存储装置52内的安装就结束了。
主轴马达151设置在与已被安装的磁盘盒的中央部分对应的下方位置处,例如借助步进马达和以旋转-直线运动变换机构为主体的已知的主轴马达用的上下移动机构(图中未绘出),可沿上下方向,即沿磁盘盒的接离方向自由移动。带磁铁的转盘154设置在此主轴马达的马达轴的上端。
此主轴马达151,已安装上述磁盘盒,借助上述主轴马达用上下移动机构向上方移动,由于这种移动,转盘154通过磁盘盒内侧开口部进入磁盘盒内。这时,由于磁铁的吸引,转盘154的上面与磁盘盒内的磁光盘D的中心毂一起相互保持紧密接触,在磁盘盒内的磁光盘D装在主轴马达151上。
光拾波器152设置在上述磁盘盒中的在外部存储装置52内部露出的内侧开口部的下方位置处。此光拾波器152例如能借助线性马达和以导向轴为主体的已知光拾波器用滑动机构155,沿磁盘盒中的磁光盘D的径向自由移动。
在此光拾波器152上配置用以将来自激光光源的光束L聚光到磁光盘D的记录层上的图中未示出的物镜。此物镜借助二维调节器156,分别仅仅沿磁光盘D的接离方向和磁光盘D的径向移动。此二维调节器156例如由聚焦线圈、跟踪线图及磁铁组成的磁路构成。
记录用磁场发生装置153设置在磁盘盒中的在外部存储装置52内部露出的上侧开口部的上方位置处。此记录用磁场发生装置153借助例如步进马达和以旋转-直线运动变换机构为主体的已知的上下移动机构(未示出),沿上下方向,即对磁盘盒的上侧开口部接离方向能自由移动。而且此记录用磁场发生装置153借助图中未示出的连动机构与光拾波器152连动并沿磁光盘的径向移动。
此外部存储装置52的电路系统如图19所示包括调别电路161、磁场发生装置驱动电路162、计算电路163、解调电路164、伺服控制器165和控制这些电路的系统控制器166,进而在本实施例中,此第三实施例的数据处理装置1经接口电路167与上述系统控制器166连接而构成。
此数据处理装置1对设置在外部的主机51,通过接口总线(例如SCSI总线)和接口电路168配线连接以进行数据发送。
调制电路161是这样一种电路,它对由系统控制器166传送的记录数据进行错误修正等编码处理,变换成记录信息数据,进而将此已变换的数据再变换成On-Off数据,作为开关信号输出。
磁场发生装置驱动电路162是按照来自调制电路161的开关信号,使流向记录用磁场发生装置153内的励磁线圈的供给电流沿正方向和负方向切换的电路。
具体地说,通过使励磁线圈沿正方向流过电流,使磁光盘D的记录层中的,因用来自光拾波器152的激光照射而使温度超过居里点的部分沿例如正方向磁化,而通过使励磁线圈沿负方向流过电流。上述部分则沿例如负方向磁化。
而且其后,由于照射由光拾波器152产生的重放用的激光L,通过用装在光拾波器152内的例如由pn结光电二极管组成的光检波器检测出用沿正方向磁化的部分或沿负方向磁化的部分调制的反射光束中的克尔旋转角(力-回转角),能得到记录在磁光盘上的磁化信息的重放信号。
伺服控制器165其内部装有聚焦伺服电路、循迹伺服电路、主轴伺服电路以及对作为各种移动机构驱动源的马达进行伺服控制的马达用伺服电路等,这些各种伺服电路分别输入来自系统控制器166的与伺服控制有关的数据(伺服增益等)、驱动信号等伺服驱动控制信号、来自计算电路163的伺服用计算信号。
上述主轴伺服电路是按照来自系统控制器的伺服驱动控制信号驱动主轴马达151,以CLV(常线速Constant Linear Verocity)方式或CAV(常角速Constant Angular Verocity)方式旋转驱动装在转盘154上的磁光盘的电路。上述伺服驱动控制信号,如磁光盘是例如取样伺服方式的磁盘,是按照将伴随着在伺服区与伺服位一起形成的时钟位的检出而产生脉冲信号,用例如PLL倍增(分频)而得到的时钟信号而制成。
上述聚焦伺服电路是这样一种电路,它按照来自计算电路163的聚焦错误信号,具体地说是在磁光盘D上形成镜面,用运算电路163对与伴随着向该镜面进行激光照射所产生的来自该镜面的反射光量对应的检出信号进行规定的运算,按照所得到的信号,通过驱动控制光拾波器152的上述二维调节器156,使物镜沿磁光盘D的接离方向移动,进行该焦点调整。
上述循迹伺服电路是这样一种电路,它按照来自运算电路163的循迹错误信号,具体地说是按照用运算电路163对伴随着在磁光盘D形成的伺服区内的伺服位的检测而生成的检测信号进行规定的运算所得到的信号,通过驱动控制光拾波器152的上述二维调节器156,使物镜沿磁光盘D的径向移动,进行该循迹调整。
解调电路164是这样一种电路,它将来自运算电路163的重放信号,具体地说是将通过对与记录在磁光盘D的记录层上的磁化信息相应地进行了调制的反射光和P偏光成分与S偏光成分进行规定的运算所得到的信号变换成数字数据,进而再对附加到此已变换的数字数据上的错误校验等编码处理进行译码处理,作为重放数据输出。来自此解调电路164的重放数据供给系统控制器166。
供给此系统控制器166的上述重放数据通过接口电路167和接口总线(例如SCSI总线)供给数据处理装置1。在供给系统控制器166的重放数据中,地址数据用于主轴马达151的旋转控制、查找工作时的光拾波器152的扫描位置的控制等。
下面将参照图20-图42对第三实施例的数据处理装置1的结构进行说明。首先,此数据处理装置1的硬件结构如图20所示是由以下部分构成存储各种程序的程序ROM171;预先记录各种固定数据的数据ROM172;作为从上述程序ROM171读出的程序的操作用而使用的动作用RAM173;存储来自系统控制器166的重放数据、来自主机51的记录用数据和按程序进行数据加工的数据等的数据RAM174;对外部电路进行数据的输入输出的输入口175和输出口176;使用专用的缓冲存储器对存储在数据RAM174的数据进行数据压缩处理的数据压缩电路178;使用专用的缓冲存储器179对存储在数据RAM24中的数据进行数据解压缩处理的数据解压缩电路180;控制这些电路的CPU(控制装置和逻辑运算装置)181。
上述数据压缩电路178和数据解压缩电路180是无数据损失的,即,使用非损失的数据压缩技术的电路,例如由微计算机等构成。数据压缩电路178和数据解压缩电路180的非损失的数据压缩技术本身由于与本发明无直接关系,在此不再详述,可以使用在上述第一实施例和第二实施例的数据传输装置1采用的例如借助LZW法的压缩技术。
而且通过从CPU181引出的数据总线DB进行各电路间数据的交换,上述各种电路通过从CPU181引出的控制总线(图中未示出)分别用CPU181进行控制这样来构成。
从主机51通过接口总线与接口电路168输入的记录用数据和从系统控制器166通过接口总线与接口电路167输入的应答数据,通过输入口175供给数据总线DB。
存储在数据RAM174的输向主机51的重放数据等,通过输出口176,经接口总线和接口电路168供给主机51,存储在数据RAM174的输向系统控制器166的各种驱动请求信号与记录用数据(压缩数据或非压缩数据)等,通过输出口176,经接口总线与接口电路167供给系统供制器166。
下面在以此第三实施例的数据处理装置1的工作为主体说明上述外部存储装置52的工作时,参照图21对装在此外部存储装置52上的磁光盘D的格式进行说明后,此磁光盘D从半径方向外侧(最外周侧)向半径方向内侧(最内周侧)存在磁道编号(磁道地址)“0”-“9999”的一万个磁道。即存在磁道0-磁道9999。
磁道0-磁道2和磁道9948-磁道9999是用外部存储装置52的数据处理装置1与系统控制器166管理的磁道。其中,磁道9948-磁道9999如下面说明那样是交替区AE,磁道0-磁道2和磁道9997-磁道9999是外部存储装置52的数据处理装置1与系统控制器166管理的驱动区DE,剩下的磁道3-磁道9947是用户区UE。
驱动区DE最好记录非压缩数据。这是因为对读出或写入等处理的存取高速化。在用户区UE和交替区AE,按情况有选择地记录用数据压缩电路178进行压缩处理的压缩数据或未进行压缩处理的非压缩数据。对此将在下面详细说明。
各磁道有物理段号为“0”-“24”的段(按照需要当从物理段0-24或前后关系就能明白其意义时,也简称为段0-24。也可称为段地址)。一段的存储容量(数据记录容量)是2048B(字节)。
而且,连接此外部存储装置的主机51用例如100个段单位记录或读出数据。在此意义上,将上述主机51的一次存取处理数据的一部分作为一存贮块时,此存贮块的数据长用段换算时是100段,用字节数换算时,在上述例子中成为100×2KB=200KB。
在此实施例中,主机51如上述那样,用由100个段组成的200KB的一存贮块为单位管理(即处理)数据,具体地说,主机51将用户区UE的磁道3的段0作为一存贮块的数据前头地址0来管理,以后,将每100段,即每一存贮块各自的前头地址作为段地址100、200……,按顺序进行管理。
然而实际上由于有记录在用户区UE上的数据成为压缩数据的情况,主机51管理的一存贮块数据段地址与磁光盘D上的段地址并非一一对应。意思是,主机51管理的段地址可以认为是不限于磁光盘D等的记录介质的记录格式的逻辑段地址(逻辑段地址),外部存储装置52的数据处理装置1管理的段地址可认为是限于实际磁光盘D的记录格式的物理上的段地址(物理段地址)。
因而在以后的说明中,将主机51管理的段地址记为逻辑段地址,将数据处理装置1管理的段地址记为物理段地址。
而且将能用主机51管理的一存贮块的数据记为一逻辑存贮块的数据,将能用数据处理装置管理的一存贮块数据记为一物理存贮块数据。作为一个例子,使在数据压缩电路178的期待压缩率β为例如2时,在一逻辑存贮块数据长为例如100段的情况下,一物理存贮块数据长成为50段。
因此在此实施例中,为了容易管理压缩前的一存贮块数据的逻辑段地址与压缩后的一存贮块数据的物理段地址的对应关系,而使用分配对应表(文件分配表)FAT。此表的构成将在下面详细说明。
逻辑段地址与物理段地址都成为将用户区UE的前头段作为0的相对段地址。当然,在物理段地址中,也可以作为以磁道0的前头段为0的绝对段地址来定义,由于地址计算变复杂,与逻辑段地址同样,使用相对段地址在计算上是有利的。
在此实施例中,如上所述,以一物理存贮块的段数为50,此值能例如根据要求的不同可自由变更,一物理存贮块的段数也可以为1。这种情况下使期待压缩率例如为2时,一逻辑存贮块的段数成为2。
再回到图21的说明,磁道0的段0是记录此磁光盘的属性(ID、初始化结束等信息和文件分配表FAT等)的DDS(磁盘定义结构块)段#0,磁道0的段1是记录磁盘保证时的故障段信息的PDL(初始故障表)段#0。
磁道0的段2是记录在磁盘保证时以后的,例如在写入和校验时的故障段信息的SDL(补充的故障表)段#0。记录在这些DDS段#0、PDL段#0、和SDL段#0上的数据总称之为属性数据,记录此属性数据的区域(DDS段#0、PDL段#0和SDL段#0)总称之为属性数据记录区。
在磁道1的段12、段13和段14的DDS段#1、PDL段#2和SDL段#1,在磁道9997的段0、段1和段2的DDS段2、PDL段#2、SDL段#3,以及在磁道9998的段12、段13和段14的DDS段#3、PDL段#3和SDL段#3,分别记录与记录在上述磁道0的段0、段1和段2中的DDS段#0、PDL段#0和SDL段#0上的属性数据相同的数据,全部作为备用段的功能。
下面参照图22对磁道0的DDS段#0的内容进行说明,字节编号0和1前面的2字节是其内容表示DDS段的ID(识别P),在该2字节上记录“OABCD的16进表示”。字节编号2与2047等是备用(未定义),记录“00”。在号码3字节上记录是否进行磁盘保证,在已结束时记录“01”,在还未进行时记录“02”。因而,在下述的磁盘保证操作(初始化操作)结束时刻,DDS段#0的3号字节的记录数据从“02”改写为“01”。
在用字节编号P、P+1……P+Q表示的区域上,配备文件分配表FAT,用以相对应地记录从主机51接收的在压缩前的1逻辑存贮块数据的逻辑段地址,和记录在磁光盘D的用户区UE和交替区AE的压缩后的1物理存贮块数据的物理段地址。向此文件分配表FAT记录数据像上述那样用非压缩数据记录。
此文件分配表FAT如图23所示,1个记录长成为15字节,是排列有此15字节长的数据存储容量的多个记录而构成,各记录的内容,其前半的6字节是表示在主机51的数据管理信息,最初的3字节是存储1逻辑存贮块数据的前头逻辑段地址的区域(前头逻辑段地址存储区)a,下面的3字节是存储该1逻辑存贮块数据最终逻辑段地址的区域(最终逻辑段地址存储区)b。
后半的9字节是表示在磁光盘D上的数据管理信息,最初的3字节是存储1物理存贮块数据的前头物理段地址的区域(前头物理段地址存储区)c,下面的3字节是存储该1物理存贮块数据的最终物理段地址的区域(最终物理段地址存储区)d,再下面的3字节是存储连接地址(物理段地址)的区域(连接地址存储区)e。各记录的内容在初始状态都为0。
在此文件分配表FAT的一个记录上,原则上存储与一逻辑存贮块数据的逻辑段地址对应的一物理存贮块数据的物理段地址。即,在能用规定那样的期望压缩率β压缩1逻辑存贮块数据的情况中,1逻辑存贮块数据的段尺寸就成为用1物理存贮块数据的段尺寸压缩,例如使期望压缩率为α时,有100段的1逻辑存贮块的数据成为50段的物理存贮块的数据。
然而在非损失的压缩处理技术中,不一定限制在能用上述期望压缩率压缩1逻辑存贮块的数据。按照构成1逻辑存贮块的数据内容,也存在成为比期望压缩率β更低的压缩率的情况。这时,1物理存贮块的数据长变成超过50段。因而在本实施例中,为了使超过规定段(在此例中是50段)的物理存贮块的数据与逻辑存贮块的数据对应,记录超过50段部分的数据的前头物理段地址存储在连接地址存储区e作为连接地址。
与此连接地址存储的同时,该连接地址存储在上述记录的下一个记录的前头物理段地址存储区c,记录超过此50段的数据的物理存贮块的最终物理段地址存储在最终物理段地址存储区d。这时,在该记录的前头逻辑段地址存储区a和最终逻辑段地址存储区b上分别存放“0”。
由此,在与和1逻辑字组对应的多个物理块的最终字组对应的记录的连接地址存储区e上存储“FFFF00”或“FFFF01”。
这里作为具体例子,以在数据压缩电路178的期望压缩率β为2、1逻辑存贮块的数据长为100段、1物理存贮块的数据长为50段的情况为例,将在下面说明此第三实施例的数据处理装置1的工作原理。
首先,将供给数据处理装置1的来自主机51的1逻辑存贮块数据用数据压缩电路178压缩时,当用此压缩得到的压缩数据的数据长在50段以下时,该实际压缩率ε成为2以上,就能将1逻辑存贮块数据收存在1物理存贮块中。
这时,在文件分配表FAT的该记录上,与前头逻辑段地址对应,上述1物理存贮块前头物理段地址存储在前头物理段地址存储区c上,该1物理存贮块的最终物理段地址存储在最终物理段地址存储区d上,其次,表示连接地址不存在而且表示在此物理存贮块记录压缩数据的信息,即“FFFF01”存储在连接地址存储区e(参照图23中记录2的内容)。
另一方面,在用数据压缩电路178进行压缩处理得到的压缩数据的数据长比50段更大时,其实际压缩率ε变成比期望压缩率β=2更小,不能将1逻辑存贮块的数据放入1物理存贮块中,结果就要用2个物理存贮块,即变成与1逻辑存贮块相同的数据长。
因而,在这种情况下,记录到磁光盘的该物理段地址上时,代替记录压缩数据,直接记录由主机19供给的数据(非压缩数据)。
这时,在文件文配表FAT的该记录上,与前头逻辑段地址对应,最初的1物理存贮块的前头物理段地址存储在前头物理段地址存储区c中,该1物理存贮块的最终物理段地址存储在最终物理段地址存储区d中,下一个1物理存贮块的前头物理段地址存储在连接地址存储区e中。
因此,在下一个记录上,“0”分别存储在前头逻辑段地址存储区a及最终逻辑段地址存储区b中,下一个1物理存贮块的前头物理段地址(与连接地址相同)存储在前头物理段地址存储区c中,该下一个1物理存贮块的最终物理段地址存储在最终物理段地址存储区d中,其次表示连接地址不存在,而且表示在这一系列的物理存贮块上记录非压缩数据的信息,即“FFFF00”存储在连接地址存储区e中(参照图23中记录0和记录1的内容)。
如这样,在用物理存贮块单位时,作为结果,与其将有与1逻辑存贮块相同数据长的压缩数据记录到磁光盘D上不如记录非压缩数据,由于以后不必进行解压缩处理等多余的处理,能提高在磁光盘D-数据处理装置1-主机51的存取速度(发送速度)。
这即使在设定期望压缩率比2更大时也一样,作为一个例子使期待压缩率为3的情况下,实际压缩率为3/2以上时,将压缩数据记录到相应的物理段地址上,在实际压缩率小于3/2时,将非压缩数据记录到相应的物理段地址上。
具体地说,实际压缩率大于3时,压缩1逻辑存贮块数据并收在1物理存贮块内,实际压缩率ε在3/2≤ε<3时,由于变成压缩1逻辑存贮块的数据存放在2个物理存贮块内,所以这时分别记录压缩数据。而且实际压缩率ε在ε<3/2时,虽然压缩1逻辑存贮块的数据,但是由于会占有作为与1逻辑存贮块相同数据长的3物理存贮块,这时记录非压缩数据。
下面参照图24-图42所示的各功能存贮块和流程图说明上述数据处理装置1的上述处理操作的具体实例。
首先,在图25所示的步骤S401中,在接通电源时进行初始操作,例如数据处理装置1内的系统校验、存储器校验和设定等。
然后,在步骤S402中,从程序ROM171读出数据处理装置(数据处理程序压缩处理来自主机51的数据并供给系统控制器166,而且解压缩处理来自系统控制器166的重放数据并发送到主机51的装置201(参照图24),在操作用RAM173写入的同时,为临时保存在此程序201的工作中生成的数据,在操作用RAM173中在为进行构成上述程序201的各程序间的参数交操等所用的作业区域被分配。
而且在数据RAM174上分别分配存储1物理存贮块的初始化数据的初始化数据存储区;用以存储来自系统控制器166的数据,特别是磁光盘D的属性数据的属性数据存储区;用以存储来自主机51的1逻辑存贮块(例如100段)部分的非压缩数据的逻辑存贮块数据存储区;用以存储压缩处理1逻辑存贮块部分的非压缩数据后的压缩数据的压缩数据存储区;用以存储来自系统控制器166的数据,特别是来自用户区UE(或者交替区AE)的数据的数据存储区;用以存储解压缩处理后的数据的解压缩数据存储区;用单纯的比特串列表示物理存贮块单位输向磁光盘的记录状态的记录状态表占有区(下面为方便将此占有区记为记录状态表)。
在上述操作用RAM173读出的数据处理程序201,如图24所示,它包括进行各种判断的判断装置202;用以制成表示用户区UE的记录状态的记录状态表的记录状态表制作装置203;应来自主机51的请求进行处理的请求处理装置204;按照来自主机51的磁盘读出请求,执行从此外部存储装置52读出磁光盘D的请求的磁盘读出请求装置205;接收从系统控制器166通过接口电路167,由输入口175供给的属性数据的属性数据读出装置206。
上述记录状态表制作装置203包括进行各种判断的判断装置207;在构成记录状态表的比特串列中,计算与从文件分配表FAT读出的物理段地址对应的位地址的位地址计算装置208;在上述记录状态表中,将“1”置位在与用上述位地址计算装置208求得的位地址对应的位地址上的置位处理装置209。
上述请求处理装置204包括进行各种判断的判断装置210,和进行与来自主机51的各种请求相应的处理的各种处理装置111。此各种处理装置211的内容包括对磁光盘D进行保证处理(初始化处理)的初始化处理装置301(参照图29);将存储在数据RAM174上的压缩数据存储区的压缩数据或存储在逻辑存贮块数据存储区的非压缩数据发送到系统控制器166的写入处理装置401(参照图32);将记录在磁光盘D的用户区UE(或交替区AE)的数据以物理存贮块为单位读出的读出处理装置501(参照图38);以逻辑存贮块单位删除记录在磁光盘D的用户区UE上的数据的删除处理装置601(参照图40)。
而且,在此数据处理程序201中,首先在图25的步骤S403中,通过判断装置202,进行是否装有磁盘盒的判断。这种判断按照来自传感器的检测信号的输入来进行,所说的传感器用以从光学上检知磁盘盒装在盒架上。
安装磁盘盒,收存在其内部的磁光盘D用主轴马达151以例如CAV方式或CLV方式旋转驱动后,进入下一程序S404,通过属性数据读出装置206,向系统控制器166输出属性数据的读出请求。在此读出请求中包括作为参数磁光盘D的属性数据记录区的前头物理段地址与读出段尺寸。
系统控制器166,按照来自数据处理装置1中的属性数据读出装置206的属性数据读出请求的输入,驱动并控制光拾波器用滑动机构155,将光拾波器152传送到与磁道0对应的位置。在此处,光拾波器152对磁道0的记录层照射有重放用的输出的激光L,光学地重放记录在属性数据记录区的属性数据,并作为重放信号输出。来自光拾波器152的重放信号用解调电路164变换为重放数据供给系统控制器166。供给系统控制166的重放信号原样通过接口电路167供给数据处理装置1。
供给数据处理装置1的上述重放数据通过输入口175和属性数据读出装置206存储到数据RAM174的属性数据存储区。通过此一系列的操作,属性数据的读出处理就结束了。
下面在步骤S405中,通过判断装置202,进行在上述读出处理中,是否发生了错误的判断。产生错误时,重新回到步骤S404,这次进行记录在磁道1的属性数据记录区(DDS段#1、PDL段#1和SDL段#1)的属性数据的读出请求。
由此,即使在来自此磁道1的属性数据记录区的属性数据的读出处理中发生错误时,也进行记录在磁道9997的属性数据记录区(DDS段#2、PDL段#2和SDL段#2)的属性数据的读出请求。
即使在此读出处理中发生错误时,也实施记录在磁道9998的属性数据记录区(DDS段#3、PDL段#3、和SDL段#3)的属性数据的读出请求。
在对全部的属性数据记录区的读出处理中发生错误时,磁盘不可使用,将向操作者传达该情况的信息发送到主机51,在例如与此主机51连接的CRT、液晶显示器装置等显示装置上显示表明“磁盘不可使用”的信息,将现在装着磁光盘不能使用这一信息通知操作者。
对全部属性数据记录区的读出处理都成为错误的情况是很罕见的,通常借助对最初的磁道0的属性数据记录区的读出处理来读出属性数据。
下面在步骤S406中,通过判断装置202,判断现在装着的磁光盘D是否结束初始化。这种判断以在存储在属性数据存储区的属性数据中的第三字节的数据是“01”或“02”进行。如在该数据为“01”初始化结束,就进入下一步骤S407,进入记录状态表制作装置203的记录状态表制作子程序。
此子程序如图26所示,首先在步骤S501中,将变址寄存器i初始化。即将初始值“0”存储到变址寄存器i。
下面在步骤S502中,选择存储在属性数据存储区的属性数据中的,与文件分配表FAT的变址寄存器i的值对应的记录。
下面在步骤S503中,通过判断装置207判断该记录有效还是无效。这种判断是通过前头物理段地址及最终物理段地址是否分别存储在上述已选择的记录的前头段地址存储区C和最终物理段地址存储区d来进行。前头和最终物理段地址分别存储在前头和最终物理段地址存储区c和d,当判断该记录有效时,推进到下一步骤S504,通过位地址计算装置208,计算物理段地址是否与构成记录状态表的比特序列中的哪个位地址b对应。此位地址b的计算,在S、I物理存贮块的段数为m时可用b=s/m得到物理段地址。
下面在步骤S505中,通过位设定处理装置209,在构成记录状态表的比特串列中,将“1”置位到与用上述位地址计算装置208得到的位地址b对应的位地址。即进行置位处理。
下面在步骤S506中,变址寄存器i的内容加1。在上述步骤S503中,在上述已选择的记录的前头及最终物理段地址存储区c和d都不存在前头和最终物理段地址(例如都成为“0”),当判断该记录无效时,直接进到步骤S506,变址寄存器i的内容加1。
下面在步骤S507中,通过判断装置207,判断检索是否结束。这种判断是以变址寄存器i的值是否与文件分配表FAT的最终记录数N相同来进行。变址寄存器i的值,当小于最终记录数N时,重新回到步骤S502,选择文件分配表FAT的下一个记录。
由此,在变址寄存器i的值成为最终记录数N以上时,此记录状态表制作子程序结束。在此子程序结束了的阶段,与记录在记录状态表中的文件分配表FAT上的物理磁道的物理段地址对应的位,全都置位到“1”。在构成记录状态表的比特串列中,表示在与成为“0”的位对应的物理段地址上未记录压缩数据或非压缩数据。
按照例如图23的文件分配表FAT的具体内容说明上述记录状态表制作子程序的处理操作后,文件分配表的第0记录、第一记录和第二记录的各物理段地址分别成为2000,2050和5000,在此例中,由于1物理存贮块的段数例如为50段,与上述各物理段地址对应的位地址分别成为第40位、第41位和第100位。结果如图27所示,在构成记录状态表的比特串列中,分别将“1”置位到第40位、第41位和第50位。
回到图25的主程序,在上述步骤S406中,现在装着的磁光盘D初始化未结束时,进到步骤S408,向主机51发送要进行初始化的信息数据。由此,在与主机51连接的显示装置上显示表示“请进行初始化”的信息,将现在装着的磁光盘D初始化未结束的信息通知操作者。这时不制作记录状态表。
下面在步骤S409中,等待来自主机51的请求。有来自主机51的请求时,进到下一步骤S410,进入请求处理装置204的请求处理子程序。
此子程序,如图28所示,首先在步骤S601中,通过判断装置210,判断是否有初始化请求。如来自主机51的请求是初始化请求,进到下一步骤S602,进入图29所示的初始化处理装置301(初始化处理子程序)。
在此,此初始化处理装置201,如图29所示,包括进行各种判断的判断装置302;为了用交替区AE的段取代用户区UE的读出错误对象的段,在属性数据中的PLD段#0上制成段地址对照表的PDL数据制作装置303;制作用以将从数据ROM172读出的初始化数据以物理存贮块为单位记录到磁光盘D上的请求数据的写入请求数据制作装置304;将用此写入请求数据制作装置304制成的写入请求数据输出到系统控制器166的写入请求装置305;制作用以将记录在磁光盘D上的初始化数据以物理段为单位读出的请求数据的读出请求数据制作装置306;将用此读出请求数据制作装置306制成的读出请求数据输出到系统控制器166的读出请求装置307;对系统控制器166实施用以将已制作更新的属性数据记录到磁道0、1、9997、9998的属性数据记录区的请求的属性数据写入装置308。此属性数据写入装置308如下所述,除了此初始化处理装置301外,还有写入处理装置401和删除处理装置601。
而且,此初始化处理装置,即初始化处理子程序,如图30所示,首先在步骤S701中,从数据ROM172读出1物理存贮块的初始化数据(非压缩数据),在下一步骤S702中,将上述已读出的初始化数据存储到数据RAM174的初始化数据存储区。
下面在步骤S703中,将变址寄存器i和K初始化。即将初值“0”存储到变址寄存器i和k。
下面在步骤S704中,通过写入请求数据判断装置304,制成用以将初始化数据记录到磁光盘D上的写入请求数据。具体地说,在记录表示写入请求的识别代码、写入前头段地址和写数据长的段上,附加写入数据(初始化数据),制成写入请求数据。
这时,作为写入前头段地址来记录绝对段地址。即,将用户区的前头段数(3磁道×磁道内的段数(25)=75段)加到将变址寄存器i的值与1物理存贮块的段数m相乘所得的值而得到的绝对段地址记录在首标上作为写入前头段地址,进而将1物理存贮块的段数m记录在首标上作为写入数据长。
下面在步骤S705中,通过写入请求装置305,将上述写入请求数据经接口电路167发送到系统控制器166。
系统控制器166按照来自数据处理装置1的写入请求数据的输入,从该写入请求数据的首标取出写入前头段地址之后,控制驱动光拾波器用的滑动机构155并将光拾波器152搬送到与上述绝对段地址对应的磁道位置。
然后,系统控制器166将所供给的写入数据(初始化数据)输出到调制电路161。调制电路161将错误校验码附加到所供给的写入数据后,变换成双值化信号并供给磁场发生装置驱动电路162。由此磁场发生装置驱动电路162与所供给的二值信号对应,将励磁电流转换为正方向或负方向,从记录用磁场发生装置153产生与二值信号对应的正方向或负方向的外部磁场。这时,光拾波器152在检出该上述前头地址的阶段由该光拾波器152照射有记录用输出的激光L,通过使该被照射处的磁化方向沿外部磁场方向,从该前头地址记录与1物理存贮块相当的段部分、初始化数据作为磁化信息。
下面在步骤S706中,将变址寄存器j初始化。即,将初值“0”存储到变址寄存器j。
下面在步骤S707中,通过读出请求数据制作装置306,制成用以以段单位读出在上述步骤S705中记录在磁光盘D上的初始化数据的读出请求数据。具体地说,制成记录了表示读出请求的识别代码、读出前头段地址和读出数据长的读出请求数据。这时,记录绝对段地址作为读出先头段地址。即,将使用区的前头段数(3磁道×磁道内的段数(25)=75段)加到变址寄存器j的值得到的绝对段地址作为前头段地址记录,进而记录1物理存贮块作为读出数据长。
下面在步骤708中,通过读出请求装置307,将上述读出请求数据经接口电路167发送到系统控制器166。
系统控制器166按照来自数据处理装置1的读出请求数据的输入,从该读出请求数据取出读出前头段地址之后,控制驱动光拾波器用的滑动机构155,将光拾波器152搬送到与上述绝对段地址对应的磁道位置。
然后,光拾波器152在检测该上述前头段地址阶段,由光拾波器152照射有重放用输出的激光L,光学地重放记录在该段上的初始化数据并作为重放信号输出。来自光拾波器152的重放信号,用解调电路164变换成重放数据并供给系统控制器166。供给系统控制器166的重放数据原样通过接口电路167供给数据处理装置1。
这时,因任何原因而未进行用上述光拾波器152的读出时,由系统控制器166将读出错误信号输出到数据处理装置1以代替重放数据。
下面在步骤S309中,通过判断装置302,进行是否输入读出错误信号的判断。当输入了读出错误信号时,就推进到下一步骤S710,通过PDL数据制作装置303,制成PDL数据。
此PDL数据是在存储在属性数据存储区的属性数据中应存储在PDL段#0的数据。即,PDL段#0是用以存储用户区UE的错误段(缺陷段)信息的区域,在此例中存储对照表,所说的对照表存储成为在用户区UE的读出错误对象的物理段地址和使应记录在此物理段地址上的数据退避(记录)到交替区时的该交替区的物理段地址。
具体地说,此对照表由排列多个有6字节的数据存储容量的记录构成,各记录在前头3字节存储成为在用户区的读出错误对象的物理段地址,在下面的三字节存储交替区的物理段地址。
而且在此步骤S710中,在与上述对照表中的变址寄存器K的值对应的记录中,存储成为读出错误的用户区UE的物理地址(=变址寄存器j的值×1物理存贮块的段数据m),和替换区的物理段地址(=变址寄存器K的值)。
下面在步骤711中,使指标寄存器K的值加1。并且在下一步骤712中,使变址寄存器j的值加1。
下面在步骤713中,通过判断装置302,进行对本次所记录的1物理存贮块的初始化数据的段单位的读出是否结束的判断。这种判断是以变址寄存器j的值是否在1物理存贮块的段数m以上来进行。变址寄存器j的值小于上述段数m时,回到上述步骤S707,读出下一段的初始化数据。
本次所记录的1物理字节部分的初始化数据的读出全部完了时,推进到下一步骤S714,通过判断装置302,进行初始化数据是否记录在用户区UE的全部段上的判断。这种判断是以变址寄存器i的值是否在用户区UE的物理存贮块的数M以上来进行。变址寄存器i的值小于物理存贮块数M时,回到上述步骤S704,对下一个物理存贮块记录初始化数据,进而进行该初始化数据的段单位的读出。
上述变址寄存器i的值大于上述物理存贮块数M时,推进到下一步骤S715,在存储在属性数据存储区的属性数据中,将DDS段#0的第3字节的数据(“02”)改写为表示保证结束的1字节数据,即“01”。
下面在步骤S716中,进入属性数据写入处理装置308的属性数据写入处理子程序。此子程序如图31所示,首先在步骤S801中制成用以将存储在属性数据存储区的属性数据写入磁光盘D的磁道0的段0-段2中的写入请求数据。具体地说,将3段的属性数据附加到记录有表示写入请求的识别代码、写入前头段地址和写入数据长的首标中,制成写入请求数据。这时,在首标上记录0作为写入前头段地址,进而在首标上登记段数=3作为写入数据长。
下面在步骤S802中,将上述写入请求数据通过接口电路167发送到系统控制器166。
系统控制器166按照来自数据处理装置1的写入请求,控制伺服控制器165和各种机构,通过记录用磁场发生装置153,将数据记录到磁光盘D的磁道0的段0-段2上。
下面在步骤S803中,制成用以将存储在属性数据存储区的属性数据写入在磁光盘D的磁道1中的段12-段14上的写入请求数据。具体地说,作为写入前头段地址将12,作为写入数据长将段数=3分别记录到首标上,进而附加段部分的属性数据制成写入请求数据。
下面在步骤S804中,将上述写入请求数据通过接口电路167发送到系统控制器166。
系统控制器166,按照来自数据处理装置1的写入请求,控制伺服控制器165和各种机构,通过记录用磁场发生装置153,将属性数据记录到磁光盘D的磁道1的段12-段14上。
下面在步骤S805中,制成用以将存储在属性数据存储区的属性数据写入磁光盘D的磁道9997的段0-段2的写入请求数据。具体地说,作为写入前头段地址将9997×25=249925作为写入数据长将段数=3分别记录在首标,进而附加3段的属性数据制成写入请求数据。
下面在步骤S806中,将上述写入请求数据通过接口电路167传送到系统控制器166。
系统控制器166按照来自数据处理装置1的写入请求,控制伺服控制器165和各种机构,通过记录用磁场发生装置153将属性数据记录到磁光盘D的磁道9997的段0-段2上。
下面在步骤S807中,制成用以将存储在属性数据存储区的属性数据写入磁光盘D的磁道9998的段12-段14上的写入请求数据。具体地说,作为写入前头段地址将9998×25+12=249962,作为写入数据长将段数=3分别记录在首标上,进而附加3段部分的属性数据制成写入请求数据。
下面在步骤S808中,将上述写入请求数据通过接口电路167发送到系统控制器166。
系统控制器166按照来自数据处理装置1的写入请求,控制伺服控制器165和各种机构,通过记录用磁场发生装置153,将属性数据记录到磁光盘D的磁道9998的段12-段14中。
在此时,上述属性数据写入处理子程序结束,进而该主程序的初始化处理子程序也结束。
下面在图28所示的请求处理子程序的步骤S601中,判断无初始化请求时,推进到步骤S603,通过判断装置210,本次判断是否是写入请求。
在来自主机51的请求是写入请求时,推进到下一步骤S604,进入写入处理装置401的写入处理子程序。
这里,上述写入处理装置401如图32所示,除了上述属性数据写入装置308外,还包括进行各种判断的判断装置402;制作更新文件分配表FAT的FAT制作装置403;对系统控制器166实行用以将压缩数据或非压缩数据记录到磁光盘D的用户区UE的相对应的物理存贮块上的请求的数据输出装置404;通过接口电路168从主机51接收由输入口175供给的写入请求数据并存储到数据RAM174的预定存储区的数据接收装置405;读出由数据压缩电路178输出的压缩数据并存储到数据RAM174的压缩数据存储区的压缩数据存储装置406;按照压缩前数据的数据长和压缩数据的数据长计算实际压缩率的压缩率计算装置407。
上述FAT制作装置303包括将与逻辑段地址对应的物理段地址等地址信息存储到已存储于属性数据存储区中的文件分配表FAT的相当的记录中的地址存储处理装置408;以1物理存贮块单位随机记录压缩数据或非压缩数据,检索该记录状态表上的位信息的随机个别记录用检索装置409;将2以上的连续压缩数据或非压缩数据记录在连续的物理段地址上,检索此状态记录表上的位信息的随机连续记录用检索装置410;在无记录压缩数据或非压缩数据的区时进行错误处理的错误处理装置411。
数据输出装置404包括制作用以以物理存贮块单位将压缩数据或非压缩数据记录到磁光盘D上的请求数据的写入请求数据制作装置412;将用此写入请求数据制作装置412制成的写入请求数据输出到系统控制器166的写入请求装置413。
并且,此写入处理装置401,即写入处理子程序,如图33所示,首先在步骤S901中,通过判断装置402,判断装在此外部存储装置52中的磁光盘D是否结束初始化。这种判断是以存储在属性数据存储区的属性数据的第3字节的1字节数据是否是“01”来进行。
上述1字节数据为“01”,表示初始化结束时,推进到下一步骤S902,通过数据接收装置405,接收从主机51通过输入口175供给的写入请求数据。此写入请求数据成为在包括表示写入请求的识别代码、写入前头段地址(前头逻辑段地址)、写入数据长(在此例是100段)的首标上附加1逻辑存贮块(100段)的写入用数据的内容。
下面在步骤S903中,将上述接收的写入请求数据存储到分配在数据RAM174上的逻辑存贮块数据存储区,进而将与在首标中所包括的写入用数据的数据长有关的数据存储到第三寄存器R3。
下面在步骤S904中,在存储在上述逻辑存贮块数据存储区的写入请求数据中,将1逻辑存贮块(100段)的写入用数据输出到数据压缩电路178。数据压缩电路178对已输入的写入用数据,使用缓冲存储器177进行非损失的数据压缩处理(步骤S905)。
下面在步骤S906中,通过数据压缩存储装置406,读出从上述数据压缩电路178输出的压缩数据并存储到数据RAM174的压缩数据存储区。这时计数从压缩数据的前头到压缩数据的末尾的字节数,将其计算结果存储到第四寄存器R4作为压缩数据的数据长。
下面在步骤S907中,通过压缩率计算装置407,按照写入用数据的数据长和压缩数据的数据长计算实际压缩率ε。这种计算是通过用存储在第四寄存器R4上的压缩数据的数据长除以存储在第三寄存器R3上的写入用数据的数据长来进行,此除法值存储到第五寄存器R5作为实际压缩率。
下面在步骤S908中,通过判断装置402,判断这次是原样使用由主机51发送的数据还是使用压缩数据。这种判断是按存储在第五寄存器R5上的实际压缩率ε是否满足0<ε<β/(β-1)(β为期望压缩率)来进行。这是因为当实际压缩率ε满足0<ε<β/(β-1)时,由压缩数据的数据长,特别是由物理存贮块的数据决定的数据长实质上与由1逻辑存贮块决定的数据长相同或者在其以上。这时由以下的步骤可知,变成将来自主机51的写入用数据(非压缩数据)记录到磁光盘D上来代替压缩数据。
而且,在上述步骤S908中,判断实际压缩率ε满足0<ε<β/(β-1)时,推进到下一步骤S909,制作非压缩处理用的参数。具体地说,将表示非压缩处理的“0”存储到第一寄存器R1,将期望压缩率ε存储到第二寄存器R2。
另一方面,在上述步骤S908中,判断实际压缩率ε大于β/(β-1)时,推进到下一步骤S910,制成压缩处理用的参数。具体地说,将表示压缩处理的“1”存储到第一寄存器R1,将用实际压缩率ε去除期待压缩率β所得到的值(β/ε)存储到第二寄存器R2。
下面在步骤S911中,进入FAT制作装置403的FAT制作子程序。此子程序如图34所示,首先在步骤SA01中,在数据RAM174上确保用以制作本次的文件分配表的表数据存储区。
下面在步骤SA02中,分别使变址寄存器j和P初始化。即,分别将初值“0”存储到变址寄存器j和P。
下面在步骤SA03中,进入随机连续记录用检索装置410的随机连续记录用检索程序。此程序,首先在该步骤SA03中,以在记录状态表中的变址寄存器j的值为前头位,取出用第二寄存器R2内的值表示的比特串列数据(以下记为比特串列数据)。
下面在步骤SA04中,判断上述比特串列数据的内容是否是0。在此,当位串数据的内容是0时,即,不存在用以记录已压缩来自主机51的逻辑存贮块的数据的数据或就这样未压缩的写入用数据的区域时,推进到下一步骤SA05,这次进入随机个别记录用检索装置409的随机个别记录用检索程序。此程序在该步骤SA05中,判断该比特串列第0位是否是0。
如上述比特串列数据的第0位是0时,成为与判断在与该比特序列数据的第0位对应的物理段地址上能记录1物理存贮块部分的数据等效,将现在的检索位地址即变址寄存器j的值存储到与确保在数据RAM174的规定区域的位地址存储区的变址寄存器P的值对应的记录中。
下面在步骤SA07中,将变址寄存器P的值加1,在下一步骤SA08中,将变址寄存器j的值加1。
另一方面在上述步骤SA05中,当比特串列数据的第“0”位是“1”时,不向位地址存储区进行检索位地址的存储,直接进入步骤SA08,使变址寄存器j的值加1。
下面在步骤SA09中,通过判断装置402判断检索是否结束。这种判断是按变址寄存器j的值,从检索对象最终位数即第二寄存器R2内的值减去1的值,是否是从记录状态表的最终位数扣除3的值来进行。
当变址寄存器j的值小于检索对象最终位数B时,回到上述步骤SA03,进行该步骤SA03以后的处理,即对下一比特串列数据的判断处理。
而且,一边每次更新1位一边对有一定比特串列的比特串列数据进行判断处理的结果,当不检索内容为0的比特串列数据时,进入图35的步骤SA10。
在此步骤SA10中,判断存储在位地址存储区的地址是否以记录本次压缩数据或非压缩数据所必须的物理存贮块存储。这种判断以变址寄存器P的值是否大于第二寄存器R2内的值来进行。
变址寄存器的值大于第二寄存器R2内的值时,存储在位地址存储区的位地址规定以记录本次压缩数据或非压缩数据所必须的物理存贮块存储,进入下一步骤SA11,将变址寄存器K初始化。即将初值“0”存储到变址寄存器K。
下面在步骤SA12中,将存储在与位地址存储区的变址寄存器K的值对应的记录中的位地址存储到变址寄存器j。
而且在下一步骤SA13中,进入地址存储处理装置408的地址存储处理子程序。此子程序如图36所示,首先在步骤SB01中,在构成记录状态表的比特串列中,将与变址寄存器j的值(位地址)对应的位置位到“1”。即进行置位处理。
下面步骤SB02中,按照变址寄存器j的值(位地址)计算物理段地址。物理段地址通过将1物理存贮块的段数m乘以上述位地址j而求得。
下面在步骤SB03中,判断现在的变址寄存器K的值是否是0。即由此判断应存储在表数据存储区的各种数据是否存储在该第0记录的区域。变址寄存器j的值是0时,进入下一步骤SB04,制成应存储在表数据存储区的第0记录的数据。
具体地说,取出包含在来自主机51的写入请求数据内的前头逻辑段地址,存储到第0记录的前头3字节区(即前头逻辑段地址存储区a),将1逻辑存贮块的段数(例如100)加到上述前头逻辑段地址所得的值作为最终逻辑段地址,存储到下面的3字节区(即最终逻辑段地址存储区b)。
而且将在上述步骤SB02中求得的物理段地址存储到下面的3字节区(即前头物理段地址存储区c),将1物理存贮块的段数m(例如50)加到该物理段地址所得的值作为最终物理段地址存储到下面3字节区(即最终物理段地址存储区d),此子程序就结束。
另一方面,在上述步骤SB03中,判断变址寄存器K的值是0时,进入步骤SB05,制成应存储在表数据存储区的第1记录以后的数据。具体地说,在表数据存储区中,将“0”存储到第K记录的前头3字节区(即前头逻辑段地址存储区a),将“0”存储到下面3字节区(即最终逻辑段地址存储区b)。
而且将在上述步骤SB03中求得的物理段字节存储到下面的3字节区(即前头物理段地址存储区c),将1物理存贮块的段数(例如50)加到该物理段地址所得到的值作为最终物理段地址,存储到下面的3字节区(即最终逻辑段地址存储区d)。进而将上述物理段地址存储到该记录的前一个记录即第(K-1)记录的连接地址存储区,此子程序结束。
下面回到图35的FAT制作子程序(其二),在下一步骤SA14中,将变址寄存器K的值加1更新。
下面在步骤SA15中,判断变址寄存器K的值是否在第二寄存器R2内的值以上。在此如变址寄存器K的值小于第2寄存器R2内的值,回到上述步骤SA12,按照存储在位地址存储区的下面的记录中的位地址,将所需要的数据存储到表数据存储区。
在上述步骤SA15中,在变址寄存器K的值变成大于第二寄存器R2内的值的阶段,此随机个别记录用检索程序(用随机个别记录用检索装置409的处理程序)结束,进入下一步骤SA16。在此步骤SA16中,通过判断装置402,判断这次应记录在磁光盘D上的数据是否是非压缩数据。这种判断是以第1寄存器R1内的值是否是“0”来进行。
第1寄存器R1内的值是“0”时,进入下一步骤SA17,将3字节数据“FFFF00”存储到用上述地址存储处理子程序制成的在表数据存储区的最终记录的连接地址存储区e。另一方面,在第1寄存器R,内的值是1,本次应记录在磁光盘D上的数据是压缩数据时,进入步骤SA18,将3字节数据“FFFF01”存储到用上述地址存储处理子程序制成的在表数据存储区的最终记录的连接地址存储区e。在此阶段,此FAT制作子程序结束。
另一方面,在图34的上述步骤SA04中,判断比特串列数据是0时,即判断有用以记录来自主机51的逻辑存贮块部分的压缩了数据的数据或者就这样将未压缩的写入用数据的1个区域或连续区域时,在维持随机连续记录用检索程序(用随机连续记录用检索装置410的处理程序)的状态,进入步骤SA19,使变址寄存器K初始化。即将初值“0”存储到变址寄存器K。
下面在步骤SA20中,进入地址存储处理子程序。此子程序由于与在图36所示的处理相同,其详细说明省略,在此子程序中,在构成记录状态表的比特串列中,与变址寄存器j的值(位地址)对应的物理段地址等规定的地址存储到与表数据存储区的变址寄存器K的值对应的相应记录中。
下面在步骤SA21中,判断变址寄存器K的值是否大于第二寄存器R2内的值。在此,如变址寄存器K的值小于第二寄存器R2内的值,就回到上述步骤SA20,进行该步骤SA20以后的处理,与下面的位有关的物理段地址等规定的地址存储到与表数据存储区的变址寄存器K的值对应的相应记录中。
在上述步骤SA22中,变址寄存器K的值大于第二寄存器R2内的值时,此随机连续记录用检索程序(用随机连续记录用检索装置410的处理程序)结束,进到上述步骤SA16,进行上述步骤SA16以后的处理,此子程序结束。
在上述步骤SA10中,变址寄存器P的值小于第二寄存器R2内的值时,存储在位地址存储区的位地址,不以记录这次的压缩数据或非压缩数据所必须的物理存贮块存储,即在光盘D上没有用以记录能由主机51传送的写入用数据的区域,进入下一步骤SA23,通过错误处理装置411,进行规定的错误处理后,强制结束用图33表示的写入处理子程序。
作为上述错误处理的具体例子,有将用以向操作者传达不可记录的信息的信息发送到主机51,例如在与此主机51连接的显示装置上显示表示“不可记录”的信息,将在现在装着的磁光盘D上不能记录新数据通知操作者等处理。
下面回到图33的写入处理子程序,在下一步骤S912中,进入数据输出装置404的数据输出子程序。此子程序如图37所示,首先在步骤SC01中,使指标寄存器i初始化。即将初值“0”存储到变址寄存器i。
下面在步骤SC02中,选择表数据存储区的第i记录。下面在步骤SC03中,通过判断装置402,判断这次应记录在磁光盘上的数据是否是压缩数据。这种判断以第一寄存器R1内的值是否是“1”来进行。
第1寄存器R1内的值是“1”时,进入下一步骤SC04中,从压缩数据存储区取出1物理存贮块部分(m段部分)的压缩数据。另一方面,第一寄存器R1内的值为0时,进入步骤SC05,从逻辑存贮块数据存储区取出1物理存贮块部分(m段部分)的写入用数据(非压缩数据)。
下面在步骤SC06中,通过写入请求数据制作装置412,制作用以将压缩数据或非压缩数据记录到磁光盘D上的写入请求数据。具体地说,在记录有表示写入请求的识别代码、写入前头段地址和写入数据长的首标上,附加1物理存贮块部分的压缩数据或非压缩数据,制成写入请求数据。
这时,记录绝对段地址作为写入前头段地址。即,将用户区UE的前头段数(3磁道×磁道内的段数(25)=75段)加到存储在在上述步骤SC02中选择的第i记录的前头物理段地址存储区C的物理段地址上得到的绝对段地址记录到首标上作为写入前头段地址,进而将1物理存贮块的段数m记录在首标上作为写入数据长。
下面在步骤SC07中,通过写入请求装置413将上述写入请求数据经接口电路167发送到系统控制器166。
系统控制器166按照来自数据处理装置1的写入请求数据的输入,控制伺服控制器165和各种机构,通过记录用磁场发生装置153,在磁光盘D中,从用在写入请求数据中所包括的写入前头段地址表示的地址,记录1物理存贮块部分(m段部分)的压缩数据或非压缩数据。
下面在步骤SC08中,通过判断装置402,判断是否存在连接地址。这种判断是以在用上述步骤SC02选择的第i记录的连接地址存储区e是否有连接地址来进行。有连接地址时进行下一步骤SC09,使变址寄存器i的值加1,然后回到步骤SC02,选择表数据存储区的下个记录。由此,在磁光盘D中,从存储在此已选择的记录的前头物理段地址存储区C的物理段地址的绝对段地址(即写入前头段地址),记录1物理存贮块的压缩数据或非压缩数据。
这种处理,在步骤SC08中,在判断在上述所选择的记录的连接地址存储区e上不存在连接地址后进行,在判断连接地址不存在时,此数据输出处理子程序结束。
下面回到图33所示的写入处理子程序,在下一步骤S913中,将存储在表数据存储区的各种数据,在存储在数据RAM174的属性数据存储区的属性数据中,存储到文件分配表FAT的空白的记录中。
下面在步骤S914中,进入属性数据写入处理装置308的属性数据写入处理子程序。由于此子程序与图31所示的处理相同,在此不另详细说明,用此子程序,存储在数据RAM174的属性数据存储区的已更新制成的3段部分的属性数据,记录在磁光盘的磁道0的段0-段2,磁道1的段12-段14、磁道9997的段0-段2、和磁道9998的段12-段14中。
在上述属性数据写入处理子程序结束时,此写入处理子程序也结束。
用上述步骤S901判断现在装着的磁光盘的初始化未完成时,与图25的主程序中的步骤S408同样,向主机51传送尽快初始化的信息数据。因此使与主机连接的显示装置上显示表明“请进行初始化”的信息,通知操作者现在装着的磁光盘D的初始化未完成。
下面在图28所示的请求处理子程序的步骤S603中,判断无写入请求时,进入步骤S605,通过判断装置210,判断本次是否是读出请求。
来自主机51的请求是读出请求时,进入下一步骤S606,进入读出处理装置501的读出处理子程序。
在此,上述读出处理装置501如图38所示,它包括进行各种判断的判断装置502;接收从主机51通过接口电路168由输入口175供给的读出请求数据的数据接收装置503;磁光盘D中,制作用以从与来自主机51的逻辑段地址对应的物理段地址,以物理存贮块为单位读出压缩数据或非压缩数据的请求数据的读出请求数据制作装置504;将用此读出请求数据制作装置504制成的读出请求数据输出到系统控制器166的读出请求装置505;将由数据解压缩电路输出的解压缩数据存储到数据RAM的规定的存储区的解压缩数据存储装置506;将对从磁光盘D读出的数据进行了解压缩处理后的数据或未进行解压缩处理的数据发送到主机51的发送请求装置507;在无与来自主机51的逻辑段地址对应的物理段地址时进行错误处理的错误处理装置508。
而且此读出处理装置501即读出处理子程序如图39所示,首先在步骤SD01中,通过判断装置502,判断装在此外部存储装置52中的磁光盘D是否完成初始化。这种判断以存储在属性数据存储区的属性数据的第3字节的1字节数据是否是“01”来进行。
上述1字节数据是“01”表示完成初始化时,进入下一步骤SD02,通过数据接收装置503,接收由主机51传送的读出请求数据。此读出请求数据成为包括表示读出请求的识别代码、读出前头段地址(前头逻辑段地址)和读出数据长(在此例中是100段)的内容。
下面在步骤SD03中,使变址寄存器i初始化。即将初值“0”存储到变址寄存器i。
下面在步骤SD04中,在存储在数据RAM174的属性数据存储区的属性数据中,选择与文件分配表FAT的变址寄存器i的值对应的记录。
下面在步骤SD05中,通过判断装置502,判断存储在上述所选择的记录的前头逻辑段地址存储区a的逻辑段地址与用上述步骤SD02读出的逻辑段地址是否相同。
判断“不一致”时,进入下一步骤SD06,使变址寄存器i的值加1。下面在步骤SD07中,通过判断装置502,判断检索是否结束。这种判断是以变址寄存器i的值是否与文件分配表FAT的最终记录数N相同来进行。变址寄存器i的值小于最终记录数N时,重新回到步骤SD04,选择文件分配表FAT的下一记录,进而判断在此所选择的记录的前头逻辑段地址存储区a是否存储该地址。这种处理进行到检索到相应地址,或者,在变址寄存器i的值成为大于最终记录数N也未检索到该地址时,进入步骤SD08,通过错误处理装置508,进行错误处理并结束此读出处理子程序。
作为上述错误处理的具体例子,有例如将向操作者传达不可读出的消息的信息发送到主机51、在与此主机51连接的显示装置上显示出表示“不可读出”的信息、通知操作者不能从现在装着的磁光盘读出数据等处理。
另一方面,在上述步骤SD05中,当检索到该地址时,进入步骤SD09,通过读出请求数据制作装置504,在磁光盘D中,制成用以从与逻辑段地址对应的地址读出1物理存贮块部分的数据的读出请求数据。具体地说,制成记录有表示读出请求的识别代码、读出前头段地址、和读出数据长的读出请求数据。
这时,记录绝对段地址作为读出前头段地址。即,在文件分配表FAT中,记录将用户区UE的前头段数(3磁道×磁道内的段数(25)=75段)加到存储在所选择的记录的前头段地址存储区C中的物理段地址上所得到的绝对段地址,作为读出前头段地址,进而记录1物理存贮块的段数m作为读出数据长。
下面在步骤SD10中,通过读出请求装置505,将上述读出请求数据通过接口电路167发送到系统控制器166。
系统控制器166按照来自数据处理装置1的读出请求数据,控制伺服控制器165和各种机构,通过光拾波器152在磁光盘D中,从用在读出请求数据中所包括的读出前头段地址表示的地址读出1物理存贮块(m个段)的压缩数据或非压缩数据,进而将此所读出的1物理存贮块的数据通过接口电路167供给数据处理装置1。
而且,此读出处理子程序,在下一步骤SD11中,将由系统控制器166传送的1物理存贮块的读出数据存储到分配在数据RAM174的数据存储区。
下面在步骤SD12中,通过判断装置502,判断是否有连接地址。这种判断是以在用上述步骤SD04选择的记录的连接地址存储区e中是否存储连接地址来进行。有连接地址时进入下一步骤SD13,选择下一记录后,回到步骤SD09,进行该步骤SD09以后的处理。即,在磁光盘D中,从存储在用上述步骤SD13选择的记录的前头物理段地址存储区的物理段地址读出1物理存贮块的数据,存储到分配在数据RAM174的数据存储区的空的区域。
这种处理,在上述步骤SD12中,在判断在上述所选择的记录的连接地址存储区e不存在连接地址后进行。
而且,在上述步骤SD12中,判断不存在连接地址时,进入下一步骤SD14,通过判断装置502,判断本次读出的数据是否是压缩数据。这种判断是按在存储在所选择的最终记录的连接地址存储区e的3字节数据中,最后的1字节数据是否是“01”来进行。
上述1字节数据是“01”时,进入下一步骤SD15,将存储在上述数据存储区的读出数据输出到数据解压缩电路180。数据解压缩电路180对所输入的读出数据,用缓冲存储器179进行非损失的数据解压缩处理(步骤SD16)。
下面在步骤SD17中,通过解压缩数据存储装置506,将用上述数据解压缩电路180进行解压缩处理后的解压缩数据存储到数据RAM174的解压缩数据存储区。
下面在步骤18中,通过发送请求装置507,对主机51进行解压缩数据的发送请求。具体地说,在记录有表示发送请求的识别代码、发送前头段地址和发送数据长的首标上附加解压缩数据制成发送请求数据。
这时,作为发送目的前头段地址,记录存储在用上述步骤SD04选择的文件分配表FAT的记录的前头逻辑段地址存储区a的逻辑段地址,进而记录1逻辑块的段数作为发送数据长。
而且,将上述制成的发送请求数据通过接口电路168发送到主机51,此读出处理子程序就结束。主机51按照来自数据处理装置1的发送请求数据的输入,从发送请求数据的首标取出发送目的的前头段地址后,在主机51内,将解压缩数据存储到与通过数据总线连接的数据RAM的上述发送目的的前头段地址对应的地址中。
另一方面,在上述步骤SD14中,判断上述1字节数据是“00”时,进入步骤SD19,通过发送请求装置507,对主机51进行非解压缩数据(能从系统控制器直接传送的数据)的解压缩请求。具体地说,在记录有表示发送请求的识别代码、发送目的前头段地址和发送数据长的首标上附加非解压缩数据(在步骤SD11中,通过数据接收装置503,存储在数据RAM174的数据存储区的来自系统控制器166的数据)制成发送请求数据。
这时,作为传送目的前头段地址、记录存储在用上述步骤SD04选择的文件分配表FAT的记录的前头逻辑段地址存储区a中的逻辑段地址,进而记录1逻辑存贮块的段数作为发送数据长。
将上述制成的发送请求数据通过接口电路168发送到主机51,结束此读出处理子程序。主机51按照来自数据处理装置1的发送请求数据的输入,从发送请求数据的首标取出发送目的的前头段地址后,在主机51内,将上述非解压缩数据存储到通过图中未绘出的数据总线连接的数据RAM(未图示)的与上述发送目的前头段地址对应的地址上。
在上述步骤SD01中,判断现在装着的磁光盘D未完成初始化时,与图7的主程序中的步骤S8同样,向主机19发送尽快初始化的信息数据。由此,在与主机19连接的显示装置上显示出表示“请进行初始化”的信息,通知操作者现在装着的磁光盘D初始化未完成。
下面在图28所示的请求处理子程序的步骤S605中,判断出读出请求时,进入步骤S607,通过判断装置210(参照图24),判断本次是否是数据删除请求。
来自主机51的请求是数据删除请求时,进入下一步骤S608,进入数据删除处理装置601的删除处理子程序。
在此,上述数据删除处理装置601如图40所示,除了上述属性数据写入装置308(参照图29)之外,还包括进行各种判断的判断装置602;用以接收从主机51通过接口电路168由输入口175供给的数去删除请求数据的数据接收装置603;计算在与来自主机51的逻辑段地址对应的物理段地址的记录状态表上的位地址的位地址计算装置604;使与文件分配表FAT的上述逻辑段地址对应的记录初始化的记录初始化装置605;在没有与逻辑段地址对应的物理段地址时进行错误处理的错误处理装置606。
而且此数据删除处理装置601即数据删除处理子程序如图41所示,首先在步骤SE01中,通过判断装置602,判断装在此外部存储装置52上的磁光盘D是否完成初始化。这种判断以存储在属性数据存储区的属性数据的第3字节的1字节数据是否是“01”来进行。
上述1字节数据是“01”表示初始化完成时,进入下一步骤SE02,通过数据接收装置603,读出由主机51传送的数据删除请求数据。此数据删除请求数据其内容包括表示数据删除请求的识别代码、数据删除前头段地址(前头逻辑段地址)和删除数据长(在此例中是100段)。
下面在步骤SE03中,使变址寄存器i初始化。即,将初值“0”存储到变址寄存器i。
下面在步骤SE04中,在存储在数据RAM174的属性数据存储区的属性数据中,选择与文件分配表FAT的变址寄存器i的值对应的记录。
下面在步骤SE05中,通过判断装置602,判断存储在上述所选择的记录的前头逻辑段地址存储区a的逻辑段地址是否与在上述步骤SE02接收的逻辑段地址相同。
判断为“不一致”时,进入下一步骤SE06,使变址寄存器i的值加1。下面在步骤SE07中,通过判断装置602,判断检索是否结束。这种判断是按变址寄存器i的值与文件分配表FAT的最终记录数N是否相同来进行。变址寄存器i的值小于最终记录数N时,重新回到步骤SE04,选择文件分配表FAT的下一个记录,进而判断在此所选择的记录的前头逻辑段地址存储区a是否存储该地址。这种处理进行到检索到该地址。在变址寄存器i的值达最终记录数N以上也未检索到该地址时,进入步骤SE08,通过数据处理装置606,进行错误处理,结束此读出处理子程序。
作为上述错误处理的具体例子有如下的处理将用以向操作者传达数据不能删除的信息发送到主机51、例如在与此主机51连接的显示装置上显示表示“数据不能删除”的信息,通知操作者对现在装着的磁光盘D不存在数据删除对象数据。
另一方面,在上述步骤SE05中,检索该地址时,进入步骤SE09,通过位地址计算装置604,从上述所选择的记录的前头物理段地址存储区已取出物理段地址,在构成记录状态表的比特串列中,计算此物理段地址是否与哪个位地址b对应。此位地址b的计算,在物理段地址为S,1物理存贮块的段数为m时,能用b=s/m得到。
下面在步骤SE10中,在构成记录状态表的比特串列中,将与用上述位地址计算装置604得到的位地址b对应的位置位到“0”。即进行复位处理。
下面在步骤SE11中,通过判断装置602,判断是否有连接地址。这种判断以连接地址是否存储在用上述步骤SE04选择的记录的连接地址存储区来进行。有连接地址时,进入下一步骤SE12选择下一个记录后,用下一步骤SE13,通过记录初始化装置605,使前记录初始化。即,将“0”存储到该前记录。
其后,回到步骤SE09,进行该步骤SE09以后的处理。即,从用步骤SE12选择的记录的前头物理段地址存储区C取出物理段地址,计算与此物理段地址对应的记录状态表的位地址,在构成记录状态表的比特串列中,使与通过上述位地址计算得到的位地址b对应的位置位到“0”。
这种处理,在上述步骤SE11中,进行到判断在上述选择的记录的连接地址存储区e不存在连接地址。而且,在上述步骤SE11中,判断连接地址不存在时,进入下一步骤SE14,通过记录初始化装置605,使现在所选择的记录初始化。即将“0”存储到该记录。
下面在步骤SE15中,进入属性数据写入处理装置308的属性数据写入处理子程序。此子程序与图31所示的处理相同,在此不另详细说明,在此子程序,将存储在数据RAM 174的属性数据存储区的已更新制成的3段的属性数据记录到磁光盘D的磁道0的段0-段2、磁道1的段12-段14、磁道9997的段0-段2和磁道9998的段12-段14。
在上述属性数据写入数据子程序结束阶段,此数据删除处理子程序也结束。
在上述步骤SE01中,判断现在装着的磁光盘D未完成初始化时,与图25的主程序中的步骤S408同样,向主机51发送请求初始化的信息数据。因此,在与主机51连接的显示装置上显示表明“请进行初始化”的信息,通知操作者现在装着的磁光盘D未完成初始化。
下面在图28所示的请求处理子程序的步骤S607中,判断无数据删除请求时,进入步骤S609,此外还进行与来自主机51的请求对应的处理。
回到图25的主程序,在下一步骤S411中,通过判断装置202,判断是否输入磁盘取出请求。这种判断是以是否通过输入口175供给与对连接在主机51的键盘等键输入装置提出的磁盘取出请求对应的指令输入,或者供给通过操作设置在外部存储装置52的外壳上的操作面板中的磁盘取出键而产生的内部中断信号来进行。
判断不供给上述内部中断信号,无磁盘取出请求时,回到步骤S409,等待来自主机51的下一个处理请求。另一方面,判断供给上述内部中断信号,有磁盘取出请求时,进入下一步骤S412,通过磁盘取出请求装置205,经输出口176和接口电路167,将磁盘取出请求信号输出到系统控制器166。
系统控制器166按照来自数据处理装置1的磁盘取出请求信号的输入,控制外部存储装置52内的磁盘加载机构,将装在主轴马达151的转盘154上的磁光盘D搬送到取出口(与插入口共用),即搬送到操作者与将磁光盘D取出到外部的位置。在此阶段,磁光盘D的取出处理结束。
下面在步骤S413中,通过判断装置202,判断是否有程序结束请求。这种判断是按是否产生电源OFF等的结束请求中断来进行。
并且,在此步骤S413中,无上述结束请求时,回到步骤S403,成为等待安装下一个磁光盘,有上述结束请求时,结束此数据处理程序201。
下面对在此第三实施例的数据处理装置中所附加的其它优选的二种功能进行说明。
首先,最初的功能是用以将磁光盘D上剩余的数据记录容量通知主机51的功能。
具体地说,从主机51向数据处理装置1输入用以确认磁光盘D上的剩余数据记录容量的读出容量请求指令时,通常,CPU181通过从预先知道的用户区的全部数据记录尺寸[例如作为预知位,可由预先记录在磁光盘D上的适当区域的数据(用户区UE的磁道数与每个磁道的段数)算出来],参照存储在数据RAM 174的属性数据存储区的文件分配表FAT的磁光盘上的数据管理信息减去使用过的物理段地址,能算出剩余的即未记录的物理数据记录容量(X[KB],以下记为XKB)。
然后,进行期望压缩率β×剩余的物理数据记录容量X=剩余逻辑数据记录容量Y的计算,将计算结果为剩余逻辑数据记录容量Y=β·X[KB]通知主机51。
因此,主机51现在知道能最大限度地将此剩余的逻辑数据记录容量Y部分的数据记录到磁光盘D上。
但是,在非损失型的数据压缩技术中,数据压缩的实际压缩率ε并非一定,由于只有压缩后才能弄清楚正确的实际压缩率,所以在以(β·X=Y)管理磁光盘D上的剩余数据记录容量时,在主机51将例如与剩余最大限度的压缩前数据Y相同容量(相同数据长)的数据发送到数据处理装置时,在此数据的实际压缩率ε未达到期望压缩率β时,就会发生不能将压缩能被发送的压缩前数据的数据或者就这样非压缩的全部数据记录到磁光盘D上这样的情况。
因此,为了避免发生上述情况,在实际压缩率ε小于期望压缩率β的场合,当压缩后数据的数据长大于剩余的物理数据记录容量X时,将用以记录压缩后溢出的数据的特别记录区预先设置在磁光盘D上。此特别记录区例如从用户区UE的最后磁道9947的段24回到100段之前的区作为记录区。此100段部分,在数据处理装置的CPU中,当计算时,从剩余的物理数据记录容量X,减去剩余的逻辑数据记录容量Y。此100段部分的区域在主机51是隐蔽的记录区(容量)。
通常,替换区AE即使在全部使用用户区UE时,由于完全按有余量来设计该区域,所以也可以将上述隐蔽的记录区作为交替区AE。如果这样,就不会使用户区UE的记录容量变小。
作为用以避免不能将压缩了能发送的压缩前数据Y的数据或者全部就这样非压缩的数据记录到磁光盘D上这样情况的其它技术,在从主机51输入读出容量请求指令时,与磁光盘D上的物理的未记录数据记录容量的减少对应,也可以将使预期压缩率β减少的表面上的逻辑数据记录容量报告主机51。
图42对其进行了说明,物理的未记录数据容量Y从最大记录容量到一定值,其期望压缩率β为β=2,从该一定值向物理的未记录数据容量0,期望压缩率β慢慢减少。例如,物理未记录数据容量Y剩余10MB时,希望向主机19报告剩余20MB,只剩余1MB时,报告剩余1.5MB。如果这样的话,在从主机51传送剩余的未记录数据容量Y的最大限度数据时,也能使压缩后的数据从磁光盘D上的可能记录区溢出的概率减少。
期望压缩率β的值,存储压缩所计算的实际压缩率ε,在下次存取时,当然可以置换成此所存储的实际压缩率ε。在此意义上,即使对期望压缩率β也可控制以便在记录到磁光盘的DDS段中将其更新。
下面,其它的功能是对磁光盘D,将以1物理存贮块单位随机记录的相互关连的数据排列更换成以1物理存贮块单位连续的数据的功能。
在上述例子中,在写入处理装置(写入处理子程序)401,特别是在图34-图35所示的步骤SA05-步骤SA15有关的处理程序(即,用随机个别记录用检索装置409的处理程序)中,用数据压缩电路178压缩处理1逻辑存贮块的数据时,在成为2以上物理存贮块部分的压缩数据的场合,未发现用以记录此压缩数据或记录未进行压缩处理的非压缩数据的连续区域(所得到的物理存贮块部分的连续的区域)时,还以1物理存贮块单位随机记录在未被记录的物理段地址上。
即,在磁光盘D的相互分离的位置上分割相互关连的数据进行记录。然而,在这种情况,当读出来自磁光盘D上的数据时,寻道要花费时间,结果,产生存取时间变长这样的问题。
因此,在本实施例中,不是用数据处理装置201中的请求处理装置204进行转移处理,当无来自主机51的存取请求时,编入定期或不定期地例如由OS起动的排列更换程序。下面对此程序的功能简单地进行说明。
现在,假定在逻辑段地址4900-4999表示的1逻辑存贮块部分的写入用数据,在磁光盘D上分割成从该物理段地址2000开始的50段部分的非压缩数据,和从物理段地址3560开始的50段部分的非压缩数据进行记录时,这种程序,在无来自主机51的存取请求时,参照文件分配表FAT,就这样进行被分割、记录的存贮块数据记录位置的整理。
具体地说,例如在物理段地址2050-2099为空时,物理段地址3561-4110的压缩数据移到该地址。而且该非压缩数据的100段部分(2000-2049的50段部分与3560-4109的50段部分的总合)也可以完全移到其它的数据记录位置。
如果这样的话,当有来自主机51的1逻辑存贮块的数据读出请求时,由于与该逻辑存贮块数据对应的2个物理存贮块的数据会连续记录在磁光盘D上,能避免为读出时的查找花费多余时间这样的不良情况,可使存取时间大幅度缩短。
似这样,在装入上述外部存储装置52内的第三实施例的数据处理装置(数据传输装置)1中,首先在数据处理装置201中,检索记录在磁光盘D的属性数据记录区的属性数据,特别是检索从文件分配表FAT记录在用户区UE上的物理存贮块的数据记录状态,由于对1物理存贮块制成1位(1/0=记录完成/未记录)的记录状态表,在有来自主机51的数据写入请求时,在写入处理装置(写入处理子程序)401中,检索构成上述记录状态表的比特串列的各位的状态,决定记录到哪个物理段地址,比直接检索存储在文件分配表FAT的前头物理段地址存储区C的物理段地址更能缩短检索时间,并且,由于能以单纯的1/0的位单位掌握该记录状态,比从在数据上有复杂的位构成的物理段地址掌握该记录状态时,能缩短程序调试、系统维修等花费的时间。
在此第三实施例中,在写入处理装置401中,当用数据压缩电路178压缩来自主机51的1逻辑存贮块的数据时,用此压缩得到的压缩数据的数据长变成小于1物理存贮块的段数,其实际压缩率ε大于β/(β-1)时,用压缩电路178压缩处理后的压缩数据记录在磁光盘D上,上述实际压缩率ε满足0<ε<β/(β-1)时,即,用数据压缩电路178压缩处理得到的压缩数据的数据长(物理存贮块数)实质上等于或大于1逻辑存贮块时,由于记录从主机51直接供给的数据(非压缩数据),在记录在磁光盘D上的数据中,对实际压缩率ε满足0<ε<β/(β-1)的记录数据不需要进行解压缩处理,所以能大幅度提高从磁光盘D上的数据读出速度,能提高外部存储装置的性能。
在上述处理中,重新需要用以区别已压缩处理的数据与未压缩处理的数据的信息,在此实施例中,由于合并了无连接地址的信息,将用以区别压缩处理或非压缩处理的判断数据存储到文件分配表FAT的连接地址存储区e,所以不必重新保证用以记录此判断数据的存储区在磁光盘D上,能回避数据记录容量缩小这样问题。
在此实施例中,当将跨越2个以上的物理存贮块的数据记录在写入处理装置401时,由于设置了检索用以记录此2个以上的物理存贮块的连续的记录区域并记录在文件分配表FAT上的随机连续记录用检索装置,就不会有上述2个以上的物理存贮块的数据以物理存贮块单位记录在物理的分离的位置上的情况,所以能有效地缩短数据读出时的寻道时间。
在上述实施例中,示出适用于能改写的磁光(MO)盘的例子,此外当然也适用作为磁盘的硬盘。在适用于补写型只1次写入的WORM磁盘时,能进行完全移到别的数据的记录位置的处理,由于进行这种处理后数据的记录容量的剩余变小,通常不进行这种处理(也可以进行),将文件分配表FAT记录到磁光盘D上的技术也能适用。
权利要求
1.一种数据传输装置,其特征在于它包括保持压缩前数据的压缩前数据保持装置;对用上述压缩前数据保持装置保持的上述压缩前数据进行数据压缩处理的数据压缩处理装置;保持来自上述数据压缩处理装置的压缩数据的压缩数据保持装置;按照上述压缩前数据与上述压缩数据的各数据长和设定条件判断应传送的数据的判断装置;按照来自上述判断装置的判断结果,传送用上述压缩前数据保持装置保持的压缩前数据和用上述压缩数据保持装置保持的压缩数据中任一种数据的数据传送装置。
2.权利要求1所说的数据传输装置,其特征在于上述判断装置按照作为压缩前数据的数据长与压缩数据的数据长之差的实际差值和规定的设定差值进行判断处理,上述实际差值大于上述设定差值时输出表示传送压缩数据的判断结果,上述实际差值小于上述设定差值时输出表示传送压缩前数据的判断结果。
3.权利要求1所说的数据传输装置,其特征在于上述判断装置按照作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率和规定的设定压缩率进行判断处理,上述实际压缩率大于上述设定压缩率时,输出表示传送压缩数据的判断结果,上述实际压缩率小于上述设定压缩率时,输出表示传送压缩前数据的判断结果。
4.权利要求1所说的数据传输装置,其特征在于作为压缩前数据的数据长与压缩数据的数据长之差的实际差值大于规定的设定差值而且作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率也大于规定的设定压缩率时,输出表示传送压缩数据的判断结果,除此之外的情况输出表示传送压缩前数据的判断结果。
5.权利要求1所说的数据传输装置,其特征在于上述判断装置判断作为上述压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率满足预先设定的2个条件中的任一个条件,上述实际压缩率满足一个条件时输出表示传送压缩数据的判断结果,上述实际压缩率满足另一个条件时输出表示传送压缩前数据的判断结果。
6.权利要求5所说的数据传输装置,其特征在于对压缩前数据进行数据压缩时,使压缩率所期望的值设为期望压缩率β时,上述的一个条件是0<实际压缩率ε<β(β-1),上述另一个条件是实际压缩率ε≥β(β-1)。
7.权利要求2所说的数据传输装置,其特征在于设置用以将上述设定压缩率或上述设定差值以及上述设定压缩率和上述设定差值变更为任意值的设定值变更装置。
8.权利要求1所说的数据传输装置,其特征在于上述压缩前数据是由外部供给的数据。
9.权利要求1所说的数据传输装置,其特征在于上述数据传送装置将上述压缩前数据或上述压缩数据传送到对记录介质进行数据记录的数据记录装置上。
10.一种数据传输装置,其特征在于它包括保持压缩前数据的压缩前数据保持装置;将用上述压缩前数据保持装置保持的上述压缩前数据,用规定的数据长单位进行数据压缩处理的数据压缩处理装置;保持来自上述数据压缩处理装置的压缩数据的压缩数据保持装置;按照用上述数据压缩处理装置对一部分压缩前数据进行压缩处理得到的一部分压缩数据的数据长和上述一部分压缩前数据的数据长以及设定条件,判断应传送的数据判断装置;按照来自上述判断装置的判断结果,传送用上述压缩前数据保持装置保持的压缩前数据和用上述压缩数据保持装置保持的压缩数据中任一种数据的数据传送装置。
11.权利要求10所说的数据传输装置,其特征在于设置有顺序删除用上述数据压缩处理装置压缩处理过的压缩前数据的数据删除装置。
12.权利要求10所说的数据传输装置,其特征在于上述判断装置按照作为上述一部分压缩前数据的数据长对上述一部分压缩数据的数据长的比率的预测压缩率和规定的设定压缩率,进行上述判断处理;上述预测压缩率大于上述设定压缩率时输出表示传送压缩数据的判断结果;上述预测压缩率小于上述设定压缩率时输出表示传送压缩前数据的判断结果。
13.权利要求10所说的数据传输装置,其特征在于数据压缩处理装置,当上述判断装置的判断结果表示传送压缩前数据时,对上述一部分压缩前数据进行压缩处理时刻以后的压缩数据停止压缩处理。
14.权利要求12所说的数据传输装置,其特征在于设置有对上述预测压缩率进行与数据种类对应的加权的加权装置。
15.权利要求12所说的数据传输装置,其特征在于设置用以将上述设定压缩率变更为任意值的设定值变更装置。
16.权利要求10所说的数据传输装置,其特征在于上述压缩前数据是由外部供给的数据。
17.权利要求10所说的数据传输装置,其特征在于上述数据传送装置将上述压缩前数据或上述压缩数据传送到对记录介质进行数据记录的数据记录装置上。
18.一种数据记录装置,其特征在于它包括对记录介质进行数据记录的数据记录单元;对输入数据进行数据压缩处理的数据压缩处理装置;保持未对上述输入数据进行数据压缩处理的压缩前数据和来自上述数据压缩处理装置的压缩数据的数据保持装置;按照上述压缩前数据与上述压缩数据的各数据长和设定条件判断应传送的数据的判断装置;按照来自上述判断装置的判断结果,将用上述数据保持装置保持的压缩前数据和压缩数据中任一种数据输出到上述记录装置的数据输出装置。
19.权利要求18所说的数据记录装置,其特征在于上述判断装置按照作为压缩前数据的数据长与压缩数据的数据长之差的实际差值和规定的设定差值进行上述判断处理;上述实际差值大于上述设定差值时输出表示传送压缩数据的判断结果;上述实际差值小于上述设定差值时输出表示传送压缩前数据的判断结果。
20.权利要求18所说的数据记录装置,其特征在于上述判断装置按照作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率和规定的设定压缩率进行上述判断处理;上述实际压缩率大于上述设定压缩率时输出表示传送压缩数据的判断结果;上述实际压缩率小于上述设定压缩率时输出表示传送压缩前数据的判断结果。
21.权利要求18所说的数据记录装置,其特征在于上述判断装置在作为压缩前数据的数据长与压缩数据的数据长之差的实际差值大于规定的设定差值而且作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率也大于规定的设定压缩率时,输出表示传送压缩数据的判断结果,除此以外的情况输出表示传送压缩前数据的判断结果。
22.权利要求18所说的数据记录装置,其特征在于上述判断装置判断作为上述压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率满足预先设定的2个条件中的任一个条件,上述实际压缩率满足一个条件时输出表示传送压缩前数据的判断结果,上述实际压缩率满足另一个条件时输出表示传送压缩数据的判断结果。
23.权利要求22所说的数据记录装置,其特征在于将压缩前数据进行数据压缩时压缩率所期望的值设为期望压缩率β时,上述一个条件是0<实际压缩率ε<β(β-1),上述另一条件是实际压缩率ε≥β(β-1)。
24.权利要求23所说的数据记录装置,其特征在于将用输入数据的数据长决定的单位逻辑存贮块作为基准,以在上述输入数据中定义的地址为逻辑地址;用上述数据压缩处理装置以与上述预测压缩率β相同的实际压缩率对上述输入数据进行数据压缩处理,将由进行数据压缩处理后的压缩数据的数据长决定的单位物理存贮块作为基准,作为在上述记录介质上记录上述压缩数据时的地址分配,将由此定义的地址作为物理地址时,上述数据输出装置指定与上述输入数据有关的压缩数据或压缩前数据的写入物理地址,将上述压缩数据或压缩前数据输出到上述数据记录装置。
25.权利要求24所说的数据记录装置,其特征在于分配对应表使输入数据的读出逻辑地址和与该输入数据有关的压缩数据或压缩前数据的写入物理地址对应;设置有将此分配对应表记录到记录介质的规定区域的记录装置。
26.权利要求25所说的数据记录装置,其特征在于设置有按照登录在上述分配对应表上的物理地址制作状态记录表的表制作装置,所说的状态记录表是将上述记录介质上的数据状态记录以物理存贮块单位作为比特信息展开而构成。
27.权利要求26所说的数据记录装置,其特征在于上述表制作装置设置有按照单位物理存贮块计算出与登录在上述分配对应表上的物理地址对应的比特的比特计算装置;对构成上述状态记录表的比特串列中用上述比特计算装置算出的比特进行置位处理的置位处理装置。
28.权利要求24所说的数据记录装置,其特征在于设置有以物理存贮块单位检索上述记录介质上的实质上成为未记录区的区域并检测出该未记录区的物理地址的个别区检索装置;上述数据输出装置指定用上述个别区检索装置检出的上述未记录区的物理地址,将上述压缩数据或压缩前数据输出到上述数据记录装置。
29.权利要求28所说的数据记录装置,其特征在于上述个别区检索装置按照用上述制作装置制成的上述状态记录表的比特信息检测出上述未记录区的物理地址。
30.权利要求24所说的数据记录装置,其特征在于设置有在上述数据压缩处理装置的实际压缩率小于预测压缩率而且所得到的压缩数据跨越2个以上的物理存贮块时,以连续的上述2个以上的物理存贮块单位检索上述记录介质上的实质上成为未记录区的区域并检测出该未记录区的物理地址的连续区检索装置;上述数据输出装置指定用上述连续区检索装置检出的上述未记录区的物理地址,将上述压缩数据或压缩前数据输出到上述数据记录装置。
31.权利要求30所说的数据记录装置,其特征在于上述连续区检索装置按照与用上述表制作装置制成的上述状态记录表中2个以上的物理存贮块对应的比特串列信息检出上述未记录区的物理地址。
32.权利要求25所说的数据记录装置,其特征在于上述分配对应表设有第一登录区,用以与上述读出逻辑地址对应地登录上述输入数据的上述读出逻辑地址,和与上述输入地址有关的压缩数据或压缩前数据的物理存贮块单位的写入物理地址;第二登录区,用以在上述压缩数据或上述压缩前数据跨越2个以上的物理存贮块时除其前头的物理存贮块外各物理存贮块的物理地址,分别作为连接地址登录,将无连接地址的信息和表示记录在上述记录介质上的数据是压缩数据还是压缩前数据的判断数据登录在上述第二登录区中与最终物理存贮块对应的区域上。
33.一种数据传输方法,其特征在于按照所保持的压缩前数据与对该压缩前数据进行数据压缩处理得到的压缩数据的各数据长和设定条件来判断应传送的数据,按照此判断结果传送上述压缩前数据或上述压缩数据中任一种数据。
34.权利要求33所说的数据传输方法,其特征在于上述判断按照作为压缩前数据的数据长与压缩数据的数据长之差的实际差值和规定的设定差值来进行,上述实际差值大于上述设定差值时传送压缩数据,上述实际差值小于上述设定差值时传送压缩前数据。
35.权利要求33所说的数据传输方法,其特征在于上述判断按照作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率和规定的设定压缩率来进行,上述实际压缩率大于上述设定压缩率时传送压缩数据,上述实际压缩率小于上述设定压缩率时传送压缩前数据。
36.权利要求33所说的数据传输方法,其特征在于当上述判断结果是作为上述压缩前数据的数据长与压缩数据的数据长之差的实际差值大于规定的设定差值而且作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率也大于规定的设定压缩率时,传送压缩数据,除此以外的场合传送压缩前数据。
37.权利要求33所说的数据传输方法,其特征在于上述判断按作为上述压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率满足预先规定的2个条件中的任一个条件来进行,上述实际压缩率满足一个条件时传送压缩前数据,上述实际压缩率满足另一个条件时传送压缩数据。
38.权利要求37所说的数据传输方法,其特征在于当将压缩前数据进行数据压缩时压缩率所期望的值设为期望压缩率β时,上述一个条件是0<实际压缩率ε<β(β-1),上述另一条件是实际压缩率ε≥β(β-1)。
39.权利要求34所说的数据传输方法,其特征在于上述设定压缩率或上述设定差值以及上述设定压缩率和上述设定差值能变更为任意值。
40.权利要求33所说的数据传输方法,其特征在于上述压缩前数据是由外部供给的数据。
41.权利要求33所说的数据传输方法,其特征在于将上述压缩前数据或上述压缩数据传送到对上述记录介质进行数据记录的数据记录装置上。
42.一种数据传输方法,其特征在于按照对所保持的压缩前数据中一部分压缩前数据进行压缩处理得到的一部分压缩数据的数据长和上述一部分压缩前数据的数据长以及设定条件,判断应传送的数据,按照此判断结果传送上述压缩前数据和压缩数据中的任一种数据。
43.权利要求42所说的数据传输方法,其特征在于按顺序删除按上述数据压缩处理方式进行过数据压缩处理的压缩前数据。
44.权利要求42所说的数据传输方法,其特征在于上述判断按照作为上述一部分压缩前数据的数据长对上述一部分压缩数据的数据长的比率的预测压缩率和规定的设定压缩率来进行,上述预测压缩率大于上述设定压缩率时传送压缩数据,上述预测压缩率小于上述设定压缩率时传送压缩前数据。
45.权利要求42所说的数据传输方法,其特征在于上述判断结果表示传送压缩前数据时,对上述一部分压缩前数据进行压缩处理时刻以后的压缩前数据不再进行压缩处理。
46.权利要求44所说的数据传输方法,其特征在于对上述预测压缩率进行与数据种类对应的加权。
47.权利要求44所说的数据传输方法,其特征在于上述设定压缩率能变更为任意值。
48.权利要求42所说的数据传输方法,其特征在于上述压缩前数据是由外部供给的数据。
49.权利要求42所说的数据传输方法,其特征在于将上述压缩前数据或上述压缩数据传送到对记录介质进行数据记录的数据记录装置上。
50.一种数据记录方法,其特征在于按照未对输入数据进行压缩处理的压缩前数据与对上述输入数据进行数据压缩处理得到的压缩数据的各数据长和设定条件,判断应记录的数据,按照此判断结果,将压缩前数据和压缩数据中的任一种数据记录到记录介质上。
51.权利要求50所说的数据记录方法,其特征在于上述判断按照作为压缩前数据的数据长与压缩数据的数据长之差的实际差值和规定的设定差值来进行,上述实际差值大于上述设定差值时记录压缩数据,上述实际差值小于上述设定差值时记录压缩前数据。
52.权利要求50所说的数据记录方法,其特征在于上述判断按照作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率和规定的设定压缩率来进行,上述实际压缩率大于上述设定压缩率时记录压缩数据,上述实际压缩率小于上述设定压缩率时记录压缩前数据。
53.权利要求50所说的数据记录方法,其特征在于当上述判断结果是作为压缩前数据的数据长与压缩数据的数据长之差的实际差值大于规定的设定差值而且作为压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率也大于规定的设定压缩率时,记录压缩数据,除此以外的场合记录压缩前数据。
54.权利要求50所说的数据记录方法,其特征在于上述判断按照作为上述压缩前数据的数据长对压缩数据的数据长的比率的实际压缩率满足预定的2个条件中任一个条件来进行,上述实际压缩率满足一个条件时记录压缩前数据,上述实际压缩率满足另一个条件时记录压缩数据。
55.权利要求54所说的数据记录方法,其特征在于将压缩前数据进行数据压时压缩率所期望的值设为期待压缩率β时,上述一个条件是0<实际压缩率ε<β(β-1),上述另一个条件是实际压缩率ε≥β(β-1)。
56.权利要求55所说的数据记录方法,其特征在于由上述输入数据的数据长决定的单位逻辑存贮块作为基准,在上述输入数据中所定义的地址作为逻辑地址,以与上述预测压缩率ε相同的实际压缩率ε对上述输入数据进入数据压缩处理,把由进行数据压缩处理后的压缩数据的数据长决定的单位物理存贮块作为基准,将以在上述记录介质上记录上述压缩数据时的地址分配来定义的地址作为物理地址时,指定与上述输入数据有关的压缩数据或压缩前数据的写入物理地址,记录上述压缩数据或压缩前数据。
57.权利要求56所说的数据记录方法,其特征在于将分配对应表记录在记录介质的规定区域上,所说的分配对应表对应上述输入数据的读出逻辑地址和与该输入数据有关的压缩数据或压缩前数据的写入物理地址。
58.权利要求57所说的数据记录方法,其特征在于按照登录在上述分配对应表上的物理地址制成状态记录表,所说的状态记录表是将上述记录介质的数据状态记录以物理存贮块单位作为比特信息展开而构成。
59.权利要求58所说的数据记录方法,其特征在于按照单位逻辑存贮块算出与登录在上述分配对应表上的物理地址对应的比特,对构成上述状态记录表的比特串列中的上述已算出的比特进行置位处理。
60.权利要求56所说的数据记录方法,其特征在于以物理存贮块单位检索上述记录介质上的实质上成为未记录区的区域,检出该未记录区的物理地址,指定此已检出的上述未记录区的物理地址,记录上述压缩数据或压缩前数据。
61.权利要求60所说的数据记录方法,其特征在于按照上述状态记录表的比特信息检测出上述未记录区的物理地址。
62.权利要求56所说的数据记录方法,其特征在于当上述实际压缩率小于预测压缩率而且所得到的压缩数据跨越2个以上的物理存贮块时,以连续的上述2个以上的物理存贮块单位检索上述记录介质上的实质上成为未记录区的区域,检测出该未记录区的物理地址,指定此已检出的上述未记录区的物理地址,记录上述压缩数据或压缩前数据。
63.权利要求62所说的数据记录方法,其特征在于按照上述状态记录表中与上述2个以上的物理存贮块对应的比特串列信息,检测出上述未记录区的物理地址。
64.权利要求57所说的数据记录方法,其特征在于上述分配对应表有第一登录区和第二登录区,其中所述第一登录区用以与上述读出逻辑地址对应地登录上述输入数据的上述读出逻辑地址,和与上述输入数据有关的压缩数据或压缩前数据的物理存贮块单位的写入物理地址;所述第二登录区,用以当上述压缩数据或压缩前数据跨越2个以上的物理存贮块时登录除其前头物理存贮块外各物理存贮块的物理地址,分别作为连接地址;在上述第二登录区中与最终物理存贮块对应的区域上登录无连接地址的信息和表示记录在上述记录介质上的数据是压缩数据还是压缩前数据的判断数据。
全文摘要
在本发明的数据传输装置,按照压缩前数据的数据长和压缩数据的数据长,分别运算实际差值和实际压缩率。当实际差值大于设定差值α而且实际压缩率也大于设定压缩率β时,通过数据输出装置79向数据输出端3传输压缩数据,除此以外的场合向输出端3传输压缩前数据。防止进行数据压缩的数据与未压缩的数据在存储区上占有的空间大体相同等现象,避免在数据输出端3上进行无用的解压缩处理。
文档编号H03M7/48GK1127558SQ9519033
公开日1996年7月24日 申请日期1995年4月21日 优先权日1994年4月22日
发明者川岛哲司, 猪口达也 申请人:索尼公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1