国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

一種基于移位寄存器的CAM的Verilog HDL實(shí)現(xiàn)

發(fā)布時(shí)間:2010-7-15 15:40    發(fā)布者:zealot
關(guān)鍵詞: CAM , HDL , verilog , 移位寄存器
CAM(Content ADDRessable 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的深度。通過字寬和深度可以表征CAM中容量。
  在寫CAM模式(配置)時(shí),WRITE_E信號有效,MATCH_E信號無效,此時(shí)通過地址線ADDR選擇DATA_IN輸入的數(shù)據(jù)將要被寫放哪一個(gè)單元;在讀CAM模式(查找匹配)時(shí),WRITE_E信號無效,MATCH_E信號有效,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)的地址,并且通過MATH_OK輸出匹配成功的信息。在查找匹配模式時(shí),由于CAM是將輸入數(shù)據(jù)與存儲(chǔ)數(shù)據(jù)項(xiàng)并行比較,所以速度極快。同時(shí),由于不需要通過地址線來尋址數(shù)據(jù)項(xiàng),CAM將不受地址線寬度的限制,容易擴(kuò)展。
  
2 基于移位寄存器的CAM的設(shè)計(jì)
  
為了說明設(shè)計(jì)方案,以一個(gè)寬度為4位、深度為1的基本CAM存儲(chǔ)單元為例。利用這樣一個(gè)基本存儲(chǔ)單元,通過適當(dāng)級聯(lián),可以構(gòu)成任意字寬和深度的CAM。該基本單元采用一個(gè)16位的移位寄存器、一個(gè)4位的比較器,外加16位的計(jì)數(shù)器和一個(gè)"二選一"的選擇器構(gòu)成。如圖2所示。


在寫CAM模式時(shí),WRITE_E信號有效,DATA_IN輸入的是將要寫入數(shù)據(jù)存儲(chǔ)項(xiàng)的4位數(shù)據(jù)。計(jì)數(shù)器進(jìn)行從"1111"到"0000"的減計(jì)數(shù),并將計(jì)數(shù)輸出值與DATA_IN輸入值進(jìn)行比較。若二者相同,比較器輸出"1"到移位寄存器中;不同則輸出"0"到移位寄存器中。在16個(gè)時(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ā)生匹配;反之則輸出"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è)最終的MTACH_OUT信號。例如,對于16位的數(shù)據(jù)項(xiàng),就需要4組這樣的結(jié)構(gòu)。這4組基本結(jié)構(gòu)中的讀和寫可以同時(shí)完成。只有4組都產(chǎn)生匹配信號,最終的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)中的比較器和移位寄存器分別組合在一起,構(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ì)的描述語言,具有行為級、寄存器傳輸級、邏輯門級和開關(guān)級等多層次描述。它簡單易讀,描述與工藝無關(guān),并且得到許多EDA工具的支持。利用Verilog 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(查找)允許信號,GLOBAL_RST為全局清零信號,R_MATCH_ADDR為匹配地址輸出信號,R_MATCH_OK為是否發(fā)生匹配信號。從仿真波形可以看出,輸入數(shù)據(jù)經(jīng)過兩個(gè)時(shí)鐘周期,輸出匹配信息,包括是否匹配和相匹配的存儲(chǔ)數(shù)據(jù)項(xiàng)的地址。如果不匹配,是否匹配的信號為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é)處理器的仿真測試中,并取得了較好的效果。
本文地址:http://m.qingdxww.cn/thread-15308-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 5分鐘詳解定時(shí)器/計(jì)數(shù)器E和波形擴(kuò)展!
  • 安靜高效的電機(jī)控制——這才是正確的方向!
  • PIC18-Q71系列MCU概述
  • 無線充電基礎(chǔ)知識及應(yīng)用培訓(xùn)教程2
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 无毒不卡在线观看 | 日本免费a视频 | 四虎在线永久视频观看 | 特级毛片在线观看 | 国内一卡2卡三卡四卡在线 国内一级一级毛片a免费 | 国产精品欧美久久久久天天影视 | 香蕉视频在线视频 | 日韩成人av在线 | 性夜影院爽黄a爽免费视 | 草逼免费 | 四虎影视成人永久在线观看 | 国产精品亚洲片在线观看麻豆 | 青青视频国产 | 国产一区福利 | 国产精品久久1024 | 久久99热精品免费观看动漫 | 欧美日本一二三区 | 亚洲国产91 | 妻子的诱惑在线 | 在线观看毛片网站 | 久久蜜桃亚洲一区二区 | 免费的高清影视网站 | 欧美一区二区三区在线观看不卡 | 亚洲天堂久 | 日本黄在线| 国产精品自在线 | 国产精品欧美亚洲 | 日韩资源在线观看 | 日韩一级精品视频在线观看 | 亚洲欧美国产精品 | 成人午夜小视频手机在线看 | 国产香蕉精品视频在 | 日韩不卡免费视频 | 国产免费一区二区在线看 | 自拍偷拍2019| 国产手机在线 | 狂野欧美老黑粗又硬 | 青青免费 | 免费黄色高清视频 | 久久精品爱国产免费久久 | 国产色在线com |