www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于ARM的嵌入式系統(tǒng)中從串配置FPGA的實(shí)現(xiàn)

1引言

ARM(Advanced RISC Machines)既可以認(rèn)為是一個(gè)公司。也可以認(rèn)為是對(duì)一類(lèi)微處理器的統(tǒng)稱(chēng),還可以認(rèn)為是一項(xiàng)技術(shù)。基于ARM技術(shù)的微處理器應(yīng)用約占據(jù)了32位RISC微處理器75%以上的市場(chǎng)份額,ARM技術(shù)正在逐步滲入到人們生活的各個(gè)方面[1]。到目前為止,ARM微處理器及技術(shù)已經(jīng)廣泛應(yīng)用到各個(gè)領(lǐng)域,包括工業(yè)控制領(lǐng)域、網(wǎng)絡(luò)應(yīng)用、消費(fèi)類(lèi)電子產(chǎn)品、成像和安全產(chǎn)品等。

FPGA(Field Programmable Gate Array)是一種高密度現(xiàn)場(chǎng)可編程邏輯器件,其邏輯功能是通過(guò)把設(shè)計(jì)生成的數(shù)據(jù)文件配置到器件內(nèi)部的靜態(tài)配置數(shù)據(jù)存儲(chǔ)器(SRAM)來(lái)實(shí)現(xiàn)的。FPGA具有可重復(fù)編程性,能靈活實(shí)現(xiàn)各種邏輯功能。

基于SRAM工藝的FPGA具有易失性。系統(tǒng)掉電以后其內(nèi)部配置數(shù)據(jù)容易丟失,因此需要外接ROM保存其配置數(shù)據(jù),系統(tǒng)上電后必須重新配置數(shù)據(jù)才能正常工作。目前有兩種方案可以實(shí)現(xiàn),一種是使用專(zhuān)用的PROM,以Xilinx公司FPGA,XCFxx系列PROM為例,能夠提供FPGA的配置時(shí)序,上電時(shí)自動(dòng)加載PROM中的配置數(shù)據(jù)到FPGA的SRAM中;另一種是在含有微處理器的系統(tǒng)(如嵌入式系統(tǒng))中采用其他非易失性存儲(chǔ)器如E2PROM、Flash存儲(chǔ)配置數(shù)據(jù),微處理器模擬FPGA的配置時(shí)序?qū)OM中的數(shù)據(jù)置入FPGA。與第一種方案相比,該方案節(jié)省成本、縮小系統(tǒng)體積。適用于對(duì)成本和體積苛刻要求的系統(tǒng)。

在便攜式虛擬儀器設(shè)計(jì)中,使用嵌入式系統(tǒng)和FPGA實(shí)現(xiàn)系統(tǒng)功能。嵌入式微處理器采用Samsung公司的ARM7TDMI系列處理器S3C44BOX:FPGA采用Xilinx公司的Spartan-3E系列XC3S100E,采用S3C44BOX完成對(duì)XC3S100E的配置。取得了良好效果。

2 從串配置的原理

2.1從串配置原理

Xilinx公司的Spartan-3E系列FPGA產(chǎn)品是采用90 nm工藝的2.5 V低電壓FPGA器
件,具有高性能、低功耗、可無(wú)限次編寫(xiě)的特點(diǎn)。XC3S100E是Spartan-3E系列FPGA中的一款,總門(mén)數(shù)達(dá)10萬(wàn)門(mén),可采用從串、主串、從并、主并、JTAG等模式對(duì)其進(jìn)行配置[2]。XC3S100E與從串配置模式相關(guān)的主要引腳功能如下:

M[2:0]:配置模式選擇。M2、M1、M0均接上拉電阻,即M[2:0]:111時(shí)為從串模式;

CCLK:配置時(shí)鐘,微處理器提供時(shí)鐘源,且上升沿有效:

DIN:串行配置數(shù)據(jù)輸入:

DOUT:串行數(shù)據(jù)輸出,用于菊花鏈?zhǔn)脚渲茫?/P>

PROG_B:低電平異步復(fù)位FPGA內(nèi)部邏輯,內(nèi)部可配置:Memory完全復(fù)位后,該引腳指示高電平。

當(dāng)此引腳為高時(shí),才能配置FPGA:

INIT_B:由低電平到高電平跳變時(shí),采樣配置模式,即M[2:0]的值確定配置方式;配置過(guò)程中若出現(xiàn)配置錯(cuò)誤,INIT_B將呈現(xiàn)低電平;

DONE:復(fù)位時(shí)為低電平。若配置成功,則為高電平。

2.2微處理器從串配置:FPGA的時(shí)序

FPGA的配置過(guò)程如下:

系統(tǒng)上電后,將PROG_B拉低以復(fù)位FPGA內(nèi)部邏輯重新配置FPGA,充分復(fù)位內(nèi)部邏輯后(約100μs),將PROG_置高。

INIT_B為低電平,PROG_B拉高保持300 ns后,F(xiàn)PGA將INIT_B置高。在INIT_B由低向高跳變的瞬間,采樣配置模式M[2:0]。此系統(tǒng)采用從串配置模式。

在FPGA采樣配置模式后,微處理器就可以向FPGA配置時(shí)鐘CCLK和數(shù)據(jù),在CCLK的上升沿,傳輸數(shù)據(jù)至DIN,數(shù)據(jù)字節(jié)先發(fā)送低位,再發(fā)送高位。配置過(guò)程中若發(fā)生錯(cuò)誤,則INIT_B為低電平。

所有的配置數(shù)據(jù)傳送完成,CRC校驗(yàn)無(wú)誤。則DONE為高電平,否則為低電平。

DONE為高電平,F(xiàn)PGA釋放全局三態(tài)(GTS),激活I(lǐng)/O引腳,釋放全部置位復(fù)位(GSR)和全局寫(xiě)使能(GWE)有效,開(kāi)始執(zhí)行配置區(qū)的邏輯。

微處理器從串配置FPGA的時(shí)序如圖1所示。

2.3 配置文件的產(chǎn)生方法

利用Xilinx公司提供的開(kāi)發(fā)工具ISE8.1,經(jīng)過(guò)綜合、映射、布局布線后可產(chǎn)生編程文件,編程文件含有.bit、.bin、.mcs、.tek、.hex等格式。其中,.bit格式用于JTAG下載,其他幾種格式用于專(zhuān)用PROM編程。首先按照產(chǎn)生專(zhuān)用PROM編程文件的方法來(lái)產(chǎn)生.bin文件.然后將該.bin文件轉(zhuǎn)換成ASCⅡ碼文件的存儲(chǔ)形式,并且各個(gè)字節(jié)之間用逗號(hào)分隔。再將該配置數(shù)據(jù)存放在系統(tǒng)程序的一個(gè)頭文件的數(shù)組config_data_array[]中,作為系統(tǒng)程序源代碼的一部分,并和其他程序一起編譯。

3 硬件設(shè)計(jì)

嵌入式微處理器S3C44BOX內(nèi)置ARM7TDMI核,集成了豐富的外圍功能模塊,內(nèi)部8 kB Cache大大提高了性能。S3C44BOX可訪問(wèn)256MB的地址空間,最高工作頻率達(dá)66 MHz 。采用4 MB Flash作為程序存儲(chǔ)器,可用于存放系統(tǒng)運(yùn)行的代碼。XC3S100E從串配置程序和配置文件都固化于其中保存,該Flash支持低電壓(1.65 V~3.3 V)寫(xiě)操作。8 MB的SDRAM是程序的運(yùn)行空間,直接運(yùn)行Flash中的代碼,但速度非常慢。通常是將Flash中的代碼移至SDRAM中。S3C44BOX與XC3S100E主要通過(guò)PROG_B、INIT_B、DONE、CCLK、DIN 5根信號(hào)線連接,如圖2所示。其中VCC33表示3.3 V,VCC25表示2.5 V。

4 軟件設(shè)計(jì)

軟件設(shè)計(jì)流程如圖3所示。配置軟件的編程要確保ARM完全按照配置信號(hào)的時(shí)序工作,關(guān)鍵問(wèn)題

是采用S3C44BOX的通用I/O口GPF0、GPF1、GPF2、GPF3、GPF4模擬DIN、CCLK、DONE、INIT_B、PROG_B的時(shí)序。

在S3C44BOX中,大多數(shù)引腳都是多功能引腳,可以通過(guò)端口配置寄存器選擇相應(yīng)的引腳功能。

以端口F為例,控制寄存器rPCONF用作設(shè)定引腳的輸入、輸出或特殊功能;數(shù)據(jù)寄存器rPDATF[0:8]對(duì)應(yīng)于GPF0~GPF8引腳上的數(shù)據(jù)。讀寫(xiě)寄存器rPDATF的各個(gè)位對(duì)應(yīng)于引腳的讀或?qū)?。例如,CCLK上升沿時(shí)序是向GPF1先寫(xiě)0,再寫(xiě)1得到,延時(shí)程序則由for循環(huán)實(shí)現(xiàn)。

則一直循環(huán)等待

CCLK在每個(gè)上升沿把1 bit的數(shù)據(jù)置入DIN中,先將GPF1置低,在GPF0準(zhǔn)備好1 bit數(shù)據(jù),再將GPF1置高即可,以此循環(huán)將config_data_array[]中的每個(gè)字節(jié)按先低位再高位的次序?qū)懭隖PGA。

Xilinx的FPGA配置文件大小相同,與FPGA內(nèi)部邏輯設(shè)計(jì)的復(fù)雜度無(wú)關(guān)。以Spartan_3E系列的10萬(wàn)門(mén)FPGA XC3S100E為例,它的配置文件固定為581 344 bit,若CCLK的時(shí)鐘周期置為2μs,配置時(shí)間約為1.2 s。

5 實(shí)驗(yàn)結(jié)果驗(yàn)證

驗(yàn)證環(huán)境:硬件采用自行開(kāi)發(fā)的實(shí)驗(yàn)板和武漢創(chuàng)維特公司的:JTAG硬件仿真器;軟件則使用Xilinx公司的開(kāi)發(fā)工具ISE8.1和武漢創(chuàng)維特公司的集成開(kāi)發(fā)環(huán)境ADT 1000(支持ARM7,ARM9)。

利用Verilog HDL編寫(xiě)程序led.v在七段數(shù)碼管上循環(huán)顯示0~F,采用:ISE8.1編譯、綜合、映射、布局布線。生成用于編程專(zhuān)用PROM的led.bin文件。用一個(gè)簡(jiǎn)單的C程序?qū)?bin文件轉(zhuǎn)換成ASCⅡ碼文件,再將ASCⅡ碼文件復(fù)制到配置數(shù)據(jù)數(shù)組config_data_array[]中,然后在ADT環(huán)境下編譯配置程序、配置數(shù)據(jù)和系統(tǒng)程序,將生成的.bin文件通過(guò)JTAG口燒寫(xiě)到Flash中。重新上電后,F(xiàn)PGA配置正常,實(shí)驗(yàn)結(jié)果與預(yù)設(shè)相一致。

6 結(jié)束語(yǔ)

基于ARM的FPGA從串配置方案結(jié)構(gòu)簡(jiǎn)單、接線容易、軟件編程簡(jiǎn)單,非常適用于嵌入式系統(tǒng)設(shè)計(jì)。雖然該控制電路是為Xilinx公司Spartan-3E系列的FPGA設(shè)計(jì)的,但稍加修改也可用于其他系列FPGA器件,故具有一定的通用性。另外,由于FPGA具有可重復(fù)配置的靈活性,在嵌入式系統(tǒng)中可通過(guò)串口、網(wǎng)口遠(yuǎn)程燒寫(xiě)Flash,重構(gòu)系統(tǒng)功能,這種在線重構(gòu)技術(shù)為設(shè)備的智能化在線維護(hù)、功能重組和在線升級(jí)等提供了可能,而且靈活性很強(qiáng)。本文提出的方案對(duì)數(shù)字系統(tǒng)設(shè)計(jì)具有借鑒意義,有著廣闊的應(yīng)用前景。

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

Lua RTOS 是一個(gè)實(shí)時(shí)操作系統(tǒng),設(shè)計(jì)在嵌入式系統(tǒng)上運(yùn)行,對(duì) FLASH 和 RAM 內(nèi)存的要求最低。目前 Lua RTOS 可用于 ESP32, ESP8266 和 PIC32MZ 平臺(tái),并可以輕松移植到其他32位...

關(guān)鍵字: Lua RTOS 操作系統(tǒng) 嵌入式系統(tǒng)

通用異步收發(fā)傳輸器(Universal Asynchronous Receiver/Transmitter),通常稱(chēng)作UATR,是一種串行、異步、全雙工的收發(fā)器。全雙工的UART支持同時(shí)雙向通信,是嵌入式系統(tǒng)必不可少的d...

關(guān)鍵字: 異步收發(fā) 傳輸器 嵌入式系統(tǒng)

物聯(lián)網(wǎng)正在擴(kuò)大規(guī)模并加速發(fā)展,進(jìn)而驅(qū)動(dòng)著全新的經(jīng)濟(jì)。而Arm生態(tài)系統(tǒng)正是這一巨大機(jī)遇背后的推動(dòng)力。

關(guān)鍵字: ARM 物聯(lián)網(wǎng)

ARM公司是一家知識(shí)產(chǎn)權(quán)(IP)供應(yīng)商,它與一般的半導(dǎo)體公司最大的不同就是不制造芯片且不向終端用戶出售芯片,而是通過(guò)轉(zhuǎn)讓設(shè)計(jì)方案,由合作伙伴生產(chǎn)出各具特色的芯片。

關(guān)鍵字: ARM

2018年10月26日,深圳星河麗思卡爾頓酒店,ARM中國(guó)CEO吳雄昂在ARM年度技術(shù)論壇上對(duì)記者如是說(shuō),彼時(shí)的吳堅(jiān)定,溫雅,意氣風(fēng)發(fā)。時(shí)隔兩年,ARM中國(guó)CEO吳雄昂再次回到媒體視線,這一次,ARM中國(guó)與來(lái)自投資方和劍...

關(guān)鍵字: ARM 芯片 集成電路

最近為什么越來(lái)越多的研究開(kāi)始利用FPGA作為CNN加速器?FPGA與CNN的相遇究竟能帶來(lái)什么神奇效果呢?原來(lái),F(xiàn)PGA擁有大量的可編程邏輯資源,相對(duì)于GPU,它的可重構(gòu)性以及高功耗能效比的優(yōu)點(diǎn),是GPU無(wú)法比擬的;同時(shí)...

關(guān)鍵字: FPGA 可編程邏輯資源 GPU

FPGA的應(yīng)用領(lǐng)域包羅萬(wàn)象,我們今天來(lái)看看在音樂(lè)科技領(lǐng)域及醫(yī)療照護(hù)的智能巧思。

關(guān)鍵字: FPGA 科技領(lǐng)域 智能

喜歡折騰主機(jī)的小伙伴一定都知道X86和ARM架構(gòu)的區(qū)別,前者在PC領(lǐng)域已經(jīng)統(tǒng)治了幾十年;后者則主要應(yīng)用于移動(dòng)領(lǐng)域,尤其是近幾年,ARM的產(chǎn)品在終端應(yīng)用特別是手持終端應(yīng)用飛速發(fā)展。

關(guān)鍵字: 國(guó)產(chǎn) ARM 主機(jī)

科技公司們認(rèn)為,收購(gòu)將使英偉達(dá)控制一個(gè)重要的供應(yīng)商,該供應(yīng)商向蘋(píng)果、英特爾、三星電子、亞馬遜和華為等公司授權(quán)基本的芯片技術(shù),同時(shí)也向不計(jì)其數(shù)的中小技術(shù)企業(yè)提供授權(quán)??偛课挥谟?guó)的ARM公司將芯片設(shè)計(jì)和相關(guān)軟件代碼授權(quán)給所...

關(guān)鍵字: 英偉達(dá) ARM 半導(dǎo)體公司

在去年九月,英偉達(dá)宣布以400億美金收購(gòu)ARM時(shí),就注定這場(chǎng)收購(gòu)不會(huì)太順利。因?yàn)橐坏〢RM成功被英偉達(dá)收購(gòu),這將使ARM改變?cè)谌虬雽?dǎo)體市場(chǎng)中的中立立場(chǎng),因?yàn)锳RM的很多客戶,都是英偉達(dá)的直接或者間接的對(duì)手。除此之外,還...

關(guān)鍵字: 英偉達(dá) ARM 半導(dǎo)體

嵌入式教程

6897 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉