日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機電之家資源網
單片機首頁|單片機基礎|單片機應用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
內容可尋址存儲器CAM在交換機中的應用
內容可尋址存儲器CAM在交換機中的應用
 更新時間:2008-8-17 16:20:14  點擊數(shù):18
【字體: 字體顏色

    利用硬件進行數(shù)據(jù)檢索,通常采用兩種策略一種是利用FPGA或CPLD等可編程邏輯器件定制數(shù)據(jù)檢索單元。本系統(tǒng)兩種地址的數(shù)據(jù)結構并不復雜,定制簡單數(shù)據(jù)結構的檢索單元體現(xiàn)不了可編程邏輯器件功能強大、靈活性強等優(yōu)越性,并且這類器件的開發(fā)難度相對較大,完成后還需要相當長一段時間進行測試。另一種策略是選擇CAM實現(xiàn)數(shù)據(jù)檢索。兩者比較,本系統(tǒng)采用CAM。根據(jù)系統(tǒng)設計,本交換機采用兩塊CAM實現(xiàn)數(shù)據(jù)檢索功能,MAC-CAM用于以太網幀的MAC地址檢索,ATM-CAM用于ATM信元的VPI/VCI檢索,如圖2所示。

2.2 檢索算法設計

下面根據(jù)系統(tǒng)設計方案,以MAC-VP/VC表為例說明以太網側數(shù)據(jù)檢索功能的實現(xiàn)。如圖3所示,MAC-VP/VC表由硬件、軟件兩個子模塊構成。MAC-CAM表實現(xiàn)MAC地址到偏移地址的查詢,這部分由硬件實現(xiàn);RAM表實現(xiàn)偏移地址到配置信息的查詢,這部分由軟件實現(xiàn);兩者通過偏移地址耦合。本系統(tǒng)將每一個VP/VC認為是一個用戶端口,VP/VC的值保存在用戶端口域。

當進行MAC地址檢索時,CPU首先以MAC地址為關鍵字通過MAC-CAM表的檢索得到對應的偏移地址a,然后再根據(jù)公式(1)得到RAM表中該MAC地址的存儲位置,并由此地址獲得相關配置信息。RAM表中標志域1、標志域2分別表示用戶MAC地址的狀態(tài)信息,限于篇幅這里不詳述了。

RAM地址=基地址 + a×b    (1)

公式(1)中,基地址是RAM表的起始地址;a是通過MAC-CAM表查詢得到的偏移量,即MAC地址的索引值;b表示RAM表中的一個表項的寬度為多少字節(jié)。

與MAC-VP/VC表的實現(xiàn)基本相同,VPI/VCI通道表的實現(xiàn)也分為兩部分,一部分由硬件CAM實現(xiàn),另一部分由軟件實現(xiàn)。執(zhí)行VPI/VCI檢索時,CPU先通過CAM得到某VPI/VCI的偏移地址,然后再根據(jù)該偏移地址得到RAM表中保存的具體配置。

正是通過MAC-VP/VC表和VPI/VCI通道表,本系統(tǒng)實現(xiàn)了ATM網絡與E-MAN的交換。

2.3 檢索算法的實現(xiàn)

按協(xié)議規(guī)定MAC地址占48位,表示為6字節(jié)的數(shù)組。圖4和圖5分別表示了MAC-CAM表中MAC地址的高32位數(shù)據(jù)和低16位數(shù)據(jù)的數(shù)據(jù)結構。

圖6所示為MAC地址索引項的數(shù)據(jù)結構,它分為兩部分:最高位為匹配標志(MS),0表示匹配成功,1表示匹配失敗;匹配輸出的低16位為MAC地址的索引(macIndex),用戶可按需要對其進行定義,如MAC地址00-3C-CD-17-65-AB的索引值為0x03EF。

不同的協(xié)議要求,VPI/VCI表的數(shù)據(jù)結構與MAC表的數(shù)據(jù)結構并不相同。但由于處理方式相近,這里就不贅述了。

MCM69C233的匹配規(guī)則由通用屏蔽字(Global Mask)制定。進行檢索時,MCM69C233將檢索內容與通用屏蔽字進行按位或運算,1表示屏蔽該位的值,0表示對該位敏感。從上文可看到,兩種數(shù)據(jù)檢索的數(shù)據(jù)結構大不相同,因此需要不同的匹配規(guī)則。根據(jù)本系統(tǒng)設計要求,ATM信元的檢索只對VPI/VCI敏感,因此通用屏蔽字為0xFF00_0000_FFFF_FFFF,即忽略GFC字段和PHY地址標識段。對于MAC地址的匹配操作,通用屏蔽字為0x0000_0000_0000_FFFF,即48位匹配。通用屏蔽字的設定必須在CAM初始化時完成。

在執(zhí)行匹配操作前,CAM須進行初始化。由于ATM-CAM和MAC-CAM的工作模式不同,因此兩者的初始化過程亦不盡相同。下面以ATM-CAM為例,用偽碼形式說明初始化過程。

atmCamInit()

{

Set ATM_CAM working on ATM mode;

Set the Global mask register for VPI/VCI translation;

Set the ATM_CAM to fast entry mode;

Input VPC table;

Initialize VPC table;

}

對于ATM-CAM,首先必須設定工作模式,ATM-CAM工作于ATM模式;然后對通用屏蔽字進行設置,以保證正確的匹配規(guī)則;緊接著,將ATM-CAM設為快速輸入模式(Fast entry mode,當需要將大量數(shù)據(jù)寫入CAM時,該模式能加快輸入速度),將預先定義好的VPI/VCI-Channel Code表寫入CAM;最后執(zhí)行表初始化指令。至此,ATM-CAM能夠正常工作了。前面已提到,MAC表的形成是通過自學習得到的,因此MAC-CAM的初始化并不需要該過程。另外,MAC-CAM工作在基本模式,MCM69C233上電后,默認工作模式為基本模式。因此MAC-CAM的初始化只需要兩步,通用屏蔽字的設置和表初始化。

圖4、圖5和圖6

    匹配操作通過對匹配口讀/寫完成。匹配口數(shù)據(jù)線只有32位。由于MAC地址占48位,因此需要兩次寫操作才能完整地將一個MAC地址表達出來;而VPI/VCI只占24位,因此只需一次寫操作就可以了。下面以MAC地址的檢索為例說明CAM的匹配操作過程。

當進行MAC地址檢索時,CPU先向匹配口寫入如圖4所示的低32位數(shù)據(jù),其中高16位有效,低16位可以為任意值;緊接著CPU向匹配口寫入如圖5所示的高32位數(shù)據(jù);隨后CPU讀匹配口,就可得到如圖6所示的結果。如果被查詢的MAC地址存在,則MS位為0,macIndex為有效輸出;如果被查詢的MAC地址不存在,則MS位為1,macIndex為輸出無效。上述過程可通過偽碼表示如下:

STATUS macCamCheckEntry 

{

Write low 32-bit word to match port in first cycle

Write high 32-bit word to match port in second cycle

Read 32-bit result from match port

If MS flag is “1”

There is no such Entry

Else return macIndex

}

3 運行結果

某交換機的運行結果表明, 采用CAM, 交換機的以太網端口能工作在100Mbps,基本滿足設計要求;如采用軟件搜索方法, 則只能達到30Mbps。

  • 上一篇: 一種多協(xié)議串行通信接口的設計方法
  • 下一篇: 家用電器即插即用技術規(guī)范的研究
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關文章
    網友評論:(只顯示最新5條。)
    關于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務100強網站

    網站經營許可證:浙B2-20080178-1