【正文】
作 SD卡,分別是 CMD0、 CMDCMD1 CMD24[1]。 指令格式如 所示 : 圖 44 SD卡命令格式 Command: SPI 通信命令編號 ; Command: SPI 通信附加命令 ; CRC: 冗余校驗 碼 。 如 圖 43 所示 : N I O S I IC SS C L KM O S IM I S OC SS C L KD ID OS D 卡 圖 43 SD卡硬件連接 西南科技大學本科生畢業(yè)論文 12 SD卡通信協(xié)議 1. SD 卡命令格式 在 SPI 工作模式下, SD 卡具有 CMD0~CMD63 條指令 。 由于 NIOS II 沒有自帶 SD 控制器,所以,本設(shè)計采用 SPI 通信模式 。而 SPI 方式采用 4 線制,使用CS、 CLK、 DataIn、 DataOut 進行數(shù)據(jù)通信 [2]。 圖 41 SD卡結(jié)構(gòu)圖 西南科技大學本科生畢業(yè)論文 11 2. SD 卡的通信方式 SD 卡支持兩種總線方式: SD 方式與 SPI 方式。目前, SD 卡在數(shù)碼相機中正在迅速普及 [2],大有成為主流之勢。 SD 卡的結(jié)構(gòu)能保證數(shù) 字文件傳送的安全性,也很容易重新格式化,所以有著廣泛的應用領(lǐng)域,音樂、電影、新聞等多媒體文件都可以方便地保存到 SD 卡中。 SD 卡提供不同的速度,它是按 CDROM 的 150kB/s 為一倍速的速率計算方法來計算的。 西南科技大學本科生畢業(yè)論文 10 第 4 章 硬件驅(qū)動程序設(shè)計 SD 卡驅(qū)動程序設(shè)計 SD卡簡介 SD 卡 ( Secure Digital Memory Card)是一種基于半導體快閃記憶器的新一代記憶設(shè)備。 在添加完各個模塊后,還需要為各個模塊指定名稱、類型、存儲器地址映像和系統(tǒng)外設(shè)的中斷設(shè)置,如圖 42 所示。上電后, Bootloader 程序會將操作系統(tǒng)的內(nèi)核程序由 Flash 調(diào)入 SDRAM 中 [2],這樣可提升系統(tǒng)的運行速度。 SDRAM 空間較大可作為操作系統(tǒng)內(nèi)核的運行空間。這考慮到設(shè)計中不需要過多的其他功能,所以我選擇了 Level1[1]。 完成軟核類型的選擇之后,進行 JTAG Debug Module 的設(shè)置 ,即 JTAG 調(diào)西南科技大學本科生畢業(yè)論文 9 試時所用到的功能模塊。 Nios II/f 占資源最多,功能也最多,速度 最快 。從上面的介紹可知,本設(shè)計主要需要添加的外圍模塊及配置如下: (1) Nios II/s CPU, SOPC Builder 提供了三種類型, Nios II/e 占用資源最少600800LEs,功能也最簡單,速度最慢。 SOPC Builder具有友好的圖形用戶界面,為用戶提供強大的設(shè)計平臺以搭建基于總線的系統(tǒng),用戶可以從 Altera 提供的 IP 庫中選取組件,如處理器、 SDRAM、 Flash、各種IO 口等,并可通過選擇 配置相應的參數(shù) [2],還有包含操作系統(tǒng)內(nèi)核的嵌入式軟件開發(fā)工具。本系統(tǒng)采用 AS 模 式和 JTAG 模式 [1]。 FPGA 中的 SRAM 是易失性的,每次上電之前 [1],配置數(shù)據(jù)必須重新 FPGA 中。再由 SRAM 配置 FPGA 片內(nèi)的邏輯單元。主動配置是當系統(tǒng)上電后, FPGA 通過串行方式讀取EPCS16 中的數(shù)據(jù), FPGA 將壓縮格式的數(shù)據(jù)解壓后,就是 FPGA 的配置程序,包括 Nios II 和用戶自定義邏輯的所有 SOPC 程序。 Nios II SDRAM 控制器可實現(xiàn) Avalon 總線接口、透明的 SDRAM 初始化處理、刷新和其它 SDRAM 需要的操作 [3],使 SDRAM 接口看 起來像簡單的等待信號的線性存儲器接口。 Flash 存儲器通過 Avalon 三態(tài)橋與外擴的數(shù)據(jù)總線和地址總線公用數(shù)據(jù)。 在 FPGA器件上實現(xiàn)的 Nios II嵌入式處理器可以使用 Flash存儲器作為通用只讀存儲器和非易失性存儲器, 將基于 Nios II處理 器的應用程序燒寫到 Flash中,在程序運行前將 Flash 中的代碼拷貝到速度更快的易失性存儲器 SRAM 中執(zhí)行。 外部存儲器 由于需要運行 uClinux 及 Boa Web 服務(wù)器,所以 FPGA 芯片需要內(nèi)核程序存儲器、 SDRAM 存儲器。 EP2C35F672C6 還包含 92Kbits 的片上 RAM,也就是說可以存儲 10K 字節(jié)的數(shù)據(jù) [1]。 開發(fā)平臺資源如下: ? Cyclone II EP2C35F672C6 FPGA; ? 10/100M 以太網(wǎng)接口 ; ? RS232 接口 ; ? USB 接口 ; ? PS/2 鍵盤、鼠標接口 ; 西南科技大學本科生畢業(yè)論文 7 ? 8MBytes SDRAM; ? 512K SRAM; ? 4 MBytes Flash 存儲器 ; ? SD 卡接口 ; ? LCD1602; ? 8 個 7 段數(shù)碼管 ; ? 18 個撥動開關(guān) ; ? 18 紅色 LED; ? 9 個綠色 LED; ? 4 個防抖動按鍵 ; ? 50 MHz 晶振 ; ? 80 個外接擴展 GPIO 口 。諾依曼結(jié)構(gòu),這樣就使得系統(tǒng)總線兼有哈佛結(jié)構(gòu)的高效率與馮諾依曼結(jié)構(gòu)的靈活性。由于系統(tǒng)的總線控制器是在 FPGA 中實現(xiàn)的,可以進行靈活的配置,在某些外設(shè)需要具有馮 這個特性比較適合那些要求高處理速度 [1],又不便于提高系統(tǒng)主頻的場合。用戶自定義指令在處理方式上同原有指令集中的指令是一樣的, ALU 面前它們一律平等,所以在處理速度方面等同于原有指令。 由于 Nios II 是在 FPGA 上實現(xiàn)的,所以先天的賦予了它很多獨有的新特性,使之成為可裁剪、可調(diào)整、可補充的系統(tǒng),更使其成為軟硬件緊密融合的系統(tǒng)。所以 [1],同一個軟件可以不做任何的修改就可以三個型號間交換。 E 型的體積最小,只有 550 個 LE; f 型的性能最高,最大可以達到200DMIPS 以上; s 型又叫標準型,其體積與性能介于 e 型與 f 型之間。其最大處理能力是第一代軟核的 3 倍,而西南科技大學本科生畢業(yè)論文 6 小的體積只有 550LeS[1],是第一代軟核的 1/2 大。 Nios II 處理器是 Altera 公司在 2021 年推出的第二代軟核 CPU。 NIOS II 嵌入式軟核微處理器介紹 Nios以及 Nios II處理器是 Altera公司為其 FPGA產(chǎn)品配套開發(fā)的軟核 CPU。這種 SOPC 系統(tǒng)是指將成功實現(xiàn)于 FPGA器件上的 SOPC 系統(tǒng)通過特定的技術(shù)直接向 ASIC 轉(zhuǎn)化。這種 SOPC 系統(tǒng)是指在 FPGA 中嵌入軟核處理器,如: NIOS II 核等。這種 SOPC 系統(tǒng)是指在 FPGA 中預先植入處理器。 Altera 的 Quartus II 曾經(jīng)是應用廣泛、非常受歡迎的 FPGA(可編程邏輯器件 )設(shè)計軟件,它對于 FPGA 和 CPLD 這些 PLD 器件的應用推廣、電路部件和嵌入式系統(tǒng)的設(shè)計 [2],以及 SOPC 技術(shù)的推廣有著巨大的貢獻。同時,新的調(diào)試技術(shù)也已不斷涌現(xiàn)出來 [5],如 Altera公司的片 內(nèi)邏輯分析儀 SignalTap II 就是一種非常好的片內(nèi)實時調(diào)試工具。 SOPC 設(shè)計技術(shù)涵蓋了嵌入式系統(tǒng)設(shè)計技術(shù)的全部內(nèi)容,除了以處理器和實時多任務(wù)操作系統(tǒng)( RTOS)為中心的軟件設(shè)計技術(shù)、以 PCB 和信號完整性分析為基礎(chǔ)的高速電路設(shè)計技術(shù)以外, SOPC 還涉及目前以引起普遍關(guān)注的軟硬件協(xié)同設(shè)計技術(shù)。 SOPC 是 PLD 和 ASIC 技術(shù)融合的結(jié)果,目前 的 ASIC 產(chǎn)品制造價格西南科技大學本科生畢業(yè)論文 5 仍然相對昂貴,而集成硬核或軟核 CPU、 DSP、存儲器、外圍、 I/O 及可編程邏輯的 SOPC芯片在應用的靈活性和價格上有極大的優(yōu)勢 [3]。有些可編程器件內(nèi)還可以包含部分可編程模擬電路??删幊唐骷?nèi),還具有小容量高速 RAM 資源。它將處理器、存儲器、 I/O 口、 LVDS、CDR 等系統(tǒng)設(shè)計需要的功能模塊集成到一個可編程器件上,構(gòu)建成一個可編程的片上系統(tǒng)。以 HX8347 作為 TFT 液晶主控的液晶模塊作為系統(tǒng)顯示器, UH7843 觸摸芯片用于驅(qū)動觸摸屏得到觸摸信息, SD 卡用于音頻以及圖片數(shù)據(jù)的存儲。主要難點如下: ? 基于 Nios 的嵌入式系統(tǒng)的構(gòu)建; ? 文件系統(tǒng)的設(shè)計與實現(xiàn); ? 圖像的顯示與掃描技術(shù); ? 高保真數(shù)字化音頻的轉(zhuǎn)換和播放。 主要研究的內(nèi)容如下: 西南科技大學本科生畢業(yè)論文 2 ? 基于 FPGA 的 SOPC 系統(tǒng)設(shè)計實驗,保證相關(guān)軟件設(shè)計代碼繼承、移植和復用 ; ? SD 卡的讀寫控制實驗; ? TFT 液晶驅(qū)動實驗; ? 數(shù)字化音頻的處理與播放驅(qū)動實驗。 主要研究內(nèi)容 本設(shè)計要求利用 SOPC 技術(shù),實現(xiàn)電子音樂相冊的功能 , 因此我 以實驗室的FPGA 開發(fā)板 DE2 作 為 主板 ??梢酝ㄟ^該題目進一步學習 CPU原理以及 MCU控制器的構(gòu)建,也可以深化電路理論及提高實踐能力,從而達到本科階段綜合能力的培養(yǎng)和提高。對從事消費類電子產(chǎn)品開發(fā)以及其它相關(guān)產(chǎn)品設(shè)計都具有積極的意義 [5]。 本 設(shè)計 項目基于消費類領(lǐng)域應用的主流器件 ALTERA公司的 FPGA,采用最新的EDA和 SOPC技術(shù),綜合了音頻播放、彩色圖像顯示、 TFT液晶驅(qū)動 、觸摸屏原理 、SD卡存儲控制 以及 FAT32文件系統(tǒng) 等消費類產(chǎn)品的關(guān)鍵技術(shù) 。因此,本設(shè)計采用現(xiàn)在流行的 ALTERA的 FPGA芯片,結(jié)合 FPGA的 SOPC技術(shù),在 FPGA內(nèi)部實現(xiàn)一個 NIOS微處理器。數(shù)碼音樂相冊在現(xiàn)在電子市場已經(jīng)很普遍,但是多用專用芯片制作。s daily life, the application of embedded systems which have already infiltrated. Can be said that embedded systems are now widely used in military, industrial, mercial, medical, personal and family aspects, and it is fast developing. Especially the electronic digital products, and its replacement quickly, which from the initial discrete ponents to the current integrated chip, and the product is smaller and smaller, but exhibited by the function is more powerful. This design uses DE2 development board as the main board, and presented digital music albums which based on the Nios II. Mainly realized on the SD card through the audio and image files stored in a read operation, after controlling the construction of the Nios processor, the audio information is transmitted to the audio module player, the picture information transmitted to the TFT LCD display, while using the touch operation of the whole Function. Hardware is mainly responsible for the construction pletion of the Nios processor, the audio module and the LCD part of the welding. Software ponent is mainly responsible for SD card, TFT LCD, touch the bottom of the chip, the audio module drivers and write the entire application. Through the pletion of hardware and software, finally pleted design that the album of electronic music which based on the SOPC. Key words: SOPC, Nios II, SD card, TFT LCD, touch chip, VS1003 Audio Module 西南科技大學本科生畢業(yè)論文 1 目 錄