基於SoPC目標板Flash編程設計的創建及應用

2020-12-02 電子產品世界

1 引言
隨著集成電路工藝技術的不斷發展和集成度的提高,嵌入式系統由板級向晶片級過渡,形成一種新的設計方法一片上系統(System on Chip,簡稱SoC)。SoC從整個系統的角度出發,把處理機制、模型算法、晶片結構、各層次電路,直至器件的實際電路緊密連接起來,在單個(少數幾個)晶片上實現整個系統的功能。同時隨著現場可編程邏輯陣列(FPGA)技術的日益成熟,將PLD與嵌入式處理器IP軟核相結合,形成基於可編程片上系統(System on Programmable Chip,簡稱 SOPC)的SoC解決方案,使得更加靈活的SOPC成為現代嵌入式系統設計的發展趨勢。SoPC是Altera公司提出的一種靈活、高效的SoC解決方案。它將處理器、存儲器、I/O口、LVDS、CDR等系統設計需要的功能模塊集成到一個可編程器件上,構成一種特殊的可編程片上嵌入式系統。一方面,它是可編程片上系統,即由單個晶片完成整個系統的主要功能,並具備軟硬體系統可編程的能力;另一方面,它內嵌處理器IP核,具有靈活的設計方式,用戶可根據需要隨意配置、構建、裁剪處理器IP核。目前最具有代表性的IP軟核嵌入式處理器是Altera的NiosII軟核。NiosII嵌入式CPU是一種專門為SoPC設計應用而優化的CPU軟核。
在基於NiosII的SoPC嵌入式系統中,幾乎所有的應用設計都需要使用Flash來保存在NiosII中運行的程序代碼、非易失性數據和FPGA的配置數據。因此Flash編程便成為在調試完SoPC系統後的重要工作。要對Flash編程,首先要保證在SoPC Builder中Target選項區域的Board下拉列表框中選擇用戶使用的目標板F1ash編程設計。基於實際設計需求,詳細介紹SoPC目標板Flash編程設計的創建,並以一個最小SoPC系統為例,說明目標板Flash編程設計的應用及Flash編程。

2 Flash Programmer簡介
NiosII IDE提供了Flash Programmer工具來對目標板上遵循通用Flash接口(Common Flash Interface,簡稱CFI),規範的Flash及EPCS配置器件進行編程。IDE的FlashProgrammer通過使用Altera的下載電纜能夠方便地對目標板上連接在FPGA上的Flash及串行配置器件EPCS進行編程。
2.1 Flash Programmer編程工作過程
NiosII的IDE Flash Programmer採用兩步驟將數據寫入Flash中。第一步,用一個Altera提供的特殊Flash編程設計(Flash Programmer Design)對FPGA進行配置;第二步,IDEFlash Programmer將要編程到Flash中的文件內容傳送到在FPGA上運行的Flash編程設計,然後Flash編程設計將接收到的數據編寫到Flash中。其編程工作過程如圖1所示。

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

2.2 Flash編程設計
Flash編程設計實際就是一個由SoPC Builder系統生成的最小FPGA設計。Flash編程設計是IDE Flash Programmer的關鍵組成部分。不同的目標板往往使用不同的Flash器件,並且Flash與FPGA的引腳連接以及FPGA的型號也不相同。因此,每個Flash編程設計都是與具體的目標板相聯繫的,不能用於其他的目標板。如果使用自己的目標板,那麼設計者必須創建該目標板的Flash編程設計。Altem公司的Nios開發板都提供了相應的Flash編程設計,可以在NiosII開發套件安裝目錄的、ipnios2_ip文件夾中找到。
2.3 Flash編程設計信息
目標板Flash編程設計描述了系統與目標板之間的關係。目標板Flash編程設計對Flash編程必不可少,它提供了Flash Programmer對Flash編程所需的全部信息。一個目標板Flash編程設計是一組SOPC Builder文件,其中必須指明FPGA與Flash的連接關係。一個目標板Flash編程設計包含下列信息:①每一個連接到電路板FPGA上的F1ash的參考元件標號,如U7,U7Flash,U3EPCS等;②Flash器件在F1ash編程設計中的基地址;③用於配置目標板上FPGA的Flash編程設計的SOF文件。
參考元件標號用於區分設計中不同的Flash器件。目標板上的Flash器件在設計時的命名和基地址可能不同,但參考元件標號總是相同的。

3 目標板Flash編程設計的創建
用戶自製目標板,而在Target選項區中的Board下拉列表框中沒有相應的目標板Flash編程設計,用戶就必須自己創建目標板Flash編程設計。
3.1目標板Flash編程設計文件創建
下面以QuaausII 7.0為例,詳細說明目標板Flash編程設計的創建。目標板Flash編程設計在SoPC Builder中實現。在QuaausII中新建一個工程,在[Tools]菜單中選擇[SoPC Builder],打開Ahera SOPC Builder圖形編輯界面環境。在SoPC Builder圖形編輯界面中,在[File]菜單中選擇[New Board Description],打開Board Description Editor對話框,在此對話框中選擇NetList頁面,在Device Familv欄中正確選擇目標板的FPGA系列,這裡以Cyclone II為例,如圖2所示。

選擇Flash Memory頁面,單擊New Flash Memory按鈕添加目標板的Flash器件,並輸入正確的連接到目標板FPGA的參考元件標號和Flash器件類型。參考元件標號可命名為用戶的任意字符串,如U7,EPCS,Flash等,但不能命名成U7(CFIFlash),U3(EPCS)等形式。再單擊此頁面的New HardwareImage按鈕,指定FPGA硬體配置程序的存儲位置,一般選擇EPCS器件。如果設置為Flash器件,需要有相應的外部控制器、單片機或CPLD配合使用。設置如圖3所示。

FPGA硬體配置可放在NOR Flash中,也可放在EPCS中。在Hardware Image Name欄下輸入硬體配置映像的名稱,如epcs,user,factory等。對於每一個Hardware Image Name,都要選擇一個用來存儲的Flash。如果用戶設計中,即採用EPCS,又採用NOR Flash對FPGA的配置數據進行存儲,則可在Hardware Image Name欄下輸入兩個硬體配置映像名,如user,factory,然後分別指定為前面的參考元件標號;對於offset欄的設置,如果對應的Device欄為Flash器件,則可以指定硬體映像在Flash中的編程偏移地址;如果對應的Device欄為EPCS器件,則不能在offset欄中指定偏移地址。最後選擇Files頁面,輸入Board Description Name,Version和System Template,單擊Finish按鈕完成目標板Flash編程設計的創建,如圖4所示。


相關焦點

  • Flash外部配置器件在SOPC中的應用
    2.1 目標板編程描述的創建  目標板編程描述實際就是一個由SOPC Builder系統生成的最小FPGA設計,其作用是對FPGA進行適當配置以實現對Flash的編程。  目標板編程描述的創建分2步:  ①在Nios SDK Shell中使用mk_target_board命令創建一個工程模板;  ②使用SoPC Builder對模板進行編輯,從而形成完整的目標板編程描述。
  • 基於SOPC的高精度超聲波雷達測距系統設計
    編者按:本文基於NIOS II軟核處理器和卡爾曼濾波算法,利用FPGA平臺,超聲波傳感器和LCD液晶顯示系統,設計了一種高精度超聲波雷達測距系統。以這種方法設計的SOPC系統,克服了傳統超聲波雷達測距系統噪聲幹擾過大的問題,提高了測距系統的測量精度。
  • 基於SOPC的SPWM脈衝發生器的實現
    隨著電力電子開關器件及技術的不斷發展,SPWM(正弦波脈寬調製)技術在逆變控制領域得到廣泛應用。傳統的SPWM驅動晶片速度慢、不夠靈活,存在著電路設計複雜、體積大、抗幹擾能力差、設計周期長等缺點,對於許多有特殊要求的場合,由專用晶片很難滿足實際的要求,因此,本文採用Ahera公司的EP2C35F672C8N開發一種基於可編程片上系統的SPWM脈衝波形電路,SOPC技術將微處理器和SP-WM波形電路整合到一塊FPGA器件當中。
  • 基於二維半導體可逆摻雜的可編程電子產品
    基於二維半導體可逆摻雜的可編程電子產品近年來,研究人員一直在嘗試開發新型的高性能電子設備。隨著基於矽的器件正接近其最大性能,它們最近開始探索使用替代超導體製造電子器件的潛力。二維(2-D)半導體,例如石墨烯或二硒化鎢(WSe 2),對於電子學的發展特別有希望。
  • SOPC_SOPC是什麼?
    可編程片上系統(SOPC)是一種特殊的嵌入式系統:它是用可編程邏輯技術把整個系統放到一塊矽片上,來用於嵌入式系統的研究和電子信息處理。首先它是片上系統(SOC),即由單個晶片完成整個系統的主要邏輯功能;其次,它是可編程系統,具有靈活的設計方式,可裁減、可擴充、可升級,並具備軟硬體在系統可編程的功能。可以這樣說,SOPC是PLD和SOC技術融合的結果。
  • 如何在基於面向服務架構設計的項目中應用WebService技術(上篇)
    軟體項目實訓及課程設計指導——如何在基於面向服務系統架構設計的項目中應用Web Service技術(上篇)1、了解軟體系統開發人員所能夠獲得的各種層次的功能服務及所存在的問題(1)計算機作業系統中所提供的「Service」(服務)
  • 基於Nios II的視頻運動目標檢測跟蹤系統設計
    在計算機視覺領域和智能視頻監控系統中,目標檢測與跟蹤系統是一個最要的研究內容,該系統在很多領域中經得到廣泛的應用,例如在家庭住宅小區、智能交通、銀行、超市等場所都設有視頻監控系統,起到了不需要人為的作用,就可以對採集來的視頻圖像信號進行處理,並對監控系統進行控制。
  • 基於Spartan-6 FPGA的可擴展驅動控制系統
    通過在模塊化系統架構中集成賽靈思 Spartan-6 FPGA SP605 評估套件基礎目標設計平臺以及第三方 IP 核,提供先進的電機控制算法和工業網絡支持,實現了一款高效、可擴展的設計方案。  選擇 FPGA 的原因  客戶現有的基於微控制器的解決方案不能提供客戶最迫切需要的:一種可擴展平臺。
  • 基於高性能數字晶片的多協議可編程接口設計
    設計支持高速通信、高覆蓋性的電平標準,支持多種接口協議,可控延遲,並具備一定的工作速度、穩定性和高的驅動能力的可編程輸入輸出接口電路成為當務之急。基於以上分析,本文設計了一種多協議可編程輸入輸出接口中的輸入接口電路,在用戶配置基準電壓和輸入模式的情況下,可以支持多達10種的不同協議標準,並可以通過可編程延遲模塊消除焊盤至晶片內部的保持時間,實現信號通路的同步性。
  • 基於IEC61131標準程式語言的Phoenix Contact自動控制系統
    因為IEC61131-3的五種標準程式語言已在許多文章中作了詳細的介紹,在所列的參考書也有大量的編程實例,所以這裡僅僅介紹一下PC-WorX如何於基於IEC61131國際標準相結合,成為一個PLC控制軟體的。
  • 基於SoPC的實時說話人識別控制器
    (2)有效音檢測:有效音檢測基於短時能量和短時過門限率兩個參數。判決時採取兩級判斷法:若短時能量高於高門限則判為有聲;若低於低門限則判為靜音;若介於兩者之間,則再判斷其過門限率是否高於過門限率門限,若滿足則判為有聲,否則為靜音。(3)加窗:加窗可濾去不需要的頻率分量,同時有利於減少LPCC算法在幀頭及幀尾處的誤差。本設計採用漢明窗,其表達式如下:
  • oneAPI介紹說明:一個統一的、簡化的編程模型將定義未來應用程式...
    ·         oneAPI計劃的跨架構開發模型基於行業標準和開放規範,支持廣泛的行業生態系統採納該技術來推動應用開發領域的新演進。·         英特爾® oneAPI beta產品是英特爾基於oneAPI的實現,它包括了oneAPI標準組件如直接編程工具(Data Parallel C++)、含有一系列性能庫的基於API的編程工具,以及先進的分析、調試工具等組件。
  • 圖形界面編程技巧,用Python中PyQt5庫快速創建一個應用程式框架
    我們知道,Python中有很多GUI庫,這些庫在創建應用程式時都很方便,常用的GUI庫有tkinter、wxPython、PyQt、Kivy、Pyforms、pyGUI等,比較經典的庫有tkinter、wxPython、PyQt。從今天開始,和小夥伴們一起梳理一下關於PyQt創建GUI應用程式的一些知識點和方法。
  • 基於MySQL資料庫應用開發實現嵌入式數控系統的設計
    基於MySQL資料庫應用開發實現嵌入式數控系統的設計 鄔依林 , 黃瑛 發表於 2020-12-02 10:07:37 1 引言 本文所論述是數控系統大課題中人機互動的外圍部分子課題中的資料庫開發應用
  • 基於PLC可編程控制器實現渦流檢測裝置的功能設計
    基於PLC可編程控制器實現渦流檢測裝置的功能設計 嚴懷龍 發表於 2020-11-24 10:43:08 1 引 言 目前國外的無損檢測技術正在從NDE
  • 基於MLX90316絕度角度位置傳感器板
    打開APP 基於MLX90316絕度角度位置傳感器板 發表於 2019-04-29 18:39:38 本設計的板子直徑為25mm,可直接打樣。
  • 基於STM32F4x9的LCD顯示設計,硬體設計指南
    隨著人機界面(GUI)在醫療、工業以及消費電子各應用領域需求的日益增長,高集成度、高性能的TFT液晶顯示方案成為電子產品設計開發的重要組成部分。
  • OLKB普朗克鍵盤:迷你而小巧,程式設計師的編程選擇!
    或者,可以將48個開關焊接到經過清潔處理的板上,然後在中間再次分割空格鍵。小編已經省去了照明,但是電路板有LED,我們可以控制它。普朗克的外殼和蓋板由非常乾淨的加工鋁製成,小鍵盤整體看起來非常穩定。唯一的批評:蓋板的邊緣有時非常尖銳。打字時,如果小編手拿鍵盤,雞骨草會被劃到。同時,小編的套裝還包括47個製作精良的Keycaps。
  • 基於模板元編程的量綱檢測方法
    針對這些問題,提出一種基於模板元編程的量綱檢測方法TADA(TMP-bAsed Dimensional AnalysisMethod),其基本思路是利用程序設計語言自身的模板元編程(Template Meta Programming,TMP)功能,讓編譯器在編譯時對程序中的量綱進行準確性檢測,從而可以避免Osprey方法的計算量大等諸多問題。
  • 基於單片機及傳感器的機器人設計與實現
    摘要: 本設計基於單片機及多種傳感器,完成了一個自主式移動機器人的製作。單片機作為系統檢測和控制的核心,實現對機器人小車的智能控制。本文針對具有引導線環境下的路徑跟蹤這一熱點問題,基於單片機控制及傳感器原理,通過硬體電路製作和軟體編程,製作了一個機器人,實現了機器人的路徑跟蹤和自動糾偏的功能,並能探測金屬,實時顯示距離。