基于32位微處理器AEMB的SoC系統(tǒng)驗(yàn)證平臺(tái)設(shè)計(jì)
3.4 中斷控制器與時(shí)鐘定時(shí)器的配置
中斷控制器主要用于接收外部中斷源的中斷請(qǐng)求,并對(duì)中斷請(qǐng)求進(jìn)行處理后再向CPU發(fā)出中斷請(qǐng)求,等待CPU響應(yīng)中斷并進(jìn)行處理。在CPU響應(yīng)中斷的過(guò)程中,中斷控制器仍然負(fù)責(zé)管理外部中斷源的中斷請(qǐng)求,從而實(shí)現(xiàn)中斷的嵌套與禁止。在本設(shè)計(jì)中,中斷控制器的邏輯結(jié)構(gòu)如圖2所示。所采用的中斷控制器主要負(fù)責(zé)接收片內(nèi)IP核及片外器件所發(fā)出的中斷請(qǐng)求,然后根據(jù)一定的優(yōu)先級(jí)與規(guī)則將中斷發(fā)送給微處理器。微處理器可以通過(guò)設(shè)置與讀取相應(yīng)的中斷寄存器來(lái)管理查看中斷優(yōu)先級(jí)與中斷狀態(tài)。
圖2 終端控制器邏輯結(jié)構(gòu)
時(shí)鐘定時(shí)器主要是作為操作系統(tǒng)的時(shí)鐘滴答定時(shí)器,本質(zhì)上就是一個(gè)簡(jiǎn)單的計(jì)數(shù)器。在每個(gè)系統(tǒng)時(shí)鐘來(lái)到時(shí)計(jì)數(shù)器會(huì)自動(dòng)加1,當(dāng)計(jì)數(shù)器的值達(dá)到設(shè)定數(shù)值時(shí)便產(chǎn)生1次時(shí)鐘中斷。PTC是OpenCores組織發(fā)布的一個(gè)支持Wishbone總線接口的脈沖定時(shí)計(jì)數(shù)器。其不僅可以作為時(shí)鐘定時(shí)器,還可以通過(guò)配置寄存器的設(shè)置產(chǎn)生PWM脈沖輸出。本SoC系統(tǒng)中主要是使用PTC的定時(shí)器功能。
3.5 地址空間的分配
根據(jù)DE2-70開(kāi)發(fā)板上各器件的特點(diǎn)與AEMB微處理器的中斷例外向量表及wb_conmax的邏輯實(shí)現(xiàn),系統(tǒng)地址空間分配結(jié)果為:
4 SoC系統(tǒng)的FPGA綜合實(shí)現(xiàn)
針對(duì)DE2-70開(kāi)發(fā)板在進(jìn)行SoC系統(tǒng)的FPGA綜合時(shí)選用CycloneII系列器件EP2C70F896C6。系統(tǒng)時(shí)鐘頻率預(yù)設(shè)為50 MHz,不加額外約束條件下進(jìn)行綜合,綜合后的邏輯資源占用報(bào)告如圖3所示。
圖3 SOC系統(tǒng)FPGA綜合后邏輯資源使用情況
通過(guò)時(shí)序分析報(bào)告可知,該SoC系統(tǒng)在滿足時(shí)序的前提下,系統(tǒng)實(shí)際運(yùn)行頻率可達(dá)到65.31 MHz。
5 SoC系統(tǒng)驗(yàn)證平臺(tái)軟件支持
考慮到SoC驗(yàn)證平臺(tái)所包含的硬件部件與該平臺(tái)的具體應(yīng)用,系統(tǒng)軟件主要構(gòu)成如圖4所示。Mini Bootloader負(fù)責(zé)應(yīng)用程序從Flash器件向程序運(yùn)行空間的加載。在DE2-70開(kāi)發(fā)板上,借助于NiosII開(kāi)發(fā)工具與開(kāi)發(fā)板自帶的基于NiosII的SOPC硬件系統(tǒng),燒寫(xiě)Flash很方便。系統(tǒng)啟動(dòng)時(shí)可以從Flash開(kāi)始啟動(dòng),完成應(yīng)用程序的拷貝后再跳轉(zhuǎn)到主程序運(yùn)行的存儲(chǔ)器空間。在本系統(tǒng)中,為了使編程更加方便,將拷貝程序放在片上RAM中存儲(chǔ)。系統(tǒng)從片上RAM開(kāi)始啟動(dòng),完成應(yīng)用程從Flash到SDRAM的拷貝之后,跳轉(zhuǎn)到SDRAM開(kāi)始執(zhí)行應(yīng)用程序。
圖4 SoC系統(tǒng)軟件支持
AEMB微處理器在指令上與MicroBlaze達(dá)到99%的兼容,而后者的應(yīng)用程序及操作系統(tǒng)的開(kāi)發(fā)已經(jīng)有非常成熟的范例。操作系統(tǒng)的移植主要是完成對(duì)硬件地址空間的修改與操作系統(tǒng)一些底層初始化代碼的編寫(xiě)。最終在該SoC系統(tǒng)驗(yàn)證平臺(tái)上完成了μC/OS-II的移植工作。
結(jié) 語(yǔ)
本文基于32位微處理器AEMB設(shè)計(jì)了一款SoC系統(tǒng)驗(yàn)證平臺(tái),給出了SoC系統(tǒng)經(jīng)過(guò)FPGA綜合后的邏輯資源占用情況,以及系統(tǒng)能夠運(yùn)行的最高時(shí)鐘頻率。該平臺(tái)已在臺(tái)灣友晶公司的DE2-70開(kāi)發(fā)板上完成了FPGA驗(yàn)證。
評(píng)論