




免費預覽已結束,剩余146頁可下載查看
下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
摘 要本文設計完成的是基于FPGA的嵌入式系統開發板,它可以完成FPGA、嵌入式系統和SOPC等的設計和開發。開發板以Altera公司的Cyclone系列FPGAEP1C6為核心,在其外圍擴展FLASH、SRAM、A/D、D/A、鍵盤、LED顯示、LCD顯示、串口通信、VGA接口、PS2接口和USB接口等器件,使其成為一個完整的嵌入式開發系統,系統采用模塊化設計,各個模塊之間可以自由組合,使得該開發板的靈活性和可擴展性大大提高。同時開發板所提供的豐富的接口模塊,供人機交互和器件間通信使用,方便了開發者的設計和系統的嵌入,可以滿足普通高等院校、科研人員等的需求。開發者可以使用VHDL語言、Verilog HDL語言、原理圖輸入等多種方式進行邏輯電路和功能模塊設計,也可以利用Altera公司提供的IP資源和Nios 16/32位處理器開發嵌入式系統,借助QuartusII和Nios SDK Shell軟件進行編譯、下載,并通過本嵌入式系統開發板進行調式和結果驗證。關鍵詞:嵌入式系統,Nios嵌入式處理器,SOPC,FPGA ABSTRACTThe thesis completes a design of an embedded system development board based on FPGA.The development board can complete the design of FPGA,embeded system,SOPC and so on.The development board is based on Altera Cyclone deviceEP1C6,the board extends several peripheral devices such as,FLASH,SRAM,A/D,D/A,LED,LCD,keyboard,serial port,VGA interface,PS2 interface,USB interface and so on.All the devices constitute an integrated embeded development system. The development board offers us plenty of interfaces to meet the need of the device communication and the intercommunion between human and computer,which makes the design and the embedding of the system more easier.The Nios Development Board can meet the need of scientific researchers and other college researchers.The developers can use VHDL,Verilog HDL,schematic input mode and so on to design logic circuit and function block,they can alse use the IP core and Nios microprocessor which are offered by Altera to develop embedded systems. The developers can utilize Quartus and Nios SDK Shell to compile and download,then they can use this development board to debug and validate the result. KEY WORDS: embeded system, Nios embeded CPU,SOPC,FPGA目 錄前 言1第1章 緒 論31.1嵌入式系統概述31.1.1嵌入式系統的特點31.1.2 片上系統和可編程片上系統61.2 Nios嵌入式處理器71.2.1 Nios嵌入式處理器特性71.2.2 Nios嵌入式處理器系統組件101.2.3 Avalon交換結構總線11第2章 Nios嵌入式系統開發板整體理論分析162.1 系統設計目標162.2 系統設計原理162.3 開發板組件與理論分析192.4 開發板電路設計原理圖與PCB布線圖24第3章 Nios嵌入式系統開發板硬件開發環境263.1 硬件開發環境概述263.2 FPGA:EP1C6QC240C8的特性和電路設計263.2.1 特性和封裝273.2.2 引腳說明283.2.3 工作條件283.3 串行配置器件:EPCS1的特性和電路設計283.3.1 Cyclone FPGA的配置283.3.2串行配置器件: EPCS1/EPCS4313.3.3 EPCS1的電路設計343.4 SRAM:IDT71V016的特性和電路設計343.4.1 器件特性343.4.2 IDT71V016工作方式353.4.3 IDT71V016的電路設計373.5 FLASH:AM29LV800B的特性和電路設計393.5.1 器件特性393.5.2 器件工作方式描述403.5.3 AM29LV800總線操作423.5.4 AM29LV800的電路設計44第4章 軟件開發環境:Quartus和SOPC Builder454.1 Quartus及其開發流程454.2 SOPC Builder464.3 GERMS監控49第5章 Nios嵌入式系統開發板調試525.1 片內RAM、ROM調試525.2 GERMS監控調試595.3 擴展SRAM調試665.4 擴展FLASH調試69第6章 底板部分766.1 底板概述766.2 高速A/D:TLC5540776.3 高速D/A:DAC908796.4低速A/D:MCP3202826.5 低速D/A:DAC7512836.6 LED數碼管及鍵盤管理器件:ZLG7289A856.7 圖形LCD液晶顯示屏:HD6120288第7章 應用實例:利用Nios嵌入式系統開發板完成DDS的設計917.1 理論分析917.2 利用開發板實現的優點947.3系統設計與實現957.3.1 參數選取957.3.2 系統設計967.3.3 系統實現97第8章 總 結988.1 主要工作總結988.2 結論988.3 改進意見99致 謝100參考文獻101附 錄102附1 英文原文102附2 中文翻譯113附3 Cyclone器件引腳功能、定義和工作條件121附4 測試程序led.c142144 前 言FPGA的特點及其發展趨勢:嵌入式系統,是一個面向應用、技術密集、資金密集、不可壟斷的產業,隨著各個領域應用需求的多樣化,嵌入式設計技術和芯片技術也經歷著一次又一次的革新。雖然ASIC的成本很低,但設計周期長、投入費用高、風險較大,而可編程邏輯器件(Programmable Logical Device,PLD)設計靈活、功能強大,尤其是高密度現場可編程邏輯器件(Field Programmable Gate Array,FPGA)其設計性能已完全能夠與ASIC媲美,而且由于FPGA的逐步普及,其性能價格比已足以與ASIC抗衡。因此,FPGA在嵌入式系統設計領域已占據著越來越重要的地位??删幊唐舷到y(SOPC)是一種特殊的嵌入式系統:首先它是片上系統(SOC),即由單個芯片完成整個系統的主要邏輯功能;其次,它是可編程系統,具有靈活的設計方式,可裁減、可擴充、可升級,并具備軟硬件在系統可編程的功能。SOPC結合了SOC和FPGA各自的優點,一般具備以下基本特征: l 至少包含一個嵌入式處理器內核 l 具有小容量片內高速SRAM資源 l 豐富的IP Core資源可供選擇 l 足夠的片上可編程邏輯資源 l 處理器調試接口和FPGA編程接口 l 可能包含部分可編程模擬電路 l 單芯片、低功耗、微封裝本文設計完成的是基于FPGA的嵌入式系統開發板,它可以完成FPGA、嵌入式系統、SOPC的設計和開發。 第1章 緒 論1.1嵌入式系統概述嵌入式系統是嵌入到對象體系中的專用計算機系統,包括硬件和軟件兩大部分。硬件包括處理器、存儲器、輸入輸出接口和外部設備等,軟件包括系統軟件和應用軟件,嵌入式系統的系統軟件和應用軟件緊密結合。嵌入式處理器是嵌入式系統的核心,有硬核和軟核之分。常用的嵌入式處理器硬核有ARM、MIPS、PowerPC、Intel x86和Motorola 68000等;Altera公司開發的Nios是16/32位嵌入式處理器軟核。和硬核相比,軟核的使用靈活方便。Nios嵌入式處理器是可配置的通用RISC處理器,可以很容易地與用戶邏輯相結合,集成到Altera FPGA器件中。Nios具有16位指令系統,用戶可選擇16位或32位數據寬度和可靈活配置的標準外圍設備及軟件庫。Nios系統將處理器、存儲器、輸入輸出接口和其他IP核靈活地集成到SOPC設計中。1.1.1嵌入式系統的特點嵌入式系統是以應用為中心,以計算機技術為基礎,硬件和軟件可裁剪,適應應用系統對功能、可靠性、成本、體積和功耗等嚴格要求的專用計算機系統??梢詮囊韵聨讉€方面來理解嵌入式系統的含義:l 嵌入式系統面向用戶、面向產品和面向應用,必須與具體應用相結合才會具有生命力,才更具有優勢。嵌入式系統與應用緊密結合,具有很強的專用性。l 嵌入式系統將先進的半導體技術、計算機技術和電子技術以及各個行業的具體應用相結合,是一個技術密集、資金密集和不斷創新的知識集成系統。l 嵌入式系統必須根據應用需求對硬件和軟件進行裁剪,以滿足應用系統的功能、可靠性、成本、體積和功耗等要求。比較好的發展模式是:首先建立相對通用的硬件和軟件基礎,然后開發出適應各種需要的嵌入式系統。同時還應該看到,嵌入式系統是一個外延極廣的概念。凡是與產品結合在一起的具有嵌入式特點的系統都可以稱為嵌入式系統。一般而言,嵌入式系統和通用計算機系統類似,由處理器、存儲器、輸入輸出接口和設備以及軟件等部分組成。但作為專用計算機系統的嵌入式系統與通用計算機系統相比,具有以下幾個重要特征。l 系統簡練。由于嵌入式系統一般應用于小型電子裝置,系統資源相對有限,所以系統內核與傳統的系統相比要小得多。嵌入式系統一般沒有系統軟件和應用軟件的明顯區分,不要求功能的設計和實現過于復雜,這既有利于控制系統成本,同時也有利于保障系統安全。l 專用性強。嵌入式系統的個性化很強,軟件和硬件的結合非常緊密,一般要針對硬件進行軟件的設計,即使在同一品牌、同一系列的產品中也需要根據硬件的變化和增減對軟件不斷進行修改。同時針對不同的任務,往往需要對系統進行較大更改,程序的編譯下載也要同系統相結合。l 實時操作系統支持。嵌入式系統的應用程序可以不需要操作系統的支持直接運行,但為了合理地調度多任務,充分利用系統資源,用戶必須自行選配實時操作系統(Real-Time Operating System,RTOS)開發平臺,這樣才能保證程序執行的實時性和可靠性,減少開發時間,保障軟件質量。l 專門開發工具支持。嵌入式系統本身不具備自主開發能力,即使在設計完成以后用戶通常也不能對程序功能進行修改,必須有一套開發工具和環境才能進行開發。開發工具和環境一般基于通用計算機的軟硬件設備、邏輯分析儀和示波器等。在嵌入式系統的軟件開發過程中,采用C語言將是最佳的選擇。由于匯編語言是非結構化的語言,不能勝任大型的結構化程序設計,必須采用更高級的C語言進行設計。1.1.2 片上系統和可編程片上系統隨著半導體技術的不斷發展,片上系統(System on a Chip,SOC)成為嵌入式應用領域的熱門方向之一。SOC最大的特點是成功實現了軟硬件的無縫結合,直接在處理器芯片內嵌入操作系統的代碼模塊。此外,SOC有極高的綜合性,在一個芯片內部運用VHDL等硬件描述語言可以實現復雜的系統。用戶使用SOC,不需要再像傳統的系統設計一樣繪制龐大復雜的電路板,而只需要使用相應的開發工具,將處理器、存儲器和接口邏輯集成在一起,并開發相應的軟件,編譯仿真之后就可以直接交付芯片廠商進行生產。SOC通常是專用集成電路(ASIC),所以不為用戶所熟知,而且其開發周期長,生產成本高,產品不能進行修改。隨著可編程邏輯器件(Programmable Logic Device,PLD)的廣泛應用,可編程片上系統(System on a Programmable Chip,SOPC)越來越多地受到人們的關注。SOPC是在PLD上實現SOC,PLD的可編程性使SOPC的設計和實現非常方便。用戶可以靈活地進行系統硬件和軟件設計,還可以在現場進行系統修改。PLD性能的不斷提高,也使SOPC的性能越來越高。Altera是PLD的大型生產商,生產的PLD有CPLD(Complex Programmable Logic Device,復雜可編程邏輯器件)和FPGA(Field Programmable Gate Array,現場可編程門陣列)兩大系列。CPLD和FPGA的結構有所不同,但功能差別不大,作為新產品的FPGA要比早期的CPLD性能強大。Altera的SOPC嵌入式處理器(Embedded Processor)解決方案有兩種:嵌入ARM922T硬核的Excalibur器件和用于FPGA的可配置Nios嵌入式處理器軟核。1.2 Nios嵌入式處理器1.2.1 Nios嵌入式處理器特性Nios嵌入式處理器是用戶可配置的通用RISC嵌入式處理器,它是一個非常靈活和強大的處理器。Nios處理器的易用和靈活已經使它成為世界上最流行的嵌入式處理器。嵌入式設計者利用SOPC Builder系統開發工具能夠很容易地創建自己的處理器系統。SOPC Builder可用于集成一個或多個可配置的帶有許多標準外圍設備的Nios CPU,并利用自動形成的Avalon交換結構總線將這些系統連接在一起??膳渲肗ios CPU是Nios處理器系統的核心,它能夠被靈活配置而適用于各種各樣的應用。例如一個16位Nios CPU,在片內ROM中運行一個小程序,可以制作成一個實際的序列發生器或控制器,并且能夠代替固定編碼的狀態機。又如一個32位Nios CPU,與外圍設備、硬件加速單位和自定義指令一起,構成一個功能強大的32位嵌入式處理器系統。Nios嵌入式處理器的獨特性(例如自定義指令和并行的多控制器Avalon交換結構總線)使它不同于市場上其他的處理器軟核。這些特性允許Nios用戶通過用簡單的而非傳統的方法加速和優化自己的設計。32位和16位Nios嵌入式處理器典型配置的比較如表1-1所示。表1-1 Nios嵌入式處理器典型配置比較特 性32位Nios CPU16位Nios CPU數據總線寬度/bit3216算術邏輯單元(ALU)寬度/bit3216內部寄存器寬度/bit3216地址總線寬度/bit3216指令長度/bit1616邏輯單元數(LEs)(典型值)1500125MHz125MHz注:其具體數值與器件結構有關Nios嵌入式處理器指令系統結構的設計具有以下特性:(1) 在Altera FPGA中有效實現。l 使用最少的邏輯單元。l 使用最少的存儲單元。l 最大的時鐘速度。(2) 用SOPC Builder容易進行系統集成。l 簡單的存儲器接口。l 標準的可配置外圍設備庫。l 在CPU、外圍設備和存儲器之間自動形成Avalon交換結構接口邏輯電路。(3) 為編譯嵌入式軟件優化指令系統結構。l 靈活的尋址方式。l 大容量內部寄存器組的有效利用。l 快速的中斷處理。(4) 硬件加速模塊。l 有效算法實現。l MSTEP指令:單步乘法單元。l MUL指令:快速整數乘法單元。Nios嵌入式處理器支持Altera主流FPGA的全部系列,器件支持如表1-2所示。表1-2 Nios嵌入式處理器器件支持器 件說 明Stratix II最高的性能,最高的密度,大量的存儲資源,特性豐富的平臺Stratix GX最高的性能結構,高速串行收發器Cyclone低成本,替代ASIC,適用于價格敏感的應用APEX II高密度,高性能,支持高速差分I/O標準Mercury高性能,高帶寬,中密度,包括時鐘數據恢復支持Excalibur高性能,處理器硬核解決方案APEX 20K/KE/KC高性能,中到高密度FLEX 10K/KE低成本,低到中密度ACEX 1K低成本,低到中密度HardCopy高密度,大批量ASIC替換器件隨著超過1萬個Nios開發套件的交付使用,Nios嵌入式處理器已經成為嵌入式處理器軟核的標準。Nios嵌入式處理器的系統組件、開發工具和開發平臺如表1-3所示。表1-3 Nios嵌入式處理器系統組件、開發工具和開發平臺系 統 組 件開 發 工 具開 發 平 臺CPUSOPC Builder開發套件Avalon交換結構總線Quartus II設計軟件軟件授權外圍設備GNUPro嵌入式軟件開發工具片內調試模塊第三方工具1.2.2 Nios嵌入式處理器系統組件Nios嵌入式處理器系統包括一個或多個Nios CPU、Avalon交換結構總線和其他組件。Altera的SOPC Builder系統開發工具可以自動生成這些組件以及連接它們的總線。下列組件可用于生成基于Nios處理器的嵌入式系統:l Nios CPU。 l Avalon總線。l 外圍設備和存儲器接口。l 片內調試模塊。設計者能夠使用SOPC Builder設計Nios處理器系統,如圖1-1所示。圖1-1 Nios處理器系統Nios處理器系統包含帶指令和數據高速緩存的Nios CPU、片內調試模塊、直接存儲器存?。―MA)控制器、常用外圍設備(PIO、UART、以太網端口和存儲器接口等)和并行多控制器Avalon交換結構總線。1.2.3 Avalon交換結構總線 Avalon交換結構總線是Altera開發的用于Nios嵌入式處理器的參數化接口總線,由一組預定義的信號組成,用戶用這些信號可以連接一個或多個IP模塊。Altera的SOPC Builder系統開發工具自動地產生Avalon交換結構總線邏輯。Avalon交換結構總線需要極小的FPGA資源,提供完全的同步操作,它的重要特性有:l 簡單的基于向導的配置。l 并行的多控制器。l 多達4GB的地址空間。l 同步接口。l 嵌入的地址譯碼。l 帶延遲的讀寫操作。l 數據流處理。l 動態的外圍設備接口大小。(1)簡單的基于向導的配置Altera的SOPC Builder系統開發工具中易于使用的圖形用戶界面引導用戶進行增加外圍設備、指定控制器和從屬設備關系以及定義存儲地址等操作。Avalon交換結構總線按照用戶從向導界面的輸入自動形成。(2)并行的多控制器Nios開發者可以按照自己的特殊操作需要創建自定義的系統總線結構,優化自己的系統數據流。Avalon交換結構總線支持所有總線控制器的并行事務處理,并自動地為共享外圍設備和存儲器接口進行仲裁。另外,直接存儲器存?。―MA)設備能被用于與其從屬設備一起提供總線控制能力。在傳統的總線中,單個仲裁器控制一個或多個總線控制器跟總線從屬設備進行通信,由于每次只能有一個控制器可以存取系統總線而形成帶寬瓶頸,如圖1-2所示。圖1-2 傳統總線結構Avalon交換結構總線使用從屬設備側仲裁技術,使并行多控制器操作最大限度地提高系統性能。如果多個控制器同時存取從屬設備,則由從屬設備側仲裁決定哪一個控制器得到從屬設備的存取權,如圖1-3所示。圖1-3 并行多控制器Avalon交換總線結構在這樣的系統中,快速以太網等高速外圍設備可以在不暫停CPU的情況下直接存取數據存儲器。通過允許獨立于CPU的存儲器存取,Avalon交換結構總線優化了數據處理過程,提高了系統吞吐量。(3)多達4GB的地址空間存儲器和外圍設備可以映射到32位地址空間的任何地方。換句話說,CPU(或其他的總線控制器)有多達4GB的可尋址存儲器范圍。(4)同步接口所有的Avalon信號和Avalon總線時鐘同步,這使相應的Avalon交換結構總線時間性能簡單化,便于高速外圍設備的集成。(5)嵌入的地址譯碼SOPC Builder創建的Avalon交換結構總線自動地為所有外圍設備(甚至用戶自定義外圍設備)形成片選信號,這可極大地簡化基于Nios處理器系統的設計。分離的地址和數據通路為片內用戶邏輯提供了一個極其容易的連接,用戶自定義外圍設備不需要數據和地址總線周期譯碼。(6)帶延遲的讀寫傳輸Avalon交換結構總線可以完成帶延遲的讀寫操作,這種延遲傳輸是很有用的。這是因為,控制器可以先發出讀寫請求,在執行一個無關的任務后接收數據。這項特性對發送多個讀寫請求到一個已知延遲的從屬設備也非常有用。例如,這對在連續的地址內同時進行取指令操作和DMA傳輸非常有好處。在這種情況下,CPU或DMA控制器可以預取預定的數據,以減少同步存儲器的平均存取延遲。(7)數據流處理帶Avalon交換矩陣的數據流處理在數據流控制器和數據流從屬設備之間建立一個開放的通道,以完成連續的數據傳送。這些通道允許數據在控制器和從屬設備對之間流動??刂破鞑槐剡B續地讀取從屬設備中的狀態寄存器來決定從屬設備是否可以發送或接收數據。數據流處理在控制器和從屬設備對之間獲得最大的數據吞吐量,并避免在從屬設備上出現數據溢出。這對DMA傳輸尤其有用。(8)動態的外圍設備接口大小動態的總線大小允許Nios開發者使用低成本的窄的存儲器件,這些存儲器件可以和Nios CPU的總線大小不匹配。例如,32位數據總線的系統可以容易地集成8位閃速存儲器器件。在這樣的系統中,如果必要的話,動態的總線大小調整邏輯自動地執行多總線周期,以便從窄的外圍設備中取出寬的數據值。SOPC Builder自動地添加完成大小調整和定位調整所需要的專用邏輯。第2章 Nios嵌入式系統開發板整體理論分析2.1 系統設計目標以Altera公司的Cyclone系列的FPGAEP1C6為核心,在其外圍擴展FLASH、SRAM、A/D、D/A、鍵盤、LED顯示、LCD顯示、串口通信、VGA接口、PS2接口、USB接口等器件,使其成為一個完整的嵌入式開發系統,系統要盡量采用模塊化設計,各個模塊之間可以自由組合。2.2 系統設計原理系統設計原理框圖如下圖2-1所示。圖2-1 系統設計原理框圖當開發板加電時,開發板上的配置邏輯使用保存在串行配置器件EPCS1中的硬件配置數據配置Cyclone,器件配置完成后Cyclone中的Nios處理器開始工作,執行Flash中的啟動代碼程序,然后Flash中的用戶程序加載到SRAM中執行。系統提供3.3V、1.5V穩定電壓,支持JTAG下載口配置FPGA,通過兩個歐式396插座引出剩余用戶I/O口、FPGA鎖相環輸出、3.3V穩定電源和多個接地引腳等。系統設計時,在器件的每一電源引腳上都并接0.1u,0.01u,0.001u三個濾波電容,不僅濾除低頻干擾信號,而且有效的消除了高頻干擾,保證了系統能夠穩定可靠的工作。 系統布線時充分考慮到PCB布局對信號傳輸的影響,盡量使所有的地址線到達FPGA的距離接近,避免高頻信號傳輸過程中的相位變化引起誤判,數據線的布局也遵循同樣的原則。最終,用兩層板實現了一般四層板的功能,不僅面積合適、工作穩定,而且降低了開發板成本。與主開發板配套使用的,還有另一塊底板,底板可以看作是一個載體,在其上不僅留出了主開發板的接口,而且留出了A/D、D/A、LCD和鍵盤等模塊的接口,這些模快即插即用,配合主開發板工作,使其能夠完成復雜的EDA設計。主板和底板的配合使用見圖2-2所示。圖2-2 開發板組合結構圖2.3 開發板組件與理論分析Nios嵌入式系統開發板為開發嵌入式系統提供硬件平臺,本畢設這次使用的FPGA為Cyclone系列的EP1C6Q240C8,其具有5980個邏輯單元和234kbits的片內存儲器。另外,開發板上有Cyclone器件專用的串行配置器件(EPCS1)及其JTAG插座。默認參考設計提供從主計算機向開發板下載新的用戶定義硬件和軟件配置數據的功能,下載可以使用串行電纜、JTAG電纜等。GERMS監控程序(Altera提供的Nios處理器監控程序)通過RS-232串行口進行控制。Nios開發板具有如下組件:l Cyclone EP1C6Q240C8器件l 8MBit Flashl 256kByte SRAMl 兩個RS-232 DB9串行口l 兩個3.3V擴展插座,一共包括92個Cyclone用戶I/O引腳l 八個連接到Cyclone用戶I/O引腳的發光二極管l 四個連接到Cyclone用戶I/O引腳的按鈕開關l EPCS1串行配置器件l 用Altera下載電纜連接Cyclone器件的JTAG插座l 50MHz振蕩器和零偏移時鐘分配電路l 加電復位電路當開發板加電時,開發板上的配置邏輯使用保存在串行配置器件EPCS1中的硬件配置數據配置Cyclone,器件配置完成后Cyclone中的Nios處理器開始工作,執行Flash中的啟動代碼程序。Nios開發板的組件簡單介紹如下。(1)Cyclone EP1C6Q240C8器件本Nios開發板上的FPGA是240腳FBGA封裝的Cyclone EP1C6Q240C8器件,其特性如下表2-1所示。表2-1 Cyclone EP1C6Q240C8器件特性特性數目邏輯單元數5980M4K RAM塊數20總RAM位數92160鎖相環個數2用戶I/O引腳數185Cyclone器件有兩種配置方法:l 使用運行在主機算計上的Quartus軟件,通過連接到JTAG插座的Altera下載電纜直接配置Cyclone器件l 通過主動串行配置器件EPCS1/EPCS4配置Cyclone器件(2)Flash存儲器件Nios上用的Flash為8MBit的存儲器件AM29LV800B,它用于兩個目的:l 在FPGA器件上實現的Nios嵌入式處理器可以使用Flash存儲器作為通用只讀存儲器和非易失性存儲器l Flash存儲器可以保存FPGA配置數據,配置數據在加電時通過配置控制器裝入FPGA器件Nios參考設計的硬件配置數據預存在Flash存儲器中,參考設計的硬件配置數據裝入后,其中的監控程序可以將文件下載到Flash存儲器,Nios嵌入式處理器軟件包括擦寫Flash存儲器的程序。Flash存儲器與SRAM共用地址和數據總線。(3)雙SRAM器件Nios開發板上有兩個64k16位的異步SRAM器件IDT71V016S,它們和FPGA器件相連作為Nios嵌入式處理器的通用存儲器使用,兩個16位器件可以構成32位存儲器,預裝的Nios參考設計把SRAM器件作為連續的128k16位零等待主存儲器。SRAM和Flash存儲器共用地址和數據總線。(4)RS-232串行口插座Nios開發板上有兩個標準的9針串行口插座,用連接到串行口的標準9針串行電纜實現與主計算機的串行通信。開發板上的兩個串行口一個用來調試,另一個用來提供給用戶使用,兩個串行口以相同的方式連接到FPGA,Nios處理器系統可以將任何一個串行口用于任何目的,不受原理圖上標記的限制。兩個FPGA邏輯端口能夠傳送所有的RS-232信號,設計時可以只使用需要的信號,例如RXD(接收數據)和TXD(發送數據)。當發送或接收數據時RXD和TXD信號的發光二極管給出相應的指示。(5)擴展插座在Nios開發板上有兩個96針的歐式插座396作為FPGA用戶I/O引腳的擴展插座。兩個插座包含以下引腳:l 96個用戶I/O引腳,全部連接到FPGA器件的用戶I/O引腳,每個信號與擴展插座之間有一個33歐姆以實現隔離和電平保護l 經過緩沖的零偏移FPGA鎖相環PLL輸出l 3.3V電源引腳l 5V電源引腳l 多個地引腳(6)發光二極管Nios開發板上有八個發光二極管LED1LED8,其直接連接到FPGA的I/O引腳上,當FPGA引腳輸出高電平時對應的發光二極管亮。(7)按鈕開關Nios開發板上有五個按鈕開關,其中四個為普通按鍵開關,每個開關一端通過下拉電阻接地,同時這一端還要通過帶史密特觸發的反向器連接到FPGA的通用I/O引腳,以實現消抖功能,另一端直接接3.3V電源,當開關按下時FPGA引腳輸入高電平。另一個位是復位開關,用于系統的全局復位,按下時輸入低電平。(8)串行配置器件串行配置器件是具有串行接口的Flash存儲器件,可以存儲Cyclone器件的配置數據并在上電或重新配置時將配置數據重新裝入到Cyclone器件。利用Cyclone器件新的數據壓縮特性,設計者可以使用較小的串行配置器件配置大的Cyclone器件,串行配置器件不能級連。SOPC Builder主動串行存儲器接口組件允許微處理器系統訪問串行配置存儲器。(9)電源電路Nios開發板可以用5V未穩壓的電壓源,板上電源電路產生3.3V、1.5V穩定電源。3.3V電源用于所有Cyclone器件I/O引腳的電源,也用于FLASH和SRAM等3.3V供電的器件。1.5V電源只用做Cyclone器件核心的電源,不用于任何插座。(10)JTAG連接JTAG插座直接與Cyclone器件的專用JTAG引腳相聯(TCK、TDI、TDO和TMS),Quartus軟件可以通過ByteBlaster下載電纜用新的硬件映像直接配置Cyclone器件,Nios嵌入式處理器調試程序也可以通過連接到插座的電纜訪問Nios片內調試模塊OCI。2.4 開發板電路設計原理圖與PCB布線圖原理圖如下圖2-3所示。圖2-3 Nios嵌入式開發板原理圖印制電路板PCB圖如下圖2-4所示。圖2-4 印制電路板PCB圖第3章 Nios嵌入式系統開發板硬件開發環境3.1 硬件開發環境概述Nios開發板為開發嵌入式系統提供硬件平臺,Nios開發板具有如下組件:Cyclone EP1C6Q240C8器件、8MBit Flash、256kByte SRAM、兩個RS-232 DB9串行口、兩個3.3V擴展插座,一共包括92個Cyclone用戶I/O引腳、八個連接到Cyclone用戶I/O引腳的發光二極管、四個連接到Cyclone用戶I/O引腳的按鈕開關、EPCS1串行配置器件、用Altera下載電纜連接Cyclone器件的JTAG插座、50MHz振蕩器和零偏移時鐘分配電路和加電復位電路等。下面詳細的介紹主要組件。3.2 FPGA:EP1C6QC240C8的特性和電路設計Cyclone器件是基于1.5V、0.13um、全銅SRAM工序,多達20060個邏輯單元(LE)和288KB SRAM的FPGA器件,具有時鐘鎖相環路(PLL)、連接DDR SDRAM的雙數據速率(DDR)接口和快速環路RAM(FCRAM)內存需求,支持不同的I/O標準,包含數據速率達311Mb/s的LVDS和66MHz 32位外設組件互連(PCI)接口。3.2.1 特性和封裝Cyclone器件具有如下特性,如表3-1所示。l 291020060個邏輯單元(LE)l 多達294912位RAM(36864B)l 支持低成本串行配置器件(EPCS1或EPCS4)配置l 支持LVTTL、LVCMOS、SSTL-2和SSTL-3I/O標準l 支持66MHz 32位PCI標準和高速(311Mb/s)LVDSl 兩個PLL提供時鐘倍頻和相移l 多達八個全局時鐘線,每個邏輯塊陣列(LAB)可用六個時鐘源l 支持DDR SDRAM(133MHz)、FCRAM和單數據速率(SDR)SDRAMl 支持知識產權(IP)核,包含Altera MegaCore函數和AMPP mega函數表3-1 Cyclone器件特性特性EP1C3EP1C6EP1C12EP1C20邏輯單元(LE)291059801206020060M4K RAM塊(12836位)13205264總RAM位5990492160239616294912鎖相環(PLL)1222最大用戶I/O引腳1041852493013.2.2 引腳說明240引腳PQFP封裝的引腳功能見附3。各引腳的定義見附3。3.2.3 工作條件Cyclone器件有民用和工業兩個等級,工業級器件可能有速度等級可用性限制。Cyclone器件的絕對最大額度定值見附3。Cyclone器件推薦工作條件見附3。Cyclone器件的直流工作條件見附3。3.3 串行配置器件:EPCS1的特性和電路設計3.3.1 Cyclone FPGA的配置Cyclone器件可以用以用多種配置方式,這些配置方式包括主動串行配置、被動串行配置、基于JTAG口的配置,其中主動串行配置是用一種新的低成本的串行配置器件。除此之外,Cyclone器件還可以接收壓縮數據流,并且實時的解壓縮這些數據以減少配置所需空間的大小,縮短配置所需的時間。Cyclone器件用SRAM單元來存儲配置數據,因為SRAM存儲器是不穩定的,所以配置數據在每次系統上電時都需要下載到Cyclone器件中,配置數據可以通過主動串行方式、被動串行方式和JTAG等方式下載,如表3-2所示。表3-2 Cyclone配置方式配置方式配置需求描述主動串行方式串行配置器件(EPCS1或者EPCS4)被動串行方式增強型的配置器件(EPC4、EPC8或者EPC16)EPC2、EPC1串行配置器件智能主機(微處理器)下載電纜JTAG接口方式下載電纜智能主機(微處理器)標準的測試和編程Jam語言(STAPL)可以通過MSEL1和MSEL0兩個引腳的電平高低來選擇Cyclone器件的配置方式,見表3-3。如果系統設計只要求用到一種配置方式,那么兩個MSEL腳就可以接到VCC或者GND上,如果設計要求多于一種配置方式,那么MSEL腳在Cyclone器件配置完成以后可以轉換。在用戶模式下把這兩個腳固定起來并不會影響器件操作。盡管如此,MSEL腳在開始重新配置時必須有效。表3-3 配置數據源MSEL1.0配置電路數據源00主動串行(AS)低成本串行配置器件EPCS1或EPCS401被動串行(PS)EPC2配置器件、MasterBlaster/ByteBlasterMV下載電纜或串行數據源10或者11JTAGMasterBlaster/ByteBlasterMV下載電纜或微處理器,Jam或JBC文件配置完成以后,Cyclone器件將會初始化所有的寄存器和I/O接口,然后進入用戶模式下,執行用戶設計文件。Cyclone器件通過串行配置器件進行配置時,串行配置器件上的4個控制引腳nCS、DCLK、ASDI、DATA分別與Cyclone器件的控制信號nCSO、DCLK、ASDO、DATA0直接相連。通過下載電纜編程的串行配置器件用AS配置方式對Cyclone器件進行配置的連接如圖3-1所示。圖3-1 用AS配置方式配置Cyclone器件Cyclone器件在配置流程中作為配置控制器使用,通過nCSO信號將nCS置為低電平選中串行配置器件,通過DCLK向串行配置器件提供串行配置數據,通過ASDO向串行配置器件發送指令和地址,串行配置器件在DCLK的下降沿向Cyclone器件的DATA0發送配置數據,配置數據在DCLK的上升沿鎖存到Cyclone器件中。Cyclone器件在AS配置方式配置期間控制CONF_DONE和nSTATUS引腳。如果CONF_DONE信號在配置結束時不變為高電平或變為高電平過早, Cyclone將nSTATUS引腳變為低電平開始重新配置。配置成功后,Cyclone器件釋放CONF_DONE引腳,允許外部10k歐姆電阻將其上拉到高電平。CONF_DONE變為高電平后Cyclone器件開始初始化,并在136個時鐘周期內完成,初始化后Cyclone器件進入用戶方式。 3.3.2串行配置器件: EPCS1/EPCS4基于SRAM的Cyclone器件在每次系統初始化或需要更新配置時必須重新裝配數據。串行配置器件是具有串行接口的Flash存儲器件,可以存儲Cyclone器件的配置數據,并在上電或者重新配置時將配置數據重新載入到Cyclone器件。串行配置器件有如下特性:l 串行配置Cyclone器件的1Mb (EPCS1)和4Mb (EPCS4)存儲器件l 低成本、低引腳數和非易失性存儲器l 配置電流小,等待狀態電流接近零,3.3V工作l 易于使用的4引腳接口,8引腳小輪廓集成電路(SOIC)封裝l 允許Nios處理器通過主動串行(AS)存儲器接口存取未用的Flash存儲器l 多于10萬次擦除/編程的可編程存儲器l 支持ByteBlater2下載電纜編程l 支持Altera編程單元(AUP)編程和BP Microsystems及其他供應商的編程硬件l 軟件設計支持Altera Quartus開發系統l 提供存儲器陣列擦除(所有位設置為1)串行配置器件用來配置Cyclone器件,不能配置其他已有的器件系列。使用新的數據壓縮特性,可以用小容量的串行配置器件配置大容量的Cyclone器件。Cyclone器件配置文件容量和使用的串行配置器件如表3-4所示。表3-4 Cyclone器件串行配置器件Cyclone器件配置文件大小(Mbits)串行配置器件EPCS1(1Mbits)EPCS4(4Mbits)EP1C30.628可以可以EP1C61.167可以可以EP1C122.324可以EP1C203.559可以串行配置器件的引腳說明如下表3-5所示。表3-5 串行配置器件引腳說明引腳名稱引腳號引腳類型說明nCS1輸入低電平有效片選輸入信號,在有效指令的開始和結束時改變,高電平時不選中器件,DATA信號處于三態;低電平時選中器件,器件進入活動方式。加電后需要在nCS上有一個下降沿,串行配置器件才能正常操作DATA2輸出串行數據輸出信號,在讀取/配置操作期間從串行配置器件向Cyclone器件串行傳送數據,通過將nCS置為低電平選中串行配置器件,DATA信號在DCLK的下降沿改變。ASDI5輸入主動串行數據輸入信號,用于向串行配置器件傳送數據,接收編程輸入到串行配置器件的數據,在DCLK的上升沿鎖存數據DCLK6輸入串行數據時鐘輸入信號,由Cyclone器件提供,用于串行接口定時。出現在ASDI上的數據在DCLK的上升沿鎖存到串行配置器件中,DATA上的數據在DCLK的下降沿改變,在DCLK的上升沿鎖存到Cyclone器件中VCC3、7、8電源3.3V電源引腳GND4地地引腳3.3.3 EPCS1的電路設計 如圖3-2所示。圖3-2 開發板上原理圖中EPCS1的連接3.4 SRAM:IDT71V016的特性和電路設計3.4.1 器件特性IDT71V016有如下特性:l 64k16位超高速CMOS靜態SRAMl 商業用(0到70)和工業用(-40到85)兩種l 與時鐘周期相等的存取時間:商業用15ns工業用20nsl 一個片選端和一個輸出使能端l 雙向的輸入和輸出與LVTTL相符l 通過未選中芯片實現低電源功耗l 低字節和高字節使能引腳l 單電源3.3V供電l 44腳的SOJ封裝和44腳的TSOP封裝3.4.2 IDT71V016工作方式IDT71V016是一種高速靜態的SRAM,其容量為1048576Bit(64k16位)。IDT71V016是利用IDT高性能高可靠性的CMOS工藝制造而成的。IDT先進的工藝,還有創造性的電路設計,為我們提供了一種解決高速存儲需要的途徑。IDT71V016有一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高中生涯規劃與數學學科邏輯推理能力培養研究論文
- 歷史文化遺址保護教育對初中生歷史實踐能力培養的作用研究論文
- 節能節水等管理制度
- 英語培訓班管理制度
- 茶館俱樂部管理制度
- 低壓成套開關設備和控制設備設計規范書
- 趕集網簡介服務類-媒體資源網-中國權威的廣告媒體交易平臺
- 2025年廣東省深圳市南山第二外國語學校(集團)學府中學中考數學三模試卷
- 綠色卡通插畫綠植奇妙的種子認識種子主題
- 山東省青島市城陽區2024-2025學年九年級下學期期中歷史試題(含答案)
- 職業學校學生崗位實習三方協議范本
- 河北省唐山市路南區2023年數學五年級第二學期期末經典試題含解析
- 2023年廣東初中學業水平考試生物試卷真題(含答案)
- 奶茶店消防應急預案
- 工程制圖及機械CAD基礎知到章節答案智慧樹2023年吉林大學
- 初級會計職稱考試教材《初級會計實務》
- 第二十二課-重屬和弦前方的共同和弦
- 碳酸飲料生產工藝流程圖
- 帶電跨越10kV線路施工方案
- 土壤肥料學野外教學實習分析
- GB/T 8012-2000鑄造錫鉛焊料
評論
0/150
提交評論