《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > 一種基于移位寄存器的CAM的Verilog HDL實現

一種基于移位寄存器的CAM的Verilog HDL實現

2009-02-12
作者:張 東 王自強 李 晨

??? 摘? 要: 一種利用Verilog HDL設計CAM的方案,該方案以移位寄存器為核心,所實現的CAM具有可重新配置改變字長、易于擴展、匹配查找速度快等特點,并在網絡協處理器仿真中得到了應用。?

??? 關鍵詞: CAM? 移位寄存器? Verilog HDL?

?

??? CAM(Content Addressable Memory,內容可尋址存儲器)是一種特殊的存儲陣列。它通過將輸入數據與CAM中存儲的所有數據項同時進行比較,迅速判斷出輸入數據是否與CAM中的存儲數據項相匹配,并給出匹配數據項的對應地址和匹配信息。CAM以其高速查找、大容量等特點而被廣泛地應用于電訊、網絡等領域。?

??? 本文介紹一種用Verilog HDL設計CAM的方案。該方案以移位寄存器為核心,具有可重新配置改變字長、易于擴展、匹配查找速度快等特點。?

1 CAM功能描述?

??? CAM的基本框圖如圖1所示。?

?

?

??? 與RAM相似,CAM是將數據項存儲在一個陣列中。每個數據項的位數叫做字寬,CAM中所有數據項的條數叫做CAM的深度。通過字寬和深度可以表征CAM的容量。?

??? 在寫CAM模式(配置)時,WRITE_E信號有效,MATCH_E信號無效,此時通過地址線ADDR選擇DATA_IN輸入的數據將要被寫入哪一個單元;在讀CAM模式(查找匹配)時,WRITE_E信號無效,MATCH_E信號有效,CAM將不使用地址線,而是直接將DATA_IN讀入的數據與CAM中存儲的各條數據項進行并行比較。如果CAM中含有與此時輸入數據相匹配的存儲數據項,CAM將從MATCH_ADDR輸出此存儲數據項的地址,并且通過MATCH_OK輸出匹配成功的信息。在查找匹配模式時,由于CAM是將輸入數據與存儲數據項并行比較,所以速度極快。同時,由于不需要通過地址線來尋址數據項,CAM將不受地址線寬度的限制,容易擴展。?

2 基于移位寄存器的CAM的設計?

??? 為了說明設計方案,以一個寬度為4位、深度為1的基本CAM存儲單元為例。利用這樣一個基本存儲單元,通過適當級聯,可以構成任意字寬和深度的CAM。該基本單元采用一個16位的移位寄存器、一個4位的比較器,外加16位的計數器和一個“二選一”的選擇器構成。如圖2所示。?

?

?

??? 在寫CAM模式時,WRITE_E信號有效,DATA_IN輸入的是將要寫入數據存儲項的4位數據。計數器進行從“1111”到“0000”的減計數,并將計數輸出值與DATA_IN輸入值進行比較。若二者相同,比較器輸出“1”到移位寄存器中;不同則輸出“0”到移位寄存器中。在16個時鐘周期之后,將完成DATA_IN輸入數據與計數器輸出的所有情況的比較。這樣,移位寄存器中將存入15個“0”和一個“1”。?

??? 在讀CAM模式時,MATCH_IN為“1”,此時,DATA_IN輸入的數據直接送到移位寄存器的地址端,它將決定移位寄存器輸出其16個位中的哪一位。如果該位輸出“1”,則表示此時DATA_IN與原來寫入該單元的數據相同,即發生匹配;反之則輸出“0”,表示無匹配項。?

??? 以上討論只是針對4位字寬的數據項的讀寫,而對于更長字寬的數據項,必須進行字寬擴展??捎枚鄠€比較器和移位寄存器組成的存儲數據項并聯在一起,組成一個字結構,即把輸入的數據按每4位分為一組,每組對應一套比較器和移位寄存器,每組只產生一個最終的MATCH_OUT信號。例如,對于16位的數據項,就需要4組這樣的結構。這4組基本結構中的讀和寫可以同時完成。只有4組都產生匹配信號,最終的MATCH_OUT輸出才為“1”,表明讀入的16位DATA_IN數據與存儲的數據項匹配。?

??? CAM中需要存儲多個數據項,因此需要多個字結構的深度擴展。將這些字結構中的比較器和移位寄存器分別組合在一起,構成比較器陣列和移位寄存器陣列。為了在寫CAM時進行寫入數據的定位,還需要一個地址譯碼模塊來指出是對哪一個數據項進行寫操作。在讀CAM時,得到輸入數據與各個存儲數據項的匹配信息之后,還要對這些匹配信息進行編碼,得到最后要輸出的相匹配的存儲數據項的地址MATCH_ADDR和是否發生匹配的信息MATCH_OK。?

??? 完整的CAM結構框圖見圖3。?

?

?

3 基于移位寄存器的CAM的Verilog HDL實現?

??? 硬件描述語言VerilogHDL是一種應用于電路設計的描述語言,具有行為級、寄存器傳輸級、邏輯門級和開關級等多層次描述。它簡單易讀,描述與工藝無關,并且得到許多EDA工具的支持。利用Verilog HDL語言進行電路設計可以大大節省設計時間和成本。?

??? 本設計以一個數據項字寬為16位、深度為8的CAM為例,進行Verilog HDL設計,并利用Xilinx Virtex系列中XCV1000器件進行綜合。綜合后的仿真分析表明,該方案是合理可行的。?

??? 圖4為匹配查找的時序仿真結果,CAM中預先放入了0019H,001AH,...,001DH五個數據。CLK為系統時鐘,DATA_IN為數據輸入,MATCH_ENABLE為讀CAM(查找)允許信號,GLOBAL_RST為全局清零信號,R_MATCH_ADDR為匹配地址輸出信號,R_MATCH_OK為是否發生匹配信號。從仿真波形可以看出,輸入數據經過兩個時鐘周期,輸出匹配信息,包括是否匹配和相匹配的存儲數據項的地址。如果不匹配,是否匹配的信號為0,而輸出地址線不變。?

?

?

??? 本方案以移位寄存器設計CAM,在寫模式下需要16個時鐘周期完成一個數據項的寫入;讀模式僅需一個時鐘周期。它具有速度快、易于重新配置、易于擴展等特點。本方案中的CAM利用Xilinx Virtex系列器件實現,時鐘最高頻率可達80MHz以上。以本方案為基礎,擴展到32位、36位的實用化CAM已運用于網絡協處理器的仿真測試中,并取得了較好的效果。?

參考資料?

1 Jean-Louis Brelet.An Overview of Multiple CAM Designs?in Virtex Family Devices.Xilinx XAPP201,1999?

2 Jean-Louis Brelet & Bernie New.Designing Flexible.Fast?CAMs with Virtex Family FPGAs.Xilinx XAPP203, 1999?

3 張 明. Verilog HDL實用教程.成都:電子科技大學出版社, 1999?

4 夏宇聞. 復雜數字電路與系統的Verilog HDL設計技術.北京:北京航空航天大學出版社,1998

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲香蕉视频| 最新国产成人在线观看| 激情国产一区二区| 国产精品麻豆va在线播放| 欧美激情第4页| 久热国产精品视频| 久久久久免费| 欧美主播一区二区三区| 午夜精品一区二区三区在线播放| 日韩手机在线导航| 亚洲经典一区| 亚洲黄色毛片| 亚洲国产精彩中文乱码av在线播放| 午夜在线观看欧美| 亚洲欧美日韩国产综合精品二区| 亚洲桃色在线一区| 99在线观看免费视频精品观看| 亚洲人成在线播放| 亚洲精品欧美激情| 亚洲乱码国产乱码精品精天堂 | 欧美在线免费| 欧美亚洲在线| 久久高清国产| 久久久久一区二区| 久久综合伊人77777蜜臀| 猫咪成人在线观看| 牛牛精品成人免费视频| 欧美激情一区二区三区蜜桃视频| 欧美国产亚洲精品久久久8v| 欧美精品久久一区| 欧美日韩视频在线| 国产精品啊v在线| 国产美女扒开尿口久久久| 国产网站欧美日韩免费精品在线观看 | 国产精品国产三级国产普通话三级 | 久久精精品视频| 亚洲黄色视屏| 99精品国产在热久久下载| 亚洲伊人伊色伊影伊综合网| 亚洲一区在线播放| 亚洲欧美日本伦理| 亚洲国产99| 99亚洲一区二区| 午夜精品一区二区三区四区| 久久久久免费| 欧美激情a∨在线视频播放| 欧美日韩在线视频观看| 国产精品五月天| 极品少妇一区二区三区| 亚洲国产精品一区在线观看不卡| 亚洲精品日韩久久| 亚洲天堂成人在线视频| 久久国产精品99精品国产| 亚洲日本中文字幕| 亚洲欧美日韩爽爽影院| 久久久久久久网| 欧美激情第4页| 国产精品美女视频网站| 黄色亚洲大片免费在线观看| 亚洲精品免费网站| 亚洲一区二区av电影| 亚洲国产精品女人久久久| 亚洲午夜精品久久| 久久一区免费| 欧美三日本三级三级在线播放| 国产欧美视频一区二区三区| 亚洲电影第三页| 亚洲影视九九影院在线观看| 久久精品视频在线看| 亚洲欧美第一页| 免费欧美视频| 国产精品一区一区| 亚洲欧洲综合另类| 欧美亚洲网站| 亚洲午夜视频| 欧美高清在线视频| 国产欧美日韩在线观看| 日韩亚洲视频在线| 久久精品人人| 亚洲欧美一区二区三区极速播放| 男人天堂欧美日韩| 国产日韩欧美亚洲一区| 日韩视频在线观看免费| 欧美资源在线| 亚洲自拍偷拍视频| 欧美精品系列| 影音先锋亚洲电影| 欧美亚洲视频一区二区| 亚洲摸下面视频| 欧美伦理91i| 有坂深雪在线一区| 午夜日韩激情| 亚洲男女自偷自拍| 欧美日韩精品久久久| 亚洲第一色中文字幕| 欧美一级理论片| 中国成人黄色视屏| 欧美国产一区视频在线观看| 国内精品久久久久影院色| 亚洲性图久久| 亚洲一级影院| 欧美另类69精品久久久久9999| 伊人久久久大香线蕉综合直播| 亚洲欧美日韩人成在线播放| 亚洲女女做受ⅹxx高潮| 欧美日韩亚洲视频一区| 91久久久亚洲精品| 亚洲人成网站777色婷婷| 久久视频在线视频| 国产亚洲福利| 欧美亚洲视频| 久久国产加勒比精品无码| 亚洲欧美激情四射在线日 | 亚洲精品九九| 久久久之久亚州精品露出| 国产精品一页| 亚洲伊人第一页| 亚洲免费一在线| 欧美天堂亚洲电影院在线观看 | 亚洲女人av| 欧美天天视频| 日韩视频一区二区三区在线播放| 亚洲精品一级| 欧美国产视频在线| 亚洲精品欧美极品| av成人毛片| 欧美日韩精品二区| 99精品99久久久久久宅男| 亚洲毛片av在线| 欧美女同在线视频| 日韩亚洲视频在线| 亚洲一区尤物| 国产精品久久久久久超碰| 亚洲一区二区在| 午夜在线播放视频欧美| 国产精品丝袜xxxxxxx| 亚洲欧美日韩一区| 久久xxxx| 好吊成人免视频| 亚洲高清精品中出| 美女视频黄 久久| 亚洲国产成人高清精品| 亚洲精品免费在线播放| 欧美大秀在线观看| 亚洲精品一区二区三区四区高清| 夜夜爽www精品| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ入口 | 久久久久久久综合日本| 影音国产精品| 99亚洲一区二区| 国产精品久久久久999| 性色一区二区| 蜜桃伊人久久| 亚洲精品无人区| 亚洲欧美激情一区| 国产一区二区三区免费在线观看 | 一本久久a久久免费精品不卡| 欧美日韩在线一区| 亚洲欧美日韩精品| 久久婷婷国产综合精品青草| 在线观看三级视频欧美| 一区二区黄色| 国产精品推荐精品| 久久精品免费播放| 欧美激情区在线播放| 亚洲视频在线观看| 久久精品夜夜夜夜久久| 在线精品国精品国产尤物884a| 一区二区三区欧美成人| 久久久五月婷婷| 91久久精品一区二区三区| 亚洲一区二区在线播放| 国产一区二区日韩精品| 日韩亚洲综合在线| 国产精品影视天天线| 亚洲经典三级| 国产精品日韩精品| 亚洲国产日韩美| 国产精品捆绑调教| 亚洲黄网站黄| 欧美午夜无遮挡| 亚洲国产一区二区三区青草影视| 欧美日韩欧美一区二区| 欧美在线免费| 欧美日韩色综合| 亚洲第一二三四五区| 欧美日韩国产在线一区| 欧美一区二区三区另类| 欧美日韩不卡一区| 久久精品国产亚洲5555| 国产精品久久福利| 亚洲国产一区二区三区青草影视| 欧美午夜视频在线| 亚洲精品久久久蜜桃| 国产精品一区二区三区久久久| 91久久综合| 国产亚洲精久久久久久| 在线亚洲免费视频| 一区二区在线观看视频| 亚洲男人的天堂在线观看|