freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于modelsim的dma控制器的設(shè)計(jì)學(xué)士學(xué)位論文-wenkub

2022-09-08 18:52:14 本頁(yè)面
 

【正文】 DMAC 設(shè)計(jì)的編譯和功能仿真 18 DMA 控制器功能模塊劃分 12 多路型 DMA 控制器 6 DMA 控制器的傳送過(guò)程 4 DMA 控制器的基本組成 2 2 DMA 控制器的基本理論 1 DMA 控制器國(guó)內(nèi)外發(fā)展?fàn)顩r 目前由于大規(guī)模集成電路工藝發(fā)展,很多廠家直接生產(chǎn)大規(guī)模集成電路的 DMA 控制器,雖然 DMA 控制器復(fù)雜程度差不多接近于 CPU,但是用起來(lái)非常方便。 DMA 方式適用于高速傳送成組數(shù)據(jù)。 DMA 控制器將向內(nèi)存發(fā)出地址和控制信號(hào),修改地址,對(duì)傳送的字的個(gè)數(shù)計(jì)數(shù),并且以中斷方式向 CPU報(bào)告?zhèn)魉筒僮鞯慕Y(jié)束。 本文在基于 Verilog HDL 設(shè)計(jì) DMA 控制器時(shí),采用的是 TopDown 的設(shè)計(jì)方法。 1 本文所做的工作及主要內(nèi)容 17 設(shè)計(jì)方案 17 設(shè)計(jì)說(shuō)明 17 運(yùn)行環(huán)境及設(shè)計(jì)功能要求 18 DMA 控制器設(shè)計(jì)的相關(guān)組件 42 DMAC 全電路的仿真結(jié)果及分析 45 DMAC 全電路的仿真結(jié)果及分析 51 參考文獻(xiàn) 這兩種方式每傳送一個(gè)字節(jié)都需要耗用較長(zhǎng)時(shí)間。對(duì)于這些高速外設(shè),如果傳送速度太慢,不僅降低傳送效率,還會(huì)造成數(shù)據(jù)丟失,導(dǎo)致傳送出錯(cuò)??偩€在 DMA 的控制下,數(shù)據(jù)直接在存儲(chǔ)器和外設(shè)之間傳送,而不經(jīng)過(guò) CPU干預(yù),其傳送速度大大提高,可接近于存儲(chǔ)器 的最快存取速度 [1][2]。目前的 DMA 控制器設(shè)計(jì)一般采用可配置的通道化技術(shù)。每個(gè)通道含有 5 個(gè)通道寄存器,還有 10 個(gè)全局寄存器。 ADI公司 ADSP2106X系列 DSP 中 DMA控制器能夠執(zhí)行內(nèi)部存儲(chǔ)器和外部數(shù)據(jù)源或片外存儲(chǔ)器之間的數(shù)據(jù)傳輸。 Motoroal 公司 DSP56362 支持需要數(shù)字音頻壓縮和解壓縮、聲場(chǎng)處理和其他數(shù)字音頻算法的數(shù)字音頻應(yīng)用。仿真的結(jié)果表明,本設(shè)計(jì)工作穩(wěn)定,工作速度快, 且 實(shí)際模擬運(yùn)行較好。并對(duì) DMA 控制器在現(xiàn)實(shí)中的應(yīng)用進(jìn)行了介紹。 理工大學(xué)學(xué)士學(xué)位論文 4 2 DMA 控制器的基本理論 基本的 DMA 控制器 DMA 控制器的基本功能 DMA 控制器是內(nèi)存儲(chǔ)器同外設(shè)之間進(jìn)行高速數(shù)據(jù)傳送時(shí)的硬件控制電路,是一種實(shí)現(xiàn)直接數(shù)據(jù)傳送的專用處理器,它必須能取代在程序控制傳送中由 CPU和軟件所完成的各項(xiàng)功能;它的主要功能是: (1)DMAC 同外設(shè)之間有一對(duì)聯(lián)絡(luò)信號(hào)線 ——外設(shè)的 DMA 請(qǐng)求信號(hào) DREQ 以及 DMAC 向外設(shè)發(fā)出的 DMA 響應(yīng)信號(hào) DACK; (2)DMAC 在接收到 DREQ 后,同 CPU 之間也有一對(duì)聯(lián)絡(luò)信號(hào)線 ——DMAC 向CPU 發(fā)出總線請(qǐng)求信號(hào) (HOLD 或 BUSRQ), CPU在當(dāng)前總線周期結(jié)束后向 DMAC 發(fā)出總線響應(yīng)信號(hào) (HLDA 或 BUSAK), DMAC 接管對(duì)總線的控制權(quán),進(jìn)入 DMA 操作方式 ; (3)能發(fā)出地址信息,對(duì)存儲(chǔ)器尋址,并修改地址指針, DMAC 內(nèi)部必須有能自動(dòng)加 1 或減 1 的地址寄存器 ; (4)能決定傳送的字節(jié)數(shù),并能判斷 DMA 傳送是否結(jié)束。如:在DMA 傳送結(jié)束時(shí)產(chǎn)生中斷請(qǐng)求信號(hào);在傳送 完 一個(gè)字節(jié)數(shù)后輸出一個(gè)脈沖信號(hào),用于記錄已傳送的字節(jié)數(shù)、為外部提供周期性的脈沖序列;在一個(gè)數(shù)據(jù)塊傳送完后能自動(dòng)裝入新的起始地址和字節(jié)數(shù),以便重復(fù)傳送一個(gè)數(shù)據(jù)塊或?qū)讉€(gè)數(shù)據(jù)塊鏈接起來(lái)傳送;產(chǎn)生兩個(gè)存儲(chǔ)器地址,從而實(shí)現(xiàn)存儲(chǔ)器與存儲(chǔ)器之間的傳 送以及能夠?qū)?I/O 設(shè)備尋址,實(shí)現(xiàn) I/O 設(shè)備與 I/O 設(shè)備之間的傳送以及能夠在傳送過(guò)程中檢索某一特定字節(jié)或者進(jìn)行數(shù)據(jù)檢驗(yàn)等等 [13]。 圖 控制器的組成 (1)內(nèi)存地址計(jì)數(shù)器:用于存放內(nèi)存中要交換的數(shù)據(jù)的地址。其內(nèi)容也是在數(shù)據(jù)傳送之前由程序預(yù)置,交換的字?jǐn)?shù)通常以補(bǔ)碼形式表示。當(dāng)輸入時(shí),由設(shè) 備 (如磁盤 )送往數(shù)據(jù)緩沖寄存器,再由緩沖寄存器通過(guò)數(shù)據(jù)總線送到內(nèi)存。 (5)“控制 /狀態(tài) ”邏輯:由控制 和時(shí)序電路以及狀態(tài)標(biāo)志等組成,用于修改內(nèi)存地址計(jì)數(shù)器和字計(jì)數(shù)器,指定傳送類型 (輸入或輸出 ),并對(duì) “DMA 請(qǐng)求 ”信號(hào)和 CPU 響應(yīng)信號(hào)進(jìn)行協(xié)調(diào)和同步。但在此間 DMAC 一直占用總線, CPU無(wú)法進(jìn)行任何需要系統(tǒng)總線的操作,只能保持空閑。這樣 CPU至少可以得到一個(gè)總線周期,并可進(jìn)行有關(guān)的操作。 (I/O 接口需要有一定大小的 FIFO 緩沖 )。 DMAC 通過(guò)連接到 CPU 的 HOLD 信號(hào)向 CPU提出 DMA 請(qǐng)求。 (3)由 DMAC 送出地址信號(hào)和控制信號(hào),實(shí)現(xiàn)外設(shè)與內(nèi)存或內(nèi)存不同區(qū)域之間大量數(shù)據(jù)的快速傳送。 圖 DMA 的工作流程示意圖 理工大學(xué)學(xué)士學(xué)位論文 10 DMA 控制器的傳送狀態(tài) DMAC 是作為兩種存儲(chǔ)實(shí)體之間實(shí)現(xiàn)高速數(shù)據(jù)傳送而設(shè)計(jì)的專用處理器。其對(duì)應(yīng)的兩種地位:主控器和受控器。 ) (2)被動(dòng)態(tài):指 DMA 控制器在沖線控制權(quán)取得前同其他 I/O 接口芯片一樣,受 CPU的控制。當(dāng) DMAC 收到從外部設(shè)備發(fā)出的請(qǐng)求信號(hào)時(shí),DMAC 經(jīng)判優(yōu)及屏蔽處理后向總線仲裁器送出總線請(qǐng)求信號(hào)要求占用總線。 DMA 控制器與 CPU分時(shí)使用內(nèi)存通常采用一下三種方法: (1)停止 CPU訪問(wèn)內(nèi)存:當(dāng)外圍設(shè)備要求傳送一批數(shù)據(jù)時(shí),由 DMA 控制器發(fā)一個(gè)停止信號(hào)給 CPU,要求 CPU放棄對(duì)地址總線、數(shù)據(jù)總線和有關(guān)的控制總線的使用權(quán)。這種傳送方式的時(shí)間圖如下: 圖 停止 CPU 訪問(wèn) 其優(yōu)點(diǎn) 是:控制簡(jiǎn)單,它適用于數(shù)據(jù)傳輸率很高的設(shè)備進(jìn)行成組傳送。這種傳送方式的時(shí)間圖如下圖所示: 圖 周期挪用 與停止 CPU訪問(wèn)的 DMA 方法相比較,周期挪用的方法既實(shí)現(xiàn)了 I/O 傳送,又較好的發(fā)揮了內(nèi)存和 CPU的效率,是一種廣泛采用的方法。 假設(shè) CPU 工作周期為 ,內(nèi)存存取周期小于 ,那么一個(gè) CPU 周期可分為 C1 和 C2 兩個(gè)分內(nèi)存工作時(shí)間 CPU控制并使用內(nèi)存 DMA 工作并使用內(nèi)存 內(nèi)存工作時(shí)間 CPU控制并使用內(nèi)存 DMA 工作并使用內(nèi)存 理工大學(xué)學(xué)士學(xué)位論文 12 周期,其中 C1 供 DMA 控制器訪內(nèi), C2 供 CPU訪內(nèi)。在 C2 周期中,如 CPU有訪內(nèi)請(qǐng)求,同樣將傳送地址、數(shù)據(jù)等信號(hào)。當(dāng)然,相應(yīng)的硬件邏輯就更加復(fù)雜 [16][17]。除了前面提到的基本邏輯部件外,還有一個(gè)設(shè)備號(hào)寄存器。顯然,選擇型 DMA 控制器相當(dāng)于一個(gè)邏輯內(nèi)存工作時(shí)間 CPU控制并使用內(nèi)存 DMA 工作并使用內(nèi)存 理工大學(xué)學(xué)士學(xué)位論文 13 開關(guān),根據(jù) I/O 指令來(lái)控制此開關(guān)與某個(gè)設(shè)備連接。 多路型 DMA 控制器可以對(duì)多個(gè)獨(dú)立的 DMA 通路進(jìn)行控制。 (3)DMA 控制器接到 CPU 的響應(yīng)信號(hào)后,進(jìn)行以下工作: ① 對(duì)現(xiàn)有 DMA 請(qǐng)求中理工大學(xué)學(xué)士學(xué)位論文 14 優(yōu)先權(quán)最高的請(qǐng)求予以響應(yīng); ② 選 擇相應(yīng)的地址寄存器的內(nèi)容來(lái)驅(qū)動(dòng)地址總線; ③ 根據(jù)所選設(shè)備操作寄存器的內(nèi)容,向總線發(fā)出讀、寫信號(hào); ④ 外圍設(shè)備向數(shù)據(jù)總線傳送數(shù)據(jù),或從數(shù)據(jù)總線接收數(shù)據(jù); ⑤ 每個(gè)字節(jié)傳送完畢后, DMA 控制器使相應(yīng)的地址寄存器和長(zhǎng)度寄存器加 “1”或減 “1”。 圖 ( a) 鏈?zhǔn)蕉嗦沸?DMA 控制器的原理框圖 圖 ( b) 獨(dú)立請(qǐng)求方式型 DMA 控制器的原理框圖 DMA 控制器在現(xiàn)實(shí)中的應(yīng)用 DMA 控制器的主要用途是在 CPU不干涉的情況下,負(fù)責(zé)存儲(chǔ)器之間或存儲(chǔ)器和外圍設(shè)備之間的數(shù)據(jù)交換。 理工大學(xué)學(xué)士學(xué)位論文 15 一種智能化表現(xiàn)就是 DMA 采用鏈表形式,完成多任務(wù)數(shù)據(jù)傳輸。另一種智能化表現(xiàn)為 DMA 對(duì)特定協(xié)議的識(shí)別,比對(duì)某種串行通訊協(xié)議的識(shí)別,從而可以完成串行數(shù)據(jù)的基本解包、打包任務(wù)。 I/O通道技術(shù)是 DMA概念的擴(kuò)展。用戶程序首先根據(jù) 不同的設(shè)備號(hào)和數(shù)據(jù)傳輸任務(wù)生成設(shè)備管理程序。在完成通道程序定義的所有任務(wù)后,DMA 通道提出中斷請(qǐng)求。采用通道程序可以很方便地實(shí)現(xiàn)不同地址段之間的數(shù)據(jù)傳輸,因此 DMA 在存儲(chǔ)器分頁(yè)操作、虛擬地址映射等非連續(xù)性地址的數(shù)據(jù)傳輸中得到應(yīng)用。系統(tǒng)中采用 DSP 的片上 DMA控制器,以 DMA數(shù)據(jù)傳輸方式將圖像數(shù)據(jù)從片外直接提取到片內(nèi)。對(duì)于通訊微處理器而言, DMA 的介入主要是為了提高處理器數(shù)據(jù)通訊的能力。在有些高速串行數(shù)據(jù)中,數(shù)據(jù)間隔可能很短, CPU的中斷反應(yīng)時(shí)間可能太慢,此時(shí)必需采用 DMA 提高數(shù)據(jù)傳輸?shù)姆磻?yīng)時(shí)間。 設(shè)計(jì)方案 設(shè)計(jì)說(shuō)明 (1) 設(shè)計(jì)方法:硬件電路的基本設(shè)計(jì)方法主要是指:傳統(tǒng)的 “BottomUp”的設(shè)計(jì)方法和新興的 “TopDown”的 EDA 設(shè)計(jì)方法。本文采用 TopDown 的設(shè)計(jì)方法。本文采用 Verilog HDL 作為設(shè)計(jì)語(yǔ)言。異步電路使用組合邏輯電路實(shí)現(xiàn),沒(méi)有統(tǒng)一的時(shí)鐘信號(hào),容易產(chǎn)生毛刺和競(jìng)爭(zhēng)冒險(xiǎn);同步時(shí)序電路使用組合邏輯和觸發(fā)器實(shí)現(xiàn)電路功能,主要信號(hào)和輸出信號(hào)都由時(shí)鐘驅(qū)動(dòng)觸發(fā)器產(chǎn)生,能夠避免毛刺,信號(hào)穩(wěn)定。主要具有以下功能:從 SDRAM 裝載數(shù)據(jù)到 FB;從 FB 儲(chǔ)存數(shù)據(jù)到 SDRAM;從 SDRAM 轉(zhuǎn)載數(shù)據(jù)到 RC。它的關(guān)鍵技術(shù)在于流水線操作,在一個(gè)時(shí)鐘周期里完成多條指令。它是由靜態(tài)隨機(jī)存儲(chǔ)器組成的存儲(chǔ)器陣列 ,數(shù)據(jù)可以通過(guò)多路復(fù)用器和緩沖器直接傳送。 SDRAM(Synchronous DRAM)即同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器,這是目前使用最為廣泛一種內(nèi)存類型,也是目前奔騰計(jì)算機(jī)系統(tǒng)普遍使用的內(nèi)存形式。 RC(Reconfigurable Cell array)即可配置單元陣列,它有 64 個(gè)可配置單元,排列成 88 陣列的形式。 RC 陣列內(nèi)部互連如圖 所示 [4]: 圖 RC 陣列內(nèi)部互連 圖 DMA 控制器功能模塊劃分 根據(jù)設(shè)計(jì)要求,將 DMA 控制器劃分為三個(gè)主要功能模塊: DataRegisters 理工大學(xué)學(xué)士學(xué)位論文 20 Unit(DRU)——數(shù)據(jù)寄存器單元, Address GeneratorUnit(AGU)——地址產(chǎn)生器單元,State Controller Unit(SCU)——狀態(tài)控制器單元,如圖 所示: 圖 DMA 控制器內(nèi)部功能塊劃分 功能模塊的行為級(jí)設(shè)計(jì)及 Verilog HDL 描述 數(shù)據(jù)寄存器的行為級(jí)描述 數(shù)據(jù)寄存器的主要任務(wù)是從 SDRAM 獲取數(shù)據(jù),然后傳給 FB 或者 RC。 圖 DMA 控制器數(shù)據(jù)寄存器內(nèi)部結(jié)構(gòu)圖 理工大學(xué)學(xué)士學(xué)位論文 21 數(shù)據(jù)寄存器 (DRU)的外部信號(hào) : sys_clk 為全局時(shí)鐘信號(hào),所有信號(hào)在時(shí)鐘的高電平有效; clear_data_regs 為 DRU的清零復(fù)位信號(hào),當(dāng)清零復(fù)位信號(hào)為高電平時(shí),所有寄存器都重新復(fù)位,即裝載數(shù)據(jù) 0; mem_data 和 fb_data 即 SDRAM 和 FB 的數(shù)據(jù)信號(hào);由于 mem_data 的數(shù)據(jù)寬度是 32 位,而 fb_data 的數(shù)據(jù)寬度是 64 位的,因此需要 up_reg32_enable、 lo_reg32_enable、 reg64_enable1 和 reg64_enable2 四個(gè)使能信號(hào)來(lái)保證數(shù)據(jù)正確分布。 //輸入全局時(shí)鐘信號(hào) input clear_data_regs。 //輸入 32 位同步動(dòng)態(tài)隨機(jī)存儲(chǔ)器數(shù)據(jù) input[63:0]fb_data。 //聲明一個(gè) wire型的時(shí)鐘信號(hào)和清零復(fù)位信號(hào) wire[31:0]mem_data。 理工大學(xué)學(xué)士學(xué)位論文 22 wire up_reg32_enable。 reg[63:0]reg64_odata2。 wire str_3st_trl。i=i+1) //for 循環(huán)語(yǔ)句 begin
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1