TWI413898B - 資料保護方法與系統、儲存裝置及儲存裝置控制器 - Google Patents
資料保護方法與系統、儲存裝置及儲存裝置控制器 Download PDFInfo
- Publication number
- TWI413898B TWI413898B TW098131096A TW98131096A TWI413898B TW I413898 B TWI413898 B TW I413898B TW 098131096 A TW098131096 A TW 098131096A TW 98131096 A TW98131096 A TW 98131096A TW I413898 B TWI413898 B TW I413898B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- storage device
- host
- device controller
- action
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00731—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
- G11B20/00833—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction limits the data access speed, e.g. by defining a maximum bit rate of the I/O interface
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00681—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which prevent a specific kind of data access
- G11B20/00695—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which prevent a specific kind of data access said measures preventing that data are read from the recording medium
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
- G11B2020/10675—Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
- G11B2020/10694—Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control output interface, i.e. the way data leave the buffer, e.g. by adjusting the clock rate
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
- G11B2020/1075—Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data
- G11B2020/10759—Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data content data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B2020/10833—Copying or moving data from one record carrier to another
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B2020/10935—Digital recording or reproducing wherein a time constraint must be met
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B2020/10935—Digital recording or reproducing wherein a time constraint must be met
- G11B2020/10944—Real-time recording or reproducing, e.g. for ensuring seamless playback of AV data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/17—Card-like record carriers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
本發明是有關於一種資料保護的方法與系統,且特別是有關於一種用以避免主機隨意複製儲存裝置中的資料的資料保護方法、系統,以及儲存裝置與儲存裝置控制器。
隨著科技的蓬勃發展,現今的儲存媒體除了要兼顧高儲存容量之外,攜帶便利性也是消費者在選擇產品時的參考要因。當具有隨插即用以及熱插拔等特性的隨身碟問世之後,原本經常被用來儲存與傳輸資料的3.5吋軟碟(floppy disk)及光碟片等儲存媒體,也分別因為容量過小以及資料更新不便等缺點而隨之式微。
反觀隨身碟不僅外型輕薄短小易於攜帶,且只要電腦系統具備與其相容的傳輸介面,那麼不論是要將資料寫入隨身碟亦或是讀取隨身碟中的資料均十分方便。此外,快閃記憶體的興起也讓隨身碟的儲存容量跟著大幅提高,現代人也越來越習慣利用隨身碟儲存各式資料,使得資料流通變的更加便利。舉例來說,許多使用者習慣利用隨身碟存放影音檔案,進而在私人電腦或公用電腦均能方便地聆聽觀賞喜愛的影音檔案。
然而不難想見的是,正因為隨身碟具備攜帶方便以及資料容易複製的優點,無形中導致所儲存的資料很可能被輕易地複製到電腦系統。特別是對具有版權的商品來說,易於被非法複製無疑會對著作權權利人造成極大的侵害。
本發明提供一種資料保護方法,以避免儲存裝置中的資料被隨意複製到主機。
本發明提供一種資料保護系統,提高主機複製儲存裝置中的資料的難度。
本發明提供一種儲存裝置,能確保所儲存的資料無法被主機輕易拷貝。
本發明提供一種儲存裝置控制器,用以有效地控制儲存裝置,以避免儲存裝置所儲存的資料被隨意複製到主機。
本發明提出一種資料保護方法,用以在主機存取儲存裝置中的資料時對資料進行保護。此方法首先判別主機對資料進行的是播放動作或複製動作。當判定為播放動作時,儲存裝置繼續執行播放動作,以允許主機存取資料。而當判定為複製動作時,儲存裝置執行一干擾程序,以防止或減緩資料被複製到主機。
在本發明之一範例實施例中,其中判別主機對資料進行的是播放動作或複製動作的步驟包括根據儲存裝置之資料流出量判斷主機進行的是播放動作或複製動作,其中資料流出量可以是在一特定時段所量測到的資料流量值,或是在一特定時間間隔內所量測到的資料流量平均值。
在本發明之一範例實施例中,其中根據資料流出量判斷主機進行的是播放動作或複製動作的步驟包括定義流速閾值,並在特定時間間隔之內每隔一採樣時距量測一次儲存裝置的資料流出量。其中,特定時間間隔大於採樣時距。接著,利用在特定時間間隔內所量測之所有資料流出量計算平均流速。若平均流速小於流速閾值,則判定主機對資料進行播放動作。然而若平均流速大於或等於流速閾值,則判定主機對資料進行複製動作。
在本發明之一範例實施例中,其中定義流速閾值的步驟包括根據預設檔案格式的種類或儲存裝置之傳輸介面來定義流速閾值。
在本發明之一範例實施例中,其中儲存裝置的儲存單元至少部份被劃分為多個存放空間,各存放空間個別對應一流速標準,且資料係位於其中一個存放空間。定義流速閾值的步驟包括以資料所位於之存放空間所對應的流速標準作為流速閾值。
在本發明之一範例實施例中,其中在判別主機對資料進行的是播放動作或複製動作之前,更包括儲存在預定時段內儲存裝置執行過的至少一主機指令或主機指令所對應的指令資訊。而指令資訊至少包括主機指令的種類以及主機指令所處理的資料長度。
在本發明之一範例實施例中,其中判別主機對資料進行的是播放動作或複製動作的步驟包括計數在單位時間內主機傳送至儲存裝置之讀取指令的總數,並依據總數來判定主機進行的是播放動作該複製動作。舉例來說,若總數大於或等於預定值,則判定主機進行的是播放動作。若總數小於預定值,則判定主機進行的是複製動作。
在本發明之一範例實施例中,其中判別主機對資料進行的是播放動作或複製動作的步驟包括取得主機連續傳送至儲存裝置的多個讀取指令。當上述讀取指令的總數大於或等於預定數量且上述讀取指令個別對應的讀取資料長度皆大於預定長度,則判定主機進行的是複製動作。
在本發明之一範例實施例中,其中判別主機對資料進行的是播放動作或複製動作的步驟包括根據主機與儲存裝置之間的傳輸介面種類,定義一第一資料量與一第二資料量。其中,第二資料量大於第一資料量。當主機要求的資料讀取量與第一資料量之間的差值小於資料讀取量與第二資料量之間的差值時,判定主機進行的是播放動作。而當資料讀取量與第一資料量之間的差值大於資料讀取量與第二資料量之間的差值時,則判定主機進行的是複製動作。其中,資料讀取量可以是單一個讀取指令所要求讀讀的資料量,或是多個讀取指令各別要求讀取之資料量的平均值。
在本發明之一範例實施例中,其中干擾程序包括將一訊息回報至主機。上述訊息至少包括下列其中之一:儲存媒體更動中(media alternative)訊息、讀取失敗訊息、資料循環冗餘檢查碼(Cyclic Redundancy Check,CRC)錯誤訊息、錯誤校正碼(Error-Correcting Code,ECC)錯誤訊息,以及儲存媒體不存在訊息。
在本發明之一範例實施例中,其中干擾程序包括執行無窮迴圈以進入當機狀態。
在本發明之一範例實施例中,其中干擾程序包括依照預設速度將資料傳送至主機。
在本發明之一範例實施例中,其中儲存裝置執行干擾程序的步驟更包括在一預定干擾時間內執行干擾程序。而當經過預定干擾時間後,繼續判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,其中判別主機對資料進行的是播放動作或複製動作的步驟更包括先判斷主機所存取的資料是否屬於系統資料。若資料不屬於系統資料,才判別主機對資料進行的是播放動作或複製動作。而舉例來說,可根據資料的邏輯位址判斷是否為系統資料。
在本發明之一範例實施例中,其中判別主機對資料進行的是播放動作或複製動作的步驟更包括定義一緩衝時間。在經過緩衝時間後,才判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,其中判別主機對資料進行的是播放動作或複製動作的步驟更包括先判斷主機所存取的資料是否位於儲存裝置之儲存單元的特定存放空間。若資料位於特定存放空間,才判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,其中儲存裝置為主機的外接式儲存裝置。
從另一觀點來看,本發明提出一種資料保護系統,此系統包括主機及儲存裝置。其中,儲存裝置包括儲存單元與儲存裝置控制器。儲存單元係用以儲存資料,而儲存裝置控制器耦接至儲存單元。當主機耦接儲存裝置以存取資料時,儲存裝置控制器判別主機對資料進行的是播放動作或複製動作。當判定為播放動作時,儲存裝置繼續執行播放動作,以允許主機存取資料。當判定為複製動作時,儲存裝置執行一干擾程序,以防止或減緩資料被複製到主機。
在本發明之一範例實施例中,其中儲存裝置控制器根據儲存裝置之資料流出量,判斷主機進行的是播放動作或複製動作。其中,資料流出量可以是在特定時段所量測到的資料流量值,或是在一特定時間間隔內所量測到的資料流量平均值。
在本發明之一範例實施例中,其中儲存裝置控制器定義一流速閾值,並在特定時間間隔內每隔一採樣時距量測一次儲存裝置的資料流出量,以及利用在特定時間間隔內所量測之所有資料流出量計算平均流速,其中特定時間間隔大於採樣時距。儲存裝置控制器在平均流速小於流速閾值時,判定主機對資料進行播放動作,而在平均流速大於或等於流速閾值時,判定主機對資料進行複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器係根據預設檔案格式的種類或儲存裝置之傳輸介面來定義流速閾值。
在本發明之一範例實施例中,其中儲存單元至少部份更包括多個存放空間,各存放空間個別對應一流速標準,且資料位於其中一個存放空間。而儲存裝置控制器是以資料所位於之存放空間對應的流速標準作為流速閾值。
在本發明之一範例實施例中,其中儲存裝置更包括儲存元件,用以儲存一預定時段內,儲存裝置執行過的至少一主機指令或主機指令所對應的指令資訊,而指令資訊至少包括下列其中之一:主機指令的種類及主機指令所處理的資料長度。
在本發明之一範例實施例中,其中儲存裝置控制器計數在單位時間內主機傳送至儲存裝置之讀取指令的總數,並依據總數判定主機進行的是播放動作或複製動作。例如,若總數大於或等於預定值,則判定主機進行的是播放動作。若總數小於預定值,則判定主機進行的是複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器取得主機連續傳送至儲存裝置的多個讀取指令,當上述讀取指令的總數大於或等於一預定數量且上述讀取指令個別對應的讀取資料長度皆大於預定長度,則判定主機進行的是複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器根據主機與儲存裝置之間的傳輸介面種類定義第一資料量與第二資料量,其中第二資料量大於第一資料量。儲存裝置控制器在主機要求的資料讀取量與第一資料量之間的差值小於資料讀取量與第二資料量之間的差值時,判定主機進行的是播放動作,而在資料讀取量與第一資料量之間的差值大於資料讀取量與第二資料量之間的差值時,判定主機進行的是複製動作。其中,資料讀取量可以是單一個讀取指令所要求讀取的資料量,或是多個讀取指令各別要求讀取之資料量的平均值。
在本發明之一範例實施例中,其中干擾程序包括回報一訊息至主機,而訊息至少包括下列其中之一:儲存媒體更動中訊息、讀取失敗訊息、資料循環冗餘檢查碼錯誤訊息、錯誤校正碼錯誤訊息,以及儲存媒體不存在訊息。
在本發明之一範例實施例中,其中干擾程序包括執行無窮迴圈以進入當機狀態。
在本發明之一範例實施例中,其中干擾程序包括依照一預設速度將資料傳送至主機。
在本發明之一範例實施例中,其中儲存裝置在一預定干擾時間內執行干擾程序。當經過預定干擾時間後,儲存裝置控制器繼續判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器判斷主機所存取的資料是否屬於系統資料。若資料不屬於系統資料,儲存裝置控制器才判別主機對資料進行的是播放動作或複製動作。而儲存裝置控制器例如是根據資料的邏輯位址判斷其是否為系統資料。
在本發明之一範例實施例中,其中儲存裝置控制器定義一緩衝時間。在經過緩衝時間後,儲存裝置控制器才判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器判斷主機所存取的資料是否位於儲存單元中的特定存放空間。若資料位於特定存放空間,儲存裝置控制器才判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,儲存單元為快閃記憶體,而儲存裝置為主機的外接式儲存裝置。
從又一觀點來看,本發明提出一種外接式儲存裝置,包括連接器、儲存單元以及儲存裝置控制器。其中,儲存單元用以儲存資料。儲存裝置控制器耦接至連接器與儲存單元。當主機透過連接器耦接至外接式儲存裝置以存取資料時,儲存裝置控制器判別主機對資料進行的是播放動作或複製動作。當判定為播放動作時,外接式儲存裝置繼續執行播放動作,以允許主機存取資料。而當判定為複製動作時,外接式儲存裝置執行一干擾程序,以防止或減緩資料被複製到主機。
在本發明之一範例實施例中,其中儲存裝置控制器根據外接式儲存裝置之資料流出量判斷主機進行的是播放動作或複製動作。而資料流出量可以是在特定時段所量測到的資料流量值,或是在一特定時間間隔內所量測到的資料流量平均值。
在本發明之一範例實施例中,其中儲存裝置控制器定義一流速閾值,並在特定時間間隔內每隔一採樣時距量測一次外接式儲存裝置的資料流出量,以及利用特定時間間隔內所量測之所有資料流出量計算平均流速,其中特定時間間隔大於採樣時距。儲存裝置控制器在平均流速小於流速閾值時,判定主機對資料進行播放動作,而在平均流速大於或等於流速閾值時,判定主機對資料進行複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器係根據預設檔案格式的種類或外接式儲存裝置之傳輸介面定義流速閾值。
在本發明之一範例實施例中,其中儲存單元至少部份更包括多個存放空間,各存放空間個別對應一流速標準,且資料位於其中之一存放空間。儲存裝置控制器是以資料所位於之存放空間對應的流速標準作為流速閾值。
在本發明之一範例實施例中,此外接式儲存裝置更包括一儲存元件,用以儲存一預定時段內,外接式儲存裝置執行過的至少一主機指令或主機指令所對應的指令資訊。而指令資訊至少包括下列其中之一:主機指令的種類與主機指令所欲處理的資料長度。
在本發明之一範例實施例中,其中儲存裝置控制器計數在單位時間內主機傳送至外接式儲存裝置之讀取指令的總數,並依據總數判定主機進行的是播放動作或複製動作。舉例而言,若總數大於或等於預定值,則判定主機進行的是播放動作,若總數小於預定值則判定主機進行的是複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器取得主機連續傳送至外接式儲存裝置的多個讀取指令,當上述讀取指令的總數大於或等於預定數量且上述讀取指令個別對應的讀取資料長度皆大於預定長度,則判定主機進行的是複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器根據連接器的傳輸介面種類定義一第一資料量與一第二資料量,其中第二資料量大於第一資料量。儲存裝置控制器在主機要求的資料讀取量與第一資料量之間的差值小於資料讀取量與第二資料量之間的差值時,判定主機進行的是播放動作。此外,儲存裝置控制器在資料讀取量與第一資料量之間的差值大於資料讀取量與第二資料量之間的差值時,判定主機進行的是複製動作。其中,資料讀取量可為單一個讀取指令所要求讀取的資料量,或是多個讀取指令各別要求讀取之資料量的平均值。
在本發明之一範例實施例中,其中干擾程序包括回報一訊息至主機,而訊息至少包括下列其中之一:儲存媒體更動中訊息、讀取失敗訊息、資料循環冗餘檢查碼錯誤訊息、錯誤校正碼錯誤訊息,以及儲存媒體不存在訊息。
在本發明之一範例實施例中,其中干擾程序包括依照預設速度傳送資料至主機。
在本發明之一範例實施例中,其中干擾程序包括執行無窮迴圈以進入當機狀態。
在本發明之一範例實施例中,其中外接式儲存裝置在一預定干擾時間內執行干擾程序。當經過預定干擾時間後,儲存裝置控制器繼續判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器判斷主機所存取的資料是否屬於系統資料。若資料不屬於系統資料,儲存裝置控制器接著才判別主機對資料進行的是播放動作或複製動作。而儲存裝置控制器係根據資料的邏輯位址判斷其是否為系統資料。
在本發明之一範例實施例中,其中儲存裝置控制器定義一緩衝時間,並在經過該緩衝時間後,才開始判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,其中儲存裝置控制器判斷主機所存取的資料是否位於儲存單元中的特定存放空間。若資料位於特定存放空間,儲存裝置控制器接著判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,儲存單元為快閃記憶體。
從再一觀點來看,本發明提出一種儲存裝置控制器,用以接收主機的指令並控制儲存裝置中的儲存單元。此儲存裝置控制器包括微處理器單元、儲存媒體介面單元、主機介面單元以及資料保護單元。其中,儲存媒體介面單元耦接至微處理器單元,用以使儲存裝置控制器耦接至儲存單元。主機介面單元耦接至微處理器單元,用以使儲存裝置控制器耦接至主機。資料保護單元耦接至微處理器單元,用以在主機耦接儲存裝置以存取儲存單元中的資料時,判別主機對資料進行的是播放動作或複製動作。當判定為播放動作時,儲存裝置繼續執行播放動作,以允許主機存取資料。而當判定為複製動作時,儲存裝置執行一干擾程序,以防止或減緩資料被複製到主機。
在本發明之一範例實施例中,其中資料保護單元根據儲存裝置之資料流出量,判斷主機進行的是播放動作或複製動作。資料流出量可以是在特定時段所量測到的資料流量值,或是在一特定時間間隔內所量測到的資料流量平均值。
在本發明之一範例實施例中,其中資料保護單元定義一流速閾值,並在特定時間間隔內每隔一採樣時距量測一次儲存裝置的資料流出量,以及利用特定時間間隔內所量測之所有資料流出量計算平均流速,其中特定時間間隔大於採樣時距。資料保護單元在平均流速小於流速閾值時,判定主機對資料進行播放動作,而在平均流速大於或等於流速閾值時,判定主機對資料進行複製動作。
在本發明之一範例實施例中,其中資料保護單元係根據預設檔案格式的種類或儲存裝置之傳輸介面來定義流速閾值。
在本發明之一範例實施例中,其中儲存單元被劃分為多個存放空間,各存放空間個別對應一流速標準,且資料位於其中一個存放空間。資料保護單元是以資料所位於之存放空間對應的流速標準作為流速閾值。
在本發明之一範例實施例中,其中儲存裝置更包括儲存元件,以儲存一預定時段內,儲存裝置執行過的至少一主機指令或主機指令所對應的指令資訊,指令資訊至少包括下列其中之一:主機指令的種類及主機指令所處理的資料長度。
在本發明之一範例實施例中,其中資料保護單元計數在一單位時間內主機傳送至儲存裝置之讀取指令的總數,並依據總數判定主機進行的是播放動作或複製動作。若總數大於或等於預定值,則判定主機進行的是播放動作;若總數小於預定值,則判定主機進行的是複製動作。
在本發明之一範例實施例中,其中資料保護單元取得主機連續傳送至儲存裝置的多個讀取指令,當上述讀取指令的總數大於或等於預定數量且上述讀取指令個別對應的讀取資料長度皆大於預定長度,則判定主機進行的是複製動作。
在本發明之一範例實施例中,其中資料保護單元根據主機與儲存裝置之間的傳輸介面種類,定義第一資料量與第二資料量,其中第二資料量大於第一資料量。資料保護單元在主機要求的資料讀取量與第一資料量之間的差值小於資料讀取量與第二資料量之間的差值時,判定主機進行的是播放動作,並且在資料讀取量與第一資料量之間的差值大於資料讀取量與第二資料量之間的差值時,判定主機進行的是複製動作。其中,資料讀取量為單一個讀取指令所要求讀取的資料量,或是多個讀取指令各別要求讀取之資料量的平均值。
在本發明之一範例實施例中,其中干擾程序包括回報一訊息至主機。上述訊息至少包括下列其中之一:儲存媒體更動中訊息、讀取失敗訊息、資料循環冗餘檢查碼錯誤訊息、錯誤校正碼錯誤訊息,以及儲存媒體不存在訊息。
在本發明之一範例實施例中,其中干擾程序包括執行無窮迴圈以進入當機狀態。
在本發明之一範例實施例中,其中干擾程序包括依照預設速度傳送資料至主機。
在本發明之一範例實施例中,其中儲存裝置在一預定干擾時間內執行干擾程序。當經過預定干擾時間後,資料保護單元繼續判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,其中資料保護單元判斷主機所存取的資料是否屬於系統資料。若資料不屬於系統資料,資料保護單元才判別主機對資料進行的是播放動作或複製動作。而資料保護單元例如是根據資料的邏輯位址判斷是否為系統資料。
在本發明之一範例實施例中,其中資料保護單元定義一緩衝時間,並在經過緩衝時間後才判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,其中資料保護單元判斷主機所存取的資料是否位於儲存單元中的特定存放空間。若資料位於特定存放空間,資料保護單元才判別主機對資料進行的是播放動作或複製動作。
在本發明之一範例實施例中,儲存單元為快閃記憶體。
在本發明之一範例實施例中,其中儲存裝置為主機的一外接式儲存裝置。
從再一觀點來看,本發明提出一種資料保護方法,用以在主機存取儲存裝置中的資料時對資料進行保護。此方法首先判別主機對儲存裝置中的資料進行的讀取目的。接著,根據判別結果而對於主機的讀取有二種或二種以上的讀取回應。
在本發明之一範例實施例中,其中判別讀取目的的步驟包括根據儲存裝置的資料流出量來判別主機進行的讀取目的。
在本發明之一範例實施例中,上述讀取回應包括儲存裝置根據判別結果執行干擾程序,以防止或減緩資料被複製到主機。
從又一觀點來看,本發明提出一種外接式儲存裝置,包括連接器、儲存單元,以及儲存裝置控制器。其中,儲存單元至少分割成第一存放空間及第二存放空間,且第一存放空間及第二存放空間分別儲存有一資料。儲存裝置控制器耦接至連接器與儲存單元,當主機透過連接器耦接至外接式儲存裝置以讀取第一存放空間中的資料時,儲存裝置控制器會進行判別主機對第一存放空間之資料的讀取目的。當主機透過連接器耦接至外接式儲存裝置以讀取第二存放空間中的資料時,儲存裝置控制器會直接允許主機的讀取而不進行判別主機對第二存放空間之資料的讀取目的。
基於上述,本發明在主機與儲存裝置相連進而存取其中的資料時,判斷存取資料的動作是屬於一般的播放動作或是複製動作。若判斷為複製動作,則不將資料傳送至主機或是以極緩慢的速度傳送資料。據此,提高將儲存裝置中的資料快速複製到主機的困難度,進而達到資料保護的目的。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
下述範例實施例係用以說明在主機存取一儲存裝置中的資料時,如何根據主機對資料所進行之動作的不同而作出相對的回應,據以達到資料保護的目的。其中,主機可以是電腦、手機、多媒體播放器、音響、手持式行動裝置、衛星定位裝置(GPS)或電子書等各種具備音樂、影像或其他內容(例如電子書、電子地圖等)播放能力的主機,而儲存裝置可以是內建於主機內部的儲存裝置,或是外接於主機的外接式儲存裝置。
圖1是依照本發明之一範例實施例所繪示之資料保護系統的方塊圖。如圖1所示,資料保護系統1000包括主機系統1100以及外接式儲存裝置1200。為了方便說明,在本範例實施例中主機系統1100是以電腦系統為例,而包括電腦主機1110與輸入輸出(Input/Output,I/O)裝置1150,然而在其他範例實施例中,主機系統1100所包括的主機也可以是手機、多媒體播放器、音響、手持式行動裝置、衛星定位裝置(GPS)或電子書等各種具備音樂、影像或其他內容(例如電子書、電子地圖等)播放能力的主機。除此之外,在本範例實施例中雖是以外接式儲存裝置1200來做說明,然而在其他的範例實施例中,內建於主機系統1100的儲存裝置亦屬於本發明所保護的範疇。
在本範例實施例中,電腦主機1110包括中央處理單元(Central Processing Unit,CPU)1112、記憶體1114、系統匯流排1116以及資料傳輸介面1118。其中,舉例來說,輸入輸出裝置1150可以是圖2所示之滑鼠1202、鍵盤1204、顯示器1206以及印表機1208等,在此並不加以限制。
外接式儲存裝置1200包括連接器1210、儲存裝置控制器1220以及儲存單元1230。舉例來說,外接式儲存裝置1200可以是圖2所示之隨身碟1212、記憶卡1214、或固態硬碟(Solid State Drive,SSD)1216,外接式儲存裝置1200也包括能模擬光碟機(CD ROM)的隨身碟、以及能模擬數位視訊光碟機(DVD ROM)的隨身碟等任何透過外接方式與電腦主機1110相連的儲存裝置。
外接式儲存裝置1200透過連接器1210以及資料傳輸介面1118與電腦主機1110相接。藉此,電腦主機1110便可存取儲存單元1230中的資料,或是將資料寫入儲存單元1230。在本範例實施例中,連接器1210與資料傳輸介面1118的所支援的傳輸介面種類為通用序列匯流排(Universal Serial Bus,USB)介面。而在其他範例實施例中,連接器1210與資料傳輸介面1118的傳輸介面種類也可以是序列先進附件(Serial Advanced Technology Attach ment,SATA)介面、電氣和電子工程師協會(Institute of Electrical and Electronic Engineers,IEEE)1394介面、高速周邊零件連接介面(Peripheral Component Interconnect Express,PCI Express)介面,或保全數位(secure digital,SD)介面等任何適用的介面,在此並不加以限制。
儲存單元1230例如是快閃記憶體(NAND flash memory),用以儲存如檔案配置表(File Allocation Table,FAT)等系統資料,以及儲存如影音檔案、文字檔等一般性資料。
儲存裝置控制器1220分別耦接至連接器1210以及儲存單元1230。在本範例實施例中,儲存裝置控制器1220包括主機介面單元1222、微處理器單元1224、資料保護單元1226以及儲存媒體介面單元1228。儲存裝置控制器1220透過主機介面單元1222以經由連接器1210而耦接至電腦主機1110,據以接收電腦主機1110傳送而來的指令與資料,以及將資料回傳至電腦主機1110。在本範例實施例中,主機介面單元1222具有USB介面,而在其他實施例中,主機介面單元1222也可以是符合SATA介面、IEEE 1394介面、PCI Express介面、保全數位(SD)介面、其他快閃記憶卡界面或其他介面標準的介面單元。然而必須特別說明的是,主機介面單元1222、連接器1210與資料傳輸介面1118須採用相同的介面標準,彼此間才能進行資料的傳輸。
此外,儲存裝置控制器1220係透過儲存媒體介面單元1228耦接儲存單元1230,據以對儲存單元1230進行控制。在本範例實施例中,儲存媒體介面單元1228為快閃記憶體介面單元。
如圖1所示,主機介面單元1222、資料保護單元1226以及儲存媒體介面單元1228均耦接至微處理器單元1224,而微處理器單元1224是儲存裝置控制器1220的主控單元,用以和主機介面單元1222、儲存媒體介面單元1228以及資料保護單元1226等元件協同合作,以進行外接式儲存裝置1200的各種運作。
在本範例實施例中,當外接式儲存裝置1200被耦接至電腦主機1110,並根據電腦主機1110所傳送而來的主機讀取指令而對儲存單元1230中的資料進行處理時,資料保護單元1226將分辨電腦主機1110欲對資料進行的是播放動作或複製動作,進而作出對應的回應。詳細地說,唯有當資料保護單元1226判斷電腦主機1110所進行的是播放動作時,電腦主機1110才得以繼續正常地存取資料,否則在資料保護單元1226判斷電腦主機1110正進行複製動作的情況下,外接式儲存裝置1200則不送出資料,或是以緩慢的速度將資料傳送至電腦主機1110,據此保護儲存單元1230中的資料不會被輕易且快速地複製到電腦主機1110。
在本發明的另一範例實施例中,外接式儲存裝置中的儲存裝置控制器更包括其他功能模組。圖3是依照本發明之另一範例實施例所繪示之儲存裝置控制器的方塊圖,請參閱圖3。在儲存裝置控制器1220’中,除了包括主機介面單元1222、微處理器單元1224、資料保護單元1226以及儲存媒體介面單元1228之外,另外還包括緩衝記憶體3002、錯誤校正單元3004,以及電源管理單元3006。
詳細地說,緩衝記憶體3002耦接至微處理器單元1224,用以暫存來自於電腦主機1110的資料,或暫存來自於儲存單元1230的資料。
錯誤校正單元3004耦接至微處理器單元1222,用以執行一錯誤校正程序以確保資料的正確性。具體來說,當儲存裝置控制器1220’接收到來自電腦主機1110的主機寫入指令時,錯誤校正單元3004會為對應此主機寫入指令的寫入資料產生相應的錯誤校正碼(Error Correcting Code,ECC),而此寫入資料與相應的錯誤校正碼將被一併寫入至儲存單元1230。而當儲存裝置控制器1220’接收到來自電腦主機1110的主機讀取指令時,則會從儲存單元1230中讀取對應此主機讀取指令的資料及其錯誤校正碼。此時,錯誤校正單元3004會依據此錯誤校正碼對所讀取的資料執行錯誤校正。
電源管理單元3006耦接至微處理器單元1222,用以提供外接式儲存裝置的電源。
回到圖1,為了更進一步地說明在外接式儲存裝置1200被耦接至電腦主機1110後,資料保護系統1000在電腦主機1110存取外接式儲存裝置1200之資料時的運作流程,以下特舉另一範例實施例來對本發明進行更詳細地說明。圖4是依照本發明之一範例實施例所繪示之資料保護方法的流程圖,請同時參閱圖1與圖4。
在外接式儲存裝置1200與電腦主機1110耦接後,首先如步驟410所示,電腦主機1110可透過對外接式儲存裝置1200下達主機讀取指令的方式,以進行播放或複製被儲存在外接式儲存裝置1200之儲存單元1230中的資料。
接著如步驟420所示,儲存裝置控制器1220中的資料保護單元1226會判別電腦主機1110對外接式儲存裝置1200所儲存之資料進行的是播放動作或複製動作。其中,值得說明的是,本文中所述之播放動作是指電腦主機1110將外接式儲存裝置1200所儲存之資料讀取至電腦主機1110後,僅對該資料進行播放,並未另行將該資料寫入至一非該外接式儲存裝置1200之另一非揮發性儲存裝置,例如以電腦主機為例儲存於其硬碟(HDD)或快閃記憶卡、記憶碟之中,而本文中所述之複製動作則是指電腦主機1110將外接式儲存裝置1200所儲存之資料讀取至電腦主機1110後,另行將該資料寫入至一非該外接式儲存裝置1200之另一非揮發性儲存裝置,其中,此另一非揮發性記憶體儲存裝置可裝置於該電腦主機1110中或外接於該電腦主機1110。一般來說,當外接式儲存裝置1200受控於電腦主機1110而處於不同的使用狀態時,其輸出資料的速度亦有相當大的差距。據統計,在使用者利用電腦主機1110播放外接式儲存裝置1200中的資料時,若播放的是MP3壓縮標準檔案格式的資料,那麼外接式儲存裝置1200的資料流出速度大約是24KByte/s,而在播放MP4壓縮標準檔案格式的資料時,外接式儲存裝置1200的資料流出速度則約為125KByte/s。然而,在使用者將外接式儲存裝置1200中的資料複製到電腦主機1110時,外接式儲存裝置1200的資料流出速度則可輕易達到8MByte/s。換句話說,電腦主機1110在播放外接式儲存裝置1200中的資料時,外接式儲存裝置1200輸出資料的流速將遠小於使用者將外接式儲存裝置1200中的資料複製到電腦主機1110時的流速。因此在本範例實施例中,資料保護單元1226便是根據外接式儲存裝置1200之資料流出量來判斷電腦主機1110目前對資料進行的是播放動作或複製動作。
圖5是依照本發明之一範例實施例所繪示之判別電腦主機對資料進行播放動作亦或是複製動作的流程圖,亦即,圖5為圖4之步驟420的進一步說明。在此範例實施例中,資料流出量是指在一特定時間間隔內所量測到的資料流量平均值。首先如步驟510所示,資料保護單元1226首先定義一流速閾值。流速閾值可以是一個通用的預設值,或是與外接式儲存裝置1200之介面或用途有關。假設外接式儲存裝置1200係專用以儲存符合於預設檔案格式的資料,那麼資料保護單元1226便會根據預設檔案格式的種類來定義流速閾值。舉例來說,倘若外接式儲存裝置1200係專用來存放符合MP3壓縮標準檔案格式的資料,那麼流速閾值例如可定義為50KByte/s,而在外接式儲存裝置1200係專用以存放符合MP4壓縮標準檔案格式的資料時,流速閾值則可定義為150KByte/s。又例如若外接式儲存裝置1200之傳輸介面為高速周邊零件連接介面(Peripheral Component Interconnect Express,PCI Express)介面,或保全數位(Secure Digital,SD)或小型快閃(Compact Flash,CF)介面,則由於其規範之最大傳輸速率之不同,故在資料進行播放動作或複製動作時流速差距亦可因介面最大傳輸速率而有差別,故流速閾之設定亦可因此而改變。但必需說明的是,上述流速閾值僅是為了說明而舉出的範例,其亦可是1MByte/s,亦或是300KByte/s等,並不用以限制本發明的範圍。
定義流速閾值後,接著在步驟520中,資料保護單元1226在特定時間間隔內,每隔一採樣時距量測一次外接式儲存裝置1200的資料流出量,其中特定時間間隔大於採樣時距。並且如步驟530所示,利用在特定時間間隔內所量測的所有資料流出量,計算這段時間內的平均流速。舉例來說,假設特定時間間隔為2秒而採樣時距為0.1秒,那麼資料保護單元1226將計算在這2秒內所量測之20個資料流出量的平均值。具體來說,在本範例實施例中,電腦主機1110是於上一傳送至外接式儲存裝置1200之主機指令完成後,才會再傳送下一欲執行的主機指令,而該等由外接式儲存裝置1200執行的主機指令(或主機指令所對應的指令資訊),則會被暫存於外接式儲存裝置1200內之一儲存元件中(如緩衝記憶體3002)。其中,該等暫存之主機指令中所具有的指令資訊可包含指令的種類(如read或write)或欲處理的資料長度。外接式儲存裝置1200亦可僅暫存一預定時間內之讀取資料量。而資料保護單元1226每隔一採樣時距就會依據該緩衝記憶體3002所記錄的指令資訊,來計算這段時間輸出至電腦主機1110的資料量,從而得知此採樣時距內的資料流出量。
接下來如步驟540所示,資料保護單元1226判斷在這段特定時間間隔內所計算出的平均流速是否大於或等於流速閾值。若平均流速小於流速閾值,那麼如步驟550所示,資料保護單元1226判定電腦主機1110對資料進行的是播放動作。然而倘若平均流速大於或等於流速閾值,則如步驟560所示,資料保護單元1226判定電腦主機1110對資料進行的是複製動作。
值得一提的是,在本範例實施例中主要是根據資料輸出的速度以及輸出的連續性來進行判斷,而並非在一發現資料流出量過大時便立即判斷資料被複製。據此,即便在電腦主機1110剛開始存取資料而一次性地大量讀取資料來作為播放緩衝時,透過圖5所示之各步驟也可排除其被視為複製資料的情況。
在又一範例實施例中,資料保護單元1226在根據外接式儲存裝置1200之資料流出量來判斷電腦主機1110對資料進行播放動作或複製動作時,所依據的資料流出量也可以是指在一特定時段所量測到的資料流量值。當資料流量值大於或等於一預設值時,資料保護單元1226便判定電腦主機1110對資料進行的是複製動作。例如,資料保護單元1226每一秒鐘進行一次流量統計,當資料流量值大於或等於一預設值時,資料保護單元1226便判定電腦主機1110對資料進行的是複製動作。
回到圖4,當資料保護單元1226的判定結果為播放動作時,表示電腦主機1110使用資料的動作例如是在播放資料,因此如步驟430所示,外接式儲存裝置1200繼續執行該動作,以允許電腦主機1110繼續地對儲存單元1230中的資料進行存取。接下來,此資料保護方法的流程將回到步驟420,由資料保護單元1226再次判斷資料是被播放或複製。
然而當資料保護單元1226的判定結果為複製動作時,則如步驟440所示,外接式儲存裝置1200即執行一干擾程序,以防止或減緩資料被複製到電腦主機1110。在此範例實施例中,外接式儲存裝置1200所執行的干擾程序可包括將一訊息回報至電腦主機1110。其中,所回報的訊息可以是儲存媒體更動中(media alternative)訊息、資料循環冗餘檢查碼(Cyclic Redundancy Check,CRC)錯誤訊息、錯誤校正碼(Error-Correcting Code,ECC)錯誤訊息,讀取失敗訊息或儲存媒體不存在訊息等。而電腦主機1110在接獲上述訊息回報後,便無法繼續進行資料複製的動作。
在另一範例實施例中,外接式儲存裝置1200所執行的干擾程序例如是執行一無窮迴圈進而使外接式儲存裝置1200進入當機狀態。在這樣的情況下,除非使用者將外接式儲存裝置1200重新連接至電腦主機1110,否則外接式儲存裝置1200將不再接受任何的資料讀寫操作。
在又一範例實施例中,外接式儲存裝置1200所執行的干擾程序可以是依照一非常慢的預設速度將資料傳送至電腦主機1110。如此一來,也能達到防止資料被快速複製到電腦主機1110的目的。
在其他範例實施例中,為了防止使用者利用低速傳輸介面來複製資料,一旦儲存裝置控制器1220中的資料保護單元1226判斷外接式儲存裝置1200之連接器1210的傳輸介面種類為USB介面,且符合傳輸速度較低的USB 1.1標準,外接式儲存裝置1200便不將資料回傳至電腦主機1110。
上述範例實施例雖然是以資料流出的速度高低來區分資料是被單純地讀取或是被拷貝,然而這樣的判別方式並不用以限制本發明的範圍。換言之,其他能分辨資料讀取以及資料複製的方法亦適用於資料保護系統1000。圖6則是依照本發明之另一範例實施例所繪示之判別電腦主機對資料進行播放動作或複製動作的流程圖,在此實施例中,當資料保護單元1226要分辨電腦主機1110對資料進行的是播放動作或複製動作時,首先如步驟610所示,資料保護單元1226根據電腦主機1110與外接式儲存裝置1200之間的傳輸介面種類(亦即,連接器1210與資料傳輸介面1118所對應的傳輸介面種類),定義一第一資料量與一第二資料量,其中第二資料量大於第一資料量。舉例而言,當連接器1210與資料傳輸介面1118所對應的傳輸介面種類為USB介面時,第一資料量可定義為4KB,而第二資料量可定義為64KB。
接著在步驟620中,資料保護單元1226判斷電腦主機1110要求的資料讀取量較接近第一資料量或第二資料量。詳細地說,電腦主機1110可透過下達主機讀取指令來要求外接式儲存裝置1200回傳儲存單元1230中的資料,由於單純的播放動作與複製動作一次要求的資料量多寡亦有相當大的差距,因此資料保護單元1226便是根據主機讀取指令所要求的資料讀取量來進行分辨。而必須說明的是,作為資料保護單元1226之判斷依據的資料讀取量可以是單一個讀取指令所要求讀取的資料量,亦或是多個讀取指令各別要求讀取之資料量的平均值。
倘若資料讀取量與第一資料量之間的差值小於資料讀取量與第二資料量之間的差值,表示資料讀取量較接近第一資料量,因此如步驟630所示,資料保護單元1226判定電腦主機1110進行的是播放動作。
反之,倘若資料讀取量與第一資料量之間的差值大於資料讀取量與第二資料量之間的差值,表示資料讀取量較接近第二資料量,故如步驟640所示,資料保護單元1226判定電腦主機1110進行的是複製動作。
必需再次說明的是,上述幾個實施例分別是根據外接式儲存裝置1200之連續資料流出速率的高低,以及根據電腦主機1110一次要求的資料讀取量多寡來分辨資料是被讀取或複製,然而這兩種判別方式僅是本發明的實施範例,並不用以限制本發明的範圍。
值得一提的是,由於電腦主機1110在讀取儲存單元1230中的系統資料(例如檔案配置表)時,外接式儲存裝置1200將資料回傳至電腦主機1110的資料流速也會高於因應資料播放時的流速。為了避免誤判,如圖7所示,當外接式儲存裝置1200與電腦主機1110耦接且電腦主機1110存取儲存單元1230中的資料時(步驟710),資料保護單元1226首先必須判斷電腦主機1110所存取的資料是否屬於系統資料(步驟720)。若目前存取的資料為系統資料,則不進行任何判斷動作,而允許電腦主機1110繼續地存取資料(步驟730),並重複步驟720直到判定目前所存取的資料已非系統資料時,接著資料保護單元1226才判別電腦主機1110對資料進行的是播放動作或複製動作(步驟740)。而由於圖7之步驟740至步驟760與圖4之步驟420至步驟440相同或相似,故在此不再贅述。具體地說,由於系統資料可由設計者預先設定儲存於一預定的邏輯位址區塊,或是由儲存裝置控制器1220偵測得知該系統資料儲存之邏輯位址區塊。故,儲存裝置控制器1220中的資料保護單元1226可以根據資料被存取的邏輯位址來判別其是否為系統資料。此外,由於電腦主機1110在耦接至外接式儲存裝置1200時,通常會先行讀取儲存單元1230中的系統資訊,故在另一範例實施例中,資料保護單元1226會先定義一緩衝時間,當電腦主機1110耦接至外接式儲存裝置1200的時間尚未超過上述緩衝時間,則先不進行流量監控,並於經過緩衝時間後,資料保護單元1226才判別電腦主機1110對資料進行的是播放動作或複製動作。
圖8是依照本發明之另一範例實施例所繪示之資料保護系統的方塊圖。圖8之資料保護系統8000與圖1之資料保護系統1000大致相似,不同之處在於外接式儲存裝置1200中的儲存單元1230至少部份被劃分為多個存放空間,且各存放空間個別對應一流速標準。在此並不限制存放空間的數量,而在本範例實施例中儲存單元1230例如是被劃分為存放空間1231、存放空間1232、存放空間1235等。
因而當資料保護單元1226在根據外接式儲存裝置1200連續流出資料的速率高低以分辨資料是被讀取或複製時,則可以根據資料所在的存放空間而採用對應的流速標準來作為判斷時的流速閾值。
除此之外,由於儲存單元1230被劃分成數個存放空間,因而在一範例實施例中資料保護系統8000會對整個儲存單元1230進行保護。而在另一範例實施例中資料保護系統8000僅會對特定存放空間進行保護,即在資料保護系統8000中有至少有一存放空間並不做播放及複製動作的判別,所有來自主機端的讀取要求都允許其讀取資料,同時於資料保護系統8000中至少有另一存放空間會依上述的方法對播放及複製動作進行判別,並依判別結果而有相對的回應。
圖9是依照本發明之又一範例實施例所繪示之資料保護方法的流程圖,首先如步驟910所示,在外接式儲存裝置1200被耦接至電腦主機1110,且電腦主機1110存取儲存單元1230中的資料後,接著在步驟920中,資料保護單元1226必須先判斷電腦主機1110所存取的資料是否位於儲存單元1230的特定存放空間。若目前存取的資料並不位於特定存放空間,那麼資料保護單元1226便不會進行任何判斷動作,而如步驟930所示,電腦主機1110被允許繼續地存取資料。接下來,此資料保護方法的流程將重複執行步驟920直到判斷出目前存取的是位於特定存放空間的資料時,接著才如步驟940所示,資料保護單元1226判別電腦主機1110對資料進行的是播放動作或複製動作。由於圖9之步驟940至步驟960與圖4之步驟420至步驟440相同或相似,故在此不再贅述。
如圖9所示,唯有當使用者透過電腦主機1110存取存放在儲存單元1230之特定存放空間中的資料時,儲存裝置控制器1220中的資料保護單元1226才會進行監測與資料保護的動作。換句話說,使用者可以選擇將重要資料存放在儲存單元1230的特定存放空間,以防止他人隨意複製資料。
更進一步來說,在一範例實施例中當儲存單元1230至少被分割成第一存放空間(例如存放空間1231)及第二存放空間(例如存放空間1232),且第一存放空間及第二存放空間分別儲存有一資料時,倘若電腦主機1110透過連接器1210耦接至外接式儲存裝置1200以讀取第一存放空間中的資料,儲存裝置控制器1220中的資料保護單元1226會進行判別動作,進而判別電腦主機1110對第一存放空間之資料的讀取目的。然而,當電腦主機1110耦接外接式儲存裝置1200後所讀取的是第二存放空間中的資料時,儲存裝置控制器1220中的資料保護單元1226則會直接允許電腦主機1110的讀取,而不會對電腦主機1110對第二存放空間之資料的讀取目的進行判別。
亦即在上述範例實施例中,資料保護系統8000具有至少一個不需進行讀取目的之判斷的存放空間,電腦主機1110對該存放空間的讀取要求都將被直接允許。同時,資料保護系統800另具有至少一個需判別讀取目的的存放空間,當電腦主機1110要求讀取其中的資料時,外接式儲存裝置1200則會依上述的方法判斷電腦主機1110進行的是播放或複製動作,並依判斷結果而做出相對的回應。
在另一範例實施例中,當資料保護單元1226判定電腦主機1110對資料進行複製動作之後,外接式儲存裝置1200所執行的干擾程序會於被實施一預定干擾時間後停止(例如5秒),從而使得外接式儲存裝置1200回復至由資料保護單元1226進行判斷的狀態。
在另一範例實施例中,由於影音資料之播放皆為連續地讀取一預定資料長度(如8Kbyte/s),其資料量小於複製資料時所讀取之資料長度(如128Kbyte/s),故資料保護單元1226會偵測電腦主機1110下達的指令,當連續一預定數量之指令皆為讀取指令且每一讀取指令所個別對應的讀取資料長度皆大於一預定長度,或是當連續之讀取指令的數量大於預定數量且各讀取指令所分別對應的讀取資料長度均大於一預定長度,資料保護單元1226即可因此而判斷電腦主機1110是進行一複製動作,外接式儲存裝置1200進而執行干擾程序。
在另一範例實施例中,由於影音資料之每一讀取指令傳送之資料量較小,故執行的時間較短,因此讀取指令下達的次數在單位時間內會較多。故資料保護單元1226會偵測電腦主機1110下達讀取指令的總數,若在單位時間(例如0.1秒)內之讀取指令的總數大於或等於一預定值,則可判斷電腦主機1110進行的為一般之播放動作,反之,則為複製動作。在另一範例實施例中,資料保護單元1226會同時偵測電腦主機1110下達的讀取指令總數及資料讀取量以判斷電腦主機1110之動作行為。在另一範例實施例中,資料保護單元1226會對於一預定時間內(如1秒),平均各一子預定時間內之判斷參數(例如讀取指令總數、資料讀取量等等),來決定電腦主機1110之動作行為。
必需再次強調的是,上述幾個範例實施例雖然是以電腦主機以及外接式儲存裝置來對本發明進行說明,但本發明並不侷限於此。在其他的範例實施例中,手機、多媒體播放器、音響、手持式行動裝置、衛星定位裝置(GPS)或電子書等各種具備音樂、影像或其他內容(例如電子書、電子地圖等)播放能力的主機亦屬於本發明主機的範疇,且儲存裝置除了包括以外接方式耦接至主機的外接式儲存裝置外,也可以是內建在主機中的任何儲存裝置。只要主機對儲存裝置中的資料進行存取,那麼主機對資料所進行的讀取目的便會被先行判別出來,其中判別方式例如是根據儲存裝置的資料流出量來進行之。接著,根據判別結果的不同而對主機的讀取採用至少二種或二種以上的讀取回應。好比說,儲存裝置會根據判別結果而執行一干擾程序,進而防止或減緩資料被複製到主機。
綜上所述,本發明在主機存取儲存裝置中的資料時,主動區別主機對資料進行的是一般播放動作亦或是複製動作。若判斷資料被複製,儲存裝置便不再把資料傳送至主機或是減慢回傳資料的速度,如此一來確保儲存裝置中的資料無法被輕易且快速地複製到主機,進而達到資料保護的目的。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
1000...資料保護系統
1100...主機系統
1110...電腦主機
1112...中央處理單元
1114...記憶體
1116...系統匯流排
1118...資料傳輸介面
1150...輸入輸出裝置
1200...外接式儲存裝置
1210...連接器
1220...儲存裝置控制器
1222...主機介面單元
1224...微處理器單元
1226...資料保護單元
1228...儲存媒體介面單元
1230...儲存單元
1202...滑鼠
1204...鍵盤
1206...顯示器
1208...印表機
1212...隨身碟
1214...記憶卡
1216...固態硬碟
1220’...儲存裝置控制器
3002...緩衝記憶體
3004...錯誤校正單元
3006...電源管理單元
410~440...本發明之一範例實施例所述之資料保護方法的各步驟
510~560...本發明之一範例實施例所述之判別電腦主機對資料進行的是播放動作或複製動作的各步驟
610~640...本發明之另一範例實施例所述之判別電腦主機對資料進行的是播放動作或複製動作的各步驟
710~760...本發明之另一範例實施例所述之資料保護方法的各步驟
8000...資料保護系統
1231、1232、1235...存放空間
910~960...本發明之另一範例實施例所述之資料保護方法的各步驟
圖1是依照本發明之一範例實施例所繪示之資料保護系統的方塊圖。
圖2是依照本發明之一實施例所繪示的電腦主機、輸入輸出裝置與外接式儲存裝置的示意圖。
圖3是依照本發明之另一範例實施例所繪示之儲存裝置控制器的方塊圖。
圖4是依照本發明之一範例實施例所繪示之資料保護方法的流程圖。
圖5是依照本發明之一範例實施例所繪示之判別電腦主機對資料進行播放動作或複製動作的流程圖。
圖6是依照本發明之另一範例實施例所繪示之判別電腦主機對資料進行播放動作或複製動作的流程圖。
圖7是依照本發明之另一範例實施例所繪示之資料保護方法的流程圖。
圖8是依照本發明之另一範例實施例所繪示之資料保護系統的方塊圖。
圖9是依照本發明之又一範例實施例所繪示之資料保護方法的流程圖。
410~440...本發明之一範例實施例所述之資料保護方法的各步驟
Claims (106)
- 一種資料保護方法,用以在一主機存取一儲存裝置中的一資料時對該資料進行保護,該儲存裝置內設置有一儲存裝置控制器,該方法包括:該儲存裝置控制器從該主機接收至少一讀取指令;該儲存裝置控制器執行該至少一讀取指令;於該儲存裝置控制器執行該至少一讀取指令後,該儲存裝置控制器判別該主機對該儲存裝置中的該資料進行的是一播放動作或一複製動作;當該儲存裝置控制器判別該主機對該儲存裝置中的該資料進行的是該播放動作時,該儲存裝置繼續執行該播放動作,以允許該主機存取該資料;以及當該儲存裝置控制器判別該主機對該儲存裝置中的該資料進行的是該複製動作時,該儲存裝置控制器即執行一干擾程序,以防止或減緩該資料被複製到該主機。
- 如申請專利範圍第1項所述之資料保護方法,其中判別該主機對該資料進行的是該播放動作或該複製動作的步驟包括:根據該儲存裝置之一資料流出量判斷該主機進行的是該播放動作或該複製動作。
- 如申請專利範圍第2項所述之資料保護方法,其中該資料流出量是在一特定時段所量測到的一資料流量值。
- 如申請專利範圍第2項所述之資料保護方法,其中該資料流出量是在一特定時間間隔內所量測到的一資料流 量平均值。
- 如申請專利範圍第4項所述之資料保護方法,其中根據該資料流出量判斷該主機進行的是該播放動作或該複製動作的步驟包括:定義一流速閾值;在該特定時間間隔內每隔一採樣時距量測一次該儲存裝置的該資料流出量,其中該特定時間間隔大於該採樣時距;利用在該特定時間間隔內所量測之所有資料流出量計算一平均流速;若該平均流速小於該流速閾值,則判定該主機對該資料進行該播放動作;以及若該平均流速大於或等於該流速閾值,則判定該主機對該資料進行該複製動作。
- 如申請專利範圍第5項所述之資料保護方法,其中該定義該流速閾值的步驟包括:根據一預設檔案格式的種類或該儲存裝置之傳輸介面定義該流速閾值。
- 如申請專利範圍第5項所述之資料保護方法,其中該儲存裝置的一儲存單元至少部份被劃分為多個存放空間,各該些存放空間個別對應一流速標準,且該資料位於該些存放空間其中之一,而定義該流速閾值的步驟包括:以該資料所位於之存放空間對應的該流速標準作為該流速閾值。
- 如申請專利範圍第1項所述之資料保護方法,其中在判別該主機對該資料進行的是該播放動作或該複製動作的步驟之前,更包括:儲存一預定時段內,該儲存裝置執行過的至少一主機指令或該主機指令所對應的一指令資訊。
- 如申請專利範圍第8項所述之資料保護方法,其中該指令資訊至少包括下列其中之一:該主機指令的種類,及該主機指令所處理的資料長度。
- 如申請專利範圍第1項所述之資料保護方法,其中判別該主機對該資料進行的是該播放動作或該複製動作的步驟包括:計數在一單位時間內該主機傳送至該儲存裝置之一讀取指令總數;以及依據該讀取指令總數判定該主機進行的是該播放動作或該複製動作。
- 如申請專利範圍第10項所述之資料保護方法,其中依據該總數判定該主機進行的是該播放動作或該複製動作的步驟包括:若該總數大於或等於一預定值,則判定該主機進行的是該播放動作;以及若該總數小於該預定值,則判定該主機進行的是該複製動作。
- 如申請專利範圍第1項所述之資料保護方法,其中判別該主機對該資料進行的是該播放動作或該複製動作的 步驟包括:當該主機是將該至少一讀取指令連續傳送至該儲存裝置時,若該至少一讀取指令的一總數大於或等於一預定數量且該至少一讀取指令個別對應的一讀取資料長度皆大於一預定長度,則判定該主機進行的是該複製動作。
- 如申請專利範圍第1項所述之資料保護方法,其中判別該主機對該資料進行的是該播放動作或該複製動作的步驟包括:根據該主機與該儲存裝置之間的一傳輸介面種類,定義一第一資料量與一第二資料量,其中該第二資料量大於該第一資料量;當該主機要求的一資料讀取量與該第一資料量之間的差值小於該資料讀取量與該第二資料量之間的差值時,判定該主機進行的是該播放動作;以及當該資料讀取量與該第一資料量之間的差值大於該資料讀取量與該第二資料量之間的差值時,判定該主機進行的是該複製動作。
- 如申請專利範圍第13項所述之資料保護方法,其中該資料讀取量為單一個讀取指令所要求讀取的資料量。
- 如申請專利範圍第13項所述之資料保護方法,其中該資料讀取量為該至少一讀取指令各別要求讀取之資料量的平均值。
- 如申請專利範圍第1項所述之資料保護方法,其中該干擾程序包括回報一訊息至該主機。
- 如申請專利範圍第16項所述之資料保護方法,其中該訊息至少包括下列其中之一:一儲存媒體更動中(media alternative)訊息、一讀取失敗訊息、一資料循環冗餘檢查碼(Cyclic Redundancy Check,CRC)錯誤訊息、一錯誤校正碼(Error-Correcting Code,ECC)錯誤訊息,以及一儲存媒體不存在訊息。
- 如申請專利範圍第1項所述之資料保護方法,其中該干擾程序包括執行一無窮迴圈以進入一當機狀態。
- 如申請專利範圍第1項所述之資料保護方法,其中該干擾程序包括依照一預設速度傳送該資料至該主機。
- 如申請專利範圍第1項所述之資料保護方法,其中該儲存裝置執行該干擾程序的步驟更包括:在一預定干擾時間內執行該干擾程序;以及當經過該預定干擾時間後,繼續判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第1項所述之資料保護方法,其中判別該主機對該資料進行的是該播放動作或該複製動作的步驟更包括:判斷該主機所存取的該資料是否屬於一系統資料;以及若該資料不屬於該系統資料,則判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第21項所述之資料保護方法,其中判斷該主機所存取的該資料是否屬於該系統資料的步驟 包括:根據該資料的邏輯位址判斷是否為該系統資料。
- 如申請專利範圍第1項所述之資料保護方法,其中判別該主機對該資料進行的是該播放動作或該複製動作的步驟更包括:定義一緩衝時間;以及在經過該緩衝時間後,判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第1項所述之資料保護方法,其中判別該主機對該資料進行的是該播放動作或該複製動作的步驟更包括:判斷該主機所存取的該資料是否位於該儲存裝置之一儲存單元的一特定存放空間;以及若該資料位於該特定存放空間,則判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第1項所述之資料保護方法,其中該儲存裝置為該主機的一外接式儲存裝置。
- 一種資料保護系統,包括:一主機;以及一儲存裝置,包括:一儲存單元,儲存一資料;以及一儲存裝置控制器,該儲存裝置控制器是設置在該儲存裝置內,並且耦接至該儲存單元,其中當該主機耦接該儲存裝置以存取該資料時,該儲 存裝置控制器從該主機接收至少一讀取指令並執行該至少一讀取指令,而在該儲存裝置控制器執行該至少一讀取指令後,該儲存裝置控制器判別該主機對該資料進行的是一播放動作或一複製動作,當該儲存裝置控制器判別該主機對該儲存裝置中的該資料進行的是該播放動作時,該儲存裝置繼續執行該播放動作,以允許該主機存取該資料,當該儲存裝置控制器判別該主機對該儲存裝置中的該資料進行的是該複製動作時,該儲存裝置控制器即執行一干擾程序,以防止或減緩該資料被複製到該主機。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存裝置控制器根據該儲存裝置之一資料流出量,判斷該主機進行的是該播放動作或該複製動作。
- 如申請專利範圍第27項所述之資料保護系統,其中該資料流出量是在一特定時段所量測到的一資料流量值。
- 如申請專利範圍第27項所述之資料保護系統,其中該資料流出量是在一特定時間間隔內所量測到的一資料流量平均值。
- 如申請專利範圍第29項所述之資料保護系統,其中該儲存裝置控制器定義一流速閾值,並在該特定時間間隔內每隔一採樣時距量測一次該儲存裝置的該資料流出量,以及利用在該特定時間間隔內所量測之所有資料流出量計算一平均流速,其中該特定時間間隔大於該採樣時距, 該儲存裝置控制器在該平均流速小於該流速閾值時,判定該主機對該資料進行該播放動作,該儲存裝置控制器在該平均流速大於或等於該流速閾值時,判定該主機對該資料進行該複製動作。
- 如申請專利範圍第30項所述之資料保護系統,其中該儲存裝置控制器係根據一預設檔案格式的種類或該儲存裝置之傳輸介面定義該流速閾值。
- 如申請專利範圍第30項所述之資料保護系統,其中該儲存單元至少部份更包括:多個存放空間,各該些存放空間個別對應一流速標準,且該資料位於該些存放空間其中之一,其中該儲存裝置控制器是以該資料所位於之存放空間對應的該流速標準作為該流速閾值。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存裝置更包括:一儲存元件,用以儲存一預定時段內,該儲存裝置執行過的至少一主機指令或該主機指令所對應的一指令資訊。
- 如申請專利範圍第33項所述之資料保護系統,其中該指令資訊至少包括下列其中之一:該主機指令的種類以及該主機指令所處理的資料長度。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存裝置控制器計數在一單位時間內該主機傳送至該儲存裝置之一讀取指令總數,並依據該讀取指令總數判定 該主機進行的是該播放動作或該複製動作。
- 如申請專利範圍第35項所述之資料保護系統,其中該儲存裝置控制器在該總數大於或等於一預定值時,判定該主機進行的是該播放動作,並在該總數小於該預定值,判定該主機進行的是該複製動作。
- 如申請專利範圍第26項所述之資料保護系統,其中當該主機是將該至少一讀取指令連續傳送至該儲存裝置時,該儲存裝置控制器在該至少一讀取指令的一總數大於或等於一預定數量且該至少一讀取指令個別對應的一讀取資料長度皆大於一預定長度,則判定該主機進行的是該複製動作。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存裝置控制器根據該主機與該儲存裝置之間的一傳輸介面種類,定義一第一資料量與一第二資料量,其中該第二資料量大於該第一資料量,該儲存裝置控制器在該主機要求的一資料讀取量與該第一資料量之間的差值小於該資料讀取量與該第二資料量之間的差值時,判定該主機進行的是該播放動作,該儲存裝置控制器在該資料讀取量與該第一資料量之間的差值大於該資料讀取量與該第二資料量之間的差值時,判定該主機進行的是該複製動作。
- 如申請專利範圍第38項所述之資料保護系統,其中該資料讀取量為單一個讀取指令所要求讀取的資料量。
- 如申請專利範圍第38項所述之資料保護系統,其 中該資料讀取量為該至少一讀取指令各別要求讀取之資料量的平均值。
- 如申請專利範圍第26項所述之資料保護系統,其中該干擾程序包括回報一訊息至該主機。
- 如申請專利範圍第41項所述之資料保護系統,其中該訊息至少包括下列其中之一:一儲存媒體更動中訊息、一讀取失敗訊息、一資料循環冗餘檢查碼錯誤訊息、一錯誤校正碼錯誤訊息,以及一儲存媒體不存在訊息。
- 如申請專利範圍第26項所述之資料保護系統,其中該干擾程序包括執行一無窮迴圈以進入一當機狀態。
- 如申請專利範圍第26項所述之資料保護系統,其中該干擾程序包括依照一預設速度傳送該資料至該主機。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存裝置在一預定干擾時間內執行該干擾程序,當經過該預定干擾時間後,該儲存裝置控制器繼續判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存裝置控制器判斷該主機所存取的該資料是否屬於一系統資料,若該資料不屬於該系統資料,該儲存裝置控制器判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第46項所述之資料保護系統,其中該儲存裝置控制器根據該資料的邏輯位址判斷是否為該系統資料。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存裝置控制器定義一緩衝時間,以及在經過該緩衝時間後,判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存裝置控制器判斷該主機所存取的該資料是否位於該儲存單元中的一特定存放空間,若該資料位於該特定存放空間,該儲存裝置控制器判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存單元為一快閃記憶體。
- 如申請專利範圍第26項所述之資料保護系統,其中該儲存裝置為該主機的一外接式儲存裝置。
- 一種外接式儲存裝置,包括:一連接器;一儲存單元,儲存一資料;以及一儲存裝置控制器,耦接至該連接器與該儲存單元,且該儲存裝置控制器是設置在該外接式儲存裝置內,其中當一主機透過該連接器耦接至該外接式儲存裝置以存取該資料時,該儲存裝置控制器從該主機接收至少一讀取指令並執行該至少一讀取指令,而在該儲存裝置控制器執行該至少一讀取指令後,該儲存裝置控制器判別該主機對該資料進行的是一播放動作或一複製動作,當該儲存裝置控制器判別該主機對該外接式儲存裝 置中的該資料進行的是該播放動作時,該外接式儲存裝置繼續執行該播放動作,以允許該主機存取該資料,當該儲存裝置控制器判別該主機對該外接式儲存裝置中的該資料進行的是該複製動作時,該儲存裝置控制器即執行一干擾程序,以防止或減緩該資料被複製到該主機。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該儲存裝置控制器根據該外接式儲存裝置之一資料流出量,判斷該主機進行的是該播放動作或該複製動作。
- 如申請專利範圍第53項所述之外接式儲存裝置,其中該資料流出量是在一特定時段所量測到的一資料流量值。
- 如申請專利範圍第53項所述之外接式儲存裝置,其中該資料流出量是在一特定時間間隔內所量測到的一資料流量平均值。
- 如申請專利範圍第55項所述之外接式儲存裝置,其中該儲存裝置控制器定義一流速閾值,並在該特定時間間隔內每隔一採樣時距量測一次該外接式儲存裝置的該資料流出量,以及利用在該特定時間間隔內所量測之所有資料流出量計算一平均流速,其中該特定時間間隔大於該採樣時距,其中該儲存裝置控制器在該平均流速小於該流速閾值時,判定該主機對該資料進行該播放動作,該儲存裝置控制器在該平均流速大於或等於該流速閾值時,判定該主機對該資料進行該複製動作。
- 如申請專利範圍第56項所述之外接式儲存裝置,其中該儲存裝置控制器係根據一預設檔案格式的種類或該外接式儲存裝置之傳輸介面定義該流速閾值。
- 如申請專利範圍第56項所述之外接式儲存裝置,其中該儲存單元至少部份更包括:多個存放空間,各該些存放空間個別對應一流速標準,且該資料位於該些存放空間其中之一,其中該儲存裝置控制器是以該資料所位於之存放空間對應的該流速標準作為該流速閾值。
- 如申請專利範圍第52項所述之外接式儲存裝置,更包括:一儲存元件,用以儲存一預定時段內,該外接式儲存裝置執行過的至少一主機指令或該主機指令所對應的一指令資訊。
- 如申請專利範圍第59項所述之外接式儲存裝置,其中該指令資訊至少包括下列其中之一:該主機指令的種類以及該主機指令所處理的資料長度。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該儲存裝置控制器計數在一單位時間內該主機傳送至該外接式儲存裝置之一讀取指令總數,並依據該讀取指令總數判定該主機進行的是該播放動作或該複製動作。
- 如申請專利範圍第61項所述之外接式儲存裝置,其中該儲存裝置控制器在該總數大於或等於一預定值時,判定該主機進行的是該播放動作,並在該總數小於該預定 值時,判定該主機進行的是該複製動作。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中當該主機是將該至少一讀取指令連續傳送至該外接式儲存裝置時,該儲存裝置控制器在該至少一讀取指令的一總數大於或等於一預定數量且該至少一讀取指令個別對應的一讀取資料長度皆大於一預定長度,則判定該主機進行的是該複製動作。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該儲存裝置控制器根據該連接器的一傳輸介面種類,定義一第一資料量與一第二資料量,其中該第二資料量大於該第一資料量,該儲存裝置控制器在該主機要求的一資料讀取量與該第一資料量之間的差值小於該資料讀取量與該第二資料量之間的差值時,判定該主機進行的是該播放動作,該儲存裝置控制器在該資料讀取量與該第一資料量之間的差值大於該資料讀取量與該第二資料量之間的差值時,判定該主機進行的是該複製動作。
- 如申請專利範圍第64項所述之外接式儲存裝置,其中該資料讀取量為單一個讀取指令所要求讀取的資料量。
- 如申請專利範圍第64項所述之外接式儲存裝置,其中該資料讀取量為該至少一讀取指令各別要求讀取之資料量的平均值。
- 如申請專利範圍第52項所述之外接式儲存裝置, 其中該干擾程序包括回報一訊息至該主機。
- 如申請專利範圍第67項所述之外接式儲存裝置,其中該訊息至少包括下列其中之一:一儲存媒體更動中訊息、一讀取失敗訊息、一資料循環冗餘檢查碼錯誤訊息、一錯誤校正碼錯誤訊息,以及一儲存媒體不存在訊息。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該干擾程序包括執行一無窮迴圈以進入一當機狀態。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該干擾程序包括依照一預設速度傳送該資料至該主機。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該外接式儲存裝置在一預定干擾時間內執行該干擾程序,當經過該預定干擾時間後,該儲存裝置控制器繼續判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該儲存裝置控制器判斷該主機所存取的該資料是否屬於一系統資料,若該資料不屬於該系統資料,該儲存裝置控制器判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第72項所述之外接式儲存裝置,其中該儲存裝置控制器根據該資料的邏輯位址判斷是否為該系統資料。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該儲存裝置控制器定義一緩衝時間,並在經過該緩衝 時間後,判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該儲存裝置控制器判斷該主機所存取的該資料是否位於該儲存單元中的一特定存放空間,若該資料位於該特定存放空間,該儲存裝置控制器判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第52項所述之外接式儲存裝置,其中該儲存單元為一快閃記憶體。
- 一種儲存裝置控制器,用以接收一主機的指令並控制一儲存裝置的一儲存單元,該儲存裝置控制器是設置在該儲存裝置內,該儲存裝置控制器包括:一微處理器單元;一儲存媒體介面單元,耦接至該微處理器單元,以使該儲存裝置控制器耦接至該儲存單元;一主機介面單元,耦接至該微處理器單元,以使該儲存裝置控制器耦接至該主機;以及一資料保護單元,耦接至該微處理器單元,用以在該主機耦接該儲存裝置以存取該儲存單元中的一資料時,從該主機接收至少一讀取指令並執行該至少一讀取指令,而在該資料保護單元執行該至少一讀取指令後,該資料保護單元判別該主機對該資料進行的是一播放動作或一複製動作,當該資料保護單元判別該主機對該儲存裝置中的該 資料進行的是該播放動作時,該儲存裝置繼續執行該播放動作,以允許該主機存取該資料,當該資料保護單元判別該主機對該儲存裝置中的該資料進行的是該複製動作時,該儲存裝置控制器即執行一干擾程序,以防止或減緩該資料被複製到該主機。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該資料保護單元根據該儲存裝置之一資料流出量,判斷該主機進行的是該播放動作或該複製動作。
- 如申請專利範圍第78項所述之儲存裝置控制器,其中該資料流出量是在一特定時段所量測到的一資料流量值。
- 如申請專利範圍第78項所述之儲存裝置控制器,其中該資料流出量是在一特定時間間隔內所量測到的一資料流量平均值。
- 如申請專利範圍第80項所述之儲存裝置控制器,其中該資料保護單元定義一流速閾值,並在該特定時間間隔內每隔一採樣時距量測一次該儲存裝置的該資料流出量,以及利用在該特定時間間隔內所量測之所有資料流出量計算一平均流速,其中該特定時間間隔大於該採樣時距,其中該資料保護單元在該平均流速小於該流速閾值時,判定該主機對該資料進行該播放動作,該資料保護單元在該平均流速大於或等於該流速閾值時,判定該主機對該資料進行該複製動作。
- 如申請專利範圍第81項所述之儲存裝置控制器, 其中該資料保護單元係根據一預設檔案格式的種類或該儲存裝置之傳輸介面定義該流速閾值。
- 如申請專利範圍第81項所述之儲存裝置控制器,其中該儲存單元至少部份被劃分為多個存放空間,各該些存放空間個別對應一流速標準,且該資料位於該些存放空間其中之一,而該資料保護單元是以該資料所位於之存放空間對應的該流速標準作為該流速閾值。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中更包括:一儲存元件,用以儲存一預定時段內,該儲存裝置執行過的至少一主機指令或該主機指令所對應的一指令資訊。
- 如申請專利範圍第84項所述之儲存裝置控制器,其中該指令資訊至少包括下列其中之一:該主機指令的種類以及該主機指令所處理的資料長度。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該資料保護單元計數在一單位時間內該主機傳送至該儲存裝置之一讀取指令總數,並依據該讀取指令總數判定該主機進行的是該播放動作或該複製動作。
- 如申請專利範圍第86項所述之儲存裝置控制器,其中該資料保護單元在該總數大於或等於一預定值,則判定該主機進行的是該播放動作,並在該總數小於該預定值時,判定該主機進行的是該複製動作。
- 如申請專利範圍第77項所述之儲存裝置控制器, 其中當該主機是將該至少一讀取指令連續傳送至該儲存裝置時,該資料保護單元在該至少一讀取指令的一總數大於或等於一預定數量且該至少一讀取指令個別對應的一讀取資料長度皆大於一預定長度,則判定該主機進行的是該複製動作。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該資料保護單元根據該主機與該儲存裝置之間的一傳輸介面種類,定義一第一資料量與一第二資料量,其中該第二資料量大於該第一資料量,該資料保護單元在該主機要求的一資料讀取量與該第一資料量之間的差值小於該資料讀取量與該第二資料量之間的差值時,判定該主機進行的是該播放動作,該資料保護單元在該資料讀取量與該第一資料量之間的差值大於該資料讀取量與該第二資料量之間的差值時,判定該主機進行的是該複製動作。
- 如申請專利範圍第89項所述之儲存裝置控制器,其中該資料讀取量為單一個讀取指令所要求讀取的資料量。
- 如申請專利範圍第89項所述之儲存裝置控制器,其中該資料讀取量為該至少一讀取指令各別要求讀取之資料量的平均值。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該干擾程序包括回報一訊息至該主機。
- 如申請專利範圍第92項所述之儲存裝置控制器, 其中該訊息至少包括下列其中之一:一儲存媒體更動中訊息、一讀取失敗訊息、一資料循環冗餘檢查碼錯誤訊息、一錯誤校正碼錯誤訊息,以及一儲存媒體不存在訊息。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該干擾程序包括執行一無窮迴圈以進入一當機狀態。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該干擾程序包括依照一預設速度傳送該資料至該主機。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該儲存裝置在一預定干擾時間內執行該干擾程序,當經過該預定干擾時間後,該資料保護單元繼續判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該資料保護單元判斷該主機所存取的該資料是否屬於一系統資料,若該資料不屬於該系統資料,該資料保護單元判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第97項所述之儲存裝置控制器,其中該資料保護單元根據該資料的邏輯位址判斷是否為該系統資料。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該資料保護單元定義一緩衝時間,並在經過該緩衝時間後,判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該資料保護單元判斷該主機所存取的該資料是否位於該儲存單元中的一特定存放空間,若該資料位於該特定存放空間,該資料保護單元判別該主機對該資料進行的是該播放動作或該複製動作。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該儲存單元為一快閃記憶體。
- 如申請專利範圍第77項所述之儲存裝置控制器,其中該儲存裝置為該主機的一外接式儲存裝置。
- 一種資料保護方法,用以在一主機存取一儲存裝置中的一資料時對該資料進行保護,該儲存裝置內設置有一儲存裝置控制器,該方法包括:該儲存裝置控制器從該主機接收至少一讀取指令;該儲存裝置控制器執行該至少一讀取指令;於該儲存裝置控制器執行該至少一讀取指令後,該儲存裝置控制器判別該主機對該儲存裝置中的該資料進行的一讀取目的;以及根據判別結果,對於該主機的讀取至少有二種或二種以上的讀取回應。
- 如申請專利範圍第103項所述之資料保護方法,其中判別該主機對該儲存裝置中的該資料進行之該讀取目的的步驟包括:根據該儲存裝置的一資料流出量來判別該主機進行的該讀取目的。
- 如申請專利範圍第103項所述之資料保護方法,其中該些讀取回應包括:該儲存裝置控制器根據判別結果執行一干擾程序,以防止或減緩該資料被複製到該主機。
- 一種外接式儲存裝置,包括:一連接器;一儲存單元,該儲存單元至少分割成一第一存放空間及一第二存放空間,其中該第一存放空間及該第二存放空間分別儲存一資料;以及一儲存裝置控制器,耦接至該連接器與該儲存單元,且該儲存裝置控制器設置在該外接式儲存裝置內,當一主機透過該連接器耦接至該外接式儲存裝置以讀取該第一存放空間的該資料時,該儲存裝置控制器從該主機接收至少一讀取指令並執行該至少一讀取指令,而在該儲存裝置控制器執行該至少一讀取指令後,該儲存裝置控制器判別該主機對該第一存放空間之該資料的讀取目的,當該主機透過該連接器耦接至該外接式儲存裝置以讀取該第二存放空間的該資料時,該儲存裝置控制器會直接允許該主機的讀取而不進行判別該主機對該第二存放空間之該資料的讀取目的。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098131096A TWI413898B (zh) | 2009-09-15 | 2009-09-15 | 資料保護方法與系統、儲存裝置及儲存裝置控制器 |
US12/623,227 US8826461B2 (en) | 2009-09-15 | 2009-11-20 | Method and system for protecting data, storage device, and storage device controller |
JP2009280867A JP4964940B2 (ja) | 2009-09-15 | 2009-12-10 | データの保護方法とシステム、記憶デバイス及び記憶デバイスコントローラ |
US12/822,385 US8255656B2 (en) | 2009-09-15 | 2010-06-24 | Storage device, memory controller, and data protection method |
JP2012032273A JP5037734B2 (ja) | 2009-09-15 | 2012-02-17 | データの保護方法とシステム、記憶デバイス及び記憶デバイスコントローラ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098131096A TWI413898B (zh) | 2009-09-15 | 2009-09-15 | 資料保護方法與系統、儲存裝置及儲存裝置控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201109925A TW201109925A (en) | 2011-03-16 |
TWI413898B true TWI413898B (zh) | 2013-11-01 |
Family
ID=43731774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098131096A TWI413898B (zh) | 2009-09-15 | 2009-09-15 | 資料保護方法與系統、儲存裝置及儲存裝置控制器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8826461B2 (zh) |
JP (2) | JP4964940B2 (zh) |
TW (1) | TWI413898B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI439859B (zh) * | 2009-11-30 | 2014-06-01 | Silicon Motion Inc | 資料儲存裝置及其資料管理方法 |
JP6015414B2 (ja) * | 2012-12-18 | 2016-10-26 | 富士通株式会社 | プログラム、情報処理方法、及び情報処理装置 |
US9231921B2 (en) | 2013-08-20 | 2016-01-05 | Janus Technologies, Inc. | System and architecture for secure computer devices |
JP6423231B2 (ja) * | 2014-10-02 | 2018-11-14 | 株式会社メガチップス | 情報処理システム |
US10055236B2 (en) * | 2015-07-02 | 2018-08-21 | Sandisk Technologies Llc | Runtime data storage and/or retrieval |
KR20200093363A (ko) * | 2019-01-28 | 2020-08-05 | 에스케이하이닉스 주식회사 | 메모리 시스템 |
TWI750811B (zh) * | 2020-09-16 | 2021-12-21 | 英柏得科技股份有限公司 | 用於記憶體的資料保護寫入方法、用於記憶體的資料保護讀取方法以及記憶體資料保護系統 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7181560B1 (en) * | 2001-12-21 | 2007-02-20 | Joseph Grand | Method and apparatus for preserving computer memory using expansion card |
US20070079050A1 (en) * | 2005-09-21 | 2007-04-05 | Macrovision Corporation | Apparatus and method for monitoring and controlling access to data on a computer readable medium |
US7398364B2 (en) * | 2005-02-25 | 2008-07-08 | Hitachi, Ltd. | Switching method of data replication mode |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3123413B2 (ja) * | 1995-11-07 | 2001-01-09 | 株式会社日立製作所 | コンピュータシステム |
CN1303599C (zh) | 1998-11-02 | 2007-03-07 | 松下电器产业株式会社 | 高速缓存设备 |
JP3508680B2 (ja) * | 2000-02-24 | 2004-03-22 | 日本電気株式会社 | コンテンツ不正コピー防止方法およびシステム |
US6598112B1 (en) * | 2000-09-11 | 2003-07-22 | Agilent Technologies, Inc. | Method and apparatus for executing a program using primary, secondary and tertiary memories |
CN1185583C (zh) | 2000-09-19 | 2005-01-19 | Agc科技股份有限公司 | 防止非法复制数字数据的方法与装置 |
JP2005528860A (ja) * | 2002-06-04 | 2005-09-22 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ウォーターマーク検出 |
JP4245865B2 (ja) * | 2002-07-04 | 2009-04-02 | シャープ株式会社 | 情報処理装置および情報処理方法 |
US20040250065A1 (en) * | 2003-05-24 | 2004-12-09 | Browning James V. | Security software code |
TWI229528B (en) * | 2003-10-31 | 2005-03-11 | Benq Corp | Method of controlling dataflow for a media player system |
US7130971B2 (en) * | 2004-03-30 | 2006-10-31 | Hitachi, Ltd. | Assuring genuineness of data stored on a storage device |
US8087091B2 (en) * | 2004-07-08 | 2011-12-27 | Media Rights Technologies | Method and system for preventing unauthorized reproduction of electronic media |
US7555769B1 (en) * | 2004-12-16 | 2009-06-30 | Adobe Systems Incorporated | Security policy user interface |
US20070143827A1 (en) * | 2005-12-21 | 2007-06-21 | Fiberlink | Methods and systems for intelligently controlling access to computing resources |
US20070204115A1 (en) * | 2006-02-28 | 2007-08-30 | Maven Networks, Inc. | Systems and methods for storage shuffling techniques to download content to a file |
FR2906624A1 (fr) * | 2006-10-03 | 2008-04-04 | Bull S A S Soc Par Actions Sim | Systeme et procede de stockage de masse. |
JP4431599B2 (ja) | 2007-06-06 | 2010-03-17 | 日立コンシューマエレクトロニクス株式会社 | デジタルコンテンツの受信装置、受信方法、及び送受信方法 |
GB2460275B (en) * | 2008-05-23 | 2012-12-19 | Exacttrak Ltd | A Communications and Security Device |
US8272059B2 (en) * | 2008-05-28 | 2012-09-18 | International Business Machines Corporation | System and method for identification and blocking of malicious code for web browser script engines |
US8223580B2 (en) * | 2008-06-17 | 2012-07-17 | Ovonyx, Inc. | Method and apparatus for decoding memory |
US8255656B2 (en) * | 2009-09-15 | 2012-08-28 | Phison Electronics Corp. | Storage device, memory controller, and data protection method |
US20110083188A1 (en) * | 2009-10-07 | 2011-04-07 | Om Ahuja | Virus, trojan, worm and copy protection of audio, video, digital and multimedia, executable files and such installable programs |
US9092597B2 (en) * | 2009-12-09 | 2015-07-28 | Sandisk Technologies Inc. | Storage device and method for using a virtual file in a public memory area to access a plurality of protected files in a private memory area |
US8301715B2 (en) * | 2010-05-20 | 2012-10-30 | Sandisk Il Ltd. | Host device and method for accessing a virtual file in a storage device by bypassing a cache in the host device |
-
2009
- 2009-09-15 TW TW098131096A patent/TWI413898B/zh active
- 2009-11-20 US US12/623,227 patent/US8826461B2/en active Active
- 2009-12-10 JP JP2009280867A patent/JP4964940B2/ja active Active
-
2012
- 2012-02-17 JP JP2012032273A patent/JP5037734B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7181560B1 (en) * | 2001-12-21 | 2007-02-20 | Joseph Grand | Method and apparatus for preserving computer memory using expansion card |
US7398364B2 (en) * | 2005-02-25 | 2008-07-08 | Hitachi, Ltd. | Switching method of data replication mode |
US20070079050A1 (en) * | 2005-09-21 | 2007-04-05 | Macrovision Corporation | Apparatus and method for monitoring and controlling access to data on a computer readable medium |
Also Published As
Publication number | Publication date |
---|---|
JP2012141999A (ja) | 2012-07-26 |
TW201109925A (en) | 2011-03-16 |
JP2011065622A (ja) | 2011-03-31 |
US20110067118A1 (en) | 2011-03-17 |
JP5037734B2 (ja) | 2012-10-03 |
US8826461B2 (en) | 2014-09-02 |
JP4964940B2 (ja) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI413898B (zh) | 資料保護方法與系統、儲存裝置及儲存裝置控制器 | |
KR102020466B1 (ko) | 버퍼 메모리 장치를 포함하는 데이터 저장 장치 | |
KR101986355B1 (ko) | 임베디드 멀티미디어 카드, 상기 임베디드 멀티미디어 카드를 포함하는 임베디드 멀티미디어 카드 시스템 및 상기 임베디드 멀티미디어 카드의 동작 방법 | |
US20130117507A1 (en) | Memory storage apparatus, memory controller, and method for transmitting and identifying data stream | |
US8606970B2 (en) | Data writing method for non-volatile memory, and controller and storage system using the same | |
US8626985B2 (en) | Hybrid optical disk drive, method of operating the same, and electronic system adopting the hybrid optical disk drive | |
KR20180092435A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US8255656B2 (en) | Storage device, memory controller, and data protection method | |
US10042585B2 (en) | Pervasive drive operating statistics on SAS drives | |
JP2013041547A5 (zh) | ||
KR20160105625A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR20150006613A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
US8200888B2 (en) | Seek time emulation for solid state drives | |
US8776232B2 (en) | Controller capable of preventing spread of computer viruses and storage system and method thereof | |
US11640243B2 (en) | Supervised learning with closed loop feedback to improve input output consistency of solid state drives | |
WO2022067686A1 (zh) | 一种应用于固态硬盘ssd的数据读取方法及相关装置 | |
CN102023934B (zh) | 数据保护方法与系统、外接式存储装置及存储装置控制器 | |
US8296275B2 (en) | Data processing method, data processing system, and storage device controller | |
TW201734789A (zh) | 硬碟監控方法及硬碟監控系統 | |
TWI492050B (zh) | 儲存裝置、記憶體控制器及資料保護方法 | |
US8266108B2 (en) | Medium drive apparatus, operation method for medium drive apparatus, information processing apparatus, recording and reproduction accessing method for information processing apparatus, program, and program recording medium | |
US9804968B2 (en) | Storage system and data writing method | |
TWI410802B (zh) | 可提升作業速度之儲存系統及其作業方法 | |
US20230409200A1 (en) | Method and device for data storage | |
JP2012068808A (ja) | 可搬記憶装置 |