FPGA中SPI Flash存儲器的復用編程方法的實(shí)現
SPI(Serial Peripheral Interface,串行外圍設備接口)是一種高速、全雙工、同步的通信總線(xiàn),在芯片的引腳上只占用4根線(xiàn),不僅節約了芯片的引腳,同時(shí)在PCB的布局上還節省空間。正是出于這種簡(jiǎn)單、易用的特性,現在越來(lái)越多的芯片集成了這種通信協(xié)議。
1 SPI配置介紹
1.1 Spantan-3E SPI配置流程
SPI方式是通過(guò)符合SPI接口時(shí)序的第三方SPIFlash對FPGA進(jìn)行加載。它適合作為FPGA硬件結構的bit文件保存介質(zhì),如果應用軟件工程編譯后的代碼較小,保存在同一片SPI FLash中(即復用SPI Flash)無(wú)疑是可行的最廉價(jià)方案。
由于本沒(méi)計軟件工程規模較小,所以利用此復用SPI Flash方式對FPGA進(jìn)行配置,既保存FPGA配置的bit文件,也保存應用軟件工程的bit文件。系統在上電或向PROG_B引腳發(fā)出低脈沖后,FPGA芯片經(jīng)過(guò)一個(gè)初始化序列清空內部FPGA配置存儲器。此序列開(kāi)始時(shí),DONE和INIT_B引腳均轉為低。初始化完成后,INIT_B引腳轉為高,并采樣芯片的配置模式及變量選擇引腳。
SPI模式下,FPGA對變量選擇(VS[2:0])引腳采樣,以確定發(fā)出哪個(gè)SPI命令序列。當初始化之后發(fā)出INIT_B信號時(shí),模式引腳和變量選擇引腳都必須處在正確的邏輯級,以確保正確采樣。
在變量選擇引腳選擇SPI命令集之后,FPGA將CSO_B選擇信號置為低,并且開(kāi)始通過(guò)FPGA的CCLK引腳對SPI Flash存儲器進(jìn)行時(shí)鐘控制。接著(zhù)發(fā)出8位讀命令后跟24位起始地址0x000000和目標命令集的適量虛擬字節。FPGA從地址0開(kāi)始讀取SPI Flash存儲器陣列,直到讀完所需的配置位數。如果從存儲器件讀取到有效比特流,則發(fā)DONE信號,以指示FPGA配置成功。圖1為SPI配置方式的時(shí)序。
圖2是AT45DB161D SPI Flash的配置接口。這種配置方式只占用了FPGA芯片的4個(gè)引腳,而且配置成功之后,所有SPI引腳都成為可用的用戶(hù)I/O引腳,這就節省了FPGA的引腳資源。
復用編程方法的實(shí)現" hspace=0 src="/uploadfile/mn
存儲器相關(guān)文章:存儲器原理
評論