99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于Xilinx FPGA如何獲取FPGA的Device DNA

電子設(shè)計(jì) ? 來源:XILINX技術(shù)社區(qū) ? 作者:Evening ? 2021-01-02 09:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:Evening

Xilinx每一個(gè)FPGA都有一個(gè)獨(dú)特的ID,也就是Device DNA,這個(gè)ID相當(dāng)于我們的身份證,在FPGA芯片生產(chǎn)的時(shí)候就已經(jīng)寫死在芯片的eFuse寄存器中,具有不可修改的屬性,因?yàn)槭褂玫氖?a target="_blank">熔斷技術(shù)。值得說明的是,在7系列及以前,這個(gè)ID都是57bit的,但是在Xilinx的Ultraslace架構(gòu)下是96bit。

FPGA的DNA我們一般的使用場(chǎng)景是用于用戶邏輯加密。一般來說,用戶在邏輯上可以通過特定的接口把這個(gè)Device DNA讀取出來,經(jīng)過一系列加密算法之后和預(yù)先在外部Flash存儲(chǔ)的一串加密后的字節(jié)串做比較,這個(gè)flash存儲(chǔ)的加密后的字節(jié)串也是由該DNA經(jīng)過加密后得到,fpga加載程序后可以先從flash讀出該段字節(jié)做比較,如果相同,則讓FPGA啟動(dòng)相應(yīng)的邏輯,如不同,則代表該FPGA沒有經(jīng)過用戶授權(quán),用戶邏輯上可以關(guān)閉FPGA的邏輯功能甚至可以通過一些手段讓硬件損壞。

如何獲取FPGA的Device DNA呢,下面我從JTAG和調(diào)用源語兩個(gè)方法說明,并開放核心代碼供大家參考。

第一種,通過JTAG獲取,這種方法在ISE的Impact或者vivado都可以實(shí)現(xiàn),下面介紹在Vivado下如何或者Device DNA,這個(gè)其實(shí)很簡(jiǎn)單,首先板卡通過JTAG連接PC,在Flow Navigator -> PROGRAM AND DEBUG 界面下,點(diǎn)擊對(duì)應(yīng)的FPGA的芯片,點(diǎn)擊Hardware Device Properties,在search中搜索dna,在REGISTER下可以找到Device DNA,在Impact下如何獲取DNA網(wǎng)上有相應(yīng)的文章,這里就不做進(jìn)一步介紹。

第二種,用戶邏輯通過調(diào)用源語獲取,至于源語是什么,這里跟大家分享一個(gè)技巧,一般我們使用源語的時(shí)候,往往記不住大量的源語定義,那么如何快速搜索到我們想要的源語呢,在Vivado中,有一個(gè)功能是Language Templates,在Flow Navigator可以找到,里面包含了基本所有的Xilinx提供的源語和一些語法用法,以DNA讀取為例,我們搜索DNA,就可以找到關(guān)于DNA的源語,由于博主用的是VU9P的片子,所以用的是DNA_PORTE2這個(gè)源語,針對(duì)7系列及以前,使用的是DNA_PORT源語,這兩個(gè)源語都可以在Language Templates找到。

pIYBAF9uHniAc3TZAAF3q3q28Sw668.png

接下來說一下這個(gè)源語和源語相關(guān)的使用方法,這個(gè)源語本質(zhì)上就是讀取FUSE寄存器表里面的FUSE_DNA寄存器,里面還包含了一個(gè)移位寄存器,源語中的接口本質(zhì)上都是操作移位寄存器,這個(gè)移位寄存器的長(zhǎng)度和器件類型有關(guān),是56或者96bit。源語里面的READ信號(hào),是用于把DNA的值裝載到移位寄存器里面,DIN是移位寄存器的輸入,DOUT是移位寄存器的輸出,SHIFT是移位寄存器的移位使能,CLK是移位寄存器的操作時(shí)鐘,官方提供的源語模型和時(shí)序圖如下,

pIYBAF9uHnmAW8amAAAXTfT6kg4876.png

o4YBAF9uHnqAGW8bAAAv6gIdl5w929.png

對(duì)于用戶來說,調(diào)用這個(gè)源語,我們只需要按照操作移位寄存器的流程操作就好了,我們目的是讀出源語里面的移位寄存器的值,所以我們?cè)O(shè)計(jì)的思路應(yīng)該是首先拉高READ先讓移位寄存器裝載DNA的值,然后在時(shí)鐘上升沿使能SHIFT,這樣子就能讓移位寄存器里面的值移位出來,下面是核心代碼:
module dna_read(
input sys_clk,

input dna_read_rdy,
output [95:0] dna_read_dat,
output dna_read_vld);

wire dna_dout;
wire dna_read;
wire dna_shift;

DNA_PORTE2 #(
.SIM_DNA_VALUE (96'd0)
)DNA_PORTE2_inst(
.DOUT (dna_dout),
.CLK (sys_clk),
.DIN (dna_dout),
.READ (dna_read),
.SHIFT (dna_shift)
);

reg [95:0] dna_reg = 0;
reg [7:0] dna_cnt = 0;

always @ (posedge sys_clk)
begin
if(dna_read_rdy) begin
dna_cnt end
else begin
dna_cnt end
end

// load dna data from the fuse dna register
assign dna_read = dna_cnt == 8'd63;
// for ultrascale
assign dna_shift = (dna_cnt >= 8'd100) && (dna_cnt

always @ (posedge sys_clk)
begin
dna_reg end

assign dna_read_dat = dna_reg;
assign dna_read_vld = dna_cnt == 8'd196;
endmodule

這是一個(gè)axis總線的模塊,在dna_read_rdy拉高表示外部準(zhǔn)備好接收數(shù)據(jù),這時(shí)候模塊讀取DNA的值,然后送出去給外部模塊,外部模塊收到數(shù)據(jù)和dna_read_vld信號(hào),則拉低dna_read_rdy,完成一次dna數(shù)值傳輸流程。

編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22050

    瀏覽量

    618632
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5434

    瀏覽量

    124551
  • Xilinx
    +關(guān)注

    關(guān)注

    73

    文章

    2185

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    XILINX XCZU67DR FPGA完整原理圖

    電子發(fā)燒友網(wǎng)站提供《XILINX XCZU67DR FPGA完整原理圖.pdf》資料免費(fèi)下載
    發(fā)表于 05-30 15:29 ?0次下載

    xilinx FPGA IOB約束使用以及注意事項(xiàng)

    xilinx FPGA IOB約束使用以及注意事項(xiàng) 一、什么是IOB約束 在xilinx FPGA中,IOB是位于IO附近的寄存器,是FPGA
    的頭像 發(fā)表于 01-16 11:02 ?917次閱讀
    <b class='flag-5'>xilinx</b> <b class='flag-5'>FPGA</b> IOB約束使用以及注意事項(xiàng)

    【米爾-Xilinx XC7A100T FPGA開發(fā)板試用】Key-test

    硬件: 一Xilinx XC7A100T FPGA開發(fā)板 二12V電源適配器 三下載器 四 win10筆記本 軟件: 一Vivado (指導(dǎo)手冊(cè)有詳細(xì)的安裝下載流程) 二官方按鍵示例工程 按鍵示例
    發(fā)表于 01-09 16:08

    基于Xilinx ZYNQ7000 FPGA嵌入式開發(fā)實(shí)戰(zhàn)指南

    電子發(fā)燒友網(wǎng)站提供《基于Xilinx ZYNQ7000 FPGA嵌入式開發(fā)實(shí)戰(zhàn)指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-10 15:31 ?37次下載

    【米爾-Xilinx XC7A100T FPGA開發(fā)板試用】測(cè)試一

    感謝米爾電子和電子發(fā)燒友提供的米爾-Xilinx XC7A100T FPGA開發(fā)板。 MYD-J7A100T用的 FPGAXILINX 公司 ARTIX-7 系列的 XC 7A1
    發(fā)表于 12-08 08:48

    XILINX FPGA Verilog編程大全2015

    不錯(cuò)的FPGA編程書籍
    發(fā)表于 11-26 13:59 ?8次下載

    dac3174與xilinx zynq7000系列連接,fpga的案例參考代碼有沒有?

    dac3174與xilinx zynq7000系列連接,fpga的案例參考代碼有沒有? tsw1400_lvds_dac_sample_wise_restored的代碼寫的實(shí)在太難度了,一句注釋都沒有
    發(fā)表于 11-25 06:04

    采用Xilinx FPGA的AFE79xx SPI啟動(dòng)指南

    電子發(fā)燒友網(wǎng)站提供《采用Xilinx FPGA的AFE79xx SPI啟動(dòng)指南.pdf》資料免費(fèi)下載
    發(fā)表于 11-15 15:28 ?0次下載
    采用<b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b>的AFE79xx SPI啟動(dòng)指南

    正點(diǎn)原子fpga開發(fā)指南

    正點(diǎn)原子(ZYNQ)是一種集成了ARM處理器和FPGA(現(xiàn)場(chǎng)可編程門陣列)的SoC(系統(tǒng)級(jí)芯片)解決方案,由Xilinx公司推出。它結(jié)合了處理器的靈活性和FPGA的可編程性,適用于需要高性能計(jì)算和可
    的頭像 發(fā)表于 11-13 09:35 ?2159次閱讀

    FPGA基礎(chǔ)知識(shí)及設(shè)計(jì)和執(zhí)行FPGA應(yīng)用所需的工具

    本文將首先介紹FPGA的基礎(chǔ)知識(shí),包括FPGA的工作原理以及為什么要使用FPGA等,然后討論設(shè)計(jì)和執(zhí)行FPGA應(yīng)用所需的工具。
    的頭像 發(fā)表于 11-11 11:29 ?1821次閱讀
    <b class='flag-5'>FPGA</b>基礎(chǔ)知識(shí)及設(shè)計(jì)和執(zhí)行<b class='flag-5'>FPGA</b>應(yīng)用所需的工具

    Xilinx 7系列FPGA PCIe Gen3的應(yīng)用接口及特性

    Xilinx7系列FPGA集成了新一代PCI Express集成塊,支持8.0Gb/s數(shù)據(jù)速率的PCI Express 3.0。本文介紹了7系列FPGA PCIe Gen3的應(yīng)用接口及一些特性。
    的頭像 發(fā)表于 11-05 15:45 ?3197次閱讀
    <b class='flag-5'>Xilinx</b> 7系列<b class='flag-5'>FPGA</b> PCIe Gen3的應(yīng)用接口及特性

    詳解FPGA的基本結(jié)構(gòu)

    ZYNQ PL 部分等價(jià)于 Xilinx 7 系列 FPGA,因此我們將首先介紹 FPGA 的架構(gòu)。簡(jiǎn)化的 FPGA 基本結(jié)構(gòu)由 6 部分組成,分別為可編程輸入/輸出單元、基本可編程邏
    的頭像 發(fā)表于 10-25 16:50 ?3337次閱讀
    詳解<b class='flag-5'>FPGA</b>的基本結(jié)構(gòu)

    如何申請(qǐng)xilinx IP核的license

    在使用FPGA的時(shí)候,有些IP核是需要申請(qǐng)后才能使用的,本文介紹如何申請(qǐng)xilinx IP核的license。
    的頭像 發(fā)表于 10-25 16:48 ?1411次閱讀
    如何申請(qǐng)<b class='flag-5'>xilinx</b> IP核的license

    【招聘】verilog vhdl FPGA

    1.熟悉FPGA架構(gòu)及應(yīng)用,熟悉圖像算法的FPGA實(shí)現(xiàn)。 2.熟悉verilog vhdl,熟悉Xilinx或Intel等開發(fā)工具。 3.有AI算法 fpga實(shí)現(xiàn)經(jīng)驗(yàn)優(yōu)先。 4.本科及
    發(fā)表于 09-02 15:50

    Xilinx FPGA命名規(guī)則,可替代參數(shù),速度等級(jí)常識(shí)

    FPGA
    芯廣場(chǎng)
    發(fā)布于 :2024年08月22日 19:01:55