SPI IP核及其在微投影系統中的應用
摘要:介紹了SPI總線(xiàn)控制器IP核的硬件結構與應用方法,并著(zhù)重介紹了該IP核在微投影系統中的使用,以完成微顯示芯片的初始化。實(shí)驗表明,該SPI總線(xiàn)接口使用靈活,便于移植,并且穩定可靠。
關(guān)鍵詞:SPI總線(xiàn)控制器;Nios II處理器;IP核;可編程片上系統;微投影
引言
SPI總線(xiàn)作為一種簡(jiǎn)單高效的4線(xiàn)串行傳輸總線(xiàn),在電子器件和系統中應用非常普遍,由于其輸入和輸出的信號線(xiàn)彼此獨立,因而傳輸可靠性更好。Altera公司的EDA設計工具中有自帶的SPI總線(xiàn)控制IP核,但目前介紹該IP核具體應用的文獻不多,本文結合我們在微投影系統研究中的需求,給出了該SPI IP核的應用實(shí)例。
1 SPI核的工作原理
1.1 硬件結構
SPI核的硬件結構如圖1所示,主要由波特率分頻器、發(fā)送數據寄存器、接收數據寄存器、狀態(tài)寄存器和控制寄存器組成。波特率分頻器主要將Avalon的系統時(shí)鐘進(jìn)行分頻,SCK可以配置的頻率=Avalon系統時(shí)鐘頻率/(2的倍數)。
該IP核可以配置為主和從兩種模式。本設計為嵌入在FPGA中SPI核為主工作模式,可以控制最多16個(gè)從設備,如圖1所示的SEN0~SENl5。只有一個(gè)器件時(shí),默認為SEN0信號。SPI核傳輸的數據寬度是由用戶(hù)配置的,可在1~32位之間,當一次數據傳輸結束之后SPI核發(fā)出一個(gè)中斷請求。
主要實(shí)現兩種傳輸邏輯(以主模式為例):
①發(fā)送邏輯。待發(fā)送的數據由Avalon從端口送入發(fā)送數據寄存器,再移入移位寄存器中,SCK跳變沿到來(lái)時(shí)開(kāi)始數據傳輸(經(jīng)SDAT信號線(xiàn)發(fā)出,先移入的數據是高位還是低位,取決于SOPC Builder的配置)。
②接收邏輯。移位寄存器捕獲到完整的數據后,再將其移入接收數據寄存器中(由SDO信號線(xiàn)捕獲數據)。
1.2 軟件結構
目前,在采用32位的軟核Nios II處理器中,提供了4層軟件開(kāi)發(fā)模式:Nios II系統硬件,驅動(dòng)程序層,硬件抽象層應用程序接口(HAL API),應用程序層。SPI核的應用和軟件結構如圖2所示。
評論