国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      Usb糾錯(cuò)編解碼裝置及方法、usb傳輸系統(tǒng)及方法

      文檔序號(hào):6480707閱讀:385來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):Usb糾錯(cuò)編解碼裝置及方法、usb傳輸系統(tǒng)及方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及 一 種U S B糾錯(cuò)編解碼裝置及其方法,特別涉及 一種在USB的等時(shí)(isochronous)傳輸中,對(duì)USB傳輸錯(cuò)誤可實(shí)現(xiàn) 糾錯(cuò)的USB編解碼裝置及其方法。
      背景技術(shù)
      USB協(xié)議規(guī)定了四種傳輸方式,以適應(yīng)各種裝置的需要 控制(Control)傳輸,等時(shí)(isochronous)傳輸,中斷(interrupt)傳 輸及大量(bulk)傳輸。其中等時(shí)(isochronous)傳輸提供了確定的 帶寬和間隔時(shí)間(latency),因此通常被用于對(duì)實(shí)時(shí)性要求嚴(yán)格 的流數(shù)據(jù)傳輸,或者用于要求恒定的數(shù)據(jù)傳送率的實(shí)時(shí)應(yīng)用中。 音頻或視頻數(shù)據(jù)的實(shí)時(shí)性要求較高,因此在USB音頻或視頻裝 置和USB主控端(USB Host)之間,通常采用等時(shí)(isochronous) 傳輸?shù)膫鬏敺绞綄?shí)現(xiàn)數(shù)據(jù)傳輸。例如U S B音頻裝置在播音的時(shí) 候,USB主控端,如計(jì)算機(jī),將應(yīng)用程序發(fā)送的數(shù)字音頻數(shù)據(jù), 如PCM格式的音頻數(shù)據(jù),通過(guò)等時(shí)傳輸(isochronous)的傳輸方 式傳輸給USB音頻裝置,如USB揚(yáng)聲器,USB揚(yáng)聲器將接收到 的音頻數(shù)據(jù)進(jìn)行D/A轉(zhuǎn)換,然后產(chǎn)生模擬的聲音信號(hào)并輸出。
      在USB協(xié)議中,為了保證數(shù)據(jù)實(shí)時(shí)性,等時(shí)(isochronous) 傳輸并沒(méi)有定義錯(cuò)誤重傳機(jī)制來(lái)保證數(shù)據(jù)的正確性,而在等時(shí) 傳輸中再加入錯(cuò)誤重傳機(jī)制需要修改USB裝置的底層協(xié)議。但 是,USB裝置在實(shí)際的使用過(guò)程中,由于環(huán)境的因素,例如各 種電磁干擾的存在,數(shù)據(jù)在傳輸?shù)倪^(guò)程中不可避免的會(huì)發(fā)生錯(cuò) 誤。但是,由于沒(méi)有錯(cuò)誤重傳機(jī)制,所以此時(shí)對(duì)于錯(cuò)誤數(shù)據(jù)的 處理往往顯得很簡(jiǎn)單,通常的做法就是簡(jiǎn)單的丟棄。對(duì)于音頻
      6或視頻裝置而言,數(shù)據(jù)的丟失意味著聲音或圖像的連續(xù)性遭到 破壞。因此,表現(xiàn)出來(lái)的現(xiàn)象就是或者總諧波失真的升高,或 者說(shuō)是聲音或圖像品質(zhì)的下降。對(duì)于普通級(jí)別的音頻或視頻裝 置而言,在錯(cuò)誤發(fā)生的頻率較低的情況下,這種由于數(shù)據(jù)傳輸 錯(cuò)誤帶來(lái)的音質(zhì)或畫(huà)質(zhì)的下降是在可接受的范圍內(nèi)的,所以并 不影響此類(lèi)裝置的正常使用。但是對(duì)于高端的音頻或視頻裝置 而言,任何給音質(zhì)或畫(huà)質(zhì)帶來(lái)的損失錯(cuò)誤都要盡可能地避免。 因此,如果USB音頻或視頻裝置傳輸錯(cuò)誤過(guò)多,則無(wú)法滿(mǎn)足高 端的音頻或視頻裝置的要求。
      目前的USB音頻或視頻裝置中,大都沒(méi)有采取有效的措施 來(lái)降低這種錯(cuò)誤的發(fā)生概率,從而無(wú)法避免由于這種傳輸錯(cuò)誤 而帶來(lái)的性能的降低。

      發(fā)明內(nèi)容
      有鑒于此,本發(fā)明提出了 一種USB糾錯(cuò)編碼裝置,包括一 糾錯(cuò)編碼模塊,其接收一有效數(shù)據(jù),根據(jù)有效數(shù)據(jù)產(chǎn)生一糾錯(cuò)
      碼,并將糾錯(cuò)碼和有效數(shù)據(jù)排列為一糾錯(cuò)編碼數(shù)據(jù);以及一發(fā)
      送控制模塊,其將糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一 U S B總線(xiàn)上。
      本發(fā)明還提出了 一種USB糾錯(cuò)解碼裝置,包括一錯(cuò)誤校驗(yàn) 模塊,其判斷從一 U S B總線(xiàn)接收的 一 糾錯(cuò)編碼數(shù)據(jù)的傳輸是否 正確;以及一糾錯(cuò)運(yùn)算模塊,當(dāng)糾錯(cuò)編碼數(shù)據(jù)的傳輸不正確時(shí), 根據(jù)糾錯(cuò)編碼數(shù)據(jù)還原出一有效數(shù)據(jù)。
      本發(fā)明還提出了 一種可糾錯(cuò)的USB傳輸系統(tǒng),包括一USB 糾錯(cuò)編碼裝置,其根據(jù)一有效數(shù)據(jù)產(chǎn)生一糾錯(cuò)編碼數(shù)據(jù),并將 糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一USB總線(xiàn)上;以及一USB糾錯(cuò)解碼裝置, 其從USB總線(xiàn)上接收糾錯(cuò)編碼數(shù)據(jù),判斷糾錯(cuò)編碼數(shù)據(jù)的傳輸 是否正確,如果傳輸不正確,則根據(jù)該糾錯(cuò)編碼數(shù)據(jù)還原出有效數(shù)據(jù)。
      本發(fā)明還提出了 一種USB糾錯(cuò)編碼方法,包括接收一有效
      數(shù)據(jù)后,產(chǎn)生一糾錯(cuò)碼;將有效數(shù)據(jù)和糾錯(cuò)碼排列為一糾錯(cuò)編 碼數(shù)據(jù);以及將糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一 U S B總線(xiàn)上。
      本發(fā)明還提出了 一種USB糾錯(cuò)解碼方法,包括從一USB總 線(xiàn)接收 一 糾錯(cuò)編碼數(shù)據(jù);判斷糾錯(cuò)編碼數(shù)據(jù)的傳輸是否正確; 以及當(dāng)糾錯(cuò)編碼數(shù)據(jù)的傳輸不正確時(shí),根據(jù)糾錯(cuò)編碼數(shù)據(jù)還原 出一有效數(shù)據(jù)。
      本發(fā)明還提出了 一種可糾錯(cuò)的USB傳輸方法,包括接收一 有效數(shù)據(jù)后,產(chǎn)生一糾錯(cuò)碼;將有效數(shù)據(jù)和糾錯(cuò)碼排列為一糾 錯(cuò)編碼數(shù)據(jù);將糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一USB總線(xiàn)上;從USB總 線(xiàn)接收糾錯(cuò)編碼數(shù)據(jù);判斷糾錯(cuò)編碼數(shù)據(jù)的傳輸是否正確;以 及當(dāng)糾錯(cuò)編碼數(shù)據(jù)的傳輸不正確時(shí),根據(jù)糾錯(cuò)編碼數(shù)據(jù)還原出 有效數(shù)據(jù)。
      本發(fā)明可以顯著地降低或消除USB傳輸過(guò)程中產(chǎn)生的隨機(jī) 錯(cuò)誤,提高了USB主控端和USB設(shè)備端之間的傳輸可靠性,從 而提升了系統(tǒng)的性能。


      圖l是本發(fā)明USB糾錯(cuò)編碼裝置的 一 實(shí)施例的結(jié)構(gòu)示意圖。 圖2是本發(fā)明USB糾錯(cuò)解碼裝置的 一 實(shí)施例的結(jié)構(gòu)示意圖。 圖3是本發(fā)明 一 實(shí)施例的USB數(shù)據(jù)包的生成示意圖。 圖4是本發(fā)明可糾錯(cuò)的USB傳輸系統(tǒng)的另 一 實(shí)施例的結(jié)構(gòu) 示意圖。
      圖5是本發(fā)明可糾錯(cuò)的USB傳輸系統(tǒng)的另 一 實(shí)施例的結(jié)構(gòu) 示意圖。
      圖6是本發(fā)明可糾錯(cuò)的USB傳輸系統(tǒng)的另 一 實(shí)施例的結(jié)構(gòu)示意圖。
      圖7是本發(fā)明 一 實(shí)施例的USB糾錯(cuò)編碼方法的流程圖。 圖8是本發(fā)明 一 實(shí)施例的USB糾錯(cuò)解碼方法的流程圖。 附圖中符號(hào)說(shuō)明如下 10、 10, USB糾錯(cuò)編碼裝置 1011:糾錯(cuò)碼產(chǎn)生模塊 102:發(fā)送控制模塊 20、 20, USB糾錯(cuò)解碼裝置 201:接收控制模塊 203:數(shù)據(jù)擷取模塊 41、 52、 61: USB主控端
      101:糾錯(cuò)編碼模塊 1012:糾錯(cuò)碼排列模塊 1021:數(shù)據(jù)包封裝模塊
      202:錯(cuò)誤校驗(yàn)?zāi)K 204:糾錯(cuò)運(yùn)算模塊 42、 51、 62: USB設(shè)備端
      具體實(shí)施例方式
      圖l是本發(fā)明USB糾錯(cuò)編碼裝置的 一 實(shí)施例的結(jié)構(gòu)示意圖。 U S B糾錯(cuò)編碼裝置10接收 一 有效數(shù)據(jù),并根據(jù)該有效數(shù)據(jù)產(chǎn)生 一糾錯(cuò)編碼數(shù)據(jù),再將該糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一 U S B總線(xiàn)上。 在 一 實(shí)施例中,U S B糾錯(cuò)編碼裝置10可以包括 一 糾錯(cuò)編碼模塊 101和一發(fā)送控制模塊102。糾錯(cuò)編碼模塊101又可以包括一糾錯(cuò) 碼產(chǎn)生模塊101 l及一糾錯(cuò)碼排列模塊1012;發(fā)送控制模塊102 中還可以包括一數(shù)據(jù)包封裝才莫塊1021。在一實(shí)施例中,該糾錯(cuò) 碼產(chǎn)生模塊lOll接收該有效數(shù)據(jù),并產(chǎn)生 一 糾錯(cuò)碼(Error Correcting Code)。該糾錯(cuò)碼排列模塊1012接收該有效數(shù)據(jù)和該 糾錯(cuò)碼,并將該有效數(shù)據(jù)和該糾錯(cuò)碼排列為該糾錯(cuò)編碼數(shù)據(jù)。 其中該糾錯(cuò)碼可以采用不同的編碼算法產(chǎn)生,例如漢明糾錯(cuò)碼, BHG(Bose國(guó)Ghaudhuri-Hocquenghem) 》S il RS(Reed國(guó)Solomon) 編碼等。舉例而言,采用漢明糾錯(cuò)碼,其M^則為d+p+1^2P,其 中d表示該有效數(shù)據(jù)的位數(shù),p表示該糾錯(cuò)碼的位數(shù),則例如有效數(shù)位為4位,那么至少需要3位的漢明糾錯(cuò)碼才可以實(shí)現(xiàn)糾錯(cuò)。
      d位的有效數(shù)據(jù)通過(guò)與 一個(gè)生成矩陣相乘,生成該p位的糾錯(cuò)碼,
      再將該p位的糾錯(cuò)碼插入到該d位有效數(shù)據(jù)中排列為該糾錯(cuò)編碼 數(shù)據(jù)。再舉例而言,采用RS編碼,是將該有效數(shù)據(jù)通過(guò)伽羅瓦 (GF)運(yùn)算法則與一生成多項(xiàng)式運(yùn)算,產(chǎn)生該糾錯(cuò)碼。另外, 該糾錯(cuò)碼除了采用編碼運(yùn)算產(chǎn)生,也可以采用冗余傳輸?shù)姆绞健?在 一 實(shí)施例中,冗余傳輸?shù)姆绞绞且栽撚行?shù)據(jù)的冗余數(shù)據(jù)作 為糾錯(cuò)碼,其中冗余數(shù)據(jù)的產(chǎn)生例如是復(fù)制該有效數(shù)據(jù)。而且,
      冗余數(shù)據(jù)會(huì)排列在該有效數(shù)據(jù)之后,并與該有效數(shù)據(jù)一起作為 糾錯(cuò)編碼數(shù)據(jù)而傳輸。在一實(shí)施例中,為了提高糾錯(cuò)精確度, 可以復(fù)制多份冗余數(shù)據(jù) 一 起傳輸。該發(fā)送控制模塊10 2接收該糾 錯(cuò)編碼數(shù)據(jù),將該糾錯(cuò)編碼數(shù)據(jù)發(fā)送到USB總線(xiàn)上。在一實(shí)施 例中,該發(fā)送控制模塊10 2中的數(shù)據(jù)包封裝模塊10 21可以將該糾 錯(cuò)編碼數(shù)據(jù)封裝為一USB數(shù)據(jù)包的形式,其中該糾錯(cuò)編碼數(shù)據(jù) 位于該USB數(shù)據(jù)包中的一有效數(shù)據(jù)字段。
      圖2是本發(fā)明USB糾錯(cuò)解碼裝置的 一 實(shí)施例的結(jié)構(gòu)示意圖。 USB糾錯(cuò)解碼裝置20從USB總線(xiàn)上接收糾錯(cuò)編碼數(shù)據(jù),對(duì)該糾 錯(cuò)編碼數(shù)據(jù)進(jìn)行錯(cuò)誤校驗(yàn)。由于該糾錯(cuò)編碼數(shù)據(jù)在U S B總線(xiàn)上 傳輸?shù)倪^(guò)程中可能會(huì)發(fā)生錯(cuò)誤,導(dǎo)致部分?jǐn)?shù)據(jù)位(bit)丟失或 錯(cuò)誤,因此通過(guò)本發(fā)明的錯(cuò)誤校驗(yàn)可以判斷傳輸是否正確。如 果傳輸不正確,則通過(guò)糾錯(cuò)運(yùn)算進(jìn)行糾錯(cuò),還原出正確的有效 數(shù)據(jù)送至其它設(shè)備,以實(shí)現(xiàn)該有效數(shù)據(jù)的應(yīng)用功能。舉例而言, 如果該USB糾錯(cuò)解碼裝置20位于一USB音頻輸出設(shè)備,則在還 原出該有效數(shù)據(jù)后,該有效數(shù)據(jù)會(huì)被發(fā)送給數(shù)模轉(zhuǎn)換(D/A) 裝置(未繪示)以實(shí)現(xiàn)音頻的輸出。USB糾錯(cuò)解碼裝置20包括一 接收控制模塊201, —錯(cuò)誤校驗(yàn)?zāi)K202, —數(shù)據(jù)擷取模塊203 及一糾錯(cuò)運(yùn)算模塊204。該接收控制模塊201從該USB總線(xiàn)接收該糾錯(cuò)編碼數(shù)據(jù),在本發(fā)明的其它實(shí)施例中,接收控制模塊201
      可以省略,直接由該錯(cuò)誤校驗(yàn)?zāi)K202接收該糾錯(cuò)編碼數(shù)據(jù)。該 錯(cuò)誤校驗(yàn)?zāi)K202判斷該糾錯(cuò)編碼數(shù)據(jù)的傳輸是否正確,由于該 糾錯(cuò)編碼數(shù)據(jù)是以USB數(shù)據(jù)包的形式接收的,因此判斷該糾錯(cuò) 編碼數(shù)據(jù)的傳輸正確與否,可以直接利用該USB數(shù)據(jù)包中的一 循環(huán)冗余校驗(yàn)(CRC)字段中的數(shù)據(jù)。若該循環(huán)冗余校驗(yàn)(CRC) 字段中的數(shù)據(jù)顯示傳輸正確,該數(shù)據(jù)擷取模塊203從該USB數(shù)據(jù) 包的該有效數(shù)據(jù)字段的糾錯(cuò)編碼數(shù)據(jù)中擷取出該有效數(shù)據(jù),直 接將擷取出的該有效數(shù)據(jù)供給其它裝置使用,例如供給數(shù)模轉(zhuǎn) 換(D/A)裝置實(shí)現(xiàn)音頻的輸出。若傳輸不正確,則該糾錯(cuò)運(yùn) 算模塊204根據(jù)該糾錯(cuò)編碼數(shù)據(jù)還原出正確的有效數(shù)據(jù)。其中還 原的方法與圖l中的USB糾錯(cuò)編碼裝置10所采用的產(chǎn)生該糾錯(cuò) 編碼數(shù)據(jù)的方法相對(duì)應(yīng)。舉例而言,若糾錯(cuò)編碼采用漢明糾錯(cuò) 碼,則將擷取出的該糾錯(cuò)編碼數(shù)據(jù)進(jìn)行除法運(yùn)算。若不能除盡 則說(shuō)明傳輸錯(cuò)誤,且根據(jù)其錯(cuò)誤圖樣可以確定一種邏輯,來(lái)確 定錯(cuò)誤發(fā)生的位置,將錯(cuò)誤所在位(bit)的數(shù)據(jù)取反即可達(dá)到 糾錯(cuò)的目的。再舉例而言,若糾錯(cuò)編碼采用RS編碼,則根據(jù)該 糾錯(cuò)編碼數(shù)據(jù)產(chǎn)生一特征多項(xiàng)式,再根據(jù)該特征多項(xiàng)式確定錯(cuò) 誤發(fā)生的位置并糾錯(cuò)。另外,若糾錯(cuò)碼是該有效數(shù)據(jù)的冗余數(shù) 據(jù),是直接以傳輸無(wú)誤的冗余數(shù)據(jù)作為有效數(shù)據(jù)以達(dá)到糾錯(cuò)的 目的。
      圖3是本發(fā)明一實(shí)施例的USB數(shù)據(jù)包的生成示意圖。首先將 一有效數(shù)據(jù)31與生成的 一 糾錯(cuò)碼32排列,生成 一 糾錯(cuò)編碼數(shù)據(jù) 33。需要說(shuō)明的是根據(jù)不同的糾錯(cuò)編碼算法,該糾錯(cuò)碼與該有 效數(shù)據(jù)的排列方式有所不同。然后,再將該糾錯(cuò)編碼數(shù)據(jù)33封 裝為USB數(shù)據(jù)包30。 USB協(xié)議規(guī)定的一次USB等時(shí)(isochronous) 傳輸包括令牌包階段和數(shù)據(jù)包階段。在數(shù)據(jù)包階段,發(fā)送到U S B總線(xiàn)上的USB數(shù)據(jù)包30包括一同步字段(SYNC) 301,用于本 地時(shí)鐘與l俞入同步; 一標(biāo)識(shí)字^: ( PID ) 302,由標(biāo)識(shí)符和標(biāo)識(shí) 符反碼構(gòu)成,表明USB數(shù)據(jù)包30的類(lèi)型和格式; 一有效數(shù)據(jù)字 段(DATA) 303,其中該糾錯(cuò)編碼數(shù)據(jù)33被封裝到該有效數(shù)據(jù) 字段303; —循環(huán)冗余校驗(yàn)字段(CRC ) 304,對(duì)USB數(shù)據(jù)包30 的有效數(shù)據(jù)字段3 0 3進(jìn)行校驗(yàn),以判斷接收到的U S B數(shù)據(jù)包3 0 是否正確。
      本發(fā)明的U S B糾錯(cuò)編碼裝置和U S B糾錯(cuò)解碼裝置可以設(shè)置 在不同的設(shè)備中。圖4是本發(fā)明可糾錯(cuò)的USB傳輸系統(tǒng)的 一 實(shí)施 例的結(jié)構(gòu)示意圖??杉m錯(cuò)的USB傳輸系統(tǒng)包括一USB糾錯(cuò)編碼 裝置IO,設(shè)置在USB主控端(USB Host) 41,如一計(jì)算機(jī)中, 該USB主控端41中的上層應(yīng)用程序生成一有效數(shù)據(jù)供給該USB 糾錯(cuò)編碼裝置10; —USB糾錯(cuò)解碼裝置20,設(shè)置在USB設(shè)備端
      (USB Device )42,如USB接口的音頻播放裝置(USB聲卡,USB 揚(yáng)聲器等)。該USB糾錯(cuò)編碼裝置10通過(guò)該USB總線(xiàn)43以等時(shí)
      (isochronous )傳輸?shù)姆绞较蛟揢SB糾錯(cuò)解碼裝置20傳輸數(shù)據(jù), 其傳輸才莫式為USB的下行(downward)傳輸,即數(shù)據(jù)傳輸方向 是由USB主控端41至USB設(shè)備端42。本實(shí)施例中的USB糾錯(cuò)編 碼裝置10和USB糾錯(cuò)解碼裝置20分別與圖l和圖2中相同編號(hào)的 模塊功能相當(dāng)在USB主控端41,該有效數(shù)據(jù)通過(guò)糾錯(cuò)編碼模 塊101產(chǎn)生 一 糾錯(cuò)編碼數(shù)據(jù);再通過(guò)發(fā)送控制模塊102發(fā)送到 USB總線(xiàn)43上。在USB設(shè)備端42,接收控制才莫塊201接收該糾錯(cuò) 編碼數(shù)據(jù);再通過(guò)錯(cuò)誤校驗(yàn)?zāi)K2 02判斷該糾錯(cuò)編碼數(shù)據(jù)的傳輸 是否正確;若傳輸不正確,則通過(guò)該糾錯(cuò)運(yùn)算模塊204還原出正 確的有效數(shù)據(jù)。另外,需要指出的是本發(fā)明可應(yīng)用于所有USB 傳輸系統(tǒng),并不局限于音頻數(shù)據(jù)的USB傳輸。
      圖5是本發(fā)明可糾錯(cuò)的USB傳輸系統(tǒng)的另 一 實(shí)施例的結(jié)構(gòu)示意圖??杉m錯(cuò)的USB傳輸系統(tǒng)包括USB糾錯(cuò)編碼裝置IO,設(shè) 置在USB設(shè)備端(USB Device) 51,如一USB接口的音頻錄制 裝置中;USB糾錯(cuò)解碼裝置20,設(shè)置在USB主控端(USB Host) 52,如一計(jì)算機(jī)。該USB糾錯(cuò)編碼裝置10通過(guò)該USB總線(xiàn)53以 等時(shí)(isochronous)傳輸?shù)姆绞较蛟揢SB糾錯(cuò)解碼裝置20傳輸 數(shù)據(jù),其傳輸模式為USB的上行(upward)傳輸,即數(shù)據(jù)傳輸 方向是由USB設(shè)備端51至USB主控端52。本實(shí)施例中的USB糾 錯(cuò)編碼裝置10和USB糾錯(cuò)解碼裝置20分別與圖l和圖2中相同編 號(hào)的模塊功能相當(dāng)在USB設(shè)備端51,該有效數(shù)據(jù)通過(guò)糾錯(cuò)編 碼模塊101產(chǎn)生一糾錯(cuò)編碼數(shù)據(jù);再通過(guò)發(fā)送控制模塊102發(fā)送 到USB總線(xiàn)53上。在USB主控端52,接收控制模塊201接收該糾 錯(cuò)編碼數(shù)據(jù);再通過(guò)錯(cuò)誤校驗(yàn)?zāi)K2 02判斷該糾錯(cuò)編碼數(shù)據(jù)的傳 輸是否正確;若傳輸不正確,則通過(guò)該糾錯(cuò)運(yùn)算模塊204還原出 正確的有效數(shù)據(jù)。
      圖6是本發(fā)明可糾錯(cuò)的USB傳輸系統(tǒng)的另 一 實(shí)施例的結(jié)構(gòu) 示意圖??杉m錯(cuò)的USB傳輸系統(tǒng)包括USB主控端(USBHost) 61和USB設(shè)備端(USB Device) 62。 USB主控端61中包括USB 糾錯(cuò)編碼裝置10和USB糾錯(cuò)解碼裝置20,; USB設(shè)備端62中包括 USB糾錯(cuò)編碼裝置10,和USB糾錯(cuò)解碼裝置20。本實(shí)施例中的 USB糾錯(cuò)編碼裝置10和USB糾錯(cuò)解碼裝置20分別與圖l和圖2中 相應(yīng)編號(hào)的模塊功能相當(dāng),這里不再贅述。USB主控端61中的 該USB糾錯(cuò)編碼裝置10通過(guò)該USB總線(xiàn)63以等時(shí)(isochronous ) 傳輸?shù)姆绞较騏SB設(shè)備端62中的該USB糾錯(cuò)解碼裝置20傳輸數(shù) 據(jù)。USB設(shè)備端62中的該USB糾錯(cuò)編碼裝置10,通過(guò)該USB總線(xiàn) 63以等時(shí)(isochronous )傳輸?shù)姆绞较騏SB主控端61中的該USB 糾錯(cuò)解碼裝置20,傳輸數(shù)據(jù)。本實(shí)施例應(yīng)用在USB主控端(USB Host) 61和USB設(shè)備端(USB Device) 62之間既有上行傳輸又有下行傳輸?shù)膫鬏斚到y(tǒng)中,該USB糾錯(cuò)編碼裝置10和該USB糾 錯(cuò)解碼裝置20配合可以實(shí)現(xiàn)對(duì)下行傳輸中的錯(cuò)誤進(jìn)行糾錯(cuò);該 USB糾錯(cuò)編碼裝置IO,和該USB糾錯(cuò)解碼裝置20,配合可以實(shí)現(xiàn) 對(duì)上行傳輸中的錯(cuò)誤進(jìn)行糾錯(cuò)。
      圖7是本發(fā)明一實(shí)施例的USB糾錯(cuò)編碼方法的流程圖。如圖 7所示,首先執(zhí)行步驟S701:接收一有效數(shù)據(jù)后,產(chǎn)生一糾錯(cuò) 碼;執(zhí)行步驟S702:將該有效數(shù)據(jù)和該糾錯(cuò)碼排列為 一糾錯(cuò)編 碼數(shù)據(jù),如前所述,該糾錯(cuò)編碼數(shù)據(jù)可以采用不同的方法產(chǎn)生, 例如漢明糾錯(cuò)碼,BHC編碼或RS編碼或冗余傳輸?shù)姆椒ǖ龋粓?zhí) 行步驟S 7 0 3:將該糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一 U S B總線(xiàn)上。
      圖8是本發(fā)明一實(shí)施例的USB糾錯(cuò)解碼方法的流程圖。如圖 8所示,首先執(zhí)行步驟S801:從一USB總線(xiàn)接收一糾錯(cuò)編碼數(shù)據(jù), 其中該糾錯(cuò)編碼數(shù)據(jù)包含在一USB數(shù)據(jù)包中;再執(zhí)行步驟S802: 判斷該糾錯(cuò)編碼數(shù)據(jù)的傳輸是否正確;若傳輸正確H 'J執(zhí)行步驟 S803:從該USB數(shù)據(jù)包的 一有效數(shù)據(jù)字段中擷取出該糾錯(cuò)編碼 數(shù)據(jù),并再?gòu)脑摷m錯(cuò)編碼數(shù)據(jù)中擷取出一有效數(shù)據(jù);若傳輸不 正確則執(zhí)行步驟S804:根據(jù)該糾錯(cuò)編碼數(shù)據(jù)還原出該有效數(shù) 據(jù),如前所述還原有效數(shù)據(jù)的方法與產(chǎn)生該糾錯(cuò)編碼數(shù)據(jù)的方
      法相對(duì)應(yīng)。
      本發(fā)明可糾錯(cuò)的USB傳輸方法的 一 實(shí)施例是采用圖7所示 的USB糾錯(cuò)編碼方法及圖8所示的USB糾錯(cuò)解碼方法來(lái)完成具 備糾錯(cuò)功能的USB傳輸。
      本發(fā)明中USB糾錯(cuò)編碼裝置和USB糾錯(cuò)解碼裝置中各模塊 及糾錯(cuò)編解碼方法的實(shí)現(xiàn)方式可以是硬件模塊,也可以是軟件 模塊。例如,在Microsoft Windows系統(tǒng)中的USB主控端(USB Host)的各模塊可以通過(guò)濾波器驅(qū)動(dòng)器(filter Driver )的軟件方 式來(lái)實(shí)現(xiàn)。USB設(shè)備端(Device)的各模塊可以由數(shù)字信號(hào)處理(DSP)和相應(yīng)的算法來(lái)實(shí)現(xiàn)。而且,USB糾錯(cuò)編碼裝置和USB糾 錯(cuò)解碼裝置可以通過(guò)協(xié)商,采用合適的糾錯(cuò)算法,來(lái)達(dá)到糾錯(cuò) 能力和運(yùn)算復(fù)雜性之間的平衡。
      本發(fā)明在無(wú)須更改USB裝置的硬件底層協(xié)議的前提下,通 過(guò)USB糾錯(cuò)編解碼裝置的配合,實(shí)現(xiàn)對(duì)USB傳輸過(guò)程中發(fā)生的 傳輸錯(cuò)誤進(jìn)行糾錯(cuò),經(jīng)本發(fā)明的USB傳輸系統(tǒng)所傳輸?shù)臄?shù)據(jù)通 過(guò)糾錯(cuò)可以保持?jǐn)?shù)據(jù)的高品質(zhì)。
      本發(fā)明除了適用于無(wú)錯(cuò)誤重傳機(jī)制的等時(shí)(isochronous)傳 輸方式以外,也可以適用于USB協(xié)議中規(guī)定的其它傳輸方式, 如控制(Control)傳輸,中斷(interrupt)傳輸及大量(bulk)傳輸。
      本發(fā)明可以顯著地降低或消除USB傳輸過(guò)程中產(chǎn)生的隨機(jī) 錯(cuò)誤,提高了 USB主控端和USB設(shè)備端之間的傳輸可靠性,從 而提高了可靠還原數(shù)據(jù)的能力,從而提升了系統(tǒng)的性能,因此 具有很高的產(chǎn)業(yè)利用性。
      以上所述僅為本發(fā)明較佳實(shí)施例,然其并非用以限定本發(fā)
      明的范圍,任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范 圍內(nèi),可在此基礎(chǔ)上做進(jìn)一步的改進(jìn)和變化,因此本發(fā)明的保 護(hù)范圍當(dāng)以本申請(qǐng)的權(quán)利要求書(shū)所界定的范圍為準(zhǔn)。
      權(quán)利要求
      1. 一種USB糾錯(cuò)編碼裝置,其特征在于,包括一糾錯(cuò)編碼模塊,其接收一有效數(shù)據(jù)后,根據(jù)該有效數(shù)據(jù)產(chǎn)生一糾錯(cuò)碼,并將該糾錯(cuò)碼和該有效數(shù)據(jù)排列為一糾錯(cuò)編碼數(shù)據(jù);以及一發(fā)送控制模塊,其將該糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一USB總線(xiàn)上。
      2. 根據(jù)權(quán)利要求1所述的USB糾錯(cuò)編碼裝置,其特征在于,該發(fā)送控制模塊將該糾錯(cuò)編碼數(shù)據(jù)以一 U S B數(shù)據(jù)包的形式發(fā)送至該USB總線(xiàn)。
      3. 根據(jù)權(quán)利要求1所述的USB糾錯(cuò)編碼裝置,其特征在于,該糾錯(cuò)編碼模塊以 一 冗余數(shù)據(jù)作為該糾錯(cuò)碼。
      4. 一種USB糾錯(cuò)解碼裝置,其特征在于,包括一錯(cuò)誤校驗(yàn)?zāi)K,其判斷從一 U S B總線(xiàn)接收的 一 糾錯(cuò)編碼數(shù)據(jù)的傳輸是否正確;以及一糾錯(cuò)運(yùn)算模塊,當(dāng)該糾錯(cuò)編碼數(shù)據(jù)的傳輸不正確時(shí),根據(jù)該糾錯(cuò)編碼數(shù)據(jù)還原出一有效數(shù)據(jù)。
      5. 根據(jù)權(quán)利要求4所述的USB糾錯(cuò)解碼裝置,其特征在于,還包括 一 接收控制模塊,其從該U S B總線(xiàn)接收該糾錯(cuò)編碼數(shù)據(jù)。
      6. 根據(jù)權(quán)利要求4所述的USB糾錯(cuò)解碼裝置,其特征在于,還包括一數(shù)據(jù)擷取模塊,當(dāng)該糾錯(cuò)編碼數(shù)據(jù)的傳輸正確時(shí),該數(shù)據(jù)擷取模塊從該糾錯(cuò)編碼數(shù)據(jù)中擷取出該有效數(shù)據(jù)。
      7. 根據(jù)權(quán)利要求4所述的USB糾錯(cuò)解碼裝置,其特征在于,該糾錯(cuò)編碼數(shù)據(jù)包含在一USB數(shù)據(jù)包中,該錯(cuò)誤校驗(yàn)?zāi)K根據(jù)該USB數(shù)據(jù)包的 一循環(huán)冗余校驗(yàn)字段判斷該糾錯(cuò)編碼數(shù)據(jù)是否正確。
      8. 根據(jù)權(quán)利要求4所述的USB糾錯(cuò)解碼裝置,其特征在于,該糾錯(cuò)運(yùn)算模塊對(duì)該糾錯(cuò)編碼數(shù)據(jù)進(jìn)行 一 解碼運(yùn)算還原該有效數(shù)據(jù)。
      9. 根據(jù)權(quán)利要求4所述的USB糾錯(cuò)解碼裝置,其特征在于,該糾錯(cuò)運(yùn)算模塊是以該糾錯(cuò)編碼數(shù)據(jù)中的 一 冗余數(shù)據(jù)作為該有效數(shù)據(jù)。
      10. —種可糾錯(cuò)的USB傳輸系統(tǒng),其特征在于,包括一 U S B糾錯(cuò)編碼裝置,其根據(jù) 一 有效數(shù)據(jù)產(chǎn)生 一 糾錯(cuò)編碼數(shù)據(jù),并將該糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一USB總線(xiàn)上;以及一USB糾錯(cuò)解碼裝置,其從該USB總線(xiàn)上接收該糾錯(cuò)編碼數(shù)據(jù),判斷該糾錯(cuò)編碼數(shù)據(jù)的傳輸是否正確,如果傳輸不正確,則根據(jù)該糾錯(cuò)編碼數(shù)據(jù)還原出該有效數(shù)據(jù)。
      11. 根據(jù)權(quán)利要求10所述的可糾錯(cuò)的USB傳輸系統(tǒng),其特征在于,該USB糾錯(cuò)編碼裝置還包括一糾錯(cuò)編碼模塊,其接收該有效數(shù)據(jù)后,產(chǎn)生一糾錯(cuò)碼,并將該有效數(shù)據(jù)和該糾錯(cuò)碼排列為該糾錯(cuò)編碼數(shù)據(jù);以及一發(fā)送控制模塊,其接收該糾錯(cuò)編碼數(shù)據(jù),將該糾錯(cuò)編碼數(shù)據(jù)封裝為一 U S B數(shù)據(jù)包并發(fā)送到該U S B總線(xiàn)上。
      12. 根據(jù)權(quán)利要求10所述的可糾錯(cuò)的USB傳輸系統(tǒng),其特征在于,該USB糾錯(cuò)解碼裝置還包括一錯(cuò)誤校驗(yàn)?zāi)K,其判斷從該U S B總線(xiàn)上接收到的該糾錯(cuò)編碼數(shù)據(jù)的傳輸是否正確,其中該糾錯(cuò)編碼數(shù)據(jù)包括在一USB數(shù)據(jù)包中;以及一糾錯(cuò)運(yùn)算模塊,當(dāng)該糾錯(cuò)編碼數(shù)據(jù)的傳輸不正確時(shí),其根據(jù)該糾錯(cuò)編碼數(shù)據(jù)還原出該有效數(shù)據(jù)。
      13. 根據(jù)權(quán)利要求12所述的可糾錯(cuò)的USB傳輸系統(tǒng),其特征在于,該USB糾錯(cuò)解碼裝置還包括一數(shù)據(jù)擷取模塊,當(dāng)該糾錯(cuò)編碼數(shù)據(jù)的傳輸正確時(shí),其從該糾錯(cuò)編碼數(shù)據(jù)中擷取出該有效數(shù)據(jù)。
      14. 根據(jù)權(quán)利要求12所述的可糾錯(cuò)的USB傳輸系統(tǒng),其特 征在于,該錯(cuò)誤校驗(yàn)?zāi)K根據(jù)該U S B數(shù)據(jù)包的 一 循環(huán)冗余校驗(yàn) 字段判斷該糾錯(cuò)編碼數(shù)據(jù)是否正確。
      15. 根據(jù)權(quán)利要求10所述的可糾錯(cuò)的USB傳輸系統(tǒng),其特 征在于,該糾錯(cuò)編碼數(shù)據(jù)是以 一 等時(shí)傳輸?shù)姆绞桨l(fā)送到該U S B 總線(xiàn)上。
      16. 根據(jù)權(quán)利要求10所述的可糾錯(cuò)的USB傳輸系統(tǒng),其特 征在于,該USB糾錯(cuò)編碼裝置和該USB糾錯(cuò)解碼裝置其中之一 置于一USB主控端時(shí),則另 一置于一USB設(shè)備端。
      17. —種USB糾錯(cuò)編碼方法,其特征在于,包括下列步驟 接收一有效數(shù)據(jù)后,產(chǎn)生一糾錯(cuò)碼;將該有效數(shù)據(jù)和該糾錯(cuò)碼排列為 一 糾錯(cuò)編碼數(shù)據(jù);以及 將該糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一 U S B總線(xiàn)上。
      18. 根據(jù)權(quán)利要求17所述的USB糾錯(cuò)編碼方法,其特征在 于,將該糾錯(cuò)編碼數(shù)據(jù)以一USB數(shù)據(jù)包的形式發(fā)送至該USB總 線(xiàn),其中該糾錯(cuò)編碼數(shù)據(jù)封裝到該USB數(shù)據(jù)包中的 一有效數(shù)據(jù) 字段。
      19. 一種USB糾錯(cuò)解碼方法,其特征在于,包括下列步驟 從一 U S B總線(xiàn)接收 一 糾錯(cuò)編碼數(shù)據(jù); 判斷該糾錯(cuò)編碼數(shù)據(jù)的傳輸是否正確;以及當(dāng)該糾錯(cuò)編碼數(shù)據(jù)的傳輸不正確時(shí),根據(jù)該糾錯(cuò)編碼數(shù)據(jù) 還原出一有效數(shù)據(jù)。
      20. 根據(jù)權(quán)利要求19所述的USB糾錯(cuò)解碼方法,其特征在 于,還包括當(dāng)該糾錯(cuò)編碼數(shù)據(jù)的傳輸正確時(shí),從該糾錯(cuò)編碼 數(shù)據(jù)中擷取出該有效數(shù)據(jù)。
      21. 根據(jù)權(quán)利要求19所述的USB糾錯(cuò)解碼方法,其特征在 于,該糾錯(cuò)編碼數(shù)據(jù)包含在一USB數(shù)據(jù)包中,判斷該糾錯(cuò)編碼數(shù)據(jù)是否正確是依據(jù)該USB數(shù)據(jù)包的 一循環(huán)冗余校驗(yàn)字段。
      22. —種可糾錯(cuò)的USB傳輸方法,其特征在于,包括下列 步驟接收一有效數(shù)據(jù)后,產(chǎn)生一糾錯(cuò)碼; 將該有效數(shù)據(jù)和該糾錯(cuò)碼排列為 一 糾錯(cuò)編碼數(shù)據(jù); 將該糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一 U S B總線(xiàn)上; 從該U S B總線(xiàn)接收該糾錯(cuò)編碼數(shù)據(jù); 判斷該糾錯(cuò)編碼數(shù)據(jù)的傳輸是否正確;以及 當(dāng)該糾錯(cuò)編碼數(shù)據(jù)的傳輸不正確時(shí),根據(jù)該糾錯(cuò)編碼數(shù)據(jù) 還原出該有效凄t據(jù)。
      全文摘要
      本發(fā)明提供一種USB糾錯(cuò)編解碼裝置及方法、USB傳輸系統(tǒng)及方法。USB糾錯(cuò)編碼裝置根據(jù)一有效數(shù)據(jù)產(chǎn)生一糾錯(cuò)編碼數(shù)據(jù),再將糾錯(cuò)編碼數(shù)據(jù)發(fā)送到一USB總線(xiàn)上。USB糾錯(cuò)解碼裝置從USB總線(xiàn)上接收糾錯(cuò)編碼數(shù)據(jù),對(duì)糾錯(cuò)編碼數(shù)據(jù)進(jìn)行一錯(cuò)誤校驗(yàn),如果傳輸不正確,則根據(jù)該糾錯(cuò)編碼數(shù)據(jù)還原出有效數(shù)據(jù)。本發(fā)明可以顯著地降低或消除USB傳輸過(guò)程中產(chǎn)生的隨機(jī)錯(cuò)誤,提高了USB主控端和USB設(shè)備端之間的傳輸可靠性,從而提升了系統(tǒng)的性能。
      文檔編號(hào)G06F13/42GK101477507SQ20091000609
      公開(kāi)日2009年7月8日 申請(qǐng)日期2009年1月22日 優(yōu)先權(quán)日2009年1月22日
      發(fā)明者李志強(qiáng) 申請(qǐng)人:威盛電子股份有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1