基于FPGA的微型數(shù)字存儲系統(tǒng)設(shè)計
2.1.3 USB 2.0控制器CY7C68013
CY7C68013是Cypress公司生產(chǎn)的一款USB 2.0控制器,該器件具有運算速度快、功耗小和性價比高等特點。時鐘周期高達(dá)40 MHz,每執(zhí)行1條指令需4個時鐘周期;其內(nèi)部集成有USB接口,I2C總線接口等,該系統(tǒng)設(shè)計實際數(shù)據(jù)傳輸速度高達(dá)10 MHz。
2.2 電路設(shè)計思路
圖1為系統(tǒng)硬件結(jié)構(gòu)框圖,計算機(jī)通過USB接口控制可編程邏輯器件FPGA實現(xiàn)對Flash存儲器的塊擦除、頁編程、讀數(shù)據(jù)等操作。本文引用地址:http://www.biyoush.com/article/191913.htm
塊擦除操作時,計算機(jī)通過USB接口向FPGA發(fā)送指令,FPGA接收到指令后對Flash存儲器進(jìn)行塊擦除操作,并將狀態(tài)返回計算機(jī);頁編程操作時, FPGA接收計算機(jī)并行接口發(fā)送的指令,立即對Flash存儲器進(jìn)行頁編程操作,先寫命令,再寫要編程的地址,然后將數(shù)據(jù)發(fā)送到Flash存儲器中;讀取數(shù)據(jù)操作時,F(xiàn)PGA首先接收計算機(jī)發(fā)出的指令,然后對Flash存儲器進(jìn)行讀取數(shù)據(jù)操作,先寫命令,再寫要讀取的地址,然后開始輸出數(shù)據(jù),并將狀態(tài)返回計算機(jī)并行接口。
3 系統(tǒng)軟件設(shè)計
3.1 FPGA對Flash的讀、寫、擦除操作
FPGA執(zhí)行對Flash的讀、寫、擦除操作是利用VHDL語言的狀態(tài)機(jī)實現(xiàn)的。狀態(tài)機(jī)控制Flash的時序電路簡單易行,邏輯關(guān)系一目了然。XC2S50接收到CY7C68013傳來的擦除控制命令,立即執(zhí)行擦除操作。按照時序,首先寫入自動塊擦除設(shè)置命令60H,之后依次寫入2個行地址和1個列地址進(jìn)行尋址,而后寫入擦除命令D0H開始執(zhí)行擦除操作。
評論