使用verilog作為CPU設計語言實現單數據通路五級流水線的CPU。具有32個通用寄存器、一個程序計數器PC、一個標志寄存器FLAG,一個堆棧寄存器STACK。存儲器尋址粒度為字節。數據存儲以32位字對準。采用32位定長指令格式,采用Load/Store結構,ALU指令采用三地址格式。支持有符號和無符號整數加、減、乘、除運算,并支持浮點數加、減、乘、除四種運算,支持與、或、異或、非4種邏輯運算,支持邏輯左移、邏輯右移、算術右移、循環右移4種移位運算,支持Load/Store操作,支持地址/立即數加載操作,支持無條件轉移和為0轉移、非0轉移、無符號>轉移、無符號<轉移、有符號>轉移、有符號<轉移等條件轉移。
上傳時間: 2013-12-11
上傳用戶:源弋弋
MSP430寄存器(精)
上傳時間: 2013-06-14
上傳用戶:fujun35303
一本很好的匯編語言教程,跟大家一起分享 課程介紹 第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
可配置端口電路是FPGA芯片與外圍電路連接關鍵的樞紐,它有諸多功能:芯片與芯片在數據上的傳遞(包括對輸入信號的采集和輸出信號輸出),電壓之間的轉換,對外圍芯片的驅動,完成對芯片的測試功能以及對芯片電路保護等。 本文采用了自頂向下和自下向上的設計方法,依據可配置端口電路能實現的功能和工作原理,運用Cadence的設計軟件,結合華潤上華0.5μm的工藝庫,設計了一款性能、時序、功耗在整體上不亞于xilinx4006e[8]的端口電路。主要研究以下幾個方面的內容: 1.基于端口電路信號寄存器的采集和輸出方式,本論文設計的端口電路可以通過配置將它設置成單沿或者雙沿的觸發方式[7],并完成了Verilog XL和Hspiee的功能和時序仿真,且建立時間小于5ns和保持時間在0ns左右。和xilinx4006e[8]相比較滿足設計的要求。 2.基于TAP Controller的工作原理及它對16種狀態機轉換的控制,對16種狀態機的轉換完成了行為級描述和實現了捕獲、移位、輸出、更新等主要功能仿真。 3.基于邊界掃描電路是對觸發器級聯的構架這一特點,設計了一款邊界掃描電路,并運用Verilog XL和Hspiee對它進行了功能和時序的仿真。達到對芯片電路測試設計的要求。 4.對于端口電路來講,有時需要將從CLB中的輸出數據實現異或、同或、與以及或的功能,為此本文采用二次函數輸出的電路結構來實現以上的功能,并運用Verilog XL和Hspiee對它進行了功能和時序的仿真。滿足設計要求。 5.對于0.5μm的工藝而言,輸入端口的電壓通常是3.3V和5V,為此根據設置不同的上、下MOS管尺寸來調整電路的中點電壓,將端口電路設計成3.3V和5V兼容的電路,通過仿真性能上已完全達到這一要求。此外,在輸入端口處加上擴散電阻R和電容C組成噪聲濾波電路,這個電路能有效地抑制加到輸入端上的白噪聲型噪聲電壓[2]。 6.在噪聲和延時不影響電路正常工作的范圍內,具有三態控制和驅動大負載的功能。通過對管子尺寸的大小設置和驅動大小的仿真表明:在實現TTL高電平輸出時,最大的驅動電流達到170mA,而對應的xilinx4006e的TTL高電平最大驅動電流為140mA[8];同樣,在實現CMOS高電平最大驅動電流達到200mA,而xilinx4006e的CMOS驅動電流達到170[8]mA。 7.與xilinx4006e端口電路相比,在延時和面積以及功耗略大的情況下,本論文研究設計的端口電路增加了雙沿觸發、將輸出數據實現二次函數的輸出方式、通過添加譯碼器將配置端口的數目減少的新的功能,且驅動能力更加強大。
上傳時間: 2013-07-20
上傳用戶:頂得柱
一個很好用的adf4350寄存器配置軟件,省卻了您繁瑣的計算寄存器值的時間
上傳時間: 2013-06-30
上傳用戶:海陸空653
本文從AES的算法原理和基于ARM核嵌入式系統的開發著手,研究了AES算法的設計原則、數學知識、整體結構、算法描述以及AES存住的優點利局限性。 針對ARM核的體系結構及特點,對AES算法進行了優化設計,提出了從AES算法本身和其結構兩個方面進行優化的方法,在算法本身優化方面是把加密模塊中的字節替換運算、列混合運算和解密模塊中的逆列混合運算中原來的復雜的運算分別轉換為簡單的循環移位、乘和異或運算。在算法結構優化方面是在輸入輸山接口上采用了4個32位的寄存器對128bits數據進行了并行輸入并行輸出的優化設計;在密鑰擴展上的優化設計是采用內部擴展,即在進行每一輪的運算過程的同時算出下一輪的密鑰,并把下一輪的密鑰暫存在SRAM里,使得密鑰擴展與加/解密運算并行執行;加密和解密優化設計是將輪函數查表操作中的四個操作表查詢工作合并成一個操作表查詢工作,同時為了使加密代碼在解密代碼中可重用,節省硬件資源,在解密過程中采用了與加密相一致的過程順序。 根據上述的優化設計,基于ARM核嵌入式系統的ADS開發環境,提出了AES實現的軟硬件方案、AES加密模塊和解密模塊的實現方案以及測試方案,總結了基于ARM下的高效編程技巧及混合接口規則,在集成開發環境下對算法進行了實現,分別得出了初始密鑰為128bits、192bits和256bits下的加密與解密的結果,并得劍了正確驗證。在性能測試的過程中應用編譯器的優化選項和其它優化技巧優化了算法,使算法具有較高的加密速度。
上傳時間: 2013-04-24
上傳用戶:liansi
低密度校驗碼(LDPC,Low Density Parity Check Code)是一種性能接近香農極限的信道編碼,已被廣泛地采用到各種無線通信領域標準中,包括我國的數字電視地面傳輸標準、歐洲第二代衛星數字視頻廣播標準(DVB-S2,Digital Video Broadcasting-Satellite 2)、IEEE 802.11n、IEEE 802.16e等。它是3G乃至將來4G通信系統中的核心技術之一。 當今LDPC碼構造的主流方向有兩個,分別是結合準循環(QC,Quasi Cyclic)移位結構的單次擴展構造和類似重復累積(RA,Repeat Accumulate)碼構造。相應地,主要的LDPC碼編碼算法有基于生成矩陣的算法和基于迭代譯碼的算法。基于生成矩陣的編碼算法吞吐量高,但是需要較多的寄存器和ROM資源;基于迭代譯碼的編碼算法實現簡單,但是吞吐量不高,且不容易構造高性能的好碼。 本文在研究了上述幾種碼構造和編碼算法之后,結合編譯碼器綜合實現的復雜度考慮,提出了一種切實可行的基于二次擴展(Dex,Duplex Expansion)的QC-LDPC碼構造方法,以實現高吞吐量的LDPC碼收發端;并且充分利用該類碼校驗矩陣準循環移位結構的特點,結合RU算法,提出了一種新編碼器的設計方案。 基于二次擴展的QC-LDPC碼構造方法,是通過對母矩陣先后進行亂序擴展(Pex,Permutation Expansion)和循環移位擴展(CSEx,Cyclic Shift Expansion)實現的。在此基礎上,為了實現可變碼長、可變碼率,一般編譯碼器需同時支持多個亂序擴展和循環移位擴展的擴展因子。本文所述二次擴展構造方法的特點在于,固定循環移位擴展的擴展因子大小不變,支持多個亂序擴展的擴展因子,使得譯碼器結構得以精簡;構造得到的碼字具有近似規則碼的結構,便于硬件實現;(偽)隨機生成的循環移位系數能夠提高碼字的誤碼性能,是對硬件實現和誤碼性能的一種折中。 新編碼器在很大程度上考慮了資源的復用,使得實現復雜度近似與碼長成正比。考慮到吞吐量的要求,新編碼器結構完全拋棄了RU算法中串行的前向替換(FS,Forward Substitution)模塊,同時簡化了流水線結構,由原先RU算法的6級降低為4級;為了縮短編碼延時,設計時安排每一級流水線計算所需的時鐘數大致相同。 這種碼字構造和編碼聯合設計方案具有以下優勢:相比RU算法,新方案對可變碼長、可變碼率的支持更靈活,吞吐量也更大;相比基于生成矩陣的編碼算法,新方案節省了50%以上的寄存器和ROM資源,單位資源下的吞吐量更大;相比類似重復累積碼結構的基于迭代譯碼的編碼算法,新方案使高性能LDPC碼的構造更為方便。以上結果都在Xilinx Virtex II pro 70 FPGA上得到驗證。 通過在實驗板上實測表明,上述基于二次擴展的QC-LDPC碼構造和相應的編碼方案能夠實現高吞吐量LDPC碼收發端,在實際應用中具有很高的價值。 目前,LDPC碼正向著非規則、自適應、信源信道及調制聯合編碼方向發展。跨層聯合編碼的構造方法,及其對應的編碼算法,也必將成為信道編碼理論未來的研究重點。
上傳時間: 2013-07-26
上傳用戶:qoovoop
DSP2407寄存器查詢器軟件,方便查詢寄存器功能
上傳時間: 2013-04-24
上傳用戶:zuozuo1215
可配置端口電路是FPGA芯片與外圍電路連接關鍵的樞紐,它有諸多功能:芯片與芯片在數據上的傳遞(包括對輸入信號的采集和輸出信號輸出),電壓之間的轉換,對外圍芯片的驅動,完成對芯片的測試功能以及對芯片電路保護等。 本文采用了自頂向下和自下向上的設計方法,依據可配置端口電路能實現的功能和工作原理,運用Cadence的設計軟件,結合華潤上華0.5μm的工藝庫,設計了一款性能、時序、功耗在整體上不亞于xilinx4006e[8]的端口電路。主要研究以下幾個方面的內容: 1.基于端口電路信號寄存器的采集和輸出方式,本論文設計的端口電路可以通過配置將它設置成單沿或者雙沿的觸發方式[7],并完成了Verilog XL和Hspiee的功能和時序仿真,且建立時間小于5ns和保持時間在0ns左右。和xilinx4006e[8]相比較滿足設計的要求。 2.基于TAP Controller的工作原理及它對16種狀態機轉換的控制,對16種狀態機的轉換完成了行為級描述和實現了捕獲、移位、輸出、更新等主要功能仿真。 3.基于邊界掃描電路是對觸發器級聯的構架這一特點,設計了一款邊界掃描電路,并運用Verilog XL和Hspiee對它進行了功能和時序的仿真。達到對芯片電路測試設計的要求。 4.對于端口電路來講,有時需要將從CLB中的輸出數據實現異或、同或、與以及或的功能,為此本文采用二次函數輸出的電路結構來實現以上的功能,并運用Verilog XL和Hspiee對它進行了功能和時序的仿真。滿足設計要求。 5.對于0.5μm的工藝而言,輸入端口的電壓通常是3.3V和5V,為此根據設置不同的上、下MOS管尺寸來調整電路的中點電壓,將端口電路設計成3.3V和5V兼容的電路,通過仿真性能上已完全達到這一要求。此外,在輸入端口處加上擴散電阻R和電容C組成噪聲濾波電路,這個電路能有效地抑制加到輸入端上的白噪聲型噪聲電壓[2]。 6.在噪聲和延時不影響電路正常工作的范圍內,具有三態控制和驅動大負載的功能。通過對管子尺寸的大小設置和驅動大小的仿真表明:在實現TTL高電平輸出時,最大的驅動電流達到170mA,而對應的xilinx4006e的TTL高電平最大驅動電流為140mA[8];同樣,在實現CMOS高電平最大驅動電流達到200mA,而xilinx4006e的CMOS驅動電流達到170[8]mA。 7.與xilinx4006e端口電路相比,在延時和面積以及功耗略大的情況下,本論文研究設計的端口電路增加了雙沿觸發、將輸出數據實現二次函數的輸出方式、通過添加譯碼器將配置端口的數目減少的新的功能,且驅動能力更加強大。
上傳時間: 2013-06-03
上傳用戶:aa54
該文件是OV7725即30萬攝像頭sensor的寄存器配置信息,內部的源碼,針對不同的開發環境可以做適當修改
上傳時間: 2013-04-24
上傳用戶:784533221