CN101996152A - 卡式外围装置和通信系统 - Google Patents
卡式外围装置和通信系统 Download PDFInfo
- Publication number
- CN101996152A CN101996152A CN2010105348840A CN201010534884A CN101996152A CN 101996152 A CN101996152 A CN 101996152A CN 2010105348840 A CN2010105348840 A CN 2010105348840A CN 201010534884 A CN201010534884 A CN 201010534884A CN 101996152 A CN101996152 A CN 101996152A
- Authority
- CN
- China
- Prior art keywords
- host apparatus
- register
- identifying information
- card type
- address
- 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.)
- Pending
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/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
Abstract
本发明披露了一种卡式外围装置和通信系统。该卡式外围装置,包括:存储单元,具有协议识别信息;通信单元,连接至用于根据特定协议通信的主机装置;配置空间,包括多个配置寄存器;其中,所述配置空间包括第一区域和第二区域;其中,所述第一区域具有用于寻址第二区域的第一地址信息,所述第二区域具有用于访问来自所述存储单元的部分协议识别信息的第二地址信息并且具有数据寄存器和地址寄存器;其中,所述第二地址信息用所述地址寄存器相继设置,其中所述部分协议识别信息用所述数据寄存器基于所述第二地址信息相继设置。
Description
本申请是申请日为2007年7月3日、申请号为200710127225.3、发明名称为“卡式外围装置和主机装置”的专利申请的分案申请,其全部内容结合于此作为参考。
技术领域
本发明涉及一种卡式外围装置和通信系统。
背景技术
现已有作为各种卡式外围装置使用的PC卡,当进行使用时,它们被连接至诸如个人计算机的主机装置。已知的PC卡包括通过PCI总线进行通信的PCI卡和允许以比PCI总线具有更高数据传输速度的PCI高速总线(PCI Express bus)来进行通信的PCI高速卡(PCI ExpressCard)(参见日本专利公开第2005-275909号和2006-155183号)。
举例来说,PCI高速卡在物理、电及逻辑上进行标准化。在遵守这种标准的情况下,PCI高速卡须经受生产商之间各不相同的多种设备特定的控制协议。
高速卡标准不仅规定了卡的形状和尺寸,也规定了主机装置的插槽和接口的规格。由于这个原因,可以将遵守高速卡标准的任意高速卡物理连接至主机装置。高速卡标准下包含的PCI高速接口也从电和逻辑上进行标准化。因此,遵守PCI高速标准的任意高速卡也可以电连接和逻辑连接至主机装置。
另一方面,主机装置与卡进行通信的控制协议也必须标准化。控制协议规范在各个生产商之间、甚至在设备之间也各不相同。
过去,主机装置通常使用给定组合的厂家ID、设备ID、版本ID、子系统ID、子系统厂家ID及分类码(class code)作为区分因子,通过该区分因子,能够从不同的控制协议中仅识别出那些遵守特定控制协议的卡。在不同的生产商使用符合相同控制协议的不同设备制造的卡的情况下,通过为主机装置另外配备关于新卡生产商及它们正在使用的设备的信息,保证了一方面的这些卡和另一方面的主机装置之间的连通性(即,正常通信)。
上述的连通性通常通过个人计算机(PC)系统以上述方式得到确保。典型地,相应于任意新引进的卡的设备驱动通过网络或使用适当的存储介质被添加至主机装置(即,PC系统)中或在其中更新。所添加或经过更新的设备驱动将关于新卡生产商及它们设备的信息提供给主机装置,作为增加的区分因子。
发明内容
存在有诸如插卡式像机的主机装置(电子设备),它们被设计成不能通过网络或使用存储介质来接收相应于任意新引进卡的设备驱动。这种主机装置可以用和PC系统一样的方法来识别出给定的卡。在这种情况下,主机装置可以识别并与服从给定控制协议的第一卡进行通信,不能与由不同生产商使用不同的设备而制造的第二卡进行通信,而不考虑第二卡遵守相同的控制协议并且与主机装置物理、电及逻辑连接的事实。
不能区分出第二卡能够在所讨论的主机装置所特有的控制协议下进行控制的主机装置会遭遇到上述问题。由于无法通过网络或使用存储介质在主机装置中添加或更新设备驱动从而反映出关于新卡制造商及新设备的信息,所以不得不将主机装置带至其生产商或服务中心处,进行设备驱动的更新。这样,偶尔在用户需要使用电子装置的紧急情况下,会出现严重的问题。
本发明考虑到上述情形,提供了一种卡式外围装置和一种通信系统,使得主机装置能够容易地区分卡式外围装置的协议,而不用求助于网络或存储介质。
根据本发明的一个实施例,提供了一种卡式外围装置,包括:存储单元,具有协议识别信息;通信单元,连接至用于根据特定协议通信的主机装置;配置空间,包括多个配置寄存器;其中,所述配置空间包括第一区域和第二区域;其中,所述第一区域具有用于寻址第二区域的第一地址信息,所述第二区域具有用于访问来自所述存储单元的部分协议识别信息的第二地址信息并且具有数据寄存器和地址寄存器;其中,所述第二地址信息用所述地址寄存器相继设置,其中所述部分协议识别信息用所述数据寄存器基于所述第二地址信息相继设置。
根据本发明另一个实施例,提供了一种通信系统,所述通信系统根据特定协议在卡式外围装置与主机装置之间通信,其中,所述卡式外围装置包括:存储单元,具有协议识别信息;通信单元,连接至用于根据特定协议通信的主机装置;配置空间,包括多个配置寄存器;其中,所述配置空间包括第一区域和第二区域;其中,所述第一区域具有用于寻址第二区域的第一地址信息,所述第二区域具有用于访问来自所述存储单元的部分协议识别信息的第二地址信息并且具有数据寄存器和地址寄存器;其中,所述第二地址信息用所述地址寄存器相继设置,其中所述部分协议识别信息用所述数据寄存器基于所述第二地址信息相继设置;所述主机装置包括:读取单元,被配置为访问所述多个配置寄存器,从而从所述多个配置寄存器中的至少一个读取用于区分所述特定协议的协议识别信息;以及通信控制单元,被配置为基于由所述读取单元读取的所述协议识别信息,在被发现能够应用于所述卡式外围装置的协议下与所述卡式外围装置进行通信。
与涉及使用网络或存储介质的传统结构相比,本发明的设置显著地降低了开发、设计及生产主机装置和卡式外围装置的成本。
附图说明
图1是主机装置和卡式外围装置的功能框图;
图2是说明卡的典型规范的示意图;
图3是说明配置空间报头的典型格式的示意图;
图4是说明重要产品性能结构的典型格式的示意图;
图5是说明厂家指定性能结构的典型格式的示意图;
图6是说明配置空间中的多个区域(性能结构)如何被访问的示意图;
图7A、7B及7C是说明非易失性存储器中的VPD区域的示意图;
图8是说明VPD数据的具体意义的示意图;
图9A和图9B是说明VS CAP(厂家指定性能结构)区域中第二专用寄存器R2的示意图;
图10是构成由主机装置执行的识别操作的第一实例的步骤的流程图;
图11是构成由主机装置执行的识别操作的第二实例的步骤的流程图;以及
图12是构成由主机装置执行的识别操作的第三实例的步骤的流程图。
具体实施方式
下面将参照附图描述本发明的一些优选实施例。图1是使本发明具体化的主机装置10和卡式外围装置20的功能框图。举例来说,主机装置10是通过拍摄对象的图片来生成图像数据的相机(摄像机),卡20(卡式外围装置)是被连接至主机装置10从而记录由相机所拾取的图像数据的存储卡。
从功能上来看,主机装置10被构造为包括上层(upper layer)12、主存储器(host memory)14及主控制器(host controller)16。
上层12由用于生成图像数据的硬件和用于控制硬件的软件(应用程序)构成。
主存储器14容纳各种数据,并包括存储上述软件的存储器、工作存储器和保留实际数据的存储器。主控制器16通过诸如CPU、DMA及通信接口的硬件和将由CPU执行的软件构成。主控制器16具有卡槽(未示出),该卡槽符合PCI高速卡标准,并允许通过构成PCI高速总线的通信信道2与所接的卡20进行通信。
卡20被构造为包括PCI高速设备22、配置空间24、IO/存储空间寄存器26、非易失性存储器28及上层30。
PCI高速设备22具有卡连接器(未示出),该卡连接器符合PCI高速卡标准,当将其接入主机装置10的卡槽中时,能够通过通信信道2与主机装置10建立通信。PCI高速设备22由CPU、通信接口和将由CPU执行的软件构成。
配置空间24构成地址空间,其容纳了多个配置寄存器,并且是主机装置10在访问卡20的过程中使用的由PCI高速总线提供的地址空间的一部分。
配置寄存器设置有通过PCI高速标准定义的多种设置信息。配置空间24和配置寄存器将在下文中作更详细的讨论。
在作为存储卡的这个实施例中,上层30用作以可重写方式保持数据的存储区域。IO/存储空间寄存器是主机装置10在访问卡20的过程中使用的地址空间的一部分,寄存器26提供用于访问上层30的地址空间。
非易失性存储器28构成本发明的存储单元。因而,非易失性存储器28保存有用于区分并确定主机装置10与卡20进行通信所依照的特定协议的协议识别信息。该存储器由主机装置10利用容纳在配置空间24中的寄存器来访问(即,读取)。对于这个实施例来说,从硬件上看,构成上层30和非易失性存储器28的存储区域由相同的存储器形成。
图2是说明卡20的典型规范的示意图。如图2所示,卡20的规范由物理规范20A、电规范20B、接口规范20C、配置空间规范20D、IO/存储空间寄存器规范20E及控制协议规范20F构成。
物理规范20A符合PCI高速卡标准,并定义了诸如卡连接器的形状和尺寸的参数。
电规范20B定义了诸如信号电压及电流的规格;接口规范20C确定了物理水平上的通信相关规格;而配置空间规范20D规定了关于将在后文描述的配置空间中建立的区域的参数。电规范20B、接口规范20C及配置空间规范20D全都符合PCI高速标准。
IO/存储空间寄存器规范20E定义了IO/存储空间寄存器26的规格。控制协议规范20F主要确定通过通信信道2在主机装置10和卡20之间进行通信的程序。因此,控制协议规范20F可由卡20的生产商选择性建立,并可以依赖于卡20的功能而改变。
接下来说明配置空间24。配置空间24中分配了多个数据区域。这些数据区域包括图3所示的配置空间报头(以下称作CSH)、图4所示的重要产品性能结构(vital product capability,称作VPD Cap)及图5所示的厂家指定性能结构(vendor specific capability,称作VS Cap)。配置空间24中除这三个之外的区域与本发明不相关,这里不进行讨论。根据PCI高速标准(PCI标准),CSH区域的分配是强制性的,而VPS Cap区域和VS Cap区域由厂家决定。
下面,通过参照图3来描述CSH区域。CSH具有固定的地址,范围从00h到3Fh,为64字节长。
基本上,CSH是所有PCI设备和PCI高速设备都具有的区域。CSH中设置有用于识别卡20的多个ID(标识符)。
这些ID包括唯一赋予每个设备厂家(设备生产商)的厂家ID、由各个设备厂家为了内部识别目的而任意定义的设备ID、表示设备版本和设备修改历史的版本ID、被分配用来识别各个设备的功能的分类码、唯一赋予每个卡厂家(卡生产商)的子系统厂家ID和由各个卡厂家为了内部识别而任意定义的子系统ID。这些ID被设置在相应的配置寄存器中,例如厂家ID寄存器、设备ID寄存器、版本ID寄存器、分类码寄存器、子系统厂家ID寄存器及子系统ID寄存器。
如果主机装置是能够使用网络或存储介质获取增加设备驱动从而反映关于新卡制造商及它们的设备的信息的个人计算机或类似装置,则主机装置可以如下一样地工作:主机装置将首先从相应的配置寄存器中读取厂家ID、设备ID、版本ID、分类码、子系统ID及子系统厂家ID。根据所读出的ID数据,主机装置将检查来确定所讨论的卡20(设备)是能够被识别为可在主机装置特有的协议下进行通信,还是不能被识别为可通信从而需要重新添加相应的设备驱动。主机装置将根据检查结果来进行运作。
该实施例的主机装置10不具有上述的能力,因此,通过将在下文讨论的程序来识别设备(卡20)。
下面,通过参照图4来描述VPD Cap区域。VPD Cap容纳了第一专用寄存器R1。在配置空间中,构成VPD Cap区域的地址可由厂家任意确定。针对VPD Cap的偏移地址范围从40h到FFh。VPD Cap区域为8字节的固定区域。VPD数据可放入VPD Cap中8个字节里的4个字节中。VPD Cap中名为“F”的字段表示当主机装置10读取VPD数据时由其设置为“0”的标记。当将VPD数据放入第一专用寄存器中时,标记F被卡20(即,PCI高速设备22)设置为“1”。
VPD Cap中名为“VPD地址(VPD Address)”的字段包括在读出VPD数据时由主机装置100读取的地址。
名为“下一指针(Next Pointer)”的字段将在下文中讨论。
VPD Cap中名为“ID”的字段包括用于区分VPD Cap区域的标识符。在图4中,可看出该ID被设置为03h。
被命名为“VPD数据(VPD Data)”的字段包括从非易失性存储器28中读出并被设置至第一专用寄存器R1的数据。VPD数据是可由制造或销售卡20的各个厂家任意选择并固定建立的数据。因此,VPD数据包括协议识别信息。
VS Cap区域参照图5进行描述。
VS Cap容纳了第二专用寄存器R2。在配置空间中,构成VSCap区域的地址可由厂家任意确定。用于VS Cap的偏移地址范围从40h到FFh。被命名为“长度(Length)”的字段设置有表示构成VS Cap区域的总的字节数的数据。
VS Cap中名为“ID”的字段包括用于区分VS Cap区域的标识符。在图5中,可看到ID被设置为09h。被命名为“厂家数据(Vendor Data)”的字段包括从非易失性存储器28读出并被设置至第二专用寄存器R2的数据。厂家数据也是可以由制造或销售卡20的各个厂家任意设置并固定建立的数据。因此,厂家数据包括协议识别信息。
因为VPD Cap区域和VS Cap区域不是固定地址区域,所以使用下面的程序来访问它们:如图3所示,CSH具有指向在配置空间中将被访问的下一地址的列表指针(Cap.List.Ptr)。本实施例的主机装置10被设置为通过参照该列表指针的值(地址数据)来访问VPD Cap区域。
如图4所示,VPD Cap也具有指向在配置空间中将被访问的下一地址的列表指针(下一指针,Next Pointer)。本实施例的主机装置10被设置为通过参照这个列表指针的值来访问VS Cap区域。
如图5所示,VS Cap也具有指向在配置空间中将被访问的下一地址的列表指针(下一指针,Next Pointer)。本实施例的主机装置10被设置为通过参照这个列表指针的值来访问其他区域。
下面参照图6描述的是为了访问配置空间中多个区域(性能结构)而执行的上述操作。如果主机装置10参照的指针P1指向“A4h”,则主机装置10访问地址A4h处的区域X。
区域X的列表指针指向“5Ch”,使主机装置10访问地址5Ch处的区域Y。
通过指向“E0h”的区域Y的列表指针,主机装置10访问地址E0h处的区域Z。
区域Z的列表指针指向“00h”,使得主机装置10确定没有更多的区域要被访问,并结束其访问处理。
即,主机装置10根据所访问区域的列表指针的值,访问一个区域之后再访问另一区域,直至达到指向“00h”的列表指针。
该用于访问在配置空间中分配的多个区域(寄存器)的程序由PCI高速标准(PCI标准)定义。
下面详细描述如何使用VPD Cap中的第一专用寄存器R1来读取VPD数据。
图7A、7B及7C是说明非易失性存储器28中的VPD区域的示意图。图8是说明包括协议识别信息的VPD数据的具体意义的示意图。
对于该实施例,假设协议识别信息由29字节的29个字符“ABCDEFGHIJKLMNOPQRSTUVWXYZ012”组成的字符串数据构成。如图7B所示,该29字节数据被放置在非易失性存储器28中通过粗实线包围的VPD区域的预定部分中。范围从“A”到“2”的29字符串的分配如图7C所示。在图7C中,参考字符R和V表示除协议识别信息之外的数据。
如图7A和图7B所示,在本实施例的非易失性存储器28中分配了64字节的VPD区域。该VPD区域容纳了由29字节数据所成的协议识别信息PRO以及从第一专用寄存器R1中读取协议识别信息PRO所用的数据。
如图7B和图8所示,对于地址00h处的数据,“82h”表示VPD数据的起始点,“001dh”表示随后29字节字符串的存在。该29字节字符串从地址41h开始存储。在第30字节中的地址90h表示VPD-R区域的开始。从地址90h向前,存在没有被本发明使用而根据标准来说又是需要的数据项。
第一专用寄存器R1中包含的数据由主机装置10以下述方式读取。
首先,将标记F设置为“1”。
主机装置10根据图3所示的CSH的列表指针(Cap.List.Ptr)所保存的地址访问VPD Cap。因此,主机装置10设置“VPD地址”字段,同时将标记F设置为“0”。
当将VPD数据设置给第一专用寄存器R1时,将标记F设置为“1”。
当检测到标记F被设置为“1”时,主机装置10读取4字节的VPD地址。
通过增加“VPD地址”字段中的地址设置来重复上面的操作,直至已经读取了29字节的协议识别信息PRO。
虽然VPD数据是以符合第一专用寄存器R1中的4字节“VPD数据”字段的4字节为单位利用第一专用寄存器R1来读出的,但VPD区域的大小(即,数据大小)并不限于64字节。VPD数据大小以及协议识别信息PRO的数据大小可根据需要改变。
下面详细描述如何使用VS Cap区域中的第二专用寄存器R2来读出VS数据。
图9A和图9B是说明第二专用寄存器R2的示意图。
第二专用寄存器R2中设置的厂家数据包括协议识别信息。
如上所述,对于该实施例,协议识别信息假设由29字节的29个字符“ABCDEFGHIJKLMNOPQRSTUVWXYZ012”所组成的字符串数据构成。为了简化及说明,假设本实施例的第一和第二专用寄存器R1和R2包括相同的协议识别信息。第一和第二专用寄存器R1和R2每个都可以包括相同的协议信息,或者可以保留同一串协议信息的前半部分和后半部分。
在本实施例的情况下,为预先在非易失性存储器28中建立的VS区域(未示出)分配32字节。VS区域容纳了由29字节数据组成的协议识别信息PRO以及用于从第二专用寄存器R2读取协议识别信息PRO所需的数据。
如图9A所示,在本实施例的情况下,VS Cap区域中的第二专用寄存器R2被分配了32字节。第二专用寄存器R2设置有放置在VS区域中的29字节协议识别信息以及用于读取协议识别信息PRO所需的数据。
如图9A所示,“长度”字段设置有表示32字节的“20h”,作为整个VS Cap的大小。名为“厂家数据0”~“厂家数据7”的字段分别设置有“41h”~“32h”(字符A~2)的29字节协议识别信息PRO。
与第一专用寄存器R1的情况不同,第二专用寄存器R2中的数据不需要通过接连指定地址来以4字节为单位读出,而是能够一次性读出全部的32字节数据。
因此,主机装置10如下所述从第二专用寄存器R2读取数据:根据图4所示的VPD Cap中的列表指针(“下一指针”字段)所保存的地址,主机装置10访问VS Cap。在与“长度”字段中设置的29字节数据一致的情况下,主机装置10读取组成“厂家数据0”~“厂家数据7”字段中的数据的29字节协议识别信息PRO。VS Cap的第二专用寄存器R2中的“厂家数据”字段的数目可使用如上所述的“长度”字段的设置,根据需要以字节为单位确定。
主机装置10示意性地执行如下所述的识别操作。
图10是构成由主机装置10执行的识别操作的第一实例的步骤的流程图。在该第一实例中,仅使用了VPD Cap区域。在步骤S10中,将卡20插入主机装置10的卡槽,从而在卡20和主机装置10之间建立电连接。
随后,主机装置10试图访问CSH区域。在步骤S12中,主机装置10检查确定是否能够通过参照VPD Cap区域中的列表指针(Cap.List.Ptr)的值来访问VPD Cap区域。如果在步骤S12中发现可以访问VPD Cap区域,则随后主机装置10进入步骤S14,并检查是否可以读取协议识别信息PRO(卡标识符)。如果在步骤S14中发现可以读取协议识别信息PRO,则随后主机装置10进入步骤S16,并识别卡20,即,根据协议识别信息PRO来确定将要使用的特定协议。当根据协议识别信息PRO确定了特定协议后,主机装置10在该协议下与卡20开始通信。
如果在步骤S12中发现VPD Cap区域不可访问(即,如果列表指针没有指向目的地的地址),则意味着在配置空间中没有VPDCap区域。随后,主机装置10进入步骤S18。在步骤S18中,主机装置10停止执行任何进一步的操作,将所接入的卡20确认为未知设备,并执行诸如提供已经检测到未知设备的通知的必要处理。
如果在步骤S14中发现协议识别信息PRO(卡标识符)不可读,则主机装置10也进入步骤S18。在步骤S18中,主机装置10停止执行任何进一步的操作,将所接入的卡20确认为未知设备,并执行诸如提供已经检测到未知设备的通知的必要处理。
图11是构成由主机装置10执行的识别操作的第二实例的步骤的流程图。在该第二实例中,仅使用VS Cap区域。在步骤S20中,将卡20插入主机装置10的卡槽,从而在卡20和主机装置10之间建立电连接。随后,主机装置10尝试访问CSH区域。在步骤S22中,主机装置10检查确定是否能够通过参照VPD Cap区域中的列表指针(Cap.List.Ptr)的值访问VPD Cap区域。如果在步骤S22中发现VPD Cap区域可以访问,则主机装置10进入步骤S24,并检查是否能够读取协议识别信息PRO(卡标识符)。如果在步骤S24中发现可以读取协议识别信息PRO,则随后主机装置10进入步骤S26,并识别卡20,即,根据协议识别信息PRO来确定将要使用的指定协议。当根据协议识别信息Pro确定了指定协议后,主机装置10在该协议下与卡20开始通信。
如果在步骤S22中发现VS Cap区域不可访问(即,如果列表指针没有指向目的地的地址),则意味着在配置空间中没有VS Cap区域。随后,主机装置10进入步骤S28。在步骤S28中,主机装置10停止执行任何进一步的操作,将所插入的卡20确认为未知设备,并执行诸如提供已经检测到未知设备的通知的必要处理。
如果在步骤S24中发现协议识别信息PRO(卡标识符)不可读,则主机装置10也进入步骤S28。在步骤S28中,主机装置10停止执行任何进一步的操作,将所插入的卡20确认为未知设备,并执行诸如提供已经检测到未知设备的通知的必要处理。
图12是构成由主机装置10执行的识别操作的第三实例的步骤的流程图。在该第三实例中,VPD Cap区域和VS Cap区域都被使用。在步骤S30中,将卡20插入主机装置10的卡槽,从而在卡20和主机装置10之间建立电连接。随后,主机装置10尝试访问CSH区域。在步骤S32中,主机装置10检查确定是否能够通过参照VPDCap区域中的列表指针(Cap.List.Ptr)的值访问VPD Cap区域。如果在步骤S32中发现可以访问VPD Cap区域,则主机装置10进入步骤S34,并检查是否能够读取协议识别信息PRO(卡标识符)。
如果在步骤S34中发现可以读取协议识别信息PRO,则主机装置10进入步骤S36,并检查确定是否能够通过参照VPD Cap区域中的列表指针(“下一指针”字段)来访问VS Cap区域。如果在步骤S36中发现可以访问VS Cap区域,则主机装置10进入步骤S38,并检查是否可以读取协议识别信息PRO(卡标识符)。如果在步骤S38中发现可以读取协议识别信息PRO,则主机装置10进入步骤S40,并根据在该步骤中发现的协议识别信息PRO和在步骤S34中读取的协议识别信息PRO来识别卡20。即,在步骤S40中,主机装置10根据协议识别信息PRO来确定将要使用的指定协议,并在该协议下与卡20开始通信。
如果在步骤S32中发现VPD Cap区域不可访问(即,如果列表指针没有指向目的地的地址),则意味着在配置空间中没有VPDCap区域。随后,主机装置10进入步骤S42。在步骤S42中,主机装置10停止执行任何进一步的操作,将所接入的卡20确认为未知设备,并执行诸如提供已经检测到未知设备的通知的必要处理。
如果在步骤S34中发现协议识别信息PRO(卡标识符)不可读,则主机装置10进入步骤S42。在步骤S42中,主机装置10停止执行任何进一步的操作,将所接入的卡20确认为未知设备,并执行诸如提供已经检测到未知设备的通知的必要处理。
如果在步骤S36中发现VS Cap区域不可访问(即,如果列表指针没有指向目的地的地址),则意味着在配置空间中没有VS Cap区域。随后,主机装置10进入步骤S42。在步骤S42中,主机装置10停止执行任何进一步的操作,将所接入的卡20确认为未知设备,并执行诸如提供已经检测到未知设备的通知的必要处理。
如果在步骤S38中发现协议识别信息PRO(卡标识符)不可读,则主机装置10也进入步骤S42。在步骤S42中,主机装置10停止执行任何进一步的操作,将所接入的卡20确认为未知设备,并执行诸如提供已经检测到未知设备的通知的必要处理。
在本实施例中,主机装置10的主控制器16构成两个单元:读取单元和通信控制单元。读取单元访问多个配置寄存器,从而从第一和第二专用寄存器R1和R2中读取用于区分指定协议的协议识别信息Pro。通信控制单元根据读取单元所读取的协议识别信息PRO,在被发现能够用于卡20的协议下与卡20进行通信。
如上所述,根据本实施例,主机装置10和卡20之间建立通信所依照的用于区分指定协议的协议识别信息被设置在卡20中配备的多个配置寄存器中的一个专用寄存器或多个寄存器中。专用寄存器及它们的识别信息可以由厂家任意并固定地建立。这些设置允许主机装置10轻松地区分或选择卡式外围装置(即,协议),而不使用网络或存储介质。与涉及使用网络或存储介质的传统结构相比,本发明的设置显著地降低了开发、设计及制造主机装置10和卡20的成本。
不需要为了配备额外的区分因子而将主机装置10带至其生产商或服务中心处。这个方面在降低成本方面同样具有优势。因为专用寄存器是现有多个配置寄存器的一部分,所以不需要为主机装置10或卡20添加新的硬件或软件。还具有的其他优势是有助于相当可观地降低开发、设计及制造主机装置10和卡20的成本。
在上面将本发明的实施例描述为设有协议识别信息PRO的VPD Cap的第一专用寄存器和VS Cap的第二专用寄存器。
可替换地,如果VPD Cap的第一专用寄存器或VS Cap的第二专用寄存器被分配了能够容纳协议识别信息PRO的足够宽的区域,则可以仅使该寄存器具有PRO设置。
本实施例在上文中被描述成为CSH区域补充了VPD Cap区域和VS Cap区域。CSH区域首先被访问,从而参考其列表指针(Cap.List.Ptr)的值,该列表指针值被用于访问VPD Cap区域。通过访问VPD Cap区域,接下来参考其列表指针(“下一指针”字段)的值,从而访问VS Cap区域。或者,可以首先访问CSH区域,从而参照其列表指针(Cap.List.Ptr)的值,该列表指针值被用于访问VS Cap区域。通过访问VS Cap区域,可接下来参照其指针(“下一指针”字段)的值,从而访问VPD Cap区域。
另一种选择是,可以在配置空间中为CSH区域单独补充VPDCap区域或VS Cap区域。在这种情况下,可以通过参照CSH区域中的列表指针(Cap.List.Ptr)的值来访问VPD Cap区域或VS Cap区域。
并不强制以VPD Cap区域的地址或VS Cap区域的地址来设置CSH的列表指针(Cap.List.Ptr)。显然,可以除上述CSH区域、VPD Cap区域或VS Cap区域之外的任何区域的地址来代替设置CSH列表指针。
本实施例在上文中被描述为具有实际作为相机使用的主机装置10和作为存储卡的卡20。可替换的是,只要主机装置10可以与卡20进行通信,它就可以为任意适合的装置。只要卡20能够与主机装置10进行通信,它就可以为任意适合的装置。
本发明的主要特征在于,用于区分特定协议的协议识别信息被设置在卡中配备的多个配置寄存器中的一个专用寄存器或多个寄存器中,这多个寄存器允许由厂家任意并固定地建立。用于连接主机装置10和卡20的总线可以是任意适合的总线,不限于上述的PCI高速总线。
应该了解,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
Claims (8)
1.一种卡式外围装置,包括:
存储单元,具有协议识别信息,
通信单元,连接至用于根据特定协议通信的主机装置,
配置空间,包括多个配置寄存器,
其中,所述配置空间包括第一区域和第二区域,
其中,所述第一区域具有用于寻址第二区域的第一地址信息,所述第二区域具有用于访问来自所述存储单元的部分协议识别信息的第二地址信息并且具有数据寄存器和地址寄存器,
其中,所述第二地址信息用所述地址寄存器相继设置,其中所述部分协议识别信息用所述数据寄存器基于所述第二地址信息相继设置。
2.根据权利要求1所述的卡式外围装置,其中,在所述主机装置从所述数据寄存器读取所述部分协议识别信息后,如果所述主机装置未能读出协议识别信息,则所述卡式外围装置被识别为未知装置。
3.根据权利要求1所述的卡式外围装置,其中,在所述主机装置和所述卡式外围装置通过PCI高速总线可通信地连接;
其中,所述PCI高速总线配备有容纳所述多个配置寄存器的用作地址空间的配置空间;
其中,所述配置空间包括两个区域,所述两个区域中的一个是配置空间报头,另一区域构成重要产品数据性能结构;以及
其中,所述多个配置寄存器中的至少一个是被配置为设置有由生产或销售所述卡式外围装置的厂家任意选择并固定建立的数据的专用寄存器,
其中,所述专用寄存器被容纳在所述重要产品数据性能结构的区域中。
4.根据权利要求1所述的卡式外围装置,其中,所述通信单元包括PCI高速总线。
5.一种通信系统,所述通信系统根据特定协议在卡式外围装置与主机装置之间通信,其中,所述卡式外围装置包括:
存储单元,具有协议识别信息,
通信单元,连接至用于根据特定协议通信的主机装置,
配置空间,包括多个配置寄存器,
其中,所述配置空间包括第一区域和第二区域,
其中,所述第一区域具有用于寻址第二区域的第一地址信息,所述第二区域具有用于访问来自所述存储单元的部分协议识别信息的第二地址信息并且具有数据寄存器和地址寄存器,
其中,所述第二地址信息用所述地址寄存器相继设置,其中所述部分协议识别信息用所述数据寄存器基于所述第二地址信息相继设置,
所述主机装置包括:
读取单元,被配置为访问所述多个配置寄存器,从而从所述多个配置寄存器中的至少一个读取用于区分所述特定协议的协议识别信息;以及
通信控制单元,被配置为基于由所述读取单元读取的所述协议识别信息,在被发现能够应用于所述卡式外围装置的协议下与所述卡式外围装置进行通信。
6.根据权利要求5所述的通信系统,其中,在所述主机装置从所述数据寄存器读取所述部分协议识别信息后,如果所述主机装置未能读出协议识别信息,则所述外围装置被识别为未知装置。
7.根据权利要求5所述的通信系统,其中,在所述主机装置和所述卡式外围装置通过PCI高速总线可通信地连接;
其中,所述PCI高速总线配备有容纳所述多个配置寄存器的用作地址空间的配置空间;
其中,所述配置空间包括两个区域,所述两个区域中的一个是配置空间报头,另一区域构成重要产品数据性能结构;以及
其中,所述多个配置寄存器中的至少一个是被配置为设置有由生产或销售所述卡式外围装置的厂家任意选择并固定建立的数据的专用寄存器,
其中,所述专用寄存器被容纳在所述重要产品数据性能结构的区域中。
8.根据权利要求1所述的卡式外围装置,其中,所述通信单元包括PCI高速总线。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006183802A JP4626582B2 (ja) | 2006-07-03 | 2006-07-03 | カード型周辺機器およびカード通信システム |
JP2006-183802 | 2006-07-03 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101272253A Division CN101101584B (zh) | 2006-07-03 | 2007-07-03 | 卡式外围装置和主机装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101996152A true CN101996152A (zh) | 2011-03-30 |
Family
ID=38972696
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101272253A Active CN101101584B (zh) | 2006-07-03 | 2007-07-03 | 卡式外围装置和主机装置 |
CN2010105348840A Pending CN101996152A (zh) | 2006-07-03 | 2007-07-03 | 卡式外围装置和通信系统 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101272253A Active CN101101584B (zh) | 2006-07-03 | 2007-07-03 | 卡式外围装置和主机装置 |
Country Status (3)
Country | Link |
---|---|
US (3) | US7865628B2 (zh) |
JP (1) | JP4626582B2 (zh) |
CN (2) | CN101101584B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9336387B2 (en) * | 2007-07-30 | 2016-05-10 | Stroz Friedberg, Inc. | System, method, and computer program product for detecting access to a memory device |
US7743189B2 (en) * | 2008-05-05 | 2010-06-22 | International Business Machines Corporation | PCI function south-side data management |
JP2011076491A (ja) * | 2009-09-30 | 2011-04-14 | Toshiba Corp | 電子機器及びアプリケーション実行方法 |
JP5372049B2 (ja) * | 2011-02-04 | 2013-12-18 | 株式会社東芝 | メモリシステム |
US10089270B2 (en) | 2011-10-17 | 2018-10-02 | Intel Corporation | Interchangeable power and signal contacts for IO connectors |
US8645600B2 (en) | 2011-11-10 | 2014-02-04 | International Business Machines Corporation | Configuring expansion component interconnect (‘ECI’) physical functions on an ECI device in a computing system |
US9298658B2 (en) * | 2013-02-26 | 2016-03-29 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Using PCI-E extended configuration space to send IOCTLS to a PCI-E adapter |
US9619424B2 (en) * | 2013-10-09 | 2017-04-11 | Qualcomm Incorporated | Supporting unrecognized protocol in wireless docking |
US10089129B2 (en) * | 2014-06-30 | 2018-10-02 | International Business Machines Corporation | Supporting flexible deployment and migration of virtual servers via unique function identifiers |
US9804989B2 (en) * | 2014-07-25 | 2017-10-31 | Micron Technology, Inc. | Systems, devices, and methods for selective communication through an electrical connector |
CN104965677B (zh) * | 2015-06-26 | 2018-04-13 | 北京百度网讯科技有限公司 | 存储系统 |
CN106909198B (zh) * | 2015-12-22 | 2020-11-06 | 华硕电脑股份有限公司 | 一种外接装置、电子装置及电子系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001059585A1 (en) * | 2000-02-08 | 2001-08-16 | Clearwater Networks, Inc. | Queueing system for processors in packet routing operations |
JP2002033786A (ja) * | 2000-07-18 | 2002-01-31 | Sony Corp | 情報処理装置及び方法、媒体 |
JP2003046511A (ja) * | 2001-08-01 | 2003-02-14 | Canon Inc | 情報処理装置と情報処理方法、及び情報処理システム、並びに記憶媒体 |
US20040010678A1 (en) * | 2002-07-09 | 2004-01-15 | Lsi Logic Corporation | Method and/or apparatus for implementing enhanced device identification |
US20040039892A1 (en) * | 2002-08-23 | 2004-02-26 | Goldschmidt Marc A. | System and method of accessing vital product data |
JP2004229038A (ja) * | 2003-01-24 | 2004-08-12 | Toshiba Corp | 電子機器及び通信プロトコル選択方法 |
CN1522415A (zh) * | 2001-06-29 | 2004-08-18 | 英特尔公司 | 虚拟pci设备装置和方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11120120A (ja) * | 1997-10-13 | 1999-04-30 | Fujitsu Ltd | カードバス用インターフェース回路及びそれを有するカードバス用pcカード |
JP2003532936A (ja) * | 1998-03-26 | 2003-11-05 | ジェムプリュス | 汎用インターフェースicカード |
US7318146B2 (en) * | 2001-06-19 | 2008-01-08 | Micron Technology, Inc. | Peripheral device with hardware linked list |
US6941405B2 (en) * | 2001-08-21 | 2005-09-06 | 02Micro International Limited | System and method capable of offloading converter/controller-specific tasks to a system microprocessor |
CN100353347C (zh) * | 2002-11-25 | 2007-12-05 | 杭州士兰微电子股份有限公司 | 一种实现pci多功能卡的方法 |
US20040164170A1 (en) * | 2003-02-25 | 2004-08-26 | Marcelo Krygier | Multi-protocol memory card |
US20080071963A1 (en) * | 2003-11-22 | 2008-03-20 | Super Talent Electronics Inc. | Express card with extended USB interface |
US20050138288A1 (en) * | 2003-12-23 | 2005-06-23 | Horng-Yee Chou | Dual mode USB and PCI express device |
JP2005275909A (ja) | 2004-03-25 | 2005-10-06 | Nec Corp | Pciカード、pci制御方法、pci制御プログラム、情報処理システム |
US20050251609A1 (en) * | 2004-05-04 | 2005-11-10 | Horng-Yee Chou | Removable peripheral device |
JP2006155183A (ja) | 2004-11-29 | 2006-06-15 | Toshiba Corp | 情報処理装置 |
US7222211B2 (en) * | 2005-03-14 | 2007-05-22 | Phison Electronics Corporation | Virtual USB flash memory storage device with PCI express interface |
-
2006
- 2006-07-03 JP JP2006183802A patent/JP4626582B2/ja active Active
-
2007
- 2007-07-02 US US11/825,120 patent/US7865628B2/en active Active
- 2007-07-03 CN CN2007101272253A patent/CN101101584B/zh active Active
- 2007-07-03 CN CN2010105348840A patent/CN101996152A/zh active Pending
-
2010
- 2010-11-18 US US12/949,037 patent/US8073987B2/en active Active
-
2011
- 2011-10-28 US US13/283,876 patent/US8271696B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001059585A1 (en) * | 2000-02-08 | 2001-08-16 | Clearwater Networks, Inc. | Queueing system for processors in packet routing operations |
JP2002033786A (ja) * | 2000-07-18 | 2002-01-31 | Sony Corp | 情報処理装置及び方法、媒体 |
CN1522415A (zh) * | 2001-06-29 | 2004-08-18 | 英特尔公司 | 虚拟pci设备装置和方法 |
JP2003046511A (ja) * | 2001-08-01 | 2003-02-14 | Canon Inc | 情報処理装置と情報処理方法、及び情報処理システム、並びに記憶媒体 |
US20040010678A1 (en) * | 2002-07-09 | 2004-01-15 | Lsi Logic Corporation | Method and/or apparatus for implementing enhanced device identification |
US20040039892A1 (en) * | 2002-08-23 | 2004-02-26 | Goldschmidt Marc A. | System and method of accessing vital product data |
JP2004229038A (ja) * | 2003-01-24 | 2004-08-12 | Toshiba Corp | 電子機器及び通信プロトコル選択方法 |
Also Published As
Publication number | Publication date |
---|---|
US7865628B2 (en) | 2011-01-04 |
CN101101584A (zh) | 2008-01-09 |
US8073987B2 (en) | 2011-12-06 |
US20080022018A1 (en) | 2008-01-24 |
JP2008015629A (ja) | 2008-01-24 |
US20120047290A1 (en) | 2012-02-23 |
US20110078338A1 (en) | 2011-03-31 |
CN101101584B (zh) | 2010-12-29 |
JP4626582B2 (ja) | 2011-02-09 |
US8271696B2 (en) | 2012-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101101584B (zh) | 卡式外围装置和主机装置 | |
US7177975B2 (en) | Card system with erase tagging hierarchy and group based write protection | |
CN100589203C (zh) | 非易失存储器系统中不可用块的管理 | |
US20070050584A1 (en) | Semiconductor memory device | |
JP2008015629A5 (zh) | ||
JP2001503166A (ja) | フラッシュメモリカード | |
CN103999159A (zh) | 用于对存储器响应进行排序的存储器设备、计算机系统及方法 | |
CN101706709A (zh) | 卡和主机设备 | |
EP0602997A2 (en) | Information transmission system | |
US9772937B2 (en) | Data processing method, memory controller and memory storage apparatus | |
US8417902B2 (en) | One-time-programmable memory emulation | |
CN100437534C (zh) | 可换介质的驱动器跟踪系统 | |
CN113314180B (zh) | 一种多次编程电子熔丝装置 | |
EP1770538B1 (en) | SCSI communication system, information processing device, peripheral device and communication method | |
US6687783B1 (en) | Access apparatus and method for accessing a plurality of storage device having different characteristics | |
US10223195B2 (en) | Counter in a flash memory | |
JP5077397B2 (ja) | カード型周辺機器のアクセス方法、ホスト機器、およびカード通信方法 | |
CN108804354A (zh) | 存储装置、存取系统及存取方法 | |
JP2537200B2 (ja) | 携帯可能電子装置 | |
US7584322B2 (en) | Method for storing and/or changing state-information of a memory as well as integrated circuit and data carrier | |
CN107081964A (zh) | 存储装置、液体容器以及主机装置 | |
JP2000089961A (ja) | アプリケーション登録端末システムおよび登録方法 | |
JP2008176607A (ja) | メモリカードの特定方法 | |
JPH03286276A (ja) | Icカード | |
JPH0635811A (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110330 |