首页> 中国专利> 核功能实现机制、具有该机制的娱乐设备以及利用该机制的外围设备控制方法

核功能实现机制、具有该机制的娱乐设备以及利用该机制的外围设备控制方法

摘要

一个娱乐设备包括一个存储单元,它在核外部存储一个用于外围设备的设备驱动程序。为了使该外围设备成为可操作的,CPU根据远程过程调用使I/O处理器执行该设备驱动程序。在外围设备和CPU之间的数据传送是根据一个至少在该娱乐设备中共同使用的通信协议通过直接存储器访问实现的。

著录项

  • 公开/公告号CN1527974A

    专利类型发明专利

  • 公开/公告日2004-09-08

    原文格式PDF

  • 申请/专利权人 索尼计算机娱乐公司;

    申请/专利号CN01800409.1

  • 发明设计人 堀川勉;袴谷忠靖;

    申请日2001-03-01

  • 分类号G06F13/10;G06F9/445;G06F9/46;

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人吴丽丽

  • 地址 日本东京

  • 入库时间 2023-12-17 15:30:37

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2007-05-16

    授权

    授权

  • 2004-11-10

    实质审查的生效

    实质审查的生效

  • 2004-09-08

    公开

    公开

说明书

                       发明背景

发明领域

本发明涉及一种娱乐设备,它能根据记录在次级存储介质(如CD-ROM或DVD-ROM)上的数字信息进行娱乐处理,包括再生声音和图像,特别是涉及对连到该娱乐设备上的外围设备的控制。

相关技术描述

作为进行游戏等活动的娱乐专用计算机而实现的娱乐设备与外围设备协同进行给定的娱乐处理,这些外围设备有与娱乐设备连接的控制器和外部存储介质等。具体地说,娱乐设备根据来自诸如控制器和外部存储介质等外围设备的输入进行给定的娱乐处理并将其结果输出到诸如电视接收机等显示单元以及扬声器。这样,对于娱乐设备,如何控制与其连接的外围设备便是很重要的。

通常,对外围设备的控制是由一个核(kernel)的一部分来实现的,这个核是一OS(操作系统)的主功能。

近年来,已经可以得到一种称作“微核(microkernel)”的技术,这里设备驱动程序作为控制外围设备的程序代码被放置在核的外部,从而增强外围设备的通用性或兼容性。这种微核技术适于应用到娱乐设备上,因为需要娱乐设备根据娱乐种类而接收各色各样的外围设备。

然而,由于高通用性,微核在以高层次处理每个外围设备方面有困难。结果,当娱乐设备用作需要实时处理的游戏设备时,它的处理便显得不够了。

另一方面,还可以得到这样一种技术,这里除了创建核的CPU外还提供了一个专用处理器用于控制外围设备。

通常娱乐设备没有基本海量存储介质。在这样的娱乐设备中,从次级存储介质(如CD-ROM)中读取程序代码是至关重要的。在这种情况中,为了减轻加到CPU上的负担,对娱乐设备提供了例如I/O(输入/输出)处理器,以进行诸如读取程序代码、对读取的程序代码进行解码和扩展以及其他工作。

在具有这种I/O处理器的娱乐设备中,该I/O处理器能用作前述专利用处理器以控制外围设备。

然而,在这种情况中,在I/O处理器和CPU之间交换信息,包括程序代码和必要的数据,是至关重要的。结果,在娱乐设备中趋于增加了复制和传送信息的次数,这对于需要高速处理的娱乐设备是不希望的。再有,CPU等待I/O处理器进行处理所需的时间也显得过长,这也不利于高速处理。

                    发明概要

所以,本发明的一个目的是提供一种改进的技术,它能消除先有技术中固有的一个或多个缺点。

根据本发明的一个方面,所提供的娱乐设备包含存储装置用于存储核外部的程序代码,该程序代码在被执行时使外围设备成为可操作的;设备连接装置用于连接外围设备;以及核创建器用于执行娱乐处理,它使用的外围设备是连到设备连接装置上并成为可操作的外围设备,这里核创建器根据一个远程过程调用使控制装置去执行程序代码,从而使外围设备成为可操作的。

远程过程调用是一种技术,这里部分娱乐处理程序的执行,即该程序中包括的某一过程的执行,被委托给另一执行装置,而执行结果被回送,如同通常的过程调用中的返回值。在本发明中,用于控制外围设备的程序代码被存储在核的外部,而在由核创建器执行娱乐处理程序的同时,使控制装置(例如与CPU分开提供的外围设备控制专用处理器)执行某一过程。该控制装置读取程序代码并执行这些程序代码,从而使外围设备成为可操作的。通过这种安排,用于外围设备的程序外码不仅能放在核的外部,而且还能放在由核管理的硬件资源(例如CPU和存储器)的外部。这能改善硬件资源的工作效率以增大整个设备的处理速度。这样,该设备甚至能实现临时需要实时处理的高速处理。

可以安排成核创建器根据远程过程调用使控制装置从存储装置中读取程序代码并通过直接存储器访问传送程序代码的执行结果。为实现直接存储器访问,可采取各种方式。最好是在核创建器和外围设备之间提供一个队列,并由控制装置根据第一直接存储器访问在外围设备和该队列之间进行数据交换,根据第二直接存储器访问(它与第一直接存储器访问是不同步的)在核创建器和该队列之间进行数据交换。通过这种安排,即使在执行娱乐处理期间也能把信息存储到队列中。

再有,通过进行基于直接存储器访问的远程过程调用,有可能直接地从外围设备传送被编址到核创建器的信息。这能减少复制和传送信息的次数,而复制和传送信息的次数太多本是先有技术中存在的一个问题。

可以安排成根据至少在该设备中共同使用的通信协议来执行通过第一直接存储器访问进行的数据交换和通过第二直接存储器访问进行的数据交换。通过这种安排。进一步保证了实时处理。作为通信协议,可以使用例如以太网内使用的通用协议。于是,不依赖外围设备类型的设备控制能得以实现。再有,能保证程序代码对多种外围设备的兼容性。

可以安排成将外围设备可拆卸地连接到设备连接装置。而且该外围设备包括一个次级存储介质,这里在执行程序代码时要使用的数据被存储在这次级存储介质中,而且在执行程序代码时次级存储介质中所存储的数据通过直接存储器访问传送给核创建器。

根据本发明的另一方面,在娱乐设备中提供了一个核功能实现机制,用于控制连到娱乐设备上的外围设备,该娱乐设备包含一个核创建器用于执行娱乐处理,通过执行程序代码,它所使用的外围设备成为可操作的,这里的程序代码存储在核外部,而核创建器根据一远程过程调用使控制装置执行该程序代码,从而使该外围设备成为可操作的。

可以安排成至少编址为从外围设备到核创建器的数据传送是由直接存储器访问来实现。

可以安排成根据该设备中共同使用的通信协议来进行该数据传送。

根据本发明的另一方面,提供了一种控制方法,用于控制连到娱乐设备上的外围设备。该娱乐设备包含一个核创建器用于执行娱乐处理,通过执行程序代码,它所使用的外围设备成为可操作的,这里的程序代码存储在核外部,而核创建器根据一远程过程调用使控制装置执行该程序代码,从而使该外围设备成为可操作的。

可以安排成至少编址为从外围设备到核创建器的数据传送是由直接存储器访问来实现。

可以安排成根据该设备中共同使用的通信协议来进行该数据传送。

根据本发明的另一方面,在一个娱乐设备中提供了一个半导体装置,该娱乐设备包含一个控制装置用于执行存储在核外部的程序代码以及一个设备连接装置用于连接一个外围设备,通过执行该程序代码使该外围设备成为可操作的,该半导体装置包含一个核创建器,它根据一远程过程调用使控制装置执行程序代码从而使该外围设备成为可操作的,并执行娱乐处理,该娱乐处理使用已成为可操作的外围设备。

根据本发明的另一方面,提供了一个计算机程序,用于操作一个作为娱乐设备的计算机,该计算机包含一个控制装置用于执行存储在核外部的程序代码以及一个设备连接装置用于连接一外围设备,通过执行该程序代码使该外围设备成为可操作的,该计算机程序根据一远程过程调用使娱乐设备执行一些步骤,这些步骤使控制装置执行程序代码,从而使外围设备成为可操作的;并执行娱乐处理,该娱乐处理使用已成为可操作的外围设备。

                    附图简述

由下文中结合附图给出的详细描述,可更充分地理解本发明。

这些附图中:

图1显示根据本发明一个最佳实施例的娱乐设备的硬件结构;

图2用于解释根据该最佳实施例的一个核的结构;

图3用于解释当发生一个从应用程序到控制器的动作时的处理过程;

图4用于解释关于经由队列进行数据交换的处理过程;以及

图5用于解释当把控制器中产生的数据传送给应用时的处理过程。

                       最佳实施例描述

现在,将参考附图描述根据本发明的娱乐设备的最佳实施例。

<娱乐设备结构>

图1显示根据这一实施例的娱乐设备的结构。

娱乐设备是一种计算机,它能用作例如游戏设备。娱乐设备包含一个主总线MB和一个副总线SB,经由与队列1一同提供的中心总线相连。该娱乐设备进一步包含各种功能实现部件,它们连到主总线MB和副总线SB。

主总线MB与CPU2、存储器3、图像处理器4及第二DMAC(直接存储器访问控制器)5相连。副总线SB与盘驱动器6、I/O处理器7、声音处理器8、安全模块9、第一DMAC10、控制器11、存储器卡12及ROM13相连。

CPU2是一个包含微处理器的半导体装置。微处理器控制娱乐设备的整个操作并使能执行娱乐处理,例如游戏处理,包括根据执行该游戏处理时所必须的各种数据来再生声音和图像。再有,在启动娱乐设备时,该微处理器从连到副总线SB的ROM13中读取引导程序并执行它,以启动一个OS供创建核。

存储器3包含一个RAM并为CPU2提供一个工作区。从次级存储介质M中读出的数字信息,例如游戏处理用的程序代码和数据,被写入存储器3。

在这一实施例中,为控制外围设备所必须的程序代码和数据不写入存储器3,这将在下文中描述。在下文的描述中,如果必须区分用于游戏处理的程序代码和用于控制外围设备的程序代码,则把前者称作“应用程序”,而把后者称作“设备驱动程序”。

根据存储器3中存储的数字信息,图像处理器4与CPU2合作产生于显示单元(未画出)上显示图像所必须的图像数据,如表现游戏角色和其他图形的多边形数据以及包括多边形数据所用色彩信息的纹理数据。具体地说,图像处理器4包含一个几何处理单元用于在游戏处理过程中对从存储器3中存储的数字信息中读出的数据进行坐标变换,一个解码器用于对几何处理的内容解码,一个再生单元用于根据通过几何处理得到的图形或绘图数据产生前述每帧图像数据,以及一个用于在显示单元上显示所产生的图像数据的机制。

队列1临时存储主总线MB和副总线SB之间交换的信息,即由I/O处理器7执行的根据RPC(远程过程调用)控制外围设备所使用的种种命令和数据,在这一实施例中,队列1暂时存储例如在存储器3和I/O处理器7之间交换的信息,在存储器3和控制器11或存储器卡12之间交换的信息,或在这些装置和其他装置之间交换的信息。

盘驱动器6在其中接受次级存储介质M,如CD-ROM或DVD-ROM,并从次级存储介质M中读出数字信息,即应用程序和数据。应用程序代表程序代码,用于控制游戏的发展并跟随游戏的发展再生声单和图像,而数据代表再生声音和图像时所用数据。在这一实施例中,应用程序和数据在经过压缩和部分加密之后记录在次级存储介质M中。或者可以把加密应用于全部压缩过的应用程序和数据。

I/O处理器7是一个半导体装置,它控制盘驱动器6从次级存储介质M中读出应用程序和数据,并进一步与安全模块9合作进行对所读出数字信息的解码和扩展。实现I/O处理器的这些功能的程序(控制程序)存储在例如ROM13中,而I/O处理器7在娱乐设备启动时便去执行它。

安全模块9采取单个半导体芯片的形式,有专用的处理器和存储器,该专用处理器的功能是保证娱乐设备的安全。安全模块9持有解码密钥,解码密钥是I/O处理器7对数字信息进行解码时所必要的。在这一实施例中,安排成安全模块9即使独立地工作也能对加密的数字信息进行解码。

声音处理器8与一扬声器(未画出)相连。声音处理器8从声音处理器8中提供的声音存储器(未画出)中读取I/O处理器7或第一DMAC10发出的声音命令所对应的数据,以产生声音数据,并把所产生的声音数据输出到扬声器。对此作出响应,扬声器在声音处理器8的控制下产生游戏的声音效果或图像的BGM声音等。

控制器11和存储器卡12是与娱乐设备相连的外围设备的两个例子。具体地说,控制器11和存储器卡12经由各自的输入端口(未画出)连到副总线SB。通过执行相应的设备驱动程序,控制器11和存储器卡12都成为可操作的。在这一实施例中,副总线SB与前述输入端口以及副总线SB的控制机制(未画出)合作,构成设备连接装置。

控制器11是一个输入装置,用于把游戏者的打算输入到娱乐设备中。例如,操作控制器11以输入一个向上、向下、向右和向左方向移动光标的请求或输入一个执行某一过程的请求。

存储器卡12包含一个闪速存储器(闪速ROM),装在给定尺寸的卡中。当一个游戏是在游戏过程中产生可记录游戏数据的那类游戏时,在游戏中断时或游戏结束时游戏者把游戏数据记录在存储器卡12中,在控制器11中可以纳入一个闪速存储器来取代存储器卡12或作为存储器卡12的补充。

第一DMAC10和第二DMAC5合作工作,以允许I/O处理器7利用DMA(直接存储器访问)完成RPC。

第一DMAC10至少是控制读和写在控制器11和/或存储器卡12与队列1之间交换的信息。第二DMAC5至少是控制读和写在存储器3与队列1之间交换的信息。

在这一实施例中,提供了两个DMAC以与总线个数一致。然而,第一DMAC10和第二DMAC5可以由一个控制模块实现。

<核功能实现机制>

在这一实施例中,从所执行的应用程序到达控制器11的所有请求都是基于RPC通过DMA进行的。为此目的,操作控制器11所必须的设备驱动程序存储在核外部的存储装置中,例如次级存储介质M、存储器卡12的闪速存储器或ROM13,并允许在执行应用的过程中由I/O处理器7执行。在这一实施例中,设备驱动程序存储在ROM13中。

图2显示根据这一实施例的核的结构。具体地说,在核中构成进行任务管理的功能和进行中断控制的功能。在这一类型的传统娱乐设备中的核(不包括微核)还在其中提供了外围设备的设备驱动程序。另一方面,在这一实施例中,外围设备的设备驱动程序存储在核外部的存储装置中,即ROM13中。当必须控制外围设备例如控制器11时,CPU2使I/O处理器7从ROM13中读取相应的设备驱动程序并通过RPC执行它。这使控制器11成为可操作的。当根据RPC控制外围设备时,控制的结果作为所谓返回值传送给核。在这一实施例中,由于传送是由DMC完成的,所以能达到的外围设备高速控制。

<由核控制外围设备的方法>

现在将参考图3至图5描述具有前述核功能实现机制的娱乐设备中对外围设备的控制方法。

下文将解释控制外围设备操作的功能,这是核的各种功能当中的一个。在下面的解释中,假定该外围设备是控制器11。然而,下文的解释也可以应用于其他外围设备。RPC的执行不使用其专用通信协议,而是使用娱乐设备中共同使用的一个通信协议。

(应用程序→控制器11:图3和图4)

如图3中所示,当CPU2根据存储器3中存储的程序代码和数据执行应用程序时(步骤S101),如果需要对控制器11采取某种行动,则应用程序为此做出RPC请求(步骤S102)。例如,如果对控制器11提供一个产生振动机制,并要求操作这一产生振动机制,以在游戏的给定场景增强娱乐效果,则应用程序提供操作该产生振动机制必须的信息。这一信息由第二DMAC5通过DMA从存储器3传送到队列1并临时存储在队列1中(步骤S103和S104)。

现在参考图4,I/O处理器7根据队列1中存储的信息从ROM13中寻找控制器11的设备驱动程序并执行它(步骤S105和S106)。于是,来自应用程序的请求被传送给控制器11,不需通过CPU2(步骤S107)。(控制器11→应用程序:图4和图5)

在图4中,在控制器11中产生的数据经由第一DMAC10临时存储在队列1中(步骤S201和S202)。该数据包括:例如由游戏者使用控制器11输入的那些数据,或者当能使用模拟和数字两种输入时关于控制器11中使用模拟还是数字输入的那些数据。

现在参考图5,存储在队列1中的数据由第二DMAC5按给定的计时读出并传送给存储器3(步骤S203)。第二DMAC5通知CPU2数据已存储在存储器3中(步骤S204和S205)。CPU2使用存储在存储器3中的数据作为其后执行应用程序时所用的数据(步骤S206)。例如,当在控制器11中发生一个向右移动的键输入时,在显示单元上显示的一个给定字符便向右移动。

按照上述方式,使用DMA能容易地实现从应用程序向控制器11传送请求和从控制器11向应用程序传送数据。在这种情况中,请求和数据被传送和存储到存储器3中,无需直接由CPU2处理。RPC是一种可进行高度的平行编程的机制。这样,CPU2不需长时间等待来自I/O处理器7的响应。这能减少复制和传送信息的次数,否则的话,这是有I/O处理器的许多系统中一直存在问题,于是CPU2能达到高工作速率。

如前所述,在根据这一实施例的娱乐设备中,当使用控制器11进行娱乐处理时,通过RPC执行该控制器11的设备驱动程序。这使得有可能不仅把设备驱动程序放在核的外部,而且还能放在由核管理的资源(CPU2和存储器3)的外部,从而能改善娱乐处理的执行效率。

再有,因为通过DMA执行RPC,所以能实现从控制器11到存储器3的直接数据传送,从而减少数据复制和传送到CPU2中的次数。

再有,由于控制器11和队列1之间的数据交换以及队列1和CPU2(核)之间的数据交换都是通过异步的DMA执行的,即使在来自应用程序的请求的发生和控制器11中数据产生的发生二者之间引起某种时间延迟,仍能在二者之间稳定地进行数据交换。再有,由于数据交换是基于该设备中共同使用的通信协议进行的,所以能实现不依赖于设备驱动程序类型的设备控制。

尽管已经利用最佳实施例描述了本发明,但本发明不限于此,而是能以各种方式实现而不离开所附权利要求中定义的本发明的原理。

在前文的描述中,已经解释了如图1所示娱乐设备实现的特征性核功能实现机制,以及使用这一核功能实现机制的外围设备控制方法。另一方面,本发明还可应用于这样的一种情况,那里一个计算机程序(不包括应用程序和设备驱动程序)被读入装置有OS的一个通用计算机并由该计算机执行,从而能实现前述核功能实现机制和外围设备控制方法。再有,一个装有OS的通用计算机与一个或多个半导体装置合作,也能实现前述核功能实现机制和外围设备控制方法。该半导体装置包括一个处理器并装置有程序以向处理器提供所需要的功能。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号