相聯存儲器的設計_第1頁
相聯存儲器的設計_第2頁
相聯存儲器的設計_第3頁
相聯存儲器的設計_第4頁
相聯存儲器的設計_第5頁
已閱讀5頁,還剩17頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、沈陽航空航天大學課 程 設 計 報 告課程設計名稱:計算機組成原理課程設計課程設計題目:相聯存儲器的設計院(系):計算機學院專 業:計算機科學與技術班 級:學 號:姓 名:木代佳人,日月同輝指導教師:楊 華完成日期:2010年1月15日目 錄第1章總體設計方案21.1 設計原理21.2 設計思路31.3 設計環境4第2章詳細設計方案52.1 頂層方案圖的設計與實現5創建頂層圖形設計文件5器件的選擇與引腳鎖定5編譯、綜合、適配62.2 功能模塊的設計與實現62.2.1 輸入寄存器的實現7存儲體的設計與實現82.2.3 比較寄存器的實現10查找結果寄存器的實現122.3 仿真調試14第3章編程下載

2、與硬件測試153.1 編程下載153.2 硬件測試及結果分析15參考文獻17附錄(電路原理圖)18第1章 總體設計方案1.1 設計原理相聯存儲器(Content Addressed Memory),它是一種按內容訪問的存儲器,可以根據數據記錄地一部分內容查找其它部分的內容。在相聯存儲器中,每個存儲的數據記錄都是固定長度的字。存儲字中的每個個位或者字段都可以作為檢索的依據(關鍵字)。相聯存儲器的結構框圖如圖1.1所示。它主要實現將輸入寄存器的信息與存儲體的信息作比較,相匹配的置為“1”,不匹配的置為“0”, 將結果送入查找結果寄存器(SRR)中,并輸出結果。輸入寄存器.比較寄存器.查找結果寄存器

3、譯碼選擇電路存儲體圖1.1 相聯存儲器原理框圖1.2 設計思路根據相聯存儲器的原理特點,即按照內容尋址,因此可以將相聯存儲器分為以下幾個部分:輸入寄存器,譯碼選擇電路,存儲體,比較寄存器,查找結果寄存器。輸入寄存器:用來存放檢索字,字的位數和相聯存儲器的存儲單元位數相等。譯碼選擇電路:用38譯碼器進行譯碼電路選擇,如當置輸入端B2B1B0為“000”,時鐘脈沖信號為高電位時,可以向存儲體第一個單元地址輸入八位二進制的字信息;同時其他的存儲單元的信息被屏蔽掉。存儲體(AMU):用于存放待檢索的數據,由高速半導體存儲器構成,以求快速存取。比較寄存器(CR):將檢索的內容和從存儲體中讀出的所有單元內

4、容的相應位進行比較,如果有某個存儲單元的信息和檢索項一致,就把符合寄存器的相應位置“1”,表示該字匹配 ;否則置“0”,表示不匹配。查找結果寄存器(SRR):用來存放按檢索項的信息檢索從存儲體中與之符合的單元地址,其位數等于相聯存儲器的存儲單元位數,每一位對應一個存儲單元,位的序數即為相聯存儲器的單元地址。 設存儲體由8個字構成,字長為8位的二進制數。CR為比較寄存器,字長也為8位 ,存放要比較的兩個數。首先向輸入寄存器輸入一個八位二進制的字,然后通過三八譯碼器選擇電路依次將八個八位二進制數輸入到存儲體中。將輸入到輸入寄存器的字通過比較寄存器分別與存儲體里的八個字檢索比較,

5、若匹配,則輸出信號置1,否則置0。匹配信號通過查找結果寄存器(SRR)輸出,我們就能找到匹配的那個字。若存儲體八個單元存儲的數據分別為00001000、00001001、00010000、00010001、00010010、00010011、00010001, 00010000,輸入寄存器中的存儲數據是00010001,通過比較器CR進行比較之后,可以知道發現檢索數據與存儲體中的第四個單元和第八個單元的內容一致,所以結果查找寄存器SRR中的第四個單元和第八個單元置為“1”,其余的置“0”,則匹配結果輸出為:01001000。1.3 設計環境·硬件環境:偉福COP2000型計算機組成原

6、理實驗儀、XCV200實驗板、微機。·EDA環境:Xilinx foundation f3.1設計軟件、COP2000仿真軟件。圖1.2Xilinx foundation f3.1設計平臺圖 1.3 COP2000計算機組成原理集成調試軟件第2章 詳細設計方案2.1 頂層方案圖的設計與實現該設計方案以原理圖輸入方式設計出頂層方案圖,以此實現相聯存儲器相關的邏輯功能,在XCV200可編程邏輯芯片上實現電路。在Xilinx foundation f3.1開發環境上設計好電路圖,把輸入/輸出信號分別定位到XCV200芯片指定的引腳上,完成芯片的引腳的鎖定。2.1.1創建頂層圖形設計文件根據

7、相聯存儲器的相關功能,頂層圖形文件由以下器件組成:十個寄存器(FD8CE),一個3:8譯碼器(D3-8E)、八個CR比較器(COMP8)、二十個輸入端口和八個輸出端口封裝而成的一個完整的設計實體。該方案在Xilinx foundation f3.1軟件環境下進行軟件的設計,實現頂層圖形文件。 2.1.2器件的選擇與引腳鎖定(1)器件的選擇由于所提供的硬件設計環境是基于偉福COP2000型計算機組成原理實驗儀和XCV200實驗板,因此采用的目標芯片為Xlinx XCV200可編程邏輯芯片。(2)引腳鎖定根據引腳分配表,把頂層圖形文件中的輸入/輸出信號依次安排到Xlinx XCV200芯片指定的引

8、腳上,實現芯片的引腳鎖定,各信號及Xlinx XCV200芯片引腳對應關系如表2.1所示。相聯存儲器內部信號XCV200芯片引腳IBUS0P103IBUS1P102IBUS2P101IBUS3P100IBUS4P97IBUS5P96IBUS6P95IBUS7P94B0P73B1P72B2P71AMBUS0P87AMBUS1P86AMBUS2P85AMBUS3P84AMBUS4P82AMBUS5P81AMBUS6P80AMBUS7P79CLKP213OBUS0P110OBUS1P111OBUS2P203OBUS3P185OBUS4P184OBUS5P1780BUS6P152OBUS7P147表2

9、.1 信號和芯片引腳對應關系2.1.3編譯、綜合、適配利用Xilinx foundation f3.1設計軟件對頂層圖形文件進行編譯,并盡量調整各器件和線的位置使其合理美觀,連接完畢后進行仿真,待仿真成功后編譯文件,編譯成功后即可將文件下載到芯片中。2.2 功能模塊的設計與實現本相聯存儲器是由輸入寄存器,選擇比較電路,比較寄存器,存儲體,查找結果寄存器組成的,設有20個輸入端口和8個輸出端口實現其輸入和輸出。各部分元件均分別單獨實現功能并仿真成功之后,再將各部分模塊進行連接,經整體整合仿真成功后,完成了所需電路實體。2.2.1 輸入寄存器的實現輸入寄存器字長為八位,用于存放檢索數據,本方案用一

10、個8位的D觸發器來實現。結構圖設計如圖2 .1所示圖2.1 輸入寄存器圖模塊圖2.2 輸入寄存器圖結構圖圖2.3輸入寄存器單元結構圖圖2.4存儲單元仿真2.2.2存儲體的設計與實現該存儲體一共有8個寄存器組成,每個寄存器的字長為8位。利用3:8譯碼器的輸出端分別控制8個寄存器的CE端,使之可以分別對每一個存儲器進行寫入操作。例如:譯碼器輸入端B0,B1,B2為010時,其輸出端D2輸出為“1”,使得與D2端相連的寄存器的使能端為“1”,并且CLK信號為高電位時,即可將數據總線AMBUS7AMBUS0的數據輸入到此寄存器中。如此可以最終實現對8個寄存器的分別寫入操作。(1) 存儲體及譯碼選擇電路

11、結構圖設計圖2.5 存儲體及譯碼電路結構圖(2)實現方法利用3:8譯碼器的輸入端B0B1B2分別控制每一個寄存器的CE使能端及時鐘脈沖端產生的脈沖信號實現對八個存儲單元的信息輸入。將譯碼器的八個輸出端分別與八個寄存器的使能端相連,實現逐個信息輸入。(3)功能仿真對存儲體的輸入輸出進行仿真,能夠實現上述功能。仿真圖如圖2.3所示:圖2.6 存儲體輸入仿真圖2.2.3 比較寄存器的實現當檢索內容與待檢測內容分別寫入到輸入寄存器與存儲體以后,需要通過比較寄存器把檢索數據與存儲體中每一個存儲單元中的數據進行匹配比較,如果發現其某個存儲單元中的數據和檢索數據完全一致,就把符合寄存器的相應位置“1”,表示

12、其該數據即為想要檢索的數據,否則置“0”,表示存儲體中沒有符合匹配要求的數據。(1) 比較寄存器的實現:比較模塊的部件主要用數據比較器來實現,存儲體中有8個寄存器,所以比較器也相應的需要8個,字位數也是8位。匹配比較的結果將其輸出到結果查找寄存器中。如圖2.7所示。圖2.7 比較寄存器元件圖圖2.8比較寄存器的內部實現圖2.9比較寄存器邏輯模塊圖(2) 實現方法比較線路的實現方法是:先將輸入寄存器的輸出總線與8個比較器的輸入總線相連接,存儲體中的8個寄存器的輸出總線與8個比較器另一個輸入總線相連接。此時隨著脈沖信號的連續進行,存儲體內每輸入一個存儲單元,就將其接到一個比較器的另一端與輸入寄存器

13、中的數據進行比較,相同時置“1”,不同時置“0”。直至將所有存儲單元都比較完為止。(3)功能仿真圖2.10比較寄存器的仿真圖2.2.4查找結果寄存器的實現查找結果寄存器同樣由一個8位寄存器來實現,與輸入寄存器原理一樣。輸入總線與比較器輸出結果相連接,用來存放比較匹配的數據。(1)查找寄存器的結構圖設計圖2.11 查找結果寄存器圖圖2.12 查找結果寄存器圖結構圖(2)實現方法查找結果寄存器的實現方法是:當檢索的內容和待檢索的內容通過比較寄存器匹配比較以后,其匹配信號通過查找結果寄存器輸出,對于匹配的信號輸出“1”,不匹配的信號輸出“0”。 (3)功能仿真 圖 2.13查找結果寄存器的仿真結果2

14、.3 仿真調試仿真調試主要驗證設計電路邏輯功能、時序的正確性,本設計中主要采用功能仿真方法對設計的電路進行仿真。(1)建立仿真波形文件及仿真信號選擇在進行功能仿真時,首先建立仿真波形文件,選擇仿真信號,對選定的輸入信號設置參數,當脈沖遇到上升沿時選定的仿真信號和設置的參數如表2.2所示。表2.2仿真信號選擇和參數設置輸入信號輸出信號IBUS(16進制)AMBUS(16進制)B2B1B0CLKOBUS(16進制)10080001FF1009001100101001010410110111041012100104101310110410101101441011111144(2)功能仿真結果與分析圖

15、2.14 功能仿真波形結果由圖2.14的功能仿真的結果與表2.2的參數設計進行比較可知,仿真結果正確。第3章編程下載與硬件測試3.1 編程下載利用Xilinx ISE的編程下載功能,將得到的gmk1689.bit文件下載到XCV200實驗板的XCV200可編程邏輯芯片中。3.2 硬件測試及結果分析利用XCV200實驗板進行硬件功能測試。相聯存儲器的輸入數據通過XCV200實驗板的輸入開關實現,輸出數據通過XCV200實驗板的LED指示燈實現,其對應關系如表3.1所示。XCV200芯片引腳信號XCV200實驗板XCV200芯片引腳信號XCV200實驗板 IBUS0K00AMBUS4K14 IBU

16、S1K01AMBUS5K15 IBUS2K02AMBUS6K16 IBUS3K03AMBUS7K17 IBUS4K04CLKCLOCKIBUS6K06OBUS0 A0IBUS7K07OBUS1A1B0K20OBUS2A2B1K21OBUS3A3B2K22OBUS4A4AMBUS0K10OBUS5A5AMBUS1K11OBUS6A6AMBUS2K12OBUS7A7AMBUS3K13表3.1XCV200實驗板信號對應關系利用表2.2中的輸入參數作為輸入數據,逐個測試輸出結果,即用XCV200實驗板的開關K20、K21、K22控制輸入數據,開關K00K07控制輸入寄存器的內容輸入,開關K10K17控

17、制存儲體中內容的輸入。同時觀察A0A7的輸出,得到如表3.2所示的硬件測試結果。輸入信號輸出信號K00K07K10K17K22K21K20CLKA0A700010000000010000001000000000001000000001001001100000000000100000001000001010000010000010000000100010111000001000001000000010010100100000100000100000001001110110000010000010000000100001101010001000001000000010001111101000100

18、表3.2硬件測試結果輸入寄存器存的數是對應的十六進制數10,存儲體中存的數分別對應的是08,09,10,11,12,13,10,11。對表3.2與表2.2的內容進行對比,可以看出硬件測試結果為01000100,對應十六進制的數44,由此可以看出測試的結果是正確的,說明電路設計正確合理。圖3.1為仿真下載的結果。圖3.1 數據的cop2000仿真下載結果參考文獻1 曹昕燕.EDA技術實驗與課程設計M.北京:清華大學出版社,20062 胡越明.計算機組成與設計M.北京:科學出版社,20063 王愛英.計算機組成與結構(第4版)M.北京:清華大學出版社,20064白中英.計算機組成原理M.科學出版社出版社,20085 高有堂.EDA技術及應用實驗M.清華大學出版社,20066

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論