CN1171151C - 在非易失性存储器中记录数据的方法 - Google Patents

在非易失性存储器中记录数据的方法 Download PDF

Info

Publication number
CN1171151C
CN1171151C CNB001047183A CN00104718A CN1171151C CN 1171151 C CN1171151 C CN 1171151C CN B001047183 A CNB001047183 A CN B001047183A CN 00104718 A CN00104718 A CN 00104718A CN 1171151 C CN1171151 C CN 1171151C
Authority
CN
China
Prior art keywords
data
file
byte
value
storage card
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 - Fee Related
Application number
CNB001047183A
Other languages
English (en)
Other versions
CN1268848A (zh
Inventor
木原信之
横田哲平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN1268848A publication Critical patent/CN1268848A/zh
Application granted granted Critical
Publication of CN1171151C publication Critical patent/CN1171151C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24HFLUID HEATERS, e.g. WATER OR AIR HEATERS, HAVING HEAT-GENERATING MEANS, e.g. HEAT PUMPS, IN GENERAL
    • F24H3/00Air heaters
    • F24H3/02Air heaters with forced circulation
    • F24H3/04Air heaters with forced circulation the air being in direct contact with the heating medium, e.g. electric heating element
    • F24H3/0405Air heaters with forced circulation the air being in direct contact with the heating medium, e.g. electric heating element using electric energy supply, e.g. the heating medium being a resistive element; Heating by direct contact, i.e. with resistive elements, electrodes and fins being bonded together without additional element in-between
    • F24H3/0411Air heaters with forced circulation the air being in direct contact with the heating medium, e.g. electric heating element using electric energy supply, e.g. the heating medium being a resistive element; Heating by direct contact, i.e. with resistive elements, electrodes and fins being bonded together without additional element in-between for domestic or space-heating systems
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24HFLUID HEATERS, e.g. WATER OR AIR HEATERS, HAVING HEAT-GENERATING MEANS, e.g. HEAT PUMPS, IN GENERAL
    • F24H9/00Details
    • F24H9/06Arrangement of mountings or supports for heaters, e.g. boilers, other than space heating radiators
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24HFLUID HEATERS, e.g. WATER OR AIR HEATERS, HAVING HEAT-GENERATING MEANS, e.g. HEAT PUMPS, IN GENERAL
    • F24H9/00Details
    • F24H9/18Arrangement or mounting of grates or heating means
    • F24H9/1854Arrangement or mounting of grates or heating means for air heaters
    • F24H9/1863Arrangement or mounting of electric heating means
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F28HEAT EXCHANGE IN GENERAL
    • F28FDETAILS OF HEAT-EXCHANGE AND HEAT-TRANSFER APPARATUS, OF GENERAL APPLICATION
    • F28F1/00Tubular elements; Assemblies of tubular elements
    • F28F1/10Tubular elements and assemblies thereof with means for increasing heat-transfer area, e.g. with fins, with projections, with recesses
    • F28F1/12Tubular elements and assemblies thereof with means for increasing heat-transfer area, e.g. with fins, with projections, with recesses the means being only outside the tubular element
    • F28F1/34Tubular elements and assemblies thereof with means for increasing heat-transfer area, e.g. with fins, with projections, with recesses the means being only outside the tubular element and extending obliquely
    • F28F1/36Tubular elements and assemblies thereof with means for increasing heat-transfer area, e.g. with fins, with projections, with recesses the means being only outside the tubular element and extending obliquely the means being helically wound fins or wire spirals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/08Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers from or to individual record carriers, e.g. punched card, memory card, integrated circuit [IC] card or smart card
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/16Storage of analogue signals in digital stores using an arrangement comprising analogue/digital [A/D] converters, digital memories and digital/analogue [D/A] converters 
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24FAIR-CONDITIONING; AIR-HUMIDIFICATION; VENTILATION; USE OF AIR CURRENTS FOR SCREENING
    • F24F2221/00Details or features not otherwise provided for
    • F24F2221/34Heater, e.g. gas burner, electric air heater

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Mechanical Engineering (AREA)
  • Thermal Sciences (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Human Computer Interaction (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Storage Device Security (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Mram Or Spin Memory Techniques (AREA)

Abstract

本发明涉及一种在非易失性存储器中记录数据的方法,包括以下步骤:将被连续再现的数据文件分割成每一块都具有预定数据长度的多个块;在一管理区中记录第一管理信息,以便连接数个片段并恢复这些片段作为被连续再现的数据文件;和将所述数据文件记录在与所述管理区不同的数据区中;将第二管理信息加到所述数据区中的每个数据文件中,将多块集合在一起作为多个片段,并记录该多个片段使它们分散在非易失性存储器中,第二管理信息包括组成一个数据文件的片段数和每个片段的大小,并且具有预定的数据长度。

Description

在非易失性存储器中记录数据的方法
技术领域
本发明涉及用来利用文件分配表(FAT)管理记录在存储卡上的文件的在非易失性存储器中记录数据的方法。
背景技术
由于每一位由两个晶体管组成,作为可电重写存储器的EEPROM(电可擦可编程只读存储器)需要大的空间。因此,EEPROM的集成受到了限制。为了解决这个问题,利用位全擦除(all-bit-erase)系统使一位由一个晶体管来完成的快闪存储器已经开发出来。快闪存储器有望成为象磁盘和光盘那样的传统记录介质的后继产品。
利用快闪存储器的存储卡也是为人所知的。存储卡可以自由地安装在某一装置上和从某一装置1拆去。可以制造出使用存储卡来代替传统CD(光盘)(致密盘:商标)或MD(迷你盘:商标)的数字音频记录/再现装置。
用于传统个人计算机的文件管理系统名为FAT(文件分配表)。在FAT系统中,当特定的文件被定义时,预定的参数被连续放置在这个文件中。因此,文件的大小是可变的。一个文件至少由一个管理单元(扇区、簇、或诸如此类)组成。与管理单元相对应的数据被写入称之为FAT的表格中。在FAT文件系统中,文件结构可以容易地被构成,而与记录介质的物理特征无关。因此,FAT文件系统可以用于磁光盘中,以及用于软盘和硬盘中。在上述的存储卡中,使用了FAT文件系统。
然而,用来记录音频数据的CD根本不含有FAT系统的概念。在可以用来记录和再现音频数据的MD时代,利用称为Link-P的FAT改进系统来记录和编辑音乐节目。因此,系统本身可以用低性能(low power)的CPU来控制。然而,使用这样一种系统时,不能与个人计算机交换数据。因此,MD系统已经作为一个独立的AV系统得到发展。
在MD中使用的Link-P系统由P-DFA(用于缺陷区的指针)、P-Empty(用于空槽(slot)的指针)区域、P-FRA(用于自由区的指针)和P-TNo1、P-TNo2...、P-TNo255组成。P-DFA表示在MD上包含缺陷的信息的槽的顶部位置。P-Empty区域表示槽的使用状况。P-FRA表示用来管理可记录区域的槽的顶部位置。P-TNo1、P-TNo2、...、P-TNo255表示与各个音乐节目相对应的槽的起始位置。
接下来,参照图42A至42E,利用区域PRA对用来连续搜索分散在记录介质上的可记录区域的过程进行说明。参考图42A至42E,FRA的卷标是03h。在这种情况中,正如图42A所示的,槽03h被访问。在槽03h中记录的起始地址和结束地址表示盘上一个片段(part)的起始地址和结束地址。
如图42A所示,在槽03h中记录的链接信息表示下一个槽地址是18h。因此,如图42B所示,槽18h被访问。在槽18h中记录的链接信息表示下一个槽地址是1Fh。类似地,如图42C所示,槽1Fh被访问。如图42D所示,与槽1Fh中的链接信息相对应,槽2Bh被访问。如图42E所示,与槽2Bh中的链接信息相对应,槽E3h被访问。按照这样一种方式,链接信息被跟踪下去直到检测到一个空值(00h)作为链接信息为止。因此,分散在MD上的可记录区域的地址被连续识别出来。另一种可供选择的方法是,通过控制光拾取器和连续访问这些地址,可以获得分散在存储器上的可记录区域。类似地,通过访问P-DFA或P-TNoN,分散在存储器上的缺陷区域也能连续地得到访问。
按照这样一种方式,在LINK-P系统中,使用四个参数就能获得与FAT系统相类似的控制效果。然而,该系统很复杂并且软件的大小很大。如果包含Link-P的U-TOC(用户-内容表)区域被损坏,那么分散在存储介质上的可记录区域和记录区域就不能被跟踪。另一方面,由于存储卡被公认为供个人计算机所用,因此,它含有用于个人计算机的FAT系统。由此,由于用于存储卡的存储卡系统变大,因此低性能的CPU不能管理FAT系统。类似地,当FAT系统被损坏时,分散在存储器上的已记录区域也不能被跟踪。
发明内容
本发明涉及一种在非易失性存储器中记录数据的方法,包括以下步骤:将被连续再现的数据文件分割成每一块都具有预定数据长度的多个块;在一管理区中记录第一管理信息,以便连接数个片段并恢复这些片段作为被连续再现的数据文件;和将所述数据文件记录在与所述管理区不同的数据区中;将第二管理信息加到所述数据区中的每个数据文件中,将多块集合在一起作为多个片段,并记录该多个片段使它们分散在非易失性存储器中,第二管理信息包括组成一个数据文件的片段数和每个片段的大小,并且具有预定的数据长度。
附图说明
通过结合附图对本发明的优选实施例进行如下详细的说明,本发明的这些和其它目的、特征和优点将更加明显。
图1是显示利用根据本发明的非易失性存储器的数字音频记录器/播放器的结构的方块图;
图2是显示根据本发明的DSP(数字处理器)30的内部结构的方块图;
图3是显示根据本发明的存储卡40的内部结构的方块图;
图4是显示根据本发明的、作为存储介质的存储卡的文件管理结构的示意图;
图5是显示在根据本发明的存储卡40的快闪存储器42中数据的物理结构的示意图;
图6是根据本发明的存储卡40的数据结构;
图7是显示在存储卡40中文件结构的分层结构的示意图;
图8是显示存储在存储卡40中的作为一个子目录的再现管理文件PBLIST.MSF的数据结构的示意图;
图9是显示在一个ATRAC 3数据文件被划分成许多个具有预定单位长度的块并且属性文件附加在上面的情况下数据结构的示意图;
图10A是显示在用组合处理对两个文件进行编辑之前文件结构的示意图;
图10B是显示在用组合处理对两个文件进行编辑之后文件结构的示意图;
图10C是显示在用分割处理对一个文件进行编辑之后文件结构的示意图;
图11是显示再现管理文件PBLIST的数据结构的示意图;
图12A是显示再现管理文件PBLIST的首标部分的数据结构的示意图;
图12B是显示再现管理文件PBLIST的主体数据部分的数据结构的示意图;
图12C是显示再现管理文件PBLIST的附加信息数据部分的数据结构的示意图;
图13是与附加信息数据的显示类型和它们的码值相关的表;
图14是与附加信息数据的显示类型和它们的码值相关的表;
图15是与附加信息数据的显示类型和它们的码值相关的表;
图16A是显示附加信息数据的数据结构的示意图;
图16B是显示在附加信息数据是一个艺术家姓名的情况下数据结构的示意图;
图16C是显示在附加信息数据是一个版权代码的情况下数据结构的示意图;
图16D是显示在附加信息数据是日期/时间信息的情况下数据结构的示意图;
图16E是显示在附加信息数据是一个再现日志(log)的情况下数据结构的示意图;
图17是显示ATRAC 3数据文件的详细数据结构的示意图;
图18是显示组成ATRAC 3数据文件的属性首标的上部的数据结构的示意图;
图19是显示组成ATRAC 3数据文件的属性首标的中部的数据结构的示意图;
图20是将记录模式、记录时间等相关的表;
图21是显示复制控制状态的表;
图22是显示组成ATRAC 3数据文件的属性首标的下部的数据结构的示意图;
图23是显示ATRAC 3数据文件的数据块的首标的数据结构的示意图;
图24A至24C是显示在FTA区被损坏的情况下根据本发明的恢复方法的流程图;
图25是显示根据本发明的第二实施例在存储卡40中的文件结构的示意图;
图26是显示轨道信息管理文件TRKLIST.MSF和ATRAC 3数据文件A3Dnnnnn.MSA之间的关系的示意图;
图27是显示轨道信息管理文件TRKLIST.MSF的详细数据结构的示意图;
图28是显示用来管理一个名字的NAME 1的详细数据结构的示意图;
图29是显示用来管理一个名字的NAME 2的详细数据结构的示意图;
图30是ATRAC 3数据文件A3Dnnnnn.MSA的详细数据结构的示意图;
图31是显示表示附加信息的INFLIST.MSF的详细数据结构的示意图;
图32是显示表示附加信息数据的INFLIST.MSF的详细数据结构的示意图;
图33是显示在FTA区被损坏的情况下根据本发明的第二实施例的恢复方法的流程图;
图34是显示在根据本发明的第一实施例的存储映射结构(参见图6)中的、用来解释在将具体文件组合在一起的组合处理中数据转移的存储映射的示意图;
图35A是显示两个文件被组合在一起之前存储映射的示意图;
图35B是显示两个文件被组合在一起之后存储映射的示意图;
图36是用来解释根据本发明的第一实施例的组合处理的流程图;
图37是显示在根据本发明的第一实施例的存储映射结构(参见图6)中的、用来解释在将一个具体节目进行分割的分割处理中数据转移的存储映射的示意图;
图38A是显示具体节目被组合之前的存储映射的示意图;
图38B是显示具体节目被组合之后的存储映射的示意图;
图39是用来解释根据本发明的第一实施例的分割处理的流程图;
图40是用来解释根据本发明的第二实施例的组合处理的流程图;
图41是用来解释根据本发明的第二实施例的分割处理的流程图;
图42A是显示用来管理分散在传统磁光盘上的可记录区域的、应用于U-TOC(用户-内容表)的一个片段的管理方法的示意图;
图42B是显示用于与图42A所示的片段相应组合的片段的管理方法的示意图;
图42C是显示用于与图42B所示的片段相应组合的片段的管理方法的示意图;
图42D是显示用于与图42C所示的片段相应组合的片段的管理方法的示意图;和
图42E是显示用于与图42D所示的片段相应组合的片段的管理方法的示意图。
具体实施方式
下面对本发明的实施例进行说明。图1是显示利用根据本发明的一个实施例的存储卡的数字音频记录器/播放器的结构的方块图。数字音频记录器/播放器利用可拆式存储卡记录和再现数字音频信号。实际上,记录器/播放器包括一个音频系统,以及一个放大单元、一个扬声器、一个CD播放器、一个MD记录器、一个调谐器,等等。然而,应该注意到,本发明还可以应用到其它音频记录器中。换句话来说,本发明可以应用到便携式记录/再现装置中。另外,本发明还可以应用到记录以卫星数据通信、数字广播、或互联网形式传播的数字音频数据的机顶盒上。并且,本发明还可以应用到记录/再现除音频数据之外的运动图像数据和静止图像数据的系统中。根据本发明的实施例的系统可以记录/再现除数字音频信号之外的诸如图像和文本那样的附加信息。
记录/再现装置含有一个音频编码器/解码器IC(集成电路)10、一个保密卡IC 20和一个DSP(数字信号处理器)30。这些部件的每一个都由单芯片IC组成。记录/再现装置还含有一个可拆存储卡40。存储卡40的单芯片IC含有快闪存储器(非易失性存储器)、存储控制模块和保密模块。保密模块含有DES(数据加密标准)加密电路。根据本发明,记录/再现装置可以使用微型计算机来代替DSP 30。
音频编码器/解码器IC 10含有一个音频接收口11和一个编码器/解码器模块12。编码器/解码器模块12编码与高效编码方法相对应的数字音频数据并且将编码数据写入存储卡40中。另外,编码器/解码器模块12解码从存储卡40读取的编码数据。作为高效编码方法,作为在迷你盘中使用的ATRAC(自适应变换声编码)格式的改进版的ATRAC 3格式得到了应用。
在ATRAC 3格式中,在44.1KHz上取样的并用16位量化的音频数据被高效地编码。在ATRAC 3格式中,被处理的音频数据的最小数据单位是一个声单位(SU)。1SU是其1024个取样的数据(1024×16位×2声道)被压缩成几百个字节的数据的一个数据。1SU的持续时间为大约23ms。在高效编码方法中,音频数据的数据量被压缩成比原始数据的数据量小大约十倍的数据。与在迷你盘中使用的ATRAC 1格式的情况一样,与ATRAC 3格式相对应的压缩和解压的音频信号在音质上受到较少的损害。
线路输入选择器13有选择地将MD的再现输出信号、调谐器的输出信号或磁带的再现输出信号传输给A/D转换器14。A/D转换器14将输入的线路信号转换成数字音频信号(取样频率=44.1KHz,量化位的数目=16位)。数字输入选择器16有选择地将MD、CD、或CS(卫星数字广播)的数字输出信号传输给数字输入接收器17。数字输入信号是通过例如一条光缆来传送的。数字输入接收器17的输出信号传输给取样速率转换器15。取样速率转换器15将数字输入信号转换成数字音频信号(取样频率=44.1KHz;量化位的数目=16)。
音频编码器/解码器IC 10的编码器/解码器模块12通过保密卡IC 20的接口21将编码数据传输给DES加密电路22。DES加密电路22含有一个FIFO(先入先出)23。设置DES加密电路22是为了保护内容的版权。存储卡40也含有DES加密电路。记录/再现装置的DES加密电路22含有多个主密钥和一个装置专用存储密钥。DES加密电路22还含有随机数生成电路。DES加密电路22可以与含有DES加密电路的存储卡40共享验证(authenticate)过程和会话密钥。另外,DES加密电路22还可以用DES加密电路的存储密钥重新加密数据。
从DES加密电路22输出的加密音频数据传输给DSP(数字信号处理器)30。DSP 30通过接口与存储卡40进行通信。在此例中,存储卡40安装在记录/再现装置的安装/拆卸机械装置(图中未画出)上。DSP 30将加密数据写入存储卡40的快闪存储器中。加密数据在DSP 30和存储卡40之间串行传输。另外,外部SRAM(静态随机存取存储器)31也与DSP 30相连接。SRAM31为记录/再现装置提供了足够的存储容量以便控制存储卡40。
总线接口32与DSP相连接。数据通过总线33从外部控制器(图中未画出)传输到DSP 30中。外部控制器控制音频系统的所有操作。外部控制器通过总线接口32将诸如与用户的操作相对应的通过操作部分产生的记录命令或再现命令之类的数据传输给DSP 30。另外,外部控制器还通过总线接口32将诸如图像信息和字符信息那样的附加信息传输给DSP 30。总线33是一条双向通信路径。从存储卡40中读取的附加信息通过DSP 30、总线接口32和总线33后传输给外部控制器。实际上,外部控制器配置在,例如,音频系统的放大单元之中。另外,外部控制器使显示部分显示附加信息、记录器的操作状态等。显示部分是由音频系统共享的。由于通过总线33进行交换的数据是不受版权保护的数据,因此,这些数据不需要加密。
由DSP 30从存储卡40中读取的加密音频数据是由保密卡IC 20来解密的。音频编码器/解码器IC 10解码与ATRAC 3格式相对应的编码数据。音频编码器/解码器10的输出数据传输给D/A转换器18。D/A转换器18将音频编码器/解码器10的输出数据转换成模拟数据。模拟音频信号传输给线路输出端口19。
模拟音频信号通过线路输出端19传输给放大单元(图中未画出)。模拟音频信号从扬声器或头戴受话器中得到再现。外部控制器提供一静音信号给D/A转换器18。当静音信号表示“打开静音”(mute-on)状态时,外部控制器禁止音频信号从线路输出端口19中输出。
图2是显示DSP 30的内部结构的方块图。参考图2,DSP 30包括一个核芯(core)34、一个快闪存储器35、一个SRAM 36、一个总线接口37、一个存储卡接口38和总线间的桥路。DSP 30具有与微型计算机相同的功能。机芯34等效于CPU。快闪存储器35存储使DSP 30进行预定的处理的程序。SRAM 36和外部SRAM 31用作记录/再现装置的RAM。
DSP 30控制一个写处理和一个读处理,写处理用来与诸如通过总线接口32和37接收的记录命令之类的操作信号相对应将加密音频数据和附加信息写入存储卡中,读处理则用来从存储卡中读取加密音频数据和附加信息。换句话来说,将DSP 30设置在记录/再现音频数据和附加信息的音频系统的应用软件这一侧与存储卡40之间。当存储卡40被访问时,DSP 30处于工作状态。另外,DSP 30与诸如文件系统的软件相应进行操作。
DSP 30利用在传统个人计算机中所使用的FAT系统管理存储在存储卡40中的文件。除了文件系统之外,根据本发明的实施例,还使用管理文件。后面将会对管理文件进行说明。管理文件用来管理存储在存储卡40中的数据文件。作为第一文件管理信息的管理文件用来管理音频数据文件。另一方面,作为第二文件管理信息的FAT用来管理包括音频数据文件和存储在存储卡40的快闪存储器中的管理文件在内的所有文件。管理文件存储在存储卡40中。FAT在存储卡40被装运之前被写入到快闪存储器中,以及被写入到根目录等之中。后面将会对FAT的细节进行说明。
根据本发明的实施例,为了保护数据的版权,要对根据ATRAC 3格式已经被压缩的音频数据进行加密。另一方面,由于没有必要保护管理文件的版权,因此,不需要对管理文件加密。有两种类型的存储卡,一种是加密型的和另一种是非加密型的。然而,供记录版权保护的数据的记录器/播放器之用的存储卡仅限于加密型的。
由用户记录的话音数据和图像数据被记录在非加密型的存储卡上。
图3是显示存储卡40的内部结构的方块图。存储卡40包括一个控制模块41和一个作为单芯片IC构造而成的快闪存储器42。双向串行接口设置在记录器/播放器的DSP 30和存储卡40之间。双向串行接口由十根线组成,它们是一条用来传输与数据一起被传输的时钟信号的时钟线SCK;一条用来传输表示状态的信号的状态线SBS;一条用来传输数据的数据线DIO;一条中断线INT;二条GND(地)线;二条VCC线和二条保留线。
时钟线SCK用来传输与数据同步的时钟信号。状态线SBS用来传输表示存储卡40的状态的信号。数据线DIO用来输入和输出命令和加密的音频数据。中断线INT用来传输使存储卡40中断记录器/播放器的DSP 30的中断信号。当存储卡40安装在记录器/播放器上面时,存储卡40产生中断信号。然而,根据本发明的实施例,由于中断信号是通过数据线DIO传输的,因此,中断线INT接地。
串行/并行转换、并行/串行转换和接口模块(S/P、P/S、I/F模块)43是一个设置在记录器/播放器的DSP 30和存储卡40的控制模块41之间的接口。S/P、P/S和IF模块43将从记录器/播放器的DSP 30中接收的串行数据转换成并行数据并将并行数据传输给控制模块41。另外,S/P、P/S和IF模块43将从控制模块41中接收的并行数据转换成串行数据并将串行数据提供给DSP 30。当S/P、P/S和IF模块43通过数据线DIO接收到命令和数据时,S/P、P/S和IF模块43将它们分离成这些对于存储器42来说可被正常访问的命令和数据和那些被加密的命令和数据。
在数据通过数据线DIO被传输的格式中,在命令被传输之后,数据被传输。S/P、P/S和IF模块43检测命令的代码并且确定该命令和数据是这些可被正常访问的命令和数据还是那些被编码的命令和数据。根据所确定的结果,S/P、P/S和IF模块43将可被正常访问的命令存储在命令寄存器44中,并将可被正常访问的数据存储在页缓冲器45和写寄存器46中。与写寄存器46相联系,存储卡40含有纠错码编码电路47。纠错码编码电路47为暂时存储在页缓冲器45中的数据生成作为纠错码的冗余码。
命令寄存器44、页缓冲器45、写寄存器46和纠错码编码电路47的输出数据提供到快闪存储器接口和定序器(sequencer)(从这里开始,称之为存储器IF和定序器)51。存储器IF和定序器51是一个设置在控制模块41和快闪存储器42之间的接口,并且控制在它们之间交换的数据。数据通过存储器IF和定序器51被写入快闪存储器中。
对应于ATRAC 3格式已经被压缩并且被写入快闪存储器中的音频数据(从这里开始,称这个音频数据为ATRAC 3数据)由记录器/播放器的保密卡IC20和存储卡40的保密模块52来加密以便保护ATRAC 3数据的版权。保密模块52包括一个缓冲存储器53、一个DES加密电路54和一个非易失性存储器55。
存储卡40的保密模块52含有多个验证密钥和一个关于每个存储卡的专用存储密钥。非易失性存储器55存储一个加密数据所必需的密钥。存储在非易失性存储器55中的密钥不能被分析。例如,根据本实施例,一个存储密钥被存储在非易失性存储器55中。保密模块52还含有随机数生成电路。保密模块52验证可适用的记录器/播放器并与之共享会话密钥。另外,保密模块52还通过DES加密电路54用存储密钥重新加密其中的内容。
例如,当将存储卡40安装在记录器/播放器上时,它们将相互被验证。记录器/播放器的保密卡IC 20和存储卡40的保密模块52相互验证。当记录器/播放器已经验证安装的存储卡40作为可适用的存储卡和存储卡40已经验证记录器/播放器是可适用的记录器/播放器时,它们相互得到验证。在相互验证过程已经成功地完成之后,记录器/播放器和存储卡40生成各自的会话密钥并且相互共享它们。无论什么时候记录器/播放器和存储卡40相互验证,它们都生成各自的会话密钥。
当内容被写入存储卡40中时,记录器/播放器用会话密钥加密内容密钥并将加密数据传输到存储卡40中。存储卡40用会话密钥解密内容密钥、用存储密钥重新加密内容密钥、并将内容密钥传输给记录器/播放器。存储密钥是关于每一个存储卡40的专用密钥。当记录器/播放器接收到加密内容密钥时,记录器/播放器对加密内容密钥进行格式化处理,并将加密内容密钥和加密内容写入存储卡40中。
在上一段中,对关于存储卡40的写处理作了说明,接下来,对关于存储卡40的读处理进行说明。从快闪存储器42读取的数据通过存储器IF和定序器51传输到页面缓冲器45、读寄存器48和纠错电路49中。纠错电路49纠正存储在页缓冲器45中的数据的错误。已经得到纠错的页缓冲器45的输出数据和读寄存器48的输出数据传输到S/P、P/S和IF模块43中。S/P、P/S和IF的输出数据通过上述的串行接口传输到记录器/播放器的DSP 30中。
当数据从存储卡40中读出时,用存储密钥加密的内容密钥和用块密钥加密的内容从快闪存储器42中读出。保密模块52用存储密钥解密内容密钥。保密模块52用会话密钥重新加密解密内容密钥并将重新加密的内容密钥传输到记录器/播放器中。记录器/播放器用接收的会话密钥解密内容密钥并且用解密的内容密钥生成块密钥。记录器/播放器连续解密加密的ATRAC 3数据。
CONFIG.ROM 50是一个存储存储卡40的分区信息、各种类型的属性信息等等的存储器。存储卡40还含有擦除保护开关60。当开关60处在擦除保护位置时,即使让存储卡40擦除存储在快闪存储器42中的数据的命令从记录器/播放器这一侧传输到存储卡40中,存储卡40也被禁止擦除存储在快闪存储器42中的数据。OSC cont.61是一个产生作为存储卡40的处理过程的定时的基准的时钟信号的振荡器。
图4是显示使用存储卡作为存储介质的计算机系统的文件系统的处理过程的分层结构的示意图。在这种分层结构中,最上层是应用处理层。紧随应用处理层的是文件管理处理层、逻辑地址管理层、物理地址管理层和快闪存储器访问层。在上述的分层结构中,文件管理处理层是FAT文件系统。物理地址被分配给快闪存储器的各个块。快闪存储器的各块间的关系和其物理地址是不变的。逻辑地址是在文件管理处理层上被逻辑地处理的地址。
图5是显示在存储卡40的快闪存储器42中处理的数据的物理结构的示意图。在存储器42中,一个数据单元(称之为“段”)被分割成预定数目的块(固定长度)。一个块被分割成预定数目的页(固定长度)。在快闪存储器中,数据每一次以一块的形式被擦除。数据每一次以一页的形式被写入快闪存储器42中或从快闪存储器中读出。每一块的大小是相同的。同样,每一页的大小是相同的。一块由页0至页m组成。举例来说,一块具有例如8KB(千字节)或16KB的存储容量。一页具有512B(字节)的存储容量。当一块具有8KB的存储容量时,快闪存储器42的总存储容量是4MB(512块)或8MB(1024块)。当一块具有16KB的存储容量时,快闪存储器42的总存储容量是16MB(1024块)、32MB(2048块)或64MB(4096块)。
一页由512字节的数据部分和16字节的冗余部分组成。冗余部分的前面三个字节是无论什么时候数据被更新时被重写的覆写部分。前面三个字节连续包含块状态区、页状态区和更新状态区。冗余部分的其余13个字节是依赖于数据部分的内容的固定数据。这13个字节包含管理标志区(1字节)、逻辑地址区(2字节)、格式保留区(5字节)、分散信息ECC区(2字节)和数据ECC区(3字节)。分散信息ECC区包含用于针对管理标志区、逻辑地址区和格式保留区的纠错处理过程的冗余数据。数据ECC区包含用于针对512字节数据的纠错处理过程的冗余数据。
管理标志区包含一个系统标志(1:用户块,0:引导块)、一个转换表标志(1:无效,0:表块)、一个复制禁止标志(1:OK(可以)、0:NG(不可以))、和一个访问许可标志(1:无限制,0:读保护)。
前面两块-块0和1是引导块。块1是块0的备份。引导块是在存储卡中有效的顶部块。当存储卡安装在记录器/播放器中时,引导块首先被访问。剩余块是用户块。引导块的页0包含一个首标区、一个系统入口区、和一个引导和属性信息区。引导块的页1包含一个禁止块数据区。引导块的页2包含一个CIS(卡信息结构)/IDI(标识驱动器信息)区。
引导块的首标区包含引导块ID和有效入口的个数。系统入口是禁止块数据的开始位置、其数据大小、其数据类型、CIS/IDI区的数据开始位置、其数据大小和其数据类型。引导和属性信息包含存储卡类型(只读类型、可重写类型、或混合式类型)、块大小、块的数目、总块数、保密/非保密类型、卡制造数据(制造日期),如此等等。
由于快闪存储器的重写次数是有限的,这是由绝缘膜的损坏造成的,有必要防止相同的存储区域(块)被集中地访问。因此,当存储在特定物理地址上的、在特定逻辑地址上的数据被重写时,特定块的更新数据被写入未用过的块上而不是原来的块上。在数据被更新之后,逻辑地址和物理地址之间的关系发生了变化。这个处理被称为交换(swap)处理。这样,可以防止同一块被集中地访问。因此,快闪存储器的使用寿命能够得到延长。
逻辑地址与写入到块中的数据相联系。即使原来数据的块不同于更新数据的块,但在FAT上的地址并没有改变。因此,同一数据能够得到适当地访问。然而,由于实施了交换处理,因此,需要表示逻辑地址和物理地址之间关联的转换表(这个表被称为逻辑-物理地址转换表)。根据逻辑-物理地址转换表,可以获得与在FAT上指定的逻辑地址相对应的物理地址。因此,能够访问由物理地址所指定的块。
DSP 30将逻辑-物理地址转换表存储在SRAM中。当RAM的存储容量很小时,逻辑-物理地址转换表可以存储在快闪存储器中。逻辑-物理地址转换表将按递增次序排序的逻辑地址(2字节)与物理地址(2字节)相关联。由于快闪存储器的最大存储容量是128MB(8192块),因此,可以用2字节指定8192个地址。逻辑-物理地址转换表被管理用于每一段。因此,逻辑-物理地址转换表的大小与快闪存储器的存储容量成正比。当快闪存储器的存储容量是8MB(两段)时,两页被用作对每一段的逻辑-物理地址转换表。当转换表存储在快闪存储器时,在每页的冗余部分中管理标志区的预定的一位表示当前块是否是包含逻辑-物理地址转换表的块。
上述的存储卡可以象用在盘状记录介质上那样用在个人计算机系统的FAT文件系统中。快闪存储器含有IPL区、FAT区和路径目录区(图5中并未画出)。IPL区包含最初装载到记录器/播放器的存储器中的节目的地址。另外,IPL区还包含各种类型的存储器信息。FAT区包含关于块(簇)的信息。FAT已经确定了未使用的块、下一个块号、缺损块和最后的块号。路径目录区包含目录入口(entry),这些目录入口是文件属性、更新日期(年、月、日)、文件大小、等等。
接下来,参照图6,对使用FAT表的管理方法进行说明。
图6是显示存储区映射(map)的示意图。存储映射顶区是分区表部分。紧随分区表部分的是块区、引导扇区、FAT区、FAT备份区、根目录区、子目录区和数据区。在存储映射上,逻辑地址已经按照逻辑-物理地址转换表被转换成物理地址。
引导扇区、FAT区、FAT备份区、根目录区、子目录区和数据区通称为FAT分区区域。
分区表部分包含FAT分区区域的开始地址和结束地址。
用于传统软盘的FAT并没有这样的一个分区表。由于第一轨只含有分区表,因此,还有空白区域。引导扇区包含FAT结构的大小(12位FAT或16位FAT)、簇大小和每个区域的大小。FAT用来管理记录在日期区中的文件的位置。FAT复制区是一个FAT备份区。路径(route)目录区包含文件名、文件名的开始簇地址、和文件名的各种属性。路径目录区对每个文件使用了32字节。
子目录区是通过作为目录的目录属性文件来实现的。在图6所示的实施例中,子目录区含有四个名为PBLIST.MSF、CAT.MSF、DOG.MSF和MAN.MFA的文件。子目录区用来管理文件名和在FAT上的记录位置。换句话来说,文件名CAT.MSF的槽是FAT上的指定地址“5”。文件名DOG.MSF的槽是FAT上的指定地址“10”。在簇2之后的区域用作数据区。在这个实施例中,根据ATRAC 3格式已经被压缩的音频数据记录在上面。文件名MAN.MSA的顶槽是FAT上的指定地址“110”。根据本发明的实施例,带有文件名CAT.MSF的音频数据被记录在簇5至8中。作为带有文件名DOG.MSF的文件的前半部分的DOG-1的音频数据被记录在簇10至12中。作为带有文件名DOG.MSF的文件的后半部分的音频数据DOG-2被记录在簇100和101中。带有文件名MAN.MSF的音频数据被记录在簇110和111中。
在本发明的实施例中,对单个文件被分割成两个部分并被分散记录的实例进行说明。在该实施例中,在数据区中的区域“Empty(空白)”是可记录区。在簇200之后的区域用来管理文件名。文件CAT.MSF被记录在簇200中,文件DOG.MSF被记录在簇201中,和文件MAN.MSF被记录在簇202中。当文件的位置发生改变时,簇200之后的区域被重新排列。当存储卡被安装时,根据顶部分区表部分来记录FAT分区区域的开始点和结束点。在再现根扇区部分之后,根目录区和子目标区被再现。检测子目录区中的再现管理信息PBLIST.MSF的槽。因此,可以获得文件PBLIST.MSF的槽的结束部分的地址。在该实施例中,由于地址“200”被记录在文件PBLIST.MSF的末端,因此,簇200被引用。
簇200之后的区域用来管理文件的再现顺序。在本实施例中,文件CAT.MSA是第一个节目(program),文件DOG.MSA是第二个节目,和文件MAN.MSA是第三个节目。在簇200之后的区域被引用后,文件CAT.MSA、DOG.MSA和MAN.MSA的槽也被引用。在图6中,文件CAT.MSA的槽的末端是指定地址“5”,文件DOG.MSA的槽的末端是指定地址“10”,文件MAN.MSA的槽的末端是指定地址“110”。当用地址“5”在FAT上搜索入口地址时,簇地址“6”被获得。当用地址“6”在FAT上搜索入口地址时,簇地址“7”被获得。当用地址“8”在FAT上搜索入口地址时,表示结束的代码“FFF”被获得。因此,文件CAT.MSA使用了簇5、6、7和8。根据数据区中的簇5、6、7和8,可以访问带有文件名CAT.MSA的ATRAC 3数据的区域。
接下来对用来搜索已经被分散记录的文件DOG.MSF的方法进行说明。文件DOG.MSA的槽的末端是指定地址“10”。当用地址“10”搜索FAT上的入口地址时,簇地址“11”被获得。当引用地址“11”搜索FAT上的入口地址时,簇地址“12”被获得。当引用地址“12”搜索FAT上的入口地址时,簇地址“101”被获得。当入口地址“101”被引用时,表示结束的代码“FFF”被获得。因此,文件DOG.MSF使用了簇10、11、12、100和101。当簇10、11、和12被引用时,可以访问文件DOG.MSF的ATRAC3数据的第一部分。当簇100和101被引用时,可以访问文件DOG.MSF的ATRAC 3数据的第二部分。另外,当用地址“110”在FAT上搜索入口地址时,簇地址“101”被获得。当用地址“101”在FAT上搜索入口地址“111”时,表示结束的代码“FFF”被获得。因此,很明显,文件MAN.MSA使用了110和111。如上所述,分散在快闪存储器中的数据文件可以链接起来并且连续地被再现。
根据本发明的实施例,除了在存储卡40的格式中定义的文件管理系统之外,管理文件也用来管理轨道和音乐文件的各个部分。管理文件记录在存储卡40的快闪存储器42的用户块中。因此,正如后面将要说明的,即使存储卡40的FAT受到损坏,文件也能被恢复回来。
管理文件是由DSP 30生成的。当打开记录器/播放器的电源时,DSP 30确定存储卡40是否已经安装在记录器/播放器中。当存储卡40已经被安装时,DSP 30验证存储卡40。当DSP 30已经成功地验证存储卡40时,DSP30读出快闪存储器42的引导块。因此,DSP 30读出逻辑-物理地址转换表并且将读出数据存储在SRAM中。FAT和路径目录在存储卡40被装运之前已经被写入存储卡40的快闪存储器42之中。当数据被记录在存储卡40中时,就生成了管理文件。
换句话来说,用户的遥控器或类似的装置发出的记录命令通过总线和总线接口32从外部控制器传输到DSP 30中。编码器/解码器IC 10压缩接收的音频数据并将所得的ATRAC 3数据传输给保密卡IC 20。保密卡IC 20加密ATRAC 3数据。加密的ATRAC 3数据被记录在存储卡40的快闪存储器42中。此后,FAT和管理文件被更新。无论什么时候文件被更新(实际上,无论什么时候完成音频数据的记录过程),存储在SRSM 31和36中的FAT和管理文件都被重写。当存储卡40被拆去时,或者当关闭记录器/播放器的电源时,最后从SRAM 31和36提供的FAT和管理文件被记录在快闪存储器42中。另一种可供选择的方案是,无论什么时候完成音频数据的记录过程,写入到快闪存储器42中的FAT和管理文件都可以被重写。当音频数据被编辑时,管理文件的内容被更新。
在根据本实施例的数据结构中,附加信息包含在管理文件之中。附加信息被更新和被记录在快闪存储器42中。在管理文件的另一种数据结构中,除了生成轨道管理文件之外还生成附加信息管理文件。附加信息通过总线和总线接口32从外部控制器传输到DSP 30中。附加信息被记录在存储卡40的快闪存储器42中。由于附加信息没有通过保密卡IC 20,因此,它并没有被加密。当存储卡40从记录器/播放器上拆卸下来时,或当关闭录音机/播放器的电源时,附加信息从DSP 30的SRAM写入到快闪存储器42中。
图7是显示存储卡40的文件结构的示意图。作为文件结构,其中有一个静止图像目录、一个运动图像目录、一个话音目录、一个控制目录和一个音乐(HIFI)目录。根据本实施例,音乐节目被记录和被再现。接下来对音乐目录进行说明。音乐目录含有两种类型的文件。第一种类型是再现管理文件PBLIST.MSF(从这里开始,称之为PBLIST)。另一种类型是存储加密音乐数据的ATRAC 3数据文件A3Dnnnnn.MSA。音乐目录可以存储直到400个ATRAC 3数据文件(即,400个音乐节目)。ATRAC 3数据文件被登记在再现管理文件中和由记录器/播放器生成。
图8是显示再现管理文件的结构的示意图。图9是显示一个ATRAC 3数据文件的文件结构的示意图。再现管理文件是16KB的固定长度文件。ATRAC 3数据文件由属性首标和用于每个音乐节目的加密音乐数据区组成。属性数据具有16KB的固定长度。属性首标的结构类似于再现管理文件的结构。
图8所示的再现管理文件由首标、存储卡名NM1-S(一字节代码)、存储卡名NM2-S(二字节代码)、节目再现顺序表TRKTBL、和存储卡附加信息INF-S组成。在数据文件的开头部分上属性首标(图9所示)由首标、节目名NM1(一字节代码)、节目名NM2(二字节代码)、轨道信息TRKINF(如轨道密钥信息之类)、片段(part)信息PRTINF和轨道附加信息INF组成。首标包含总的片段个数的信息、名字的属性、附加信息的大小、等等。
紧随属性数据之后的是ATRAC 3音乐数据。音乐数据是分段成块的,每一块是16KB。每一块从首标开始。首标包含用来解密加密数据的原始值。只有ATRAC 3数据文件的音乐数据才被加密。因此,象再现管理文件、首标等那样的其它数据并不被加密。
下面参照图10A至10C对音乐节目和ATRAC 3数据文件之间的关系进行说明。一个轨道(track)等效于一个音乐节目。另外,一个音乐节目由一个ATRAC数据组成(参见图9)。ATRAC 3数据文件是对应于ATRAC 3格式已经被压缩的音频数据。ATRAC 3数据文件每次以簇的形式被记录在存储卡40中。一个簇具有16KB的容量。多个文件并不包含在一个簇之中。快闪存储器42的最小数据擦除单位是一块。在用于音乐数据的存储卡40的情况中,一块是一簇的同义词。另外,一个簇等效于一个扇区。
一个音乐节目基本上由一个片段组成。然而,当对一个音乐节目进行编辑时,一个音乐节目可以由多个片段组成。一个片段是一个数据被连续记录的单元。通常,一个轨道由一个片段组成。一个音乐节目的各个片段之间的连接是用在每个音乐节目的属性首标中的片段信息PRTINF来管理的。换句话来说,用片段信息PRTINF的片段大小PRTSIZE(4字节)来表示片段大小。片段大小PRTSIZE的前面两个字节表示当前片段的总簇数。后面两个字节分别表示开始和最后簇的开始声单位(SU)和结束声单位(SU)的位置。以下将一个声单位简写成SU。借助于这样的一种片段表示法,当音乐数据被编辑时,音乐数据的移动将会受到抑制。当对每一块进行音乐数据编辑时,虽然音乐数据的移动会受到抑制,但一块的编辑单位要比一个SU的编辑单位大得多。
SU是片段的最小单位。另外,在音频数据对应于ATRAC 3格式被压缩的情况下,SU是最小的数据单位。1SU是这样的音频数据,在44.1KHz上的1024个取样数据(1024×16位×2声道)被压缩成其数据量比原始数据的数据量大小约十倍的数据。1SU的持续时间为大约23ms。也就是说,一个片段由数千个SU组成。当一个簇由42个SU组成时,一个簇可以允许生成一秒的声音。组成一轨道的片段的个数依赖于附加信息的大小。由于片段的数目是通过从一块中减去首标、节目名、附加数据等之后获得的,因此,当没有附加信息时,可以使用片段的最大个数(645个片段)。
图10A是显示在CD或类似的介质的两个音乐节目被连续记录的情况中文件结构的示意图。第一个节目(文件1)由,例如,五个簇组成。由于一个簇不能包含第一节目和第二节目两个文件,因此,文件2从下一个簇的开头部分开始。与文件1相对应的片段1的结尾是在一个簇的中部,并且这个簇的剩余区域不含数据。类似地,第二音乐节目(文件2)由一个片段组成。在文件1的情况下,片段的大小是5。第一个簇是从0号SU开始的。最后的簇结束于4号SU。
有四种类型的编辑处理,它们是分割(divide)处理,组合处理、擦除处理和移动处理。分割处理用来将一轨道分割成两个部分。当进行分割处理时,总的轨道数据加1个。在分割处理过程中,一个文件被分割成文件系统上的两个文件。因此,在这种情况下,更新再现管理文件和FAT。组合处理用来将两个轨道组合成一个轨道。当进行组合处理时,总的轨道数减少一个。在组合处理过程中,两个文件被组合成文件系统上的一个文件。因此,当进行组合处理时,更新再现管理文件和FAT。擦除处理用来擦除一轨道。在轨道已经被擦除之后轨道数逐个减少。进行移动处理用来改变轨道的顺序。因此,当进行擦除处理或移动处理时,更新再现管理文件和FAT。
图10B是显示图10A所示的两个节目(文件1和文件2)的组合结果的示意图。作为组合处理的结果,组合文件由两个片段组成。图10C是显示一个节目(文件1)在簇2的中部被分割的分割结果的示意图。经过分割处理之后,文件1由簇0、1和簇2的前部组成,文件2由簇2的后部和簇3和4组成。
如上所述,根据本发明的实施例,由于定义了片段表示法,因此作为组合的结果(参见图10字节),片段1的开始位置、片段1的结束位置、和片段2的结束位置都可以用SU来定义。因此,为了填充(pack)由于组合的结果造成的空隙,没有必要移动片段2的音乐数据。另外,作为分割的结果(参见图10C),也没有必要移动数据和填充在文件2的开头部分上的空隙。
图11是显示再现管理文件PBLIST的详细数据结构的示意图。图12A和12B显示了再现管理文件PBLIST的首标部分和剩余部分。再现管理文件的大小是一个簇(1块=16K字节)。图12A所示的首标的大小是32字节。图12B所示的再现管理文件PBLIST的其余部分包含名字NM1-S区(256字节)(对于存储卡来说)、名字NM2-S区(512字节)、内容密钥区、MAC区、S-YMDhms区、再现顺序管理表TRKTBL区(800字节)、存储卡附加信息INF-S区(14720字节)和一个首标信息冗余区。这些区域的开始位置定义在再现管理文件中。
图12A所示的(0x0000)至(0x0010)的第一个32字节用作首标。在该文件中,一个16字节的区域被称为一个槽。参照图12A,首标位于第一和第二槽中。首标包含如下的区域:由“Reserved”(“保留”)表示的区域是未定义的区域。也就是说,在保留区中,其中写的是零(0x00)。然而,即使有什么数据被写入备用区中,写在保留区中的数据也是无用的。在未来的版本中,可以使用一些保留区。另外,禁止将数据写入到保留区中。当一个可选区没有被使用时,这个可选区被当作保留区对待。
=BLKID-TL0(4字节)
含义:BLOCKID(块标识符)FILE ID(文件标识符)
功能:标识再现管理文件的顶部
值:固定值=“TL=0”(例如:0x544C2D30)
=MCode(2字节)
含义:MAKER CODE(制造商代码)
功能:标识记录器/播放器的制造商和型号
值:高10位(制造商代码);
低6位(型号代码)
=REVISION(修订)(4字节)
含义:PBLIST的重写次数
功能:无论什么时候再现管理文件被重写此值都递增
值:从0开始和以1递增
=S-YMDhms(4字节)(可选)
含义:记录器/播放器用可靠的时钟记录的年、月、日、时、分和秒。
功能:标识最后记录的日期和时间。
值:25-31位:0-99年(1980-2079)
21-24位:0-12月
16-20位:0-31日
11-15位:0-23时
05-10位:0-59分
00-04位:0-29秒(以两位为间隔)
=SY1C+L(2字节)
含义:写在NM1-S区中存储卡的名字(1字节代码)的属性。
功能:表示作为字节代码的字符代码和语言代码
值:字符代码(C):高阶一字节
00:非字符代码,二进制数
01:ASCII(美国信息交换标准代码)
02:ASCII+KANA(假名)
03:改进8859-1
81:MS-JIS
82:KSC560-1989
83:GB(英国)2312-80
90:S-JIS(日本工业标准)(用于话音)
语言代码(L):低阶一字节
标识基于EBU Tech 3258标准的语言
00:未设置
08:德语
09:英语
OA:西班牙语
OF:法语
15:意大利语
10:荷兰语
65:韩语
69:日语
75:汉语
当数据没有被记录时,这个区域均为0。
=SN2C+L(2字节)
含义:在NM2-S区中存储卡的名字的属性
功能:表示作为一字节代码的字符代码和语言代码
值:与SN1C+L相同
=SINFSIZE(2字节)
含义:在INF-S区中存储卡的附加信息的总数
功能:表示以16字节为增量的数据长度。当数据没有被记录时,这个区全为0。
值:长度:0x0001-0x039C(924)
=T-TRK(2字节)
含义:总轨道数
功能:表示总的轨道
值:1到0x0190(最大值:400轨道)
当数据被记录时,这个区域均为0。
=VerNo(2字节)
含义:格式版本号
功能:表示主要版本号(高阶1字节)和次要版本号(低阶1字节)。
值:0x0100(版本1.0)
0x0203(版本2.3)
接下来,对在首标之后的区域(参见图12字节)进行说明。
=NM1-S
含义:存储卡的名字(作为一字节代码)
功能:表示作为一字节代码的存储卡的名字(最大:256)。在这个区域的末端上,写上一个结束代码(0x00)。其长度是从结束代码计算出来的。当数据没有被记录时,从这个区域的开头部分(0x0020)开始至少一个字节上记录零(0x00)。
值:各种字符代码
=NM2-S
含义:存储卡的名字(作为双字节代码)
功能:表示作为双字节代码的存储卡的名字(最大512)。在这个区域的末端上,写上结束代码(0x00)。其长度从结束代码计算出来。当数据没有被记录时,从这个区域的开头部分(0x0120)开始至少二个字节上记录零(0x00)。
值:各种字符代码
=CONTENTS KEY(内容密钥)
含义:用于音乐节目的数值。用MG(M)保护并存储。与CONTENTS KEY相同
功能;用作计算S-YMDhms的MAC所需要的密钥
值:0至0xFFFFFFFFFFFFFFFF
=MAC
含义:伪造版权信息校验值
功能:表示用S-YMDhms和CONTENTS KEY生成的数值
值:0到0xFFFFFFFFFFFFFFFF
=TRK-nnn
含义:所再现的ATRAC 3数据文件的SQN(序列)号
功能:表示TRKINF的FNo
值:1到400(0x190)
当没有轨道时,这个区全为0。
=INF-S
含义:存储卡的附加信息(例如,关于照片、歌曲、节目表等的信息)
功能:表示带有首标的长度可变的附加信息。可以使用多种类型的附加信息。每一种类型的附加信息都有一个ID(标识码)和一个数据长度。每一个包含一个首标的附加信息都由至少16字节加上4字节的倍数组成。详细说明请看下面部分。
值:参见“附加信息的数据结构”部分。
=S-YMDhms(字节)(可选)
含义:记录器/播放器用可靠的时录记录的年、月、日、时、分和秒。
功能:标识最后记录的日期和时间。在这种EMD的情况下,这个区域是强制性的。
值:25-31位:0-99年(1980-2079)
21-24位:0-12月
16-20位:0-31日
11-15位:0-23时
05-10位:0-59分
00-04位:0-29秒(以两秒间隔)
作为再现管理文件的最后一槽,其中写有与首标中内容相同的BLKID-TL0、MCode和REVISION。
在数据正在被记录在存储卡中时,存储卡可能错误地或偶然地被拆去或有可能切断录音机/播放器的电源。当进行这样的一种不正常操作时,这种缺陷应该被检测到。如上所述,REVISION区位于每一块的开头部分和结束部分。无论什么时候数据被重写时,REVISION区的值总是递增的。如果缺陷终止发生在某一块的中间,那么,在该块开头部分上的REVISION区的数值就不会与在该块结束部分上的REVISION区的数值相匹配。因此,可以检测到这样的一个缺陷终止。由于有两个REVISION区,因此,能以高概率检测到这个非正常终止。当非正常终止被检测到时,产生一个象错误消息那样的报警信号。
另外,由于固定值BLKID-TL0写在一块(16K字节)的开头部分上,因此,当FAT遭到损坏时,这个固定值用作恢复数据的参考。换句话说,根据这个固定值,可以确定这个文件的类型。由于这个固定值BLKID-TL0冗余地写在每块的首标和结束部分上,因此,可靠性可以得到保障。或者是,可以冗余地记录同一个再现管理文件。
ATRAC 3数据文件的数据量要比轨信信息管理文件的数据量大得多。另外,正如后面将要说明的,块号BLOCK SERIAL被附加在ATRAC 3数据文件上。然而,由于多个ATRAC 3文件被记录在存储卡中,因此,为了防止它们变为多余的,使用了CONNUM0和BOLCK SERIAL二者。否则,当FAT遭到损坏时,将会难以恢复这些文件。换句话说,一个ATRAC 3数据文件可以由多个分散开的块组成。为了标识同一文件的各块,使用了CONNUM0。另外,为了标识在ATRAC 3数据文件中块的顺序,使用了BLOCK SERIAL。
类似地,制造商代码(Mcode)被冗余地记录在每一块的开头部分和结束部分上,以便在一个文件在FAT没有遭到损坏的状态下已经被不适合地记录这样一种情况中标识制造商和型号。
图12C是显示附加信息数据的结构的示意图。附加信息由如下的首标和长度可变的数据组成。其首标包含如下的区域。
=INF
含义:字段标识符(FIELD ID)
功能:表示附加信息(固定值)的开始部分。
值:0x69
=ID
含义:附加信息密钥代码
功能:表示附加信息的类别
值:0至0xFF
=SIZE(大小)
含义:各个附加信息的长度
功能:表示每种类型的附加信息的大小。虽然对数据大小没有限制,但它应该至少为16字节并为4字节的倍数。数据的剩余部分应该用零(0x00)来填充。
值:16至14784(0x39C0)
=MCode
含义:制造商代码(MAKER CODE)
功能:标识记录器/播放器的制造商和型号。
值:高10位(制造商代码),低6位(机器代码)
=C+L
含义:在从第12字节开始的数据区中字符的属性
功能:表示作为一字节代码的字符代码和语言代码。
值:与SNC+L相同
=DATA
含义:单个附加信息
功能:表示每种类型的具有长度可变的数据的附加信息。实(real)数据总是从第12字节开始的。实数据的长度(大小)应该是至少4字节并为4字节的倍数。数据区的其余部分应该用零(0x00)来填充。值:根据每种类型附加信息的内容分别定义。
图13是将附加信息的代码(Key code)值(0-63)和附加信息的类型相关联的表。键代码值(0-31)指定给音乐字符信息。键代码值(32-63)指定给URL(用户资源定位符)(万维网信息)。音乐字符信息和URL信息包含作为附加信息的唱片集标题、艺术家姓名、CM、等等的字符信息。
图14是将附加信息的键代码值(64-127)和附加信息的类型相关联的表。键代码值(64-95)指定给路径/其它。键代码值(96-127)指定给控制/数字数据。例如,ID=98表示作为附加信息的TOC-ID。TOC-ID表示与CD(光盘)的TOC信息相对应的第一音乐节目号、最后音乐节目号、当前节目号、总演播时间和当前音乐节目演播时间。
图15是将附加信息的键代码值(128-159)和附加信息的类型相关联的表。键代码值(128-159)指定给同步再现信息。在图15中,EMD表示电子音乐发布。
下面参照图16A至16E对附加信息的实例进行说明。如同图12C的情况一样,图16A显示了附加信息的数据结构。在图16B中,键代码ID=3(艺术家的名字作为附加信息);SIZE=0x1C(28字节),表示包含首标的附加信息的数据长度是28字节;C+L,表示字符代码C=0x01(ASCII)和语言代码L=0x09(英语)。在第12字节之后的长度可变的数据表示作为艺术家名字的单字节数据“SIMON&GRAFUNKEL”。由于附加信息的数据长度应该是4字节的倍数,因此,其余部分用零(0x00)来填充。
在图16C中,键代码ID=97,表示ISRC(国际标准记录代码:版权代码)作为附加信息;SIZE=0x14(20字节),表示附加信息的数据长度是20字节;C=0x00和L=0x00,表示没有设置字符和语言,因此,数据是二进制代码;长度可变的数据是表示版权信息(国家、版权拥有者、登记年代和序列号)的8-字节ISRC代码。
在图16D中,键代码ID=97,表示记录日期和时间作为附加信息;SIZE=0x10(16字节),表示附加信息的数据长度是16字节;C=0x00和L=0x00,表示没有设置字符和语言;长度可变的数据是表示记录日期和时间(年、月、日、时、分和秒)的4-字节代码(32位)。
在图16E中,键代码ID=107,表示再现日志作为附加信息;SIZE=0x10(16字节),表示附加信息的数据长度是16字节;C=0x00和L=0x00,表示没有设置字符和语言;长度可变的数据是表示再现日志(年、月、日、时、分和秒)的4-字节代码。当记录器/播放器具有再现日志功能时,无论什么时候再现音乐数据,它都记录16字节的数据。
图17是显示在1SU为N字节(例如N=384字节)的情况下ATRAC 3数据文件A3Dnnnn的数据排列的示意图。图17显示了数据文件和音乐数据文件(1块)的属性首标(1块)。图17还显示了两块(16×2=32K字节)的每个槽的第一字节(0x0000-0x7FF0)。正如图18所示的,属性首标的前面32字节用作一个首标;256字节用作音乐节目区NM1(256字节);和512字节用作音乐节目标题区NM2(512字节)。属性首标的首标包含如下区域。
=BLKID-HD0(4字节)
含义:BLOCKID FIELD ID
功能:标识ATRAC 3数据文件的顶部。
值:固定值=“HD=0”(例如:0x48442D30)
=Mcode(2字节)
含义:制造商代码(MAKER CODE)
功能:标识记录器/播放器的制造商和型号
值:高位10位(制造商代码);低位6位(机器代码)
=BLOCK SERIAL(4字节)
含义:轨道序号
功能:从0开始,每次递增1。即使对音乐节目进行编辑,这个数值也保持不变。
值:0到0xFFFFFFFF
=N1C+L(2字节)
含义:表示一轨道(音乐节目标题)的数据(NM1)的属性。
功能:表示作为一字节代码的NM1的字符代码和语言代码
值:与SN1C+L相同
=N2C+L(2字节)
含义:表示一轨道(音乐节目标题)上的数据(NM2)的属性。
功能:表示作为一字节代码的NM1的字符代码和语言代码。
值:与SN1C+L相同
=INFSIZE(2字节)
含义:当前轨道的附加信息的总大小。
功能:表示作为16字节的倍数的数据大小。当数据没有被记录时,这个区域应该均为0
值:0x0000到0x3C6(996)
=T-PRT(2字节)
含义:总字节数
功能:表示组成当前轨道的片段数。一般来讲,T-PRT的值为1。
值:1-285(645dec)
=T-SU(4字节)
含义:总SU数
功能:表示在等效于节目演播时间的一轨道中SU的总个数。
值:0x01至0x001FFFFF
=INX(2字节)(可选)
含义:INDEX的相对位置
功能:用作表示音乐节目的代表性部分的顶部的指针。INX的值是借助于SU数除以4后所得的值被指定作为节目的当前位置的。这个INX值等于SU数的4倍(大约93ms)。
值:0-0xFFFF(最大值,大约6084S)
=XT(2字节)(可选)
含义:INDEX的再现持续时间
功能:借助于SU数除以4后所得的值指定由INX-nnn指定的再现持续
时间。这个INDEX值等于正常SU 4倍(大约93ms)。
值:0x0000(没有设置);0x01至0xFFFE(直到6084秒);0xFFFF(直到音乐节目的结束)
接下来对音乐节目标题区NM1和NM2进行说明。
=NM1
含义:音乐节目标题的字符串
功能:表示作为一字节代码的音乐节目标题(直到256个字符)(可变长度)。标题区应该用结束代码(0x00)来结束。其长度应该根据结束代码计算出来。当数据没有被记录时,零(0x00)应该记录在从区域的开头部分(0x0020)开始的至少一个字节中。
值:各种字符代码
=NM2
含义:音乐节目标题的字符串
功能:表示作为双字节代码的音乐节目标题(直到512个字符)(可变长度)。标题区应该用结束代码(0x00)来结束。其长度应该根据结束代码计算出来。当数据没有被记录时,零(0x00)应该记录在从区域的开头部分(0x0120)开始的至少二个字节中。
值:各种字符代码
从属性首标的固定位置(0x320)开始的80字节的数据被称为轨道信息区TRKINF。这个区域主要用来全面管理保密信息和复制控制信息。图19显示了TRKINF的一个部分。区域TRKINF包含如下区域。
=CONTENTS KEY(8字节)
含义:用于每个音乐节目的值。CONTENTS KEY的值在存储卡的保密模块中得到保护然后被存储起来。
功能:用作再现音乐节目的密钥。它用来计算MAC的值。
值:0至0xFFFFFFFFFFFFFFFF
=MAC(8字节)
含义:伪造版权信息检验值
功能:表示用多个包含内容累积数的TRKINF的值和一个秘密顺序号生成的值。
这个秘密顺序号是记录在存储卡的秘密区域中的顺序号。非版权保护型记录器不能从存储卡的秘密区域中读取数据。另一方面,版权保护型记录器和用能够从存储卡中读取数据的程序操作的计算机能够访问这个秘密区域。
=A(1字节)
含义:片段的属性
功能:表示诸如片段的压缩模式的信息
值:下面对其细节进行说明(参照图19和20)。
接下来对区域A中的值进行说明。在如下的说明中,非立体声模式(N=0或1)被定义为其中第7位=1、副信号=0和主信号=(L+R)的特殊结合模式。非版权保护型播放器可以忽略第2位和第1位的位置。
区域A的第0位表示加重(emphasis)打开/关闭状态的信息。区域A的第1位表示再现跳越或正常再现的信息。区域A的第2位表示诸如音频数据、FAX数据等的数据类型的信息。区域A的第3位未定义。通过将第4、5和6位组合在一起,ATRAC 3的模式信息被定义成如图20所示的那样。换句话讲,N是一个3位的模式值。对于分别是非立体声(N=0或1)、LP(N=2)、SP(N=4)、EX(N=5)和HQ(N=7)的五种类型的模式来说,记录持续时间(只用于64MB存储卡)、数据传输速率和每块的SU数被列出。1SU的字节数依赖于每一种模式。在非立体声模式中1SU的字节数为136字节。在LP模式中1SU的字节数为192字节。在SP模式中1SU的字节数为304字节。在EX模式中1SU的字节数为384字节。在HQ模式中1SU的字节数为512字节。区域A的第7位表示ATRAC 3模式(0:双道,1:结合(Joint))。
举例来说,现在对其中64MB存储卡被用在SP模式中的例子进行说明。64-MB存储卡含有3968块。在SP模式中,由于1SU是304字节,因此一块含有53SU。1SU等于(1024/44100)秒。因此,一块是(1024/44100)×53×(3968-10)=4863秒=81分。传输速率是(44100/1024)×304×8=10437bps(位/秒)
=LT(1字节)
含义:再现限制标志(第7、6位)和保密分区(第0-5位)
功能:表示对当前轨道的限制。
值:第7位:0=无限制,1=有限制
第6位:0=没有到期,1=到期
第5-0位:保密分区(除0之外禁止再现)
=FNo(2字节)
含义:文件号
功能:表示用来指定记录在存储卡的秘密区域中的MAC计算值的位置的初始记录轨道号
值:1至0x190(400)
=MG(D)SERIAL-nnn(16字节)
含义:表示记录器/播放器的保密模块(保密卡IC 20)的序列号
功能:用于每台记录器/播放器的专用值
值:0至0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
=CONNUM(4字节)
含义:内容累积数
功能:表示对每一个音乐节目所累积的专用值。此值由记录器/播放器的保密模块来管理。此值的上限是232,即4,200,000,000。用来标识记录的节目。
值:0至0xFFFFFFFF
=YMDhms-S(4字节)(可选)
含义:含有再现限制的轨道的再现开始日期和时间
功能:表示用EMD数据再现开始的日期和时间
值:与其它区域的日期和时间表示法相同
=YMDhms-E(4字节)(可选)
含义:含有再现限制的轨道的再现结束日期和时间
功能:表示用EMD数据再现结束的日期和时间
值:与其它区域的日期和时间表示法相同
=MT(1字节)(可选)
含义:允许再现次数的最大值
功能:表示由EMD指定的最大再现次数
值:1至0xFF,当没有使用时,此区MT的值为0。
=CT(1字节)(可选)
含义:再现次数
功能:表示在允许再现次数内的再现次数。无论什么时候数据被再现,此区域CT的值递减。
值:0x00-0xFF,当没有被使用时,此区CT的值为0x00。当此区LT的第7位=1和此区CT的值为00时,禁止数据被再现。
=CC(1字节)
含义:复制控制(COPY CONTROL)
功能:控制复制操作。
值:第6和7位表示复制控制信息。第4和5位表示高速数字复制操作的复制控制信息。第2和3位表示保密模块验证级。第0和1位未定义。
CC值的例子:
(第7和6位)
11:允许无限制的复制操作
01:禁止复制
00:允许一次复制操作
(第3和2位)
00:记录MG验证级(level)的模/数输入是0。
当执行使用来自CD的数据的数字记录操作时,(第7和6位):00和(第3和2位):00。
=CN(1字节)(可选)
含义:在高速串行复制管理系统中允许的复制次数
功能:用复制次数扩展复制许可,并不限于允许复制一次和允许自由复制。只有在第一复制代次中有效。无论什么时候执行复制操作,该区CN的值递减。
值:00:禁止复制
01至0xFE:复制次数
0xFF:无限制复制次数
轨道信息区TRKINF之后的是从0x0370开始的24字节片段管理信息区(PRTINF)。当一轨道由多个片段组成时,各个片段的区域PRTINF的值被连续排列在时间轴上。图22显示了区域PRTINF的一个片段。接下来,按照排列的顺序对区域PRTINF中的各区进行说明。
=PRTSIZE(4字节)
含义:片段大小
功能:表示一个片段的大小。簇:2字节(最高位置),起始SU:1字节(上部),结束SU:1字节(最低位置)。
值:簇:1至0x1F40(8000)
起始SU:0至0xA0(160)
结束SU:0至0xA0(160)(注意:SU是从0开始的)
=PRTKEY(8字节)
含义:片段加密值
功能:加密一个片段。初始值=0。注意:应该使用编辑规则。
值:0至0xFFFFFFFFFFFFFFFF
=CONNUM0(4字节)
含义:最初生成的内容累积数密钥
功能:唯一指定内容的ID
值:与内容累积数初始值密钥的值相同的值
如图17所示,ATRAC 3数据文件的属性首标包含附加信息INF。除了起始位置不固定之外,这个附加信息与再现管理文件的附加信息INF-S(参见图11和12字节)相同。跟随在一个或多个片段的末端上的最后字节位置(四字节的倍数)之后的是附加信息INF的数据。
=INF
含义:关于轨道的附加信息
功能:表示带有首标的长度可变的附加信息。可以排列几个不同类型的附加信息。附加信息区域的每一个都含有一个ID和一个数据长度。每一个附加信息区由至少16字节和4字节的倍数组成。
值:与再现管理文件的附加信息INF-S相同
跟随上面所述的属性首标之后的是一个ATRAC 3数据文件的每一块的数据。正如图23所示的,首标被加在每一块上。下面对每一块的数据进行说明。
=BLKID-A3D(4字节)
含义:BLOCKID FILE ID
功能:标识ATRAC 3数据的顶部。
值:固定值=“A3D”(例如:0x41334420)
=MCode(2字节)
含义:制造商代码(MAKER CODE)
功能:标识录音机/播放器的制造商和型号
值:高位10位(制造商代码);低位6位(型号代码)
=CONNUM0(4字节)
含义:最初创建内容的累积数
功能:对内容指定一个专用ID。即使对内容进行了编辑,该区域的值CONNUM0也不发生变化。
值:与内容累积数初始密钥相同
=BLOCK SERIAL(4字节)
含义:指定给每一轨道的序号
功能:从0开始和每次递增1。即使对内容进行了编辑,该区域的值BLOCK SERIAL也不发生变化。
值:0至0xFFFFFFFF
=BLOCK-SEED(8字节)
含义:用来加密一个块的密钥
功能:块的开头部分是由录音机/播放器的保密模块产生的随机数。跟随随机数之后的是以1递增的值。当该区域的值BLOCK-SEED丢失时,由于声音并非以与一块等效的大约一秒的长度生成,因此,同一数据被写入到该块的首标和结尾上。即使对内容进行了编辑,该区域BLOCK-SEED的值也保持不变。
值:最初8位随机数
=INITIALIZATION VECTOR(初始化矢量)(8字节)
含义:加密/解密ATRAC 3数据所需要的值
功能:表示用于每一块的加密和解密ATRAC 3文件所需要的初始值。一块从0开始。下一块从在最后的SU上的最后加密的8-位值开始。当一块被分割时,使用正好在起始SU之前的最后八个字节。即使对内容进行了编辑,该区域INITIALIZATION VECTOR的值也保持不变。
值:0至0xFFFFFFFFFFFFFFFF
=SU-nnn
含义:声单元的数据
功能:表示从1024个取样压缩的数据。输出数据的字节数依赖于压缩模式。即使对内容进行了编辑,该区域的值SU-nnn也保持不变。例如,在SP模式中,N=384字节。
值:ATRAC 3的数据值
在图17中,由于N=384,42个SU被写入一个块之中。一个块的前面两槽(4字节)用作首标。在最后的槽中(2字节),冗余地写入区域BLKID-A3D、MCode、CONNUM0和BLOCK SERIAL。因此,一块的剩余区域的M个字节是(16,384-384×42-16×3)=208字节。如上所述,8字节区域BLOCK SEED是被冗余地记录的。
当FAT区遭受损坏时,对快闪存储器的所有块进行搜索。判断在每一块的开头部分上的区域ID BLKID的值是TL0、HD0还是A3D。如图24A至24C所示,在步骤SP 1中,判断在顶块的开头部分上区域ID BLKID的值是否是BLKI-TL0。当在步骤SP 1中判断的结果是“否”时,流程前进到步骤SP 2。在步骤SP 2中,块号递增。此后,在步骤SP 3中,判断是否已经被搜索到最后一块。
当在步骤SP 3中判断的结果是“否”时,流程返回到步骤SP 1。
当在步骤SP 1中判断的结果是“是”时,流程前进到步骤SP 4。在步骤SP 4中,确定所搜索的块是再现管理文件PBLIST。此后,流程前进到步骤SP 5。在步骤SP 5中,再现管理文件PBLIST中总的轨道数T-TRK被存储在寄存器中作为N。例如,当存储器已经存储了10个ATRAC 3数据文件(10个音乐节目)时,10这个数已经被存储在T-TRK中。
接下来,根据总轨道数T-TRK的数值,块TRK-001至TRK-400被连续引用。在此例中,由于已经记录了10个音乐节目,因此,块TRK-001至TRK010被引用。由于在步骤SP 7中文件号FNO已经记录在TRK-XXX(这里XXX=001至400)中,因此,将轨道号TRK-XXX与文件号FNO相关联的表被存储在存储器中。下一步,在步骤SP 8中,存储在寄存器中的N递减。重复步骤SP 6、SP 7和SP 8的循环直到在步骤SP 9中N变成0为止。
当在步骤SP 9中判断的结果是“是”时,流程前进到步骤SP 10。在步骤SP 10中,将指针重新设置在顶块上。从顶块开始重复搜索处理过程。此后,流程前进到步骤SP 11。在步骤SP 11中,判断顶块的区域ID BLKID的值是否是BLKID-HD0。当在步骤SP 11中判断的结果是“否”时,流程前进到步骤SP 12。在步骤SP 12中,块号递增。在步骤SP 13中,判断是否已经搜索到最后的块。
当在步骤SP 13中判断的结果是“否”时,流程返回到步骤SP 11。重复搜索处理过程直到在步骤SP 11中判断的结果变成“是”为止。
当在步骤SP 11中判断的结果是“是”时,流程前进到步骤SP 14。在步骤SP 14中,确定该块是在ATRAC 3数据文件的开头部分上的属性首标(参见图8)(如图18所示的0x0000-0x3FFF)。
接下来,在步骤SP 15中,根据文件号FN0、同一ATRAC 3数据文件的序列号BLOCK SERIAL和包含在属性首标中的内容累积数密钥CONNUM0,将它们存储在存储器中。当已经记录了10个ATRAC 3数据文件时,由于有10个其中顶块的区域ID BLKID的值是BLKID-TL0的块,因此,继续搜索处理过程直到搜索完10个块为止。
当在步骤SP 13中判断的结果是“是”时,流程前进到步骤SP 16。在步骤SP 16中,指针被重新设置在顶块上。从顶块开始重复搜索处理过程。
此后,流程前进到步骤S17。在步骤S17中,判断顶块的区域ID BLKID的值是否是BLKID-A3D。
当在步骤SP 17中判断的结果是“否”时,流程前进到步骤SP 18。在步骤SP 18中,块号递增。此后,在步骤SP 18′中,判断是否已经搜索到最后的块。当在步骤SP 18′中判断的结果是“否”时,流程返回到步骤SP 17。
当在步骤SP 17中判断的结果是“是”时,流程前进到步骤SP 19。在步骤SP 19中,确定该块包含ATRAC 3数据。此后,根据记录在ATRAC 3数据块的序列号BLOCK SERIAL和内容累积数密钥CONNUM0,将它们存储在存储器中。
在同一个ATRAC 3数据文件中,一公用数字(common number)被指定为内容累积数密钥CONNUM0。换句话说来,当一个ATRAC 3数据文件由10个块组成时,一个公用数字被指定给所有区域的值CONNUM0。
另外,当一个ATRAC 3数据文件由10个块组成时,序列号9至0被指定给10个块的区域BLOCK SERIAL的值。
相应于区域CONNUM0和BLOCK SERIAL的值,判断当前块是否包括相同内容和在相同内容中当前块的再现顺序(即,连接顺序)。
当10个ATRAC 3数据文件(即,10个音乐节目)已经被记录和每一个ATRAC 3数据文件由10个块组成时,一共有100个数据块。
根据区域CONNUM0和BLOCK SERIAL的值,可以获得100个数据块的音乐节目的再现顺序和它们的连接顺序。
当在步骤SP 18′中判断的结果是“是”时,表示对再现管理文件、ATRAC3数据文件和属性文件中的所有的块都已经搜索完毕。因此,在步骤SP 21中,根据以块的块号顺序存储在存储器中的区域CONNUM0、BLOCKSERIAL、FNO和TRK-XXX,获得了文件连接状态。
在获得连接状态之后,FAT可以在存储器的空区中生成。
接下来,对根据本发明的第二实施例的管理文件进行说明。图25显示了根据本发明的第二实施例的文件结构。参照图25,音乐目录包含轨道信息管理文件TRKLIST.MSF(从这里开始,称之为TRKLIST)、备份轨道信息管理文件TRKLISTB.MSF(从这里开始,称之为TRKLIST字节)、附加信息文件INFLIST.MSF(这个文件包含艺术家名字、ISRC代码、时间标记、静止图像数据、等等(这个文件被称为INFLIST))、ATRAC 3数据文件A3Dnnnn.MSF(从这里开始,称之为A3nnnn)。文件TRKLIST包含两个区域NAME 1和NAME 2。区域NAME 1是一个包含存储卡名和节目名(与ASCII/8859-1字符代码相对应的一个字节代码)的区域。区域NAME 2是一个包含存储卡名和节目名(与MS-JIS/Hankul/中文代码相对应的双字节代码)的区域。
图26显示了轨道信息管理文件TRKLIST、区域NAME 1和NAME 2、和ATRAC 3数据文件A3Dnnnn之间的相互关系。文件TRKLIST是一个64KB(千字节)(=16K×4)的定长文件。文件的32KB区域用来管理轨道。剩余的32KB区域用来包含区域NAME 1和NAME 2。尽管在具有小存储容量的系统中可以为用于节目名的区域NAME 1和NAME 2提供与轨道信息管理文件不同的文件,但是,方便的做法是一并管理轨道信息管理文件和节目名文件。
轨道信息管理文件TRKLIST的轨道信息区TRKINF-nnnn和片段信息区PRTINT-nnnn用来管理数据文件A3Dnnnn和附加信息INFLIST。只有ATRAC3数据文件A3Dnnnn才得到加密。在图26中,水平方向的数据长度是16字节(0-F)。沿着垂直方向标记的十六进制数表示在当前行的开头部分上的数值。
根据第二实施例,一共使用了三个文件,它们分别是轨道管理文件TRKLIST(包括节目标题文件)、附加信息管理文件INFLIST和数据文件A3Dnnnn。根据第一实施例(参见图7、8和9),一共使用了二个文件,它们是用来管理所有存储卡的再现管理文件和用来存储节目的数据文件ATRAC3。
下面对根据第二实施例的数据结构进行说明。为了简单起见,在根据第二实施例的数据结构说明中,省略与第一实施例的数据结构相类似的那一部分数据结构的说明。
图27显示了轨道信息管理文件TRKLIST的详细结构。在轨道信息管理文件TRKLIST中,一个簇(块)由16千字节组成。文件TRKLIST的大小和数据与备份文件TRKLISTB的大小和数据完全相同。轨道信息管理文件的前面32字节用作首标。正如用再现管理文件PBLIST的首标那样,文件TRKLIST的首标包含一个BLKID-TL0/TL1(备份文件ID)区(4字节)、一个用于总轨道数的区域T-TRK(2字节)、一个制造商代码区MCode(2字节)、一个用于TRKLIST重写次数的区域REVISION(修订)(4字节)、和一个用来更新日期和时间数据的区域S-YMDhms(4字节)(可选)。这些数据区的含义和功能与第一实施例中的含义和功能相同。另外,文件TRKLIST还包含如下区域。
=YMDhms(4字节)
表示文件TRKLIST的最后更新日期(年、月、和日)。
=N1(1字节)(可选)
表示存储卡的序列号(分子一侧)。当一个存储卡被使用时,此区域N1的值为0x01。
=N2(1字节)(可选)
表示存储卡的序列号(分母一侧)。当一个存储卡被使用时,此区域的值N2为0x01。
=MSID(2字节)(可选)
表示存储卡的ID。当多个存储卡被使用时,每个存储卡的此区域MSID的值是相同的(T.B.D)。(T.B.D.(待定义)表示这个值可以在将来被定义)。
=S-TRK(2字节)
表示特定的轨道(T.B.D)。通常情况下,此区S-TRK的值为0x0000。
=PASS(2字节)(可选)
表示口令(T.B.D)。
APP(2字节)(可选)
表示再现应用的定义(T.B.D.)(通常,此区APP的值为0x0000)。
=INF-S(2字节)(可选)
表示整个存储卡的附加信息指针。当没有附加信息时,此区INF-S的值为0x00。
文件TRKLIST的最后16个字节用于区域BLKID-TL0、区域MCode和区域REVISION,它们与首标的相应区域相同。备份文件TRKLISTB包含上面所述的首标。在这种情况中,该首标包含区域BLKID-TL1、区域MCode和区域REVISION。
首标之后的是用于关于每个轨道的信息的轨道信息区TRKINF和用于关于轨道(音乐节目)的每个片段的信息的片段信息区PRTINF。图27显示了在区域TRKLIST之后的区域。区域TRKLISTB的较低部分显示了这些区域的详细结构。在图27中,阴影区域表示一个未使用的区域。
轨道信息区TRKINF-nnn和片段信息区PRTINF-nnn包含ATRAC 3数据文件的区域。换言之,轨道信息区TRKINF-nnn和片段信息区PRTINF-nnn每一个都包含了再现限制标志区LT(1字节)、内容密钥区CONTENTS KEY(8字节)、录音机/播放器保密模块序列号区MG(0)SERIAL(16字节)、用来表示音乐节目的特征部分的区域XT(2字节)、区域INX(2字节)(可选)、区域YMDhms-S(4字节)(可选)、区域YMDhms-E(4字节)(可选)、区域MT(1字节)(可选)、区域CT(1字节)(可选)、区域CC(1字节)(可选)、区域CN(1字节)(可选)(这些区域YMDhms-S、YMDhms-E、MT、CT、CC和CN用于再现限制信息和复制控制信息)、用于片段属性的区域A(1字节)、片段大小区域PRTSIZE(4字节)、片段密钥区域PRTKEY(8字节)、和内容累积数区域CONNUM(4字节)。这些区域的含义、功能和取值与第一实施例的相互区域的含义、功能和取值相同。另外,轨道信息区TRKINF-nnn和片段信息区PRTINF-nnn每一个都包含如下区域。
=TO(1字节)
固定值(TO=0x74)
=INF-nnn(2字节)(可选)
表示与每一轨道的附加信息指针(0-409)。00:没有附加信息的音乐节目
=FNM-nnn(4字节)
表示ATRK 3数据文件的文件号(0x0000-0xFFFF)。
ATRAC 3数据文件名(A3Dnnnn)的数字nnnn(用ASCII码)被转换成0xnnnnn。
=APP-CTL(4字节)(可选)
表示应用参数(T.B.D.)(通常,此区APP-CTL的值为0x0000)
=P-nnn(2字节)
表示组成一个音乐节目的片段数(1-2039)。这个区域对应于上面所述的区域T-PART。
=PR(1字节)
固定值(PR=0x50)。
接下来,对用来管理名字的区域NMAE 1(一字节代码)和NAME 2(双字节代码)进行说明。图28显示了区域NAME 1(单字节代码区域)的详细结构。区域NAME 1和NAME 2(后面将要说明)的每一个都用8字节来分段,因此,它们的一个槽由8字节组成。位于作为这些区域的每一个的开头部分的0x8000上的是一个首标。紧随首标之后的是一个指针和一个名字。区域NAME 1的最后一槽包含着与首标相同的区域。
=BLKID-NM1(4字节)
表示一块的内容(固定值)(NM1=0x4E4D2D31)。
=PNM1-nnn(4字节)(可选)
表示指向区域NM1(单字节代码)的指针。
=PNM1-S
表示指向用来表示存储卡的名字的指针。
nnn(1-408)表示指向音乐节目标题的指针。
指针表示该块的起始位置(2字节)、字符代码类型(2位)和数据大小(14位)。
=NM1-nnn(可选)
表示单字节代码的存储卡名和音乐节目标题(长度可变)。一个结束代码(0x00)写在该区的结尾上。
图29显示了区域NAME 2的详细数据结构(双字节代码)。一个首标位于作为该区域的开头部分的0x8000上。紧随首标之后的是一个指针和一个名字。区域NAME 2的最后一槽包含着与首标相同的区域。
=BLKID-NM2(4字节)
表示一块的内容(固定值1)(NM2=0x4E4D2D32)。
=PNM2-nnn(4字节)(可选)
表示指向区域NM2(双字节代码)的指针。
=PNM2-S
表示指向用来表示存储卡的名字的指针。
nnn(=1-408)表示指向音乐节目标题的指针。
指针表示该块的起始位置(2字节)、字符代码类型(2位)、和数据大小(14位)。
=NM2-nnn(可选)
表示双字节代码的存储卡名和音乐节目标题(可变)。一个结束代码(0x0000)写在该区的结尾上。
图30显示了在1SU由N个字节组成的情况下,ATRAC 3数据文件A3Dnnnn的数据排列(对于1块来说)。在这个文件中,一槽由8字节组成。图30显示了每一槽的顶部(0x0000-0x3FF8)的值。文件的前面四槽用作一个首标。正如在第一个例子中的数据文件(参见图17)的属性首标之后的数据块那样,设置一个首标。该首标包含区域BLKID-A3D(4字节)、制造商代码区MCode(2字节)、加密处理所需要的区域BLOCK SEED(8字节)、用于初始内容累积数的区域CONNUM0(4字节)、用于每一轨道的序号区BLOCKSERIAL(4字节)、和加密/解密处理所需要的区域INITIALIZATIONVECTOR(初始化矢量)(8字节)。该块的倒数第二槽冗余地包含一个区域BLOCK SEED。最后一槽包含区域BLKID-A3D和MCode。如同第一实施例的情况一样,跟随首标之后的是声单位数据SU-nnn。
图31显示了包含附加信息的附加信息管理文件INFLIST的详细数据结构。在第二实施例中,位于文件INFLIST的开头部分(0x0000)上的是如下的首标。跟随该首标之后的是如下的指针和区域。
=BLKID-INF(4字节)
表示块的内容(固定值)(INF=0x494E464F)
=T-DAT(2块)
表示总数据区个数(0-409)
=MCode(2字节)
表示录音机/播放器的制造商代码
=YMDhms(4字节)
表示记录更新日期和时间
=INF-nnnn(4字节)
表示指向附加信息的区域DATA(长度可变,每次为2字节(槽)的指针。起始位置是用高位16位(0000-FFFF)来表示的。
=Data Slot-0000(0x0800)
表示相对于开头部分的偏移量(每次为一槽)。
数据长度是用低位16位(0001-7FFF)来表示的。禁止标志设置在最高有效位上。MSB=0(使能),MSB=1(禁止)。
数据大小表示音乐节目的总数据量。
数据从每一槽的开头部分开始(槽的非数据区用00来填充)。
第一INF表示指向整个音乐集的附加信息的指针(通常为,INF-409)。
图32显示了附加信息的结构。一个8字节首标位于一个附加信息数据区的开头部分上。附加信息的结构与第一实施例(参见图12C)的结构相同。换句话说,附加信息包含作为ID的区域IN(2字节)、区域密钥代码ID(1字节)、表示每个附加信息区域的大小的区域SIZE(2字节)、和一个制造商代码区域MCode(2字节)。另外,附加信息还包含一个作为副ID的区域SID(1字节)。
根据本发明的第二实施例,除了被定义为存储卡的格式的文件系统之外,还使用用于音乐数据的轨道信息管理文件TRKLIST。因此,即使FAT遭到破坏,文件也能得到恢复。图33显示了一个文件恢复过程的流程。为了恢复这个文件,使用一能执行文件恢复程序的和能访问存储卡的计算机和与其相连的存储设备(硬盘、RAM、等等)。该计算机具有与DSP 30等效的功能。下面对利用轨道管理文件TRKLIST来实现文件恢复的处理进行说明。
在其FAT已经遭到损坏的快闪存储器的所有块中检索作为每块的顶部位置上的值(BLKID)的TL-O。另外,还在所有块中检索作为每块的顶部位置上的值(BLKID)的NM-1。此后,在所有块中检索作为每块的顶部位置上的值(BLKID)的NM-2。四块(轨道信息管理文件)的全部内容由恢复计算机存储到,例如,一个硬盘中。
从轨道信息管理文件的第四字节之后的数据中获取总轨道数。获取轨道信息区TRKINF-001的第20字节、第一音乐节目的区域CONNUM-001的值、和下一个区域P-001的值。用区域P-001的值获取片段数。获取区域PRTINF的轨道1的所有片段的区域PRTSIZE的值。计算并获取总块(簇)数n。
在获得轨道信息管理文件之后,流程前进到步骤102。在步骤102中,检索话音数据文件(ATRAC 3数据文件)。从快闪存储器中检索除管理文件之外的所有块。收集其顶部值(BLKID)为A3D的块。
检索其中A3Dnnnn的第16字节上的区域CONNUM0的值与轨道信息管理文件的第一音乐节目的区域CONNUM-001的值相同的块和其中从第20字节开始的区域BLOCK-SERIAL的值为0的块。在获得第一块之后,搜索其区域值CONNUM与第一块相同的和其中区域BLOCK SERIAL的值递增(1=0+1)的块(簇)。在获得第二块之后,搜索其区域CONNUM0的值与第二块相同的和其中区域BLOCK SERIAL的值递增1(2=1+1)的块。
通过重复整个过程,这个ATRAC 3数据文件被检索下去直到获得轨道1的n个块(簇)为止。当获得所有的块(簇)后,将它们连续存储到硬盘中。
将应用于轨道1的相同检索过程对轨道2执行。换句话讲,搜索其中区域CONNUM的值与轨信息管理文件的第一音乐节目的区域CONNUM-002的值相同的和其中从第20字节开始的区域BLOCK SERIAL的值为0的块。此后,与轨道1的方法相同,对ATRAC 3数据文件进行检索直到检测到最后块n′(簇)为止。在获得所有的块(簇)之后,将它们连续存储到硬盘中。
通过对所有的轨道(轨道数:m)重复上述的处理,所有的ATRAC 3数据都被存储到由恢复计算机控制的硬盘中。
在步骤103中,对其FAT已经遭受损坏的存储卡重新初始化并且重建FAT。在存储卡中形成预定的目录。此后,将轨道信息管理文件和m轨道的ATRAC 3数据文件从硬盘复制到存储卡中。至此,完成恢复过程。
在管理文件和数据文件中,重要的参数(尤其是,首标中的代码)可以记录三次而不是二次。当数据被冗余地记录时,相同的数据可以记录在任何位置上,只要位置之间分隔一页或更远即可。
组合处理
下面对通过利用根据本发明第一实施例的文件管理文件实现文件(音乐节目)组合处理过程和分割处理过程进行说明(见图4-24)。
在FAT上的组合处理
接下来,对在FAT上的组合处理过程进行说明。在这种情况中,三个文件(音乐节目)CAT.MSA、DOG.MSA和MAN.MSA中的二个文件CAT.MSA和MAN.MSA被组合在一起。
如图34所示,当用户将两个文件组合成一个文件时,与文件CAT.MSA相对应的、在FAT上的和在簇管理数据的末尾上的入口地址从“FFF”改变成与文件MANMSA相对应的和在FAT上的开始地址“110”(参见图34中的阴影部分)。
因此,组合文件CAT.MSA使用了簇5、6、7、8、110和111。另外,从子目录区中删除文件名MAN.MSA。并且,用簇202管理的文件名MAN.MSA也被删除(参见图34中的阴影部分)。
编辑属性首标
在上文中,已经对在FAT上将两个文件CAT.MSA和MAN.MSA组合在一起的编辑方法进行了说明。接下来,根据图35A和35B,对图11所示的再现管理文件PBLIST.MSF和图17所示的ATRAC 3数据文件的属性首标的编辑方法进行说明。
图35A是显示还没有被编辑的两个文件CAT.MSA和MAN.MSA的存储映射的示意图。
图35A所示的存储映射显示了其中逻辑地址已经转换成物理地址的状态。另外,尽管各个片段分散在存储器中,但为了简化起见,将它们连续排列在一起。如图35A所示,文件CAT.MSA的属性文件包含总的声单位数T-SU:100、总的片段数T-PRT:3、内容密钥、MAC、用于各个片段的片段大小和片段密钥。
另一方面,文件MAN.MSA的属性文件包含总的声单位数T-SU:70、总的片段数T-PRT:2、内容密钥、MAC、用于每个片段的片段长度和片段密钥、和内容累积数CONNUM0。
文件CAT.MSA的属性文件的数据更新如下。
实际上,作为待更新的数据,当音乐节目被组合在一起时,单个文件的片段数增加。因此,要对包含在属性文件中的T-PRT进行编辑。另外,由于文件被组合在一起,因此总的声单位数也增加了,故要对T-SU进行编辑。
换言之,正如图35B所示的,将T-SU的值重写成170,此值是文件CAT.MSA的总声单位数T-SU:100与文件MAN MSA的总声单位数T-SU:70相加的结果。另外,将T-PRT的值重写成5,它是文件CAT.MSA的总片段数T-PRT:3与文件MAN.MSA的总片段数T-PRT:2相加的结果。
此外,当ATRAC 3数据文件(音乐节目)被组合在一起时,新创建包含在属性文件中的内容密钥。并且,作为伪造版权信息校验值的MAC也发生改变。
进一步,包含在组合文件MAN.MSA文件的属性文件块中的片段信息(参见图22)变成(复制成)文件CAT.MSA的属性文件块。另外,包含在其中已经加上片段信息的属性文件块中的每一片段的片段密钥PRTKEY也用新的内容密钥重新加密。
如图9所示,由于属性文件被加到ATRAC 3数据文件的首标部分中,因此,如果两个ATRAC 3数据文件被简单地组合,那么,文件CAT.MSA的属性文件块、多个文件CAT.MSA的ATRAC 3数据块、文件MAN.MSA的属性文件块、和多个文件MAN.MSA的ATRAC 3数据块被依次组合在一起。这样,一个文件含有两个属性文件。
为了解决这样一个问题,根据本发明,当实施图35B所示的组合处理时,更新后侧的数据文件(在本实施例中,文件MAN.MSA)的属性文件。
因此,文件CAT.MSA的属性文件块、多个文件CAT.MSA的ATRAC 3数据块、和多个文件MAN.MSA的ATRAC 3数据块被连续排列。
编辑再现管理文件
另外,根据图11所示的再现管理文件PBLIST,由于数据文件被组合,因此,总的轨道数递减少1。对T-TRK进行编辑使它们沿着TRK-001的方向移动,不留间隙。
组合处理的步骤
图36是显示文件组合处理过程的流程图。在步骤SP 201中,用户选择两个将以预定的方式组合的文件。在本实施例中,用户选择了文件CAT.MSA和文件MAN.MSA。在步骤SP 202中,对在FAT上的链接状态进行编辑。在步骤SP 203中,从子目录中删除链接在后侧方向的文件名。在步骤SP 204中,从数据区中删除在后面方向组合的数据文件的文件名。在步骤SP 205中,对应于后侧ATRAC 3数据文件的属性文件更新前侧ATRAC 3数据文件。正如上面所述的,对总的片段数进行编辑,另外,对总的声单位数T-SU进行编辑。
在步骤SP 206中,删除后侧ATRAC 3数据文件的属性文件。在步骤SP207中,对再现管理文件的T-TRK和TRK-XXX进行编辑。
因此,按照(1)编辑FAT、(2)编辑属性文件、和(3)编辑再现管理文件的次序实施组合处理。但是,这个次序是可以变动的。
分割处理
在本实施例中,已经对将两个文件组合在一起的组合处理过程作了说明。下面,将对用来在特定位置上分割一个文件的分割处理过程进行说明。
在FAT上的分割处理过程
图37是显示用来解释对来自图6所示的文件中的文件CAT.MSA实施分割处理的存储映射(map)的示意图。
假定用户在文件CAT.MSA的簇6和7的边界上实施分割操作和分割处理使文件CAT.MSA变成两个文件CAT1.MSA和CAT2.MSA。
首先,记录在簇201和202上的文件名DOG.MSA和MAN.MSA分别移动到簇202和203中。另外,其中扩展名.MSA被加到由用户输入的文件名CAT1上的文件名CAT1.MSA被记录在簇200中。另外,其中扩展名.MSA被加到由用户输入的文件名CAT 2上的文件名CAT2.MSA被记录在簇201中。
接下来,记录在子目录中的文件名CAT.MSA被重写成文件名CAT1.MSA。另外,文件名CAT2.MSA被加到一个未用的槽中。
将被分割文件CAT2.MSA的簇号“7”记录在文件CAT2.MSA的槽的末尾上。
将入口地址重写成“FFF”使得在FAT上子目录的文件名CAT1.MSA的槽的结束点变成簇6。按照上面所述的方法在FAT上实现分割处理过程。
编辑属性首标
当一个文件被分割时,应该生成属性文件以便将它附加在后侧的被分割文件上。
下面,参照图38A和38B对这个处理过程进行说明。
与图35A和35B的情况类似,图38A和38B显示了其中逻辑地址已经转换成物理地址的存储映射。在图38A和38B中,为了简化起见,各个片段被连续排列在存储器中,而不是分散排列。如图38A所示,文件CAT.MSA的属性文件包含总的声单位数T-SU:17、总的片段数T-PRT:5、内容密钥、MAC、用于每个片段的片段大小和片段密钥、和内容累积数CONNUM0。
现在,假定用户在文件CAT.MSA的特定点上指定一个分割过程。例如,假定用户在图38A所示的片段3和4之间的边界上实施分割操作。属性文件的数据按如下方式更新。
作为实际的更新数据,当一个音乐节目被分割时,组成单个文件的片段数减少。因此,要对包含在属性文件中的T-PRT进行编辑。另外,当该文件被分割时,由于总的声单元数减少,因此,还要对T-SU进行编辑。换言之,如图38B所示,分割到前边部分的文件CAT1.MSA的总声单元数被重写成T-SU:100。另外,文件CAT1.MSA的总片段数被重写成T-PART:3。
此外,由于文件被分割,因此,内容密钥、伪造版权信息校验值MAC、和对于每个片段的片段密钥被重写。
并且,还要新创一个在后侧被分割的文件CAT2.MSA的属性文件。
根据新创的属性文件,其总声单位数和总片段数分别重写成T-SU:70和T-PART:2。
另外,由于文件被分割了,因此,内容密钥、伪造版权信息校验值MAC、和对于每个片段的片段密钥被重写。
编辑再现管理文件
下面对在分割处理过程中再现管理文件的编码方法进行说明。当一个文件被分割成两个文件时,文件数增加1,因此,总轨数T-TRK也增加1。另外,对TRK-X(这里X是从001到400范围内的任何整数)进行编辑使得所得的音乐节目数发生变动。
分割处理过程的步骤
图39是显示分割处理过程的流程图。
在步骤SP 301中,当用户选择待分割的文件时,在听文件的音乐的同时,他或她按预定的方式选择一个分割点。在步骤SP 302中,按照上面所述的方式对FAT的链接状态进行编辑。在步骤SP 303中,在后侧被分割的数据文件的文件名加到子目录中。在步骤SP 304中,在前侧被分割的数据文件的文件名加到数据区中。文件名是由用户输入的。在步骤SP 305中,对在分割点的前侧的数据文件的属性文件进行编辑。另外,在步骤SP 306中,生成将要被加到后侧数据文件中的属性文件。根据被分割文件的分割点,新建属性文件并对该属性文件进行编辑。在步骤SP 307中,对再现管理文件PBLIST进行编辑。按照(1)编辑FAT、(2)编辑属性文件和(3)编辑再现管理文件的次序实现上面所述的分割处理过程。但是,这个次序可以改变。
本发明的特征在于用户可以编辑记录在存储卡中的数据文件(ATRAC 3文件)。接下来,详细说明与根据图25至32所描述的轨道管理文件TRKLIST相对应的编辑处理过程(例如,组合处理过程和分割处理过程)。但是,如下的说明还可以适用于ATRAC 3数据文件的轨道信息区TRKINF和片段信息区PRTINF。
在此,参照图40对用来将两个各由一个片段组成的轨道A和B组合在一起的组合处理过程(参见图10字节)进行说明。图40是显示组合处理过程的流程图。在步骤401中,将在后侧上的轨道B的片段信息区PRTINF移动到轨道A的片段信息区PRTINF的下面。因此,在轨道信息管理文件TRKLIST中,轨道A的轨道信息区TRKINF、轨道A的片段信息区PRTINF、轨道B的片段信息区PRTINF和轨道B的轨道信息区TRKINF连续地排列在一起。
在步骤402中,轨道B的ATRAC 3数据文件的FAT的链被链接在轨道B的ATRAC 3数据文件的FAT的链的后侧上。在步骤403中,从轨道信息管理文件TRKLIST中删除轨道B的轨道信息区TRKINF。因此,在轨道信息管理文件TRKLIST中,轨道A的轨道信息区TRKINF、轨道A的片段信息区PRTINF,以及轨道B的片段信息区PRTINF连续地排列在一起。在步骤404中,从目录中删除轨道B的ATRAC 3数据文件。在步骤405中,在轨道A的轨道信息区TRKINF中用来表示组成一个音乐节目的片段数的P-nnn从1变为1+1=2。
因此,密钥的值也发生变化。在本例中,原来轨道A的内容密钥用KC-A来表示;原始轨道B的内容密钥用KC_B来表示。类似地,原始轨道A的片段密钥用KP_A来表示;原始轨道B的片段密钥用KP_B来表示。
在步骤406中,在将轨道A和B组合在一起之后,生成新轨道N的内容密钥作为KC_N。CONNUM也重新生成。在步骤407中,生成一个新的片段密钥。这个新的片段密钥是通过对内容密钥KC_A、片段密钥KP_A和内容密钥KC_N进行异或运算生成的。在步骤408中,生成后侧的片段密钥(即:原始轨道B的片段信息区PRTINF的片段密钥)。如同新的片段密钥情况一样,在后侧上的后侧密钥是通过对内容密钥KC_B、片段密钥KP_B和内容密钥KC_N进行异或运算生成的。
在步骤409中,新轨道N的内容密钥KC_N是用存储卡的存储密钥加密的并且存储在轨道信息区TRKINF的CONTENTS KEY-nnn中。CONNUM存储在轨道信息区TRKINF的CONNUM-nnn中。另外,每个片段密钥都存储在片段信息区PRTINF的PRTKEY-nnn中。
下面参照图41对用来将由一个片段组成的轨A分割成两轨道A和B的分割处理过程(参见图10C)进行说明。图41是显示分割处理过程的流程图。在步骤501中,用SU确定分割点。在步骤502中,改变新轨道A的片段信息区PRTINF的PRTSIZE。实际上,是计算从开头部分(开始SU)到分割点(结束SU)之间的簇数。对应于簇的分割点的SU的位置改变簇大小、开始SU和结束SU并将它们存储到新轨道A的片段信息区的PRTSIZE中。
在步骤503中,完整复制作为包含分割点的新轨道A的最后簇的那一个簇。所复制的簇作为新轨道B的顶部来处理。在步骤504中,新生成的轨道B的总片段数存储到在轨道B的轨道信息区TRKINF中的、表示组成音乐节目的片段数的P-nnn中。在本例中,在分割点之后的簇成为作为新生成的轨道B的第二片段。计算新生成的轨道B的总片段数。在步骤505中,生成新ATRAC 3数据文件的文件号FNW-nnn并将它存储在轨道信息区TRKINF的FNW-nnn中。
在步骤506中,将新轨道B的轨道信息区TRKINF和片段信息区PRTINF附加在轨道信息管理文件TRKLIST的新轨道A的片段信息区PRTINF的后侧。原始轨道A的后侧上的轨道的轨道信息区TRKINF和片段信息区PRTINF向后移动轨道B的轨道信息区TRKINF和片段信息区PRTINF上。
在步骤507中,将新轨道A的ATRAC 3数据文件的FAT的链变到分割点。在步骤508中,由于轨道B是新加上去的,因此,将ATRAC 3数据文件的文件B附加到目录中。在步骤509中,让原始轨道A(即,包含分割点的簇的链)的剩余部分紧接在新生成的轨道B的ATRAC 3数据文件的FAT的链的后面。
由于新轨道B加上去,因此,加上密钥值。然而,新轨道A的密钥值没有变化。
在步骤510中,在一轨道被分割之后,生成新轨道B的内容密钥KC B。另外,还要重新生成CONNUM。在步骤511中,生成新轨道B的片段密钥KP_B。新轨道的片段密钥是通过对原来的KC_A、KP_A和KC_B进行异或运算生成的。
在步骤512中,新轨道B的内容密钥KC_B用存储卡的存储密钥来加密并将它存储在轨道信息区TRKINF的CONTENTS KEY-nnn中。另外,将CONNUM存储在轨道信息区TRKINF的CONNUM-nnn中。将每个片段密钥直接存储在片段信息区PRTINF的PRTKEY-nnn中。
因此,即使执行诸如组合处理过程和分割处理过程那样的编辑处理过程,轨道信息区TRKINF和片段信息区PRTINF也按照与ATRAC 3数据文件相同的顺序排列起来。换句话来说,与Link-P系统不同,已经经过编辑的一个文件的轨道信息区TRKINF和片段信息区PRTINF的链接目标方是连续排列的,而不是随机排列的。
另外,当实施诸如擦除处理过程或移动处理过程那样的另一个编辑处理过程时,轨道信息区TRKINF和片段信息区PRTINF是按照与ATRAC 3数据文件相同的次序重新排列的。
根据本发明,虽然数据文件是在FAT系统上得到管理的,但是,由于构成数据文件的簇和声单位是以片段的形式进行管理的,因此,可以用低性能CPU轻易地管理它们。另外,在其中将用于数据文件信息的轨道信息区TRKINF与用于存储在轨道信息区TRKINF中的片段的片段信息区PRTINF相邻的简单方法中,在MD的Link-P系统中存在的问题迎刃而解。另外,由于数据文件是用FAT系统、属性文件和再现管理文件来管理的,因此,即使FAT系统遭到损坏,通过跟踪分散在存储器中的各个片段,这个FAT也能得到恢复。
在快闪存储器中,由于使用了被称为“页”的独特的数据单位,因此,与用于MD的Link-P系统不同,没有必要随机地访问许多页。
虽然通过结合附图对本发明的特定的优选实施例进行了说明,但是,应该理解到本发明并不仅限于这些明确的实施例,熟悉本技术的人员对其所作的各种各样的变动和修改均不会偏离所附权利要求书所限定的本发明的范围或精神。

Claims (7)

1.一种在非易失性存储器中记录数据的方法,包括以下步骤:
将被连续再现的数据文件分割成每一块都具有预定数据长度的多个块;
在一管理区中记录第一管理信息,以便连接数个片段并恢复这些片段作为被连续再现的数据文件;和
将所述数据文件记录在与所述管理区不同的数据区中;
将第二管理信息加到所述数据区中的每个数据文件中,将多块集合在一起作为多个片段,并记录该多个片段使它们分散在非易失性存储器中,第二管理信息包括组成一个数据文件的片段数和每个片段的大小,并且具有预定的数据长度。
2.如权利要求1所述的方法,
其中用来对每个片段加密数据文件的片段密钥被记录作为对每个片段的第二管理信息。
3.如权利要求1所述的方法,
其中用来加密数据文件的内容密钥被记录作为第二管理信息。
4.如权利要求1所述的方法,
其中用来加密数据文件的内容密钥被记录作为第二管理信息,和
其中片段密钥用内容密钥来加密。
5.如权利要求1所述的方法,
其中每个片段的数据大小被记录作为第二管理信息。
6.如权利要求1所述的方法,
其中记录在所述管理区中的第一管理信息是一个文件分配表。
7.如权利要求1所述的方法,
其中每当对数据文件进行编辑时,重写记录在数据区中的第二管理信息中包含的片段数。
CNB001047183A 1999-03-25 2000-03-24 在非易失性存储器中记录数据的方法 Expired - Fee Related CN1171151C (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP8153499 1999-03-25
JP081534/1999 1999-03-25
JP183413/1999 1999-06-29
JP18341399 1999-06-29
JP34910999A JP4135049B2 (ja) 1999-03-25 1999-12-08 不揮発性メモリ
JP349109/1999 1999-12-08

Publications (2)

Publication Number Publication Date
CN1268848A CN1268848A (zh) 2000-10-04
CN1171151C true CN1171151C (zh) 2004-10-13

Family

ID=27303615

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB001047183A Expired - Fee Related CN1171151C (zh) 1999-03-25 2000-03-24 在非易失性存储器中记录数据的方法

Country Status (5)

Country Link
US (1) US6212097B1 (zh)
JP (1) JP4135049B2 (zh)
KR (1) KR100617892B1 (zh)
CN (1) CN1171151C (zh)
MY (1) MY117211A (zh)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3588231B2 (ja) 1997-08-04 2004-11-10 東京エレクトロンデバイス株式会社 データ処理システム及びブロック消去型記憶媒体
CN1187756C (zh) * 1999-05-28 2005-02-02 松下电器产业株式会社 半导体存储器卡、播放装置、记录装置、播放方法、记录方法、和计算机可读记录介质
EP1079393B1 (en) * 1999-08-27 2006-04-19 Sony Corporation Editing apparatus and editing methods
US6678203B1 (en) * 1999-08-27 2004-01-13 Sony Corporation Editing apparatus, editing method, and non-volatile memory
US6742078B1 (en) * 1999-10-05 2004-05-25 Feiya Technology Corp. Management, data link structure and calculating method for flash memory
JP3992419B2 (ja) * 2000-03-27 2007-10-17 パイオニア株式会社 情報再生装置
JP2002132583A (ja) * 2000-10-20 2002-05-10 Sony Corp データ処理装置、データ記憶装置、およびデータ処理方法、並びにプログラム提供媒体
JP2002358248A (ja) * 2001-06-04 2002-12-13 Pioneer Electronic Corp データ記録装置およびデータ消去装置
WO2003003278A1 (en) * 2001-06-28 2003-01-09 Trek 2000 International Ltd. A portable device having biometrics-based authentication capabilities
JP3967121B2 (ja) * 2001-12-11 2007-08-29 株式会社ルネサステクノロジ ファイルシステム、ファイルシステム制御方法およびファイルシステムを制御するためのプログラム
JP3855862B2 (ja) * 2002-04-01 2006-12-13 ソニー株式会社 編集方法および装置
JP3855863B2 (ja) * 2002-04-01 2006-12-13 ソニー株式会社 再生方法および装置、記録方法および装置
US6968472B2 (en) * 2002-04-22 2005-11-22 Silicon Labs Cp. Inc. Serial data interface
JP2003330777A (ja) * 2002-05-10 2003-11-21 Matsushita Electric Ind Co Ltd データファイル再生装置、記録メディア、データファイル記録装置及びデータファイル記録プログラム
JP3714310B2 (ja) * 2002-08-07 2005-11-09 ソニー株式会社 コンテンツの自動記録装置及び方法、記録媒体、並びにプログラム
CN101950343A (zh) * 2002-08-08 2011-01-19 晟碟以色列有限公司 数字权利管理方法及集成电路
KR100534056B1 (ko) * 2002-10-15 2005-12-07 (주)마크텍 디지털 음성 저장 장치에 저장된 데이터의 인증 및위/변조를 방지하기 위한 장치 및 방법
FI20021867A (fi) * 2002-10-18 2004-04-19 Nokia Corp Menetelmä kortin toimintatilan muuttamiseksi, järjestelmä, kortti ja laite
JP3894444B2 (ja) 2003-06-11 2007-03-22 ソニー株式会社 情報処理装置および方法、プログラム記録媒体、並びにプログラム
US7185020B2 (en) * 2003-10-01 2007-02-27 Hewlett-Packard Development Company, L.P. Generating one or more block addresses based on an identifier of a hierarchical data structure
JP4347707B2 (ja) * 2004-01-09 2009-10-21 パナソニック株式会社 情報記録媒体のフォーマット方法および情報記録媒体
WO2005103903A1 (ja) * 2004-04-20 2005-11-03 Matsushita Electric Industrial Co., Ltd. 不揮発性記憶システム
TWI300186B (en) * 2004-07-30 2008-08-21 Mediatek Inc Method and apparatus for data recording with pseudo-merge
CN1731527B (zh) * 2004-08-06 2011-11-16 联发科技股份有限公司 虚拟合并的数据记录方法及装置
WO2006048190A1 (en) * 2004-11-08 2006-05-11 Unilever Plc Method and apparatus for partially freezing an aqueous mixture
US7917764B2 (en) * 2005-01-24 2011-03-29 Panasonic Corporation Signature generation device and signature verification device
KR101102754B1 (ko) * 2005-02-28 2012-01-05 삼성전자주식회사 낸드 플래시 메모리 파일 시스템 및 낸드 플래시 메모리 시스템에서 파일 엑세스 방법
JP2007128448A (ja) * 2005-11-07 2007-05-24 Sony Corp ファイルシステム及びファイル情報処理方法
US7685070B2 (en) * 2006-08-02 2010-03-23 Motorola, Inc. Method and system for using entertainment files as ring tones
KR100816763B1 (ko) * 2007-02-13 2008-03-25 삼성전자주식회사 플래시 메모리 모듈을 주기억장치로 사용하는 전자 시스템및 그것의 부팅 방법
TW200903340A (en) * 2007-07-11 2009-01-16 Hui Lin Structure and method for encrypting digital data memory card
US8977802B2 (en) 2009-11-11 2015-03-10 Panasonic Intellectual Property Management Co., Ltd. Access device, information recording device, controller, real time information recording system, access method, and program
KR101692432B1 (ko) * 2010-12-23 2017-01-17 삼성전자주식회사 불 휘발성 메모리 장치
CN106021217A (zh) * 2016-05-27 2016-10-12 成都索贝数码科技股份有限公司 一种基于fics对象存储的大文件数据的编辑方法与系统
CN108376121B (zh) * 2018-03-01 2021-10-22 曲阜师范大学 一种Flash存储器的数据存储方法
FR3090254B1 (fr) * 2018-12-12 2022-12-16 Idemia France Accès sécurise à des données chiffrées d’un terminal utilisateur

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970008188B1 (ko) * 1993-04-08 1997-05-21 가부시끼가이샤 히다찌세이사꾸쇼 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치
KR0182939B1 (ko) 1995-06-28 1999-04-15 김광호 특정 기록포멧을 갖는 아이씨 카드 메모리 및 그로부터의 디지탈음성 기록 및 재생방법
WO1997014147A1 (fr) 1995-10-09 1997-04-17 Matsushita Electric Industrial Co., Ltd. Support, appareil et procede d'enregistrement d'informations
US6031758A (en) * 1996-02-29 2000-02-29 Hitachi, Ltd. Semiconductor memory device having faulty cells
US5787445A (en) 1996-03-07 1998-07-28 Norris Communications Corporation Operating system including improved file management for use in devices utilizing flash memory as main memory

Also Published As

Publication number Publication date
JP4135049B2 (ja) 2008-08-20
KR20000071483A (ko) 2000-11-25
US6212097B1 (en) 2001-04-03
KR100617892B1 (ko) 2006-09-08
JP2001075869A (ja) 2001-03-23
MY117211A (en) 2004-05-31
CN1268848A (zh) 2000-10-04

Similar Documents

Publication Publication Date Title
CN1171151C (zh) 在非易失性存储器中记录数据的方法
CN1130637C (zh) 非易失存贮装置及非易失存贮器再现装置和方法
CN1229742C (zh) 数据通信系统和数据管理的方法
CN1171148C (zh) 再现设备和再现方法
CN1162781C (zh) 编辑设备和编辑方法
CN1189823C (zh) 数据处理设备、数据处理方法、终端单元、和数据处理设备的发送方法
CN1264168C (zh) 用于处理数据的装置和方法
CN1178125C (zh) 再现装置和再现方法
CN1221979C (zh) 记录介质、记录设备和记录/再现系统
CN1252725C (zh) 记录介质、记录设备、记录方法、编辑设备与编辑方法
CN1232949C (zh) 再现装置和再现方法
CN1174429C (zh) 非易失性记录介质,记录方法和记录设备
CN1300076A (zh) 基于内容提供源的记录介质编辑装置
CN1236581C (zh) 用于加密数据传送的数据处理方法、装置和系统
CN1187756C (zh) 半导体存储器卡、播放装置、记录装置、播放方法、记录方法、和计算机可读记录介质
CN1606781A (zh) 编辑装置和编辑方法
CN1286024C (zh) 记录装置、记录方法和通信装置
CN1143218C (zh) 记录设备、记录方法、再现设备和再现方法
CN1270470C (zh) 用于装置之间相互识别的数据处理系统和方法
CN1466724A (zh) 搜索设备和搜索方法
CN1300398A (zh) 信息处理设备和方法,以及程序存储介质
CN1488099A (zh) 信息处理设备和方法
CN1180567C (zh) 用于加密数据传送的数据处理方法、装置和系统
CN1552072A (zh) 记录设备与方法和通信设备与方法
CN1201255C (zh) 编辑设备、编辑方法和非易失性存储器

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20041013

Termination date: 20160324