日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
探究Linux與FPGA之間的JTAG通訊技術(shù) (linux fpga jtag)

隨著數(shù)字電子技術(shù)的不斷發(fā)展,F(xiàn)PGA(Field Programmable Gate Array)芯片逐漸成為了數(shù)字電子設(shè)計(jì)中不可或缺的組成部分。而Linux操作系統(tǒng)作為一種高效穩(wěn)定的開源操作系統(tǒng),已經(jīng)廣泛應(yīng)用于各種計(jì)算機(jī)系統(tǒng)。因此,如何實(shí)現(xiàn)FPGA芯片與Linux操作系統(tǒng)的交互,已經(jīng)成為了FPGA芯片應(yīng)用的重要問題。JTAG(Joint Test Action Group,聯(lián)合測(cè)試動(dòng)作組)通訊技術(shù)被廣泛應(yīng)用于FPGA芯片的編程和調(diào)試過程中,JTAG通訊技術(shù)又是怎樣實(shí)現(xiàn)FPGA芯片與Linux操作系統(tǒng)的交互的呢?

本文將從以下幾個(gè)方面:JTAG通訊基本概念、JTAG通訊的協(xié)議規(guī)范、JTAG通訊在FPGA芯片的應(yīng)用、JTAG通訊在Linux操作系統(tǒng)中的應(yīng)用以及衍生出的一些問題。

一、JTAG通訊基本概念

JTAG通訊技術(shù)由美國(guó)IEEE(美國(guó)電氣和電子工程師協(xié)會(huì))制定的IEEE 1149.1標(biāo)準(zhǔn)定義,是一種芯片級(jí)測(cè)試和編程協(xié)議。該協(xié)議可用于標(biāo)準(zhǔn)的無(wú)縫集成電路(ASIC)、數(shù)字信號(hào)處理器(DSP)和微控制器或微處理器(微處理器也可以是FPGA)上。通過JTAG通訊接口,用戶可在芯片出貨前或在用戶場(chǎng)景下對(duì)芯片進(jìn)行編程、配置或測(cè)試。

JTAG通訊技術(shù)實(shí)現(xiàn)的基礎(chǔ)是Test Access Port(TAP,測(cè)試訪問端口)和Test Access Port Controller(TAP Controller,測(cè)試訪問端口控制器),其中TAP是JTAG通訊內(nèi)部的邏輯單元,負(fù)責(zé)數(shù)據(jù)的輸入和輸出,而TAP Controller則是控制TAP的外部設(shè)備,負(fù)責(zé)控制TAP進(jìn)行數(shù)據(jù)的輸入、輸出以及狀態(tài)的切換。

二、JTAG通訊的協(xié)議規(guī)范

JTAG通訊的協(xié)議規(guī)范主要包括兩個(gè)部分:1)TAP控制狀態(tài)機(jī)定義;2)TAP數(shù)據(jù)寄存器的定義。

TAP控制狀態(tài)機(jī)定義(見圖1):

![image-1.png](attachment:image-1.png)

圖1 TAP控制狀態(tài)機(jī)定義

在TAP控制狀態(tài)機(jī)中,有五個(gè)狀態(tài),分別是Test-Logic-Reset(TLR,測(cè)試邏輯復(fù)位)狀態(tài)、Run-Test/Idle(RTI,運(yùn)行測(cè)試/閑置)狀態(tài)、Select-DR-Scan(SDRS,選擇數(shù)據(jù)寄存器掃描)狀態(tài)、Capture-DR(CDR,捕獲數(shù)據(jù)寄存器)狀態(tài)和Shift-DR(SDR,移位數(shù)據(jù)寄存器)狀態(tài)。TAP的控制狀態(tài)機(jī)根據(jù)TCK時(shí)鐘信號(hào)進(jìn)行狀態(tài)的切換,而TCK時(shí)鐘信號(hào)由TAP Controller控制。

TAP數(shù)據(jù)寄存器的定義

TAP數(shù)據(jù)寄存器指的是寄存器鏈(Register Chn)中的寄存器,寄存器鏈?zhǔn)怯啥鄠€(gè)寄存器級(jí)聯(lián)而成的鏈形結(jié)構(gòu)。在寄存器鏈中,有三種類型的寄存器:Instruction Register(IR,指令寄存器)、Data Register(DR,數(shù)據(jù)寄存器)、Bypass Register(BYP,旁路寄存器)。

其中,IR寄存器用于存放特定的指令碼,而DR寄存器則用于寄存芯片內(nèi)部的數(shù)據(jù)。BYP寄存器則充當(dāng)了信號(hào)旁路器的角色,將TDI的數(shù)據(jù)直接傳送到TDO線上,而不經(jīng)過任何處理。

三、JTAG通訊在FPGA芯片的應(yīng)用

在FPGA芯片中,JTAG通訊技術(shù)主要有兩個(gè)應(yīng)用:FPGA芯片的編程和調(diào)試。

FPGA芯片的編程主要是通過JTAG通訊技術(shù)將開發(fā)板中的bit文件下載到FPGA芯片中。這一過程主要分為兩步:首先使用JTAG通訊技術(shù)將FPGA芯片配置為按位流式配置模式(Bitstream Configuration Mode);然后將開發(fā)板中的bit文件下載到FPGA芯片的數(shù)據(jù)寄存器中,最后通過JTAG通訊技術(shù)將bit文件傳送到FPGA芯片的配置存儲(chǔ)器中(Configuration Memory)。

在FPGA芯片的調(diào)試中,JTAG通訊技術(shù)主要用于測(cè)試芯片的正常工作狀態(tài)以及芯片的一些內(nèi)部狀態(tài)。直接借助JTAG通訊技術(shù),可以連通芯片內(nèi)部數(shù)據(jù)和信號(hào),將其輸入/輸出到測(cè)試工具中,從而觀察芯片的正常工作狀態(tài)并檢測(cè)芯片是否存在故障點(diǎn)。

四、JTAG通訊在Linux操作系統(tǒng)中的應(yīng)用

在Linux操作系統(tǒng)中,JTAG通訊技術(shù)主要用于FPGA芯片的編程、配置和調(diào)試。常用的JTAG調(diào)試工具有GDB、OpenOCD、JTAG Tools等。通過這些工具,用戶可以在Linux操作系統(tǒng)中實(shí)現(xiàn)對(duì)FPGA芯片的編程、下載bit文件、調(diào)試芯片等操作。

當(dāng)然,在Linux操作系統(tǒng)中使用JTAG通訊技術(shù)也存在一些問題。例如,JTAG通訊的速率會(huì)受到Linux操作系統(tǒng)的中斷頻率、IO負(fù)載和其他因素的干擾,從而影響JTAG通訊速率的穩(wěn)定性。此外,在Linux操作系統(tǒng)中使用JTAG通訊技術(shù)也需要特定的硬件和驅(qū)動(dòng)程序,從而增加了系統(tǒng)的配置和部署難度。

五、衍生出的一些問題

除了上面提到的問題,還有一些細(xì)節(jié)問題需要注意,下面列舉幾個(gè):

1. JTAG通訊接口的電氣特性:在實(shí)際應(yīng)用中,需要根據(jù)芯片的物理接口特性來選擇合適的JTAG通訊接口及通訊速率,以確保JTAG通訊的成功運(yùn)行。

2. TAP狀態(tài)機(jī)的缺省狀態(tài):在JTAG通訊中,當(dāng)TAP狀態(tài)機(jī)一旦處于錯(cuò)誤狀態(tài),要通過TLR狀態(tài)將TAP狀態(tài)機(jī)返回到初始狀態(tài)。因此,在FPGA芯片設(shè)計(jì)和調(diào)試時(shí),需要特別關(guān)注TAP狀態(tài)機(jī)的缺省狀態(tài),以免出現(xiàn)調(diào)試難題。

3. TCK時(shí)鐘的設(shè)置:在使用JTAG通訊技術(shù)進(jìn)行調(diào)試時(shí),需要特別關(guān)注TCK時(shí)鐘的設(shè)置。如果TCK時(shí)鐘的速率過快,可能會(huì)出現(xiàn)芯片內(nèi)部時(shí)序的不穩(wěn)定;而如果TCK時(shí)鐘的速率過慢,則會(huì)導(dǎo)致通訊速率降低。

4. 設(shè)計(jì)TAP Controller時(shí)需要考慮的問題:在設(shè)計(jì)TAP Controller時(shí),需要特別考慮JTAG通訊的并發(fā)性、時(shí)序要求、通訊速率要求等方面的問題,以確保JTAG通訊的正確性和穩(wěn)定性。

六、

本文主要介紹了JTAG通訊技術(shù)的基本概念、協(xié)議規(guī)范以及在FPGA芯片和Linux操作系統(tǒng)中的應(yīng)用。通過這些內(nèi)容的介紹,我們可以更好地了解JTAG通訊技術(shù)在數(shù)字電子設(shè)計(jì)中的地位和應(yīng)用,為開展更加高效、穩(wěn)定的數(shù)字電子設(shè)計(jì)提供了有力的支撐。

相關(guān)問題拓展閱讀:

  • Altera的FPGA的AS,PS和Jtag配置模式的區(qū)別

Altera的FPGA的AS,PS和Jtag配置模式的區(qū)別

主動(dòng)配置方式(AS)和被動(dòng)配置方式(PS)和最常用的(JTAG)配置方式。

AS模式(active

serial

configuration

mode):FPGA器件每次上電時(shí)作為控制器,由FPGA器件引導(dǎo)配置操作過程,它控制著外部存儲(chǔ)器和初始化過程,從配置器件EPCS主動(dòng)發(fā)出讀取數(shù)據(jù)信號(hào),從而把EPCS的數(shù)據(jù)讀入FPGA中,實(shí)現(xiàn)舉棚對(duì)FPGA的編程配置數(shù)據(jù)通過DATA0引腳送入

FPGA,配置數(shù)據(jù)被同步在DCLK輸入上,1個(gè)時(shí)鐘周期傳送1位數(shù)據(jù)。

PS模式(passive

serial

configuration

mode):則由外部計(jì)算機(jī)或控制器控制配置過程。通過加強(qiáng)型配置器件(EPC16,EPC8,EPC4)等配置器件來完成,EPCS作為控制器件,把FPGA當(dāng)作存儲(chǔ)器,把數(shù)據(jù)寫人到FPGA中,實(shí)現(xiàn)對(duì)FPGA的編程。該模式可以實(shí)現(xiàn)對(duì)FPGA在線可編程。在下載配置的時(shí)候?qū)τ贑yclone

II的器件,如EP2C8,在JTAG下載方式對(duì)應(yīng).sof,AS下載方式對(duì)應(yīng).pof。

JTAG:JTAG是直接燒到FPGA里面的

由于是SRAM

斷電后要重?zé)?,AS是燒到FPGA的配置芯片里保山梁存的

每次上電就寫正唯則到FPGA里。

關(guān)于linux fpga jtag的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

成都服務(wù)器托管選創(chuàng)新互聯(lián),先上架開通再付費(fèi)。
創(chuàng)新互聯(lián)(www.cdcxhl.com)專業(yè)-網(wǎng)站建設(shè),軟件開發(fā)老牌服務(wù)商!微信小程序開發(fā),APP開發(fā),網(wǎng)站制作,網(wǎng)站營(yíng)銷推廣服務(wù)眾多企業(yè)。電話:028-86922220


當(dāng)前名稱:探究Linux與FPGA之間的JTAG通訊技術(shù) (linux fpga jtag)
URL地址:http://m.5511xx.com/article/coccsdg.html