Flash外部配置器件在SOPC中的應用

2021-01-13 電子產品世界

  1 Flash在SOPC中的作用

本文引用地址:http://www.eepw.com.cn/article/85162.htm

  Flash在SOPC中的作用主要表現在兩方面:一方面,可用Flash來保存FPGA的配置文件,從而可以省去EPCS晶片或解決EPCS晶片容量不夠的問題。當系統上電後,從Flash中讀取配置文件,對FPGA進行配置。另一方面,可用Flash來保存用戶程序。對於較為複雜的SOPC系統,用戶程序一般較大,用EPCS來存儲是不現實的。系統完成配置後,將Flash中的用戶程序轉移到外接RAM或片內配置生成的RAM中,然後系統開始運行。

  2 Flash編程的實現

  本文以某項目的具體電路為例,闡述在SOPC系統中如何利用Flash來保存用戶程序。FPGA為Altera公司的Cyclone EP1C6,Flash為AMD公司的AM29LV160D,外接RAM為Samsung公司的K4S643232H,串行配置器件為EPCS1。開發工具採用Altera公司提供的QuartusII和NioslI軟體。

  NiosII的開發環境中提供了Flash Programmer工具,對目標板上遵守CFI(Common Flash Interface)規範的Flash進行編程。CFI是一種Flash接口規範,只要Flash符合該規範,通過專門的命令就能獲得其詳細的參數,並根據這些參數訪問Flash。利用Altera公司的下載電纜,Flash Programmer工具可以對Flash器件中的任意偏移地址進行任意內容的編程。Flash Programmer工具對Flash編程分為2個步驟:

  ①根據目標板編程描述對FPGA進行配置;

  ②Flash Programmer工具將要編程到Flash的文件內容傳送到FPGA的數據緩衝區,然後FPGA將收到的數據寫入Flash中。

  2.1 目標板編程描述的創建

  目標板編程描述實際就是一個由SOPC Builder系統生成的最小FPGA設計,其作用是對FPGA進行適當配置以實現對Flash的編程。不同的電路板(目標板)往往使用不同的Flash器件,並且Flash與FPGA的引腳連接以及FPGA的型號也不相同,因此每個目標板編程描述都是與具體的目標板相關聯的,不能用於其他目標板。目標板提供了Flash Programmer工具對Flash進行編程的全部信息,包括Flash的容量、Flash的引腳連接等。

  一個目標板編程描述包含以下信息:每個接到FPGA上Flash器件的參考元件標號;Flash器件在目標板編程描述中的基地址;用於配置FPGA的SOF文件。

  目標板編程描述的創建分2步:

  ①在Nios SDK Shell中使用mk_target_board命令創建一個工程模板;

  ②使用SoPC Builder對模板進行編輯,從而形成完整的目標板編程描述。

  每個目標板編程描述應包含下列元件:NiosII CPU;JTAG_UART接口;本目標板中採用串行配置器件EPCS存儲FPGA的配置文件,因此需要Active Serial MemoryInterface(ASMI);Tri-State Bridge(三態橋);CFI接口的Flash;System ID Peripheral;用於存放程序以及作為數據緩衝的On-chip memory。

  下面以本目標板為例,介紹創建目標板編程描述的步驟:

  ①啟動NiosII SDK shell;

  ②運行mk_target_board命令,創建一個目標板Flash編程描述模板(參數name=flash_board,family=cyclone,clock=80,index=1,epcs=U5,buffer_size=2 048,class=flash_programer);

  ③啟動QuartusII軟體並打開剛才創建的目標板編程描述工程flash_programer.qPf;

  ④在QuartusII軟體中選擇Assignments→Device打開setting對話框,選取FPGA型號,本例為EP1C6Q240C8;

  ⑤啟動SOPC Builder,在Target選項區的Board下拉列表框中選擇Unspecified Board,Clock欄的時鐘頻率取50 MHz,在模板的基礎上添加三態橋Avalon Tri-State Bridge和CFI接口的Flash(Flash的參考標號為U5,地址為20位,數據為16位);

  ⑥選擇System Generation選項卡,關閉Simulation選項,然後單擊Generate按鈕;

  ⑦當生成完成後,退出SOPC Builder,並返回到QuartuslI;

  ⑧在QuartuslI中更新原理圖,然後添加、連結並命名引腳;

  ⑨進行引腳分配,確保與FPGA各引腳的連接一致;

  ⑩編譯並保存工程。

  編譯成功後,目標板編程描述即成功創建。打開SOPC Builder即可在Target選項區的Board下拉列表框中找到該目標板編程描述,本例為flash_board。(該目標板編程描述的頂層圖略——編者注)

  創建好的目標板編程描述在任何設計的SOPC Builder中都能使用。如果想讓該目標板編程描述在其他PC機上使用,將整個設計文件夾拷貝到NiosII安裝路徑<安裝盤>\altera\kits\nios2\components目錄下即可。

  2.2 使用Flash Programmer工具編程Flash

  目標板編程描述創建後會在SOPC Builder中的Target選項區的Board下拉列表框中顯示出來。本例中所創建的目標板編程描述為flash_board。目標板編程描述創建後就可以在目標板上進行用戶SOPC系統的開發了,並能將用戶程序編程到Flash存儲器件中。採用EPCS器件存儲配置文件、Flash器件存儲用戶程序的SOPC系統的開發流程如圖1所示。

  用Flash Programmer工具對Flash編程的步驟如下:

  ①創建項目,構建SOPC硬體系統。

  ②啟動NiosII,建立SOPC系統的軟體然後進行編譯、連結。

  ③在NiosII中選中要進行編程的工程,然後選擇Tools→Flash Programmer,打開Flash Programmer窗口。

  ④在Main選項中,選中Program software project in-to flash memory project,表示要將工程的flash_progra-mer.elf文件寫入Flash。對flash_programer.elf文件的編程,在Flash Programmer窗口中並沒有存儲器和偏移地址的設置。存儲器和偏移地址由SOPC Builder中的Reset Address指向的存儲器和設置的偏移地址決定。如果將Reset Address指向Flash、偏移地址從0x00開始,那麼Flash Programmer就會從Flash的「基地址+0x00」開始燒寫數據。如果將Reset Address指向EPCS Controller、偏移地址從0x00開始,那麼Flash Programmer就會從EPCS的「基地址+配置數據空間+0x00」開始燒寫數據。

  ⑤選擇Target Connection選項卡,在JTAG cable和JTAG device欄中選中當前所用的下載電纜和JTAG器件。

  ⑥單擊Apply按鈕,然後單擊Program Flash按鈕,開始對指定的Flash存儲器編程。

  當完成Flash編程後,由於當前的EPCS中的配置文件是目標板編程描述的配置文件,所以寫入Flash的用戶程序並不會馬上運行。用戶需要給系統重新上電,使FPGA使用EPCS中的配置文件重新配置FPGA,此時用戶程序就能正常運行。

  結 語

  本文針對SOPC系統開發所面臨的問題,提出採用外接Flash存儲器件是最直接、最有效的解決方法。將FPGA的配置文件存入EPCS、用戶程序存人Flash器件,SOPC系統上電後首先進行配置,然後將Flash中的用戶程序載入系統RAM,這樣不僅解決了存儲容量的問題,也解決了Flash存取速度較慢的問題。本文對外接Flash的SOPC系統開發有一定的參考價值。

相關焦點

  • 基於SoPC目標板Flash編程設計的創建及應用
    NiosII嵌入式CPU是一種專門為SoPC設計應用而優化的CPU軟核。 在基於NiosII的SoPC嵌入式系統中,幾乎所有的應用設計都需要使用Flash來保存在NiosII中運行的程序代碼、非易失性數據和FPGA的配置數據。因此Flash編程便成為在調試完SoPC系統後的重要工作。
  • 如何配置MBR器件,電容式觸摸傳感器在家電及安全系統中的應用
    在第3部分,我們不僅將介紹更多應用實例,而且還將介紹如何配置MBR器件才能實現這些應用所需的專門功能。 步驟3:為您的設計創建配置: 1.家用電器中的觸摸按鍵 觸摸按鍵可在電磁爐等家用電器中使用,取代機械按鍵。家用電器的用戶界面(UI)具有防水性。用戶用溼手觸摸電磁爐按鍵是常有的事。同樣,水或食物也有可能掉在電磁爐的UI面板上。
  • 控制之道-外部機制為CMOS LDO器件提供限流保護
    功率半導體開發越來越趨向在器件支持的功能集中增添新的功能,從而提升電路設計靈活性。低壓降(LDO)穩壓器的功能可增加的關鍵領域就是支持外部控制限流。這使其功耗能在無須使用複雜控制的條件下保持在極低等級。圖1顯示了可調節軟啟動CMOS LDO的框圖,其中包括採用外部控制的限流保護電路。
  • 熱電偶應用中冷結點補償的應用實例
    本文比較了幾種冷結點補償器件,並以矽溫度傳感器檢測IC為例介紹了三種應用設計方法和測量的結果。 溫度測量應用中有多種類型的傳感器,熱電偶是最常用的一種,可廣泛用於汽車、家庭等。與電阻式溫度檢測器(RTD)、熱電調節器、溫度檢測集成電路(IC)相比,熱電偶能夠檢測更寬的溫度範圍,具有較高的性價比。
  • 如何使用外部模擬電壓控制數字電位器
    本應用筆記描述了使用外部模擬電壓改變數字電位器阻值的簡易方法。數字電位器DS1803作為本應用中的示例器件,另外還用到極少數其他外部器件。這裡介紹的方法適用於其他控制器輸入和其他數字電位器/可變電阻。硬體配置圖1顯示了使用PIC12F683的控制電路原理圖。微控制器6個GPIO中的4個用於控制SDA、SCL的輸出信號、單個LED,並接收一路模擬輸入。
  • SOPC_SOPC是什麼?
    SOPC技術方案種類及指標比較  方案1:基於FPGA嵌入IP硬核的SOPC系統  該方案是指在FPGA中預先植入處理器。最 常用的是含有ARM32位智慧財產權處理器核的器件。  方案3:基於HardCopy技術的SOPC系統  HardCopy就是利用原有的FPGA開發工具, 將成功實現於FPGA器件上的SOPC系統通過特定的技術直接向ASIC轉化,從而克服傳統ASIC設 計中普遍存在的問題。
  • Flash在2020年底停止更新,為何會遭到Adobe拋棄?
    在21世紀初,也就是桌上型電腦逐漸走進普通家庭的生活中,網頁遊戲是非常受歡迎的,因為玩起來非常方便,但是在玩網頁遊戲或觀看網頁視頻的時候,需要安裝一個插件才能夠正常顯示,它就是flash,也就是大名鼎鼎的Adobe公司研發的。
  • 光耦器件及其應用
    這種隔離在兩個電路的電位相差幾千伏的高壓應用中很有用。光耦合器(或光耦合隔離器)最常見的工業用途是作為高壓皮托管裝置(限位開關等)和低壓固態邏輯電路之間的信號轉換器。光隔離器可用於任何信號必須在相互隔離的兩個電路之間傳遞的情況。為了防止一個電路中產生的噪聲傳遞到另一個電路中,通常需要兩個電路之間的完全電氣隔離(即兩個電路中沒有導體)。
  • 電動車無刷電機控制器系統中PSoC晶片的應用
    片內備有通用模擬和數字模塊,用戶可根據開發需要,隨意調用模塊,實現混合信號陣列的動態配置。文中以CY8C24423為例,介紹PSoC在電動車無刷電機控制器上的應用,它將對電壓電流信號的放大、處理、模數轉換功能,以及PWM信號輸出功能全部集成到微處理器的內部完成,減少了晶片的外圍器件,提高了系統整體的集成性能和可靠性。
  • LPC1114時鐘配置
    要讓LPC1114正常工作,首先要對它的時鐘源進行配置。LPC1114的最高工作頻率為50MHz,因此給它的主時鐘頻率最大不能超過50MHz。實際上,通常都是使用頻率較低的晶振,以降低外部電磁幹擾,然後再通過內部倍頻的方式把主時鐘頻率提高。
  • 霍爾開關器件在TWS耳機中的應用
    其中手機中的代表蘋果打出「取消3.5mm音頻接口+推出真無線耳機」這一套組合拳,隨後各手機大廠商紛紛跟進,無疑加速了變化的無線耳機發展過程。現如今走在街上,我們可以看到越來越多人在用著各式各樣的無線耳機。一開始還抱怨「又得買新耳機」的朋友,也逐漸被TWS耳機無拘無束的使用體驗吸引,紛紛轉用TWS耳機。
  • 核酸檢測需要用到哪些應用器件?
    本文將簡要介紹這種檢測方法,並詳細介紹此類儀器主要模塊中的一些實際應用器件。在LAMP擴增過程中,加熱和冷卻元件將樣本保持在60°C-65°C的恆定溫度下。避免熱循環有助於加快這一反應,但需要一組更高級的引物。tkvednc圖2所示為PoC分子診斷分析儀的傳感器前端/TEC單元的示意圖,其基於TIDDC112電流輸入模數轉換器(ADC)以及TI電流驅動器、精密放大器和溫度傳感器。
  • 怎麼啟用Flash,怎麼啟動瀏覽器Flash
    【無法註冊adobe flash player插件】--臨時運行提示這樣的錯誤,可以刷新一下瀏覽器。會提示一個對話框,選擇【允許】刷新的時候有時候會提示類似下圖的窗口,可以選擇長期允許即可啟用flash插件打開瀏覽器,點擊右上角的一個【工具】,然後會彈出一個二級菜單,在裡面選擇【Interent選項】如圖找到選擇【程序】,然後點擊【管理加載項】工具欄和擴展打開後,在裡面可以找到FLASH插件,看是否處於禁止狀態,如果是的話,點擊下面的開啟,然後再去刷新網頁
  • 光電子器件在光纖通信中的應用及相關企業介紹
    在光纖通信系統中,廣泛應用的元器件可以劃分為兩種類型,一種是無源元器件,另一種是有緣元器件。無源元器件主要包括了光耦合器、光衰減器、光隔離器以及光濾波器等,而有源元器件則包括了光源、光檢測器以及放大器等。
  • 基於SOPC的SPWM脈衝發生器的實現
    隨著電力電子開關器件及技術的不斷發展,SPWM(正弦波脈寬調製)技術在逆變控制領域得到廣泛應用。傳統的SPWM驅動晶片速度慢、不夠靈活,存在著電路設計複雜、體積大、抗幹擾能力差、設計周期長等缺點,對於許多有特殊要求的場合,由專用晶片很難滿足實際的要求,因此,本文採用Ahera公司的EP2C35F672C8N開發一種基於可編程片上系統的SPWM脈衝波形電路,SOPC技術將微處理器和SP-WM波形電路整合到一塊FPGA器件當中。
  • MSC1212在絕熱材料導熱係數測定系統中的應用
    msc1212工作電壓2.7 v~5.25v,微控制器核是經過優化的8051內核,在給定時鐘源的情況下,它的執行速度比標準的8051內核快三倍,從而使得器件可以在更低的外部時鐘頻率下工作,在功耗比標準的8051低的情況下,仍可達到相同的性能。
  • 霍爾器件的應用及原理
    打開APP 霍爾器件的應用及原理 發表於 2019-06-20 11:28:37 置於磁場中的靜止載流導體,當它的電流方向與磁場方向不一致時,載流導體上平行於電流和磁場方向上的兩個面之間產生電動勢差,這種現象稱霍爾效應。
  • ...DC/DC 控制器無需功率電感器,在非隔離式中間總線轉換器應用中...
    打開APP 72V 固定比例 DC/DC 控制器無需功率電感器,在非隔離式中間總線轉換器應用中提供超過 500W 功率 廠商供稿 發表於 2017-06-21 14:35:33
  • 碳化矽器件的分類及典型應用
    碳化矽電力電子器件技術的進步及產業化,將在高壓電力系統開闢全新應用,對電力系統變革產生深遠影響。碳化矽電力電子器件優異的高效、高壓、高溫和高頻特性,使其在家用電器、電機節能、電動汽車、智能電網、航天航空、石油勘探、自動化、雷達與通信等領域有很大應用潛力。