本應(yīng)用筆記解釋了如何計(jì)算DS31256 HDLC控制器的總線帶寬。顯示了實(shí)驗(yàn)室測試示例。總線利用率計(jì)算器電子表格已解釋,可應(yīng)要求提供。
概述
DS31256 HDLC控制器訪問PCI總線,在發(fā)送和接收HDLC數(shù)據(jù)包時(shí)獲取和存儲這些數(shù)據(jù)包。本應(yīng)用筆記解釋了如何計(jì)算DS31256正常工作所需的可用總線帶寬。本應(yīng)用筆記中使用的術(shù)語將在一開始就定義。
根據(jù)本應(yīng)用筆記中提供的信息,用戶可以修改計(jì)算器電子表格中的數(shù)字(可根據(jù)要求提供),以適應(yīng)其特定應(yīng)用。
變量 | 定義 | 有效范圍 |
B | 主機(jī)更新接收空閑隊(duì)列和傳輸掛起隊(duì)列或讀取接收完成隊(duì)列和傳輸完成隊(duì)列之前處理的平均數(shù)據(jù)包數(shù) | 1, 2, 3, . . . . |
C | 每個(gè)數(shù)據(jù)包所需的平均總線周期數(shù) | 1, 2, 3, . . . . |
D | 傳輸數(shù)據(jù)所需的總線周期數(shù) | 1, 2, 3, . . . . |
P | 數(shù)據(jù)包大小(以字節(jié)為單位) | 64 |
R | 由于 RAM 訪問延遲而增加的平均總線周期數(shù) | 0, 1, 2, . . . . |
X | 向數(shù)據(jù)緩沖區(qū)發(fā)送或獲取數(shù)據(jù)包數(shù)據(jù)所需的平均總線訪問次數(shù) | 1, 2, 3, . . . . |
巴士訪問的類型
DS31256或主機(jī)執(zhí)行四種類型的總線訪問,以支持DS31256中的直接存儲器訪問(DMA)。在下面的描述中,變量 D 定義為數(shù)據(jù)周期數(shù),變量 R 定義為由于 RAM 訪問延遲而需要的總線周期數(shù)。
訪問類型 1:DMA 從主機(jī) RAM 突發(fā)讀取
從主機(jī) RAM 讀取 DMA 突發(fā)時(shí)所需的總線周期總數(shù)為 [3+R+D]。該公式由圖1和表2推導(dǎo)出來。
周期 | 不。所需周期 |
地址周期 | 1 |
周轉(zhuǎn)周期 | 1 |
內(nèi)存訪問延遲周期 | R |
數(shù)據(jù)周期 | D |
周轉(zhuǎn)周期 | 1 |
圖1.DS31256 PCI總線讀取
訪問類型 2:DMA 對主機(jī) RAM 的突發(fā)寫入
DMA 突發(fā)寫入主機(jī) RAM 時(shí)所需的總線周期總數(shù)為 [2+R+D]。該公式由圖2和表3推導(dǎo)而來。
周期 | 不。所需周期 |
地址周期 | 1 |
內(nèi)存訪問延遲周期 | R |
數(shù)據(jù)周期 | D |
周轉(zhuǎn)周期 | 1 |
圖2.DS31256 PCI總線寫入周期
訪問類型3:由主機(jī)寫入DS31256
主機(jī)寫入DS31256時(shí)所需的總線周期總數(shù)為7。
訪問類型4:主機(jī)讀取DS31256
主機(jī)從DS31256讀取數(shù)據(jù)時(shí)所需的總線周期總數(shù)為7。
注意:對于訪問類型3和4,7周期訪問是DS31256固有的,不能更改。
每個(gè)數(shù)據(jù)包所需的總線周期數(shù)
要計(jì)算總線利用率,必須知道所需的總線周期數(shù)。為了獲得這個(gè)數(shù)字,做了幾個(gè)假設(shè),并在表4中列出。圖 3 顯示了主機(jī)和 DMA 對于接收或傳輸?shù)拿總€(gè)數(shù)據(jù)包將遵循的標(biāo)準(zhǔn)序列。從圖3中,可以創(chuàng)建一個(gè)公式來計(jì)算每個(gè)數(shù)據(jù)包所需的平均總線周期數(shù),即變量C。
傳輸側(cè)
發(fā)送端周期 = 讀掛起隊(duì)列 + 寫水平描述符鏈 + 讀描述符 + 從主機(jī)內(nèi)存讀取數(shù)據(jù)包 + 寫完成隊(duì)列 + 讀/寫寄存器。
Ct = [(3 + R + 12)/12] + [2 + R + 1] + [3 + R + 4] + [(P/4) + (3 + R)X] + [(2 + R + 6)/6] + [4(7/B)]
接收端
接收端周期 = 讀取空閑隊(duì)列 + 將數(shù)據(jù)包寫入主機(jī)內(nèi)存 + 寫入描述符 + 寫入完成隊(duì)列 + 讀/寫寄存器。
Cr = [(3 + R + 24)/12] + [(P/4) + (2 + R)X] + [2 + R + 3] + [(2 + R + 6)/6] + [4(7/B)]
總公式
Ct + Cr = 21.16 + 3.5R + 0.5P + (5 + 2R)X + 56/B
1 | 所有數(shù)據(jù)包均為 64 字節(jié)(被視為最壞情況)。 |
2 | HDLC 數(shù)據(jù)包的幀校驗(yàn)序列 (FCS) 不會傳輸?shù)?PCI 總線或從 PCI 總線傳輸。 |
3 | 在接收端,僅使用大型緩沖區(qū)(禁用小型緩沖區(qū))。 |
4 | 接收 DMA 將突發(fā)讀取空閑隊(duì)列并突發(fā)寫入已完成隊(duì)列。 |
5 | 傳輸 DMA 將突發(fā)讀取掛起隊(duì)列,并突發(fā)寫入已完成隊(duì)列。 |
6 | 所有數(shù)據(jù)包都適合單個(gè)緩沖區(qū)(即只有一個(gè)描述符)。這是合理的,因?yàn)閿?shù)據(jù)包是 64 字節(jié)。 |
7 | 所有物理層鏈路都充滿了數(shù)據(jù)包;不發(fā)送或接收空閑代碼。 |
8 | 不考慮中斷例程和開銷(如對本地總線的訪問)。 |
圖3.每個(gè)數(shù)據(jù)包的總線周期流程圖。
筆記:
12 個(gè)描述符 x 1 個(gè)雙字 = 12 個(gè)傳輸掛起隊(duì)列描述符雙字
數(shù)據(jù)包數(shù)據(jù)(以字節(jié)為單位)= 4 字節(jié)/數(shù)據(jù)周期
6 個(gè)描述符 x 1 個(gè)雙字 = 6 個(gè)傳輸完成隊(duì)列描述符雙字
圖3.(續(xù))
筆記:
12 個(gè)描述符 x 2 個(gè)雙字 = 24 個(gè)接收自由隊(duì)列描述符雙字
數(shù)據(jù)包數(shù)據(jù)(以字節(jié)為單位)= 4 字節(jié)/數(shù)據(jù)周期
6 個(gè)描述符 x 1 個(gè)雙字 = 6 個(gè)接收完成隊(duì)列描述符雙字
PCI 總線利用率
總線利用率定義為DS31256每秒所需的總線周期數(shù)除以每秒可用的總線周期總數(shù)。可以針對特定的 HDLC 配置和流量負(fù)載計(jì)算總線利用率。計(jì)算假設(shè)PCI總線時(shí)鐘速率為33MHz(33,000,000Hz),并且使用一個(gè)DS31256。以下是 PCI 總線利用率的詳細(xì)計(jì)算。
公式 1:
公式2:
筆記:
例子
PCI總線利用率實(shí)驗(yàn)室測試是為了表征DS31256的PCI總線利用率。假設(shè)所有傳入和傳出數(shù)據(jù)包的長度均為 56 字節(jié) (P = 56)。結(jié)果總結(jié)在表5中。可根據(jù)要求提供計(jì)算總線利用率的電子表格(如表 6 所示)。(請聯(lián)系模擬技術(shù)支持團(tuán)隊(duì))
B | P | R | |||||||
模式 | 不。端口數(shù)量 | 平均編號已完成隊(duì)列 已處理的條目 | 像素大小(字節(jié)) | 平均內(nèi)存訪問延遲周期 | 不。的高密度LCC通道 | 合計(jì)編號頻道數(shù)量 | 通道數(shù)據(jù)速率(千字節(jié)) | PCI 時(shí)鐘速率 (兆赫) | PCI 總線利用率(%) |
高速 | 3 | 14.17 | 56 | 8.35 | 1 | 3 | 52 | 52 | 47.55 |
非通道化 | 3 | 35.53 | 56 | 8.50 | 1 | 3 | 29 | 29 | 49.06 |
低速 | 16 | 100.46 | 56 | 10.60 | 1 | 16 | 12 | 12 | 55.27 |
非通道化 | 16 | 24.30 | 56 | 10.24 | 1 | 16 | 10 | 10 | 52.54 |
T1 | 16 | 8.081 | 56 | 7.1375 | 12 | 192 | 128 * | 1.544 | 18.26 |
E1 | 16 | 8.154 | 56 | 7.8645 | 16 | 256 | 128 | 2.048 | 28.07 |
2E1 | 16 | 10.894 | 56 | 8.003 | 16 | 256 | 256 | 4.096 | 55.82 |
4E1 | 16 | 381.207 | 56 | 8.3123 | 8 | 128 | 1024 | 8.192 | 50.97 |
*筆記: 每個(gè) T1 幀有 193 位 = [(24 個(gè)時(shí)隙 x 8 位)+ 1 個(gè)同步位]。 每個(gè)時(shí)隙的數(shù)據(jù)速率為 64,000 位/秒。 (64,000 位/秒)/8 位 = 8,000 幀/秒 T1 幀將每 125 微秒到達(dá)一次 =1/(8,000 幀)/秒。 數(shù)據(jù)速率為 1,536,000 位/秒 = 24 通道 x(8 位/通道/幀)x(8,000 幀/秒)。 總線速為 1,544,000 位/秒 = [(24 通道 x (8 位/通道)) + (1 個(gè)同步(位/幀))] x(8,000 幀/秒)。 |
輸入變量 | ||
B | 14.17 | 主機(jī)更新接收空閑隊(duì)列和傳輸掛起隊(duì)列或讀取接收/傳輸完成隊(duì)列之前處理的平均數(shù)據(jù)包數(shù)。 |
P | 56 | 數(shù)據(jù)包的大小(以字節(jié)為單位)。 |
R | 8.35 | 由于 RAM 訪問延遲而增加的平均總線周期數(shù)。 |
每個(gè)DS31256的HDLC通道數(shù) | 3 | 在非通道化模式下運(yùn)行時(shí),每個(gè)活動端口使用 1 個(gè)。 |
通道數(shù)據(jù)速率(千字節(jié)) | 52,000.00 | 請注意,T1 速度 == 1536kbps。 |
渠道利用率 | 39.5% | 在實(shí)際應(yīng)用程序中,數(shù)據(jù)包之間可能有時(shí)間。 |
PCI 時(shí)鐘速率 (兆赫) | 33 | |
PCI 延遲/事務(wù) | 10 | 這是基于執(zhí)行與處理數(shù)據(jù)包關(guān)聯(lián)的每個(gè)事務(wù)所需的平均周期數(shù)。我們的設(shè)計(jì)師在模擬中使用了 10,這是相當(dāng)保守的。 |
總線上的DS31256數(shù)量 | 1 | |
中間變量 | ||
C | 104.04 | 每個(gè)數(shù)據(jù)包所需的平均總線周期數(shù)。 |
X | 1.00 | 向/從數(shù)據(jù)緩沖區(qū)發(fā)送/獲取數(shù)據(jù)包數(shù)據(jù)所需的平均總線訪問次數(shù)。 |
數(shù)據(jù)包/秒/通道 | 45,871.43 | |
總 PCI 延遲 | 1,376,142.86 | |
不。所需總線周期數(shù)/秒 | 15,693,122 | |
半雙工 | 全雙工 | |
總線利用率 | 47.6% | 95.11% |
總線容量(千兆字節(jié)) | 264 | |
總線吞吐量 (Mbps) | 125.54 | 251.09 |
注意:
其中 1024 個(gè)塊是 FIFO 大小,F(xiàn)IFO 高水位線和低水位線設(shè)置為 50%。
結(jié)論
本應(yīng)用筆記解釋了如何計(jì)算DS31256在給定應(yīng)用中所需的總線帶寬。提供了一些實(shí)驗(yàn)室測試示例。可根據(jù)要求提供用于執(zhí)行計(jì)算的電子表格。
審核編輯:郭婷
-
控制器
+關(guān)注
關(guān)注
114文章
16856瀏覽量
182379 -
PCI
+關(guān)注
關(guān)注
5文章
675瀏覽量
131258 -
總線
+關(guān)注
關(guān)注
10文章
2936瀏覽量
89186
發(fā)布評論請先 登錄
DS31256 Envoy - 寄存器轉(zhuǎn)儲例程
DS31256,pdf,datasheet (256-Cha
DS31256的PCI總線利用率

Examples of DS31256 Applicatio

DS31256 HDLC Controller Step-b

DS31256 Loopback Modes

DS31256 Gapped Clock Applicati

DS31256的初始化步驟
DS31256 and T1/E1 Interface

DS31256 HDLC控制器的配置步驟—橋接模式

DS31256 -256通道、高吞吐率HDLC控制器

如何利用DS31256 HDLC控制器實(shí)現(xiàn)間隔時(shí)鐘應(yīng)用

DS31256 接口 - 電信

DS31256的分?jǐn)?shù)級T1 (FT1)環(huán)回檢測

評論