專利名稱::存取pc與x-box雙平臺上非揮發(fā)性存儲器的方法與相關(guān)裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明有關(guān)一種支持PC與X-BOX雙平臺上非揮發(fā)性存儲器的方法與相關(guān)裝置。(2)
背景技術(shù):
個人計算機(jī)中的USB端口可供連接許多種USB裝置,例如USB卡片閱讀機(jī)、USB隨身碟、外接式USB硬盤、USB打印機(jī)、以及USB掃描儀等等,提供使用者極為方便的外圍連接接口。從早期USB1.1支持12Mbps的數(shù)據(jù)傳輸,演進(jìn)到目前USB2.0支持480Mbps的數(shù)據(jù)傳輸。圖1顯示一般個人計算機(jī)(PC)100藉由一條USB延長線120連接一臺USB卡片閱讀機(jī)(cardreader)140,其同時顯示出個人計算機(jī)平臺上所提供的主機(jī)端USB插槽102的結(jié)構(gòu),其中該USB卡片閱讀機(jī)140可存取快閃存儲卡180,諸如CF(compactflash)、SD/MMC、microdrive、smartmedia、以及memorystick等快閃存儲卡(flashmemorycard)。圖2顯示近年來由微軟所力推的X-BOX游戲機(jī)200,可連接游戲鍵盤(gamepad)240,該游戲鍵盤240具有X-BOX平臺上所專用的裝置端USB插槽242,用以接受X-BOX平臺上所專用的X-BOX游戲存儲卡260,當(dāng)X-BOX游戲存儲卡260插入游戲鍵盤240上所專用的裝置端USB插槽242后,經(jīng)由X-BOX游戲機(jī)200進(jìn)行初始化后,便可對X-BOX游戲存儲卡260的內(nèi)容進(jìn)行讀寫動作,圖2同時顯示出X-BOX平臺上所專用的主機(jī)端USB連接器202以及裝置端USB插槽242的結(jié)構(gòu)。但由于X-BOX平臺上所專用的主機(jī)端USB連接器202以及裝置端USB插槽242是由微軟所特別規(guī)范,其硬件結(jié)構(gòu)與PC上USB連接器102的尺寸與結(jié)構(gòu)完全不同,而且X-BOX平臺與個人計算機(jī)平臺兩者間所使用的命令亦有差異,使得兩種平臺上的USB儲存裝置與存儲卡無法通用。(3)
發(fā)明內(nèi)容本發(fā)明的目的是提供一種存取PC與X-BOX雙平臺上的非揮發(fā)性存儲器的方法與相關(guān)裝置。本發(fā)明揭示一種存取PC平臺以及X-BOX平臺上的快閃存儲器的方法,包括初始化用以控制該快閃存儲器的控制器,該控制器具有USB傳輸接口;建立第一實體地址與邏輯地址的對照表,用以映像該快閃存儲器的第一部分;規(guī)劃該控制器;檢查是否發(fā)生事件;解析出主機(jī)端傳送給該控制器的標(biāo)記封包內(nèi)的起始邏輯地址,以響應(yīng)于該事件;以及當(dāng)該起始邏輯地址不存在于該第一實體地址與邏輯地址的對照表時,建立第二實體地址與邏輯地址的對照表,用以映像該快閃存儲器的第二部分。本發(fā)明亦揭示一種可跨PC平臺以及X-BOX平臺存取快閃存儲器的控制器,該控制器包含只讀存儲器、隨機(jī)存取存儲器以及微處理器,只讀存儲器內(nèi)預(yù)先燒錄有固件,而微處理器耦接該只讀存儲器及該隨機(jī)存取存儲器,其中該微處理器藉由該固件于該隨機(jī)存取存儲器中建立第一實體地址與邏輯地址的對照表以及第二實體地址與邏輯地址的對照表,分別用以映像該快閃存儲器的第一部分以及第二部分。本發(fā)明進(jìn)一步揭示一種USB儲存裝置,包含控制器以及USB連接器,該USB連接器可用以連接第一主機(jī),使得該第一主機(jī)可存取該USB儲存裝置;以及該USB連接器可用以連接一轉(zhuǎn)接器以連接第二主機(jī),使得該第二主機(jī)可存取該USB儲存裝置;其中該轉(zhuǎn)接器具有第一USB連接器以及第二USB連接器;較佳地,該第一主機(jī)是為一個人計算機(jī),而該第二主機(jī)是為X-BOX游戲鍵盤;而該USB儲存裝置,舉例而言,可為USB隨身碟、USB卡片閱讀機(jī)、或者USB硬盤機(jī)。(4)為使對本發(fā)明的有最佳的了解,以下列舉若干具體實施例并配合附圖進(jìn)行詳細(xì)說明,其中圖1是顯示現(xiàn)有個人計算機(jī)藉由一條USB延長線連接一臺USB卡片閱讀機(jī);圖2是顯示現(xiàn)有X-BOX游戲機(jī)藉由一條X-BOX專用USB延長線連接游戲鍵盤;圖3是顯示X-BOX游戲存儲卡中的電路方塊圖;圖4是顯示USB卡片閱讀機(jī)中的電路方塊圖;圖5是顯示根據(jù)本發(fā)明的一具體實施例的流程圖;圖6是顯示根據(jù)本發(fā)明的另一具體實施例的流程圖;圖7是顯示根據(jù)本發(fā)明的一轉(zhuǎn)接連接器的示意圖;圖8是顯示根據(jù)本發(fā)明的一具體實施例;圖9是顯示根據(jù)本發(fā)明的另一具體實施例的流程圖;圖10是顯示根據(jù)本發(fā)明的一轉(zhuǎn)接連接器的示意圖;以及圖11一是顯示根據(jù)本發(fā)明的一游戲鍵盤。(5)具體實施方式圖3是顯示X-BOX游戲存儲卡中的電路方塊圖,控制器300耦接快閃存儲器320、電子可擦去可編程只讀存儲器(EEPROM)340、以及X-BOX專用USB連接器360,X-BOX專用USB連接器360用以連接X-BOX游戲鍵盤,EEPROM340用以儲存控制器300用的基本設(shè)定,快閃存儲器320舉例來說大小為8M(1M=106)字節(jié)(bytes)??刂破?00內(nèi)具有只讀存儲器302、隨機(jī)存取存儲器304、以及微處理器(未圖示),只讀存儲器302內(nèi)則燒錄有控制器300所需的固件碼(firmware);由于控制器300直接控制快閃存儲器320的存取,因此控制器300內(nèi)必須自行建立實體地址與邏輯地址的對照表,方能對快閃存儲器320根據(jù)實體地址進(jìn)行存取。由于PC平臺與X-BOX平臺對USB裝置所下達(dá)的命令不同,使得兩種平臺所發(fā)展出來的USB儲存裝置并無法通用;PC平臺下,主機(jī)端(host)會向USB儲存裝置下達(dá)的命令群包含有Get_MAX_LUN、INQUIRY、TESTUNITREADY、PREVENTALLOWMEDIUMREVOVAL、READ_CAPACITY、READ(10)、以及WRITE(10)等等;而X-BOX平臺下,主機(jī)端會向USB儲存裝置下達(dá)的命令群包含有READ_CAPACITY、READ(10)、以及WRITE(10)等等。于圖3的實施例中,以快閃存儲器320為8M字節(jié)為例,包含1024個區(qū)塊(blocks),每個區(qū)塊具有16頁(pages),每一頁包含512字節(jié),由于快閃存儲器320的讀寫是以區(qū)塊為單位,因此由控制器300自行建立實體地址與邏輯地址的對照表共為1024字符組(words),對于PC平臺的命令群而言是沒有問題的;但為使相同的硬件與固件架構(gòu)跨越使用于X-BOX平臺之中,可以發(fā)現(xiàn)由微軟所推廣的X-BOX平臺下的命令群卻會有嚴(yán)格的限制,而容易發(fā)生嚴(yán)重死機(jī)的情形,舉例而言,主機(jī)端向USB儲存裝置下達(dá)的READ_CAPACITY命令會有約150毫秒(ms)的限制,亦即當(dāng)控制器300為8M字節(jié)的快閃存儲器320建立1024字符組的實體地址與邏輯地址的對照表時,需要一段頗長時間,READ_CAPACITY命令于150毫秒內(nèi)無法得到響應(yīng),致使主機(jī)端向USB儲存裝置下達(dá)重置(RESET)命令,使得USB儲存裝置無法與主機(jī)端形成聯(lián)機(jī)。其中,Get_MAX_LUN命令用以決定USB儲存裝置所支持的邏輯單元數(shù)量;INQUIRY命令用以決定SCSI總線上的組態(tài),目標(biāo)裝置(targetdevice)應(yīng)響應(yīng)其型別(type)、廠商ID(vendorID)、產(chǎn)品ID(productID)、USB等級以及其它相關(guān)信息;TESTUNITREADY命令允許發(fā)動器(initiator)詢問邏輯單元是否已經(jīng)準(zhǔn)備妥當(dāng),而無須配置空間給返回的數(shù)據(jù),特別適用于具有例如像是墨粉盒的可移除媒介(removablemedia);PREVENTALLOWMEDIUMREVOVAL命令允許發(fā)動器下達(dá)避免媒介被移除;READ_CAPACITY命令允許發(fā)動器要求邏輯單元的容量大小的信息;READ(10)命令將數(shù)據(jù)從目標(biāo)裝置讀回發(fā)動器;WRITE(10)命令將數(shù)據(jù)從發(fā)動器寫入目標(biāo)裝置。圖4是顯示用于PC平臺的卡片閱讀機(jī)的電路方塊圖,卡片閱讀機(jī)400包含控制器402、電子可擦去可編程只讀存儲器(EEPROM)404、PC平臺專用USB連接器406以及快閃存儲器連接器408,其中控制器402耦接EEPROM404、PC平臺專用USB連接器406以及快閃存儲器連接器408,PC平臺專用USB連接器406用以連接個人計算機(jī)420,快閃存儲器連接器408則連接快閃存儲卡440供卡片閱讀機(jī)400存取。控制器402內(nèi)具有只讀存儲器410、隨機(jī)存取存儲器412、以及微處理器(未圖示),只讀存儲器410內(nèi)則燒錄有控制器402所需的固件碼;由于快閃存儲卡440內(nèi)具有自己的控制單元(controlunit)442,因此控制器402只須下達(dá)存取指令,即能對快閃存儲卡440進(jìn)行存取,而無須自行建立實體地址與邏輯地址的對照表。根據(jù)圖3的X-BOX游戲存儲卡,圖5顯示根據(jù)本發(fā)明可存取PC與X-BOX雙平臺上非揮發(fā)性存儲器的方法流程圖;以存取快閃存儲器為例,步驟500為開始;步驟502初始化控制器300,例如將隨機(jī)存取存儲器304清空、將電壓拉升至3.3伏、以及自EEPROM340加載基本設(shè)定等等;步驟504,控制器300先建立第一實體地址與邏輯地址的對照表,舉例而言,先建立512字符組的第一實體地址與邏輯地址的對照表;步驟506為規(guī)劃USB儲存裝置,之后會對此步驟做更詳細(xì)說明;于步驟508中,固件檢查是否有事件(event)發(fā)生,若是則進(jìn)行到步驟510,若否則持續(xù)停留于步驟508;步驟510是解析(parse)主機(jī)端傳送來的一標(biāo)記封包(tokenpacket),并取得所需要的信息,例如主機(jī)端所欲存取數(shù)據(jù)的起始邏輯地址、要進(jìn)行數(shù)據(jù)的讀取或者寫入、以及數(shù)據(jù)大小等等;步驟512是根據(jù)所欲存取數(shù)據(jù)的起始邏輯地址決定是否可于第一對照表中找到對應(yīng)的實體地址;若可找到對應(yīng)的實體地址,則執(zhí)行步驟514,由步驟510所取得的信息決定要進(jìn)行數(shù)據(jù)的讀取或者寫入;若為數(shù)據(jù)的讀取,則執(zhí)行步驟516,步驟516根據(jù)先前所取得的實體地址將數(shù)據(jù)由快閃存儲器320讀出送給主機(jī)端;若為數(shù)據(jù)的寫入,則執(zhí)行步驟518,步驟518則根據(jù)先前所取得的實體地址將主機(jī)端的數(shù)據(jù)寫入快閃存儲器320;不論是數(shù)據(jù)的寫入或讀取的動作完成后,皆回到步驟508中,由固件繼續(xù)檢查是否有事件發(fā)生。于步驟512中,若無法根據(jù)所欲存取數(shù)據(jù)的起始邏輯地址于第一對照表中找到對應(yīng)的實體地址,則執(zhí)行步驟528,檢查是否存在第二實體地址與邏輯地址的對照表,若不存在則由步驟530建立,于此實施例中,較佳地可建立一個256字符組的第二實體地址與邏輯地址的對照表,然后繼續(xù)執(zhí)行步驟514;若已經(jīng)存在第二實體地址與邏輯地址的對照表,則執(zhí)行步驟532,根據(jù)所欲存取數(shù)據(jù)的起始邏輯地址決定是否可于第二對照表中找到對應(yīng)的實體地址,若可找到對應(yīng)的實體地址,則執(zhí)行步驟514;若仍無法于第二對照表中找到對應(yīng)的實體地址,則步驟534更新第二對照表的內(nèi)容,然后執(zhí)行步驟514。根據(jù)以上揭示的建立第一以及第二實體地址與邏輯地址的對照表的架構(gòu),將有利于將同一固件架構(gòu)同時適用于PC平臺與X-BOX平臺。接下來將說明USB儲存裝置如何判斷目前是處于PC平臺或者X-BOX平臺,就此具體實施例而言,可于步驟506中進(jìn)行判斷;步驟506為規(guī)劃USB儲存裝置,進(jìn)一步包含的步驟是如圖6所示,就USB儲存裝置儲存裝置而言,除了USB類的一般命令(USBgeneralcommands)之后,會跟隨USB儲存類別命令(USBstorageclasscommands);USB類的一般命令包含步驟600、602、以及604,步驟600由主機(jī)端向USB裝置取得裝置描述符(發(fā)布Get_Device_Desc命令),主機(jī)端可獲得USB裝置的廠商ID(vendorID)、產(chǎn)品ID(productID)以及USB等級等等;步驟602由主機(jī)端向USB裝置設(shè)定地址(下達(dá)Set_Addr命令);步驟604由主機(jī)端向USB裝置取得組態(tài)數(shù)據(jù)(下達(dá)Get_Configuration_Desc命令),組態(tài)數(shù)據(jù)包括組態(tài)描述符(configurationdescriptor)、接口(Interface)描述符、以及端點(Endpoint)描述符,至此,主機(jī)端可以知道此USB裝置是為USB儲存類別裝置;于步驟606,USB儲存裝置則藉由組態(tài)數(shù)據(jù)中的接口描述符內(nèi)的bInterfaceSubClass字段進(jìn)行判斷處于何種平臺,若bInterfaceSubClass為06,表示USB儲存裝置目前連接至PC平臺;若bInterfaceSubClass為42,表示USB儲存裝置目前連接至X-BOX平臺;根據(jù)不同平臺,分別于步驟608以及步驟612進(jìn)行對應(yīng)的設(shè)定組態(tài)(Set_Configuration命令);當(dāng)然,因為主機(jī)端也已經(jīng)知道此USB裝置是為USB儲存類別裝置,分別于步驟610以及步驟614發(fā)出對應(yīng)平臺的SCSI命令;步驟610是PC主機(jī)向USB儲存裝置發(fā)出Get_MAX_LUN、INQUIRY、TESTUNITREADY、PREVENTALLOWMEDIUMREVOVAL、READ_CAPACITY、READ(10)、以及WRITE(10)等SCSI命令;而步驟614是X-BOX主機(jī)向USB儲存裝置發(fā)出READ_CAPACITY、READ(10)、以及WRITE(10)等SCSI命令?;仡檲D2中所使用的X-BOX游戲存儲卡260,當(dāng)內(nèi)部的控制器實施如圖5與圖6的跨雙平臺存儲器存取架構(gòu)時,只須藉由轉(zhuǎn)接器的轉(zhuǎn)接,于PC平臺上則可當(dāng)作隨身碟來使用,因此,本發(fā)明的相關(guān)轉(zhuǎn)接器(adaptor)是如圖7所示,包含PC平臺的USB連接頭700、信號連接線710以及X-BOX平臺的裝置端USB插槽720,使用者將X-BOX游戲存儲卡插接于X-BOX平臺的裝置端USB插槽720,并將PC平臺的USB連接頭700插接于PC主機(jī),則可將X-BOX游戲存儲卡當(dāng)作隨身碟來使用,當(dāng)然此轉(zhuǎn)接器也可不需要信號連接線710而成為一雙接頭的轉(zhuǎn)接器,一端提供PC平臺的USB連接頭700,另一端提供X-BOX平臺的裝置端USB插槽720;兩種平臺的USB連接頭除了結(jié)構(gòu)上不同外,其皆具有四條線D+、D-、PWR、GND,而X-BOX平臺的USB信號多一條保留信號,目前并無用途,其中D+以及D-用來傳輸差動信號,PWR以及GND分別提供電源以及接地;因此本發(fā)明的轉(zhuǎn)接器提供兩種平臺的USB連接頭轉(zhuǎn)換,其內(nèi)部的四條信號線則進(jìn)行對應(yīng)連接。圖8顯示本發(fā)明的另一具體實施例,并參考圖3的硬件架構(gòu),就存儲器使用的角度而言,本發(fā)明可就圖5所揭示的流程做進(jìn)一步的效能改善。以32M字節(jié)的快閃存儲器800為例,其中快閃存儲器800是代表圖3中快閃存儲器320的整個邏輯映像圖,由上而下代表地址由低而高,依序包含了快閃存儲器空間801、802、803、804、805、806以及807等等;類似圖5的流程,于USB儲存裝置剛開始使用時,固件依序于控制器300內(nèi)的隨機(jī)存取存儲器304內(nèi)建立512字符組的第一實體地址與邏輯地址的對照表810以及256字符組的第二實體地址與邏輯地址的對照表820,以分別對照4M字節(jié)的快閃存儲器空間801以及2M字節(jié)的快閃存儲器空間802??勺⒁獾剑扉W存儲器320的讀寫時間相當(dāng)慢,因此可以利用往后讀寫快閃存儲器空間801以及802的期間,于控制器300內(nèi)的隨機(jī)存取存儲器304內(nèi)預(yù)先建立第三實體地址與邏輯地址的對照表830來映像快閃存儲器空間803,舉例而言為256字符組。應(yīng)注意到,最早先第二實體地址與邏輯地址的對照表820亦可利用存取快閃存儲器空間801的期間預(yù)先建立。而往后第一實體地址與邏輯地址的對照表810較佳地為一直保留,因為其映像到快閃存儲器的最低地址部份,包含有重要的文件配置表(fileallocationtable,簡稱FAT),于往后的存取時會常常使用到。接下來,當(dāng)開始使用第三實體地址與邏輯地址的對照表830時,則利用存取快閃存儲器空間801以及803的期間更新第二實體地址與邏輯地址的對照表820的內(nèi)容,以映像快閃存儲器空間804,如此交替輪換以存取整個快閃存儲器800。圖9揭示根據(jù)本發(fā)明的另一具體實施例的流程圖,并參考圖4的用于PC平臺的USB卡片閱讀機(jī)的電路方塊圖,由于快閃存儲卡440內(nèi)具有自己的控制單42,因此控制器402只須下達(dá)存取指令,即能對快閃存儲卡440進(jìn)行存取,而無須自行建立實體地址與邏輯地址的對照表。一般而言,當(dāng)控制器402向快閃存儲卡440下達(dá)重置(reset)命令時,之后會向快閃存儲卡440要求容量信息以及每一頁的大小,執(zhí)行這些動作極費(fèi)時間。但為使相同的硬件與固件架構(gòu)跨越使用于X-BOX平臺之中,可以發(fā)現(xiàn)由微軟所推廣的X-BOX平臺下的命令群卻會有嚴(yán)格的限制,而容易發(fā)生嚴(yán)重死機(jī)的情形,舉例而言,主機(jī)端向USB儲存裝置下達(dá)的READ_CAPACITY命令會有約150毫秒(ms)的限制,前述動作若未適當(dāng)?shù)卦O(shè)計,易使主機(jī)端向USB儲存裝置重復(fù)地下達(dá)重置命令,使得USB卡片閱讀機(jī)無法與主機(jī)端形成聯(lián)機(jī)。于圖9中,一開始步驟900先初始化快閃存儲卡440,以避開后面X-BOX平臺之中會有限制嚴(yán)格的命令群;步驟902由主機(jī)端向USB卡片閱讀機(jī)取得裝置描述符(發(fā)布Get_Device_Desc命令),主機(jī)端可獲得USB卡片閱讀機(jī)的廠商ID、產(chǎn)品ID以及USB等級...等等;步驟904由主機(jī)端向USB裝置設(shè)定地址(下達(dá)Set_Addr命令);步驟906由主機(jī)端向USB卡片閱讀機(jī)取得組態(tài)數(shù)據(jù)(下達(dá)Get_Configuration_Desc命令),組態(tài)數(shù)據(jù)包括組態(tài)描述符(configurationdescriptor)、接口(Interface)描述符、以及端點(Endpoint)描述符,至此,主機(jī)端可以知道此USB卡片閱讀機(jī)是為USB儲存類別裝置;于步驟908,USB卡片閱讀機(jī)可藉由是否收到Get_MAX_LUN命令,舉例而言,判斷USB卡片閱讀機(jī)目前處于哪一種平臺;若收到Get_MAX_LUN命令,表示USB卡片閱讀機(jī)目前處于PC平臺,于步驟910執(zhí)行設(shè)定組態(tài),并于步驟912將USB卡片閱讀機(jī)與PC主機(jī)進(jìn)行連接;若未收到Get_MAX_LUN命令,表示USB卡片閱讀機(jī)目前處于X-BOX平臺,于步驟914執(zhí)行設(shè)定組態(tài),并于步驟916將USB卡片閱讀機(jī)與X-BOX主機(jī)進(jìn)行連接。應(yīng)注意到,亦可藉由是否收到INQUIRY、TESTUNITREADY、或者PREVENTALLOWMEDIUMREVOVAL,判斷USB儲存裝置目前處于哪一種平臺。圖10進(jìn)一步顯示一種轉(zhuǎn)接器,包含X-BOX平臺的裝置端USB連接頭1010、信號連接線1020以及PC平臺的裝置端USB連接頭1030,使用者將PC平臺的USB卡片閱讀機(jī)插接于PC平臺的裝置端USB連接頭1030,并將X-BOX平臺的裝置端USB連接頭1010插接于X-BOX游戲鍵盤上,則可將PC平臺的USB卡片閱讀機(jī)使用于X-BOX平臺上,使得使用者可以將各種PC平臺的快閃存儲卡,包括CF(compactflash)、SD/MMC、smartmedia、以及memorystick等快閃存儲卡,用來儲存X-BOX游戲機(jī)的游戲文件;當(dāng)然此轉(zhuǎn)接器也可不需要信號連接線1020而成為一雙接頭的轉(zhuǎn)接器,一端提供PC平臺的裝置端USB連接頭1030,另一端提供X-BOX平臺的裝置端USB連接頭1010;兩種平臺的USB連接頭除了結(jié)構(gòu)上不同外,其皆具有四條線D+、D-、PWR、GND,而X-BOX平臺的USB信號多一條保留信號,目前并無用途,其中D+以及D-用來傳輸差動信號,PWR以及GND分別提供電源以及接地,將其內(nèi)部的四條信號線則進(jìn)行對應(yīng)連接。或者,亦可將本發(fā)明的PC平臺的USB儲存裝置配合適當(dāng)?shù)霓D(zhuǎn)接器(未圖示)插接于X-BOX主機(jī)上進(jìn)行跨平臺的存取。更進(jìn)一步地,圖11一顯示根據(jù)本發(fā)明的一游戲鍵盤,游戲鍵盤包含一鍵盤本體1110、一連接線1120、以及一USB連接器1130,于一較佳具體實施例中,該游戲鍵盤藉由該USB連接器1130連接至一X-BOX游戲機(jī),或者可經(jīng)由適當(dāng)?shù)霓D(zhuǎn)接器,連接至一個人計算機(jī);該鍵盤本體1110包含一X-BOX平臺USB插槽1112以及一快閃存儲卡的插槽1114,該X-BOX平臺USB插槽1112可用以插置一般的X-BOX游戲卡、X-BOX耳機(jī)等等,而該快閃存儲卡的插槽1114較佳地為CF卡的插槽,可用以插置一CF卡并進(jìn)行存取,其它種類的快閃存儲卡,包括SD/MMC、microdrive、smartmedia、以及memorystick等快閃存儲卡,則可另經(jīng)由適當(dāng)?shù)拇鎯ń涌谵D(zhuǎn)接器(未示)而插入該快閃存儲卡的插槽1114,并對該快閃存儲卡進(jìn)行存?。豢扉W存儲卡的插槽1114可以方便使用者取代以往使用的X-BOX游戲卡,并將市面上方便購得的快閃存儲卡彈性使用于個人計算機(jī)平臺以及X-BOX平臺;另外,由于游戲鍵盤會震動,一體成型的設(shè)計更可改善外接式卡片閱讀機(jī)可能發(fā)生脫落的缺點??v上所述,本發(fā)明揭示一種存取PC平臺以及X-BOX平臺上的一快閃存儲器的方法,初始化一用以控制該快閃存儲器的控制器,該控制器具有一USB傳輸接口;建立一第一實體地址與邏輯地址的對照表,用以映像該快閃存儲器的一第一部分;規(guī)劃該控制器;檢查是否發(fā)生一事件;解析出一主機(jī)端傳送給該控制器的一標(biāo)記封包內(nèi)的一起始邏輯地址,以響應(yīng)于該事件;以及建立一第二實體地址與邏輯地址的對照表,用以映像該快閃存儲器的一第二部分,其當(dāng)該起始邏輯地址不存在于該第一實體地址與邏輯地址的對照表時。本發(fā)明亦揭示一種可跨PC平臺以及X-BOX平臺存取一快閃存儲器的控制器,該控制器包含只讀存儲器、隨機(jī)存取存儲器以及微處理器,只讀存儲器內(nèi)預(yù)先燒錄有固件,而微處理器耦接該只讀存儲器及該隨機(jī)存取存儲器,其中該微處理器藉由該固件于該隨機(jī)存取存儲器中建立一第一實體地址與邏輯地址的對照表以及一第二實體地址與邏輯地址的對照表,分別用以映像該快閃存儲器的一第一部分以及一第二部分。本發(fā)明進(jìn)一步揭示一種USB儲存裝置,包含控制器以及USB連接器,該USB連接器可用以連接第一主機(jī),使得該第一主機(jī)可存取該USB儲存裝置;以及該USB連接器可用以連接一轉(zhuǎn)接器以連接第二主機(jī),使得該第二主機(jī)可存取該USB儲存裝置;其中該轉(zhuǎn)接器具有第一USB連接器以及第二USB連接器;較佳地,該第一主機(jī)是為一個人計算機(jī),而該第二主機(jī)是為一X-BOX游戲鍵盤;而該USB儲存裝置,舉例而言,可為USB隨身碟、USB卡片閱讀機(jī)、USB硬盤機(jī)。以上所揭示的具體實施例的說明及圖式,是為便于闡明本發(fā)明的技術(shù)內(nèi)容及技術(shù)手段,并不欲拘限本發(fā)明的范疇;舉例而言,應(yīng)注意到圖3以及圖4顯示的電路方塊圖中,EEPROM是可以整合至控制器本身之中。凡是一切針對本發(fā)明的結(jié)構(gòu)細(xì)部的變更,或者是組件的等效替代、置換,當(dāng)不脫離本發(fā)明的發(fā)明精神及范疇,其范圍將由以下的權(quán)利要求來界定。權(quán)利要求1.一種存取PC平臺以及X-BOX平臺上的一非揮發(fā)性存儲器的方法,包含下列步驟初始化一用以控制該非揮發(fā)性存儲器的控制器,該控制器具有一USB傳輸接口;建立一第一實體地址與邏輯地址的對照表,用以映像該非揮發(fā)性存儲器的一第一部分;規(guī)劃該控制器;檢查是否發(fā)生一事件;解析出一主機(jī)端傳送給該控制器的一標(biāo)記封包內(nèi)的一起始邏輯地址,以響應(yīng)于該事件;以及當(dāng)該起始邏輯地址不存在于該第一實體地址與邏輯地址的對照表時,建立一第二實體地址與邏輯地址的對照表,用以映像該非揮發(fā)性存儲器的一第二部分。2.如權(quán)利要求1所述的方法,其特征在于,還包括下列步驟當(dāng)該起始邏輯地址存在于該第一實體地址與邏輯地址的對照表時,由該第一實體地址與邏輯地址的對照表映像出一實體地址,并由該控制器存取該非揮發(fā)性存儲器以響應(yīng)于該標(biāo)記封包以及該實體地址。3.如權(quán)利要求1所述的方法,還包括下列步驟當(dāng)該起始邏輯地址不存在于該第一實體地址與邏輯地址的對照表時,由該第二實體地址與邏輯地址的對照表映像出一實體地址,并由該控制器存取該非揮發(fā)性存儲器以響應(yīng)于該標(biāo)記封包以及該實體地址。4.如權(quán)利要求1所述的方法,其特征在于,該第一實體地址與邏輯地址的對照表是大于該第二實體地址與邏輯地址的對照表。5.如權(quán)利要求1所述的方法,其特征在于,還包括下列步驟當(dāng)該起始邏輯地址不存在于該第一實體地址與邏輯地址的對照表以及該第二實體地址與邏輯地址的對照表時,更新該第二實體地址與邏輯地址的對照表,用以映像該非揮發(fā)性存儲器的一第三部分。6.如權(quán)利要求5所述的方法,其特征在于,還包括下列步驟由該更新后的第二實體地址與邏輯地址的對照表映像出一實體地址,并由該控制器存取該非揮發(fā)性存儲器以響應(yīng)于該標(biāo)記封包以及該實體地址。7.一種存取PC平臺以及X-BOX平臺上的一快閃存儲器的方法,包含下列步驟初始化一用以控制該快閃存儲器的控制器;建立一第一實體地址與邏輯地址的對照表于該控制器之中,用以映像該快閃存儲器的一第一部分;接收一具有一起始邏輯地址的標(biāo)記封包;建立一第二實體地址與邏輯地址的對照表于該控制器之中,用以映像該快閃存儲器的一第二部分;建立一第三實體地址與邏輯地址的對照表于該控制器之中,用以映像該快閃存儲器的一第三部分;根據(jù)該第一實體地址與邏輯地址的對照表、該第二實體地址與邏輯地址的對照表以及該第三實體地址與邏輯地址的對照表映像出一實體地址,以響應(yīng)于該起始邏輯地址;以及由該控制器存取該快閃存儲器,以響應(yīng)于該標(biāo)記封包以及該實體地址。8.一種USB儲存裝置,包含一控制器以及一USB連接器,該USB連接器可用以連接一第一主機(jī),使得該第一主機(jī)可存取該USB儲存裝置;以及該USB連接器可用以連接一轉(zhuǎn)接器以連接一第二主機(jī),使得該第二主機(jī)可存取該USB儲存裝置。9.一種可跨PC平臺以及X-BOX平臺存取一快閃存儲器的控制器,該控制器包含一只讀存儲器,預(yù)先燒錄有一固件;一隨機(jī)存取存儲器;以及一微處理器,耦接該只讀存儲器及該隨機(jī)存取存儲器;其中該微處理器藉由該固件于該隨機(jī)存取存儲器中建立一第一實體地址與邏輯地址的對照表以及一第二實體地址與邏輯地址的對照表,分別用以映像該快閃存儲器的一第一部分以及一第二部分。10.一種X-BOX平臺的游戲鍵盤,該游戲鍵盤包含一鍵盤本體,具有一X-BOX平臺USB插槽以及一快閃存儲卡的插槽;一USB連接器;以及一連接線,用以連接該鍵盤本體以及該USB連接器;其中該游戲鍵盤可經(jīng)由該X-BOX平臺USB插槽存取一X-BOX游戲卡,以及該游戲鍵盤可經(jīng)由該快閃存儲卡的插槽而存取一快閃存儲卡。全文摘要一種存取PC平臺以及X-BOX平臺上的非揮發(fā)性存儲器的方法,以存取快閃存儲器為例,包含初始化快閃存儲器的控制器,該控制器具有USB傳輸接口;建立第一實體地址與邏輯地址的對照表,以映像該快閃存儲器的第一部分;規(guī)劃該控制器;檢查是否發(fā)生事件;解析出主機(jī)端傳送給該控制器的標(biāo)記封包內(nèi)的起始邏輯地址,以響應(yīng)于該事件;建立第二實體地址與邏輯地址的對照表,用以映像該快閃存儲器的第二部分。一種USB儲存裝置,包含控制器以及USB連接器,該USB連接器用以連接第一主機(jī),使第一主機(jī)可存取該USB儲存裝置;以及該USB連接器用以連接一轉(zhuǎn)接器以連接第二主機(jī),使該第二主機(jī)可存取該USB儲存裝置;其中該轉(zhuǎn)接器具有第一USB連接器以及第二USB連接器。文檔編號G06F12/08GK1567251SQ0314297公開日2005年1月19日申請日期2003年6月13日優(yōu)先權(quán)日2003年6月13日發(fā)明者賴睿揚(yáng),殷欣靖申請人:創(chuàng)惟科技股份有限公司