Qsys系統(tǒng)設(shè)計(jì)指南_第1頁(yè)
Qsys系統(tǒng)設(shè)計(jì)指南_第2頁(yè)
Qsys系統(tǒng)設(shè)計(jì)指南_第3頁(yè)
Qsys系統(tǒng)設(shè)計(jì)指南_第4頁(yè)
Qsys系統(tǒng)設(shè)計(jì)指南_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Q s y s 系 統(tǒng) 設(shè) 計(jì) 指 南Chi.緒論軟硬件需求概述 下載、安裝設(shè)計(jì)實(shí)例 打開(kāi)實(shí)例工程Ch2.建立Qsys系統(tǒng) 建立數(shù)據(jù)模式發(fā)生器( DataPatternGenerato)r 建立新的帶有時(shí)鐘源的 Qsys 系統(tǒng) 加入管道橋( PipelineBridge) 加入定制模式發(fā)生器( CustomPatternGenerato)r 加入 PRBS 模式發(fā)生器 加入 2-1 流復(fù)用器( Two-to-OneStreamingMultiplexer ) 校驗(yàn)存儲(chǔ)器地址映射( MemoryAddressMap) 連接復(fù)位信號(hào)(ResetSignalS和插入適配器(Adapters) 建立數(shù)

2、據(jù)模式校驗(yàn)器( DataPatternChecker 建立新的Qsys系統(tǒng)并設(shè)置時(shí)鐘源 加入管道橋( PipelineBridge)加入 1-2 流解復(fù)用器( One-to-TwoStreamingDemultiplexer) 加入定制模式校驗(yàn)器( CustomPatternC)加入PRBS模式校驗(yàn)器 校驗(yàn)存儲(chǔ)器地址映射( MemoryAddressMap) 連接復(fù)位信號(hào)Ch3.裝配層級(jí)系統(tǒng)(AssemblingHierarchicalSystems 建立層級(jí)存儲(chǔ)器檢測(cè)器( HierarchicalMemoryTester) 加入數(shù)據(jù)模式發(fā)生器( DataPatternGenerator 加入

3、模式校驗(yàn)器( DataPatternChecker 加入存儲(chǔ)器主元件( MemoryMasterComponents) 連接復(fù)位信號(hào)指定存儲(chǔ)器地址映射( MemoryAddressMap) 完成頂層系統(tǒng)( Top-LevelSystem) 編譯并下載軟件到開(kāi)發(fā)板Ch.4在系統(tǒng)控制臺(tái)(SystemConsoie驗(yàn)證硬件 理解腳本( UnderstandingtheScripts) 打開(kāi)實(shí)例工程( TutorialProject) 加入 JTAG-to-Avalon 主橋( MasterBridge) 編譯并使用系統(tǒng)控制臺(tái)控制開(kāi)發(fā)板Ch5.仿真定制元件(CustomComponents在Qsys中

4、產(chǎn)生Testbench系統(tǒng) 打開(kāi)實(shí)例工程( TutorialProject)為設(shè)計(jì)測(cè)試(DesignUnderTes)建立一個(gè)新的Qsys系統(tǒng) 導(dǎo)出所有設(shè)計(jì)測(cè)試接口( DesignUnderTestInterfaces) 產(chǎn)生一個(gè)QsysTestbench系統(tǒng)產(chǎn)生QsysTestbench系統(tǒng)仿真模型在 ModelSim-Altera 軟件中執(zhí)行仿真 設(shè)置仿真環(huán)境執(zhí)行仿真附加信息文檔版本歷史如何聯(lián)系 AlteraCh1. 緒論本指南介紹可在 QuartusII 軟件中使用的 Qsys 系統(tǒng)集成工具。本指南介紹了 如何設(shè)計(jì)一個(gè)使用不同的測(cè)試模式來(lái)測(cè)試一個(gè)外部存儲(chǔ)器件的系統(tǒng)。 通過(guò)系統(tǒng)需 求分析,

5、硬件設(shè)計(jì)任務(wù),以及系統(tǒng)性能分析,重點(diǎn)在于構(gòu)架系統(tǒng)。在理解 Qsys 開(kāi)發(fā)流程的基礎(chǔ)上,可以進(jìn)一步設(shè)計(jì)自己的Qsys系統(tǒng)。1.1 軟硬件需求本指南需要下面的軟件支持:AlteraQuartusIIV11.0 以上軟件 系統(tǒng)需求及安裝指令請(qǐng)參考 AlteraSoftwareInstallationandLicensing NiosIIEDSV11.0 以上Tt_qsys_desig n.zip 設(shè)計(jì)實(shí)例文件,可以從 QsysTutorialDesig nExample 網(wǎng) 站下載。該設(shè)計(jì)實(shí)例文件包括可設(shè)置選擇 Altera 開(kāi)發(fā)板的工程文件。如果滿足下面的要求, 可以根據(jù)本指南建立任何 Alter

6、a 開(kāi)發(fā)板或自定制板的 Qsys 系統(tǒng)。板上必須包括 Altera 的 Arria、Cyclone 或 Stratix 系列 FPGA。FPGA必須包括至少12K邏輯單元(LEs)或自適應(yīng)查找表(ALUTs )。 FPGA 必須包括至少 150Kb 嵌入式存儲(chǔ)器。板上必須有JTAG接口,用于主機(jī)監(jiān)控板上FPGA內(nèi)部存儲(chǔ)器程序執(zhí)行。 板上必須包括用于設(shè)計(jì)測(cè)試的存儲(chǔ)器。 例如,任意具有 Avalon-MM 從接 口的基于Qsys控制器的存儲(chǔ)器。為了在開(kāi)發(fā)板上完成本指南,請(qǐng)參考開(kāi)發(fā)板文檔中對(duì)時(shí)鐘頻率和引腳描述。 對(duì)于 Altera 開(kāi)發(fā)板,可以在相關(guān)參考手冊(cè)中找到對(duì)應(yīng)信息。1.2概述本指南中建立的Q

7、sys系統(tǒng)用來(lái)測(cè)試一個(gè)同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器(SDRAM )。 最終的系統(tǒng)在層級(jí)子系統(tǒng)中包括 SDRAM控制器,一個(gè)NiosII處理器和一些嵌入 式外設(shè)。通過(guò)添加不同的 Qsys元件來(lái)產(chǎn)生測(cè)試數(shù)據(jù),訪問(wèn)存儲(chǔ)器以及驗(yàn)證返回 數(shù)據(jù),從而完成Qsys系統(tǒng)。最終系統(tǒng)包括下面的元件:基于 NiosII/e 的處理器子系統(tǒng)(包含在 Altera 完整的設(shè)計(jì)套件中) SDRAM 控制器(包含在 Altera 完整的設(shè)計(jì)套件中)偽隨機(jī)二進(jìn)制序列(Pseudo-randombinarysequenc,PRBS)模式發(fā)生器 和校驗(yàn)器定制模式發(fā)生器和校驗(yàn)器模式選擇復(fù)用器( Multiplexer )和解復(fù)用器( Dem

8、ultiplexer) 模式讀寫(xiě)器( Patternwriterandreade)r存儲(chǔ)器測(cè)試控制器無(wú)需license即可在硬件中應(yīng)用本最終系統(tǒng)。通過(guò)Altera免費(fèi)的OpenCorePlus 評(píng)估特性,可以進(jìn)一步完成下面的工作:仿真系統(tǒng)行為以及驗(yàn)證其功能產(chǎn)生時(shí)限的器件編程文件器件編程并進(jìn)行硬件驗(yàn)證 設(shè)計(jì)實(shí)例文件包含了在任何設(shè)計(jì)中均可免費(fèi)使用的元件。 NiosII/e 處理器核 和 DDRSDRAMIP 核可以免費(fèi)在 QuartusII 訂購(gòu) license 中使用。為了匹配開(kāi)發(fā)板 上的存儲(chǔ)器,設(shè)計(jì)文件對(duì)于不同的開(kāi)發(fā)板使用不同的 DDRSDRAM 控制器。關(guān)于OpenCorePlus更多信息,

9、請(qǐng)參考AN320 :OpenCorePlusEvaluationofMegafunctions.圖1-1給出了設(shè)計(jì)實(shí)例完整的頂層系統(tǒng)。圖1-1給出了作為一個(gè)Qsys系統(tǒng),在存儲(chǔ)器測(cè)試器系統(tǒng)中的元件,具有三個(gè)主要設(shè)計(jì)功能,如圖中虛線框內(nèi)所示。 本指南采用層級(jí)結(jié)構(gòu)表示將數(shù)據(jù)模式發(fā)生器和數(shù)據(jù)模式校驗(yàn)器分別例化為 兩個(gè)獨(dú)立系統(tǒng),然后包含在存儲(chǔ)器檢測(cè)器(MemoryTester)系統(tǒng)中。在一個(gè)高層 系統(tǒng)中,層次表示可以例示某個(gè)系統(tǒng)作為一個(gè)元件。圖 1-1 頂層系統(tǒng)結(jié)構(gòu)1.2.1 下載、安裝設(shè)計(jì)實(shí)例按照下面的步驟下載并安裝本指南設(shè)計(jì)實(shí)例:(1) 從 QsysTutorialDesignExample 網(wǎng)站

10、下載 QsysTutorialDesignExample (.zip)文件;(2) 解壓縮文件中所有內(nèi)容到某個(gè)目錄中,注意在目錄路徑名種不要使用 空格。1.2.2打開(kāi)實(shí)例工程本指南設(shè)計(jì)實(shí)例文件提供必需的定制IP設(shè)計(jì)模塊和工程文件用于開(kāi)始工作, 并包括部分完成的QuartusII工程和Qsys系統(tǒng)。設(shè)計(jì)實(shí)例文件包括下面全部工程:QuartusII工程I/O引腳分配,指定的Synopsys設(shè)計(jì)約束(.sdc)時(shí)序分 配。參數(shù)化的NiosII處理器核,可與主PC機(jī)通訊來(lái)控制存儲(chǔ)器測(cè)試系統(tǒng)。 參數(shù)化的 DDRSDRAM 控制器,用于開(kāi)發(fā)板上的存儲(chǔ)器。 按照下面的步驟打開(kāi)實(shí)例工程:(1) 打開(kāi) Quar

11、tusII 軟件。(2) 對(duì)應(yīng)所用的開(kāi)發(fā)板,打開(kāi) QuartusII 工程文件( .qpf):a在File菜單中,點(diǎn)擊 OpenProjec。b. 瀏覽目錄“”目錄。c. 選擇相關(guān)開(kāi)發(fā)板.qpf文件,點(diǎn)擊Open。 設(shè)計(jì)中的定制存儲(chǔ)器測(cè)試元件是 VerilogHDL 元件,隨同硬件元件描述文件(_hw.tcl )描述了每個(gè)元件的接口和參數(shù)。這些文件在tt_qsys_designmemory_tester_ip目錄中。在 Qsys 中查看這些元件,在 ComponentLibray標(biāo)簽上展開(kāi) MemoryTestMicrocores,如下圖中紅色圓圈所示。 一個(gè)IP索引(.ipx)文件為包含這些

12、存儲(chǔ)器測(cè)試元件的 memory_tester_ip目錄提 供了參考。圖展開(kāi) MemoryTestMicrocoresCh2.建立Qsys系統(tǒng)本章介紹如何例化(Instantiate)、參數(shù)化(Parameterize以及連接元件到 新建的 Qsys 系統(tǒng)。本章建立如圖1-1所示的Qsys系統(tǒng),包括下列設(shè)計(jì)模塊:數(shù)據(jù)模式發(fā)生器( DataPatternGenerator 數(shù)據(jù)模式校驗(yàn)器( DataPatternChecker如果已經(jīng)熟悉創(chuàng)建Qsys系統(tǒng)的過(guò)程,可以跳過(guò)本章直接進(jìn)入第三章。實(shí)例 設(shè)計(jì)文件包括了本章完整的系統(tǒng)。數(shù)據(jù)模式校驗(yàn)器產(chǎn)生高速流數(shù)據(jù),完成 PRBS 或者軟可編程序列,例如,“w

13、alkingones”。設(shè)計(jì)通過(guò)Avalon-ST連接發(fā)送數(shù)據(jù)到存儲(chǔ)器主控器的模式寫(xiě)入 器和控制邏輯。數(shù)據(jù)模式發(fā)生器根據(jù)控制邏輯發(fā)出的命令將數(shù)據(jù)寫(xiě)入存儲(chǔ)器。 當(dāng)設(shè)計(jì)將數(shù)據(jù) 寫(xiě)入存儲(chǔ)器時(shí),模式讀邏輯讀回內(nèi)容并將它們發(fā)送給數(shù)據(jù)模式驗(yàn)證邏輯。數(shù)據(jù)模式校驗(yàn)器接收由模式讀出器從 Avalon-ST 連接讀回的數(shù)據(jù)。設(shè)計(jì)驗(yàn)證 數(shù)據(jù)模式(DataPatterr),確保其寫(xiě)入存儲(chǔ)器的模式與其讀回的數(shù)據(jù)相同。當(dāng)在系統(tǒng)中加入元件并產(chǎn)生連接時(shí),QsysMessages標(biāo)簽中的錯(cuò)誤和警告信息 指明了在系統(tǒng)完成之前必須要完成的步驟。 某些錯(cuò)誤信息不能立即解決, 可能需 要在后續(xù)步驟中得以解決。2.1 建立數(shù)據(jù)模式發(fā)生器

14、( DataPatternGenerator )本節(jié)將建立數(shù)據(jù)模式發(fā)生器系統(tǒng),包括兩個(gè)用來(lái)產(chǎn)生測(cè)試模式的元件,以及 一個(gè)用來(lái)處理器控制的數(shù)據(jù)多路復(fù)用的第三個(gè)元件。 數(shù)據(jù)模式發(fā)生器可以配置成 匹配不同的存儲(chǔ)器接口寬度。 由于數(shù)據(jù)模式發(fā)生器在每個(gè)時(shí)鐘周期可以提供一個(gè) 完整字的數(shù)據(jù), 配置該元件來(lái)匹配存儲(chǔ)器寬度可以提供足夠的帶寬來(lái)快速訪問(wèn)存 儲(chǔ)器。在建立該Qsys系統(tǒng)之前,確保已經(jīng)下載并安裝了本指南實(shí)例文件,并打開(kāi)QuartusII 工程。2.1.1建立新的帶有時(shí)鐘源的 Qsys系統(tǒng)請(qǐng)按照下面的步驟來(lái)建立一個(gè)新的 Qsys系統(tǒng),并設(shè)置時(shí)鐘源:(1) 在Quartusll軟件中,選擇Tools菜單,并

15、點(diǎn)擊 Qsy&(2) 在Qsys,選擇File菜單,點(diǎn)擊NewSystem。Qsys打開(kāi)并顯示一個(gè)新的 空系統(tǒng)。在SystemContents標(biāo)簽,Qsys顯示出一個(gè)時(shí)鐘源實(shí)例,clk_0。(3) 右鍵點(diǎn)擊clk_0并選擇Edit,或在clk_0實(shí)例上雙擊即可打開(kāi)時(shí)鐘源的 設(shè)置。( 4)在建立系統(tǒng)時(shí),關(guān)掉 Clockfrequencyisknown 選項(xiàng),意味著由例化該子 系統(tǒng)的高層系統(tǒng)提供時(shí)鐘頻率。( 5)點(diǎn)擊 Finish。( 6)保存并命名系統(tǒng):a. 在File菜單,點(diǎn)擊SaveAsob. 輸入文件名pattern_generator_system并點(diǎn)擊Sava確保輸入的系統(tǒng)名無(wú) 誤,因

16、為本指南腳本被配置為使用該名稱(chēng)。2.1.2 加入管道橋( PipelineBridge ) 構(gòu)建該系統(tǒng)的元件包括幾個(gè) Avalon-MM 從接口。為了讓高層系統(tǒng)通過(guò)讀和 寫(xiě)一個(gè)單獨(dú)從接口來(lái)訪問(wèn)所有 Avalon-MM 從接口,可以在 Avalon-MM 管道橋(Avalon-MMpipelinebridge )后面合并(consolidate)從接口,從該系統(tǒng)中引出 一個(gè)單獨(dú)的 Avalon-MM 從接口。該橋也加入一級(jí)流水線( pipelining) ,可以改 善時(shí)序性能。按照下面的步驟來(lái)加入管道橋:(1) 在 ComponentLibrary 標(biāo)簽中,展開(kāi) BridgesandAdapte

17、rs 然后展開(kāi) Memory Map ped。另外一種方法是,在查找框中輸入 bridge,會(huì)顯示只有橋元件 的列表。點(diǎn)擊查找框右邊的“ x ”,即可清除查找濾波條件。(2) 點(diǎn)擊Avalon-MMPipelineBridge元件并點(diǎn)擊 Add。也可以雙擊 Avalon-MMPipelineBridge 。即可打開(kāi)參數(shù)編輯框。(3) 在參數(shù)編輯框,Addresswidth輸入11,即設(shè)定了在該系統(tǒng)中映射存儲(chǔ) 器元件的范圍。(4) 點(diǎn)擊Finish。默認(rèn)橋加入了系統(tǒng)中,該橋的例化名為mm_bridge_O。(5) 設(shè)置 mm_bridge_0 的時(shí)鐘域?yàn)?clk_0:在Clock列對(duì)應(yīng)mm_br

18、idge_O的clk接口,從下拉列表中選擇 clk_0。 也可以在Connections列設(shè)置連接。點(diǎn)擊clk_0的clkoutput和 mm_bridge_0的clkinput之間的圓點(diǎn),使圓點(diǎn)填充即可。也可以在mm_bridge_0的clkinput上點(diǎn)擊右鍵,鼠標(biāo)指向 mm_bridge_0.clkConnection,并選擇 clk_0.clk。(6) 用名字slave導(dǎo)出mm_bridge_0s0接口。點(diǎn)擊 Export列并輸入slaveo 2.1.3加入定制模式發(fā)生器( CustomPatternGenerator ) 通過(guò)配置定制模式發(fā)生器可以產(chǎn)生多種測(cè)試模式。用模式(樣本)數(shù)據(jù)

19、和模式(樣本)長(zhǎng)度對(duì)元件進(jìn)行編程。當(dāng)達(dá)到樣本結(jié)尾時(shí),定制模式發(fā)生器循環(huán)回樣 本的第一個(gè)元素。該元件產(chǎn)生下面的樣本:WalkingonesWalkingzerosLowfrequencyAlternatinglowfrequencyHighfrequencyAlternatinghighfrequency SynchronousPRBS同步PRBS樣本是最長(zhǎng)的樣本,包括256個(gè)元素。存儲(chǔ)器的寬度規(guī)定了 walki ngones或walk in gzeros樣本的長(zhǎng)度。例如,當(dāng)測(cè)試32位存儲(chǔ)器時(shí),walki ngo nes 或walkingzeros樣本長(zhǎng)度即為32個(gè)元素。High和lowfreq

20、uency樣本僅包含2個(gè)定制模式發(fā)生器包括三個(gè)接口,其中兩個(gè)控制產(chǎn)生的樣本。另外一個(gè)控制定 制模式產(chǎn)生的方式。處理器訪問(wèn) pattern_access接 口(只能寫(xiě)),編程要發(fā)送到 樣本記錄器核的定制樣本元素。St_pattern_output是流源接口,該接口發(fā)送數(shù)據(jù) 到樣本記錄器核。按照下面的步驟加入定制模式發(fā)生器:(1) 在 ComponentLibrary 標(biāo)簽頁(yè),在 Project 下方展開(kāi)MemoryTestMicrocores,并且雙擊 CustomPatternGenerato,參數(shù)編輯窗口出現(xiàn)。(2) 接受默認(rèn)參數(shù)設(shè)置,點(diǎn)擊 Finish 按鈕。(3) 在SystemCont

21、ents標(biāo)簽頁(yè),重命名定制模式產(chǎn)生器為custom_pattern_generato:ra. 在 Name歹U,右鍵單擊 custom_pattern_generator_0 并且選擇 Renamesb. 從名字中去掉_0字符。(4) 設(shè)置 custom_pattern_generatoi時(shí)鐘域?yàn)?clk_0。(5) 連接 custom_pattern_generatorcs接口至U mm_bridge_0m0接口:在 Connections列,點(diǎn)擊 custom_pattern_generatorcs接口和 mm_bridge_0m0接口之間的圓點(diǎn),使之填充。也可以,在 custom_pat

22、tern_generator.cs止點(diǎn)擊鼠標(biāo)右鍵,在右鍵菜 單中點(diǎn)擊 custom_pattern_generator.csrConnection,s 并且選擇mm_bridge_0.m0。( 6 )口。連接 custom_pattern_generatorpattern_acces接 口至U mm_bridge_0m0 接(7) 分配 custom_pattern_generatorcs接 口的基地址為 0400: a.在Base列,在地址0x00000000上雙擊鼠標(biāo)左鍵。b.輸入十六進(jìn)制格式的基地址400。分配該基地址比pattern_access接 口的終止地址高,是為了避免與patt

23、ern_access接 口的地址空間沖突。(8) 保持 custom_pattern_generatorpattern_acces接 口的基地址 0000。2.1.4加入PRBS模式發(fā)生器PRBS模式發(fā)生器的輸出是一個(gè)定義為靜態(tài)(statically-defined) PRBS樣本。 在參數(shù)編輯器中,在樣本重復(fù)之前可以指定樣本長(zhǎng)度。樣本長(zhǎng)度定義為2A(數(shù)據(jù)寬度)-1。例如,一個(gè)32位的PRBS模式發(fā)生器,在發(fā)送2A32=個(gè)元素后開(kāi)始重 復(fù)該樣本。根據(jù)開(kāi)發(fā)板上存儲(chǔ)器的數(shù)據(jù)寬度來(lái)設(shè)置 PRBS發(fā)生器的寬度。PRBS模式發(fā)生器有兩個(gè)接口。Csr接口控制產(chǎn)生PRBS樣本的方式。St_pattern_o

24、utput流源接口發(fā)送數(shù)據(jù)到樣本記錄器元件。按照下面的步驟加入 PRBS 模式發(fā)生器:(1) 在 MemoryTestMicrocores 組雙擊 PRBSPatternGenerato,即可出現(xiàn)參數(shù) 編輯器。( 2)采用默認(rèn)參數(shù)設(shè)置,點(diǎn)擊 Finish。(3) 重命名為 prbs_pattern_generator(4) 設(shè)置 prbs_pattern_generato時(shí)鐘域?yàn)?clk_0。(5) 連接 prbs_pattern_generatorcs接口至U mm_bridge_0m0接口。(6) 分配 prbs_pattern_generatorcs接口的基地址為 0x0420 (高于

25、custom_pattern_generatorcs接口的基地址 0x0400)。2.1.5加入 2-1 流復(fù)用器( Two-to-OneStreamingMultiplexer ) 由于系統(tǒng)有兩個(gè)樣本源(patternsources,并且樣本記錄器(writer)元件只 能從一個(gè)流源(streamingsourc接收數(shù)據(jù),因此需要在模式發(fā)生器和模式寫(xiě)入 器之間加入一個(gè) 2-1流復(fù)用器。 2-1流軟件可編程多路復(fù)用器 IP 核允許處理器選 擇某個(gè)樣本發(fā)送到樣本記錄器元件。元件具有下面的接口:兩個(gè)流輸入端: st_input_A 和 st_input_B。 一個(gè)流輸出端: st_output。一

26、個(gè) csr 從接口,由處理器控制選擇輸入 A 或輸入 B 發(fā)送到流輸出 端。定制模式發(fā)生器連接到A輸入端;PRBS模式發(fā)生器連接到B輸入端。按照 下面的步驟加入 2-1 流復(fù)用器:(1)在 MemoryTestMicrocores 組雙擊 Two-to-oneStreamingMux 即可出現(xiàn)參 數(shù)編輯窗口。(2)采用默認(rèn)參數(shù),點(diǎn)擊 Finish。(3)重命名為 two_to_one_st_mux。(4)設(shè)置 two_to_one_st_mux 的時(shí)鐘域?yàn)?clk_0 。(5)連接 two_to_one_st_muxst_input_A 接口至U custom_pattern_ge nerat

27、orst_pattern_outpi接 口。(6)連接 two_to_one_st_muxst_input_B 接口至U prbs_pattern_ge neratorst_pattern_outpi接 口。(7)連接 two_to_one_st_muxcsr接口至U mm_bridge_OmO接口。(8)用 st_data_out導(dǎo)出 two_to_one_st_muxst_output接口。(9)分配 two_to_one_st_muxcsr接口基地址為 0x0440 (高于 prbs_pattern_generatorcs接口的基地址 0x0420)。2.1.6 校驗(yàn)存儲(chǔ)器地址映射( M

28、emoryAddressMap ) 為了確保建立系統(tǒng)的存儲(chǔ)器映射與本指南其它部分所使用的存儲(chǔ)器映射匹 配,需要校驗(yàn)系統(tǒng)中的基地址。點(diǎn)擊AddressMap標(biāo)簽,確認(rèn)表中的入口(entries) 與表 2-1中的值匹配。紅色感嘆號(hào)標(biāo)志表示地址范圍重疊。修改地址映射,確保 沒(méi)有重疊地址,保證映射與本指南匹配。2.1.7連接復(fù)位信號(hào)(ResetSignals)和插入適配器(Adapters )必須連接所有的復(fù)位信號(hào),從而消除Messages標(biāo)簽中的某些錯(cuò)誤信息。Qsys 運(yùn)行系統(tǒng)有多個(gè)復(fù)位域(resetdomain9,或者一個(gè)復(fù)位信號(hào)。本設(shè)計(jì)中,我們 連接所有的復(fù)位信號(hào)到引入的復(fù)位信號(hào)上,以至于我們

29、可以使用Qsys自動(dòng)連接特性。為了將所有的復(fù)位信號(hào)連接在一起,在System菜單,選擇CreateGlobalResetNetwork。在Messages標(biāo)簽中剩下的錯(cuò)誤信息與模式發(fā)生器和多路復(fù)用器之間的準(zhǔn)備 延遲(readylatency)不匹配有關(guān)。為了消除流源(Source)與接收器(Sink)時(shí) 序特性之間的不匹配,在 System菜單選擇InsertAvalon-STAdapters,從而 Qsys 自動(dòng)插入流時(shí)序適配器到適當(dāng)?shù)臄?shù)據(jù)路徑。Qsys顯示沒(méi)有剩余的錯(cuò)誤或警告信息。如果在Messages標(biāo)簽中還有任何錯(cuò)誤信息,回顧前面建立系統(tǒng)的過(guò)程,確保沒(méi)有錯(cuò)過(guò)任何步驟??梢栽?Syste

30、mCo nte nts標(biāo)簽查看復(fù)位連接和時(shí)序適配器。保存系統(tǒng),在 File 菜單選擇 Save。 現(xiàn)在已經(jīng)為設(shè)計(jì)(如圖圖 1-1)建立了包括數(shù)據(jù)模式發(fā)生器的一個(gè)系統(tǒng)。在 整個(gè)系統(tǒng)中,2-1流復(fù)用器的輸出加載定制模式發(fā)生器或PRBS模式發(fā)生器的模 式數(shù)據(jù)到模式記錄器(writer)。從2-1流復(fù)用器輸出的數(shù)據(jù)可以達(dá)到每個(gè)時(shí)鐘 周期一個(gè)字的吞吐量。2.2 建立數(shù)據(jù)模式校驗(yàn)器( DataPatternChecker )本節(jié)將建立數(shù)據(jù)模式校驗(yàn)器系統(tǒng),和數(shù)據(jù)模式發(fā)生器系統(tǒng)類(lèi)似。系統(tǒng)從SDRAM 讀回樣本, 并發(fā)送到模式校驗(yàn)器來(lái)根據(jù)數(shù)據(jù)模式發(fā)生器產(chǎn)生的樣本進(jìn)行 校驗(yàn)。樣本閱讀器(reader)發(fā)送數(shù)據(jù)到1

31、-2流解復(fù)用器,進(jìn)而將數(shù)據(jù)路由到定制模 式校驗(yàn)器或PRBS模式校驗(yàn)器。1-2流解復(fù)用器是軟件可編程的,處理器可以選 擇哪一個(gè)模式校驗(yàn)器 IP 核校驗(yàn)樣本閱讀器讀出的數(shù)據(jù)。定制模式校驗(yàn)器也是軟 件可編程的,可以配置為與定制模式發(fā)生器相匹配的相同的樣本。2.2.1 建立新的 Qsys 系統(tǒng)并設(shè)置時(shí)鐘源按照下面的步驟來(lái)建立一個(gè)新的 Qsys系統(tǒng)并設(shè)置時(shí)鐘源:(1)在File菜單,點(diǎn)擊NewSystem, Qsys打開(kāi)并顯示一個(gè)新的空系統(tǒng)。在SystemContents標(biāo)簽,Qsys顯示一個(gè)時(shí)鐘源,clk_0。( 2)雙擊該時(shí)鐘源并編輯時(shí)鐘源設(shè)置。(3)在建立新系統(tǒng)時(shí),關(guān)閉 Clockfrequenc

32、yisknown 表明調(diào)用該模塊的高層 系統(tǒng)來(lái)提供時(shí)鐘頻率。( 4)點(diǎn)擊 Finish。( 5)保存模式校驗(yàn)器系統(tǒng):a在File菜單,點(diǎn)擊SaveAb.輸入文件名 pattern_checker_system并點(diǎn)擊 Sava2.2.2加入管道橋( PipelineBridge ) 根據(jù)下面的步驟來(lái)加入管道橋合并從接口:(1)在 ComponentLibrary 標(biāo)簽,展開(kāi) BridgesandAdapters 展開(kāi) MemoryMapped。(2)點(diǎn)擊Avalon-MMPipelineBridge元件并點(diǎn)擊 Add,出現(xiàn)參數(shù)編輯窗口。(3)在參數(shù)編輯器,輸入 Addresswidth為11,滿

33、足系統(tǒng)中的存儲(chǔ)器映射元 件寬度。(4)點(diǎn)擊Finish,默認(rèn)的名稱(chēng)為 mm_bridge_0。( 5)設(shè)置 mm_bridge_0 時(shí)鐘域?yàn)?clk_0。(6)導(dǎo)出 mm_bridge_0s0接口,名稱(chēng)為 slaveo2.2.3加入 1-2流解復(fù)用器( One-to-TwoStreamingDemultiplexer )1-2 流解復(fù)用器完成 2-1 流復(fù)用器相反的操作。解復(fù)用器具有一個(gè)流輸入接 口,st_input,從樣本閱讀器接收數(shù)據(jù),兩個(gè)流輸出接口,st_output_A和st_output_B,連接定制模式發(fā)生器和PRBS模式發(fā)生器。為了允許處理器對(duì)通過(guò) 元件的數(shù)據(jù)進(jìn)行編程,系統(tǒng)還包括

34、一個(gè)從接口,csr。按照下面的步驟添加1-2流解復(fù)用器:(1)在 MemoryTestMicrocores 組中雙擊 One-to-twoStreamingDemux,出現(xiàn) 參數(shù)編輯窗口。( 2)接受默認(rèn)參數(shù),點(diǎn)擊 Finish。(3)在 SystemContents標(biāo)簽,重命名為 one_to_two_st_demux(4)設(shè)置 one_to_two_st_demux時(shí)鐘域?yàn)?clk_0。(5) 導(dǎo)出 one_to_two_st_demuxst_input接口,名稱(chēng)為 st_data_ir。(6) 連接 one_to_two_st_demuxcsr接口至U mm_bridge_OmO接口。(

35、7) 分配 one_to_two_st_demuxcsr接 口基地址為 0x0400。2.2.4 加入定制模式校驗(yàn)器( CustomPatternC ) 定制模式校驗(yàn)器完成定制模式發(fā)生器的相反操作。具有一個(gè)流輸入接口,st_patternnput,從1-2流解復(fù)用器接收數(shù)據(jù)。一個(gè) Avalon-MM 從接口,csr,用 于處理器控制元件。還有一個(gè)存儲(chǔ)器映射從接口, pattern_access用于處理器編 程與定制模式發(fā)生器元件相同的模式。按照下面的步驟添加定制模式校驗(yàn)器:(1)在 MemoryTestMicrocores 組雙擊 CustomPatternChecke,出現(xiàn)參數(shù)編輯 窗口。(

36、 2)接收默認(rèn)參數(shù),點(diǎn)擊 Finish。(3) 重命名為 custom_pattern_checke。(4) 設(shè)置 custom_pattern_checke的時(shí)鐘域?yàn)?clk_0。(5) 連接 custom_pattern_checkercs和 pattern_access接 口至U mm_bridge_0m0 接口。(6) 連接 custom_pattern_checkerst_patternnpu接 口至Uon e_to_two_st_demuxst_output_A 接口。(7) 分配 custom_pattern_checkercs接口基地址為 0x0420。(8) 分配 custo

37、m_pattern_checkerpattern_acces接 口的基地址為 0x0000。2.2.5加入 PRBS 模式校驗(yàn)器PRBS模式校驗(yàn)器完成PRBS模式發(fā)生器的相反操作。具有一個(gè)存儲(chǔ)器映射 從接口,csr,處理器可以訪問(wèn)控制元件。還有一個(gè)流輸入,st_pattern_inpu,接收1-2流解復(fù)用器數(shù)據(jù)。按照下面的步驟添加PRBS模式校驗(yàn)器:( 1 )在 MemoryTestMicrocores 組雙擊 PRBSPatternChecke,r 出現(xiàn)參數(shù)編輯 窗口。( 2)接收默認(rèn)設(shè)置,點(diǎn)擊 Finish。(3) 重命名為 prbs_pattern_checke。(4) 設(shè)置 prbs_

38、pattern_checke的時(shí)鐘域?yàn)?clk_0。(5) 連接 prbs_pattern_checkercs接口至U mm_bridge_0m0接口。(6) 連接 prbs_pattern_checkerst_patternnpu接 口至Uon e_to_two_st_demuxst_output_B 接 口。(7) 分配 prbs_pattern_checkercs接口基地址為 0x0440。2.2.6 校驗(yàn)存儲(chǔ)器地址映射( MemoryAddressMap ) 為了確保所建立系統(tǒng)的存儲(chǔ)器映射與本指南其它部分的存儲(chǔ)器映射相匹配, 需要校驗(yàn)系統(tǒng)中的基地址。點(diǎn)擊AddressMap標(biāo)簽,確認(rèn)表

39、中內(nèi)容與表2-2一致。2.2.7連接復(fù)位信號(hào)必須連接所有的復(fù)位信號(hào)。在 System菜單,選擇 CreateGlobalResetNetwork 將所有復(fù)位信號(hào)連接在一起。Qsys顯示沒(méi)有錯(cuò)誤或警告信息。如果在Messages標(biāo)簽中還有其它錯(cuò)誤信息, 檢查建立系統(tǒng)的過(guò)程,確保沒(méi)有錯(cuò)過(guò)任何步驟。在SystemContents標(biāo)簽中可以查 看復(fù)位連接及時(shí)序適配器。保存系統(tǒng)。現(xiàn)在已經(jīng)建立了驗(yàn)證從存儲(chǔ)器讀回?cái)?shù)據(jù)的系統(tǒng)。 頂層系統(tǒng)經(jīng)過(guò)流接口發(fā)送來(lái) 自于模式閱讀器元件的數(shù)據(jù)。數(shù)據(jù)進(jìn)入 1-2 流解復(fù)用器,路由到定制模式校驗(yàn)器 或 PRBS 模式校驗(yàn)器。用于存儲(chǔ)器測(cè)試的下一級(jí)子系統(tǒng)已經(jīng)完成了。下面進(jìn)入第三章,裝配層級(jí)系 統(tǒng),在層級(jí)系統(tǒng)設(shè)計(jì)中使用這些系統(tǒng)模塊。Ch3. 裝配層級(jí)系統(tǒng)( AssemblingHierarchicalSystems ) 本指南描述了在 Qsys 中層級(jí)系統(tǒng)的設(shè)計(jì)。通過(guò)將大的系統(tǒng)分解成小的子系 統(tǒng),層級(jí)系統(tǒng)可用建立充分使用的模塊化系統(tǒng)元件, 也可以很容易的形成大系統(tǒng)。 本指南使用第二章建立的 Qsys 系統(tǒng)(或設(shè)計(jì)文件完成的系統(tǒng)版本)作為存 儲(chǔ)器測(cè)試器系統(tǒng)中的層級(jí)子系統(tǒng), 然后在頂層系統(tǒng)中例示存儲(chǔ)器測(cè)試器系統(tǒng)。 在 頂層系統(tǒng)中也包括一個(gè)處理器系統(tǒng)和一個(gè) SDRAM 控制器。圖 3-1 所示為頂層系 統(tǒng)中的高層接口。3.1 建立層級(jí)存儲(chǔ)器檢測(cè)器( H

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論