一種基于移位寄存器的CAM的Verilog HDL實現(xiàn)
發(fā)布時間:2007/9/11 0:00:00 訪問次數(shù):620
摘要:一種利用Verilog HDL設(shè)計CAM的方案,該方案以移位寄存器為核心,所實現(xiàn)的CAN具有可重新配置改變字長、易于擴展、匹配查找速度等特點,并在網(wǎng)絡(luò)協(xié)處理器仿真中得到了應(yīng)用。
關(guān)鍵詞:CAM 移位寄存器 Verilog HDL
CAM(Content Addressable Memory,內(nèi)容可尋址存儲器)是一種特殊的存儲陣列。它通過將輸入數(shù)據(jù)與CAM中存儲的所有數(shù)據(jù)項同時進行比較,迅速判斷出輸入數(shù)據(jù)是否與CAM中的存儲數(shù)據(jù)項相匹配,并給出匹配數(shù)據(jù)項的對應(yīng)地址和匹配信息。CAM以其高速查找、大容量等特點而被廣泛地應(yīng)用于電訊、網(wǎng)絡(luò)等領(lǐng)域。
本文介紹一種用Verilog HDL設(shè)計CAM的方案。該方案以移位寄存器為核心,具有可重新置改變字長、易于擴展、匹配查找速度快等特點。
1 CAM功能描述
CAM的基本框圖如圖1所示。
與RAM相似,CAM是將數(shù)據(jù)項存儲在一個陣列中。每個數(shù)據(jù)項的位數(shù)叫做字寬,CAM中所有數(shù)據(jù)項的條數(shù)叫做CAM的深度。通過字寬和深度可以表征CAM中容量。
在寫CAM模式(配置)時,WRITE_E信號有效,MATCH_E信號無效,此時通過地址線ADDR選擇DATA_IN輸入的數(shù)據(jù)將要被寫放哪一個單元;在讀CAM模式(查找匹配)時,WRITE_E信號無效,MATCH_E信號有效,CAM將不使用地址線,而是直接將DATA_IN讀入的數(shù)據(jù)與CAM中存儲的各條數(shù)據(jù)項進行并行比較。如果CAM中含有與此時輸入數(shù)據(jù)相匹配的存儲數(shù)據(jù)項,CAM將從MATCH_ADDR輸出此存儲數(shù)據(jù)項的地址,并且通過MATH_OK輸出匹配成功的信息。在查找匹配模式時,由于CAM是將輸入數(shù)據(jù)與存儲數(shù)據(jù)項并行比較,所以速度極快。同時,由于不需要通過地址線來尋址數(shù)據(jù)項,CAM將不受地址線寬度的限制,容易擴展。
2 基于移位寄存器的CAM的設(shè)計
為了說明設(shè)計方案,以一個寬度為4位、深度為1的基本CAM存儲單元為例。利用這樣一個基本存儲單元,通過適當(dāng)級聯(lián),可以構(gòu)成任意字寬和深度的CAM。該基本單元采用一個16位的移位寄存器、一個4位的比較器,外加16位的計數(shù)器和一個"二選一"的選擇器構(gòu)成。如圖2所示。
在寫CAM模式時,WRITE_E信號有效,DATA_IN輸入的是將要寫入數(shù)據(jù)存儲項的4位數(shù)據(jù)。計數(shù)器進行從"1111"到"0000"的減計數(shù),并將計數(shù)輸出值與DATA_IN輸入值進行比較。若二者相同,比較器輸出"1"到移位寄存器中;不同則輸出"0"到移位寄存器中。在16個時鐘周期之后,將完成DATA_IN輸入數(shù)據(jù)與計數(shù)器輸出的所有情況的比較。這樣,移位寄存器中將存入15個"0"和一個"1"。
在讀CAM模式時,MATCH_IN為"1",此時,DATA_IN輸入的數(shù)據(jù)直接送到移位寄存器的地址端,它將決定移位寄存器輸出其16個位中的哪一位。如果該位輸出"1",則表示此時DATA_IN與原來寫入該單元的數(shù)據(jù)相同,即發(fā)生匹配;反之則輸出"0",表示無匹配項。
以上討論只是針對4位字寬的數(shù)據(jù)項的讀寫,而對于更長字寬的數(shù)據(jù)項,必須進行字寬擴展?捎枚鄠比較器和移位寄存器組成的存儲數(shù)據(jù)項并聯(lián)在一起,組成一個字結(jié)構(gòu),即把輸入的數(shù)據(jù)按每4位分為一組,每組對應(yīng)一套比較器和移位寄存器,每組只產(chǎn)生一個最終的MTACH_OUT信號。例如,對于16位的數(shù)據(jù)項,就需要4組
摘要:一種利用Verilog HDL設(shè)計CAM的方案,該方案以移位寄存器為核心,所實現(xiàn)的CAN具有可重新配置改變字長、易于擴展、匹配查找速度等特點,并在網(wǎng)絡(luò)協(xié)處理器仿真中得到了應(yīng)用。
關(guān)鍵詞:CAM 移位寄存器 Verilog HDL
CAM(Content Addressable Memory,內(nèi)容可尋址存儲器)是一種特殊的存儲陣列。它通過將輸入數(shù)據(jù)與CAM中存儲的所有數(shù)據(jù)項同時進行比較,迅速判斷出輸入數(shù)據(jù)是否與CAM中的存儲數(shù)據(jù)項相匹配,并給出匹配數(shù)據(jù)項的對應(yīng)地址和匹配信息。CAM以其高速查找、大容量等特點而被廣泛地應(yīng)用于電訊、網(wǎng)絡(luò)等領(lǐng)域。
本文介紹一種用Verilog HDL設(shè)計CAM的方案。該方案以移位寄存器為核心,具有可重新置改變字長、易于擴展、匹配查找速度快等特點。
1 CAM功能描述
CAM的基本框圖如圖1所示。
與RAM相似,CAM是將數(shù)據(jù)項存儲在一個陣列中。每個數(shù)據(jù)項的位數(shù)叫做字寬,CAM中所有數(shù)據(jù)項的條數(shù)叫做CAM的深度。通過字寬和深度可以表征CAM中容量。
在寫CAM模式(配置)時,WRITE_E信號有效,MATCH_E信號無效,此時通過地址線ADDR選擇DATA_IN輸入的數(shù)據(jù)將要被寫放哪一個單元;在讀CAM模式(查找匹配)時,WRITE_E信號無效,MATCH_E信號有效,CAM將不使用地址線,而是直接將DATA_IN讀入的數(shù)據(jù)與CAM中存儲的各條數(shù)據(jù)項進行并行比較。如果CAM中含有與此時輸入數(shù)據(jù)相匹配的存儲數(shù)據(jù)項,CAM將從MATCH_ADDR輸出此存儲數(shù)據(jù)項的地址,并且通過MATH_OK輸出匹配成功的信息。在查找匹配模式時,由于CAM是將輸入數(shù)據(jù)與存儲數(shù)據(jù)項并行比較,所以速度極快。同時,由于不需要通過地址線來尋址數(shù)據(jù)項,CAM將不受地址線寬度的限制,容易擴展。
2 基于移位寄存器的CAM的設(shè)計
為了說明設(shè)計方案,以一個寬度為4位、深度為1的基本CAM存儲單元為例。利用這樣一個基本存儲單元,通過適當(dāng)級聯(lián),可以構(gòu)成任意字寬和深度的CAM。該基本單元采用一個16位的移位寄存器、一個4位的比較器,外加16位的計數(shù)器和一個"二選一"的選擇器構(gòu)成。如圖2所示。
在寫CAM模式時,WRITE_E信號有效,DATA_IN輸入的是將要寫入數(shù)據(jù)存儲項的4位數(shù)據(jù)。計數(shù)器進行從"1111"到"0000"的減計數(shù),并將計數(shù)輸出值與DATA_IN輸入值進行比較。若二者相同,比較器輸出"1"到移位寄存器中;不同則輸出"0"到移位寄存器中。在16個時鐘周期之后,將完成DATA_IN輸入數(shù)據(jù)與計數(shù)器輸出的所有情況的比較。這樣,移位寄存器中將存入15個"0"和一個"1"。
在讀CAM模式時,MATCH_IN為"1",此時,DATA_IN輸入的數(shù)據(jù)直接送到移位寄存器的地址端,它將決定移位寄存器輸出其16個位中的哪一位。如果該位輸出"1",則表示此時DATA_IN與原來寫入該單元的數(shù)據(jù)相同,即發(fā)生匹配;反之則輸出"0",表示無匹配項。
以上討論只是針對4位字寬的數(shù)據(jù)項的讀寫,而對于更長字寬的數(shù)據(jù)項,必須進行字寬擴展?捎枚鄠比較器和移位寄存器組成的存儲數(shù)據(jù)項并聯(lián)在一起,組成一個字結(jié)構(gòu),即把輸入的數(shù)據(jù)按每4位分為一組,每組對應(yīng)一套比較器和移位寄存器,每組只產(chǎn)生一個最終的MTACH_OUT信號。例如,對于16位的數(shù)據(jù)項,就需要4組
熱門點擊
- SDH中E1接口數(shù)字分接復(fù)用器VHDL設(shè)計及
- 系統(tǒng)內(nèi)的PLD
- 用Altera FLEX 10K可編程邏輯器
- EDA仿真技術(shù)在電子線路分析中的應(yīng)用
- 分布式運算單元的原理及其實現(xiàn)方法
- 用SignalTap嵌入邏輯分析儀驗證PLD
- 偽隨機序列及PLD實現(xiàn)在程序和系統(tǒng)加密中的應(yīng)
- 一種基于移位寄存器的CAM的Verilog
- 用FPGA技術(shù)實現(xiàn)模擬雷達信號
- 現(xiàn)代可編程計算機控制器PCC及其應(yīng)用
推薦技術(shù)資料
- 聲道前級設(shè)計特點
- 與通常的Hi-Fi前級不同,EP9307-CRZ這臺分... [詳細(xì)]
- 1200 V CoolSiC MOSFET
- 高帶寬內(nèi)存(HBM)和芯片間互連(ICI)應(yīng)
- 第七代TPU—Ironwood
- Neuralink新款“心靈感
- IR最新功率MOSFET的30
- 全新第4代SiC MOSFET
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究