![一種基于移位寄存器的CAM的Verilog HDL實(shí)現(xiàn)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/12/f5495975-0f34-43c5-83bd-d8cb10becf07/f5495975-0f34-43c5-83bd-d8cb10becf071.gif)
![一種基于移位寄存器的CAM的Verilog HDL實(shí)現(xiàn)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/12/f5495975-0f34-43c5-83bd-d8cb10becf07/f5495975-0f34-43c5-83bd-d8cb10becf072.gif)
![一種基于移位寄存器的CAM的Verilog HDL實(shí)現(xiàn)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/12/f5495975-0f34-43c5-83bd-d8cb10becf07/f5495975-0f34-43c5-83bd-d8cb10becf073.gif)
![一種基于移位寄存器的CAM的Verilog HDL實(shí)現(xiàn)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/12/f5495975-0f34-43c5-83bd-d8cb10becf07/f5495975-0f34-43c5-83bd-d8cb10becf074.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 一種基于移位寄存器的CAM的Verilog HDL實(shí)現(xiàn) 張 東 王自強(qiáng) 李 晨 時(shí)間:2009年02月12日 字 體: 大 中 小 關(guān)鍵詞:<"cblue" " target='_blank'>移位寄存器<"cblue" "
2、; target='_blank'>比較器<"cblue" " target='_blank'>時(shí)鐘周期<"cblue" " target='_blank'>速度快<"cblue" " target='_blank'>重新配置 ? 摘? 要: 一種利用Veril
3、og HDL設(shè)計(jì)CAM的方案,該方案以<"cblue" " title="移位寄存器">移位寄存器為核心,所實(shí)現(xiàn)的CAM具有可<"cblue" " title="重新配置">重新配置改變字長、易于擴(kuò)展、匹配查找<"cblue" " title="速度快">速度快等特點(diǎn),并在網(wǎng)絡(luò)協(xié)處理器仿真中得到了應(yīng)用。? 關(guān)鍵詞: CAM? 移位寄存器? Verilog HDL? CAM(Content Addressable
4、 Memory,內(nèi)容可尋址存儲(chǔ)器)是一種特殊的存儲(chǔ)陣列。它通過將輸入數(shù)據(jù)與CAM中存儲(chǔ)的所有數(shù)據(jù)項(xiàng)同時(shí)進(jìn)行比較,迅速判斷出輸入數(shù)據(jù)是否與CAM中的存儲(chǔ)數(shù)據(jù)項(xiàng)相匹配,并給出匹配數(shù)據(jù)項(xiàng)的對應(yīng)地址和匹配信息。CAM以其高速查找、大容量等特點(diǎn)而被廣泛地應(yīng)用于電訊、網(wǎng)絡(luò)等領(lǐng)域。? 本文介紹一種用Verilog HDL設(shè)計(jì)CAM的方案。該方案以移位寄存器為核心,具有可重新配置改變字長、易于擴(kuò)展、匹配查找速度快等特點(diǎn)。?1 CAM功能描述? CAM的基本框圖如圖1所示。? 與RAM相似,CAM是將數(shù)據(jù)項(xiàng)存儲(chǔ)在一個(gè)陣列中。每個(gè)數(shù)據(jù)項(xiàng)的位數(shù)叫做字寬,CAM中所有數(shù)據(jù)項(xiàng)的條數(shù)叫做CAM的深度。通過字寬和深度可以表
5、征CAM的容量。? 在寫CAM模式(配置)時(shí),WRITE_E信號(hào)有效,MATCH_E信號(hào)無效,此時(shí)通過地址線ADDR選擇DATA_IN輸入的數(shù)據(jù)將要被寫入哪一個(gè)單元;在讀CAM模式(查找匹配)時(shí),WRITE_E信號(hào)無效,MATCH_E信號(hào)有效,CAM將不使用地址線,而是直接將DATA_IN讀入的數(shù)據(jù)與CAM中存儲(chǔ)的各條數(shù)據(jù)項(xiàng)進(jìn)行并行比較。如果CAM中含有與此時(shí)輸入數(shù)據(jù)相匹配的存儲(chǔ)數(shù)據(jù)項(xiàng),CAM將從MATCH_ADDR輸出此存儲(chǔ)數(shù)據(jù)項(xiàng)的地址,并且通過MATCH_OK輸出匹配成功的信息。在查找匹配模式時(shí),由于CAM是將輸入數(shù)據(jù)與存儲(chǔ)數(shù)據(jù)項(xiàng)并行比較,所以速度極快。同時(shí),由于不需要通過地址線來尋址數(shù)據(jù)
6、項(xiàng),CAM將不受地址線寬度的限制,容易擴(kuò)展。?2 基于移位寄存器的CAM的設(shè)計(jì)? 為了說明設(shè)計(jì)方案,以一個(gè)寬度為4位、深度為1的基本CAM存儲(chǔ)單元為例。利用這樣一個(gè)基本存儲(chǔ)單元,通過適當(dāng)級(jí)聯(lián),可以構(gòu)成任意字寬和深度的CAM。該基本單元采用一個(gè)16位的移位寄存器、一個(gè)4位的<"cblue" " title="比較器">比較器,外加16位的計(jì)數(shù)器和一個(gè)“二選一”的選擇器構(gòu)成。如圖2所示。? 在寫CAM模式時(shí),WRITE_E信號(hào)有效,DATA_IN輸入的是將要寫入數(shù)據(jù)存儲(chǔ)項(xiàng)的4位數(shù)據(jù)。計(jì)數(shù)器進(jìn)行從“1111”到“0000”的減計(jì)數(shù),并將計(jì)
7、數(shù)輸出值與DATA_IN輸入值進(jìn)行比較。若二者相同,比較器輸出“1”到移位寄存器中;不同則輸出“0”到移位寄存器中。在16個(gè)<"cblue" " title="時(shí)鐘周期">時(shí)鐘周期之后,將完成DATA_IN輸入數(shù)據(jù)與計(jì)數(shù)器輸出的所有情況的比較。這樣,移位寄存器中將存入15個(gè)“0”和一個(gè)“1”。? 在讀CAM模式時(shí),MATCH_IN為“1”,此時(shí),DATA_IN輸入的數(shù)據(jù)直接送到移位寄存器的地址端,它將決定移位寄存器輸出其16個(gè)位中的哪一位。如果該位輸出“1”,則表示此時(shí)DATA_IN與原來寫入該單元的數(shù)據(jù)相同,即發(fā)生匹配;反之則輸出
8、“0”,表示無匹配項(xiàng)。? 以上討論只是針對4位字寬的數(shù)據(jù)項(xiàng)的讀寫,而對于更長字寬的數(shù)據(jù)項(xiàng),必須進(jìn)行字寬擴(kuò)展。可用多個(gè)比較器和移位寄存器組成的存儲(chǔ)數(shù)據(jù)項(xiàng)并聯(lián)在一起,組成一個(gè)字結(jié)構(gòu),即把輸入的數(shù)據(jù)按每4位分為一組,每組對應(yīng)一套比較器和移位寄存器,每組只產(chǎn)生一個(gè)最終的MATCH_OUT信號(hào)。例如,對于16位的數(shù)據(jù)項(xiàng),就需要4組這樣的結(jié)構(gòu)。這4組基本結(jié)構(gòu)中的讀和寫可以同時(shí)完成。只有4組都產(chǎn)生匹配信號(hào),最終的MATCH_OUT輸出才為“1”,表明讀入的16位DATA_IN數(shù)據(jù)與存儲(chǔ)的數(shù)據(jù)項(xiàng)匹配。? CAM中需要存儲(chǔ)多個(gè)數(shù)據(jù)項(xiàng),因此需要多個(gè)字結(jié)構(gòu)的深度擴(kuò)展。將這些字結(jié)構(gòu)中的比較器和移位寄存器分別組合在一起
9、,構(gòu)成比較器陣列和移位寄存器陣列。為了在寫CAM時(shí)進(jìn)行寫入數(shù)據(jù)的定位,還需要一個(gè)地址譯碼模塊來指出是對哪一個(gè)數(shù)據(jù)項(xiàng)進(jìn)行寫操作。在讀CAM時(shí),得到輸入數(shù)據(jù)與各個(gè)存儲(chǔ)數(shù)據(jù)項(xiàng)的匹配信息之后,還要對這些匹配信息進(jìn)行編碼,得到最后要輸出的相匹配的存儲(chǔ)數(shù)據(jù)項(xiàng)的地址MATCH_ADDR和是否發(fā)生匹配的信息MATCH_OK。? 完整的CAM結(jié)構(gòu)框圖見圖3。?3 基于移位寄存器的CAM的Verilog HDL實(shí)現(xiàn)? 硬件描述語言VerilogHDL是一種應(yīng)用于電路設(shè)計(jì)的描述語言,具有行為級(jí)、寄存器傳輸級(jí)、邏輯門級(jí)和開關(guān)級(jí)等多層次描述。它簡單易讀,描述與工藝無關(guān),并且得到許多EDA工具的支持。利用Verilog
10、HDL語言進(jìn)行電路設(shè)計(jì)可以大大節(jié)省設(shè)計(jì)時(shí)間和成本。? 本設(shè)計(jì)以一個(gè)數(shù)據(jù)項(xiàng)字寬為16位、深度為8的CAM為例,進(jìn)行Verilog HDL設(shè)計(jì),并利用Xilinx Virtex系列中XCV1000器件進(jìn)行綜合。綜合后的仿真分析表明,該方案是合理可行的。? 圖4為匹配查找的時(shí)序仿真結(jié)果,CAM中預(yù)先放入了0019H,001AH,.,001DH五個(gè)數(shù)據(jù)。CLK為系統(tǒng)時(shí)鐘,DATA_IN為數(shù)據(jù)輸入,MATCH_ENABLE為讀CAM(查找)允許信號(hào),GLOBAL_RST為全局清零信號(hào),R_MATCH_ADDR為匹配地址輸出信號(hào),R_MATCH_OK為是否發(fā)生匹配信號(hào)。從仿真波形可以看出,輸入數(shù)據(jù)經(jīng)過兩個(gè)
11、時(shí)鐘周期,輸出匹配信息,包括是否匹配和相匹配的存儲(chǔ)數(shù)據(jù)項(xiàng)的地址。如果不匹配,是否匹配的信號(hào)為0,而輸出地址線不變。? 本方案以移位寄存器設(shè)計(jì)CAM,在寫模式下需要16個(gè)時(shí)鐘周期完成一個(gè)數(shù)據(jù)項(xiàng)的寫入;讀模式僅需一個(gè)時(shí)鐘周期。它具有速度快、易于重新配置、易于擴(kuò)展等特點(diǎn)。本方案中的CAM利用Xilinx Virtex系列器件實(shí)現(xiàn),時(shí)鐘最高頻率可達(dá)80MHz以上。以本方案為基礎(chǔ),擴(kuò)展到32位、36位的實(shí)用化CAM已運(yùn)用于網(wǎng)絡(luò)協(xié)處理器的仿真測試中,并取得了較好的效果。?參考資料?1 Jean-Louis Brelet.An Overview of Multiple CAM Designs?in Virtex Family Devices.Xilinx XAPP201,1999?2 Jean-Louis Brelet & Bernie New.Designing Flexi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度住宅租賃市場規(guī)范化管理合同
- 七年級(jí)下冊語文第五課測試卷部編版及答案
- 衡陽2025年湖南衡陽市民政醫(yī)院急需緊缺專業(yè)技術(shù)人才引進(jìn)6人筆試歷年參考題庫附帶答案詳解
- 蘇州2025年江蘇蘇州高新區(qū)招聘新興領(lǐng)域?qū)B汓h務(wù)工作者12人筆試歷年參考題庫附帶答案詳解
- 秦皇島2024年河北秦皇島市婦幼保健院第二輪選聘工作人員9人筆試歷年參考題庫附帶答案詳解
- 甘肅2025年甘肅煤田地質(zhì)局考核招聘高層次人才3人筆試歷年參考題庫附帶答案詳解
- 溫州浙江溫州平陽縣農(nóng)業(yè)農(nóng)村局編外人員招聘筆試歷年參考題庫附帶答案詳解
- 溫州2025年浙江溫州市生態(tài)環(huán)境科學(xué)研究院招聘筆試歷年參考題庫附帶答案詳解
- 泰州2025年江蘇泰州興化市部分高中學(xué)校校園招聘教師22人筆試歷年參考題庫附帶答案詳解
- 文山云南文山市人力資源和社會(huì)保障局城鎮(zhèn)公益性崗位工作人員招聘筆試歷年參考題庫附帶答案詳解
- (正式版)HG∕T 21633-2024 玻璃鋼管和管件選用規(guī)定
- 人教版《道德與法治》二年級(jí)下冊全冊優(yōu)秀課件
- 儒林外史每回概括
- RB/T 040-2020病原微生物實(shí)驗(yàn)室生物安全風(fēng)險(xiǎn)管理指南
- GB/T 889.1-2000I型非金屬嵌件六角鎖緊螺母
- 構(gòu)建物聯(lián)網(wǎng)系統(tǒng)原型-教學(xué)設(shè)計(jì)
- (完整word版)家譜WORD樣本
- 無主之地2全裝備代碼
- 小升初廣東省深圳市2021-2022學(xué)年六年級(jí)下學(xué)期期末數(shù)學(xué)真題測試模擬卷(解答題)有解析
- DB32∕T 2882-2016 城市軌道交通橋隧結(jié)構(gòu)養(yǎng)護(hù)技術(shù)規(guī)程
- 血液透析應(yīng)急流程圖+
評論
0/150
提交評論