新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > 基于SoPC目標板Flash編程設計的創建及應用

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

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


        上一頁 1 2 下一頁

        關鍵詞: Flash SoPC 編程

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 乐业县| 河曲县| 商南县| 祁连县| 清新县| 嵊州市| 上饶县| 宜兰县| 巩留县| 正蓝旗| 化德县| 牡丹江市| 临澧县| 玛多县| 赤峰市| 金湖县| 咸宁市| 芦溪县| 金乡县| 泸溪县| 霞浦县| 临西县| 合水县| 兴海县| 衡东县| 天长市| 遵化市| 志丹县| 天峨县| 永丰县| 平凉市| 宜宾县| 克什克腾旗| 滕州市| 石嘴山市| 凤台县| 和平县| 上思县| 白山市| 将乐县| 西峡县|