SOPC嵌入式系統(tǒng)基礎教程

出版時間:2006-11  出版社:北京航空航天大學出版社  作者:周立功  頁數:353  字數:521000  
Tag標簽:無  

前言

  微電子技術的發(fā)展歷史是一個不斷創(chuàng)新的過程,這種創(chuàng)新包括理論創(chuàng)新、技術創(chuàng)新和應用創(chuàng)新。每一種創(chuàng)新都能開拓出一個新的領域,帶來新的市場,產生重大的影響?! ≡诩呻娐罚↖C)發(fā)展初期,電路設計主要是器件的物理版圖設計。后來出現了集成電路單元庫(Cell?Lib),使得集成電路設計從器件級進入邏輯級,極大地推動了IC產業(yè)的發(fā)展。隨著IC設計與工藝水平的提高,原先由許多IC組成的電子系統(tǒng)可以集成到一個芯片上,構成片上系統(tǒng)(System on aChip,SOC)。SOC的設計思想有別于普通IC:SOC從整個系統(tǒng)的角度出發(fā),把處理機制、模型算法、芯片結構直至器件的設計緊密結合起來,在單個(或少數幾個)芯片上實現整個系統(tǒng)的功能。SOC的設計以IP核為基礎,以分層次的硬件描述語言為系統(tǒng)功能和結構的主要描述手段,并需要借助EAD工具。研究表明,與IC組成的系統(tǒng)相比,由于SOC設計能夠綜合考慮整個系統(tǒng)的各種情況,因而可以在同樣的工藝條件下,實現更高性能的系統(tǒng)指標?! OPC(System On Programmable Chip,可編程的片上系統(tǒng)),是Altera公司提出來的一種靈活、高效的SOC解決方案,是一種新的軟硬件協同設計的系統(tǒng)設計技術。它將處理器、存儲器、I/O口、LVDS、CDR等系統(tǒng)設計需要的功能模塊集成到一個可編程器件上,構成一個可編程的片上系統(tǒng)?! OPC是PLD和ASIC技術融合的結果。目前0.13 μm的ASIC產品制造價格仍然相當昂貴,而集成了硬核或軟核CPU、DSP、存儲器、I/O設備和可編程邏輯的SOPC芯片,在應用靈活性和價格上有相當大的優(yōu)勢,所以有人認為SOPC代表了半導體產業(yè)未來的發(fā)展方向。本書為《SOPC嵌入式開發(fā)系列教程》的理論教材,而事實上,本書的內容并非純理論的,也包含很多實踐部分。以作者的經驗,SOPC技術只有通過大量的實戰(zhàn)與實踐才能很好并快速地掌握,因此本書的內容編排力求實用、深入淺出。本書內容編排如下:  第1章以簡短的篇幅介紹了SOPC技術及Altera公司系列產品中可用于SOPC的FPGA,重點介紹了32位Nios Ⅱ軟核處理器?! 〉?章首先詳細介紹了SOPC開發(fā)的基本流程,然后非常詳細地描述了一個簡單SOPC系統(tǒng)的設計過程,包括使用Quartus Ⅱ、SOPC Builder定制Nios Ⅱ系統(tǒng)以及利用Nios Ⅱ IDE進行應用程序開發(fā)。本章力求通過實例讓讀者以最快的方式了解SOPC開發(fā)以及各軟件的使用,從而激起讀者對SOPC的興趣。  第3章詳述了Nios Ⅱ處理器的體系結構,以便讓讀者了解Nios Ⅱ處理器的工作細節(jié)。雖然在軟件開發(fā)過程中我們多數情況下只使用C語言,無須關心體系結構的細節(jié)。但熟悉體系結構對開發(fā)出高效、健壯的程序是非常有好處的?! 〉?章介紹了Nios Ⅱ處理器常用外圍設備的特點、配置以及軟件編程,供讀者在使用這些外設定制Nios Ⅱ系統(tǒng)時查閱?! 〉?章對較難掌握的FPGA配置、Flash(包括EPCS)編程、目標板Flash編程設計的創(chuàng)建以及Nios Ⅱ系統(tǒng)用戶程序引導等內容進行了詳細闡述?! 〉?章首先簡單介紹Nios Ⅱ IDE開發(fā)環(huán)境的使用;然后重點介紹了硬件抽象層(HAL)系統(tǒng)庫,包括HAL下的應用程序開發(fā)以及開發(fā)HAL下的設備驅動兩部分內容;最后講述了MicroC/OS-Ⅱ實時操作系統(tǒng)及其應用程序開發(fā)實例。本章還簡單介紹了最新的Nios Ⅱ C語言至硬件加速編譯器?! 〉?章詳細介紹了Avalon接口規(guī)范,著重從Avalon外設的角度論述Avalon接口。如果用戶只使用已經定制好的外設來創(chuàng)建自己的系統(tǒng),就無須了解有關Avalon的相關知識。但對于需要自己設計外設的用戶來說,就需要掌握諸如傳輸類型、信號時序等全面的Avalon接口知識,第7章的內容就顯得尤為重要?! 〉?章講述有關SOPC的深入設計,以幫助讀者掌握如何定制用戶邏輯外設和用戶指令。定制用戶邏輯外設和定制用戶指令是使用Nios Ⅱ嵌入式軟核處理器的SOPC系統(tǒng)的重要特性,用戶還可以通過定制用戶邏輯外設和定制用戶指令來實現各種應用要求?! 〉?章首先簡單地回顧了程序語言發(fā)展的歷史,并從中總結了匯編程序的重要性;隨后概要地介紹了Nios Ⅱ的指令集;最后重點介紹了Nios Ⅱ匯編程序的設計方法以及混合語言程序開發(fā)?! 「戒?介紹了廣州致遠電子有限公司的SmartSOPC多功能教學實驗開發(fā)平臺,本書的許多內容都在該開發(fā)平臺上通過驗證?! 「戒?首先簡單介紹了邏輯分析儀的基礎知識;重點比較了邏輯分析儀與示波器的區(qū)別,以此得出邏輯分析儀在數字電路設計中的重要作用。最后向讀者簡單介紹了廣州致遠電子有限公司的LA系列高性能邏輯分析儀。  在閱讀本書的過程中,請讀者注意以下幾點:  本書的部分內容是基于Altera公司的6.0版本的英文手冊,Altera公司會不斷更新和修改各參考手冊的內容,如遇到不符,請讀者以最新的手冊為準?! ”緯谐隽俗髡邆冊隍炞C內容過程中遇到很多問題的解決方法和注意事項,書中特別用 表示出來?! ”緯鴮σ恍┬g語在不同場合下并沒有嚴格進行統(tǒng)一,事實上Altera公司的英文手冊也是如此。不統(tǒng)一的術語主要是外設、元件、IP Core。在SOPC Builder中通常使用元件(component)或IP Core來描述硬件模塊,而在軟件編程中通常把在SOPC Builder中稱之為元件或IP Core的硬件模塊描述為外設或設備?! ∮捎谥形馁Y料缺乏,一些內容是在Altera英文文檔及軟件幫助內容的基礎上翻譯的,在翻譯過程中一些表達可能不恰當,為此在括號內給出了相應的英文表達,以便于讀者更好地理解。最后建議讀者在學習本書的過程中要進行實際的動手操作,“紙上得來終覺淺,絕知此事要躬行”。再好的講述也比不上親身的體驗,如果不親自動手,可能永遠都不知道什么是困難。在實驗的過程中,推薦使用本書的配套實驗教程《Nios Ⅱ SOPC嵌入式系統(tǒng)實驗教程(一)》以及Smart SOPC多功能教學實驗平臺。本書適合于高等院校電子工程、計算機、微電子、通信、自動控制等專業(yè)以及對此類專業(yè)感興趣的高年級本科生和研究生。作者相信本書的讀者只要認真、勤奮地學習好書中的內容,并勇于實踐,就能較快地進入SOPC技術世界?! ⑴c本書編寫工作的主要人員有周書武、劉英斌、張晶、芮文彬、杜佳、許惠泉、余文亮等,本書由周立功負責規(guī)劃、內容編排、定稿與修改。感謝北京航空航天大學出版社的大力支持,使本書得以快速出版?! ∮捎谧髡咚接邢?,書中的內容難免有疏忽、不恰當甚至錯誤的地方,懇請各位老師及同行指正,并請您將閱讀中發(fā)現的錯誤或建議發(fā)送到以使本書不斷完善。

內容概要

  本書為《SOPC嵌入式開發(fā)系列教程》的理論教材,介紹了在嵌入式系統(tǒng)中日益廣泛應用的SOPC技術基礎知識。主要以Altera公司的技術資料為基礎,加之作者的實踐及理解,全面、深入淺出地介紹了SOPC技術。全書分為3 部分:第1、3、4章為基礎部分,主要介紹SOPC技術、Nios II處理器的體系結構、Nios II處理器的常用外設;第2、5、6章為應用部分,重點介紹SOPC 開發(fā)流程、FPGA配置、Flash編程、軟件開發(fā)等;第7、8、9章為提高部分,主要介紹Avalon接口規(guī)范、SOPC深入設計、混合語言編程等。  本書可作為高等院校電子工程、計算機、微電子、通信、自動控制等相關專業(yè)SOPC嵌入式系統(tǒng)課程的理論教材,也可作為從事SOPC嵌入式系統(tǒng)應用開發(fā)工程師的參考資料?! ”緯信涮讓嶒灲坛桃约岸嗝襟w教學課件。

書籍目錄

第1章 概述 1.1 SOPC及其技術 1.2 Nios?、蜍浐颂幚砥鳌?.3 Altera支持SOPC的FPGA簡介第2章 SOPC開發(fā)流程及開發(fā)平臺簡介 2.1 SOPC開發(fā)流程 2.2 簡單SOPC實例開發(fā)任務及步驟 2.3 分析系統(tǒng)需求 2.4 使用Quartus Ⅱ建立工程 2.5 使用SOPC Builder創(chuàng)建Nios?、蛳到y(tǒng) 2.6 集成Nios?、蛳到y(tǒng)到Quartus?、蚬こ獭?.7 設置編譯選項并編譯硬件系統(tǒng) 2.8 下載硬件設計到目標FPGA 2.9 使用Nios?、颉DE建立用戶程序 2.10 調試/運行程序第3章 Nios?、颉◇w系結構 3.1 Nios?、蛱幚砥鹘Y構 3.2 Nios?、虻募拇嫫魑募?.3 算術邏輯單元(ALU) 3.4 復位信號 3.5 Nios?、蛱幚砥鬟\行模式 3.6 異常和中斷控制器 3.7 Nios?、虻漠惓L幚怼?.8 存儲器及I/O結構 3.9 存儲器和外設訪問 3.10 Nios Ⅱ處理器性能第4章 Nios?、蛲鈬O備 4.1 并行輸入/輸出內核 4.2 SDRAM控制器內核 4.3 CFI控制器內核 4.4 EPCS控制器內核 4.5 定時器內核 4.6 UART內核 4.7 JTAG_UART內核 4.8 SPI內核 4.9 DMA內核 4.10 帶Avalon接口的互斥內核 4.11 帶Avalon接口的郵箱內核 4.12 System ID內核第5章 FPGA配置和Flash編程 5.1 FPGA配置 5.2 Cyclone及Cyclone?、颉PGA配置 5.3 配置芯片 5.4 配置的軟件設置 5.5 配置文件 5.6 配置可靠性及電路設計注意事項 5.7 下載配置文件到FPGA 5.8 下載配置文件到EPCS 5.9 IDE Flash Programmer介紹 5.10 用戶程序引導 5.11 使用IDE Flash Programmer編程 5.12 創(chuàng)建目標板Flash編程設計第6章 Nios?、驊贸绦蚣捌渫庠OHAL驅動開發(fā) 6.1 Nios?、颉DE簡介 6.2 設置工程系統(tǒng)庫屬性和編譯選項 6.3 調試/運行程序 6.4 下載程序到Flash 6.5 硬件抽象層(HAL)系統(tǒng)庫 6.6 使用HAL開發(fā)應用程序 6.7 設備驅動概述 6.8 開發(fā)HAL下的設備驅動 6.9 μC/OSⅡ 6.10 Nios?、颉語言至硬件加速編譯器(C2H)簡介第7章 Avalon接口規(guī)范 7.1 Avalon總線簡介 7.2 術語和概念 7.3 Avalon信號 7.4 從端口傳輸 7.5 主端口傳輸 7.6 流水線傳輸屬性 7.7 流控制屬性 7.8 三態(tài)傳輸屬性 7.9 突發(fā)傳輸屬性 7.10 非傳輸相關的信號 7.11 地址對齊第8章 Nios?、蛳到y(tǒng)深入設計 8.1 定制基于Avalon的用戶外設 8.2 定制Nios?、蛴脩糁噶畹?章 Nios Ⅱ匯編程序設計及混合語言程序開發(fā) 9.1 歷史回顧 9.2 Nios?、虻闹噶罴?.3 Nios Ⅱ匯編程序設計 9.4 使用混合語言進行程序開發(fā)附錄1 SmartSOPC多功能教學實驗開發(fā)平臺附錄2 LA系列高性能邏輯分析儀參考文獻

章節(jié)摘錄

  第1章 概述  SOPC(System On Programmable Chip,可編程的片上系統(tǒng))是Altera公司提出來的一種靈活、高效的SOC解決方案。它將處理器、存儲器、I/O口、LVDS、CDR等系統(tǒng)設計需要的功能模塊集成到一個可編程器件上,構成一個可編程的片上系統(tǒng)。  SOPC是PLD和ASIC技術融合的結果,可以認為SOPC代表了半導體產業(yè)未來的發(fā)展方向?! ?.1 SOPC及其技術  現今,可將SOPC視為是基于FPGA解決方案的SOC。與ASIC的SOC解決方案相比,SOPC系統(tǒng)及其開發(fā)技術具有更多的特色,也有多種途徑可構成SOPC方案?! ?.1.1 基于FPGA嵌入IP硬核的SOPC系統(tǒng)  基于FPGA嵌入IP硬核的SOPC系統(tǒng)是指在FPGA中預先植入處理器。目前最常用的嵌入式處理器大多是采用含有ARM32位知識產權處理器核的器件。為了達到通用性,必須為常規(guī)的嵌入式處理器集成諸多通用和專用的接口,但這樣無疑會增加芯片的成本和功耗。如果將ARM或其他處理器核以硬核方式植入FPGA中,利用FPGA的可編程邏輯資源,按照系統(tǒng)功能需求來添加接口功能模塊,既能實現目標系統(tǒng)功能,又能降低系統(tǒng)的成本和功耗。這樣就使得FPGA靈活的硬件設計與處理器的強大軟件功能有機地結合在一起,高效地實現SOPC系統(tǒng)?! ?.1.2 基于FPGA嵌入IP軟核的SOPC系統(tǒng)  將IP硬核直接植入FPGA的解決方案存在以下不足: ?。?)由于此類硬核多來自第三方公司,FPGA廠商通常無法直接控制其知識產權費用,從而導致FPGA器件價格相對偏高?! 。?)由于硬核是預先植入的,設計者無法根據實際需要改變處理器的結構,如總線規(guī)模、接口方式、指令形式,更不可能將FPGA邏輯資源構成的硬件模塊以指令的形式嵌入硬件加速模塊(如DSP)。

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    SOPC嵌入式系統(tǒng)基礎教程 PDF格式下載


用戶評論 (總計1條)

 
 

  •   一本對新手不錯的書!
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網 手機版

京ICP備13047387號-7