日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

校驗(yàn)和生成裝置及其方法

文檔序號:7508337閱讀:252來源:國知局
專利名稱:校驗(yàn)和生成裝置及其方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)處理,更具體涉及一種用來確定是否無差錯(cuò)地發(fā)送和接收數(shù)據(jù)的校驗(yàn)和生成裝置及其方法。
背景技術(shù)
校驗(yàn)和計(jì)算是以數(shù)據(jù)的傳輸單位對比特?cái)?shù)進(jìn)行計(jì)數(shù)以便判定所接收的數(shù)據(jù)是否與發(fā)送機(jī)所發(fā)送的數(shù)據(jù)具有相同的比特?cái)?shù)。如果接收機(jī)所計(jì)算的校驗(yàn)和匹配發(fā)送機(jī)所發(fā)送的校驗(yàn)和,那么判定數(shù)據(jù)被無差錯(cuò)地接收。校驗(yàn)和計(jì)算和判定在互聯(lián)網(wǎng)協(xié)議的傳輸控制協(xié)議(TCP)和用戶數(shù)據(jù)報(bào)協(xié)議(UDP)中執(zhí)行。
校驗(yàn)和計(jì)算是互聯(lián)網(wǎng)協(xié)議中最重要的數(shù)據(jù)處理之一。此外,必須高速計(jì)算校驗(yàn)和。傳統(tǒng)的校驗(yàn)和計(jì)算方法由于其加法器以16位為單位來處理數(shù)據(jù)而導(dǎo)致存在其計(jì)算速度太慢的問題。
技術(shù)方案本發(fā)明提供一種能夠通過以32位或更多位為單位來執(zhí)行加法并將相加的結(jié)果轉(zhuǎn)換成16位的校驗(yàn)和、來提高校驗(yàn)和計(jì)算速度的校驗(yàn)和生成裝置及其方法。
有益效果根據(jù)本發(fā)明,可以通過不分隔輸入數(shù)據(jù)而增加校驗(yàn)和計(jì)算速度。具體來說,當(dāng)以ASIC器件來實(shí)現(xiàn)校驗(yàn)和生成裝置時(shí),可以通過使用該ASIC器件的庫中的32位或64位加法器來增加校驗(yàn)和生成裝置的計(jì)算速度。


圖1是用于解釋生成校驗(yàn)和的方法的視圖;圖2是圖示根據(jù)本發(fā)明的實(shí)施例的校驗(yàn)和生成裝置的方框圖;圖3是圖示使用32位加法器的校驗(yàn)和生成裝置的詳細(xì)的方框圖;
圖4是圖示使用64位加法器的校驗(yàn)和生成裝置的詳細(xì)的方框圖;圖5A是圖示TCP段的格式的視圖;圖5B是圖示偽首標(biāo)格式的視圖;和圖6是圖示根據(jù)本發(fā)明的實(shí)施例的生成校驗(yàn)和的方法的流程圖。
實(shí)施模式根據(jù)本發(fā)明的一個(gè)方面,提供一種校驗(yàn)和生成裝置,包括控制單元,當(dāng)接收到對應(yīng)于預(yù)定長度的數(shù)據(jù)量時(shí),其響應(yīng)于關(guān)于該預(yù)定長度的信息輸出控制信號;加法單元,其接收數(shù)據(jù)、對所接收的數(shù)據(jù)執(zhí)行加法、并且響應(yīng)于控制信號輸出相加的結(jié)果;和轉(zhuǎn)換單元,其將所述相加的結(jié)果轉(zhuǎn)換成校驗(yàn)和。
加法單元最好以32位以上(整數(shù)X16位)的單位接收數(shù)據(jù),并對所接收的數(shù)據(jù)執(zhí)行加法。
此外,轉(zhuǎn)換單元最好將相加結(jié)果分成和以及進(jìn)位、將所述和劃分成16位的段,并且將16位的段與進(jìn)位相加,從而得到最終的和。
此外,轉(zhuǎn)換單元最好包括部分和加法單元,用于從相加結(jié)果中除去進(jìn)位、將已除去進(jìn)位的相加結(jié)果劃分成16位的段、將所述16位的段相加、從而得到部分和;第一加法器,用于將所述進(jìn)位與所述部分和相加;第二加法器,用于將第一加法器的相加結(jié)果和該相加結(jié)果中出現(xiàn)的進(jìn)位相加;和補(bǔ)碼計(jì)算器,用于輸出第二加法器的相加結(jié)果的二進(jìn)制補(bǔ)碼值。
根據(jù)本發(fā)明的另一方面,提供一種生成校驗(yàn)和的方法,該方法包括步驟(a)將輸入數(shù)據(jù)相加直到接收到預(yù)定控制信號;(b)當(dāng)接收到所述控制信號時(shí),輸出根據(jù)相加結(jié)果得到的和以及進(jìn)位;和(c)將和以及進(jìn)位相加并將相加結(jié)果轉(zhuǎn)換成校驗(yàn)和。
此外,在步驟(a)中,最好以超過32位(整數(shù)X16位)的單位接收數(shù)據(jù),并對所接收的數(shù)據(jù)執(zhí)行加法。
此外,步驟(b)最好包括步驟(b1)以超過32位(整數(shù)X16位)的單位將所接收的數(shù)據(jù)相加;和(b2)將步驟(b1)中產(chǎn)生的進(jìn)位相加。
此外,步驟(c)最好還包括步驟(c1)從相加結(jié)果中除去進(jìn)位、將已除去進(jìn)位的相加結(jié)果劃分成16位的段、將所述16位的段相加、從而得到部分和;(c2)將所述進(jìn)位與所述部分和相加;和(c3)將步驟(c2)的相加結(jié)果和該相加結(jié)果中出現(xiàn)的進(jìn)位相加;和(c4)輸出步驟(c3)的相加結(jié)果的二進(jìn)制補(bǔ)碼值。
根據(jù)本發(fā)明的另一方面,提供一種計(jì)算機(jī)可讀存儲介質(zhì),其中存儲由計(jì)算機(jī)執(zhí)行的程序,所述程序包括上述的方法。
具體實(shí)施例方式
通過參照附圖及其解釋將充分理解本發(fā)明及其操作優(yōu)點(diǎn)。
現(xiàn)在,將參照附圖詳細(xì)描述本發(fā)明的示例性實(shí)施例以便詳細(xì)解釋本發(fā)明。在附圖中,相同的附圖標(biāo)記表示相同的部件。
圖1是用于解釋生成校驗(yàn)和的方法的視圖。
將16位加法器用于生成校驗(yàn)和的方法。首先,將數(shù)據(jù)(0001 f203 f4f5 f6f7)分成16位的數(shù)據(jù)段并且對該16位的數(shù)據(jù)段執(zhí)行第一加法。就是說,第一加法是0001+f203+f4f5+f6f7。第一相加值Sum 1為2ddf0。由于使用16位加法器,所以第一相加值Sum 1的進(jìn)位是2。在第二加法中,將第一相加值Sum 1的進(jìn)位加回到16位加法器以便得到第二相加值Sum 2,即最終的值2+ddf0=ddf2。通過對最終的值ddf2執(zhí)行二進(jìn)制補(bǔ)碼運(yùn)算來得到校驗(yàn)和。因此,校驗(yàn)和為220d。在RFC1071文檔中詳細(xì)公開了校驗(yàn)和計(jì)算。
圖2是圖示根據(jù)本發(fā)明的實(shí)施例的校驗(yàn)和生成裝置的方框圖。
校驗(yàn)和生成裝置包括加法單元210、控制單元220和轉(zhuǎn)換單元230。以32位或64位的段為單位的數(shù)據(jù)被輸入到加法單元210。在一些情況下,可以以大于64位的段為單位輸入數(shù)據(jù)??梢杂?2位或64位加法器來構(gòu)造加法單元210。而且,可以用80位、96位或128位加法器來構(gòu)造加法單元210。在本發(fā)明中,輸入數(shù)據(jù)沒有被分成16位的數(shù)據(jù)段而是按照原樣將其相加。響應(yīng)于關(guān)于預(yù)定輸入數(shù)據(jù)長度的信息,控制單元220確定是否收到并累積對應(yīng)于該輸入數(shù)據(jù)長度的輸入數(shù)據(jù)。當(dāng)收到對應(yīng)于該長度的輸入數(shù)據(jù)時(shí),控制單元220輸出控制信號至加法單元210。響應(yīng)于該控制信號,加法單元210輸出其相加值至轉(zhuǎn)換單元230。轉(zhuǎn)換單元230將相加值轉(zhuǎn)換成16位的校驗(yàn)和并輸出該校驗(yàn)和。
加法單元210將輸入數(shù)據(jù)累積并相加以便得到部分和直到從控制單元220接收到控制信號。單獨(dú)進(jìn)行進(jìn)位加法??紤]到進(jìn)位的最大值,以10位為單位來存儲進(jìn)位加法的結(jié)果,即進(jìn)位和。當(dāng)從控制單元220接收到控制信號時(shí),將部分和以及進(jìn)位和輸出至轉(zhuǎn)換單元230。轉(zhuǎn)換單元230將部分和分成16位的段并將所述16位的段相加。將相加的結(jié)果加回到進(jìn)位和以便得到最終的和。轉(zhuǎn)換單元230輸出最終的和的二進(jìn)制補(bǔ)碼值。例如,假設(shè)加法單元210以32位為單位執(zhí)行加法并且部分和是32位的值,那么轉(zhuǎn)換單元230通過將32位的部分和的高16位和低16位與進(jìn)位相加來得到最終的和。此外,假設(shè)加法單元210以64位為單位執(zhí)行加法并且部分和為64位的值,那么轉(zhuǎn)換單元230通過將該64位的部分和的最高有效16位、高16位、低16位和最低有效16位與進(jìn)位相加來得到最終的和。
圖3是圖示使用32位加法器的校驗(yàn)和生成裝置的詳細(xì)方框圖。
加法單元210包括32位加法器305和進(jìn)位加法器310。32位加法器305將輸入數(shù)據(jù)相加,而進(jìn)位加法器310將進(jìn)位相加。轉(zhuǎn)換單元230包括劃分加法器315、第一加法器320、第二加法器325和補(bǔ)碼計(jì)算器330。劃分加法器315將32位的數(shù)據(jù)劃分成高16位數(shù)據(jù)段和低16位數(shù)據(jù)段并且將所述16位數(shù)據(jù)段相加。相加結(jié)果被加回到從第一加法器320中的進(jìn)位加法器輸出的進(jìn)位。第二加法器將第一加法器320的相加結(jié)果310與所述進(jìn)位并輸出最終的和相加,所述最終的和具有16位的值。補(bǔ)碼計(jì)算器330輸出最終的和的二進(jìn)制補(bǔ)碼值。
圖4是圖示使用64位加法器的校驗(yàn)和生成裝置的詳細(xì)方框圖。
加法單元210包括64位加法器405和進(jìn)位加法器410。32位加法器405將輸入數(shù)據(jù)相加,而進(jìn)位加法器310將進(jìn)位相加。轉(zhuǎn)換單元230包括劃分加法器415、第一加法器420、第二加法器425和補(bǔ)碼計(jì)算器430。劃分加法器415將62位的數(shù)據(jù)劃分成4個(gè)16位的數(shù)據(jù)段并且將所述4個(gè)16位的數(shù)據(jù)段相加。其它部件與32位加法器相同。
以上描述的校驗(yàn)和計(jì)算可以被應(yīng)用于任何協(xié)議,例如協(xié)議IP、TCP和UDP。現(xiàn)在將參照圖5A和圖5B詳細(xì)描述在協(xié)議TCP中使用的校驗(yàn)和計(jì)算。
圖5A是圖示TCP的段的格式的視圖。
TCP的段具有TCP首標(biāo)510和TCP凈荷520。TCP首標(biāo)510具有輸入校驗(yàn)和的校驗(yàn)和字段。需要偽首標(biāo)以便在協(xié)議TCP中計(jì)算校驗(yàn)和。TCP的段中的其它字段對于技術(shù)人員是公知的,所以省略對它們的詳細(xì)描述。
圖5B是圖示偽首標(biāo)格式的視圖。
偽首標(biāo)包括源IP地址、目的IP地址、填充符、協(xié)議號、TCP分組長度。偽首標(biāo)沒有被實(shí)際發(fā)送而是用于計(jì)算TCP分組的校驗(yàn)和。通過填充操作使數(shù)據(jù)的末端部分具有值0以便使數(shù)據(jù)長度是16位的倍數(shù)。TCP首標(biāo)的校驗(yàn)和字段具有值1。以16位為單位執(zhí)行加法。將相加的結(jié)果的二進(jìn)制補(bǔ)碼值輸入校驗(yàn)和字段。當(dāng)接收到TCP的段時(shí),接收機(jī)從IP首標(biāo)得到IP地址、生成TCP偽首標(biāo)并且計(jì)算校驗(yàn)和。
圖6是圖示根據(jù)本發(fā)明的實(shí)施例的生成校驗(yàn)和的方法的流程圖。
輸入數(shù)據(jù)沒有被分成16位的數(shù)據(jù)段而是按照原樣將其相加(S610)。相加結(jié)果中出現(xiàn)的進(jìn)位被單獨(dú)加在一起??紤]到進(jìn)位的最大值,以10位為單位存儲進(jìn)位的相加結(jié)果。判定是否收到并累積對應(yīng)于輸入數(shù)據(jù)長度的輸入數(shù)據(jù)(S620)。將輸入數(shù)據(jù)相加,直到收到對應(yīng)于該長度的輸入數(shù)據(jù)。將相加的結(jié)果轉(zhuǎn)換成16位的值(S630)。輸出該16位的值的二進(jìn)制補(bǔ)碼(S640)。
現(xiàn)在將詳細(xì)描述在輸入數(shù)據(jù)具有16位的值的情況下的步驟S630。分別用Sum1和Carry1來表示相加結(jié)果以其進(jìn)位。因此,Temp1=(Sum1的16位最高有效位)+(Sum1的16位最低有效位)+Carry1。如果由Carry2表示Temp1的進(jìn)位,那么Temp2=(Temp1)+(Carry2)。值Temp1成為16位的最終的值。在輸入數(shù)據(jù)具有64位的值的情況下,通過將4個(gè)16位的段和進(jìn)位相加得到值Temp1。通過與上述相同的計(jì)算得到值Temp2。
可以利用程序來實(shí)現(xiàn)上述生成校驗(yàn)和的方法。本領(lǐng)域的技術(shù)人員能夠容易地推想出構(gòu)成該程序的代碼和代碼段。此外,程序被存儲在計(jì)算機(jī)可讀存儲介質(zhì)中。由計(jì)算機(jī)讀取并執(zhí)行該程序。計(jì)算機(jī)可讀存儲介質(zhì)包括磁性存儲介質(zhì)、光存儲介質(zhì)和載波介質(zhì)。
權(quán)利要求
1.一種校驗(yàn)和生成裝置,包括控制單元,當(dāng)接收到對應(yīng)于預(yù)定長度的數(shù)據(jù)量時(shí),其響應(yīng)于關(guān)于該預(yù)定長度的信息輸出控制信號;加法單元,其接收數(shù)據(jù)、對所接收的數(shù)據(jù)執(zhí)行加法、并且響應(yīng)于控制信號輸出相加結(jié)果;和轉(zhuǎn)換單元,其將所述相加結(jié)果轉(zhuǎn)換成校驗(yàn)和。
2.根據(jù)權(quán)利要求1所述的校驗(yàn)和生成裝置,其中校驗(yàn)和具有16位的值。
3.根據(jù)權(quán)利要求1所述的校驗(yàn)和生成裝置,其中加法單元以32位以上(整數(shù)X16位)的單位接收數(shù)據(jù),并對所接收的數(shù)據(jù)執(zhí)行加法。
4.根據(jù)權(quán)利要求1所述的校驗(yàn)和生成裝置,其中轉(zhuǎn)換單元將相加結(jié)果分成和以及進(jìn)位、將所述和劃分成16位的段,并且將16位的段與進(jìn)位相加,從而得到最終的和。
5.根據(jù)權(quán)利要求4所述的校驗(yàn)和生成裝置,其中當(dāng)最終的和中出現(xiàn)進(jìn)位時(shí),轉(zhuǎn)換單元從最終的和中除去進(jìn)位并且將所述進(jìn)位與已經(jīng)除去進(jìn)位的最終的和相加,從而輸出加上進(jìn)位的最終的和。
6.根據(jù)權(quán)利要求5所述的校驗(yàn)和生成裝置,其中轉(zhuǎn)換單元輸出加上進(jìn)位的最終的和的二進(jìn)制補(bǔ)碼值作為16位的校驗(yàn)和。
7.根據(jù)權(quán)利要求1所述的校驗(yàn)和生成裝置,其中加法單元包括加法器,用于以32位以上(整數(shù)X 16位)的單位將所接收的數(shù)據(jù)相加;和進(jìn)位加法器,用于將所述加法器中生成的進(jìn)位相加。
8.根據(jù)權(quán)利要求1所述的校驗(yàn)和生成裝置,其中轉(zhuǎn)換單元包括部分和加法單元,用于從相加結(jié)果中除去進(jìn)位、將已除去進(jìn)位的相加結(jié)果劃分成16位的段、將所述16位的段相加,從而得到部分和;第一加法器,用于將所述進(jìn)位與所述部分和相加;第二加法器,用于將第一加法器的相加結(jié)果和該相加結(jié)果中出現(xiàn)的進(jìn)位相加;和補(bǔ)碼計(jì)算器,用于輸出第二加法器的相加結(jié)果的二進(jìn)制補(bǔ)碼值。
9.一種生成校驗(yàn)和的方法,該方法包括步驟(a)將輸入數(shù)據(jù)相加直到接收到預(yù)定控制信號;(b)當(dāng)接收到所述控制信號時(shí),輸出根據(jù)相加結(jié)果得到的和以及進(jìn)位;和(c)將和以及進(jìn)位相加并將相加結(jié)果轉(zhuǎn)換成校驗(yàn)和。
10.根據(jù)權(quán)利9所述的生成校驗(yàn)和的方法,其中校驗(yàn)和具有16位的值。
11.根據(jù)權(quán)利9所述的生成校驗(yàn)和的方法,其中當(dāng)接收到對應(yīng)于輸入數(shù)據(jù)長度的數(shù)據(jù)量時(shí)輸出控制信號。
12.根據(jù)權(quán)利9所述的生成校驗(yàn)和的方法,其中,在步驟(a)中,以32位以上(整數(shù)X 16位)的單位接收數(shù)據(jù)并且對所接收的數(shù)據(jù)執(zhí)行加法。
13.根據(jù)權(quán)利9所述的生成校驗(yàn)和的方法,其中,在步驟(c)中,將相加結(jié)果分成和以及進(jìn)位、將所述和劃分成16位的段并且將16位的段與進(jìn)位相加,從而得到最終的和。
14.根據(jù)權(quán)利13所述的生成校驗(yàn)和的方法,其中,在步驟(c)中,當(dāng)最終的和中出現(xiàn)進(jìn)位時(shí),從最終的和中除去該進(jìn)位并且將所述進(jìn)位與已經(jīng)除去進(jìn)位的最終的和相加,從而輸出加上進(jìn)位的最終的和。
15.根據(jù)權(quán)利14所述的生成校驗(yàn)和的方法,其中,在步驟(c)中,輸出加上進(jìn)位的最終的和的二進(jìn)制補(bǔ)碼值作為16位的校驗(yàn)和。
16.根據(jù)權(quán)利9所述的生成校驗(yàn)和的方法,其中,步驟(b)還包括步驟(b1)以32位以上(整數(shù)X 16位)的單位將所接收的數(shù)據(jù)相加;和(b2)將步驟(b1)中產(chǎn)生的進(jìn)位相加。
17.根據(jù)權(quán)利9所述的生成校驗(yàn)和的方法,其中,步驟(c)還包括步驟(c1)從相加結(jié)果中除去進(jìn)位、將已除去進(jìn)位的相加結(jié)果劃分成16位的段、將所述16位的段相加,從而得到部分和;(c2)將所述進(jìn)位與所述部分和相加;(c3)將步驟(c2)的相加結(jié)果和該相加結(jié)果中出現(xiàn)的進(jìn)位相加;和(c4)輸出步驟(c3)的相加結(jié)果的二進(jìn)制補(bǔ)碼值。
18.一種計(jì)算機(jī)可讀存儲介質(zhì),其中存儲由計(jì)算機(jī)執(zhí)行的程序,所述程序包括生成校驗(yàn)和的方法,其中該方法包括步驟(a)將輸入數(shù)據(jù)相加直到接收到預(yù)定控制信號;(b)當(dāng)接收到所述控制信號時(shí),輸出根據(jù)相加結(jié)果得到的和以及進(jìn)位;和(c)將和以及進(jìn)位相加并將相加結(jié)果轉(zhuǎn)換成校驗(yàn)和。
全文摘要
本發(fā)明提供一種校驗(yàn)和生成裝置及其方法。校驗(yàn)和生成裝置,包括控制單元,當(dāng)接收到對應(yīng)于預(yù)定長度的數(shù)據(jù)量時(shí),其響應(yīng)于關(guān)于該預(yù)定長度的信息輸出控制信號;加法單元,其接收數(shù)據(jù)、對所接收的數(shù)據(jù)執(zhí)行加法、并且響應(yīng)于控制信號輸出相加結(jié)果;和轉(zhuǎn)換單元,其將所述相加結(jié)果轉(zhuǎn)換成校驗(yàn)和。根據(jù)該校驗(yàn)和生成裝置,可以增加校驗(yàn)和計(jì)算速度。
文檔編號H03M13/09GK1894670SQ200480037679
公開日2007年1月10日 申請日期2004年12月10日 優(yōu)先權(quán)日2003年12月16日
發(fā)明者崔賢石 申請人:三星電子株式會(huì)社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1