吴忠躺衫网络科技有限公司

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

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

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

VIO比chipscope有多大優(yōu)勢(shì)?

FPGA之家 ? 來源:陳年麗 ? 2019-07-19 10:19 ? 次閱讀

debug,尤其是通信芯片的debug,可以有很多的方法。一個(gè)數(shù)據(jù)幀從進(jìn)入到輸出,可以在通路上的關(guān)鍵節(jié)點(diǎn)處設(shè)置監(jiān)測(cè)如各種計(jì)數(shù)器等,可通過VIO(xilinx)定時(shí)上報(bào)實(shí)時(shí)狀態(tài)。可以把VIO的各個(gè)信號(hào)線設(shè)置成類似于CPU總線的結(jié)構(gòu),監(jiān)測(cè)計(jì)數(shù)器或者狀態(tài)寄存器編成相應(yīng)的地址,輪詢讀取回PC,在PC上通過TCL或者其它語言捕獲數(shù)據(jù)。甚至可以將多個(gè)FPGA芯片都通過VIO進(jìn)行調(diào)試,遠(yuǎn)程操作,效率也可以大大提升。另外,也可以設(shè)置專門的測(cè)試幀,在里面打各種不同大小的閉環(huán),層層檢測(cè),發(fā)現(xiàn)問題。

這個(gè)VIO比chipscope有多大優(yōu)勢(shì)?

原理是一樣的,不同的就是可以方便操控,可以寫腳本抓取數(shù)據(jù),還可以遠(yuǎn)程操控。VIO有輸入也有輸出,可以實(shí)時(shí)的配置寄存器。http://xilinx.eetrend.com/blog/11987,VivadoVIO (virtual input output)虛擬IO使用;

一、使用方法概述

一般情況下VIO用在設(shè)計(jì)中,可以提供模擬IO(我們主要用到模擬輸出接口的功能)。如圖1所示,紅框內(nèi)vio_0模塊的兩個(gè)輸出probe_out[0:0]和probe_out[7:0]都可以接到其他模塊直接使用,但是我們不需要用到板子上的實(shí)際接口(比如按鍵)。那么為什么我們?cè)?a href="http://www.solar-ruike.com.cn/v/tag/1247/" target="_blank">電腦上點(diǎn)一點(diǎn)鼠標(biāo),就可以將數(shù)據(jù)傳遞到FPGA內(nèi)部呢?數(shù)據(jù)是通過什么傳輸?shù)紽PGA內(nèi)部?答案是JTAG,電腦上的VIVADO軟件可以通過JTAG軟件與FPGA實(shí)現(xiàn)通信,這就是VIO模塊在FPGA內(nèi)部模擬IO引腳的原理。

圖1 VIO IP核

1、VIO IP核的配置

下面用實(shí)際例子說明VIO IP核的配置過程:

在某設(shè)計(jì)中,需要使用按鍵出發(fā),但是板子上沒有設(shè)計(jì)按鍵,所以需要使用VIO模擬按鍵輸入還有其他信號(hào)的輸出。具體過程如下:

(1)例化VIO IP核 ;

(2)參數(shù)配置,配置輸入探針數(shù)量和輸出探針數(shù)量,如圖2所示。分別可以設(shè)置0-256個(gè)。(一般輸入探針用不到,最常用的是輸出探針,在這里這兩種探針都在圖里體現(xiàn)了)。

圖2 探針數(shù)量設(shè)置

(3)配置輸出探針數(shù)據(jù)位寬及初始值

輸出探針的數(shù)據(jù)位寬,及初始化數(shù)據(jù)(in hex)配置如圖3所示

圖3配置輸出探針數(shù)據(jù)位寬及初始值

3、 VIO IP核的例化

VIO IP核代碼實(shí)例化如下圖所示。

ILA_wrapper ILA(

.clk ( ),

.probe0 (),

.probe1 (),

.probe_out0 (),

.probe_out1 (),

.probe_in0 ()

);

4、 VIO IP核的使用

在hw_vio界面加入輸出探針,并且配置對(duì)應(yīng)的參數(shù),此時(shí)FPGA內(nèi)部的輸出探針就會(huì)相應(yīng)地發(fā)出信號(hào),如圖4所示。

圖4 VIO IP核的使用

二、使用VIO實(shí)現(xiàn)大量寄存器讀寫

1、背景

在FPGA調(diào)試中,如果沒有CPU接口及操作系統(tǒng),但同時(shí)希望能夠有一種類似于有CPU且可以實(shí)時(shí)在線讀寫FPGA內(nèi)部狀態(tài)寄存器或者配置FPGA內(nèi)部寄存器的功能,就可以采用VIO來實(shí)現(xiàn)一個(gè)模擬的CPU接口,以下進(jìn)行詳細(xì)的介紹。

2、 原理框圖及VIO字段定義

在Vivado 2016.2 軟件環(huán)境,Zedboard硬件平臺(tái)下,實(shí)現(xiàn)了一個(gè)示例工程,該工程的功能是,電腦運(yùn)行Vivado軟件,并通過Jtag與zedboard相連,利用VIO模擬CPU接口,實(shí)現(xiàn)寄存器讀寫功能(寄存器數(shù)量為32個(gè),位數(shù)為32位),如圖5所示。

圖5原理框圖

其參數(shù)配置說明如下:

如圖6所示,vio_out_1的前32位是寫地址,后32位是寫數(shù)據(jù);

圖6 VIO寫地址與寫數(shù)據(jù)

如圖7所示,vio_rd_addr代表讀地址;

圖7 VIO讀地址

如圖8所示,vio_rd_data代表讀數(shù)據(jù)

圖8 VIO讀數(shù)據(jù)

3、操作示例

這里給出一個(gè)寄存器讀寫的例子,在這里不用tcl腳本,直接用圖形界面,使用更加方便。

(1)給地址為1的寄存器寫入數(shù)據(jù)32'hffff_ffff,即配置vio_out_1[63:0]為64'h0000_0001_FFFF_FFFF,如圖9所示。

圖9 VIO寫入數(shù)據(jù)

(2) 將讀地址設(shè)置為1,觀察讀數(shù)據(jù)變化,如圖10所示。

圖10 VIO讀數(shù)據(jù)

觀察圖10可以發(fā)現(xiàn),配置讀地址vio_rd_addr為32'h0000_0001后,讀數(shù)據(jù)vio_rd_data[31:0]由圖9中的32'h0000_0000變?yōu)閳D10中的32'hffff_ffff,與寫入的數(shù)據(jù)相同,寄存器讀寫操作成功。

三、源代碼

1、約束文件源碼

set_property PACKAGE_PIN Y9 [get_ports clk]

set_property IOSTANDARD LVCMOS33 [get_ports clk]

上述源碼及約束文件適用于Xilinx的Zedboard開發(fā)板,已上板驗(yàn)證。另外,上面僅是原理性的簡單演示,可以把寄存器應(yīng)用于自己設(shè)計(jì)中的各個(gè)內(nèi)部關(guān)鍵模塊中,調(diào)試的過程中,實(shí)時(shí)的從VIO接口獲取數(shù)據(jù),或者動(dòng)態(tài)的配置FPGA內(nèi)部的寄存器,使其按照寄存器約定的功能運(yùn)行。雖沒有CPU,卻等效有了CPU,可大大提高FPGA調(diào)試的效率。VIO占用資源情況與chipscope類似。

聲明:本文內(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)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    456

    文章

    51170

    瀏覽量

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

    關(guān)注

    31

    文章

    5363

    瀏覽量

    121161

原文標(biāo)題:使用VIVADO中VIO模擬CPU接口進(jìn)行在線寄存器讀寫調(diào)試(附源代碼)

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    XILINX FPGA Debug with VIO and TCL

    方便的TCL應(yīng)用接口xtclsh,可以方便調(diào)用Xilinx的庫。Xilinx FPGA4條JTAG User Chain(User0/1/2/3),但自帶的chipscope analyzer調(diào)試軟件
    發(fā)表于 03-08 15:29

    ISE VIO的使用

    請(qǐng)問VIO輸出的控制信號(hào)的類型該如何設(shè)置?如圖三種類型分別是什么意思
    發(fā)表于 04-27 15:50

    使用VIO IP在ISE Design SUite軟件中調(diào)試時(shí)遇到以下錯(cuò)誤該怎么辦?

    大家好。我使用VIO IP在ISE Design SUite軟件中調(diào)試設(shè)計(jì)。當(dāng)我運(yùn)行工具有以下錯(cuò)誤:檢查擴(kuò)展設(shè)計(jì)...錯(cuò)誤:NgdBuild:604 - 類型為'chipscope_vio'的邏輯塊
    發(fā)表于 08-02 08:10

    Chipscope中的ILA,VIO和ATC2什么區(qū)別?

    HI,Chipscope中的ILA,VIO和ATC2什么區(qū)別?問候Naveen G K.謝謝娜文G K.
    發(fā)表于 03-31 10:09

    FT232對(duì)CH430什么優(yōu)勢(shì)

    FT232對(duì)CH430什么優(yōu)勢(shì)
    發(fā)表于 10-09 07:06

    Chipscope學(xué)習(xí)教程

    本教程假定用戶已有安裝好仿真、綜合、ISE 和相應(yīng)的Chipscope,教程使用的環(huán)境如 下: 仿真:Modelsim 5.8 綜合:Synplify pro 7.5.1 布局:ISE 6.2 分析:Chipscope 6.2
    發(fā)表于 05-10 14:49 ?0次下載
    <b class='flag-5'>Chipscope</b>學(xué)習(xí)教程

    CHipScoPe使用

    chipscope是一款在線邏輯分析儀,可實(shí)時(shí)有效的檢查FPGA內(nèi)部設(shè)計(jì)電路各需求中間節(jié)點(diǎn)的信號(hào)波形。
    發(fā)表于 11-23 11:36 ?2次下載

    Chipscope的使用

    Xilinx chipscope使用方法,針對(duì)剛剛開始接觸FPGA的同學(xué),零基礎(chǔ)學(xué)習(xí)。
    發(fā)表于 03-21 16:57 ?1次下載

    ChipScope使用示例

    Xilinx FPGA工程例子源碼:ChipScope使用示例
    發(fā)表于 06-07 14:13 ?7次下載

    Xilinx FPGA ChipScope的ICON/ILA/VIO核使用

    使用ChipScope兩種方式: 第一種,使用CoreInsert,可參考下面鏈接: 這種方法可以快速的使用ICON和ILA核,以及ATC2核,而且不必修改原代碼。缺點(diǎn)是不能使用其他核,如VIO
    發(fā)表于 02-09 05:19 ?1223次閱讀
    Xilinx FPGA <b class='flag-5'>ChipScope</b>的ICON/ILA/<b class='flag-5'>VIO</b>核使用

    ise中chipscope的使用

     本文介紹了ise中chipscope的使用
    發(fā)表于 09-15 17:38 ?8次下載

    SDK和ChipScope配合工作

    如果使用ZC702單板內(nèi)置的digilent電纜,SDK 14.6 和 ChipScope 14.6配合工作,可能會(huì)有問題,ChipScope在SDK 調(diào)試軟件時(shí)不能觸發(fā),“Trigger
    發(fā)表于 11-22 15:19 ?2902次閱讀

    chipscope使用教程以及FPGA在線調(diào)試的方法

    本文檔內(nèi)容介紹了基于chipscope使用教程以及FPGA在線調(diào)試的方法,供參考
    發(fā)表于 03-02 14:09 ?9次下載

    Vivado之VIO原理及應(yīng)用

    虛擬輸入輸出(Virtual Input Output,VIO)核是一個(gè)可定制的IP核,它可用于實(shí)時(shí)監(jiān)視和驅(qū)動(dòng)內(nèi)部FPGA的信號(hào),如圖所示。 ? ? 可以定制VIO的輸入和輸出端口的數(shù)量與寬度,用于
    的頭像 發(fā)表于 09-23 16:11 ?9410次閱讀
    Vivado之<b class='flag-5'>VIO</b>原理及應(yīng)用

    VIOchipscope上的使用

    一般情況下ILA和VIO都是用在chipscope上使用,VIO可以作為在chipscope時(shí)模擬IO。
    的頭像 發(fā)表于 06-12 15:51 ?2458次閱讀
    百家乐平台信誉排名| 威尼斯人娱乐城地址lm0| 百家乐官网桌布小| 足球百家乐系统| 打百家乐的技术| 外围博彩| 路虎百家乐的玩法技巧和规则| 百家乐官网生活馆拖鞋| 瑞博网站| 网页百家乐游戏下载| 百家乐官网下注技巧| 百家乐官网视频台球下载| 星空棋牌大厅下载| 小孟百家乐的玩法技巧和规则| 实战百家乐官网十大取胜原因百分百战胜百家乐官网不买币不吹牛只你能做到按我说的.百家乐官网基本规则 | 赌场百家乐的玩法技巧和规则 | 百家乐官网类游戏平台| 大发888常见断续| 蓝盾百家乐代理打| 百家乐游戏玩法技巧| 百家乐官网赚水方| 海王星百家乐官网的玩法技巧和规则 | 菲律宾百家乐娱乐平台| 网上百家乐网址| 全景网百家乐官网的玩法技巧和规则 | 一路发娱乐城| 大发888资讯网| 汨罗市| 澳门赌场女| 盛世国际娱乐场| 正规棋牌游戏| 现金棋牌游戏| 百家乐几点不用补牌| 索罗门百家乐的玩法技巧和规则| 百家乐桌现货| 百家乐开户过的路纸| 玩百家乐免费| 御匾会百家乐的玩法技巧和规则| 百家乐3带厂家地址| 做生意怎么看风水| 娱乐百家乐官网下载|