?
隨著科學技術的進步,當下人們生活中對于聯絡的需求越來越高。傳統的留言機設計功能單一,靈活性和可靠性受到一定限制。為此考慮設計一款應用于家庭用戶的多功能留言機,當來訪者留下信息時,主人可以在第一時間獲知,并可以回家時查看或者進行遠程控制。FPGA由于其具有靈活的可配置性、成本低、速度快、體積小和擁有豐富的寄存器資源等特點而獲得了廣泛的應用。Altera公司為用戶提供了創新的SOPC設計理念,其系統設計工具SOPC Builder,集成內嵌的NIOSII處理器,方便用戶根據應用需求對NIOSII進行裁剪、定制。本設計采用基于FPGA的SOPC系統,充分利用軟件設計的靈活性和硬件設計的高效性,具有以下功能:
(1)留言提示:按下采集鍵時,可采集來訪者的圖像和語音留言,并把圖片以彩信的方式發送。
(3)用戶管理。
(4)備忘留言。
(5)真人語音報時。
(6)自動待機及屏保。
(7)Windows兼容的存儲文件格式。
1 系統設計概述
系統分為語音采集存儲播放、圖像采集存儲、圖像壓縮、彩信傳輸、觸摸屏驅動及顯示等幾大部分。整體系統在架構上又可以分為軟件及硬件設計兩大部分。系統功能框圖如圖1所示。
?
設計基于Terasic公司的DE2—70平臺,采用Altera公司的Cyclone II系列的FPGA器件和Terasic公司提供的130萬像素的CMOS攝像頭、800 400分辨率的觸摸屏以及PTW73型GPRS MODEM。圖像采集采用純硬件實現,以SDRAM作為緩存。NIOSII處理器從SDRAM中讀取采集到的圖像并進行JPEG壓縮后由串口通過彩信貓發送出去。語音的采集存儲播放由軟件實現,使用Altera公司大學計劃的IP核完成對音頻芯片WM8731的配置。觸摸屏利用用IP核進行圖片和字符的顯示控制。系統設計中的語音和圖片等信息都存放于SD卡中。對以上功能采用了如下的一些處理技術或特點:
(1)設計基于Avalon總線架構,充分利用現有的Altera公司提供的IP核資源,包括音頻芯片的配置、VGA控制顯示、存儲器的控制等,并設計添加了針對系統時鐘、采集端口、觸摸屏端口的IP核。
(2)對語音信息的采集和播放進行速度上的優化。由于CPU對SD卡的讀寫速度較SDRAM慢,故在采集和播放音頻信息時,在SDRAM中單獨開辟一個緩存區用以存放音頻信息。
(3)由于采集到的bmp圖像容量較大,設計中采用靜態圖像壓縮標準JPEG對圖像進行壓縮,以便于圖片進行彩信傳輸。
(4)彩信傳輸基于GPRS傳輸協議和AT指令集,通過RS232串口與主機進行連接。
(5)系統中的實時時鐘采用硬件方式實現,為CPU提供更多的時間做其他處理,提高了處理性能。
(6)系統與用戶的交互主要通過觸摸屏實現。
(7)設計中對一些耗時的部分算法進行了自定義指令加速,在一定程度上縮短了系統的處理時間。
2 系統設計架構及流程
系統基于Avalon總線,采用軟硬件協同設計的方式。圖像采集、對觸摸屏的配置和系統時鐘等采用硬件方式實現,其他模塊利用SOPC進行定制,完成整個系統的搭建。系統架構圖如圖2所示。
?
?
設計基于NIOSⅡ處理器,軟件采集發送功能設計流程如圖3所示??傮w設計上,軟件可以分為采集發送部分和系統主菜單,并且設計上充分考慮了用戶的需求,增加了諸如語音報時、電子時鐘、定時播放等功能。
3 系統設計實現
系統的功能模塊主要包括以下四個部分:圖像采集與壓縮;音頻采集和播放;彩信傳輸;觸摸屏驅動及顯示。
3.1 圖像采集與壓縮
圖像采集采用硬件方式實現,基于130萬像素的CMOS攝像頭,采集系統結構框圖如圖4所示。采用I2C總線對攝像頭進行配置,SDRAM作為圖像緩存器。由于CMOS攝像頭輸出數據格式為Bayer pattern,故需要把其轉換為RGB三顏色以便于圖像的顯示、存儲與壓縮。存于SDRAM中的圖像通過一個讀取端口與avalon總線連接。采集芯片以25MHz的主時鐘工作,輸出640 480像素大小的圖像數據。雙端口SDRAM控制器工作于100MHz的時鐘頻率。
?
當完成圖像的采集后,NIOSⅡ處理器通過avalon總線從SDRAM中讀取圖像像素值并加入bmp格式頭文件以bmp圖片方式存儲于SD卡中。每隔一個像素點讀取一個像素值,把bmp以及壓縮后的jpg圖片大小存為320 240。在把圖像從RGB轉換為bmp圖片的過程中,采用了自定義指令的方式縮短了轉換的時間。為了便于圖像以彩信的方式傳輸到用戶手機上,采甩JPEG標準對圖像進行壓縮,JPEG壓縮采用軟件方式實現。
3.2 音頻采集播放
音頻部分使用了Altera自帶的IP核完成對音頻芯片的配置。首先從音頻芯片FIFO中讀取音頻信息存入SDRAM中,加入wav頭文件把采集到的音頻信息以wav的格式存入SD卡中,這樣做的好處是方便在PC機上對音頻進行操作和移植。
3.3 彩信傳輸
彩信傳輸通過串口RS232與PTW735奎接。PTW73支持語音及彩信功能的傳輸,并且內嵌TCP/IP協議,支持完整的AT指令集。彩信傳輸流程如圖5所示。
?
3.4 觸摸屏驅動及顯示
觸摸屏采用友晶公司提供的TRDB-LTM款800 400像素點24位真彩色的液晶屏。觸摸屏的主要功能是完成用戶與系統的交互,包括各種按鍵的控制、圖像的顯示及實時時鐘的顯示。觸摸屏的配置基于純硬件的方式,對觸摸屏的驅動采用Altera自帶的IP核。由于觸摸屏的掃描
方向為右上角至左下角,因此在顯示圖片或字符串的時候需要進行倒像。
4 系統驗證
設計采用SOPC Builder進行用戶系統的定制,定制好各個模塊后在QuartusⅡ9.0下進行了綜合,利用NIOSⅡ9.0IDE設計工具在DE2-70開發平臺上進行了系統的測試。系統經過調試后達到了預期的目的,各項功能及其子系統能夠正常地工作。基于50MHz的系統頻率,綜合結果該設計消耗了9915個邏輯資源。對系統功能模塊或各個子模塊分別進行了驗證,結果如下:電子時鐘模塊采用硬件方式實現,其Modelsim SE 6.2b仿真結果如圖6所示,完整地實現了包括年、月、日、時、分、秒的電子時鐘功能。
?
?
圖像采集及壓縮部分的驗證結果如圖7所示。其中圖7(a)為系統采集并轉換生成的bmp格式圖片,圖7(b)為系統壓縮后生成的相應jpg格式圖片。
5 總結
設計基于DE2-70平臺,利用Quartus II 9.0、NIOS II9.0 IDE、Modelsim SE 6.2b等設計工具,采用軟硬件協同設計、自定義指令加速等設計技術,實現了聲音圖像采集播放等功能,并且支持用戶的管理功能。設計針對家庭用戶不僅實現了用戶留言功能,并且具有近乎實時的留言提醒和電子鑰匙等功能,具有實用價值。
評論
查看更多