當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]Flash編程器的FPGA實現(xiàn)

1 引言

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

       現(xiàn)在的數(shù)字電路應用系統(tǒng)設(shè)計中,經(jīng)常遇到大容量的數(shù)據(jù)存儲問題。Flash由于容量大、存儲速度快、體積小、功耗低等諸多優(yōu)點,而成為應用系統(tǒng)中數(shù)據(jù)存儲器件的首選。由于在研制實時信號處理系統(tǒng)時,需要一塊大容量的Flash來存儲坐標變換的數(shù)據(jù)作查找表,因此面臨一個如何對Flash進行編程,將數(shù)據(jù)寫入Flash的問題。由于我們選用的Flash芯片為SST39SF010/020,是最新生產(chǎn)的型號,需要自己開發(fā)編程器來滿足設(shè)計需要,達到既經(jīng)濟又實用的目的。這一型號的Flash采用的是標準的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#:片選使能——當CE#為低電平有效;

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

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

       VDD:接5V電源;

       VSS:接地。

       在對Flash進行編程操作前,必須保證存儲單元為空。如果不為空,就必須先對Flash芯片進行擦除操作。由于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ù)如表所示。[!--empirenews.page--]3 FPGA實現(xiàn)Flash編程器的設(shè)計

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

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

  
  

       實現(xiàn)一個控制功能,可以用有限狀態(tài)機實現(xiàn),也可以用CPU實現(xià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)的方案。 

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

       狀態(tài)進程:狀態(tài)進程對狀態(tài)機的時鐘信號敏感,當時鐘發(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ù)當前狀態(tài)(現(xiàn)態(tài))給輸出信號賦值,并決定下一狀態(tài)(次態(tài))。在本例中,狀態(tài)機根據(jù)不同的狀態(tài)對CE#、OE#、 WE、地址、數(shù)據(jù)等Flash控制信號進行賦值,從而實現(xiàn)對Flash的控制功能。

       但是每執(zhí)行一次寫操作,只能寫入一個地址單元里的8bit數(shù)據(jù),如果按照這個方法,完成整個Flash芯片1Mbit數(shù)據(jù)的寫入就需要重復執(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 元件,程序當中直接引用和映射該元件,將要寫入Flash的數(shù)據(jù)先寫入該ROM元件中,然后在每次寫操作中將ROM中的數(shù)據(jù)按地址順序逐一寫入Flash中的一個連續(xù)32Kbit的扇區(qū)當中,這樣編程器的一次寫操作就可以寫入32Kbit數(shù)據(jù),因為32K×32=1Mbit,則依次改變Flash的高5位地址,重復32次上述的寫操作,這樣1Mbit的數(shù)據(jù)就寫入了整片F(xiàn)lash中,大大提高了編程器寫操作的效率。至于ROM元件中的數(shù)據(jù),則以ASCⅡ碼的形式存在以.

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

       4 結(jié)束語

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

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉