• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Slave SelectMAP模式的邏輯加載故障研究

    2020-02-22 03:58:10武堅(jiān)武健張宇烜
    電腦知識(shí)與技術(shù) 2020年36期

    武堅(jiān) 武健 張宇烜

    摘要:基于FPGA的嵌入式結(jié)構(gòu)產(chǎn)品在硬件設(shè)計(jì)領(lǐng)域得到了廣泛應(yīng)用,該文介紹了Virtex系列FPGA的邏輯加載模式,對(duì)加載速度較高的Slave SelectMAP模式的邏輯加載過(guò)程進(jìn)行了研究,并分析了加載中各信號(hào)的使用情況。同時(shí)結(jié)合產(chǎn)品使用實(shí)例,對(duì)典型的邏輯加載故障進(jìn)行了分析和研究。

    關(guān)鍵詞: Slave SelectMAP模式 ;邏輯加載故障

    中圖分類(lèi)號(hào):TP3? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A

    文章編號(hào):1009-3044(2020)36-0232-02

    1 介紹

    以高密度現(xiàn)場(chǎng)可編程邏輯器件FPGA為處理核心設(shè)計(jì)的嵌入式結(jié)構(gòu)產(chǎn)品 ,具有低成本、高集成度、低功耗、小封裝等優(yōu)點(diǎn),并且其在線(xiàn)編輯具有很高的靈活度,后期升級(jí)維護(hù)也非常簡(jiǎn)單。常用的FPGA芯片如Virtex系列,是一種高密度、大容量的現(xiàn)場(chǎng)可編程門(mén)陣列芯片,其邏輯單元多達(dá)100萬(wàn)個(gè),可兼容16種高性能接口標(biāo)準(zhǔn),最高工作頻率可達(dá)200MHZ。Virtex系列FPGA的邏輯文件加載方式由FPGA內(nèi)部的模式選擇信號(hào)M[2:0] 的電平來(lái)決定[1],常見(jiàn)的加載模式包括JTAG模式、串行模式和并行模式。其中串行模式包括Master Serial和Slave Serial兩種,并行模式也分Master SelectMap和Slave SelectMap兩類(lèi)。這些模式的選擇與M[2:0]的對(duì)應(yīng)關(guān)系見(jiàn)表1。

    其中JTAG加載模式中,不需要存儲(chǔ)芯片介入,該模式主要用于邏輯文件燒寫(xiě)和調(diào)試階段,在產(chǎn)品斷電后需要重新進(jìn)行加載。串行模式需要使用到的FPGA加載信號(hào)較少,通常由FPGA在CCLK的上升沿接收1位數(shù)據(jù)進(jìn)行加載,該加載方式速度較慢。而并行模式是一種8位數(shù)據(jù)加載模式,配置加載時(shí)鐘最可達(dá)66MHz,每個(gè)加載時(shí)鐘周期內(nèi)有8位配置數(shù)據(jù)下載到FPGA內(nèi)。在對(duì)加載速度要求較高的一些應(yīng)用場(chǎng)合,一般采用并行加載模式。本文主要分析了Slave SelectMAP并行模式的邏輯文件加載流程,并對(duì)該模式邏輯加載中常見(jiàn)故障進(jìn)行了分析研究,為基于FPGA的嵌入式產(chǎn)品故障排查提供了理論支持。

    2 基于Slave SelectMAP模式的邏輯加載流程

    Virtex系列FPGA采用SRAM工藝,F(xiàn)PGA本身具有易失性, 產(chǎn)品下電以后FPGA內(nèi)部的邏輯文件就會(huì)丟失[2], 因此需要外接存儲(chǔ)器來(lái)保存其邏輯配置數(shù)據(jù)。圖1給出了Virtex系列FPGA基于Slave SelectMAP模式的邏輯加載電路,選取一片專(zhuān)用的Platform Flash存儲(chǔ)芯片用以存放邏輯文件[3]。

    在邏輯加載過(guò)程中,圖1中的Virtex系列FPGA為主控設(shè)備,左側(cè)的存儲(chǔ)芯片為從設(shè)備,F(xiàn)PGA發(fā)出控制信號(hào)從存儲(chǔ)芯片中讀取邏輯文件,完成加載過(guò)程。具體的加載步驟如下:

    1)設(shè)備上電。在邏輯加載過(guò)程中,根據(jù)手冊(cè)要求,設(shè)備管腳在加電電源正確時(shí),加載過(guò)程才能正常工作;

    2)設(shè)備初始化及加載模式采樣。初始化過(guò)程如下:

    (1)FPGA完成內(nèi)部接口上電初始化后,發(fā)出PROGRAM_B信號(hào),復(fù)位存儲(chǔ)芯片,存儲(chǔ)芯片發(fā)出READY_WAIT低有效信號(hào),表明還在初始化中;

    (2)當(dāng)FPGA完成上電配置,結(jié)束PROGRAM_B信號(hào)后,并且存儲(chǔ)芯片也完成自身初始化后,存儲(chǔ)芯片釋放READY_WAIT信號(hào)(Open-Drain狀態(tài)),此時(shí)INIT_B信號(hào)(即存儲(chǔ)芯片的READY_WAIT)由外部電阻上拉至高電平狀態(tài);

    (3)當(dāng)INIT_B拉高后,設(shè)備在加載時(shí)鐘的上升沿,對(duì)特定地址信號(hào)管腳M[2:0]進(jìn)行采樣,[0,1,1]表示Slave-SelectMAP加載模式,采樣后開(kāi)始邏輯加載過(guò)程。

    3)加載過(guò)程。配置完成后,設(shè)備開(kāi)始邏輯文件的加載過(guò)程,具體過(guò)程如下:

    (1)對(duì)加載設(shè)備ID進(jìn)行校驗(yàn)檢查,防止設(shè)備錯(cuò)誤;

    (2)在時(shí)鐘信號(hào)、片選、讀信號(hào)的控制下,驅(qū)動(dòng)相應(yīng)單元有效數(shù)據(jù)至地址總線(xiàn)DO[15:0],并按照CCLK時(shí)序完成加載數(shù)據(jù)傳輸操作;

    (3)完成全部邏輯數(shù)據(jù)的加載,并且數(shù)據(jù)CRC校驗(yàn)正常,F(xiàn)PGA發(fā)出DONE信號(hào),表明邏輯加載操作成功。

    常用的Slave SelectMAP加載模式和JTAG加載模式使用的主要信號(hào)見(jiàn)表2。

    3 基于Slave SelectMAP模式的邏輯加載故障分析

    3.1 加載控制信號(hào)錯(cuò)誤導(dǎo)致邏輯加載故障

    在某產(chǎn)品邏輯加載故障后,使用示波器測(cè)量FPGA發(fā)出的控制信號(hào),測(cè)試結(jié)果如圖2,圖中綠色線(xiàn)為PROGRAM_B信號(hào),藍(lán)色為INIT_B加載控制信號(hào)。結(jié)果顯示,F(xiàn)PGA能夠正常輸出PROGRAM_B信號(hào),但I(xiàn)NIT_B加載控制信號(hào)異常,發(fā)現(xiàn)INIT_B加載控制信號(hào)無(wú)法拉高。

    結(jié)合上文分析過(guò)程,INIT_B加載控制信號(hào)需要在PROGRAM_B信號(hào)變?yōu)楦唠娖胶螅?~3ms內(nèi)變?yōu)楦唠娖讲拍苷_M(jìn)行邏輯加載。照手冊(cè)要求,存儲(chǔ)芯片完成初始化后,該信號(hào)應(yīng)該由外部電阻上拉至高電平(2.5V以上),而實(shí)際測(cè)試該信號(hào)時(shí)鐘始終為低電平(0.8V以下),表明存儲(chǔ)芯片不能正常完成上電初始化,達(dá)到正常狀態(tài),所以后續(xù)FPGA邏輯加載操作不能啟動(dòng)。

    3.2 加載地址線(xiàn)信號(hào)錯(cuò)誤導(dǎo)致邏輯加載故障

    在某產(chǎn)品邏輯加載故障后,編寫(xiě)測(cè)試程序?qū)Υ鎯?chǔ)芯片進(jìn)行逐行寫(xiě)入,并讀出寫(xiě)入數(shù)據(jù)。讀寫(xiě)結(jié)果如圖3所示,根據(jù)測(cè)試程序,通過(guò)比較正確狀態(tài)地址故障態(tài)地址,發(fā)現(xiàn)是存儲(chǔ)芯片地址線(xiàn)A19發(fā)生錯(cuò)誤,由0偏轉(zhuǎn)為1。經(jīng)清查,發(fā)現(xiàn)該存儲(chǔ)芯片管腳脫焊,導(dǎo)致地址線(xiàn)信號(hào)錯(cuò)誤,F(xiàn)PGA從存儲(chǔ)芯片中加載邏輯文件時(shí)故障。

    3.3 Slave SelectMAP模式能夠加載,JTAG模式加載故障

    某產(chǎn)品邏輯能夠正常加載,但使用外部仿真器在JTAG模式下無(wú)法重新加載邏輯文件。根據(jù)故障現(xiàn)象及表2中羅列的信號(hào)對(duì)比可知,在Slave SelectMAP加載過(guò)程中,不使用地址線(xiàn)信號(hào)及寫(xiě)有效信號(hào),JTAG模式加載時(shí)需要從A0地址開(kāi)始寫(xiě)入數(shù)據(jù)。經(jīng)測(cè)量,寫(xiě)有效信號(hào)常高,導(dǎo)致邏輯雖然能夠正常加載,但JTAG模式寫(xiě)入邏輯文件時(shí)故障。

    4 總結(jié)

    本文對(duì)基于Slave SelectMAP模式的邏輯加載模式進(jìn)行了研究,分析了加載過(guò)程中主設(shè)備FPGA及從設(shè)備存儲(chǔ)芯片各信號(hào)的定義和使用情況。結(jié)合加載流程和信號(hào)分析,研究了三種SelectMAP模式下邏輯加載的典型故障,對(duì)FPGA產(chǎn)品故障快速定位提供理論依據(jù)和技術(shù)指導(dǎo)。

    參考文獻(xiàn):

    [1] 郭天天.Virtex系列FPGA的SelectMAP配置接口電路[J].微處理機(jī),2000,21(4):17-19.

    [2] 瞿海妮.基于單片機(jī)的Virtex-ⅡFPGA SelectMAP模式的配置方法[J].微計(jì)算機(jī)應(yīng)用,2005(4):463-465.

    [3] UG438,Platform Flash XL Configuration and Storage Device User Guide,2009.

    【通聯(lián)編輯:代影】

    卢龙县| 台北市| 金沙县| 三亚市| 运城市| 广昌县| 葵青区| 全南县| 东安县| 绵阳市| 吴桥县| 讷河市| 凤阳县| 神农架林区| 衡东县| 长寿区| 正安县| 巴塘县| 成都市| 遂宁市| 北京市| 临清市| 樟树市| 宝山区| 普洱| 易门县| 潢川县| 大同市| 定结县| 天峨县| 永新县| 黄浦区| 曲麻莱县| 中方县| 兴和县| 陇川县| 云梦县| 内丘县| 临澧县| 青海省| 尉氏县|