為了提高特定應用環境下的運行速度,DSP增加了許多特殊的指令和功能單 元,體系結構越來越不規則。傳統的代碼生成算法是一種分治算法,沒有考慮指 令和寄存器之間的約束關系,難以應用在DSP編譯器中。必須為DSP編譯器發 展出新的代碼生成算法,以適應新的需求和挑戰。本文主要研究了DSP編譯器 的若干關鍵技術,DSP編譯器的目標機器平臺是浙江大學自主研發的媒體DSP —SPOCK。
上傳時間: 2013-06-02
上傳用戶:黑漆漆
本文論述了基于ST7FMC的電動摩托車控制系統的研究。 近年來,由于燃油交通工具尾氣排放對城市空氣造成的嚴重污染,以及人們生活水平、環保意識的逐漸提高,綠色交通工具己成為時代發展的重要課題。考慮到我國目前的國情,發展電動車具有重要的環保意義。 隨著電機技術及功率器件性能的不斷提高,電動車的控制器發展迅速。但是目前市場上大多數的電動車產品均采用低集成度元件控制裝置,功能過于簡單,不能充分發揮系統潛力及處理一些特殊的控制問題。 提出了基于意法半導體芯片ST7FMC的永磁無刷直流電動機的控制系統設計方案,進行了低成本、高智能的無刷直流電機控制系統設計,能滿足更多應用場合的需要。主要從以下幾個方面進行了分析與研究: 首先,建立無刷直流電機的數學模型,并分析其電機運行特性。 其次,根據ST專用單片機的特點詳細設計了系統的控制策略:將調速系統設計為電流、速度雙閉環的PI算法控制,以保證調速性能和電流控制精度;采用ST芯片固有的寄存器進行速度的檢測,比較精確;將相電流檢測設計成母線電流PWM On中點檢測;采用了高性能的驅動集成電路IR2136來驅動MOSFET組成的全橋逆變電路;驅動方式采用新型的凸形波驅動控制方法。 最后,組裝了試驗樣車,通過實驗室觀測及實地運行,驗證了系統運行的可靠性。 由此得出結論:本課題設計的基于ST7FMC的電動摩托車控制系統具有運行性能良好、可靠性高的特點,為后續的研究工作提供了一定的基礎。
上傳時間: 2013-05-17
上傳用戶:電子世界
雙向DC/DC變換器(Bi-directionalDC/DCconverters)是能夠根據需要調節能量雙向傳輸的直流/直流變換器。隨著科技的發展,雙向DC/DC變換器的應用需求越來越多,正逐步應用到無軌電車、地鐵、列車、電動車等直流電機驅動系統,直流不間斷電源系統,航天電源等場合。一方面,雙向DC/DC變換器為這些系統提供能量,另一方面,又使可回收能量反向給供電端充電,從而節約能量。 大多數雙向DC/DC變換器采用復雜的輔助網絡來實現軟開關技術,本文所研究的Buck/Boost雙向的DC/DC變換器從拓撲上解決器件軟開關的問題;由于Buck/Boost雙向DC/DC變換器的電流紋波較大,這會帶來嚴重的電磁干擾,本文結合Buck/Boost雙向DC/DC變換器拓撲與磁耦合技術使電感電流紋波減小;由于在同一頻率下不同負載時電流紋波不同,本文在控制時根據負載改變PWM頻率,從而使輕載時的電流紋波均較小。 本文所研究的雙向DC/DC變換器采用DSP處理器進行控制,其原因在于:目前沒有專門用于控制該Buck/Boost雙向DC/DC變換器的控制芯片,而DSP具有多路的高分辨率PWM,通過對DSP寄存器的配置可以實現Buck/Boost雙向DC/DC變換器的控制PWM;DSP具有多路高速的A/D轉換接口,并可以通過配合PWM完成對反饋采樣,具備一定的濾波功能。 本文所研究的數字雙向DC/DC變換器實現了在Buck模式下功率MOSFET的零電壓開通及零電壓關斷,電感電流的交迭使其電感輸出端電流紋波明顯變小,輕載時PWM頻率的提升也使得電流紋波變小。
上傳時間: 2013-06-08
上傳用戶:cy_ewhat
一本很好的匯編語言教程,跟大家一起分享 課程介紹 第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
通用異步收發器(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
隨著信息時代的到來,用戶對數據保護和傳輸可靠性的要求也在不斷提高。由于信道衰落,信號經信道傳輸后,到達接收端不可避免地會受到干擾而出現信號失真。因此需要采用差錯控制技術來檢測和糾正由信道失真引起的信息傳輸錯誤。RS(Reed—Solomon)碼是差錯控制領域中一類重要的線性分組碼,由于它編解碼結構相對固定,性能強,不但可以糾正隨機差錯,而且對突發錯誤的糾錯能力也很強,被廣泛應用在數字通信、數據存儲系統中,以滿足對數據傳輸通道可靠性的要求。因此設計一款高性能的RS編解碼器不但具有很大的應用意義,而且具有相當大的經濟價值。 本文首先介紹了線形分組碼及其子碼循環碼、BCH碼的基礎理論知識,重點介紹了BCH碼的重要分支RS碼的常用編解碼算法。由于其算法在有限域上進行,接著介紹了有限域的有關理論。基于RS碼傳統的單倍結構,本文提出了一種八倍并行編碼及九倍并行解碼方案,并用Verilog HDL語言實現。其中編碼器基于傳統的線性反饋移位寄存器除法電路并進行八倍并行擴展,譯碼器關鍵方程求解模塊基于修正的歐幾里德算法設計了一種便于硬件實現的脈動關鍵方程求解結構,其他模塊均采用九倍并行實現。由于進行了超前運算、流水線及并行處理,使編解碼的數據吞吐量大為提高,同時延時更小。 本論文設計了C++仿真平臺,并與HDL代碼結果進行了對比驗證。Verilog HDL代碼經過modelsim仿真驗證,并在ALTERA STRATIX3 EP3SL15OF1152C2 FPGA上進行綜合驗證以及靜態時序分析,綜合軟件為QUATURSⅡ V8.0。驗證及測試表明,本設計在滿足編解碼基本功能的基礎上,能夠實現數據的高吞吐量和低延時傳輸,達到性能指標要求。本論文在基于FPGA的RS(255,223)編解碼器的高速并行實現方面的研究成果,具有通用性、可移植性,有一定的理論及經濟價值。
上傳時間: 2013-04-24
上傳用戶:思琦琦
MP3音樂是目前最為流行的音樂格式,因其音質、復雜度與壓縮比的完美折中,占據著廣闊的市場,不僅在互聯網上廣為流傳,而且在便攜式設備領域深受人們喜愛。本文以MPEG-1的MP3音頻解碼器為研究對象,在實時性、面積等約束條件下,研究MP3解碼電路的設計方法,實現FPGA原型芯片,研究MP3原型芯片的驗證方法。 論文的主要貢獻如下: (1)使用算法融合方法合并MP3解碼過程的相關步驟,以減少緩沖區存儲單元的容量和訪存次數。如把重排序步驟融合到反量化模塊,可以減少一半的讀寫RAM操作;把IMDCT模塊內部的三個算法步驟融合在一起進行設計,可以省去存儲中間計算結果的緩存區單元。 (2)反量化、立體聲處理等模塊中,采用流水線設計技術,設置寄存器把較長的組合邏輯路徑隔開,提高了電路的性能和可靠性;使用連續訪問公共緩存技術,合理規劃各計算子模塊的工作時序,將數據計算的時間隱藏在訪存過程中;充分利用頻率線的零值區特性,有效地減少數據計算量,加快了數據處理的速度。 (3)設計了MP3硬件解碼器的FPGA原型芯片。采用Verilog HDL硬件描述語言設計RTL級電路,完成功能仿真,以Altera公司Stratix II系列的EP2S180 FPGA開發板為平臺,實現MP3解碼器的FPGA原型芯片。MP3硬件解碼器在Stratix II EP2S180器件內的資源利用率約為5%,其中組合邏輯查找表ALUT為7189個,寄存器共有4024個,系統頻率可達69.6MHz,充分滿足了MP3解碼過程的實時性要求。實驗結果表明,MP3音頻解碼FPGA原型芯片可正常播放聲音,解碼音質良好。
上傳時間: 2013-07-01
上傳用戶:xymbian
本文以研究嵌入式微處理器為主,自主地設計了能夠運行MCS-51系列單片機指令的MCU系統。系統采用了VHDL 語言與原理框圖的綜合設計方法,并且在Altera公司的FPGA上通過驗證。論文深入地研究了微處理器的指令系統和數據地址通路,采用VHDL 語言完成了取指單元,指令譯碼器單元,存儲器單元和邏輯運算單元的電路模塊的設計與實現;研究了控制單元的實現方法和基于全局狀態機的設計理論,采用硬件描述語言完成了對各個控制線的相關設計與實現。論文通過原理示意圖和示例代碼的演示,著重介紹了指令譯碼器的實現方式,基于此種方式形成的譯碼電路還能夠實現更為復雜的CISC指令。 本系統采用分模塊的設計方式,把具有相同功能的邏輯電路集中到一個框圖里,使得系統的可移植性大大地提高。系統還采用層次框圖的設計方式,把明顯地具有主從關系的電路放在不同的層次里,這也使得系統模塊功能的可擴展性大大地增強。內部邏輯共分為數據存儲器模塊;程序存儲器模塊;時序控制模塊;特殊功能寄存器模塊和Core核心模塊這五個部分,文中對各個模塊的設計作了詳細的介紹。本文在最后對已實現的部分典型指令進行了邏輯仿真測試,測試結果表明,本文所設計的MCU系統能夠如預期地執行相應的指令。在指令執行的過程中,相應寄存器和總線上的值也均符合設計要求,實現了設計目標。
上傳時間: 2013-05-20
上傳用戶:2525775
ARM嵌入式技術在工業和生活中正得到越來越廣泛的應用,為了適應技術的發展和社會的需求,滿足為社會培養創新型人才的需要,高校通信類和電子類專業開設ARM嵌入式技術相關課程及其實驗課程將成為趨勢。在課程中設置合理實驗,可以有效提高學生的動手能力和培養創新性思維,幫助學生更快、更好地掌握理論和應用技術。 論文設計的ARM嵌入式教學實驗系統包括一塊適合普通高校嵌入式技術實驗課程教學的實驗開發板及其配套的實驗。該實驗系統針對一般高校所開設的ARM嵌入式技術相關課程的要求而設計,配套實驗符合教學大綱及實驗課時的要求。 論文設計的實驗開發板主要組成模塊有:最小系統,包括控制器模塊、電源模塊、復位模塊、Flash ROM模塊、SDRAM模塊、JTAG接口等;擴展接口,包括LED、鍵盤、RS232串口、I2C接口、液晶模塊、以太網模塊等。實驗開發板采用S3C4510B網絡控制芯片用作控制和信號處理,使用網絡接口芯片DM9161和隔離變壓器H1102完成網絡接入,使用AM29LV160和HY57V641620HG構建16位存儲單元,使用AT24C01和PCF8583來構建I2C接口,使用MAX232完成TTL電平轉換以擴展RS232串口,并擴展鍵盤和LCD實現人機交互。實驗開發板的硬件設計充分考慮了一般高校實驗室的條件和需求,能夠較好地將成本控制在150元左右,有利于在有限的條件下為每個學生盡可能的創造動手制作PCB的實驗條件。實驗板的接口設計能夠讓學生較為方便地開展實驗,并考慮了實驗板擴展和二次開發的需要。 論文設計的實驗系統配套實驗主要有基礎實驗、擴展實驗和設計實驗。基礎實驗主要幫助學生熟悉嵌入式系統的片內資源和特殊功能寄存器的配置方法,對整個嵌入式系統的架構有一定的理解,能編程完成一些簡單的控制功能;擴展實驗主要幫助學生建立嵌入式系統開發和設計的基本理念,能夠設計和實現常見的外設驅動程序,能夠進行操作系統的配置和移植,能夠自行對實驗板進行一定程度的擴展;設計實驗能夠幫助學生提高嵌入式系統的設計開發能力,使學生能根據需要設計出實現一定功能的擴展模塊,從而使實驗板擴展成實現具體功能的工業產品。基礎實驗包括ADS集成環境實驗、鍵盤實驗(GPIO輸入)、LED實驗(GPIO輸出)、定時器實驗、外部中斷實驗、UART串口通信實驗、I2C接口實驗、液晶顯示實驗;擴展實驗包括建立交叉編譯環境實驗、操作系統編譯實驗、操作系統移植實驗、以太網通信實驗、TFTP實驗、WEB訪問實驗;設計實驗包括TCP/IP協議棧實驗、Web服務器實驗。學生通過完成基礎實驗、擴展實驗和設計實驗來達到教學大綱的要求,并可以在此基礎上進行更深入的創新性開發實驗,可以滿足一般高校嵌入式技術實驗課程教學的需要。 論文介紹了嵌入式交叉編譯環境的建立以及實驗開發板設計完成后進行的調試。實驗開發板移植的嵌入式操作系統為uClinux,采用的Bootloader為U-boot。論文還簡單介紹了實驗系統的擴展方案和二次開發方案,并對嵌入式新技術的發展做了粗淺的探討。 論文所做的工作以科學發展觀為指導,是對普通高校ARM嵌入式技術實驗課程設計的一次有益探索。
上傳時間: 2013-04-24
上傳用戶:jjq719719
在嵌入式系統的開發過程中,仿真器是一個必不可少的開發工具。特別是對于初級嵌入式系統開發工程師,借助一個功能強大的仿真器進行開發工作,可以達到事半功倍的效果。一個嵌入式仿真、調試系統支持單步執行、設置斷點、觀察變量內容及寄存器內容等功能。開發人員可以通過各類調試功能觀察變量和寄存器的變化,從而可以很清楚的了解整個程序運行的狀況,及時的調整和修改程序,并不需要反復的向芯片燒寫程序,就可以完成對于程序的調試工作。 @@ 本文在分析了目前市場上常用仿真器的設計原理的基礎上,提出了以三星公司的S3C44BO ARM7處理器為主CPU,通過以太網接口進行數據傳輸的ARMJTAT仿真器的設計方案。利用這種仿真器進行程序調試,不僅可以大幅度的提高下載速度,還可以實現仿真器資源的共享,而且調試時程序是在目標板上運行,仿真更接近于目標硬件。 @@ 文中首先對于傳統仿真器的設計原理、作用、存在的問題進行了研究,然后提出了基于S3C44BO的以太網接口的ARM-JTAG仿真器的設計。該仿真器的設計主要分為以下幾步:第一,提出總體設計方案,包括硬件的設計及軟件的設計。第二,詳細介紹該仿真器的硬件結構設計和程序開發過程,其中特別對以太網接口的設計進行了研究。第三,總結了該仿真器的功能、特點。 @@關鍵詞:仿真器;S3C44BO;以太網接口;JTAG;LwIP
上傳時間: 2013-06-16
上傳用戶:253189838