CN1501248B - 数据输入存贮器并对存储器内存入的数据进行运算输出并能高速操作的数据输入输出装置 - Google Patents
数据输入存贮器并对存储器内存入的数据进行运算输出并能高速操作的数据输入输出装置 Download PDFInfo
- Publication number
- CN1501248B CN1501248B CN2003101179044A CN200310117904A CN1501248B CN 1501248 B CN1501248 B CN 1501248B CN 2003101179044 A CN2003101179044 A CN 2003101179044A CN 200310117904 A CN200310117904 A CN 200310117904A CN 1501248 B CN1501248 B CN 1501248B
- Authority
- CN
- China
- Prior art keywords
- data
- mentioned
- syndrome
- unit
- error correction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1652—Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
- G06F13/1657—Access to multiple memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/065—Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Bus Control (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
数据输入输出装置具有1个存储器、将数据存储在上述存储器的输入接口部、运算部取得上述存储器内的数据、根据该数据按照需要进行运算,更新上述存储器内的数据,通过上述运算部运算后,将在上述存储器内取得的数据传送至外部的输出接口部以及总线控制部,规定上述各部各自的优先级,按照上述优先级每传送规定数的数据,利用允许的存储存取,调整上述各部的存储存取竞态争用。
Description
本案是申请人日本松下电器产业株式会社于1998年4月1日提交的发明名称为“数据输入存贮器并对存储器内存入的数据进行运算输出并能高速操作的数据输入输出装置”申请号为98109739.1的中国专利申请的分案申请。
技术领域
本发明是涉及数据输入输出装置,特别是对输入的数据进行特定的运算输出,其输入和输出利用各自规定的速率进行数据传输的输入输出装置。
背景技术
在利用光盘、磁盘等存储数字数据时,计算机或AV机器等必须有数据输入输出装置。
数据输入输出装置读出光盘等所记录的数据,根据需要进行数据加工和纠错,将数据通过计算机等可以利用的形式传送至计算机的装置。
<光盘读出装置>
以下用图说明已有技术的光盘读出装置作为这样的数据输入输出装置的一个例子。
图1为已有技术的光盘读出装置的简要构成图。
光盘读出装置读出光盘1010所记录的数据,在对读出数据纠错后传送至主机1070,该装置具有待取单元1020、放大器1030、前端处理机1040、光盘控制部1100、旋转电机1050、伺服控制器1060、***控制部1200。
在这里,***控制部1200通过光盘控制部1100接收来自主机1070的数据要求的指令,解释指令控制伺服控制器1060和光盘控制部1100,根据数据要求,是实现功能的微处理机。
旋转电机1050使光盘1010旋转,伺服控制器1060根据前端处理机1040的信息,接收***控制部1200的指示,控制旋转电机1050的旋转和待取单元1020的透镜位置。
待取单元1020通过激光的反射光读出光盘1010所记录的数据,并变换为电信号,放大器1030将待取单元1020的输出信号放大,输出至前端处理机1040。
前端处理机1040根据输入的信号由伺服腔制器1060、旋转电机1050和待取单元1020进行反馈控制,将稳定的信号输出给光盘控制部1100,光盘控制部具有补偿电路、AGC(自动增益控制电路)、PLL(锁相环)等,前端处理机1040将输出至光盘控制部1100的信号解调为数据。
光盘控制部1100将来自主机1070的数据要求指令通知***控制部1200,在***控制部1200的控制下,将来自前端处理机1040的输入信号解调取出所需数据,进行纠错并将数据传送至主机1070。
在图1中粗线表示光盘1010所记录的数据到达主机1070的流向,即光盘1010所记录的数据通过待取单元1020、放大器1030、前端处理机1040、光盘控制部1100到达主机1070。
以下详细说明已有技术的光盘读出装置的光盘控制部1100。
图2为已有技术的光盘控制部1100的构成图。
光盘控制部1100有第1存储器1110、第2存储器1120、第3存储器1130、磁盘接口部1140、纠错部1150、主接口部1160、第1传送部1170和第2传送部1180。
图2中的粗线表示来自前端处理机1 040的输入的数据到达主机1070的流向。
这里,磁盘接口部1140解调来自前端处理机1040的输入信号,取出必要的数据,存储在第1存储器内。
纠错部1150通过磁盘接口部1140对第1存储器所存储的规定字节的数据根据需要校正数据进行纠错运算处理,这里,前述的规定字节数是构成纠错处理的处理单位-字组的数据数,以下将这一规定的字节数的数据称为1个字组。关于纠错部1150的纠错处理,以后进一步详细说明。
另外,第1传送部1170,当纠错部1150进行纠错运算处理后将第1存储器内的数据传送至第2存储器内。
第1存储器1110的容量为1兆位,内部有3个区可以存储1个字组的数据。
磁盘接口部1140、纠错部1150、第1传送部1170由于各自独立运行,在某一期间上述的3个区的各个区可以由磁盘接口部1140、纠错部1150、第1传送部1170中的一个存取,另外,由磁盘接口部1140所存取的区,在下一个一定期间内由纠错部1150存取,由纠错部1150存取的区在下一个一定期间内由第1传送部1170存取,第1传送部1170所存取的区在下一个一定期间内由磁盘接口部1140存取。
也就是如若着眼于第1存储器整体的存取,那么第1存储器便可从磁盘接口部1140、纠错部1150、第1传送部1170的3个***同时存取。这样,第1存储器1110同时可以从3个***存取。
另外,如若着眼于1个字组的数据,由磁盘接口部1140存储在第1存储器1110上的数据,通过下面的纠错部1150进行纠错运算处理,然后由第1传送部1170传送至第2存储器。
第2存储器1120由于存储着第1传送部1170传送的数据,所存储的数据由第2传送部1180随时传送至第3存储器。
第3存储器1130是4兆位容量的存储器,可以存储15个字组的数据,此第3存储器1 130将从光盘读出的数据经第1存储器、第2存储器,最终存储起来。
主接口部1160将来自主机1070的数据要求指令传送给***控制部1200,另外,接受***控制部1200的指示,将第3存储器所存储的数据传送至主机。
***控制部1200管理第3存储器所存储的数据,当主机1070要求第3存储器1130不存储数据时,通过伺服控制器1060驱动旋转电机1050、其结果是、第3存储器1130所执行的数据通过控制主接口部1160传送至计算机,另外,当主机1070已经要求第3存储器1130存储数据时,***控制部1200通过伺服控制器1060不驱动旋转电机1050、控制主接口部1160将第3存储器1130中的数据传送至主机。
这样,已有技术的光盘控制部1100大致分为以第1存储器1110为中心的数据部分和纠错处理部分以及以第3存储器1130为中心的数据传送至主机处理的部分2种,作为这些处理之间的连接的FIFO缓冲器由第2存储器1120构成。
也就是磁盘接口部1140尽管前端处理机1040的输入数据的传送速度是低速的,可是在主接口部1160输出至主机的数据传输速度,为了不使主机的处理迟延而要求高速,因此已有技术的光盘控制部1100设置低速处理部分和高速处理部分,在这些处理之间通过缓冲器连接构成。
<纠错部>
以下进一步详细说明上述的已有技术的光盘读出装置1000的光盘控制部1100内的纠错部1150。
首先说明纠错部1150进行的纠错。
光盘等记录的数字数据的存储媒体因为记录密度非常高,所以媒体上的小的损伤、污损和尘埃等导致发生数据误差的可能性很大,从而光盘等的读出装置有可能读出的数据不正确。
为防止这种状况,在存储媒体上记录数据时,在数据上加纠错码,就读出存储媒体的装置而言,利用这种纠错码捡出错误的数据,进行纠错处理使其成为正确的数据,纠错处理用的符号,例如使用纠错能力强的所罗门码。
图3为纠错符号的例子。
该图示出了将2个符号组合制作的符号是最基本的-积码。
对n1×n2字节的信息数据1311,在C1方向加k1字节的奇偶数据,在c2方向加k2字节的奇偶数据,另外,对c1奇偶数据在c2方向加k2字节的奇偶数据。
即对信息数据1311,附加有k1×n2字节的奇偶数据1312、n1×k2字节的奇偶数据1313、k1×k2字节的奇偶数据1314,这些(n1+k1)×(n2+k2)字节的数据构成纠错处理的单位-1个字组。
图3所示为积码的纠错处理,例如最初第1行(n1字节)的信息数据,利用c1方向的奇偶数据(k1字节)进行纠错,从第2行(n2+k2)到最后1行也同样进行纠错,这虽然可以纠正某种程度的错误,可是为提高信息的准确性,进而应利用c2方向的奇偶数据对第1竖行(n2字节)进行纠错,从第2竖行(n1+k1)到最后也同样可以进行纠错,另外,还可以利用c1方向进行纠错,以便更进一步提高信息的准确性。
例如利用c1方向的奇偶数据就第1行的信息数据的纠错运算按以下顺序进行。
(1)用第1行的信息数据和奇偶数据计算校正子,当多元校正子为0时,即校正子的所有成分为0时,可以判断为无错。
(2)以校正子为基础求错误位置多项式和错误数值多项式,作为这种计算方法有欧几里德等方法。
(3)求错误位置多项式的根,这种计算方法公知的有链式检索方法等。
(4)求误差值,将错误位置中的信息数据值与前述的误差值按位加进行校正。
以下说明纠错部1150的构成。
纠错部1150包括校正子计算电路1151、欧几里德计算电路1152、链式计算电路1153和错误数据校正电路1154。
校正子计算电路1151是前述(1)顺序的处理电路,欧几里德计算电路1152是前述(2)顺序的处理电路,链式计算电路1153是前述(3)顺序的处理电路,错误数据校正电路1154是前述(4)顺序的处理电路,这些电路各各同步并行处理,即以流水线方式依次处理。
图中的粗线表示第1存储器1110的数据流向。
校正子计算电路1151取得第1存储器1110所存储的数据,将计算结果转交给欧几里德计算电路1152,欧几里德计算电路1152将计算结果转交给链式计算电路1153,链式计算电路1153将计算结果转交给错误数据校正电路1154,错误数据校正电路1154求误差值,参照第1存储器内的错误位置中的信息数据,计算求出的误差值与按位加,更新第1存储器1110内的信息数据。
图5为已有技术的纠错部1150的并行处理格式。
图中编码的数据串,例如上述的c1方向的奇偶数据加1行的信息数据,用No.1、No2等表示,各各的数据串是字组编码的一个代码字(Cade word),此代码字通过信道被接收时、也称接收字(Received Word),这里的字组编码是1行的数据等汇集一起的数据的编码,与其他1行的数据等的汇集一起的数据的编码称为独立进行的编码,在这里,将读出待取单元1020等的光盘通路称为信道。
另外。同图中各处理所需时间用粗线长度表示。
正如同图所示,校正子计算电路1151在时间t4计算No.4的数据串,在时间t5计算No.5的数据串,在不同的时间处理不同的数据串,时间t4,欧几里德计算电路1152处理No.3的数据串,链式计算电路1153处理No.2的数据串,错误数据校正电路1154处理No.1的数据串。
这样,4个电路为实现以流水线方式依次处理,在t1、t2等时间与4个电路中最长的处理时间相一致。
正如同图中用粗线所表示的,实际上各电路的处理时间因为不相同,为实现以流水线方式依次处理,故设置电路等待时间进行调整,而且,一般来讲,欧几里德计算的计算量最大,反之,校正子计算、链式计算、错误数据校正的各自计算量少。
以上作为已有技术的数据输入输出装置的例子,说明了光盘读出装置,但此光盘读出装置有以下问题。
首先,光盘控制部1100的第1存储器和第3存储器虽然可存储相同内容,可是数据输入中的数据传送速度与数据输出中的数据传送速度不同,输入数据的运算处理机构与高速数据输出处理机构的整体化,使存储器存取控制复杂,及其他理由而采用别的存储器,在这种情况下,不希望在装置内设置象第1存储器那样的无用的存储器。
其次,纠错部1150为进行4个电路的以流水线方式依次处理,4个电路中处理最慢的电路的以外的电路发生等待时间。
最近,家电产品、信息机器等在要求进一步小型化、高性能化的状况下,存在上述那样的无用存储器和无效的等待时间是个特别值得注意的问题,因为消除浪费直接、间接地与小型化、高性能化有关。
发明内容
本发明的第1目的是提供的数据输入输出装置,不需要各自具有以第1规定的传送速度存储输入的数据的存储器和以第2规定的传送速度存储输出数据的存储器。
本发明的第2目的是提供的数据输入输出装置,是对输入的数据进行纠错处理输出数据的数据输入输出装置,可以及时进行纠错处理。
为达到第1目的,本发明的特征是接收外部第1装置的数据经过运算输出至外部第2装置的数据输入输出装置,继续接收第1装置的数据的输入单元和给定的数据进行运算的运算单元,将数据输出至第2装置的输出单元,存储数据的一个存储器,和连接上述输入单元、上述运算单元、上述输出单元和上述存储器的总线即一个存储总线,上述输入单元作为传送基础,上述存储器作为传送地的第1DMA传送的第1数据传送单元、当上述第1数据传送单元的第1字节的第1DMA传送终了时,第1DMA传送的数据存储在上述存储器中的区作为传送基础,上述运算单元作为传送地,设定给上述运算单元的运算数据进行第2DMA传送的第2数据传送单元,当上述运算单元的第1字节的数据运算终了时,该数据被存储在上述存储器中的区作为传送基础,上述输出单元作为传送地的第3DMA传送的第3数据传送单元,上述第1数据传送单元、上述第2数据传送单元和上述第3数据传送单元具有排他的实行数据传送控制的数据传送控制单元,上述数据输入输出装置中的上述输入单元、上述运算单元和上述输出单元并行实现各自的操作。
上述的构成使数据输入输出装置可以实现利用数据传送控制单元排他地实行第1DMA传送、第2DMA传送和第3DMA传送,继续接收输入数据,在对该数据进行运算后,对该数据输出的一系列的处理只使用一个存储器。
另外,上述数据传送控制单元,当第2字节的数据需要第1DMA传送、第2DMA传送或第3DMA传送时,上述第1数据传送单元、上述第2数据传送单元或第3数据传送单元需要其进行数据传送,以使第2字节的数据连续传送,关于第1DMA传送、第2DMA传送或第3DMA传送中的多数需要竟态争用数据传送时,上述第1数据传送单元、上述第2数据传送单元或上述第3数据传送单元,根据需要在数据传送过程中按规定的优先级来确定,也可以使第2字节的数据连续传送。
上述构成是根据优先级控制存储存取的,对上述数据输入输出装置由外部装置所传送的数据速度和接收该数据输入输出装置的数据的外部装置要求的传送速度,根据标准在规定一定的速度时,按这些传送速度的要求,可以进行控制,即根据这种构成,通过设定方的优先级,传送速度可以适应所需的数据传送要求。
另外,通过上述构成为使第2字节数一起进行数据传送,可提高换算为每一数据的存储存取速度,容易适应上述数据的传送速度的要求。
另外,上述存储器是动态存储,第2字节数当上述存储器作为传送地或作为传送基础,连续DMA传送第2字节数的数据时,每1字节所需的存储存取时间为t秒,上述输入单元接收第1装置的数据的平均传送速度为V字节/秒,就某数据而言,第2DMA传送所需次数为n时,也可以满足tv(n+2)<1所规定的数据。
利用上述构成,数据输入输出装置即使连续地数据输入,存储器也不溢出。
另外,上述输入单元有第1FIFO,以便暂存来自第1装置的数据,上述输出单元有第2FIFO,以便暂存输出至第2装置的数据,上述第1数据传送单元将上述输入单元中的第1FIFO作为第1DMA传送的传送基础,上述第3数据传送单元将上述输出单元中的第2FIFO作为第3DMA传送的传送地,当第1FIFO存储第2字节数的数据时,必须第1DMA传送,当上述运算单元的运算终了,在上述存储器中存在第2字节数的数据时,当第2FIFO内第2字节数的数据发生空白时,必须第3DMA传送。
上述构成为传送某一数据,通过存储存取等,当第1DMA传送或第3DMA传送不能立即适应需要时,通过FIFO可以防止接收输入数据的损失和输出的数据的中断,即对数据输入输出装置在继续传送外部装置的数据情况下,数据输入输出装置可以确保接收该数据输入输出装置的数据的外部装置要求的数据的传送速度。
另外,上述优先级最高级为上述第1数据传送单元的第1DMA传送,上述数据传送控制单元当需要上述第1DMA传送时,上述第1数据传送单元、上述第2数据传送单元或上述第3数据传送单元中的任何一个已经实行了DMA传送,实行中的第2字节数的DMA传送终了后,上述第1数据传送单元执行第1DMA传送,当需要上述第1DMA传送时,上述第1数据传送单元、上述第2数据传送单元或上述第3数据传送单元中的任何一个已经不实行DMA传送,上述第1数据传送单元立即实行第1DMA传送,第2字节数使第1FIFO的容量为m字节,上述存储器作为传送地或传送基础,当第2字节数的数据连续DMA传送时,存储存取所需时间为T秒,当上述输入单元接收第1装置的数据的平均传送速度为V字节/秒时,也可以满足m/v>T所规定的数值。
通过以上构成,数据输入输出装置可实现连续传送数据并立刻存储在存储器中,接收的数据没有损失。
另外,关于上述优先级,上述第1数据传送单元和上述第3数据传送单元的DMA传送比上述第2数据传送单元的第2DMA传送的低,上述数据传送控制单元只要第1DMA传送需要和不需要第3DMA传送时,也可以让第2数据传送单元实行第2DMA传送。
通过上述构成,数据输入输出装置可实现运算处理的DMA传送在从输入单元至存储器的DMA传送和从存储器至输出单元的DMA传送的间隔内进行,因此数据输入和数据输出的双方数据传送速度能够适应所规定的场合。
另外,上述输入单元在接收第1装置的数据中含有纠错符号,上述运算是纠错,上述运算单元为进行上述纠错对上述存储器存取,根据上述纠错符号参照和更新上述存储器中所存储的数据,上述数据传送控制单元,只要在上述第1数据传送单元、上述第2数据传送单元和上述第3数据传送单元没有实行数据传送期间也可以允许上述运算单元为纠错对上述存储器存取。
上述的构成使得数据输入输出装置实现了输入的数据的纠错输出。
另外,上述第1装置是读出光盘数据的装置,上述光盘存储着超过第2字节数的、通过每一第3字节数的积码来编码的数据,上述存储器也可以采用第3字节数的2倍以上的规模。
上述构成使得数据输入输出装置实现了从光盘读出的数据纠错后输出。
另外,上述运算单元当第4字节数的数据被给定时,有校正子计算部,以便连续多次进行算出与该数据对应的校正子的校正子计算处理,可以存储多个校正子的队列即校正子存储队列,上述校正子计算部算出的校正子被存储在上述校正子存储队列的校正子存储部,和有上述校正子存储队列所存储的校正子为1个以上时,从该校正子存储队列取出1个校正子,取出的该校正子只有不是0时,根据该校正子校正对应该校正子的数据错误的校正部,上述运算单元中的上述校正子计算部和上述校正部也可以并行分别操作。
上述构成使得数据输入输出装置能实现由校正子计算以外的纠错处理和以独立的运行速度进行校正子计算,因此象已有技术的纠错方式那样,校正子计算的运行速度与欧几里德计算的运行速度不必统一,可以使整体纠错的运行速度高速化。
即通过校正子计算和校正子计算以外的纠错处理的并行运作,使整个纠错所需时间大致与校正子计算所需时间相等,数据输入输出装置实现了高速纠错。
从而本发明通过上述构成也达到了上述的第2目的,这样,由于第1目的和第2目的都达到,数据输入输出装置便成为小型高速化最佳的装置。
另外,上述校正部包括多项式算出部,以便根据上述的校正子求出错误位置多项式和错误数值多项式,错误位置算出部,以便求出上述多项式算出部求出的错误位置多项式的根即错误位置,上述多项式算出部求出的错误数值多项式,根据上述错误位置算出部求出的错误位置求出错误数值,根据这些来校正上述存储器中的数据的数据校正部,上述错误位置算出部与上述多项式算出部或数据校正部也可以并行操作。
上述构成就校正子计算以外的纠错处理而言,对某数据串的错误位置的算出和对其他数据串错误位置多项式及错误数值多项式的算出可同时进行,因此全部纠错所需时间更加接近于校正子计算所需时间,使数据输入输出装置实现了高速纠错。
另外,为达到上述第2目的,本发明的特征为具有校正子计算单元,关于字组编码的多接收字是各自连续进行纠错的纠错装置,逐次取得接收字,根据该接收字连续多次进行算出对应该接收字的校正子的校正子计算处理,校正子存储单元,可以存储多个校正子的队列即校正子存储队列和上述校正子计算单元算出的校正子存储在上述校正子存储队列内,校正单元,当上述校正子存储队列存储的校正子为1个以上时,从该校正子存储队列中取出1个校正子,取出的该校正子只有不是0时,根据该校正子校正对应该校正子的接收字的错误,上述纠错装置中的上述校正子计算单元和上述校正单元并行执行各自的操作。
上述构成为使校正子计算由校正子计算以外的纠错处理和以单独的运行速度进行,象已有技术的纠错方式那样,校正子计算运行速度不必与欧几里德计算的运行速度统一,即使同一数据串校正子计算所需时间比欧几里德计算所需时间长,纠错装置对全部纠错的运行速度也可以实现高速化。
即因为并行运行校正子计算和校正子计算以外的纠错处理,所以全部纠错所需时间几乎等于校正子计算所需时间,从而纠错装置实现了高速纠错。
另外,上述纠错装置进而具有接收字存储单元,以便存储上述校正子计算单元取得的接收字,上述校正单元通过更新上述接收字存储单元所存储的接收字也可以进行上述校正。
上述构成使纠错装置对存储器所存储的多数接收字高速进行纠错。
另外,上述校正单元具有多项式算出单元,以便根据上述错误求错误位置多项式和错误数值多项式;错误位置算出单元,以便求出上述多项式算出单元求出的错误位置多项式的根即错误位置;数据校正单元,根据上述多项式算出单元求的错误数值多项式和上述错误位置算出单元求的错误位置求错误数值,根据这些校正上述接收字中的数据,上述错误位置算出单元也可以与上述多项式算出单元或数据校正单元并行操作。
上述构成在校正子计算以外的纠错处理中,可同时进行某数据串的错误位置的算出和其他数据串错误位置多项式及错误数值多项式的算出,因此全部纠错所需时间更加接近于校正子计算所需时间,纠错装置实现了高速纠错。
本发明的一种对被字组编码的多个接收字的各自进行纠错的纠错装置,包括以下单元:校正子计算单元,逐次取得接收字,对所取得的每一个接收字进行算出与该接收字对应的校正子的校正子计算处理;校正子存储队列,是可以存储多个校正子的队列;校正子存储单元,将上述校正子计算单元算出的校正子存储在上述校正子存储队列中;校正单元,当上述校正子存储队列中存储了一个以上的校正子时,从该校正子存储队列取出1个校正子,只有在所取出的该校正子不是0时,根据进行用于基于该校正子而求出错误数值的预定的计算处理而求得的错误数值,对与该校正子对应的接收字的错误进行校正,其中,该预定的计算处理是指,基于该校正子求出错误位置多项式和错误数值多项式,求出错误位置多项式的根即错误位置,并且还基于错误数值多项式和错误位置求出错误数值的处理;上述纠错装置中的上述校正子计算单元和上述校正单元并行执行各自的操作。
附图说明
图1为已有技术的光盘读出装置的简要构成图。
图2为已有技术的光盘控制部1100的构成图。
图3为纠错符号的例子。
图4为已有技术的纠错部1150的构成图。
图5为已有技术的纠错部1150的并行处理的形式。
图6为本发明的实施例的光盘读出装置的简要构成图。
图7为光盘控制部2100的电路图。
图8为光盘控制部2100的数据流程图。
图9为光盘控制部2100的操作流程图。
图10为光盘控制部2100在处理多字组时的各部分操作的同步图。
图11为对存储器2110内部存取的概念图。
图12为存储器管理信息的概念图。
图13为总线控制部2120的功能方框图。
图14为磁盘接口部2130部分操作的流程图。
图15为校正子计算电路2140的部分操作流程图。
图16为主接口部2190的部分操作流程图。
图17为总线控制部2120的部分操作流程图。
图18为以存储器2110为对象的数据传送的同步例子。
图19为纠错控制部功能方框图。
图20为纠错控制部的通常操作流程图。
图21为第2信道传送终了中断处理的流程图。
图22为链式计算终了中断处理的流程图。
图23为纠错部2101的各部分操作同步例子。
图24为利用校正子计算和链式计算两个程序由CPU 2160运行时的光盘控制部7100的构成图。
具体实施方式
说明本发明的数据输入输出装置的实施例的光盘读出装置。
图6为本发明的实施形式的光盘读出装置的简要构成图。
光盘读出装置2000用来读出由光盘1010记录的数据,读出的数据纠错后传送至主机1070的装置,具有待取单元1020、放大器1030、前端处理机1040、光盘控制部2100、旋转电机1050、伺服控制器1060和***控制部2200。
而且本发明的实施例的光盘读出装置与已有技术的光盘读出装置相比只有光盘控制部2100和***控制部2200不同,其他构成部分相同,相同部分图6和图1用相同符号表示。
这里,光盘1010为DVD-ROM。
另外,***控制部2200通过光盘控制部2100接收主机1070的数据要求指令,解释指令,控制伺服控制器1060和光盘控制部2100,根据数据要求是微处理机实现该功能。
旋转电机1050使光盘1010旋转,伺服控制器1060在前端处理机1040的信息基础上接收***控制部2200的指示,控制旋转电机1050的旋转和待取单元1020的透镜位置。
待取单元1020通过激光的反射光读出光盘1010所记录的数据并将其变为电信号,放大器1030放大待取单元1020的输出信号,输出至前端处理机1040。
前端处理机1040根据输入的信号,通过伺服控制器1060、旋转电机1050和待取单元1020进行反馈控制,将稳定的信号输出至具有均衡器、AGC、PLL等的光盘控制部2100。
光盘控制部2100将主机1070的数据要求指令通知***控制部2200,在***控制部2200的控制下,解调前端处理机1040的输入信号,取出所需的数据进行纠错,将数据传送至主机1070,这里的光盘控制部2100的内部构成和内部操作,与已有技术的光盘控制部1100不同。
图6中粗线表示光盘1010所记录的数据到达主机1070的流向,即光盘1010所记录的数据通过待取单元1020、放大器1030、前端处理机1040、光盘控制部2100到达主机1070。
以下详细说明光盘控制部2100。
图7为光盘控制部2100的电路图。
如图所示,光盘控制部2100备有存储器2110、总线控制部2120、磁盘接口部2130、校正子计算电路2140、链式计算电路2150、CPU 2160、指令ROM 2170、数据ROM 2180和主接口部2190。
这里,存储器2110是4兆位容量的动态存储器,可以存储15字组的数据,而且存储器2110再次需要已经存储的内容,所谓磁盘高速缓冲存储可以利用同样大的容量,在本说明中没有特别涉及磁盘高速缓冲存储器的利用。
另外,磁盘接口部2130解调前端处理机1040的输入信号,取出所需的数据,通过总线控制部2120传送至存储器2110,并有暂存8字节以上规模的FIFO,以便将数据传送至存储器2110。
校正子计算电路2140是上述(1)顺序处理电路,存储器2110所存储的数据通过总线控制部2120取出进行校正子计算。
链式计算电路2150是上述(3)顺序的处理电路,即将错误位置多项式作为输入,错误位置多项式的根作为输出。
CPU 2160是控制光盘控制部2100的所有数据处理的,读出指令ROM 2170所存储的程序,在执行程序时,利用数据RAM 2180作为存储作业用数据的存储器,另外,CPU 2160作为纠错处理也可以进行上述(2)顺序和(4)顺序的处理。
主接口部2190当纠错后的存储器2110中的数据通过总线控制部2120取出时,传送至主机1070,有暂存8字节以上规模的FIFO,以便将数据传送至主机1070。
另外,磁盘接口部2130、校正子计算电路2140、链式计算电路2150和主接口部2190用同一总线连接。
总线控制部2120为能对存储器2110存取,给予一个存储器总成使用权的控制,也进行其他总线使用权的控制,包括DMA控制器2122。
这里,DMA控制器2122能够控制3个独立的数据传送,以下将各自数据的数据传送控制部分别称为DMA控制的第1通道、DMA控制的第2通道、DMA控制的第3通道,各自的数据传送称为第1通道的DMA传送,第2通道的DMA传送,第3通道的DMA传送。
图8为光盘控制部2100的数据流向。
由前端处理机1040的光盘控制部2100所输入的数据通过磁盘接口部2130的总线控制部2120存储在存储器2110,存储器2110所存储的数据通过总线控制部2120传送至纠错部2101,根据纠错的需要,通过纠错部2101的总线控制部2120更新存储器2110的数据,纠错后的数据通过存储器2110的总线控制部2120传送至主接口部2190,从主接口部2190传送至主机1070。
这里,纠错部2101由校正子计算电路2140、链式计算电路2150、欧几里德计算部2164和错误数据校正部2168组成,如图所示,通过总线控制部2120,校正子计算电路2140和错误数据校正部2168对存储器2110存取。
而且欧几里德计算部2164和错误数据校正部2168是通过指令ROM 2170所存储的程序和CPU 2160来实现功能处理的,欧几里德计算部2164执行上述(2)顺序的处理,错误数据校正部2168执行上述(4)顺序的处理。
从而纠错部2101的操作是校正子计算电路2140取得存储器2110中的数据,将校正子计算结果参照欧几里德计算部2164求错误位置多项式和错误数值多项式,欧几里德计算部2164将计算结果送入链式计算电路2150,错误数据校正部2168参照链式计算电路2150的计算结果的错误位置和欧几里德计算部2164的计算结果的错误数值多项式,求错误数值,通过更新存储器2110内的数据求出错误数值和存储器2110内的数据的“异”。
以下简要说明上述构成的光盘读出装置2000的光盘控制部2100对存储器2110的存取操作。
图9为光盘控制部2100的操作简要流程图。
光盘控制部2100接收主机1070的光盘读出要求指令(步骤S3010),接收的指令通过总线控制部2120传送至***控制部2200。
***控制部2200通过上述指令得到应读出的光盘媒体上的地址和应读出的数据规模,据此伺控制器1060给与旋转电机1050和待取单元1020的驱动指示,并将数据规模通知CPU 2160。
这里,要求读出1字组的数据,1字组的数据如图3所示为(n1+k1)×(n2+k2)字节的数据,即约为38kB字节的数据。
CPU 2160将从磁盘接口部2130将存储器2110的1字组的数据传送指示给DMA控制的第1通道(步骤S3020),即CPU 2160将磁盘接口部2130的地址作为传送基础,将存储器2110内应存储的地址数据作为传送地,将1字组作为传送数据规模设定给DMA控制的第1通道。
对DMA控制的第1通道指示后,旋转电机1050使光盘1010旋转,通过待取单元1020和放大器1030,前端处理机1040获得光盘1010的数据,将数据传送至光盘控制部2100中的磁盘接口部2130。
磁盘接口部2130所传送的数据通过磁盘接口部2130和总线控制部2120的控制传送至存储器2110(步骤S3030),关于数据传送的控制,以后详细说明。
CPU 2160当第1通道的DMA传送在1字组量的数据后,通过接收从DMA控制器2122到CPU的旨在传送终了的中断,判断传送终了(步骤3030,S3040),将从存储器2110到校正子计算电路2140的数据传送指示给DMA控制器的第2通道(步骤S3050),校正子计算电路2140接收计算1字组量的数据的每一个数据串(参照图3),CPU 2160将存储器2110内的一个数据串的地址作为传送基础,将校正子计算电路2140的地址作为传送地,将一个数据串的规模作为传送数据规模设定给DMA控制的第2通道。
结果是,存储器2110所存储的1数据串的数据通过校正子计算电路2140和总线控制部2120的控制,作为第2通道的DMA传送,传送至校正子计算电路2140(步骤S3060、S3070),校正子计算电路2140接收1数据串的数据并进行错误计算。
通过第2通道的DMA传送终了中断的CPU检测(步骤S3070),基于校正子计算电路的计算结果,CPU 2160和链式计算电路2150进行计算,根据需要CPU2160作为错误数据校正部2168的功能处理,通过总线控制部2120更新存储器2110的数据(步骤S3080),而且在第2通道DMA传送终了的CPU中断时,通过校正子计算电路2140终止校正子的计算。
以后详细说明从校正子计算到错误数据校正的操作。
1数据串量的纠错处理终了后,其他数据串也通过从步骤S3050到步骤S3080的处理(步骤S3090),1字组1次纠错终了后,进行从步骤S3050到步骤S3090的处理,实施第2次纠错,同样通过第3次纠错便完成了纠错(步骤S3100)。
这里,第1次纠错按图3所示的C1方向进行,第2次按C2方向,第3次再按C1方向进行,即步骤S3080的错误校正用C1方向的奇偶数据,从第1行开始到(n2+k2)行反复进行、然后用C2方向的奇偶数据,从第1竖行开始到(n1+k1)竖行反复进行,再次用C1方向的奇偶数据从第1行开始到(n2+k2)行反复进行(参照图3)。
当1字组量的数据所有的纠错处理终了后,CPU 2160将从存储器2110到主接口部2190的数据传送指示给DMA控制的第3通道(步骤S3110),即CPU 2160将存储器2110中的纠错终了的1字组数据的地址作为传送基础,将主接口部2190的地址作为传送地,将1字组量作为传送数据规模设定给DMA控制的第3通道。
实际上,主接口部2190应从存储器2110中取出数据,是除奇偶数据外的信息数据,因此存储信息数据的区和存储奇偶数据的区作为其他的区,这是因为存储奇偶数据的区在减少该区数时可以再利用。因此,信息数据存在在连续的地址中,奇偶数据存在在其他连续的地址中。从而,例如在第2信道的DMA传送中,在存储器2110中应传送的所有数据因为不存在连续地址内,分几次反复设定传送基础地址等,关于本实施例的说明是以1字组传送简要表示的。
从而,存储器2110内的1字组量的数据通过主接口部2190和总线控制部2120的控制作为第3通道的DMA传送、传送至主接口部2190(步骤S3120、S3130),关于此数据传送控制,以后详细说明。
DMA控制器2122当第3通道的DMA传送终了时,利用中断通知CPU 2160。
以上着重说明了光盘控制部2100操作概要的1字组量的数据。
图10为光盘控制部2100处理多字组数据时的各部操作动态图。
另外,图11为对存储器2110的内部存取的概念图。
图10中从第1字组到第4字组所示的为各自存储器2110所存储的1字组数据。
如图10所示,关于任一字组的数据当磁盘接口部2130的处理完了时,纠错部2101就开始处理,当纠错部2101的处理完了时,主接口部2190就开始处理,但在某一时刻,磁盘接口部2130、纠错部2101和主接口部2190分别以其他字组的数据作为处理对象并行操作。
例如磁盘接口部2130在将第3字组的数据存储在存储器2110内时,纠错部2101对存储器2110存取,对第2字组的数据进行纠错,主接口部2190从存储器2110取出第1字组的数据。
这种状态下对存储器2110的存取如图11所示,即磁盘接口部2130、纠错部2101和主接口部2190在某定时内分别对存储器2110中其他区存取。
而且图10所示为大概时间的各种并行处理的情况,但在实际中对存储器2110的存取路径由只有一个,因此总线控制部2120以极精确的时间转换磁盘接口部2130、纠错部2101和主接口部2190对存储器的存取。
如果磁盘接口部2130将1字组量的数据存储在存储器2110所需时间,比主接口部2190从存储器2110取出1字组量的数据所需时间长的话,磁盘接口部2130的数据在一定间隔内继续存储在存储器2110时,在存储器2110积存着来自磁盘接口部2130的数据,随之可能产生数据溢出。
为避免此事,对从外部到磁盘接口部2130的1字组量的数据时间,比处理1字组的数据,必需的磁盘接口部2130、纠错部2101和主接口部2190的存储存取的合计时间要短,为此存储器2110的控制时钟等是设定的。
在这里,关于CPU 2160给定DMA控制器的存储器2110中的地址进行说明。
CPU 2160编制关于数据RAM 2180内的存储器2110管理状况的存储器管理信息。
图12为存储器管理信息的概念图。
如图所示,存储器管理信息是将存储器2110内的区分割为字组单位管理的,关于每个字组作为是否可以输入、是否可以纠错和是否可以输出3种状态来管理。初始状态所有字组都可以输入。
这里,可以输入表示可以存储来自磁盘接口部2130的数据状态,可以纠错指磁盘接口部2130的数据存储完了阶段,CPU 2160在判断上述步骤S3040传送终了时,从可以输入改变为可以纠错的状态,另外,可以输出是指纠错完了阶段,当CPU 2160判断上述步骤S3100纠错完了时,从可以纠错改变为可以输出状态,进而,当CPU 2160判断上述步骤S3130传送终了时,从可以输出改变为可以输入状态。
从而,CPU 2160参照存储器管理信息,根据规定的运算从字组号算出存储器地址,将可以输入的1个字组的地址作为传送地给定DMA控制的第1通道,将可以纠错的字组地址作为传送基础给定DMA控制的第2通道,将可以输出的字组地址作为传送基础给定DMA控制的第3通道。
以下详细说明上述磁盘接口部2130、纠错部2101和主接口部2190各自与存储器2110之间的数据传送。
图13为总线控制部2120的功能方框图。
图中除总线控制部2120外,还示出了CPU 2160、磁盘接口部2130、校正子计算电路2140、主接口部2190。
总线控制部2120除上述的DMA控制器2122外,有总线调停部2121,另外,DMA控制器2122包括传送控制信息存储部2123和请求受理部2124。
这里,总线调停部2121接收CPU 2160或DMA控制器2122的总线使用要求并给予总线使用权,CPU 2160的总线使用要求中除错误数据校正部2168的数据校正的存储存取要求外,有校正子计算电路2140的计算结果的读出,至链式计算电路2150的数据传送,链式计算电路2150的计算结果的读出,而且校正子计算电路2140的数据输入地址和输出计算结果的地址;链式计算电路2150的数据输入的地址和输出结果的地址;磁盘接口部2130的地址、主接口部2190的地址的信息事先存储在指令ROM 2170,CPU 2160可以参考。
传送控制信息存储部2123存储CPU 2160给定的DMA传送的传送基础和传送地地址及传送数据规模。
请求受理部2124受理磁盘接口部2130、校正子计算电路2140、主接口部2190的传送开始要求。
这里用图14~图17说明数据传送的控制操作。
图14为磁盘接口部2130的部分操作的流程图。
磁盘接口部2130解调从前端处理机取得的数据,以规定的形式将数据存储在FIFO,当FIFO积存的数据超过8字节时(步骤S4010),对DMA控制的第1通道发出请求(步骤S4020),而且这种请求由请求受理部2124受理。
磁盘接口部2130以规定的传送速度继续输入数据,磁盘接口部2130几乎每隔一定的时间就进行步骤S4020的请求。
图15为校正子计算电路2140的部分操作流程图。
校正子计算电路2140对请求管理部2124发出向DMA控制的第2通道的请求(步骤S4110)。
校正子计算电路2140取得所传送的数据(步骤S4120),如不足8字节的数据,则反复取得数据(步骤S4130),在取得8字节的数据阶段中,再次对DMA控制的第2通道发出请求(步骤S4130、S4110)。
虽然图中未示出,但关于步骤S4120取得的数据,校正子计算电路2140与数据取得操作并行进行校正子计算。
图16为主接口部2190的部分操作流程图。
主接口部2190通过ATAPI接口连接至主机1070,从存储器2110取出的数据存储在FIFO,此FIFO所存储的数据以规定的传送速度通过ATAPI接口传送至主机1070。
从而主接口部2190为保持规定的传送速度,必须控制不使FIFO所存储的数据不足,图16为进行的操作。
即主接口部2190当FIFO内超过8字节空白时,(步骤S4210)对请求受理部2124发出关于DMA控制的第3通道的请求(步骤S4220)。
图17为总线控制部2120的部分操作流程图。
总线控制部2120在磁盘接口部2130与存储器2110之间的数据传送和主接口部2190与存储器2110之间的数据传送,关于纠错处理的存储存取分别调整优先级,在这里,在磁盘接口部2130与存储器2110之间的数据传送优先级最高,其次为在主接口部2190与存储器2110之间的数据传送的优先级,至于纠错处理的存储存取比前两者的优先级要低,这里,纠错处理的存储存取是指从存储器2110到校正子计算电路2140的数据传送和在CPU 2160与存储器2110之间的数据传送。
总线调停部2121检查请求受理部2124的受理的请求(步骤S4301),总线调停部2121对步骤S4301检查时的请求状况作出对步骤S4310、S4330、S4350的判断。
如果受理来自磁盘接口部2130的请求(步骤S4310),总线调停部2121给以DMA控制的第1通道的总线使用权,总线调停部2121通过DMA控制器2122传送(步骤S4320)从磁盘接口部2130到存储器2110的8字节数据,此数据传送是根据CPU 2160给定的传送控制信息存储部2123存储的传送基础、传送地的信息进行的,是上述的第1通道的DMA传送。
总线调停部2121在上述的磁盘接口部2130没有请求的状况下,利用请求受理部2124受理主接口部2190的请求时(步骤S4330),给以DMA控制的第3通道的总线使用权,总线控制部2120通过DMA控制器2122传送(步骤S4340)从存储器2110到主接口部2190的3字节数据,此数据传送是第3通道的DMA传送。
另外,总线调停部2121在上述磁盘部2130或主接口部2190没有请求的状况下,受理通过请求受理部2124来自校正子计算电路2140的请求(步骤S4350),给以DMA控制的第2通道的总线使用权,总线控制部2120通过DMA控制器2122传送(步骤S4360)从存储器2110到校正子计算电路2140的8字节数据。
另外,总线调停部2121除校正子计算电路2140的请求外,也受理作为错误数据校正部2168的CPU 2160的存储存取要求,与受理上述校正子电路2140的请求时同样,只要磁盘接口部2130或主接口部2190没有请求,就允许数据传送使用总线,但总线调停部2121通过CPU 2160的请求,优先处理校正子计算电路2140的请求,即作为错误数据校正部2168的CPU 2160的存储存取只在其他存储存取全没有请求状态下以1字节单位进行,而且从第1通道至第3通道的DMA传送的存储器2110的存取,此错误数据校正部2168对存储器2110的存取频度很低。
总线控制部进行步骤S4320、S4340或S4360的操作后,再次检查请求受理部2124受理的请求(步骤S4301),反复按图17所示的操作。
图18为以存储器2110为对象的数据传送的同步例子。
图中所述例子的磁盘接口部2130的FIFO以低的数据传送速度从前端处理机1040继续输入数据,示出了从磁盘接口部2130到存储器2110的8字节的数据传送空出很大间隔的情况。
另外,该图示出主接口部2190需要以高的数据传送速度将数据传送至主机,当磁盘接口部没有进行传送时,示出了从存储器2110至主接口部2190的8字节数据传送以某一高的频度进行的情况。
另外,该图示出了优先级比上述2个低的纠错用的数据传送在上述2个数据传送没有进行时的情况。
以下说明将来自第1通道的第3通道的DMA传送按每8字节分割的理由。
在DMA传送的共享资源中,存储器存取是最需要时间的,因此应考虑怎样调整存储存取的争用。
动态存储的存储器2110通过RAS(row address strobe)和CAS(Column addressstrobe)2个控制时钟控制,RAS按规定利用页式方式使CAS连续变化,以某一程度的统一单位进行存储存取,为提高每1字节的存取速度,DMA传送应进行多字节传送。
例如前端处理机1040传送的数据平均传送速度为v字节/秒、如上所述,纠错按C1方向、C2方向,再次C1方向进行3次时,加上第2通道的这种3次的DMA传送,第1通道的DMA传送和第3通道的DMA传送合计5次的DMA传送成为1个数据,因此存储存取每秒需要5v字节的数据,以某一程度统一的单位进行存储存取,每1字节的存储存取时间为t秒时,在5vt的时间内完成所有的存储存取,在这种场合,5vt秒比1秒所需的要短,故以某程度多的单位进行DMA传送。
可是总线控制部2120为判断每一规定字节数的数据的DMA传送的请求(参照图17),如果是进行每一大的字节数的DMA传送,以磁盘接口部2130和主接口部2190规定的速度,数据传送电路的传送请求,存在不能立即响应的问题。
例如数据由磁盘接口部2130的FIFO存储,即使需要第1通道的DMA传送,此时任一通道进行DMA传送的话,在规定的单位内该DMA传送直到终了前,第1通道的DMA传送处于等待状态。
这里,第1通道的DMA传送的优先级最高,与上述相同,前端处理机1040传送的数据的平均传送速度为v字节/秒,磁盘接口部2130的FIFO的容量为m字节,在上述规定的单位内DMA传送的存储存取所需时间为T秒时,应满足m/v>T,上述规定的单位必须小。
从而需要以适宜字节数为单位的数据传送,关于本实施例,对照存储器2110的控制时钟速度等应满足上述条件,以8字节作为数据传送单位。
正如以上所述,光盘控制部2100具有以总线控制部2120为中心的对存储器2110的存取控制机构,这样,只有1个存储器2110便可实现数据的输入、该数据的纠错、纠错后数据的输出等功能。
<纠错部>
以下进一步详细说明上述光盘读出装置2000的光盘控制部2100内的纠错部2101。
如上所述,纠错部2101由校正子计算电路2140、链式计算电路2150、欧几里德计算部2164和错误数据校正部2168所组成,欧几里德计算部2164和错误数据校正部2168是通过指令ROM 2170存储程序和CPU 2160来实现。
上述程序除进行欧几里德计算、错误数据校正外,包括校正子计算电路2140的校正子计算结果,也进行与链式计算电路2150的数据输入输出,以下将指令ROM 2170所存储的程序和利用CPU 2160和数据RAM 2180实现的纠错功能部分称为纠错控制部。
图19为纠错控制部功能方框图。
纠错控制部有中断受理部2161、控制部2162、校正子计算结果寄存部2163、欧几里德计算部2164、链式计算结果寄存部2165、校正子计算结果存储队列区2166、链式计算起动部2167、错误数据校正部2168和数据输入输出部2169。
中断受理部2161是受理对CPU 2160的中断的部分,控制部2162是控制指令ROM 2170所存储的程序的执行部分。
另外,数据输入输出部2169是通过总线控制部2120处理其他电路与数据的部分,在CPU 2160的寄存器与其他电路之间接受数据。
校正子计算结果存储队列区2166是数据RAM 2180的部分区,可以存储10个校正子计算结果。
校正子计算结果寄存部2163具有将校正子计算电路2140的校正子计算结果,通过数据输入输出部2169存入校正子计算存储队列区2166的功能。
欧几里德计算部2164从校正子计算结果队列区2166取出1个量的校正子计算结果的数据,根据此数据的需要,指示链式计算起动部2167起动链式计算电路2150,链式计算电路2150一旦给定数据,便开始计算,在这里,链式计算电路的起动称为给定链式计算电路数据。
链式计算起动部2167根据欧几里德计算部2164的指示,通过数据输入输出部2169将欧几里德计算结果的数据传送给链式计算电路2150,是具有起动链式计算电路2150的功能部分。
链式计算结果寄存部2165通过数据输入输出部具有将链式计算电路2150的计算结果给以错误数据校正部2168的功能。
另外,错误数据校正部2168通过数据输入输出部2169对存储器2110存取,更新存储器2110内的数据部分。
以下用图20~图22说明具有上述功能构成的纠错控制部的操作。
图20为纠错控制部的通常操作的流程图。
纠错控制部的通常操作由欧几里德计算部2164进行。
欧几里德计算部2164检查校正子计算结果是否由校正子计算结果存储队列区2166存储,如果没有存储则不进行操作(步骤S5010),但CPU 2160不能完全停止,在步骤S5010反复进行时也进行纠错控制部以外的操作和中断相关操作。
当校正子计算结果由校正子计算结果存储队列区2166存储时,欧几里德计算部2164从数据RAM 2180内的校正子计算结果存储队列区2166中读出校正子计算结果(步骤S5020),校正子计算结果的校正子值如为0,表示数据串无错(步骤S5030),故再次回到步骤S5010的操作。
另外,如果校正子值为0以外的话(步骤S5030),表示数据串有误,数据必须校正,欧几里德计算部2164根据该错误数值通过欧几里德计算求错误位置多项式和错误数值多项式(步骤S5040)。
欧几里德计算部2164在欧几里德计算后,通过链式计算起动部2167给以链式计算电路2150错误位置多项式(步骤S5050),再次返回步骤S5010的操作。
图21为第2通道传送终了中断处理的流程图。
此第2通道传送终了中断处理,当纠错部的中断受理部2161表示第2通道的DMA传送终了、受理中断时,执行中断处理。
中断受理部2161将受理的中断旨意一通知控制部2162,控制部2162便暂时中断欧几里德计算部2164的图20的流程操作,控制校正子计算结果寄存部2163,校正子计算电路2140读出计算结果(步骤S5110),将读出的计算结果存储在数据RAM 2180中的校正子计算结果存储队列区2166(步骤S5120),之后欧几里德计算部2164继续进行图20所示的操作。
图22为链式计算终了中断处理的流程图。
链式计算终了中断处理,当纠错控制部的中断受理部2161受理从链式计算电路2150至CPU 2160的中断时,执行中断处理。
中断受理部2161将受理的中断旨音一旦通知控制部2162,控制部2162便暂时中断欧几里德计算部2164的图20的流程操作,错误数据校正部2168执行错误数据校正处理。
错误数据校正部2168首先由链式计算结果寄存部2165读出链式计算电路2150的链式计算结果的数据(步骤S5210)。
错误数据校正部2168然后从链式计算结果的错误位置和以欧几里德计算所得的错误数值多项式求错误数值(步骤S5220),通过数据输入输出部2169读出存储器2110中上述错误位置所表示的位置数据(步骤S5230),求出读出数据和上述错误数值的“异”(步骤S5240),通过数据输入输出部2169将求出的值写入存储器2110中的上述错误位置所表示的位置(步骤S5250)。
错误数据校正部2168的错误数据校正处理终了时,控制部2162使欧几里德计算部2164继续进行图20所示的操作。
图23为纠错部2101内各部分操作的定时例子。
在该图中将纠错部2101的操作分为校正子计算电路2140进行的校正子计算、含CPU 2160的纠错控制部进行的校正子值存储、欧几里德计算、错误数据校正和链式计算电路2150进行的链式计算,在同图中,校正子值存储是图21所示的校正子计算结果寄存部2163的操作,欧几里德计算是图20所示的欧几里德计算部2164的操作,错误数据校正是图22所示的错误校正部2168的操作。
如图所示,校正子计算电路2140、CPU 2160和链式计算电路2150可以同时并行进行各自的操作,校正子值存储、欧几里德计算和错误数据校正由于由1个CPU 2160执行,故不须同时并行运行。
以下根据该图所示的例子,用图19~图22说明纠错部2101的操作。
同图中表示编码的数据串,例如附加上述C1方向奇偶数据的1行的信息数据处理的每单位变化情况,校正子计算的处理单位6001~6008任何一个的时间大体相等。
以下将以校正子计算的处理单位6001、处理单位6002、…、处理单位6008处理的数据串分别称为No.1数据串、No.2数据串、…、No.8数据串。
校正子计算电路2140取得No.1数据串、校正子计算后取得No.2数据串,进行校正子计算,之后取得No.3数据串,进行校正子计算,同样,关于No.4数据串以后也按顺序处理,在这里,校正子计算电路2140就No.1、No.2和No.5数据串的校正子值算出不是0的结果。
首先重点说明No.1数据串、No.1数据串通过上述第2通道的DMA传送(参照图9、图15、图17),由存储器2110传送至校正子计算电路2140,在取得传送数据的同时,校正子计算电路2140进行校正子计算,校正子计算完了几乎与第2通道的DMA传送终了同时,含CPU 2160的纠错控制部通过DMA控制器2122的第2通道的DMA传送终了的中断,通知校正子计算完。
中断受理部2161一旦受理第2通道的DMA传送终了中断,控制部2162控制的校正子计算结果寄存部2163读出校正子计算电路的No.1数据串的校正子值(步骤S5110),存储在数据RAM 2180中的校正子计算结果存储队列区2166(步骤S5120),而且校正子计算电路2140在校正子计算的最终阶段,将计算结果存储在内部缓冲器,校正子计算结果寄存部2163从内部缓冲器读出校正子值,校正子计算电路2140在进行上述读出前,关于下一个数据串的校正子值,不写入该内部缓冲器。
欧几里德计算部2164在校正子值存储校正子计算结果存储队列区2166之前是不操作的(步骤S5010),当No.1数据串的校正子值存储在校正子计算结果存储队列区2166时便进行操作,判断校正子值是否为0(步骤S5020、S5030),不是0便进行欧几里德计算(步骤S5040)。
欧几里德计算部2164在进行欧几里德计算时,校正子计算电路2140完成No.2数据串的校正子计算,通过中断受理部2161,受理第2通道DMA传送终了中断的控制部2162,中断欧几里德计算部2164的欧几里德计算,由校正子计算结果寄存部2163读出校正子计算电路2140的计算结果(步骤S5110),将No.2数据串的校正子值存储(步骤S5120)在校正子计算结果存储队列区2166,之后通过欧几里德计算部2164连续进行欧几里德计算处理。
欧几里德计算部2164完成No.1数据串的欧几里德计算后,通过链式起动部起动(步骤S5050)链式计算电路2150,这样,链式计算电路2150开始进行No.1数据串的链式计算。
欧几里德计算部2164一旦起动链式计算电路2150,校正子计算结果存储队列区2166便存储(步骤S5010)No.2数据串的校正子值,读出判断(步骤S5020、S5030)其是否为0,如果No.2数据串的校正子值不是0,则欧几里德计算部2164就进行欧几里德计算(步骤S5040)。
欧几里德计算部2164在进行欧几里德计算时,校正子计算电路2140完成No.3数据串的校正子计算,控制部2162在受理第2通道的DMA传送终了中断时,中断欧几里德计算,通过校正子计算结果寄存部2163读出(步骤S5110)校正子计算电路2140的计算结果,将No.3数据串的校正子值存储(步骤S5120)在校正子计算结果存储队列区2166,之后欧几里德计算部2164将继续进行欧几里德计算处理。
之后,欧几里德计算部2164在继续进行欧几里德计算时,链式计算电路2150完成No.1数据串的链式计算,控制部2162通过中断受理部2161受理链式计算电路2150的中断,中断欧几里德计算,错误数据校正部2168执行错误数据校正处理。
错误数据校正部2168通过链式计算结果寄存部2165,从链式计算电路2150读出(步骤S5210)No.1数据串的链式计算结果,求错误数值(步骤S5220),存取存储器2110,校正有关No.1数据串的错误数据(步骤S5230、S5240、S5250)。
由错误数据校正部2168校正错误数据处理终了后,控制部2162继续进行由欧几里德计算部2164中断的No.2数据串的欧几里德计算。
之后,当校正子计算电路2140一旦完成No.4数据串的校正子计算,与上述相同纠错控制部中断欧几里德计算,No.4数据串校正子值装入校正子计算结果存储队列区2166,继续进行欧几里德计算。
当欧几里德计算终了时,欧几里德计算部2164起动(步骤S5050)链式计算电路2150,这样,链式计算电路2150便开始进行No.2数据串的链式计算。
欧几里德计算部2164起动链式计算电路2150后,校正子计算结果存储队列区2166已存储(步骤S5050)No.3数据串的校正子值和No.4数据串的校正子值,读出先存储的No.3数据串的校正子值,判断(步骤S5020、S5030)是否为0。
No.3数据串的校正子值由于为0,欧几里德计算部2164不进行欧几里德计算等,从校正子计算结果存储队列区2166中读出No.4数据串的校正子值,判断(步骤S5010、S5020、S5030)是否为0。
由于No.4数据串的校正子值也为0,欧几里德计算部2164不进行欧几里德计算等,校正子计算结果存储队列区2166等待(步骤S5010)存储校正子值。
在此之后、纠错部2101也同样进行运作。
如上述那样纠错部2101的构成是,校正子计算和校正子计算以外的处理并行操作,当1个数据串的校正子计算终了时,将校正子计算结果存储于队列,并引导到校正子计算以外的处理那样地进行控制。
从而,判断校正子值是否为0所需时间与欧几里德计算和错误数据校正时间相比是非常少的,鉴于校正子值为0以外的数据串占全部数据串的比例很少这一事实,上述纠错部2101以处理多数的数据串为对象时,显然在大致等于每一数据串校正子计算所需时间的合计内便可处理完。
以上说明了本发明的数据输入输出装置、实施例之一的光盘读出装置,但本发明当然不只限于此实施例中所示的方式,即:
(1)在实施例中,光盘1010是DVD-ROM,但也可以是CD-ROM等其他媒体,进而将数据输入至光盘控制部2100的电路是前端处理机1040、接收光盘控制部2100的数据装置为主机1070(参照图7),将数据输入至光盘控制部2100的电路也可以是任一电路或装置,接收光盘控制部2100数据的装置也可以是任何电路或装置,在这种场合,输入的数据如果未进行调制,磁盘接口部2130不须解调。
即本发明的数据输入输出装置的数据输入输出接口也可以是SCSI及其他等,在所有场合下数据输入输出装置提供对输入的数据实施纠错等运算的输出功能,例如数据输入输出装置接收主机传送的信息数据,附加对该数据纠错的奇偶数据,经磁盘接口将信息数据和奇偶数据写入存储媒体就可以了。
(2)在实施例中,由CPU 2160执行的程序存储在指令ROM 2170内,但不限于此,程序也可以存储在由外部提供的数据RAM 2180。
(3)在实施例中,错误校正是按C1方向、C2方向和C1方向进行,但不限于此,例如只按C1方向1次就可以了,另外,在实施形式中,编码作为积码使用,但不限于此,利用其他编码方法也可以成为编码的信息数据,在这种场合,按该编码方法进行错误校正就可以了。
(4)在实施例中,如图17所示,在磁盘接口部2130与存储器2110之间的数据传送的优先级最高,在主接口部2190与存储器2110之间的数据传送的优先级次之,但不限于此,也可以是在主接口部2190与存储器2110之间的数据传送的优先级最高,而磁盘接口部2130与存储器2110之间的数据传送的优先级次之,这些将根据输入至数据输入输出装置的数据传送速度条件和运算处理后由数据输入输出装置输出的数据传送速度的条件等对数据输入输出装置的接口如何制定等情况制定就可以了。
(5)在实施例中,通过校正子计算电路2140、链式计算电路2150和执行程度的CPU 2160进行错误校正,但错误校正电路的构成并不仅限于此。
例如链式计算电路通过程序进行链式计算,也可以由CPU 2160实行,即使在这种场合,对多数数据串的纠错处理时,以近于每个数据串校正子计算所需时间的合计时间内处理完。
另外,也可以通过硬件电路进行欧几里德计算。
即校正子计算电路和校正子计算以后必须处理的电路可以并行操作,将校正子计算结果存储在队列,校正子计算后进行必要处理的电路,根据该队列所存储的校正子计算结果可以处理的话,那么就可达到本发明的第2目的,即纠错的高速化。
另外,与纠错虽无关系,可是为达到本发明第1目的,也可以通过程序由CPU2160执行校正子计算和链式计算。
图24为通过程序由CPU 2160执行校正子计算和链式计算时光盘控制部7100的构成图。光盘控制部7100几乎与光盘控制部2100相同,在图中用同一符号表示相同的构成。
在这种场合,实施例的CPU 2160通过给以DMA控制器2122的第2信道的信息取代从存储器2110至校正子计算电路2140的传送数据,CPU 2160给定DMA控制器7122的第2信道从存储器2110至数据RAM 2180的1字组量的数据传送信息,数据RAM 2180所传送的数据,以此数据为对象进行校正子计算等的程序必须存储在指令ROM 2170,即图9流程中步骤S3050操作由存储器至数据RAM的1字组量的数据传送指示所取代,由CPU 2160取代步骤S3090、步骤S3100的操作,而且CPU 2160根据C1方向、C2方向、再次C1方向的奇偶性,全部完成纠错阶段下一个步骤S3110操作。
这里,DMA控制器7122附加与DMA控制器2122同等的操作,第2信道的DMA传送中,每8字节的数据传送进行图15所示的步骤S4110的操作。
光盘控制部7100按图24所示时,利用多数纠错方式中任何一种方式将编码数据和相关多数纠错方式的程序存储在指令ROM 2170,通过选择其中之一便可纠错,因此不变更硬件可以适应多数的纠错方式。
另外,关于纠错的运算内容,不只限定实施例中所示的,即在实施例中为求出纠错的错误位置多项式和错误数值多项式而利用欧几里德方法,但也可以利用其他方法求出错误位置多项式和错误数值多项式,求错误位置多项式根的方法,称为链式方法,用其他方法也可以求错误位置多项式的根。
(6)在实施例中,存储器2110中可以存储15字组量的数据作为容量,但不只限于此,在对输入数据进行纠错等运算之后,以输出数据为前提,实施上述运算的最佳规模为n字节时,有n字节2倍以上的存储器就可以了,另外,存储器2110也可以有光盘控制部2100的外部装置。
另外,在实施例中,1字节量的数据约为38字节,但并不限于这一数值。
(7)在实施例中,CPU 2160用图12所示的存储管理信息,利用规定的运算给以DMA控制器取得地址,但给以DMA控制器的地址存储方法和存储器2110的内容管理方法不仅限于此,例如可以分别存储应输入数据的存储器内的地址、可以纠错的存储器内的地址和可以输出数据的存储器内的地址,也可以用参照、更新这种的方式。
(8)在实施例中,关于存储器与其他电路之间的数据DMA传送,每8字节进行检验请求(参照图14~图17),但不限于此8字节的规模,磁盘接口部2130所输入的数据传送速度和主接口部2190所输出的传送速度需要保持各自某数值时,前述DMA传送的单位-数据规模增大,随着数值的增大,磁盘接口部2130和主接口部2190也就需要大规模的FIFO。
另外,1数据串用8字节除不尽时,余下的字节数最后传送就可以了。
(9)在实施例中,校正子计算结果存储队列区2166可以存储10个数量的校正子计算结果,但不限于这10个数值,根据校正子计算所需时间、纠错处理中校正子计算以外的时间和错误发生率等,队列大小通常以不溢出就可以了。
(10)在实施例中,校正子计算电路2140具有内部缓冲器,计算结果不须写入时作为调整处理时间等,例如将该内部缓冲器作为FIFO就可以了。
(11)实施例中的纠错控制部的处理顺序(图20~图22的流程顺序)等通过机器语言来实现。将此记录在记录媒体作为流通销售就可以了,这样的记录媒体有IC卡、光盘、软盘、ROM等,在其上所记录的机器语言程序通过通用的硬件设备提供使用,这里所说的通用硬件是一般的个人计算机和具有程序执行能力的家电设备等,逐步执行安装的上述机器语方程序,实现上述纠错控制部的功能。
Claims (3)
1.一种字组编码的多接收字各自连续纠错的纠错装置,包括以下单元:
校正子计算单元,
逐次取得接收字,根据该接收字对应该接收字连续进行校正子计算的校正子计算处理;
校正子存储队列,
是可以存储多数校正子的队列;
校正子存储单元,
将上述校正子计算单元算出的校正子存储在上述校正子存储队列;
校正单元,
当上述校正子存储队列存储的校正子超过1个时,从该校正子存储队列取出1个校正子,取出的该校正子只有不是0时,根据该校正子对相关该校正子校正接收字的错误;
上述纠错装置中的上述校正子计算单元和上述校正单元并行执行各自的操作。
2.如权利要求1的纠错装置还包括以下单元:
接收字存储单元,
上述校正子计算单元取得的接收字多数被存储起来;
上述校正单元通过更新上述接收字存储单元所存储的接收字进行上述校正。
3.如权利要求2的纠错装置,其中上述校正单元包括以下单元:
多项式算出单元,
根据上述校正子,求错误位置多项式和错误数值多项式;
错误位置算出单元,
求上述多项式算出单元求出的错误位置多项式的根-错误位置;
数据校正单元,
根据上述多项式算出单元求出的错误数值多项式和上述错误位置算出单元求出的错误位置,求错误数值,根据这些校正上述接收字中的数据;
上述错误位置算出单元与上述多项式算出单元或数据校正单元并行操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP83642/1997 | 1997-04-02 | ||
JP8364297 | 1997-04-02 | ||
JP83642/97 | 1997-04-02 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB981097391A Division CN1154908C (zh) | 1997-04-02 | 1998-04-01 | 数据输入存贮器并对存储器内存入的数据进行运算输出并能高速操作的数据输入输出装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1501248A CN1501248A (zh) | 2004-06-02 |
CN1501248B true CN1501248B (zh) | 2010-05-26 |
Family
ID=13808114
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2003101179044A Expired - Lifetime CN1501248B (zh) | 1997-04-02 | 1998-04-01 | 数据输入存贮器并对存储器内存入的数据进行运算输出并能高速操作的数据输入输出装置 |
CNB981097391A Expired - Fee Related CN1154908C (zh) | 1997-04-02 | 1998-04-01 | 数据输入存贮器并对存储器内存入的数据进行运算输出并能高速操作的数据输入输出装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB981097391A Expired - Fee Related CN1154908C (zh) | 1997-04-02 | 1998-04-01 | 数据输入存贮器并对存储器内存入的数据进行运算输出并能高速操作的数据输入输出装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6041368A (zh) |
EP (1) | EP0874320B1 (zh) |
JP (1) | JP3968167B2 (zh) |
KR (1) | KR100455012B1 (zh) |
CN (2) | CN1501248B (zh) |
DE (1) | DE69837123T2 (zh) |
HK (1) | HK1015479A1 (zh) |
TW (1) | TW432362B (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3782840B2 (ja) * | 1995-07-14 | 2006-06-07 | 株式会社ルネサステクノロジ | 外部記憶装置およびそのメモリアクセス制御方法 |
US6253349B1 (en) * | 1997-04-02 | 2001-06-26 | Matsushita Electric Industrial Co., Ltd. | Error detective information adding equipment |
US6115837A (en) * | 1998-07-29 | 2000-09-05 | Neomagic Corp. | Dual-column syndrome generation for DVD error correction using an embedded DRAM |
US6662334B1 (en) * | 1999-02-25 | 2003-12-09 | Adaptec, Inc. | Method and device for performing error correction on ECC data sectors |
JP2002041445A (ja) | 2000-05-19 | 2002-02-08 | Matsushita Electric Ind Co Ltd | 高性能dmaコントローラ |
TW541519B (en) * | 2000-05-24 | 2003-07-11 | Acer Labs Inc | Encoding/decoding system in optical disk storage device |
KR100403634B1 (ko) * | 2001-10-17 | 2003-10-30 | 삼성전자주식회사 | 고속 파이프라인 리드-솔로몬 디코더에 적용하기 위한메모리 장치와 메모리 액세스 방법 및 그 메모리 장치를구비한 리드-솔로몬 디코더 |
FR2834146A1 (fr) * | 2001-12-20 | 2003-06-27 | St Microelectronics Sa | Turbo-decodeur compact a haute efficacite |
WO2003079194A1 (fr) * | 2002-03-18 | 2003-09-25 | Matsushita Electric Industrial Co., Ltd. | Appareil de traitement de donnees |
JP3743509B2 (ja) * | 2002-03-20 | 2006-02-08 | セイコーエプソン株式会社 | データ転送制御装置及び電子機器 |
US6941428B2 (en) * | 2002-09-25 | 2005-09-06 | International Business Machines Corporation | Memory controller optimization |
JP4551635B2 (ja) | 2003-07-31 | 2010-09-29 | ソニー株式会社 | パイプライン処理システムおよび情報処理装置 |
US20050038946A1 (en) * | 2003-08-12 | 2005-02-17 | Tadpole Computer, Inc. | System and method using a high speed interface in a system having co-processors |
JP4082300B2 (ja) | 2003-08-29 | 2008-04-30 | ソニー株式会社 | パイプライン処理システムおよび情報処理装置 |
CN1300703C (zh) * | 2003-11-05 | 2007-02-14 | 松下电器产业株式会社 | 调节电路及其具有它的功能处理电路 |
US7219258B2 (en) * | 2003-12-10 | 2007-05-15 | International Business Machines Corporation | Method, system, and product for utilizing a power subsystem to diagnose and recover from errors |
JP2006004560A (ja) * | 2004-06-18 | 2006-01-05 | Elpida Memory Inc | 半導体記憶装置及びその誤り訂正方法 |
JP2006190346A (ja) * | 2004-12-28 | 2006-07-20 | Toshiba Corp | エラー訂正処理装置及びエラー訂正処理方法 |
US7496695B2 (en) * | 2005-09-29 | 2009-02-24 | P.A. Semi, Inc. | Unified DMA |
US20070260961A1 (en) * | 2006-04-21 | 2007-11-08 | Kuo-Lung Chien | Error correction system and related method thereof |
US20070260963A1 (en) * | 2006-04-21 | 2007-11-08 | Kuo-Lung Chien | Error correction system and related method thereof |
US20070260960A1 (en) * | 2006-04-21 | 2007-11-08 | Kuo-Lung Chien | Error correction system and related method thereof |
GB0622408D0 (en) * | 2006-11-10 | 2006-12-20 | Ibm | Device and method for detection and processing of stalled data request |
JP2011130008A (ja) * | 2009-12-15 | 2011-06-30 | Hitachi-Lg Data Storage Inc | データ入出力装置 |
US8612834B2 (en) * | 2011-03-08 | 2013-12-17 | Intel Corporation | Apparatus, system, and method for decoding linear block codes in a memory controller |
JP2014071834A (ja) * | 2012-10-01 | 2014-04-21 | Toshiba Corp | 通信装置およびプログラム |
US9299387B2 (en) * | 2014-07-25 | 2016-03-29 | Kabushiki Kaisha Toshiba | Magnetic disk apparatus, controller and data processing method |
US9800271B2 (en) * | 2015-09-14 | 2017-10-24 | Qualcomm Incorporated | Error correction and decoding |
KR102504176B1 (ko) * | 2016-06-23 | 2023-03-02 | 에스케이하이닉스 주식회사 | 반도체장치 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5148432A (en) * | 1988-11-14 | 1992-09-15 | Array Technology Corporation | Arrayed disk drive system and method |
EP0434315B1 (en) * | 1989-12-21 | 1996-02-21 | International Business Machines Corporation | Error correction in data storage devices |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5833767A (ja) * | 1981-08-21 | 1983-02-28 | Canon Inc | デイスク制御装置 |
JPS60229160A (ja) * | 1984-04-26 | 1985-11-14 | Toshiba Corp | マルチプロセツサシステム |
JPS60254463A (ja) * | 1984-05-31 | 1985-12-16 | Sony Corp | デジタルデ−タの記録ないし再生方式 |
US5497344A (en) * | 1989-01-26 | 1996-03-05 | Sharp Kabushiki Kaisha | Data flow type information processor |
US5243581A (en) * | 1990-07-23 | 1993-09-07 | Matsushita Electric Industrial Co., Ltd. | Data recording/reproducing apparatus having plural optical disk drives operating in parallel |
EP0524935A1 (en) * | 1991-02-19 | 1993-02-03 | International Business Machines Corporation | Data transfer between a data storage subsystem and host system |
JP2703417B2 (ja) * | 1991-04-05 | 1998-01-26 | 富士通株式会社 | 受信バッファ |
US5530901A (en) * | 1991-11-28 | 1996-06-25 | Ricoh Company, Ltd. | Data Transmission processing system having DMA channels running cyclically to execute data transmission from host to memory and from memory to processing unit successively |
EP0582370B1 (en) * | 1992-06-05 | 1998-10-07 | Compaq Computer Corporation | Disk drive controller with a posted write cache memory |
US5602857A (en) * | 1993-09-21 | 1997-02-11 | Cirrus Logic, Inc. | Error correction method and apparatus |
US5604753A (en) * | 1994-01-04 | 1997-02-18 | Intel Corporation | Method and apparatus for performing error correction on data from an external memory |
US5661848A (en) * | 1994-09-08 | 1997-08-26 | Western Digital Corp | Multi-drive controller with encoder circuitry that generates ECC check bytes using the finite field for optical data for appending to data flowing to HDA |
JPH08102140A (ja) * | 1994-09-30 | 1996-04-16 | Sony Corp | ディスク装置 |
US5640286A (en) * | 1995-05-08 | 1997-06-17 | Western Digital Corporation | Disk drive with error code embedded sector identification |
KR0160193B1 (ko) * | 1995-12-30 | 1998-12-15 | 김광호 | 직접메모리접근 제어장치 |
JP3234493B2 (ja) * | 1996-03-11 | 2001-12-04 | 三洋電機株式会社 | 符号誤り訂正方法及び符号誤り訂正装置 |
US5822568A (en) * | 1996-05-20 | 1998-10-13 | Advanced Micro Devices, Inc. | System for improving the real-time functionality of a personal computer which employs an interrupt servicing DMA controller |
-
1998
- 1998-04-01 TW TW087104910A patent/TW432362B/zh not_active IP Right Cessation
- 1998-04-01 JP JP08856698A patent/JP3968167B2/ja not_active Expired - Lifetime
- 1998-04-01 EP EP98302538A patent/EP0874320B1/en not_active Expired - Lifetime
- 1998-04-01 DE DE69837123T patent/DE69837123T2/de not_active Expired - Lifetime
- 1998-04-01 CN CN2003101179044A patent/CN1501248B/zh not_active Expired - Lifetime
- 1998-04-01 CN CNB981097391A patent/CN1154908C/zh not_active Expired - Fee Related
- 1998-04-02 KR KR10-1998-0011614A patent/KR100455012B1/ko not_active IP Right Cessation
- 1998-04-02 US US09/053,966 patent/US6041368A/en not_active Expired - Fee Related
-
1999
- 1999-01-29 HK HK99100386A patent/HK1015479A1/xx not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5148432A (en) * | 1988-11-14 | 1992-09-15 | Array Technology Corporation | Arrayed disk drive system and method |
EP0434315B1 (en) * | 1989-12-21 | 1996-02-21 | International Business Machines Corporation | Error correction in data storage devices |
Also Published As
Publication number | Publication date |
---|---|
KR100455012B1 (ko) | 2004-12-17 |
EP0874320B1 (en) | 2007-02-21 |
HK1015479A1 (en) | 1999-10-15 |
JPH10334040A (ja) | 1998-12-18 |
CN1202646A (zh) | 1998-12-23 |
US6041368A (en) | 2000-03-21 |
CN1501248A (zh) | 2004-06-02 |
DE69837123D1 (de) | 2007-04-05 |
EP0874320A2 (en) | 1998-10-28 |
KR19980081024A (ko) | 1998-11-25 |
DE69837123T2 (de) | 2007-11-29 |
EP0874320A3 (en) | 2001-01-17 |
CN1154908C (zh) | 2004-06-23 |
TW432362B (en) | 2001-05-01 |
JP3968167B2 (ja) | 2007-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1501248B (zh) | 数据输入存贮器并对存储器内存入的数据进行运算输出并能高速操作的数据输入输出装置 | |
CN100383886C (zh) | 纠错装置和纠错方法 | |
CA1235810A (en) | Error detection and correction in an optical storage system | |
US4562577A (en) | Shared encoder/decoder circuits for use with error correction codes of an optical disk system | |
US6912682B1 (en) | Signal processor for correcting and detecting errors | |
US7600177B2 (en) | Delta syndrome based iterative Reed-Solomon product code decoder | |
US20070266187A1 (en) | Data Interleaving Apparatus | |
US6061760A (en) | Controller circuit apparatus for CD-ROM drives | |
KR19980025094A (ko) | 부호 오류 정정/검출 디코더 | |
US11106533B2 (en) | Memory systems and writing methods of the memory systems | |
US5956757A (en) | Method and apparatus for generating addresses | |
JP2696212B2 (ja) | 誤り訂正装置 | |
CN101488369A (zh) | Bch码控制器接口电路 | |
US6728806B2 (en) | Data processing unit | |
US6304993B1 (en) | Method and apparatus for performing efficient reseeks in an optical storage device | |
CN1307556C (zh) | 信息处理装置 | |
US20080201619A1 (en) | Error correcting device, error correcting method and disk system | |
JP3139499B2 (ja) | 誤り訂正処理装置 | |
EP1090462B1 (en) | Circuit and method for rapid checking of error correction codes using cyclic redundancy check | |
JPH04212755A (ja) | 光ディスクの信号処理方法 | |
JPS60214043A (ja) | パイプライン制御回路 | |
KR100209627B1 (ko) | 씨디-롬 디코더의 메모리 억세스 제어장치 | |
GB2329508A (en) | Controller circuit for CD-ROM drives | |
JPS5872263A (ja) | デ−タ訂正装置 | |
JPH10106178A (ja) | ベリファイ方法およびベリファイ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term |
Granted publication date: 20100526 |
|
CX01 | Expiry of patent term |