91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

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

電子設(shè)計(jì) ? 來(lái)源: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)寫(xiě)死在芯片的eFuse寄存器中,具有不可修改的屬性,因?yàn)槭褂玫氖?a target="_blank">熔斷技術(shù)。值得說(shuō)明的是,在7系列及以前,這個(gè)ID都是57bit的,但是在Xilinx的Ultraslace架構(gòu)下是96bit。

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

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

第一種,通過(guò)JTAG獲取,這種方法在ISE的Impact或者vivado都可以實(shí)現(xiàn),下面介紹在Vivado下如何或者Device DNA,這個(gè)其實(shí)很簡(jiǎn)單,首先板卡通過(guò)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)一步介紹。

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

pIYBAF9uHniAc3TZAAF3q3q28Sw668.png

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

pIYBAF9uHnmAW8amAAAXTfT6kg4876.png

o4YBAF9uHnqAGW8bAAAv6gIdl5w929.png

對(duì)于用戶(hù)來(lái)說(shuō),調(diào)用這個(gè)源語(yǔ),我們只需要按照操作移位寄存器的流程操作就好了,我們目的是讀出源語(yǔ)里面的移位寄存器的值,所以我們?cè)O(shè)計(jì)的思路應(yīng)該是首先拉高READ先讓移位寄存器裝載DNA的值,然后在時(shí)鐘上升沿使能SHIFT,這樣子就能讓移位寄存器里面的值移位出來(lái),下面是核心代碼:
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總線(xiàn)的模塊,在dna_read_rdy拉高表示外部準(zhǔn)備好接收數(shù)據(jù),這時(shí)候模塊讀取DNA的值,然后送出去給外部模塊,外部模塊收到數(shù)據(jù)和dna_read_vld信號(hào),則拉低dna_read_rdy,完成一次dna數(shù)值傳輸流程。

編輯:hfy

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

    關(guān)注

    1660

    文章

    22411

    瀏覽量

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

    關(guān)注

    31

    文章

    5608

    瀏覽量

    129968
  • Xilinx
    +關(guān)注

    關(guān)注

    73

    文章

    2200

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    Xilinx FPGA中IDELAYCTRL參考時(shí)鐘控制模塊的使用

    IDELAYCTRL 是 Xilinx FPGA(特別是支持高速 I/O 的系列,如 Virtex-5/6/7、Kintex-7、Artix-7、Spartan-6/7 等)中用于管理和校準(zhǔn)輸入延遲模塊(IDELAYE2/IDELAYE3)的必須存在的參考時(shí)鐘控制模塊。
    的頭像 發(fā)表于 02-26 14:41 ?2581次閱讀

    AMD UltraScale架構(gòu):高性能FPGA與SoC的技術(shù)剖析

    AMD UltraScale架構(gòu):高性能FPGA與SoC的技術(shù)剖析 在當(dāng)今的電子設(shè)計(jì)領(lǐng)域,高性能FPGA和MPSoC/RFSoC的需求日益增長(zhǎng)。AMD的UltraScale架構(gòu)憑借其創(chuàng)新的技術(shù)和卓越
    的頭像 發(fā)表于 12-15 14:35 ?555次閱讀

    MarketsandMarkets FPGA行業(yè)報(bào)告,2026~2030 FPGA市場(chǎng)洞察

    2025年10月,全球知名市場(chǎng)研究與商業(yè)洞察權(quán)威咨詢(xún)機(jī)構(gòu) MarketsandMarkets 發(fā)布?Field-Programmable Gate Array (FPGA) MarketSize
    的頭像 發(fā)表于 11-20 13:20 ?487次閱讀
    MarketsandMarkets <b class='flag-5'>FPGA</b>行業(yè)報(bào)告,2026~2030 <b class='flag-5'>FPGA</b>市場(chǎng)洞察

    使用Xilinx 7系列FPGA的四位乘法器設(shè)計(jì)

    (Shinshu University)研究團(tuán)隊(duì)的最新設(shè)計(jì)中,一個(gè)專(zhuān)為 Xilinx 7 系列 FPGA 量身打造的 4 位乘法器使用了僅 11 個(gè) LUT + 2 個(gè) CARRY4 塊,關(guān)鍵路徑延遲達(dá)到 2.75 ns。這是一次令人印象深刻的工藝優(yōu)化實(shí)踐。
    的頭像 發(fā)表于 11-17 09:49 ?3463次閱讀
    使用<b class='flag-5'>Xilinx</b> 7系列<b class='flag-5'>FPGA</b>的四位乘法器設(shè)計(jì)

    Xilinx FPGA串行通信協(xié)議介紹

    Xilinx FPGA因其高性能和低延遲,常用于串行通信接口設(shè)計(jì)。本文深入分析了Aurora、PCI Express和Serial RapidIO這三種在Xilinx系統(tǒng)設(shè)計(jì)中關(guān)鍵的串行通信協(xié)議。介紹了它們的特性、優(yōu)勢(shì)和應(yīng)用場(chǎng)景
    的頭像 發(fā)表于 11-14 15:02 ?2533次閱讀
    <b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b>串行通信協(xié)議介紹

    請(qǐng)問(wèn)如何將蜂鳥(niǎo)E203移植到Xilinx NEXYS A7 FPGA 開(kāi)發(fā)板上?

    如何將蜂鳥(niǎo)E203移植到Xilinx NEXYS A7 FPGA 開(kāi)發(fā)板上?有參考教程嗎?小白求教 主要是引腳分配,我這邊有移植到Xilinx Artix-7 系列XC7A100T-fgg484的案
    發(fā)表于 11-11 07:44

    開(kāi)源RISC-V處理器(蜂鳥(niǎo)E203)學(xué)習(xí)(二)修改FPGA綜合環(huán)境(移植到自己的Xilinx FPGA板卡)

    ,所以我喜歡折騰,因?yàn)檎垓v迫使我不斷去解決問(wèn)題,在解決問(wèn)題的過(guò)程中會(huì)思考很多細(xì)節(jié),而且印象更加深刻。當(dāng)然這是我個(gè)人的學(xué)習(xí)方法。 如果手上有XilinxFPGA板卡,可以一起學(xué)習(xí)一下怎么將e203
    發(fā)表于 10-31 08:46

    一文詳解xilinx 7系列FPGA配置技巧

    本文旨在通過(guò)講解不同模式的原理圖連接方式,進(jìn)而配置用到引腳的含義(手冊(cè)上相關(guān)引腳含義有四、五頁(yè),通過(guò)本文理解基本上能夠記住所有引腳含義以及使用場(chǎng)景),熟悉xilinx 7系列配置流程,以及設(shè)計(jì)原理圖時(shí)需要注意的一些事項(xiàng),比如flash與FPGA的上電時(shí)序。
    的頭像 發(fā)表于 08-30 14:35 ?1.1w次閱讀
    一文詳解<b class='flag-5'>xilinx</b> 7系列<b class='flag-5'>FPGA</b>配置技巧

    Altera Agilex? 3 FPGA和SoC FPGA

    Altera Agilex? 3 FPGA和SoC FPGA Altera/Intel Agilex? 3 FPGA和SoC FPGA使創(chuàng)新者能夠?qū)⒊杀緝?yōu)化的設(shè)計(jì)提升到更高的性能水平。
    的頭像 發(fā)表于 08-06 11:41 ?4128次閱讀
    Altera Agilex? 3 <b class='flag-5'>FPGA</b>和SoC <b class='flag-5'>FPGA</b>

    FPGA與高速ADC接口簡(jiǎn)介

    本文介紹FPGA與高速ADC接口方式和標(biāo)準(zhǔn)以及JESD204與FPGA高速串行接口。
    的頭像 發(fā)表于 06-12 14:18 ?3149次閱讀
    <b class='flag-5'>FPGA</b>與高速ADC接口簡(jiǎn)介

    智多晶FPGA設(shè)計(jì)工具HqFpga接入DeepSeek大模型

    在 AI 賦能工程設(shè)計(jì)的時(shí)代浪潮中,智多晶率先邁出關(guān)鍵一步——智多晶正式宣布旗下 FPGA 設(shè)計(jì)工具 HqFpga 接入 DeepSeek 大模型,并推出 FPGA 設(shè)計(jì)專(zhuān)屬 AI 助手——晶小助!這是
    的頭像 發(fā)表于 06-06 17:06 ?1529次閱讀

    XILINX XCZU67DR FPGA完整原理圖

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

    使用gpif designer fx2lp在CTL0中生成波形來(lái)連接FPGA 以便從FPGA獲取數(shù)據(jù),為什么不能正常工作?

    我想使用gpif designer fx2lp 在CTL0 中生成波形來(lái)連接FPGA 以便從FPGA 獲取數(shù)據(jù)。 它在 CTL0 的下降沿逐幀獲取數(shù)據(jù)。 每幀有 32 個(gè)脈沖,但是當(dāng)我
    發(fā)表于 05-06 13:01

    ZYNQ FPGA的PS端IIC設(shè)備接口使用

    zynq系列中的FPGA,都會(huì)自帶兩個(gè)iic設(shè)備,我們直接調(diào)用其接口函數(shù)即可運(yùn)用。使用xilinx官方提供的庫(kù)函數(shù),開(kāi)發(fā)起來(lái)方便快捷。
    的頭像 發(fā)表于 04-17 11:26 ?2138次閱讀
    ZYNQ <b class='flag-5'>FPGA</b>的PS端IIC設(shè)備接口使用

    國(guó)產(chǎn)FPGA往事

    首先,這篇文章的后半部分,會(huì)有一個(gè)廣告:我去年和紫光同創(chuàng)原廠(chǎng)的技術(shù)專(zhuān)家寫(xiě)了一本書(shū)——《國(guó)產(chǎn)FPGA權(quán)威開(kāi)發(fā)指南》,我想送一些書(shū)給到熟悉的、曾經(jīng)熟悉的、或者還未熟悉的FPGA開(kāi)發(fā)者同行,請(qǐng)各位開(kāi)發(fā)者
    的頭像 發(fā)表于 04-14 09:53 ?803次閱讀
    國(guó)產(chǎn)<b class='flag-5'>FPGA</b>往事