999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于SoPC的數(shù)碼電子音樂相冊設計與實現(xiàn)*

2013-03-11 10:50:10權(quán)震華
關(guān)鍵詞:系統(tǒng)設計

權(quán)震華,羅 亮

(西南科技大學 信息工程學院,四川 綿陽621010)

數(shù)碼電子音樂相冊形式新穎、展示信息豐富,在商場、站臺、家庭有著廣泛的應用。本文提出了一種基于SoPC技術(shù)的數(shù)碼電子音樂相冊設計方案,在FPGA內(nèi)部定制一個Nios II軟核處理器,再以其為核心,配以一定的外圍電路和驅(qū)動程序設計,通過軟硬件協(xié)同設計實現(xiàn)了一個人機接口友好的音樂相冊。

1 系統(tǒng)總體設計

1.1 系統(tǒng)硬件框圖

本系統(tǒng)以在Altera FPGA產(chǎn)品內(nèi)定制的Nios II軟核作為處理器,外圍電路包括外圍存儲器驅(qū)動、MP3音頻解碼、TFT液晶屏控制、觸摸屏驅(qū)動和SD卡驅(qū)動等電路。外圍存儲器和SD卡的驅(qū)動部分在FPGA內(nèi)部實現(xiàn),而MP3音頻解碼、TFT液晶屏控制、觸摸屏驅(qū)動則分別選用了VS1003B、HX8347和UH78430芯片來實現(xiàn)。系統(tǒng)硬件框圖如圖1所示。

圖1 系統(tǒng)硬件框圖

1.2 SoPC系統(tǒng)設計

SoPC,即片上可編程系統(tǒng),是Altera公司提出來的一種靈活高效的SoC解決方案,是指將處理器、存儲器、定時器、總線控制器、通信接口、I/O端口等系統(tǒng)設計需要的功能模塊集成到一個FPGA上,構(gòu)建成一個可編程的片上系統(tǒng)。本設計基于Nios II處理器組建的SoPC系統(tǒng)框圖如圖2所示。

2 硬件設計

2.1 外部存儲器

圖2 SoPC系統(tǒng)框圖

系統(tǒng)需在FPGA上添加Flash存儲器和SDRAM存儲器,分別用于存儲應用程序代碼和運行應用程序。Flash選中的應用程序代碼在系統(tǒng)運行前將被拷貝到SDRAM中執(zhí)行。本設計中的Flash存儲器選用S29AL032D芯片,SDRAM存儲器選用具有8 MB字節(jié)容量的A2V64S40CTP芯片。Flash存儲器和SDRAM存儲器都是使用Altera SoPC Builder工具中免費提供的Avalon總線IP掛接到片上Avalon總線上,以實現(xiàn)Nios II對它們的訪問。

2.2 VS1003B芯片接口設計

VS1003B是芬蘭VLSI公司出品的單芯片MP3/WMA/MIDI音頻解碼和ADPCM編碼芯片,支持MP3、MP3+V、WMA、WAV、MIDI和SP-MIDI格式的音頻解碼播放,內(nèi)部擁有高性能、低功耗DSP處理器核和緩存,且外圍接口豐富。

本設計使用7個IO口用于操作VS1003B,其端口連接圖如圖3所示。其中,各端口功能分別為:XRESET,復位;XDCS,數(shù)據(jù)片選;XCS,芯片片選;SCLK,SPI通信接口時鐘輸入;MOSI,SPI通信接口數(shù)據(jù)輸出;MISO,SPI通信接口數(shù)據(jù)輸入;DREQ,數(shù)據(jù)處理完中斷輸出。

圖3 VS1003B硬件接口設計

VS1003B芯片內(nèi)部共有16個16位控制寄存器,地址分別為0x0~0x0F,可通過SPI接口使用SCI通信協(xié)議來配置控制寄存器。需解碼的數(shù)據(jù)也是通過SPI接口使用SDI通信協(xié)議傳送到緩存,讓芯片正確播放音頻文件。

在使用VS1003B之前,需要對VS1003B的控制寄存器進行初始化配置;完成配置后,即可往VS1003B的緩存中寫入解碼數(shù)據(jù),實現(xiàn)音頻解碼。

2.3 HX8347芯片接口設計

HX8347芯片是TFT液晶屏專用驅(qū)動芯片,最大支持320×240分辨率的TFT液晶屏。其內(nèi)置173 KB的RAM,色彩模式支持最高26萬色的顯示。HX8347具有4種接口方式:8/9/16/18 bit系統(tǒng)總線方式、SPI總線方式、寄存器接口方式和RGB接口方式。

本設計采用16 bit系統(tǒng)總線方式,端口連接如圖4所示。需使用21個IO口,各端口功能分別為:RST:復位;CS:片選;RS:指令/數(shù)據(jù)選擇;WR:寫使能;RD:讀使能;DATA[15:0]:16 bit數(shù)據(jù)。

圖4 HX8347硬件接口設計

HX8347內(nèi)部共有132個寄存器,地址從0x00~0x93。在使用液晶屏前,需對其中大部分寄存器初始化。寄存器操作要使用CS、RS、RD、WR、DATA[7:0]端口。在正確配置寄存器后,就可進行顯示數(shù)據(jù)的傳送。數(shù)據(jù)傳輸與寄存器配置使用的端口是一樣的,只是寄存器配置使用的是數(shù)據(jù)總線的低8 bit,而數(shù)據(jù)傳送要使用全部16 bit數(shù)據(jù)總線。

對TFT液晶屏的操作,首先進行初始化操作,主要包括對液晶內(nèi)部參考電壓、開啟晶振、顯示緩沖區(qū)和RGB色彩等寄存器的設置。在完成初始化之后即可進行顯示操作,先在液晶的RAM中開辟一個顯示緩沖區(qū),然后再向顯示緩沖區(qū)填入顯示數(shù)據(jù)即可實現(xiàn)TFT屏的顯示與更新。

2.4 UH7843芯片接口設計

UH7843是TI公司生產(chǎn)的4線電阻觸摸屏轉(zhuǎn)換接口芯片,具有同步串行12位取樣數(shù)模轉(zhuǎn)換器,功耗低,轉(zhuǎn)換速率高。

本設計使用了6個IO口來操作UH7843芯片,端口連接如圖5所示。其中,各端口功能分別為:CS:芯片片選;SCLK:SPI通信接口時鐘輸入;DIN:SPI通信接口數(shù)據(jù)輸入;DOUT:SPI通信接口數(shù)據(jù)輸出;BUSY:芯片忙信號輸出;IRQ:芯片中斷信號輸出。

圖5 UH7843硬件接口設計

當觸摸屏上有觸摸動作時,觸摸屏的X+、X-、Y+、Y-端會產(chǎn)生不同的模擬電壓并送入UH7843。UH7843會對輸入電壓產(chǎn)生一個轉(zhuǎn)換過程,轉(zhuǎn)換完成后用中斷通知處理器,處理器便會去讀取此時的AD采樣值,再調(diào)用程序計算實現(xiàn)觸摸點的定位。

2.5 SD卡硬件接口設計

SD卡支持兩種總線方式:SD方式與SPI方式。本設計采用IO口模擬SPI模式通信,使用4個IO口實現(xiàn)SD卡的控制。端口連接如圖6所示。

圖6 SD卡硬件接口設計

本設計采用CMD0、CMD1、CMD17和CMD24 4個命令組合操作SD卡。CMD0為SD卡復位指令,設置SD卡工作于SPI接口模式;CMD1初始化SD卡,激活SD處于工作狀態(tài);CMD17讀SD卡扇區(qū),讀取一個扇區(qū)512 B數(shù)據(jù),在讀取時需要給出地址信息;CMD24寫SD卡扇區(qū),給出寫入扇區(qū)地址以及數(shù)據(jù)后即可往SD卡指定扇區(qū)寫入512 B數(shù)據(jù)。

通過復位SD卡、初始化SD卡、讀取SD卡扇區(qū)數(shù)據(jù)3個步驟完成對SD卡的操作,實現(xiàn)從卡中讀取數(shù)據(jù)的工作。

2.6 SoPC系統(tǒng)構(gòu)建

在Altera Quartus II軟件中建立工程,啟動SoPC Builder工具定制Nios II處理器,進行SoPC系統(tǒng)的構(gòu)建。本SoPC系統(tǒng)包括Nios II處理器模塊、存儲器接口模塊、UART模塊和PIO口總線模塊等部分。

(1)Nios II/s CPU

結(jié)合本設計所需資源,選用標準型,如圖7所示。

圖7 SoPC構(gòu)建

完成軟核類型的選擇之后,再進行JTAG Debug Module的設置,以便于調(diào)試。所得到的CPU配置如圖8所示。

圖8 CPU構(gòu)建

(2)SDRAM、Flash等存儲器接口模塊

使用SRAM作為系統(tǒng)的通用數(shù)據(jù)存儲器。SDRAM空間較大,可作為應用程序的運行空間;Flash作為程序存儲器,用于存放應用程序代碼。

(3)UART模塊和PIO口總線模塊

UART串口模塊用于調(diào)試,系統(tǒng)也可以在此基礎上擴展串口外設。將串口波特率設置為最大的115 200 bit/s。PIO口則用于控制SD卡、TFT液晶、觸摸芯片以及音頻模塊這幾個外部設備。

在添加完各個模塊后,還需要為各個模塊指定名稱、類型、存儲器地址映像和系統(tǒng)外設的中斷設置,如圖9所示。為了方便起見,通常將Flash的首地址設置為0,其他模塊地址由系統(tǒng)自動分配。

3 軟件設計

3.1 系統(tǒng)整體軟件流程圖

整個應用軟件需要設計3大模塊程序:MP3音樂播放程序、數(shù)碼相冊程序和觸摸控制程序。整體軟件流程圖如圖10所示。

圖9 SoPC整體配置

圖10 系統(tǒng)軟件流程圖

3.2 FAT32文件系統(tǒng)

為了方便對MP3文件和圖像文件的訪問,應用程序需要提供對文件系統(tǒng)的支持。本設計采用了znFAT32文件系統(tǒng)。

znFAT32是于振南為小型嵌入式設備完全獨立編寫且源代碼開放的FAT32文件系統(tǒng)解決方案。znFAT32能夠支持眾多 的存儲設備 (SD卡、CF卡、Flash、U盤等),支持多個存儲器共同工作以及同時訪問多個存儲器對文件的操作;其對硬件資源要求低,代碼完全由C語言編寫,能夠方便地移植到51單片機、AVR、ARM、Nios II等處理器上,占用資源極少,非常適合嵌入式開發(fā)中文件系統(tǒng)的嵌入。

znFAT32其中的一個主要實現(xiàn)是文件打開函數(shù),該函數(shù)原型如下:

其中,入口參數(shù)的意義分別為:pfi,文件信息結(jié)構(gòu)體;filepath,文件名稱;item,文件類型;is_file,確定是一個文件。

本設計首先使用文件打開函數(shù)打開文件,然后按需要對文件使用MP3處理函數(shù)和相冊處理函數(shù)進行處理。

3.3 MP3播放音樂程序設計

MP3播放音樂程序流程如圖11所示。

圖11 MP3播放流程圖

當進入MP3播放程序以后,首先讀取出歌曲目錄表,等待用戶選擇歌曲,超時等待后即刻進入目錄表第一首歌曲播放。通過文件系統(tǒng)打開第一首歌曲,解析歌曲后,進入歌曲數(shù)據(jù)區(qū)按扇區(qū)讀出數(shù)據(jù)進行解碼播放。每個扇區(qū)讀取完成后,查閱觸摸緩沖區(qū)是否有需要處理的觸摸信息,如果有換歌信息則換到相應歌曲播放,同時液晶顯示界面切換;如果有退出播放信息,則執(zhí)行退出播放狀態(tài)切換到主界面;如果沒有觸摸信息,則繼續(xù)播放,播放完一首歌后自動切換到下一首歌,直到所有音樂播放完成,最后返回主界面。在每個扇區(qū)讀取完成后處理觸摸信息,這樣能實時響應觸摸狀態(tài)。

3.4 數(shù)碼相冊程序設計

數(shù)碼相冊是另一個主要功能。當系統(tǒng)進入到圖片瀏覽功能后,會讀取第一張圖片顯示,然后等待用戶觸摸選擇顯示圖片或者退出。程序流程圖如圖12所示。

圖12 圖片顯示主流程

在顯示圖片過程中,首先是通過文件系統(tǒng)讀取圖片數(shù)據(jù)區(qū)的第一個扇區(qū),然后取出文件頭、文件信息頭、色彩表等信息,對圖片的有效性進行檢測,包括圖片大小、圖片格式、圖片色彩模式以及圖片的壓縮類型。當檢測到有效BMP圖片時,即可進入圖片顯示,每顯示一個扇區(qū)的數(shù)據(jù),就檢測觸摸緩沖區(qū)是否有需要處理的數(shù)據(jù),如果檢測到選擇下一張的觸摸信息則跳入下一張圖片顯示,如果檢測到上一張的觸摸信息則退回上一張,如果是選擇退出的觸摸信息則返回主界面。

3.5 觸摸控制程序設計

觸摸控制程序流程圖如圖13所示。

圖13 觸摸控制程序流程圖

4 系統(tǒng)調(diào)試

本設計在友晶科技的DE2開發(fā)板上進行調(diào)試驗證。首先在DE2實驗開發(fā)板上構(gòu)建Nios II處理器;在測試構(gòu)建的Nios處理器正確之后,再對各個外設的底層編寫驅(qū)動,并一一進行測試;最后在底層驅(qū)動編寫好的前提下,編寫應用程序。

對SD卡讀寫模塊、VS1003B音頻模塊、TFT顯示模塊、觸摸芯片模塊以及文件系統(tǒng)加載模塊等外設底層驅(qū)動進行測試,可利用JTAG UART串口輸出調(diào)試信息來進行正誤驗證。圖14是當正確掛載FAT32文件系統(tǒng),插上SD卡讀取出SD卡的扇區(qū)信息后,在主機側(cè)使用串口調(diào)試助手接收到的信息。

圖14 FAT32文件系統(tǒng)加載測試圖

本文給出了一種基于SoPC的數(shù)碼電子音樂相冊的設計方案。使用SoPC Builder開發(fā)工具在DE2開發(fā)板上構(gòu)建Nios II處理器和SoPC系統(tǒng),搭建了外圍音頻解碼、TFT液晶驅(qū)動和觸摸屏驅(qū)動等電路,編寫了各外設的底層驅(qū)動以及應用程序,最終實現(xiàn)了數(shù)碼電子音樂相冊的設計。使用SoPC技術(shù)進行系統(tǒng)設計具有開發(fā)周期短、設計靈活、可將若干外部模塊綜合設計到一片高密度FPGA中等優(yōu)點,同時設計更小巧,成本更低,更便于系統(tǒng)升級。目前SoPC技術(shù)的應用正在迅速擴大,具有廣闊的應用空間和突出的市場競爭力。

[1]周立功.SoPC嵌入式開發(fā)系列教程[M].北京:北京航空航天大學出版社,2006.

[2]蔡偉剛.Nios II軟件構(gòu)架解析[M].西安:西安電子科技大學出版社,2007.

[3]武景濤,史大光,高龍,等.FPGA和Nios II軟核的SD卡文件系統(tǒng)實現(xiàn)方法[J].單片機與嵌入式系統(tǒng)應用,2012(12):22-25.

[4]HAMBLEN J O,HALL T S,F(xiàn)URMAN M D.Rapid prototyping of digital systems:SoPC edition[M].Springer,2007.

[5]Gao Kun,Cai Junbo.A SoPC-based mini VGA video capture and storage system[C].2010 3rd International Conference on Biomedical Engineering and Informatics(BMEI 2010),2010.

猜你喜歡
系統(tǒng)設計
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
何為設計的守護之道?
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
瞞天過海——仿生設計萌到家
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 欧美一区二区精品久久久| 在线中文字幕日韩| 她的性爱视频| 欧美亚洲一区二区三区导航| 国产美女一级毛片| 免费看一级毛片波多结衣| 欧美激情视频二区三区| 91在线一9|永久视频在线| 欧美国产在线精品17p| 成人一区专区在线观看| 亚洲一区免费看| 久久伊人操| 久久超级碰| 国产福利免费在线观看| 免费看美女毛片| 在线视频一区二区三区不卡| 欧美日韩在线国产| 精品视频在线观看你懂的一区| 国产浮力第一页永久地址 | 国产综合色在线视频播放线视| 国产亚洲欧美在线专区| 成AV人片一区二区三区久久| 欧美视频在线第一页| 欧美国产精品不卡在线观看| 亚洲色无码专线精品观看| 亚洲第一成网站| 成人永久免费A∨一级在线播放| 亚洲国产综合精品中文第一| 美女被操黄色视频网站| 中文毛片无遮挡播放免费| 久久婷婷色综合老司机| 亚洲一道AV无码午夜福利| 国产美女自慰在线观看| 国产凹凸视频在线观看| 成人无码一区二区三区视频在线观看| 欧美激情福利| 99视频全部免费| 亚洲欧美综合精品久久成人网| 麻豆精品久久久久久久99蜜桃| 欧美 亚洲 日韩 国产| 国产成人91精品免费网址在线| 国产成本人片免费a∨短片| 欧美精品伊人久久| 狠狠色丁香婷婷综合| 国产18在线播放| 中文一级毛片| 久久久久九九精品影院 | 91小视频在线播放| 日韩午夜福利在线观看| 国产亚洲欧美日本一二三本道| 黄色网址手机国内免费在线观看| 精品久久777| 亚洲男女天堂| 九九视频免费看| 日本人妻丰满熟妇区| 一本视频精品中文字幕| 久视频免费精品6| 狠狠色狠狠综合久久| 国产免费网址| 国内精品免费| 第九色区aⅴ天堂久久香| 无遮挡国产高潮视频免费观看| 九色视频线上播放| 久久99蜜桃精品久久久久小说| 手机成人午夜在线视频| 色网在线视频| 欧美一区二区三区国产精品| 久久亚洲国产最新网站| 国产乱子精品一区二区在线观看| 国产精品成人免费综合| 激情无码视频在线看| 成人在线亚洲| 2020国产精品视频| 国产精品视频白浆免费视频| 四虎成人免费毛片| 欧美一级片在线| 亚洲第一成年人网站| 天天操天天噜| 国产亚洲欧美在线中文bt天堂 | 免费 国产 无码久久久| 另类欧美日韩| 免费人成又黄又爽的视频网站|