一本很好的匯編語言教程,跟大家一起分享 課程介紹 第1章 預備知識 1.1 匯編語言的由來及其特點 1 機器語言 2 匯編語言 3 匯編程序 4 匯編語言的主要特點 5 匯編語言的使用領域 1.2 數據的表示和類型 1 數值數據的表示 2 非數值數據的表示 3 基本的數據類型 1.3 習題 第2章 CPU資源和存儲器 2.1 寄存器組 1 寄存器組 2 通用寄存器的作用 3 專用寄存器的作用 2.2 存儲器的管理模式 1 16位微機的內存管理模式 2 32位微機的內存管理模式 2.3 習題 第3章 操作數的尋址方式 3.1 立即尋址方式 3.2 寄存器尋址方式 3.3 直接尋址方式 3.4 寄存器間接尋址方式 3.5 寄存器相對尋址方式 3.6 基址加變址尋址方式 3.7 相對基址加變址尋址方式 3.8 32位地址的尋址方式 3.9 操作數尋址方式的小結 3.10 習題 第4章 標識符和表達式 4.1 標識符 4.2 簡單內存變量的定義 1 內存變量定義的一般形式 2 字節變量 3 字變量 4 雙字變量 5 六字節變量 6 八字節變量 7 十字節變量 4.3 調整偏移量偽指令 1 偶對齊偽指令 2 對齊偽指令 3 調整偏移量偽指令 4 偏移量計數器的值 4.4 復合內存變量的定義 1 重復說明符 2 結構類型的定義 3 聯合類型的定義 4 記錄類型的定義 5 數據類型的自定義 4.5 標號 4.6 內存變量和標號的屬性 1 段屬性操作符 2 偏移量屬性操作符 3 類型屬性操作符 4 長度屬性操作符 5 容量屬性操作符 6 強制屬性操作符 7 存儲單元別名操作符 4.7 表達式 1 進制偽指令 2 數值表達式 3 地址表達式 4.8 符號定義語句 1 等價語句 2 等號語句 3 符號名定義語句 4.9 習題 第5章 微機CPU的指令系統 5.1 匯編語言指令格式 1 指令格式 2 了解指令的幾個方面 5.2 指令系統 1 數據傳送指令 2 標志位操作指令 3 算術運算指令 4 邏輯運算指令 5 移位操作指令 6 位操作指令 7 比較運算指令 8 循環指令 9 轉移指令 10 條件設置字節指令 11 字符串操作指令 12 ASCII-BCD碼調整指令 13 處理器指令 5.3 習題 第6章 程序的基本結構 6.1 程序的基本組成 1 段的定義 2 段寄存器的說明語句 3 堆棧段的說明 4 源程序的結構 6.2 程序的基本結構 1 順序結構 2 分支結構 3 循環結構 6.3 段的基本屬性 1 對齊類型 2 組合類型 3 類別 4 段組 6.4 簡化的段定義 1 存儲模型說明偽指令 2 簡化段定義偽指令 3 簡化段段名的引用 6.5 源程序的輔助說明偽指令 1 模塊名定義偽指令 2 頁面定義偽指令 3 標題定義偽指令 4 子標題定義偽指令 6.6 習題 第7章 子程序和庫 7.1 子程序的定義 7.2 子程序的調用和返回指令 1 調用指令 2 返回指令 7.3 子程序的參數傳遞 1 寄存器傳遞參數 2 存儲單元傳遞參數 3 堆棧傳遞參數 7.4 寄存器的保護與恢復 7.5 子程序的完全定義 1 子程序完全定義格式 2 子程序的位距 3 子程序的語言類型 4 子程序的可見性 5 子程序的起始和結束操作 6 寄存器的保護和恢復 7 子程序的參數傳遞 8 子程序的原型說明 9 子程序的調用偽指令 10 局部變量的定義 7.6 子程序庫 1 建立庫文件命令 2 建立庫文件舉例 3 庫文件的應用 4 庫文件的好處 7.7 習題 第8章 輸入輸出和中斷 8.1 輸入輸出的基本概念 1 I/O端口地址 2 I/O指令 8.2 中斷 1 中斷的基本概念 2 中斷指令 3 中斷返回指令 4 中斷和子程序 8.3 中斷的分類 1 鍵盤輸入的中斷功能 2 屏幕顯示的中斷功能 3 打印輸出的中斷功能 4 串行通信口的中斷功能 5 鼠標的中斷功能 6 目錄和文件的中斷功能 7 內存管理的中斷功能 8 讀取和設置中斷向量 8.4 習題 第9章 宏 9.1 宏的定義和引用 1 宏的定義 2 宏的引用 3 宏的參數傳遞方式 4 宏的嵌套定義 5 宏與子程序的區別 9.2 宏參數的特殊運算符 1 連接運算符 2 字符串整體傳遞運算符 3 字符轉義運算符 4 計算表達式運算符 9.3 與宏有關的偽指令 1 局部標號偽指令 2 取消宏定義偽指令 3 中止宏擴展偽指令 9.4 重復匯編偽指令 1 偽指令REPT 2 偽指令IRP 3 偽指令IRPC 9.5 條件匯編偽指令 1 條件匯編偽指令的功能 2 條件匯編偽指令的舉例 9.6 宏的擴充 1 宏定義形式 2 重復偽指令REPEAT 3 循環偽指令WHILE 4 循環偽指令FOR 5 循環偽指令FORC 6 轉移偽指令GOTO 7 宏擴充的舉例 8 系統定義的宏 9.7 習題 第10章 應用程序的設計 10.1 字符串的處理程序 10.2 數據的分類統計程序 10.3 數據轉換程序 10.4 文件操作程序 10.5 動態數據的編程 10.6 COM文件的編程 10.7 駐留程序 10.8 程序段前綴及其應用 1 程序段前綴的字段含義 2 程序段前綴的應用 10.9 習題 第11章 數值運算協處理器 11.1 協處理器的數據格式 1 有符號整數 2 BCD碼數據 3 浮點數 11.2 協處理器的結構 11.3 協處理器的指令系統 1 操作符的命名規則 2 數據傳送指令 3 數學運算指令 4 比較運算指令 5 超越函數運算指令 6 常數操作指令 7 協處理器控制指令 11.4 協處理器的編程舉例 11.5 習題 第12章 匯編語言和C語言 12.1 匯編語言的嵌入 12.2 C語言程序的匯編輸出 12.3 一個具體的例子 12.4 習題 附錄
上傳時間: 2013-07-05
上傳用戶:hw1688888
本文的目的在于設計一個自適應噪音抵消系統,使其能消除含噪語音信號中的背景噪音,達到提高語音信號質量的目的.主要工作分為兩大部分.本文在第一部分介紹了自適應數字濾波器的基本理論思想,具體闡述了自適應噪聲抵消系統基本原理,并對自適應噪聲抵消系統的指標、抵消性能進行了計算分析.自適應濾波器的算法是整個系統的核心,在第一部分中,對兩種最基本的自適應算法,進行了詳細的介紹和分析,并針對兩種算法的優缺點進行了詳細的比較.這一部分中最關鍵的是對設計的噪聲抵消系統進行計算機仿真,驗證系統設計的合理性和算法的正確性.通過對自適應噪聲抵消器的MATLAB仿真及對仿真圖形的分析,驗證了系統設計和自適應算法的可行性.第二部分主要完成自適應噪聲抵消系統的硬件設計和軟件編程.在第一部分計算機仿真分析的基礎上,利用高速信號處理芯片DSP(TMS320LF2407)設計了一個噪聲干擾抵消系統,在高速信號處理芯片(TMS320LF2407)上開發實現了自適應LMS算法.
標簽: DSP
上傳時間: 2013-06-28
上傳用戶:zklh8989
關于半橋或全橋自舉式浮動柵極驅動的四個中文文檔,為飛兆和IR公司技術文檔,介紹了自舉電路元件的選取及實際問題解決。可從其官網中下載。這里集合上傳~
標簽: 驅動
上傳時間: 2013-07-30
上傳用戶:碉堡1234
通用異步收發器(Universal Asynchronous Receiver Transmitter,UART)是一種能同時支持短距離和長距離數據傳輸的串行通信接口,被廣泛應用于微機和外設之間的數據交換。像8251、NS8250、NS16550等都是常用的UART芯片,但是這些專用的串行接口芯片的缺點是數據傳輸速率比較慢,難以滿足高速率數據傳輸的場合,而更重要的就是它們都具有不可移植性,因此要利用這些芯片來實現PC機和FPGA芯片之間的通信,勢必會增加接口連線的復雜程度以及降低整個系統的穩定性和有效性。 本課題就是針對UART的特點以及FPGA設計具有可移植性的優勢,提出了一種基于FPGA芯片的嵌入式UART設計方法,其中主要包括狀態機的描述形式以及自頂向下的設計方法,利用硬件描述語言來編制UART的各個子功能模塊以及頂層模塊,之后將其集成到FPGA芯片的內部,這樣不僅能解決傳統UART芯片的缺點而且同時也使整個系統變得更加具有緊湊性以及可靠性。 本課題所設計的LIART支持標準的RS-232C傳輸協議,主要設計有發送模塊、接收模塊、線路控制與中斷仲裁模塊、Modem控制模塊以及兩個獨立的數據緩沖區FIFO模塊。該模塊具有可變的波特率、數據幀長度以及奇偶校驗方式,還有多種中斷源、中斷優先級、較強的抗干擾數據接收能力以及芯片內部自診斷的能力,模塊內分開的接收和發送數據緩沖寄存器能實現全雙工通信。除此之外最重要的是利用IP模塊復用技術設計數據緩沖區FIFO,采用兩種可選擇的數據緩沖模式。這樣既可以應用于高速的數據傳輸環境,也能適合低速的數據傳輸場合,因此可以達到資源利用的最大化。 在具體的設計過程中,利用Synplify Pro綜合工具、ModelSim仿真工具、ISE集成的軟件開發環境中對各個功能模塊進行綜合優化、仿真驗證以及下載實現。各項數據結果表明,本課題中所設計的UART滿足預期設計目標。
上傳時間: 2013-08-02
上傳用戶:rocketrevenge
現代社會信息量爆炸式增長,由于網絡、多媒體等新技術的發展,用戶對帶寬和速度的需求快速增加。并行傳輸技術由于時鐘抖動和偏移,以及PCB布線的困難,使得傳輸速率的進一步提升面臨設計的極限;而高速串行通信技術憑借其帶寬大、抗干擾性強和接口簡單等優勢,正迅速取代傳統的并行技術,成為業界的主流。 本論文針對目前比較流行并且有很大發展潛力的兩種高速串行接口電路——高速鏈路口和Rocket I/O進行研究,并以Xilinx公司最新款的Virtex-5 FPGA為研究平臺進行仿真設計。本論文的主要工作是以某低成本相控陣雷達信號處理機為設計平臺,在其中的一塊信號處理板上,進行了基于LVDS(Low VoltageDifferential Signal)技術的高速LinkPort(鏈路口)設計和基于CML(Current ModeLogic)技術的Rocket I/O高速串行接口設計。首先在FPGA的軟件中進行程序設計和功能、時序的仿真,當仿真驗證通過之后,重點是在硬件平臺上進行調試。硬件調試驗證的方法是將DSP TS201的鏈路口功能與在FPGA中的模擬高速鏈路口相連接,進行數據的互相傳送,接收和發送的數據相同,證明了高速鏈路口設計的正確性。并且在硬件調試時對Rocket IO GTP收發器進行回環設計,經過回環之后接收到的數據與發送的數據相同,證明了Rocket I/O高速串行接口設計的正確性。
上傳時間: 2013-04-24
上傳用戶:戀天使569
高速、高精度已經成為伺服驅動系統的發展趨勢,而位置檢測環節是決定伺服系統高速、高精度性能的關鍵環節之一。光電編碼器作為伺服驅動系統中常用的檢測裝置,根據結構和原理的不同分為增量式和絕對式。本文從原理上對增量式光電編碼器和絕對式光電編碼器做了深入的分析,通過對比它們的特性,得出了絕對式光電編碼器更適合高速、高精度伺服驅動系統的結論。 絕對式光電編碼器精度高、位數多的特點決定其通信方式只能采取串行傳輸方式,且由相應的通信協議控制信息的傳輸。本文首先針對編碼器主要生產廠商日本多摩川公司的絕對式光電編碼器,深入研究了通信協議相關的硬件電路、數據幀格式、時序等。隨后介紹了新興的電子器件FPGA及其開發語言硬件描述語言Verilog HDL,并對基于FPGA的絕對式編碼器通信接口電路做了可行性的分析。在此基礎上,采用自頂向下的設計方法,將整個接口電路劃分成發送模塊、接收模塊、序列控制模塊等多個模塊,各個模塊采用Verilog語言進行描述設計編碼器接口電路。最終的設計在相關硬件電路上實現。最后,通過在TMS320F2812伺服控制平臺上編寫的硬件驅動程序驗證了整個設計的各項功能,達到了設計的要求。
上傳時間: 2013-07-11
上傳用戶:snowkiss2014
國家863項目“飛行控制計算機系統FC通信卡研制”的任務是研究設計符合CPCI總線標準的FC通信卡。本課題是這個項目的進一步引伸,用于設計SCI串行通信接口,以實現環上多計算機系統間的高速串行通信。 本文以此項目為背景,對基于FPGA的SCI串行通信接口進行研究與實現。論文先概述SCI協議,接著對SCI串行通信接口的兩個模塊:SCI節點模型模塊和CPCI總線接口模塊的功能和實現進行了詳細的論述。 SCI節模型包含Aurora收發模塊、中斷進程、旁路FIFO、接受和發送存儲器、地址解碼、MUX。在SCI節點模型的實現上,利用FPGA內嵌的RocketIO高速串行收發器實現主機之間的高速串行通信,并利用Aurora IP核實現了Aurora鏈路層協議;設計一個同步FIFO實現旁路FIFO;利用FPGA上的塊RAM實現發送和接收存儲器;中斷進程、地址解碼和多路復合分別在控制邏輯中實現。 CPCI總線接口包括PCI核、PCI核的配置模塊以及用戶邏輯三個部分。本課題中,采用FPGA+PCI軟核的方法來實現CPCI總線接口。PCI核作為PCI總線與用戶邏輯之間的橋梁:PCI核的配置模塊負責對PCI核進行配置,得到用戶需要的PCI核;用戶邏輯模塊負責實現整個通信接口具體的內部邏輯功能;并引入中斷機制來提高SCI通信接口與主機之間數據交換的速率。 設計選用硬件描述語言VerilogHDL和VHDL,在開發工具Xilinx ISE7.1中完成整個系統的設計、綜合、布局布線,利用Modelsim進行功能及時序仿真,使用DriverWorks為SCI串行通信接口編寫WinXP下的驅動程序,用VC++6.0編寫相應的測試應用程序。最后,將FPGA設計下載到FC通信卡中運行,并利用ISE內嵌的ChipScope Pro虛擬邏輯分析儀對設計進行驗證,運行結果正常。 文章最后分析傳輸性能上的原因,指出工作中的不足之處和需要進一步完善的地方。
上傳時間: 2013-04-24
上傳用戶:竺羽翎2222
隨著數字圖像處理技術的發展,圖像處理系統在日常生活、工業、軍事和醫療方面等許多領域得到了廣泛的應用。 本論文圍繞視頻圖像處理器的設計以及圖像增強算法的研究,開展了以下方面的研究: 1.對基于拉普拉斯算子的灰度圖像增強算法、基于飽和度分量反饋的自適應亮度增強算法及其改進算法進行了仿真,并分別對增強前后的灰度圖像和彩色圖像進行了比較。 2.提出了一個視頻圖像處理器的硬件實現方案。該方案以FPGA為核心,具有較強的圖像實時處理能力,具有1路視頻輸入端口和1路視頻輸出端口,以及PCI接口和2個UART串行接口。 3.完成了視頻圖像處理器的原理圖設計、印制板圖設計。在印制板圖設計中,應用信號完整新分析的理論,對高速電路的布局和布線進行了優化設計,保證了硬件電路的性能。
上傳時間: 2013-06-13
上傳用戶:lanjisu111
I2C(Inter Integrated Circuits)是Philips公司開發的用于芯片之間連接的串行總線,以其嚴格的規范、卓越的性能、簡便的操作和眾多帶I2C接口的外圍器件而得到廣泛的應用并受到普遍的歡迎。 現場可編程門陣列(FPGA)設計靈活、速度快,在數字專用集成電路的設計中得到了廣泛的應用。本論文主要討論了如何利用Verilog/FPGA來實現一個隨機讀/寫的I2C接口電路,實現與外圍I2C接口器件E2PROM進行數據通信,實現讀、寫等功能,傳輸速率實現為100KBps。在Modelsim6.0仿真軟件環境中進行仿真,在Xilinx公司的ISE9.li開發平臺上進行了下載,搭建外圍電路,用Agilem邏輯分析儀進行數據采集,分析測試結果。 首先,介紹了微電子設計的發展概況以及設計流程,重點介紹了HDL/FPGA的設計流程。其次,對I2C串行總線進行了介紹,重點說明了總線上的數據傳輸格式并對所使用的AT24C02 E2PROM存儲器的讀/寫時序作了介紹。第三,基于Verilog _HDL設計了隨機讀/寫的I2C接口電路、測試模塊和顯示電路;接口電路由同步有限狀態機(FSM)來實現;測試模塊首先將數據寫入到AT24C02的指定地址,接著將寫入的數據讀出,并將兩個數據顯示在外圍LED數碼管和發光二極管上,從而直觀地比較寫入和輸出的數據的正確性。FPGA下載芯片為Xilinx SPARTAN Ⅲ XC3S200。第四,用Agilent邏輯分析儀進行傳輸數據的采集,分析數據傳輸的時序,從而驗證電路設計的正確性。最后,論文對所取得的研究成果進行了總結,并展望了下一步的工作。
上傳時間: 2013-06-27
上傳用戶:liuchee
通用異步收發器UART(Universal Asynchronous Receiver/Transmitter)是廣泛使用的串行傳輸協議。串行外設用到異步串行接口一般采用專用集成電路實現。但是這類芯片一般包含許多輔助模塊,而時常不需要使用完整的UART的功能和輔助功能,或者當在FPGA上設計時,需要將UART功能集成到FPGA內部而不能使用芯片。藍牙主機控制器接口則是實現主機設備與藍牙模塊之間互操作的控制部件。當在使用藍牙設備的時候尤其是在監控場所,接口控制器在控制數據與計算機的傳輸上就起了至關重要的作用。 論文針對信息技術的發展和開發過程中的實際需要,設計了一個藍牙HCI-UART(Host Controller Interface-Universal Asynchronous Receiver/Transmitter)控制接口的模塊。使用VHDL將其核心功能集成,既可以單獨使用,也可集成到系統芯片中,并且整個設計緊湊、穩定且可靠,其用途廣泛,具有一定的使用價值。 本設計采用TOP-DOWN設計方法,整體上分為UART接口和藍牙主機控制器接口兩部分。首先根據UART和藍牙主機控制器接口的實現原理和設計指標要求進行系統設計,對系統劃分模塊以及各個模塊的信號連接;然后進行模塊設計,設計出每個模塊的功能,并用VHDL語言編寫代碼來實現模塊功能;再使用ISE8.2I自帶的仿真器對各模塊進行功能仿真和時序仿真;最后進行硬件驗證,在Virtex-II開發板上對系統進行功能驗證。實現了發送、接收和波特率發生等功能,驗證了結果,表明設計正確,功能良好,符合設計要求。
上傳時間: 2013-07-13
上傳用戶:wfl_yy