一种在光盘驱动器进行控制操作或运算过程中处理中断要求的方法,该方法包含有在该控制操作或运算进行的同时,进行以下步骤: 利用该光盘驱动器接收一控制电路所传来的该中断要求; 检查该中断要求是否为一读取指令; 若该中断要求为一读取指令,检查该读取指令所指定的欲读取数据是否存在于一缓冲器内;以及 若该欲读取数据存在于该缓冲器内,响应于该中断要求,传送该缓冲器内相对应的数据至该控制电路。(*该技术在2023年保护过期,可自由使用*)
【技术实现步骤摘要】
本专利技术提供一种处理中断要求的方法,特别是指一种在光盘驱动器进行一需较长时间的控制操作或运算过程中处理中断要求的方法。
技术介绍
随着计算机装置的普及而使得计算机装置的应用范围随之扩大,除了一般商业性用途以外,个人计算机也进入家庭以提供例如多媒体娱乐之类的功能。由于多媒体娱乐需要庞大的影像数据以及声音数据来产生所需的声光效果,因此进一步带动数据存储技术的发展。为了让使用者能够更方便地存储数字数据,各种数据存储装置相继地出现。其中光盘(Optical Disk)由于本身成本低、体积小及容量大的特性,所以近年来已成为使用者用来纪录数据的工具。除了一般文件数据或程序数据外,光盘亦被广泛地用来存储多媒体数据,例如声音数据(Audio Stream)及影像数据(Video Stream)等。而光盘上所记录的数据则需要使用一光盘驱动器(Optical Disk Drive)以进行存取。请参考图1。图1为一公知光盘驱动器120配合主机110工作时的示意图。主机110可以为一计算机主机。光盘驱动器120通常连接到主机110,以接收主机110的控制指令而工作。光盘驱动器120中包含有一控制电路122,用来主控光盘驱动器120的工作。除此之外,光盘驱动器120中还设有一非易失性的记忆存储器124(如闪速存储器)、一缓冲存储器126(如易失性的随机存取存储器或是寄存器等)、以及一用来实现光盘驱动器120的功能的伺服模块140。缓冲存储器126用来暂存光盘驱动器120工作期间必需的数据;而伺服模块140中包含有一主轴马达142、一读取头146等机电元件。主轴马达142用来带动光盘150转动;读取头146则可沿一滑轨144滑动,以存取光盘150上不同轨道(Track)上的数据。一般而言,主机110仅需发出高层次的控制指令至光盘驱动器120中的控制电路122,控制电路122便会依据该控制指令来执行非易失性记忆存储器124中的固件程序代码130。控制电路122执行固件程序代码130中所记录的相对应的控制程序,以控制伺服模块140实际执行光盘驱动器120的主要功能。举例来说,当主机110要读取光盘150上的数据时,会传送一数据读取指令至光盘驱动器120以及指定该数据在光盘150上的地址。接着控制电路122就会执行光盘驱动器120本身的固件程序代码130,用来协调伺服模块140中主轴马达142、读取头146等元件的工作。例如,控制主轴马达142达到一特定的转速、移动读取头146至一预定轨道以接收光盘150所反射的激光等。伺服模块140由光盘150所读取到的数据,会暂存至缓冲存储器126中,接着由控制电路122传送至主机110。请参阅图2。图2为公知技术中光盘驱动器120依主机110的一读取指令读取光盘150上数据的流程图200。流程图200包含有下列步骤步骤202开始。光盘驱动器120利用控制电路122接收及解读由主机110传送过来的一读取指令Instruction_A。步骤204光盘驱动器120依据该读取指令Instruction_A进行一数据读取程序。步骤206利用控制电路122判断欲读取的数据是否位于缓冲存储器126中,若是,则进行步骤212;若否,则进行步骤208。步骤208利用控制电路122执行固件程序代码130以控制伺服模块140进行寻轨操作。步骤210利用伺服模块140读取光盘150上该读取指令Instruction_A所指定的数据,并将读取到的数据暂存在缓冲存储器126中。步骤212利用控制电路122将缓冲存储器126中相对应的数据传送至主机110,以响应该读取指令。步骤214结束。上述光盘驱动器120依据主机110的一读取指令,读取光盘150上数据的详细工作方式为本领域的技术人员所熟知,在不影响本专利技术技术公开的情况下,在此不再赘述。一般而言,主机110传送一读取指令至光盘驱动器120后,会等到光盘驱动器120回传该读取指令所要求的数据后,才传送下一个读取指令至光盘驱动器120。当主机110需要光盘150上的大量数据时(例如拨放光盘150上的音像数据),主机110会不断地传送读取指令至光盘驱动器120,来获得光盘150上的数据。在公知技术中,光盘驱动器120通常会利用缓冲存储器126提供数据快取(Cache)的功能。举例而言,若光盘150为一音像光盘(VCD),由于主机110所欲读取的数据通常是光盘150上连续性的音像数据。因此,当光盘驱动器120接收到主机110的一读取指令后,不仅会将该读取指令所要求的数据暂存在缓冲存储器126中,亦会将后续的数据一并暂存在缓冲存储器126中,以供光盘驱动器120接收到后续的读取指令时进行数据快取之用。即,在步骤202中,当主机110传送该读取指令Instruction_A至光盘驱动器120时,光盘驱动器120会进行步骤206,先检查缓冲存储器126中是否已存在该读取指令Instruction_A所指定的数据。倘若欲读取的数据已存在缓冲存储器126中,则仅需进行步骤212,将缓冲存储器126中的数据传送至主机110以响应该读取指令Instruction_A,而不需从光盘150上读取该读取指令Instruction_A所指定的数据,因此可提升光盘驱动器120响应主机110的速度。通常在公知技术中,光盘驱动器120的缓冲存储器126会设有一数据量阈值。当光盘驱动器120将缓冲存储器126的空间填满或达到一特定水平后,缓冲存储器126中所存储的数据会陆续因为主机110所发出的读取指令,而被传送到主机110。只要缓冲存储器126中的数据量高于该数据量阈值时,光盘驱动器120都不需进行数据补充的操作。直到缓冲存储器126中暂存的数据量等于或低于该数据量阈值时,光盘驱动器120便会读取光盘150上的后续数据,将缓冲存储器126中的数据量填满或是使之达到该特定水平。因此,在步骤206中,公知技术若判断出该读取指令Instruction_A所指定的数据存在缓冲存储器126中,还会判断扣掉该读取指令Instruction_A所要求的数据后,缓冲存储器126中所剩余的数据量是否会降到等于或低于该数据量阈值。若控制电路122判断出一旦将该读取指令Instruction_A所指定的数据传送至主机110后,缓冲存储器126当中所剩余的数据量便会等于或低于该数据量阈值,则控制电路122会依据固件程序代码130的主环路以控制伺服模块140读取光盘150上的后续数据,并暂存到缓冲存储器126中,使缓冲存储器126中的数据量填满或是使之达到该特定水平。而要读取光盘150的数据前,光盘驱动器120需进行寻轨(Seeking)的操作,以将读取头146移到适当的位置。所谓寻轨操作,简而言之就是将读取头146沿滑轨144移动到欲读取数据所属的一轨道的过程。通常寻轨操作所耗费的时间需数微秒至上百微秒(ms),若是长距离寻轨(Long-Seeking)操作则需要的时间可能长达数倍之多。光盘驱动器120利用缓冲存储器126提供的数据快取功能,能使数据传输的过程较平顺。只有在欲读取的数据不在缓冲存储器126中,或是只有部分在缓冲存储器126中,而其他的部分需要从光盘150上读取,光盘驱动器120才需进行步骤208本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:陈炳盛,吕柏青,
申请(专利权)人:联发科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。