用單片機實現(xiàn)可編程邏輯器件的配置
用單片機配置可編程邏輯器件與上述PS配置方式原理一致,只需模擬PS配置方式中DATA0、DCLK、nCONFIG、CONF_DONE、nSTATUS引腳的配置時序,將配置數(shù)據(jù)串行移入PLD。配置引腳的功能如表1所示。
3.1 硬件設(shè)計
用單片機配置PLD,可以使用普通輸入輸出口或單行口。使用普通I/O口(如P1口),向PLD發(fā)送1Bit數(shù)據(jù)至少需要4個指令周期。一個指令給DATA0賦值,兩個指令產(chǎn)生DCLK時鐘,一個指令移位取數(shù)據(jù)。如果晶振為fosc,一個指令周期為12/fosc,因此它的下載速率為fosc/48。然而如果采用串行口方式0,其下載速率提高為fosc/12??紤]到PLD配置文件數(shù)據(jù)比較大,通常都在數(shù)十千字節(jié)以上(其配置文件大小如表2),為了加快配置速度,并適合各種不同規(guī)模的PLD,采用了WINBOND78E58單片機。
該單片機外接晶振最大頻率為40MHz,它在串行口方式0下波特率可設(shè)置為fosc/4。另外通過設(shè)置特殊功能寄存器CKCON的MD0、MD1、MD2三位,可以將MOVX、MOVC等指令周期縮短至2個機器周期。與普通單片機相比,可使配置時間大為縮短。WINBOND78E58單片機內(nèi)部擁有32KB FLASH ROM.由配置文件數(shù)據(jù)表2可知,只需一片單片機就可以對EPF10K20系列以下的PLD進行配置了。本系統(tǒng)中使用了一片APEX20K300E,因此在硬件電路設(shè)計中,擴展了一片WINBOND29C040 FLASH存儲器(容量為512KB),其電路如圖2。DATA0與RXD、DCLK與TXD、nCONF與P15、CONFIG_DONE與P16、nSTATUS與P17分別相連。
評論