新聞中心

EEPW首頁 > 手機與無線通信 > 設計應用 > 基于SOPC的腦電信號實時處理

基于SOPC的腦電信號實時處理

作者: 時間:2012-07-06 來源:網(wǎng)絡 收藏

3 軟件設計
本系統(tǒng)的軟件設計包括兩個部分,一部分是Verilog的用戶自定義外設組件,另一部分是NiosⅡIDE開發(fā)環(huán)境的各外設組件的驅動和配置程序,以及的FFT算法程序。
用戶自定義外設組件包括AD轉換和DA轉換模塊,用Verilog語言編寫AD和DA的控制模塊,編譯、綜合后實現(xiàn)其功能并留下與Avalon interface的寄存器接口。
軟件開發(fā)使用NiosⅡIDE,它是一個Eclipse IDE構架的集成開發(fā)環(huán)境,包括:
1)GNU開發(fā)工具(標準GCC編譯器、連接器、匯編器和makefile工具等);
2)基于GDB的調試器,包括軟件仿真和硬件調試;
3)提供用戶一個硬件抽象層HAI。(Hardware Abstraction.Iayer);
4)提供嵌入式操作系統(tǒng)MicroC/OS一Ⅱ和LwlCP/IP協(xié)議棧的支持:
5)提供幫助用戶快速入門的軟件模板;
6)提供Flash下載支持(Flash。Programmer和QuartusⅡProgrammer)。
NiosⅡIDE可以完成NiosⅡ器系統(tǒng)的所有軟件開發(fā)任務。 Builder生成系統(tǒng)后,可以直接使用NiosⅡIDE開始設計C應用程序代碼。Altera提供外設驅動程序和硬件抽象層(HAL),使用戶能夠快速編寫與低級硬件細節(jié)無關的NiosⅡ程序。除了應用代碼,用戶還可以在NiosⅡIDE工程中設計和重新使用定制庫。
基于C編寫的算法程序是腦數(shù)字的核心程序。該程序包括6個相關文件,分別是math.h,register.h,LF2407.CMD.RIS2X X.UB,process.c和evectors.a(chǎn)sm。其中需要用到的數(shù)學公式庫文件是math.h,CPI_I內部的寄存器及其相關定義文件是re面ster.h,連接命令文件是I~2407.CMD,指示編譯器如何進行程序空間和數(shù)據(jù)空間的分配,系統(tǒng)提供RTS2XX.UB庫文件,向量表文件cvectors.a(chǎn)sm定義所需的復位和中斷向量,process.c主要是完成用戶期望的功能,是整個程序的核心部分。
FFT部分算法如下:
d.JPG
相關算法的說明:
1)采樣頻率Fs根據(jù)實際情況調整,仿真時為1 000 Hz;
2)快速傅里葉變換的計算公式為:
e.JPG


評論


相關推薦

技術專區(qū)

關閉