国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于ARM的FPGA嵌入式系統實現

FPGA設計論壇 ? 來源:未知 ? 2023-05-18 13:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群


點擊上方藍字關注我們






基于ARMFPGA嵌入式系統實現



ARM(Advanced RISC Machines)既可以認為是一個公司。也可以認為是對一類微處理器的統稱,還可以認為是一項技術。基于ARM技術的微處理器應用約占據了32位 RISC微處理器75%以上的市場份額,ARM技術正在逐步滲入到人們生活的各個方面[1]。到目前為止,ARM微處理器及技術已經廣泛應用到各個領域,包括工業控制領域、網絡應用、消費類電子產品、成像和安全產品等。
FPGA(Field Programmable Gate Array)是一種高密度現場可編程邏輯器件,其邏輯功能是通過把設計生成的數據文件配置到器件內部的靜態配置數據存儲器(SRAM)來實現的。FPGA具有可重復編程性,能靈活實現各種邏輯功能。
基于SRAM工藝的FPGA具有易失性。系統掉電以后其內部配置數據容易丟失,因此需要外接ROM保存其配置數據,系統上電后必須重新配置數據才能正常工作。目前有兩種方案可以實現,一種是使用專用的PROM,以Xilinx公司FPGA,XCFxx系列PROM為例,能夠提供FPGA的配置時序,上電時自動加載PROM中的配置數據到FPGA的SRAM中;另一種是在含有微處理器的系統(如嵌入式系統)中采用其他非易失性存儲器如E2PROM、 Flash存儲配置數據,微處理器模擬FPGA的配置時序將ROM中的數據置入FPGA。與種方案相比,該方案節省成本、縮小系統體積。適用于對成本和體積苛刻要求的系統。
在便攜式虛擬儀器設計中,使用嵌入式系統和FPGA實現系統功能。嵌入式微處理器采用Samsung公司的ARM7TDMI系列處理器 S3C44BOX:FPGA采用Xilinx公司的Spartan-3E系列XC3S100E,采用S3C44BOX完成對XC3S100E的配置。取得了良好效果。
2 從串配置的原理
2.1從串配置原理
Xilinx公司的Spartan-3E系列FPGA產品是采用90 nm工藝的2.5 V低電壓FPGA器
件,具有高性能、低功耗、可無限次編寫的特點。XC3S100E是Spartan-3E系列FPGA中的一款,總門數達10萬門,可采用從串、主串、從并、主并、JTAG等模式對其進行配置[2]。XC3S100E與從串配置模式相關的主要引腳功能如下:
M[2:0]:配置模式選擇。M2、M1、M0均接上拉電阻,即M[2:0]:111時為從串模式;
CCLK:配置時鐘,微處理器提供時鐘源,且上升沿有效:
DIN:串行配置數據輸入:
DOUT:串行數據輸出,用于菊花鏈式配置:
PROG_B:低電平異步復位FPGA內部邏輯,內部可配置:Memory完全復位后,該引腳指示高電平。
當此引腳為高時,才能配置FPGA:
INIT_B:由低電平到高電平跳變時,采樣配置模式,即M[2:0]的值確定配置方式;配置過程中若出現配置錯誤,INIT_B將呈現低電平;
DONE:復位時為低電平。若配置成功,則為高電平。
2.2微處理器從串配置:FPGA的時序
FPGA的配置過程如下:
系統上電后,將PROG_B拉低以復位FPGA內部邏輯重新配置FPGA,充分復位內部邏輯后(約100μs),將PROG_置高。
INIT_B為低電平,PROG_B拉高保持300 ns后,FPGA將INIT_B置高。在INIT_B由低向高跳變的瞬間,采樣配置模式M[2:0]。此系統采用從串配置模式。
在FPGA采樣配置模式后,微處理器就可以向FPGA配置時鐘CCLK和數據,在CCLK的上升沿,傳輸數據至DIN,數據字節先發送低位,再發送高位。配置過程中若發生錯誤,則INIT_B為低電平。
所有的配置數據傳送完成,CRC校驗無誤。則DONE為高電平,否則為低電平。
DONE為高電平,FPGA釋放全局三態(GTS),激活I/O引腳,釋放全部置位復位(GSR)和全局寫使能(GWE)有效,開始執行配置區的邏輯。
微處理器從串配置FPGA的時序如圖1所示。

2.3 配置文件的產生方法
利用Xilinx公司提供的開發工具ISE8.1,經過綜合、映射、布局布線后可產生編程文件,編程文件含有.bit、.bin、.mcs、.tek、.hex等格式。其中,.bit格式用于JTAG,其他幾種格式用于專用PROM編程。首先按照產生專用 PROM編程文件的方法來產生.bin文件.然后將該.bin文件轉換成ASCⅡ碼文件的存儲形式,并且各個字節之間用逗號分隔。再將該配置數據存放在系統程序的一個頭文件的數組config_data_array[]中,作為系統程序源代碼的一部分,并和其他程序一起編譯。
3 硬件設計
嵌入式微處理器S3C44BOX內置ARM7TDMI核,集成了豐富的外圍功能模塊,內部8 kB Cache大大提高了性能。S3C44BOX可訪問256MB的地址空間,工作頻率達66 MHz 。采用4 MB Flash作為程序存儲器,可用于存放系統運行的代碼。XC3S100E從串配置程序和配置文件都固化于其中保存,該Flash支持低電壓(1.65 V~3.3 V)寫操作。8 MB的SDRAM是程序的運行空間,直接運行Flash中的代碼,但速度非常慢。通常是將Flash中的代碼移至SDRAM中。S3C44BOX與 XC3S100E主要通過PROG_B、INIT_B、DONE、CCLK、DIN 5根信號線連接,如圖2所示。其中VCC33表示3.3 V,VCC25表示2.5 V。
4 軟件設計
軟件設計流程如圖3所示。配置軟件的編程要確保ARM完全按照配置信號的時序工作,關鍵問題

是采用S3C44BOX的通用I/O口GPF0、GPF1、GPF2、GPF3、GPF4模擬DIN、CCLK、DONE、INIT_B、PROG_B的時序。
在S3C44BOX中,大多數引腳都是多功能引腳,可以通過端口配置寄存器選擇相應的引腳功能。
以端口F為例,控制寄存器rPCONF用作設定引腳的輸入、輸出或特殊功能;數據寄存器rPDATF[0:8]對應于GPF0~GPF8引腳上的數據。讀寫寄存器rPDATF的各個位對應于引腳的讀或寫。例如,CCLK上升沿時序是向GPF1先寫0,再寫1得到,延時程序則由for循環實現。

則一直循環等待
CCLK在每個上升沿把1 bit的數據置入DIN中,先將GPF1置低,在GPF0準備好1 bit數據,再將GPF1置高即可,以此循環將config_data_array[]中的每個字節按先低位再高位的次序寫入FPGA。
Xilinx的FPGA配置文件大小相同,與FPGA內部邏輯設計的復雜度無關。以Spartan_3E系列的10萬門FPGA XC3S100E為例,它的配置文件固定為581 344 bit,若CCLK的時鐘周期置為2μs,配置時間約為1.2 s。
5 實驗結果驗證
驗證環境:硬件采用自行開發的實驗板和武漢創維特公司的:JTAG硬件仿真器;軟件則使用Xilinx公司的開發工具ISE8.1和武漢創維特公司的集成開發環境ADT 1000(支持ARM7,ARM9)。
利用Verilog HDL編寫程序led.v在七段數碼管上循環顯示0~F,采用:ISE8.1編譯、綜合、映射、布局布線。生成用于編程專用PROM的led.bin文件。用一個簡單的C程序將.bin文件轉換成ASCⅡ碼文件,再將ASCⅡ碼文件復制到配置數據數組config_data_array[]中,然后在 ADT環境下編譯配置程序、配置數據和系統程序,將生成的.bin文件通過JTAG口燒寫到Flash中。重新上電后,FPGA配置正常,實驗結果與預設相一致。
6 結束語
基于ARM的FPGA從串配置方案結構簡單、接線容易、軟件編程簡單,非常適用于嵌入式系統設計。雖然該控制電路是為Xilinx公司 Spartan-3E系列的FPGA設計的,但稍加修改也可用于其他系列FPGA器件,故具有一定的通用性。另外,由于FPGA具有可重復配置的靈活性,在嵌入式系統中可通過串口、網口遠程燒寫Flash,重構系統功能,這種在線重構技術為設備的智能化在線維護、功能重組和在線升級等提供了可能,而且靈活性很強。本文提出的方案對數字系統設計具有借鑒意義,有著廣闊的應用前景。







往期推薦
  • 至芯科技-FPGA就業培訓來襲!你的選擇開啟你的高薪之路!5月6號北京中心開課、歡迎咨詢!

  • 英特爾兩個重要發布加速FPGA應用開發

  • 簡談FPGA 有符號數、無符號數



掃碼二維碼

獲取更多精彩

FPGA設計論壇


喜歡就點個在看再走吧





原文標題:基于ARM的FPGA嵌入式系統實現

文章出處:【微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1660

    文章

    22408

    瀏覽量

    636247

原文標題:基于ARM的FPGA嵌入式系統實現

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    什么是嵌入式應用開發?

    實現和部署,還包括硬件選擇、軟件設計、測試、集成和維護等流程?。 定義和背景 嵌入式應用開發是指將軟件部署到嵌入式系統中,這些系統廣泛
    發表于 01-12 16:13

    arm嵌入式主板優缺點

    Windows CE、Linux等主流的嵌入式操作系統。   ARM的優點   一、高可靠性、高穩定性:在工業控制領域,性能穩定可靠是自動控制基本的要求,ARM
    發表于 01-08 07:08

    從小白到大牛:Linux嵌入式系統開發的完整指南

    )、單元測試(CUnit)。學會使用 Buildroot、Yocto Project 等嵌入式 Linux 構建工具,實現系統的自動化編譯、定制與升級。同時,培養問題排查能力(如通過日志、示波器定位硬件
    發表于 12-16 10:42

    什么是嵌入式操作系統

    要理解嵌入式操作系統(Embedded Operating System,簡稱 RTOS/EOS),我們可以從本質定義→核心區別→實際作用→典型特征→嵌入式開發場景適配,五個維度來拆解, 一
    發表于 12-09 10:33

    高云半導體助力2025全國大學生嵌入式系統設計大賽FPGA賽段圓滿落幕

    2025 年全國大學生嵌入式系統設計大賽 FPGA 賽段于 11 月 30 日圓滿落下帷幕。作為賽事核心支持單位,廣東高云半導體科技股份有限公司已連續 8 年深耕賽事支持工作,始終以專業的技術平臺
    的頭像 發表于 12-08 09:26 ?2835次閱讀

    ARM嵌入式這樣學

    的內核就是ARM內核,它的主頻高很多,普通的都有幾百M。CPU緩存大,分有很多級的流水處理線,這樣大大提高了CPU利用率。這種IC的資源足以讓一個嵌入式操作系統正常跑起來,WINCE, LINUX
    發表于 12-04 07:48

    嵌入式FPGA的區別

    ,一是嵌入式軟件開發,主要與嵌入式cao作系統、應用軟件等有關。第二是嵌入式硬件開發,需要掌握硬件設計、模擬仿真、 PCB設計等技能。 ?2、FPG
    發表于 11-20 07:12

    嵌入式FPGA的區別

    嵌入式系統FPGA的核心差異:軟件定義功能VS硬件可重構。嵌入式適合通用計算,開發門檻低;FPGA憑借并行處理
    發表于 11-19 06:55

    嵌入式系統的定義和應用領域

    嵌入式系統,簡而言之,就是一種專為特定設備或裝置設計的計算機系統。它們通常配備一個嵌入式處理器,其控制程序被存儲在ROM中。這些系統在許多日
    發表于 11-17 06:49

    怎么結合嵌入式,Linux,和FPGA三個方向達到一個均衡發展?

    嵌入式領域,不少人都懷揣著讓嵌入式、Linux 和 FPGA 三個方向實現均衡發展的夢想,然而實踐中卻面臨諸多挑戰。就像備受矚目的全棧工程師稚暉君,他從大學玩單片機起步,憑借將智能算
    的頭像 發表于 06-25 10:08 ?859次閱讀
    怎么結合<b class='flag-5'>嵌入式</b>,Linux,和<b class='flag-5'>FPGA</b>三個方向達到一個均衡發展?

    運行在嵌入式系統上的emApps

    在當今快節奏的嵌入式系統世界中,靈活性和適應性是嵌入式系統實現的關鍵。SEGGER推出了其最新創新:Embedded apps(emApps
    的頭像 發表于 06-18 09:53 ?863次閱讀
    運行在<b class='flag-5'>嵌入式</b><b class='flag-5'>系統</b>上的emApps

    嵌入式開發,如何選擇適合的系統

    嵌入式ARM開發中,面對多種操作系統的選擇,如何做出最適合項目的決策?本文將為您梳理常見系統的特性,幫助您快速了解它們的優缺點,以便更好地選擇適合的
    的頭像 發表于 05-20 11:32 ?1142次閱讀
    <b class='flag-5'>嵌入式</b>開發,如何選擇適合的<b class='flag-5'>系統</b>?

    嵌入式開發入門指南:從零開始學習嵌入式

    開發(設備驅動、內核編譯) 4. 推薦的學習資源書籍:《嵌入式系統軟件設計基礎》《ARM Cortex-M系列嵌入式開發》在線課程:慕課網、B站嵌入
    發表于 05-15 09:29

    嵌入式開發:高門檻的系統性工程與 996 的行業困局

    嵌入式開發的門檻,往往被培訓機構和表象所掩蓋。許多人誤以為 “用 C 語言寫個跑在 ARM 上的程序” 就是嵌入式,實則連皮毛都未觸及。真正的嵌入式開發是硬件與軟件深度融合的
    的頭像 發表于 04-09 11:06 ?980次閱讀
    <b class='flag-5'>嵌入式</b>開發:高門檻的<b class='flag-5'>系統</b>性工程與 996 的行業困局

    Python在嵌入式系統中的應用場景

    你想把你的職業生涯提升到一個新的水平?Python在嵌入式系統中正在成為一股不可缺少的新力量。盡管傳統上嵌入式開發更多地依賴于C和C++語言,Python的優勢在于其簡潔的語法、豐富的庫和快速的開發周期,這使得它在某些
    的頭像 發表于 03-19 14:10 ?1492次閱讀