国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

Flash 編程器的FPGA實現(xiàn)

發(fā)布時間:2010-9-15 12:31    發(fā)布者:conniede
關(guān)鍵詞: Flash , FPGA , 編程器 , 存儲器
1 引言

閃速存儲器(FLASH Memory)以其集成度高、成本低、使用方便等許多優(yōu)點,廣泛應(yīng)用于通訊設(shè)備、辦公設(shè)備、家用電器、醫(yī)療設(shè)備等領(lǐng)域。利用其保存信息的非易失性和在線更新數(shù)據(jù)參數(shù)的特性,可將其作為具有一定靈活性的只讀存儲器(ROM)使用。

現(xiàn)在的數(shù)字電路應(yīng)用系統(tǒng)設(shè)計中,經(jīng)常遇到大容量的數(shù)據(jù)存儲問題。Flash由于容量大、存儲速度快、體積小、功耗低等諸多優(yōu)點,而成為應(yīng)用系統(tǒng)中數(shù)據(jù)存儲器件的首選。由于在研制實時信號處理系統(tǒng)時,需要一塊大容量的Flash來存儲坐標(biāo)變換的數(shù)據(jù)作查找表,因此面臨一個如何對Flash進(jìn)行編程,將數(shù)據(jù)寫入Flash的問題。由于我們選用的Flash芯片為SST39SF010/020,是最新生產(chǎn)的型號,需要自己開發(fā)編程器來滿足設(shè)計需要,達(dá)到既經(jīng)濟又實用的目的。這一型號的Flash采用的是標(biāo)準(zhǔn)的5V電壓供電,器件在命令控制下自己產(chǎn)生內(nèi)部的擦除電壓Vpp,從而完成數(shù)據(jù)的寫入和芯片的擦除等各種功能。而FPGA這種大規(guī)模的可編程器件十分適合邏輯電路的設(shè)計,能方便地控制和產(chǎn)生 Flash編程操作中的各種控制命令,實現(xiàn)編程器的功能。

2 Flash的性能參數(shù)和操作時序

以最新的Flash芯片型號SST39SF010/020為例,容量為1/2Mbit(×8)。 它的主要性能有:

● 單一的5.0V電壓讀寫操作;

● 高可靠性,超過100年的數(shù)據(jù)保持能力;

● 快速擦除和字節(jié)編程功能

——扇區(qū)擦除時間典型值只需7ms;

——片擦除時間典型值只需15ms;

——字節(jié)編程需時間典型值只需20微秒;

——片重寫時間需3ms(SST39SF010)

● 片內(nèi)部產(chǎn)生Vpp編程電壓,實現(xiàn)自動讀寫時序;

● I/O兼容TTL;

各引腳功能:

Ams~A0:地址輸入 ——提供存儲器地址;

DQ7~DQ0:數(shù)據(jù)輸入/輸出 ——在讀時序時輸出數(shù)據(jù),在寫時序時接收輸入的數(shù)據(jù);

CE#:片選使能——當(dāng)CE#為低電平有效;

OE#:輸出使能——選通輸出緩存器;

WE#:寫使能——控制寫時序;

VDD:接5V電源;

VSS:接地。  

在對Flash進(jìn)行編程操作前,必須保證存儲單元為空。如果不為空,就必須先對Flash芯片進(jìn)行擦除操作。由于Flash采用了模塊分區(qū)的陣列結(jié)構(gòu),使得各個存儲模塊既可以整個芯片一齊被擦除,還可以使各個存儲模塊被獨立的分別擦除。只需在地址和數(shù)據(jù)端寫入不同的操作命令即可實現(xiàn)不同的擦除操作。

SST39SF010的編程操作分三步驟:第一步是連續(xù)載入三字節(jié)命令的軟件數(shù)據(jù)保護操作,第二步是寫入字節(jié)地址和字節(jié)數(shù)據(jù),在編程操作過程中,地址是在CE#或WE#的下降沿時有效,而數(shù)據(jù)則是在CE#或WE#的上升沿時有效;第三步是芯片內(nèi)部的編程操作,該操作在CE#或WE#的第四個上升沿有效,隨后該內(nèi)部編程操作在30微秒內(nèi)即可完成。

FLASH的編程操作是自動字節(jié)操作,編程時要特別注意編程時間參數(shù)和使用的命令集。編程和擦除時鐘周期的定時參數(shù)如表所示。  

3 FPGA實現(xiàn)Flash編程器的設(shè)計

Flash編程器的關(guān)鍵是要保證Flash地址和數(shù)據(jù)信號在時序上的嚴(yán)格要求,由SST39SF010的編程和擦除周期時序參數(shù)得知,它的地址或數(shù)據(jù)信號的建立和保持時間的最小時鐘周期僅為30ns。為此,我們采用了40MHz的晶振作為FPGA的驅(qū)動時鐘,它的最小時鐘周期為25ns,完全可滿足最小的時間周期要求。  

采用FPGA來實現(xiàn)Flash編程器,主要是如何對Flash進(jìn)行寫操作,利用VHDL語言編寫的寫操作進(jìn)程表示如下:

  


實現(xiàn)一個控制功能,可以用有限狀態(tài)機實現(xiàn),也可以用CPU實現(xiàn),二者相比,前者性能遠(yuǎn)高于后者。因為,在Von Neumann結(jié)構(gòu)的CPU中,需要許多操作(例如取數(shù)和執(zhí)行)和部件(例如數(shù)據(jù)通路和ALU寄存器)。而狀態(tài)機中,狀態(tài)存儲在多個觸發(fā)器中,表示行為的代碼存儲在門級網(wǎng)絡(luò)中。對于通常的一條選擇判斷語句,如果用CPU實現(xiàn),一般需要10~20條機器指令,其執(zhí)行時間與CPU的速度有關(guān)。如果由門和觸發(fā)器實現(xiàn),則執(zhí)行時間為一個時鐘周期。因此用VHDL實現(xiàn)的狀態(tài)機的控制性能要優(yōu)于CPU實現(xiàn)的方案。

如上述程序,在編程器的寫操作進(jìn)程中,我們使用Moore型狀態(tài)機,它最大的特點是輸出僅是狀態(tài)向量的函數(shù),即Moore狀態(tài)機的輸出僅和當(dāng)前狀態(tài)(現(xiàn)態(tài))有關(guān)。在寄存器轉(zhuǎn)移級的有限狀態(tài)機中包括狀態(tài)進(jìn)程和組合進(jìn)程兩部分。  

狀態(tài)進(jìn)程:狀態(tài)進(jìn)程對狀態(tài)機的時鐘信號敏感,當(dāng)時鐘發(fā)生有效跳變時,狀態(tài)機的狀態(tài)發(fā)生變化,由次態(tài)變?yōu)楝F(xiàn)態(tài)。本例中,將寫操作分成900個狀態(tài),狀態(tài)0初始化各輸出信號,狀態(tài)1~5執(zhí)行第一個控制命令,狀態(tài)7—10執(zhí)行如第二個控制命令,狀態(tài)12~15執(zhí)行第三個控制命令,狀態(tài)17~ 20給出要寫入的地址和數(shù)據(jù),狀態(tài)21~900保持控制信號,是芯片內(nèi)部編程時間。 組合進(jìn)程:組合進(jìn)程就根據(jù)當(dāng)前狀態(tài)(現(xiàn)態(tài))給輸出信號賦值,并決定下一狀態(tài)(次態(tài))。在本例中,狀態(tài)機根據(jù)不同的狀態(tài)對CE#、OE#、 WE、地址、數(shù)據(jù)等Flash控制信號進(jìn)行賦值,從而實現(xiàn)對Flash的控制功能。  

但是每執(zhí)行一次寫操作,只能寫入一個地址單元里的8bit數(shù)據(jù),如果按照這個方法,完成整個Flash芯片1Mbit數(shù)據(jù)的寫入就需要重復(fù)執(zhí)行寫操作 128K次,這樣既麻煩又浪費時間。我們選用的Xilinx公司SpartanⅡ系列FPGA,提供片上雙端口同步讀/寫RAM塊,每塊RAM容量為4096bit。塊RAM的每個端口可獨立配置為讀/寫端口、讀端口或?qū)懚丝冢瑫r還能配置為任何想要的數(shù)據(jù)帶寬。因此塊RAM可使FPGA設(shè)計者的設(shè)計更加簡單,可以把塊RAM配置成ROM、RAM、FIFO等多種元件,具有使用方便、性能優(yōu)越等特點,是一種十分高效的內(nèi)部存儲器解決方案。因此我們采用FPGA的塊RAM作為內(nèi)部數(shù)據(jù)緩沖器,以提高 Flash寫操作的速度和效率。

在本例中,使用內(nèi)部塊RAM產(chǎn)生一個32Kbit 的ROM 元件,程序當(dāng)中直接引用和映射該元件,將要寫入Flash的數(shù)據(jù)先寫入該ROM元件中,然后在每次寫操作中將ROM中的數(shù)據(jù)按地址順序逐一寫入Flash中的一個連續(xù)32Kbit的扇區(qū)當(dāng)中,這樣編程器的一次寫操作就可以寫入32Kbit數(shù)據(jù),因為32K×32=1Mbit,則依次改變Flash的高5位地址,重復(fù)32次上述的寫操作,這樣1Mbit的數(shù)據(jù)就寫入了整片F(xiàn)lash中,大大提高了編程器寫操作的效率。至于ROM元件中的數(shù)據(jù),則以ASCⅡ碼的形式存在以.co e為后綴的文件當(dāng)中,在由 CoreGenerator生成ROM元件時,根據(jù)需要選擇相應(yīng)存有數(shù)據(jù)的.coe文件,將該文件的路徑導(dǎo)入,執(zhí)行Generate操作,最后生成的ROM元件就包含了.coe文件中的數(shù)據(jù)。

CoeGenerator是一個元件生成軟件,它給用戶提供了一個通用化的設(shè)計界面,提供RAM、ROM、乘法器、各種標(biāo)準(zhǔn)接口等許多設(shè)計中常用的元件模型,這樣設(shè)計者不必自己動手編寫,而采用CoeGenerator即可生成自己需要的各種元件。這些元件都是經(jīng)過了最優(yōu)化設(shè)計,占用資源最少,性能最優(yōu),還大大節(jié)省了設(shè)計時間,方便了設(shè)計者。產(chǎn)生的ROM元件將存儲在設(shè)計工程之中,需要在程序中加入引用語句,才可以使用。 VHDL程序中使用CoreGenerator產(chǎn)生的元件需要加入兩段語句,一是在實體部分對要引用的ROM元件進(jìn)行說明,二是在結(jié)構(gòu)體中對ROM元件例化,映射例化元件的輸入/輸出信號。 由于FPGA具有在線可再編程性能,因此當(dāng)系統(tǒng)中FLASH 直接由FPGA存取時,我們可以用FPGA實現(xiàn)對Flash的編程,在編程操作之后,對FPGA 進(jìn)行再配置,實現(xiàn)其它系統(tǒng)功能,達(dá)到一個FPGA器件實現(xiàn)多種應(yīng)用的目的。

4 結(jié)束語

使用VHDL語言,由FPGA來實現(xiàn)Flash編程器的功能,不僅節(jié)約了專用編程器的采購開支,更重要的是可以靈活、快速地實現(xiàn)專用Flash編程器的功能。隨著微電子技術(shù)的發(fā)展,可編程器件的容量已經(jīng)達(dá)到千萬門級,越來越多的過去必須由專用芯片或器件才能完成的工作現(xiàn)在都可以通過設(shè)計軟件,由FPGA來實現(xiàn)了。硬件的軟件化已經(jīng)成為電子行業(yè)中不可阻擋的趨勢。
本文地址:http://www.qingdxww.cn/thread-26916-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
wfnic 發(fā)表于 2011-7-10 10:30:25
hap1
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 我們是Microchip
  • 利用模擬開發(fā)工具生態(tài)系統(tǒng)進(jìn)行安全電路設(shè)計
  • Cortex-M4外設(shè) —— TC&TCC結(jié)合事件系統(tǒng)&DMA優(yōu)化任務(wù)培訓(xùn)教程
  • 想要避免發(fā)生災(zāi)難,就用MPLAB SiC電源仿真器!
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产福利免费在线观看 | 一级爱爱片一级毛片-一毛 一级a爰片久久毛片 | 久久三级视频 | 一级二级黄色片 | 精品视频香蕉尹人在线 | 黄色成人一级片 | 一二三四免费视频社区 | 欧美日韩高清观看一区二区 | 女人l8毛片a一级毛片 | 99在线播放视频 | 欧美夜夜精品一级爽 | 成视频年人黄网站免费视频 | 不卡在线观看 | 国内精品在线观看视频 | 日韩在线免费视频观看 | 成人国产一区二区三区 | 国产一级做a爰片久久毛片 国产一级做a爰片... | 成人三级精品视频在线观看 | 色www永久免费网站国产 | 欧美性精品hd在线观看 | 2022国产精品视频 | 2022国产男人亚洲欧美天堂 | 欧美久| 国产三级精品三级在线观看 | 影音先锋色先锋女同另类 | 99国产精品热久久久久久夜夜嗨 | 亚洲精品aⅴ中文字幕乱码 亚洲精品98久久久久久中文字幕 | 黄页网站在线观看 | 年轻的馊子1中字hd 年轻的嫂子在线线观免费观看 | 国产精品一区二区三 | 狠狠色婷婷综合天天久久丁香 | 国产一区二区免费播放 | 2019天天操天天干天天透 | 亚洲欧美一区二区三区在线 | 羞羞视频免费观看网站 | 亚洲激情区 | 996久久国产精品线观看导航 | 亚洲男人的天堂久久精品 | 国产精品妖精视频 | 99精品在线视频观看 | dy888午夜国产午夜精品 |