[0053] 直寫(xiě)緩沖模塊,用于當(dāng)數(shù)據(jù)Flit首次到達(dá)或者所述存儲(chǔ)矩陣為空時(shí),允許數(shù)據(jù)寫(xiě)入buffer中,所述buffer由可支持快速讀寫(xiě)的存儲(chǔ)構(gòu)成,并且所述直寫(xiě)緩沖模塊還用于同步更新所述指針管理模塊;
[0054] 數(shù)據(jù)傳輸及存儲(chǔ)模塊,用于根據(jù)所述映射模塊提供的數(shù)據(jù)地址從所述存儲(chǔ)矩陣獲取數(shù)據(jù),并向所述協(xié)議層輸出所述數(shù)據(jù);
[0055] 其中,所述存儲(chǔ)矩陣采用M×N粒度,存儲(chǔ)width對(duì)齊16B或32B以兼容68B或256B兩N
種數(shù)據(jù)位寬的Flit,存儲(chǔ)depth對(duì)齊2以便于重傳時(shí)的指針管理,可以循環(huán)使用指針。
[0056] 具體的,基于UCIE的重傳緩存系統(tǒng)實(shí)現(xiàn)了高效且靈活的數(shù)據(jù)傳輸和緩存管理。數(shù)據(jù)接收模塊負(fù)責(zé)從協(xié)議層接收數(shù)據(jù),映射模塊負(fù)責(zé)將數(shù)據(jù)正確地映射到存儲(chǔ)矩陣的對(duì)應(yīng)地址中,指針管理模塊追蹤和管理讀寫(xiě)指針的位置,而直寫(xiě)緩沖模塊則處理數(shù)據(jù)的快速寫(xiě)入和同步更新操作。這些模塊協(xié)同工作,解決了在高速數(shù)據(jù)傳輸中如何有效緩存和重傳數(shù)據(jù)的問(wèn)題,特別是對(duì)于不同大小的數(shù)據(jù)Flit,通過(guò)動(dòng)態(tài)調(diào)整存儲(chǔ)矩陣的寬度和深度,優(yōu)化了存儲(chǔ)資源的使用,減少了緩存溢出的風(fēng)險(xiǎn),并提高了數(shù)據(jù)傳輸?shù)男屎涂煽啃?。這種結(jié)構(gòu)特別適用于需要處理大量不同大小數(shù)據(jù)Flit的高速通信系統(tǒng),能夠顯著提升系統(tǒng)的整體性能和穩(wěn)定性。
[0057] 進(jìn)一步的,還包括:緩存管理和重傳機(jī)制,用于利用所述映射模塊和所述指針管理模塊進(jìn)行有效的讀寫(xiě)管理,或者在需要時(shí)進(jìn)行數(shù)據(jù)的重傳。
[0058] 具體的,通過(guò)集成緩存管理和重傳機(jī)制,實(shí)現(xiàn)了對(duì)數(shù)據(jù)讀寫(xiě)操作的高效管理,并能夠在必要時(shí)自動(dòng)執(zhí)行數(shù)據(jù)重傳,從而確保數(shù)據(jù)傳輸?shù)目煽啃院屯暾?。這種機(jī)制利用映射模塊精確地定位數(shù)據(jù)存儲(chǔ)位置,同時(shí)依靠指針管理模塊追蹤數(shù)據(jù)的讀寫(xiě)狀態(tài),使得系統(tǒng)能夠智能地識(shí)別數(shù)據(jù)傳輸過(guò)程中的錯(cuò)誤或丟失情況,并及時(shí)觸發(fā)重傳流程。即使在網(wǎng)絡(luò)條件不穩(wěn)定或數(shù)據(jù)流量高峰期,系統(tǒng)也能夠維持穩(wěn)定的性能,減少數(shù)據(jù)丟失的風(fēng)險(xiǎn),并提高整體的數(shù)據(jù)吞吐量。此外,這種自動(dòng)重傳的能力還減輕了人工干預(yù)的需要,降低了因手動(dòng)重傳操作而產(chǎn)生的延遲和潛在錯(cuò)誤,為用戶(hù)提供了更加流暢和可靠的數(shù)據(jù)傳輸體驗(yàn)。
[0059] 進(jìn)一步地,所述數(shù)據(jù)接收模塊在接收來(lái)自協(xié)議層的數(shù)據(jù)時(shí),通過(guò)令牌桶算法限制數(shù)據(jù)包的傳輸速率來(lái)控制數(shù)據(jù)流,具體內(nèi)容包括:
[0060] S11、初始化令牌桶參數(shù),在每個(gè)時(shí)間間隔,根據(jù)令牌添加速率向令牌桶中添加令牌;
[0061] S12、當(dāng)數(shù)據(jù)包到達(dá)令牌桶時(shí),檢查令牌桶中是否有足夠的令牌,當(dāng)有足夠的令牌,從桶中移除相應(yīng)數(shù)量的令牌,然后接收并處理數(shù)據(jù)包;
[0062] S13、令牌桶中的令牌不足,則發(fā)送一個(gè)信號(hào)給發(fā)送方,請(qǐng)求其降低發(fā)送速率;
[0063] S14、在每個(gè)時(shí)間間隔,對(duì)令牌桶中的令牌數(shù)量進(jìn)行更新,添加新的令牌并消耗令牌。
[0064] 添加新的令牌具體表示為: ,
[0065] 其中, 是更新后的令牌數(shù)量, 是當(dāng)前的令牌數(shù)量, 是令牌添加速率, 是桶的容量, 表示每個(gè)時(shí)間間隔。
[0066] 具體的,通過(guò)在數(shù)據(jù)接收模塊中實(shí)施令牌桶算法,能夠精確控制數(shù)據(jù)包的傳輸速率,有效管理數(shù)據(jù)流。通過(guò)動(dòng)態(tài)調(diào)節(jié)機(jī)制確保了網(wǎng)絡(luò)資源的合理利用,防止了網(wǎng)絡(luò)擁塞,并保證了數(shù)據(jù)傳輸?shù)姆€(wěn)定性和高效性。此外,每個(gè)時(shí)間間隔后,系統(tǒng)都會(huì)更新令牌桶中的令牌數(shù)量,這一自適應(yīng)過(guò)程使得系統(tǒng)能夠靈活應(yīng)對(duì)不同的網(wǎng)絡(luò)條件和數(shù)據(jù)流量,提高了整體網(wǎng)絡(luò)的性能和可靠性。
[0067] 進(jìn)一步的,所述存儲(chǔ)矩陣的深度為 ,其中N的值為大于等于0的整數(shù),存儲(chǔ)矩陣的寬度為16B或32B。
[0068] 所述存儲(chǔ)寬度對(duì)齊16B或32B是為了使所述存儲(chǔ)矩陣的深度最小化。
[0069] 采用深度為 和寬度為16B或32B的存儲(chǔ)矩陣配置,能夠有效地滿(mǎn)足不同數(shù)據(jù)Flit大小的存儲(chǔ)需求,提高緩存利用率,降低數(shù)據(jù)傳輸延遲,同時(shí)簡(jiǎn)化重傳時(shí)的指針管理,為高速數(shù)據(jù)傳輸提供了一個(gè)靈活、高效且可擴(kuò)展的緩存結(jié)構(gòu),從而增強(qiáng)了系統(tǒng)的整體性能和穩(wěn)定性。這種設(shè)計(jì)還允許系統(tǒng)根據(jù)實(shí)時(shí)數(shù)據(jù)流量動(dòng)態(tài)調(diào)整存儲(chǔ)資源,優(yōu)化能耗,并確保數(shù)據(jù)傳輸?shù)目煽啃浴?
[0070] 進(jìn)一步的,所述映射模塊還用于:當(dāng)所述數(shù)據(jù)Flit的長(zhǎng)度為68B時(shí),所述存儲(chǔ)矩陣的寬度設(shè)置為16B,所述存儲(chǔ)矩陣的深度設(shè)置為 ,其中N為整數(shù);當(dāng)所述數(shù)據(jù)Flit的長(zhǎng)度為256B時(shí),所述存儲(chǔ)矩陣的寬度設(shè)置為32B,所述存儲(chǔ)矩陣的深度設(shè)置為 。
[0071] 其中,在計(jì)算機(jī)網(wǎng)絡(luò)和高速通信領(lǐng)域,F(xiàn)lit描述了在網(wǎng)絡(luò)交換機(jī)或路由器內(nèi)部傳輸?shù)淖钚?shù)據(jù)單位,通常包含頭部信息和一部分有效載荷數(shù)據(jù);在高速網(wǎng)絡(luò)中,F(xiàn)lit?作為一個(gè)數(shù)據(jù)傳輸?shù)幕締卧兄谔岣邤?shù)據(jù)包的傳輸效率和處理速度。通過(guò)將數(shù)據(jù)包分割成更小的Flit,可以在網(wǎng)絡(luò)中實(shí)現(xiàn)更細(xì)粒度的流量控制和沖突避免,從而提高網(wǎng)絡(luò)的整體吞吐量和性能。