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

正文內容

基于vhdl單片機設計說明書(已修改)

2025-05-21 20:02 本頁面
 

【正文】 1 基于 VHDL 的單片機設計 學生: 丁潔 指導老師: 陳沅濤 摘要 : 本文首先對 MCS8051 單片機的原理進行介紹和分析;接著介紹使用 EDA技術,用 VHDL 語言完成了 8051 單片機的設計工作; MCS8051 單片機的 CPU 和數模轉換器的設計運用了算術邏輯單元 ALU 算術運算的算法實現和控制單元的狀態(tài)機;以及數模轉換器的∑ △調制方法的實現。通過如上的算法實現,可以看出 VHDL 語言在算法級的設計上具有很多的優(yōu)勢和特點。使用 EDA 技術設計的結果既可以用 FPGA/ CPLD 來實施驗證,也可以直接做成專用集成電路 (ASIC)。 關鍵詞: 電子設計自動化 (EDA)、 VHDL 語言、 FPGA/ CPLD 、 8051 單片機 2 1 引言 伴隨著集成電路 (IC)技術的發(fā)展,電子設計自動化 (EDA)逐漸成為重要的設計手段,己經廣泛應用于模擬與數字電路系統等許多領域。電子設計自動化是一種實現電子系統或電子產品自動化設計的技術,它與電子技術、微電子技術的發(fā)展密切相關,它吸收了計算機科學領域的大多數最新研究成果,以高性能的計算機作為工作平臺,促進了工程發(fā)展。 EDA 技術的發(fā)展始干 70 年代,至今經歷了三個階段。電子 線路的 C A D(計算機輔助設計 )是 EDA 發(fā)展的初級階段, 80 年代初期,形成了 CAE(計算機輔助工程 )。也就是所謂的 EDA 技術中級階段。 90 年代出現了以自動綜合器和硬件描述語言為基礎,全面支持電子設計自動化 ESDA(電子系統設計自動化 ),即高級 EDA 階段、也就是目前常說的 EDA[1]。使用 EDA 技術設計的結果既可以用 FPGA/ CPLD 來實施驗證,也可以直接做成專用集成電路(ASIC)。 EDA 的一個重要特征就是使用硬件描述語言 (HDL)來完成的設計文件,誕生于 1982 年的 VHDL 語言是經 IEEE 確認的標準硬件 描述語言,在電子設計領域受到了廣泛的接受。 課題的背景、目的 進入 90 年代,電子信息類產品的開發(fā)明顯地出現了兩個特點:一是開發(fā)產品的復雜程度加深;二是開發(fā)產品的上市時限緊迫。而伴隨著如上兩個特點的產生,相應的出現了設計上的兩個問題。其一,在電子系統日趨數字化、復雜化和大規(guī)模集成化的今天,電子廠商們越加迫切地追求電子產品的高功能、優(yōu)品質、低成本、微功耗和微小封裝尺寸,從而使得電子設計日趨復雜。那么如何去完成這些高復雜度的電子設計呢 ?其二,電子產品設計周期短和上市快是電子廠商們堅持不懈的追求,那 么面對日趨復雜的設計,又如何能夠縮短開發(fā)時間呢?解決以上兩個問題的唯一途徑是電子設計自動化( EDA) ,即用計算機幫助設計人員完成繁瑣的設計工作。 課程設計的內容 ( 1)單片機的基本原理和內部結構。從單片機的內部結構入手,對單片機的基本原理和功能進行介紹和分析,進而提出可改進之處。 3 ( 2) EDA 的開發(fā)中離不開 EDA 工具的使用,好的開發(fā)工具會使設計更加便捷與高效,且會提高設計的效率與效果。 ( 3)本文重點介紹了基于 FPGA 和 VHDL 語言的開發(fā)過程,對設計方案中的各模塊進行詳細介紹和驗證,并對整體性能進行分 析。 4 2 EDA、 VHDL 簡介 EDA 簡介 電子設計自動化( EDA, ElectronicDesignAutomation)是指利用計算機完成電子系統的設計 [2]。 EDA 技術是以計算機和微電子技術為先導,匯集了計算機圖形學、拓撲、邏輯學、微電子工藝與結構學和計算數學等多種計算機應用學科最新成果的先進技術。 EDA 技術以計算機為工具,代替人完成數字系統的邏輯綜合、布局布線和設計仿真等工作。設計人員只需要完成對系統功能的描述,就可以由計算機軟件進行 處理,得到設計結果,而且修改設計如同修改軟件一樣方便,可以極大地提高設計效率。根據電子設計技術的發(fā)展特征, EDA 技術發(fā)展大致分為三個階段:( 1) CAD 階段( 20 世紀 60年代中期 — 20 世紀 80年代初期)( 2)CAE 階段( 20世紀 80年代初期 — 20世紀 90年代初期)( 3) EDA 階段( 20世紀90年代以來)。 簡介 VHDL 英文名是 VeryHighSpeed Integrated Circuit Hardware Language,誕生于 1982 年。 1987 年底被 IEEE(TheInstituteofElectricalandElectronics Engineers)和美國國防部確認為標準硬件描述語言。自 IEEE 公布了 VHDL 的標準版本 (IEEE1076)之后,各 EDA 公司相繼推出了自己的 VHDL 設計環(huán)境,或宣布自己的設計工具可以和 VHDL 接口。此后 VHDL 在電子設計領域得到了廣泛的接受,并逐步取代了原有的非標準硬件描述語言。 1993 年, IEEE 對 VHDL 進行了修訂,從更高的抽象層次和系統描述能力上擴展 VHDL 的內容,公布了新版本的 VHDL,即 IEEE 標準的 10761993 版本。 現在, VHDL 和 Verilog 作為 IEEE 的工業(yè)標準硬件描述語言,又得到眾多 EDA公司的支持,在電子工程領域,已成為事實上的通用硬件描述語言。有專家認為,在新的世紀中, VHDL 和 Verilog 語言將承擔起幾乎全部的數字系統設計任務。由于本設計主要使用 VHDL 語言,故只對 VHDL 語言的特點進行簡要的介紹。應用VHDL 進行工程設計的優(yōu)點是多方面的,具體如下: , VHDL 具有更強的行為描述能力,從而決定了 5 它成為系統設計領域最佳的硬件描述語言。強大的行為描述能力是避開具體的器件 結構,從邏輯行為上描述和設計大規(guī)模電子系統的重要保證。 語句的行為描述能力和程序結構決定了它具有支持大規(guī)模設計的分解和已有設計的再利用功能。 VHDL 中設計實體的概念、程序包的概念、設計庫的概念為設計的分解和并行工作提供了有利的支持。 VHDL 完成的一個確定的設計,可以利用 EDA 工具進行邏輯綜合和優(yōu)化,并自動地把 VHDL 描述設計轉變成門級網表 (根據不同的實現芯片 )。這種方式突破了門級設計的瓶頸,極大地減少了電路設計的時間和可能發(fā)生的錯誤,降低了開發(fā)成本。應用 EDA 工具的邏輯優(yōu)化功 能,可以自動地把一個綜合后的設計變成一個更小、更高速的電路系統。 。 VHDL 語言設計系統硬件時,沒有嵌入描述與工藝相關的信息,不會因為工藝變化而使描述過時,與工藝技術有關的參數可通過VHDL 提供的類屬加以描述。 ASIC 移植。當產品達到相當數量時,采用 VHLD 進行的設計可以很容易轉成用專用集成電路 (ASIC)來實現,甚至用于 PLD 的源代碼可以直接用于 ASIC。 6 3 基于 VHDL 語言的單片機設計過程 系統設計模塊劃分方案 對 8051 單片機的設計分成五個模塊來實現 8051 系統。這五個模塊為: CPU模塊、計數器 /定時器模塊、 UART 串口模塊、存儲器模塊和 DAC 模塊。其中 DAC為傳統 8051 所不具備的功能模塊。 其中, CPU 模塊又分為控制單元模塊和 ALU 單元模塊,且每一個模塊又分為幾個模塊。中斷系統模塊并未使用單獨的設計模塊存在的形式來設計,而是與CPU 的設計整合為一體,因為這樣會使得設計達到更好的效果,更符合 VHDL 語言的使用規(guī)范和提高設計效率。這樣的劃分只是為了更好的實現 CPU 模塊的功能,又能方便設計的進行,不至于在設計 過程中引起邏輯上的混亂。 存儲器模塊又分為 RAM 模塊、 ROM 模塊和 FIFO 模塊。對于 FPGA 來說,使用它來實現存儲器模塊有很多方法,可以直接利用其內部內嵌的 RAM 模塊,也可以利用 VHDL 語言直接編寫。本文的設計中 RAM 和 ROM 的設計直接利用了 Altera公司提供的單元庫和 FPGA 中的 RAM 單元,這樣可時設計簡化,縮短開發(fā)時間。而 FIFO 的設計采用的是使用 VHDL 語言直接編寫 [3]。這些方法的應用體現出了使用 FPGA 進行設計的靈活性和時效性。傳統的 8051 中沒有 FIFO 模塊的存在,而本文的設計中考慮到 如今器件的速度越來越快,數據的傳輸通過 FIFO 來緩存是很通行的做法,故在本設計中加入 FIFO 模塊的設計。 計數器 /定時器模塊、 UART 串口模塊的設計均在一個模塊內完成。計數器 /定時器和 UART 串口模塊的設計遵從了 8051 單片機的設計標準,使用 VHDL 語言完全實現了相應的功能。而且各個模塊均可獨立使用,可單獨作為一個 IP 核存在,其它的設計模塊也可單獨使用,所以利用 FPGA 和 VHDL 語言所做的設計具有很好的通用性。 DAC 模塊的設計是一種新增功能。在本設計中增加了此模塊的設計,主要是考慮增加 8051 的功能,以及為系統設計提供方便性。同時,也體現出硬件設計的一種發(fā)展方向,即系統集成化。也為以后的設計工作提供一種借鑒方式。 各模塊原理及程序 7 CPU 模塊 圖 31 為 CPU 整體框圖。由圖可知, CPU 由兩個模塊組成, alu 模塊和 control模塊。下面對兩個模塊進行論述。 ? ALU 單元的 VHDL 語言實現 ALU 單元可以直接或間接的執(zhí)行很多指令,如加、減、乘、除等算術運算指令;邏輯與、或、異或等邏輯運算指令以及移位操作指令。這些指令是 8051 單片機的核心指令,分為算術運 算、邏輯運算和環(huán)移指令等三大類。本設計中由ALU 單元執(zhí)行的指令共 53 條,除去上述的算術運算、邏輯運算和環(huán)移指令外,還包括條件轉移指令中的比較條件轉移指令 CJNE 和減 1 條件轉移指令 DJNZ。 圖 31CPU 整體框圖 這種設計方法主要考慮比較條件轉移指令 CJNE 設計上的方便與規(guī)范性;而減 1條件轉移指令 DJNZ 的指令操作需要進行減 1 操作,正好可以利用 ALU 單元的相 8 應算術運算來進行,因此可通過 ALU 單元來間接的運行實現。此類條件轉移指令共 6 條,是由 ALU 單元間接實現的;其余的 47 條指令則由 ALU 單元直接實現,這 47條指令包括算術邏輯運算指令、邏輯運算指令和環(huán)移指令。 ALU 單元要control 單元配合起來工作才可正常運行,即需由 control 單元提供控制信號和數據給 ALU 單元。 ? 控制單元的 VHDL 語言實現 控制單元起著控制器的作用,單片機程序和原始數據的輸入、 CPU 內部的信息處理、處理結果的輸出、外部設備與單片機之間的信息交換等,都是在控制單元的控制下實現的。本設計中控制單元主要完成的功能為指令譯碼、中斷判優(yōu)及處理、時序控制和微操作控制等。 圖 32 控制單元整體框圖 9 由圖 32可知,控制單元由兩個 :control_fsm 模塊和 control_mem 模塊,其主要的設計方法為有限狀態(tài)機的設計,通過狀態(tài)的轉換而產生相應的微操作信號,進而實現相應的指令的執(zhí)行 [4]。其中, control_fsm 模塊主要實現中斷的響應及 111 條指令的譯碼并產生各指令的微操作碼,主要是通過有限狀態(tài)機的設計來實現相應的功能;而 control_mem 模塊主要完成由 control_fsm 模塊產生的微操作信號的具體操作過程,控制 RAM 存儲器的讀寫地址及數據傳輸、 PC 寄存器的賦值、串口與定時器的中斷信號處理、中斷的查詢、特殊寄存器的讀寫等功能 。 其 VHDL 語言實現代碼如下: when IC_ADD_A_RR= ADD A,Rr if state=FETCH then s_adr_mux=0110。 確定 Rr 的地址 s_nextstate=EXEC1。 轉至 EXEC1 狀態(tài)執(zhí)行 elsif state=EXEC1 then alu_cmd_o=ADD_ACC_RAM。 通知 ALU 單元執(zhí)行加法操作 s_data_mux=0011。 ALU 單元操作數值操作 s_regs_wr_en=011。 對累加器及相應狀態(tài)位進行操作 s_pc_inc_en=0001。 對 PC 寄存器進行操作 s_nextstate=FETCH。 返回 FETCH 狀態(tài),等待下一條指令的執(zhí)行 end if。 本指令為單字節(jié)雙時鐘周期指令,尋址方式為寄存器尋址。當從指令存儲器中取出的指令代碼與程序中代碼 IC_ADD_A_RR 相 對應時,即執(zhí)行本段代碼程序。執(zhí)行過程如下,在 FETCH 狀態(tài)時,確定是寄存器尋址方式(由 control_fsm 模塊完成),然后轉到相應的寄存器尋址方式處理段代碼進行寄存器地址的確定(由control_mem 模塊完成),為寄存器內數據的取出做
點擊復制文檔內容
試題試卷相關推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1