chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

Hx ? 作者:工程師陳翠 ? 2018-06-30 10:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

FPGA正在逐漸成為EECS專業(yè)的同學(xué)們?cè)谛F陂g學(xué)習(xí)掌握的一項(xiàng)必備技能。無(wú)論是在課程實(shí)驗(yàn)、競(jìng)賽作品、科研項(xiàng)目還是未來(lái)求職過(guò)程中,擁有FPGA技能包對(duì)每一名電類工科生而言都會(huì)是一項(xiàng)不小的加分項(xiàng)。

對(duì)于想要學(xué)習(xí)著手開(kāi)始學(xué)習(xí)FPGA的童鞋們,我們有一則壞消息和一則好消息。先說(shuō)壞消息:現(xiàn)今每家FPGA廠商都有其專屬的開(kāi)發(fā)工具鏈,這也意味著要想對(duì)不同的FPGA開(kāi)發(fā)板進(jìn)行編程,你首先得熟悉掌握不同的開(kāi)發(fā)工具鏈,而這往往并不簡(jiǎn)單。接下來(lái)的好消息你一定會(huì)眼前一亮:現(xiàn)在,你可以使用Multisim這一在電路實(shí)驗(yàn)中無(wú)處不在并廣受歡迎的電路搭建與仿真工具來(lái)對(duì)多款Digilent FPGA開(kāi)發(fā)板進(jìn)行編程了!是的,你沒(méi)有聽(tīng)錯(cuò)哦。只需要一些基本的設(shè)置,你所熟悉的Multisim就將成為助你探索FPGA奇妙世界的一項(xiàng)利器。

在今天分享的教程中,我們就將手把手一步步教你如何使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程。如果你有興趣,趕緊跟著我們一起來(lái)操作吧!

1.獲取正確的工具

想要使用Multisim來(lái)對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程,你首先得安裝一些必要的軟件:

LabVIEW 2014或更新版本

● Multisim 14.0或更新版本

● Vivado 2014.4或更新版本

第一步記得先安裝LabVIEW,這是由于Multisim的一些文件需要在裝好LabVIEW的基礎(chǔ)上才能實(shí)現(xiàn)交互運(yùn)作。當(dāng)上述每一個(gè)軟件裝好之后,記得重啟電腦以使其生效。

在這里,我所安裝的是LabVIEW 2016版,默認(rèn)安裝路徑為:“C:\Program Files\National Instruments”而非“C:\Program Files (x86)\National Instruments”。由于Multisim會(huì)與LabVIEW產(chǎn)生交互,故而我選擇將LabVIEW目錄調(diào)整為“C:\Program Files (x86)\National Instruments”,以確保兩個(gè)軟件在同一目錄下。

當(dāng)前,Multisim支持對(duì)以下型號(hào)搭載Xilinx Aritx-7芯片的Digilent FPGA開(kāi)發(fā)板進(jìn)行編程,包括:

● Basys 3

● Nexys 4 DDR

● Arty A7

● CMOD A7

要想正確將Mulisim與Vivado實(shí)現(xiàn)關(guān)聯(lián),你同時(shí)需要下載安裝相關(guān)的FPGA工具。點(diǎn)擊「閱讀原文」下載安裝NI LabVIEW FPGA Vivado 2014.4工具包。

下載頁(yè)中所推薦的“NI Download Manager”選項(xiàng)可以幫你獲取一個(gè)較小的下載文件,在此基礎(chǔ)上幫你再下載工具包所需的安裝文件。對(duì)應(yīng)的,“Browser Download”選項(xiàng)直接幫助你獲取一個(gè)*.iso鏡像下載文件,并隨后會(huì)直接自動(dòng)安裝到你的電腦光驅(qū)上。這里你可以選擇任意一種你喜歡的方式進(jìn)行下載安裝。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

如果*.iso鏡像文件下載完畢后沒(méi)有自動(dòng)進(jìn)入安裝程序,你可以在默認(rèn)下載路徑中雙擊它來(lái)啟動(dòng)安裝程序。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

點(diǎn)擊“Next”然后輸入安裝文件包中所包含的任一序列號(hào)。我使用的是LabVIEW序列號(hào)。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

之后軟件會(huì)自動(dòng)搜索更新文件。一路選擇“Accept”,然后單擊“Next”。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

隨后,點(diǎn)擊“Next”以接受3 License Agreements 。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

之后,再點(diǎn)擊一次“Next”即可開(kāi)始安裝。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

安裝完畢之后,記得務(wù)必重啟你的電腦。然后進(jìn)入“C:\NIFPGA\programs\Vivado2014_4\data\xicom\cable_drivers\nt64\digilent”,單擊運(yùn)行“install_digilent.exe”文件以安裝Digilent Adept程序(如果提示需要的話)。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

到這里,所有的軟件程序及關(guān)聯(lián)組建就都安裝完畢了。接下來(lái)我們開(kāi)始進(jìn)行Multisim編程部分的講解。

2.FPGA“代碼編寫”概述

通常,用于FPGA芯片的代碼我們都是通過(guò)硬件描述語(yǔ)言來(lái)編寫,其中最為廣泛使用的即是VHDL或Verilog。絕大多數(shù)的硬件描述語(yǔ)言都可歸結(jié)為使用兩種不同的設(shè)計(jì)理念來(lái)編寫代碼:結(jié)構(gòu)性或行為性。上述兩種方式指的不是某種特定的語(yǔ)言,而是思考如何編寫代碼的兩種概念方法。當(dāng)然,你也可以在同一個(gè)項(xiàng)目中,同時(shí)使用結(jié)構(gòu)性與行為性兩種方法,只要你覺(jué)得沒(méi)有問(wèn)題的話。

在行為性設(shè)計(jì)中,我們簡(jiǎn)單地闡述所想要做的編譯操作,代碼會(huì)自行在某一特定背景下以芯片能夠理解的方式“施展它的魔力”。以下是一個(gè)帶有進(jìn)位的二位全加法器的代碼示例:

// Verilog example of a behavioral design

module Full_Adder_behavioral(

input A,

input B,

input Cin,

output S,

output Cout

);

wire [1:0] sum;

// The next line makes it clear what we have. All three terms are added

// together, so we must have an adder. We‘ve described the behavior of

// the circuit. Note the absence of any logic declarations like “AND” or “&”。

assign sum = A + B + Cin;

assign S = sum[0];

assign Cout = sum[1];

endmodule

當(dāng)你增加3位時(shí),你所能獲得的最大值為十進(jìn)制的3,或二進(jìn)制的11,因此在這里我們需要’sum‘值對(duì)于’sum‘位數(shù)而言是一個(gè)二位占位符。編譯器明白“+”的意義,并創(chuàng)建了一個(gè)二進(jìn)制代碼來(lái)完成這一任務(wù)。S與Cout位被對(duì)應(yīng)的分配給’sum‘中的相應(yīng)位數(shù)。

相對(duì)應(yīng)的,結(jié)構(gòu)性設(shè)計(jì)是一種對(duì)于“實(shí)現(xiàn)正確處理輸入數(shù)據(jù)的精確邏輯”的明確描述,以下是對(duì)于同一全加法器的結(jié)構(gòu)性描述代碼示例:

// Verilog example of a structural design

module Full_Adder_structural(

input A,

input B,

input Cin,

output S,

output Cout

);

// Here we see the use of several logic gate structures. Without deciphering

// the logic, it would be difficult at best to know what exactly is going on

// just by glancing at the code. Now imagine a large project with 100s of

// lines of code to decipher.

wire w01 = A ^ B;

wire w02 = Cin & w01;

wire w03 = A & B;

assign S = w01 ^ Cin;

assign Cout = w02 | w03;

endmodule

在這一代碼示例中,我們已經(jīng)明確告知編譯器我們是如何希望所輸入的數(shù)據(jù)被邏輯處理的。編譯器再一次“施展它的魔力”并以芯片能夠理解的方式編譯文件。

這里寫了這么多是想告訴你:由于Multisim是一款使用圖形進(jìn)行電路設(shè)計(jì)的工具,故而我們將使用結(jié)構(gòu)性設(shè)計(jì)方式來(lái)“編寫”我們的代碼,但這里我們將用的是圖形而非文本語(yǔ)言。如何理解這句話?圖1即為針對(duì)上述同一全加法器的Multisim實(shí)現(xiàn)(直接從Multisim畫(huà)布中復(fù)制過(guò)來(lái))。這次你會(huì)發(fā)現(xiàn)我們使用的是圖形化的邏輯門:

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

通過(guò)上述方式,我們使用Multisim十分清晰地構(gòu)建了一個(gè)邏輯電路。試想,如果想要視覺(jué)化地來(lái)描述電路的結(jié)構(gòu)而不使用結(jié)構(gòu)性編程方法的話,難道還能有其它第二種方法嗎?

以上就是使用Multisim來(lái)對(duì)FPGA開(kāi)發(fā)板進(jìn)行編程的全部基礎(chǔ)知識(shí)所需。下面讓我們進(jìn)一步瞅瞅如何來(lái)進(jìn)行編程。

3.現(xiàn)在讓我們用Multisim來(lái)編寫一些代碼

使用Multisim來(lái)對(duì)FPGA開(kāi)發(fā)板編程,更像是在畫(huà)畫(huà),只是你首先需要有設(shè)計(jì)思路。這里,我們還是從設(shè)計(jì)一個(gè)先前提到的二位全加法器開(kāi)始。

打開(kāi)Multisim,你會(huì)看到一個(gè)默認(rèn)的空白畫(huà)布(canvas),用以設(shè)計(jì)或仿真模擬電路。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

將鼠標(biāo)移動(dòng)到左上角,單擊“File”然后選擇“New”。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

彈出窗口中,點(diǎn)擊頂端的“PLD design”按鈕,然后點(diǎn)擊底部的“Create”按鈕。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

下一個(gè)跳出的窗口會(huì)讓你去選擇你的配置文件。在這里,你可以選擇各種Multisim所支持的Digilent FPGA開(kāi)發(fā)板定義,這些都已經(jīng)在軟件安裝過(guò)程中被加載入。此處,你可以從下拉框中選擇一種標(biāo)準(zhǔn)定義,或是加載一個(gè)自定義的配置文件(如果你有的話),再或是創(chuàng)建一個(gè)空白的PLD項(xiàng)目。在這一教程中,我將使用的是Digilent Basys 3 FPGA開(kāi)發(fā)板。在選擇好對(duì)應(yīng)的開(kāi)發(fā)板后,點(diǎn)擊“Next”。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

在下一個(gè)窗口中,給你的項(xiàng)目取一個(gè)名字。然后點(diǎn)擊下一步。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

之后的一個(gè)窗口中,你可以選擇你希望加入到項(xiàng)目中的開(kāi)發(fā)板所對(duì)應(yīng)的全部I/O外設(shè)。在我的項(xiàng)目中,我需要5個(gè)LED,3個(gè)開(kāi)關(guān),因此我選擇LED0 → LED4 and SW0 → SW2。選擇好之后,點(diǎn)擊“Finish”。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

現(xiàn)在,PLD項(xiàng)目會(huì)在Multisim窗口左側(cè)的Design Toolbox(設(shè)計(jì)工具箱)中出現(xiàn),同時(shí)canvas(畫(huà)布)上會(huì)顯示你所選擇的I/O接口

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

我們有兩種放置組件的方式。第一種方式為點(diǎn)擊工具欄中的AND門小圖標(biāo)。這會(huì)幫你打開(kāi)組件選擇窗口,并默認(rèn)對(duì)應(yīng)到“PLD Logic”組過(guò)濾器。第二種方式為點(diǎn)擊頂部菜單欄中的“Place”按鈕,然后選擇“Component” ,同樣會(huì)幫你打開(kāi)組件選擇窗口。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

在此教程中,我們將使用基礎(chǔ)邏輯門,所以我們?cè)谧髠?cè)菜單欄中選擇它,并高亮你準(zhǔn)備放置的第一個(gè)門。放置好之后,選擇下一個(gè)門。重復(fù)操作放置,直到所有的都放置完畢。在這個(gè)二位全加法器中,我們需要2個(gè)XOR2,2個(gè)AND2,和1個(gè)OR2門。將所有的門連接起來(lái)。需要注意的是,在這里你可以更改接口的標(biāo)簽,但并不鼓勵(lì)你這樣做。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

4.使用Multisim對(duì)FPGA開(kāi)發(fā)板進(jìn)行編程

下一步,我們將代碼部署到FPGA中去。這里,我們首先要確保FPGA開(kāi)發(fā)板通過(guò)USB線已經(jīng)連上電腦,并將之開(kāi)關(guān)打開(kāi)。然后,點(diǎn)擊Mulitisim菜單欄中的“Transfer”,并選擇“Export to PLD.。.”。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

在接下去的一個(gè)窗口,會(huì)提示有多個(gè)選項(xiàng)提示操作。勾選單選框選擇“Program the connected PLD”。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

之后的一個(gè)窗口,記得確保在選擇框中點(diǎn)擊選中“NI LabVIEW FPGA”工具選項(xiàng)。然后點(diǎn)擊底部的“Finish”來(lái)對(duì)FPGA實(shí)現(xiàn)編程。實(shí)際操作中,我也嘗試勾選了“Xilinx Vivado 2016.4”選項(xiàng),發(fā)現(xiàn)也沒(méi)有任何問(wèn)題。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

隨后,Multisim會(huì)自動(dòng)連接至Vivado以生成編程開(kāi)發(fā)板所需的正確文件。整個(gè)過(guò)程需要持續(xù)幾分鐘。一旦以上步驟全部都完成之后,你的開(kāi)發(fā)板就編程完畢了。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

5.配置文件的一些注意事項(xiàng)

Multisim使用配置文件來(lái)實(shí)現(xiàn)與Vivado之間的通信。每一塊開(kāi)發(fā)板需要兩個(gè)配置文件,一個(gè)是*.mspc擴(kuò)展文件,還有一個(gè)*.ucf或*.xdc文件。如果你所用的是Basys 3或是Nexys 4 DDR開(kāi)發(fā)板(非老版本的Nexys 4),上述這些文件往往會(huì)缺失或者不完整。這里給大家講解一下如何添加或修改這些配置文件。如果你使用的是其它開(kāi)發(fā)板,則這里你可以略過(guò)。

對(duì)于Nexys 4 DDR開(kāi)發(fā)板而言,上述配置文件并非默認(rèn)包含。所以這里第一步我們首先要確保斷開(kāi)Multisim。然后,點(diǎn)擊「閱讀原文」下載DigilentNexys4DDR.mspc文件。接著,轉(zhuǎn)至配置文件所在的Multisim目錄。路徑名稱應(yīng)該類似于:“C:\Program Files (x86)\National Instruments\Circuit Design Suite 14.1\pldconfig”。找到之后,將所下載的兩個(gè)配置文件放到這個(gè)文件夾中。打開(kāi)Multisim,接下來(lái)你就可以參考前述步驟來(lái)對(duì)你的Nexys 4 DDR進(jìn)行項(xiàng)目編程了。

Basys 3的配置文件在Multisim安裝時(shí)會(huì)自動(dòng)生成,但這一文件中缺失了一些定義。最簡(jiǎn)單的方法,同樣你可以點(diǎn)擊「閱讀原文」下載DigilentBasys3.xdc 和 DigilentBasys3.mspc兩個(gè)配置文件,然后將之前自動(dòng)生成的Basys 3配置文件覆蓋掉。與之前提到的方法一樣,轉(zhuǎn)至配置文件所在的Multisim目錄,將下載好的兩個(gè)文件拖到文件夾中覆蓋掉原始文件。

在這里,如果你希望挑戰(zhàn)一下自己來(lái)自行修改原始的Basys 3配置文件,下文將教你如何實(shí)現(xiàn)。當(dāng)你在Multisim中打開(kāi)一個(gè)新的PLD項(xiàng)目,并選擇Basys 3作為你的開(kāi)發(fā)板,其中會(huì)有幾個(gè)I/O選項(xiàng)丟失。丟失的部分同時(shí)包括了VGA,RS-232,USB HID(PS/2),以及quad SPI flash的定義。見(jiàn)圖1。

Multisim使用配置文件來(lái)實(shí)現(xiàn)與Vivado之間的通信。每一塊開(kāi)發(fā)板需要兩個(gè)配置文件,一個(gè)是*.mspc擴(kuò)展文件,還有一個(gè)*.ucf或*.xdc文件。如果你所用的是Basys 3或是Nexys 4 DDR開(kāi)發(fā)板(非老版本的Nexys 4),上述這些文件往往會(huì)缺失或者不完整。這里給大家講解一下如何添加或修改這些配置文件。如果你使用的是其它開(kāi)發(fā)板,則這里你可以略過(guò)。

對(duì)于Nexys 4 DDR開(kāi)發(fā)板而言,上述配置文件并非默認(rèn)包含。所以這里第一步我們首先要確保斷開(kāi)Multisim。然后,點(diǎn)擊「閱讀原文」下載DigilentNexys4DDR.mspc文件。接著,轉(zhuǎn)至配置文件所在的Multisim目錄。路徑名稱應(yīng)該類似于:“C:\Program Files (x86)\National Instruments\Circuit Design Suite 14.1\pldconfig”。找到之后,將所下載的兩個(gè)配置文件放到這個(gè)文件夾中。打開(kāi)Multisim,接下來(lái)你就可以參考前述步驟來(lái)對(duì)你的Nexys 4 DDR進(jìn)行項(xiàng)目編程了。

Basys 3的配置文件在Multisim安裝時(shí)會(huì)自動(dòng)生成,但這一文件中缺失了一些定義。最簡(jiǎn)單的方法,同樣你可以點(diǎn)「閱讀原文」下載DigilentBasys3.xdc 和 DigilentBasys3.mspc兩個(gè)配置文件,然后將之前自動(dòng)生成的Basys 3配置文件覆蓋掉。與之前提到的方法一樣,轉(zhuǎn)至配置文件所在的Multisim目錄,將下載好的兩個(gè)文件拖到文件夾中覆蓋掉原始文件。

在這里,如果你希望挑戰(zhàn)一下自己來(lái)自行修改原始的Basys 3配置文件,下文將教你如何實(shí)現(xiàn)。當(dāng)你在Multisim中打開(kāi)一個(gè)新的PLD項(xiàng)目,并選擇Basys 3作為你的開(kāi)發(fā)板,其中會(huì)有幾個(gè)I/O選項(xiàng)丟失。丟失的部分同時(shí)包括了VGA,RS-232,USB HID(PS/2),以及quad SPI flash的定義。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

要想解決這一問(wèn)題,我們需要修改這些已經(jīng)安裝好的配置文件。要想找到這些文件,第一步我們需要確保斷開(kāi)Multisim,然后打開(kāi)Multisim的根目錄文件夾。路徑名稱應(yīng)該類似于:“C:\Program Files (x86)\National Instruments\Circuit Design Suite 14.1\pldconfig”。找到兩個(gè)名為“DigilentBasys3”的文件。其中一個(gè)文件的擴(kuò)展名為.xdc,另一個(gè)則為.mspc。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

在開(kāi)始下一步操作之前,務(wù)必記得復(fù)制這兩個(gè)文件,并將之放到一個(gè)單獨(dú)的目錄文件夾中,比如你可以在桌面上為之新建一個(gè)文件夾。這樣做的目的是為以防整個(gè)操作過(guò)程的結(jié)果失敗,這樣可以讓你保留有原始文件以取得再次嘗試的機(jī)會(huì)。在這里,我不建議你選擇修改文件,除非你對(duì)自己的能力很有信心。這是因?yàn)殄e(cuò)誤的文件修改雖然不會(huì)對(duì)Multisim的操作性能產(chǎn)生影響,但是你所編程的開(kāi)發(fā)板很可能會(huì)因此出現(xiàn)問(wèn)題。

想要做這些修改,你需要用到文本編輯器,比如:Notepad++。記得不要去雙擊打開(kāi).mspc文件,這會(huì)直接打開(kāi)Multisim,而這樣做對(duì)我們毫無(wú)意義。你所要做的只是對(duì)文件中的真實(shí)文本進(jìn)行修改,以使Multisim能夠讀取并加載正確的開(kāi)發(fā)板配置文件。因此,這里你需要做的是右鍵點(diǎn)擊.mspc文件,選擇“Open with.。.”,在彈出菜單中選擇你的文本編輯器以將之打開(kāi)。.mspc文件往往以標(biāo)記語(yǔ)言形式撰寫,類似于HTML或XML。這種形式簡(jiǎn)單易懂,但這里我們需要對(duì)其進(jìn)行一些修改。

我們無(wú)需對(duì)頂部的1-9行數(shù)據(jù)做任何的修改。我們需要關(guān)心的部分是所有標(biāo)簽之間的數(shù)據(jù)。每一個(gè)I/O引腳定義需要一些基本的參數(shù)。其中,“Name”需要與.xdc文件中的引腳名稱保持一致?!癕ode”決定了引腳是被定義為輸入(“in”),輸出(“out”),還是雙向引腳(“bidir”)。“Location”則用來(lái)告訴Multisim在畫(huà)布上以何種默認(rèn)的方向來(lái)放置引腳。正常情況下,輸入朝向左面,輸出則朝向右面。“Place”選項(xiàng)則是一個(gè)布爾值標(biāo)志,以用來(lái)告訴Multisim當(dāng)你初次選擇I/O引腳時(shí),是否是默認(rèn)選擇。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

這里,你可以自行根據(jù)需求添加缺失的引腳,或者可以簡(jiǎn)單地復(fù)制以下定義:

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

將上述文本復(fù)制黏貼入“JXA_”定義下方的.mspc文本文件。然后保存更新好的.mspc文件,確保該文件所在的位置為Multisim目錄下的“pldconfig” 文件夾內(nèi)。

下面,我們?cè)谖谋揪庉嬈髦写蜷_(kāi)“Basys 3 .xdc”文件。在“JXA_”定義下方,增加以下行段:

##VGA Connector

set_property PACKAGE_PIN G19 [get_ports {vgaRed0}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed0}]

set_property PACKAGE_PIN H19 [get_ports {vgaRed1}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed1}]

set_property PACKAGE_PIN J19 [get_ports {vgaRed2}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed2}]

set_property PACKAGE_PIN N19 [get_ports {vgaRed3}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed3}]

set_property PACKAGE_PIN N18 [get_ports {vgaBlue0}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue0}]

set_property PACKAGE_PIN L18 [get_ports {vgaBlue1}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue1}]

set_property PACKAGE_PIN K18 [get_ports {vgaBlue2}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue2}]

set_property PACKAGE_PIN J18 [get_ports {vgaBlue3}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue3}]

set_property PACKAGE_PIN J17 [get_ports {vgaGreen0}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen0}]

set_property PACKAGE_PIN H17 [get_ports {vgaGreen1}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen1}]

set_property PACKAGE_PIN G17 [get_ports {vgaGreen2}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen2}]

set_property PACKAGE_PIN D17 [get_ports {vgaGreen3}]

set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen3}]

set_property PACKAGE_PIN P19 [get_ports Hsync]

set_property IOSTANDARD LVCMOS33 [get_ports Hsync]

set_property PACKAGE_PIN R19 [get_ports Vsync]

set_property IOSTANDARD LVCMOS33 [get_ports Vsync]

##USB-RS232 Interface

set_property PACKAGE_PIN B18 [get_ports RsRx]

set_property IOSTANDARD LVCMOS33 [get_ports RsRx]

set_property PACKAGE_PIN A18 [get_ports RsTx]

set_property IOSTANDARD LVCMOS33 [get_ports RsTx]

##USB HID (PS/2)

set_property PACKAGE_PIN C17 [get_ports PS2Clk]

set_property IOSTANDARD LVCMOS33 [get_ports PS2Clk]

set_property PULLUP true [get_ports PS2Clk]

set_property PACKAGE_PIN B17 [get_ports PS2Data]

set_property IOSTANDARD LVCMOS33 [get_ports PS2Data]

set_property PULLUP true [get_ports PS2Data]

##Quad SPI Flash

set_property PACKAGE_PIN D18 [get_ports {QspiDB0}]

set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB0}]

set_property PACKAGE_PIN D19 [get_ports {QspiDB1}]

set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB1}]

set_property PACKAGE_PIN G18 [get_ports {QspiDB2}]

set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB2}]

set_property PACKAGE_PIN F18 [get_ports {QspiDB3}]

set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB3}]

set_property PACKAGE_PIN K19 [get_ports QspiCSn]

set_property IOSTANDARD LVCMOS33 [get_ports QspiCSn]

然后保存上述更新好的.xdc文件,同樣確保其在“pldconfig” 文件夾內(nèi)。接著,我們重新回到“pldconfig” 文件,檢查一下確保文件的修改日期與當(dāng)前的時(shí)間一致,而非你安裝Multisim時(shí)的時(shí)間。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

當(dāng)上述步驟都完成好之后,讓我們回過(guò)頭來(lái)檢查一下,確保所做的所有努力都能行之有效。打開(kāi)Multisim并啟動(dòng)一個(gè)新的PLD?,F(xiàn)在,你會(huì)發(fā)現(xiàn)所有的板載I/O在配置操作步驟中,都能夠正常顯示并可供選擇。

使用Multisim對(duì)Digilent FPGA開(kāi)發(fā)板進(jìn)行編程的步驟解析

到這里,所有的步驟與注意事項(xiàng)就都完成啦!如你所見(jiàn),使用Multisim對(duì)FPGA進(jìn)行編程是如此地簡(jiǎn)單方便。你所需要的僅僅只是具有一定的邏輯電路工作原理的知識(shí),而無(wú)需再去去學(xué)習(xí)掌握硬件描述語(yǔ)言了。如果你有興趣,趕緊拿起開(kāi)發(fā)板與Multisim跟著一步步嘗試一下吧!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎ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)注

    1650

    文章

    22217

    瀏覽量

    627790
  • Multisim
    +關(guān)注

    關(guān)注

    136

    文章

    765

    瀏覽量

    118804
  • Digilent
    +關(guān)注

    關(guān)注

    2

    文章

    219

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    開(kāi)發(fā)者福利 一文帶你了解Digilent Arty S7 FPGA開(kāi)發(fā)板

    Digilent為Arty FPGA開(kāi)發(fā)板系列增加了新的成員——兩種不同規(guī)格的新的Arty S7,這款FPGA開(kāi)發(fā)板是基于中等大?。╯ize
    的頭像 發(fā)表于 09-27 06:33 ?8913次閱讀
    <b class='flag-5'>開(kāi)發(fā)</b>者福利 一文帶你了解<b class='flag-5'>Digilent</b> Arty S7 <b class='flag-5'>FPGA</b><b class='flag-5'>開(kāi)發(fā)板</b>

    Digilent公司推出新型FPGA硬件開(kāi)發(fā)平臺(tái):NEXYSTM3開(kāi)發(fā)板

    Digilent公司推出了一款新型的基于FPGA的硬件開(kāi)發(fā)平臺(tái),NEXYSTM3開(kāi)發(fā)板。此開(kāi)發(fā)板采用了Xilinx公司最先進(jìn)的Spartan
    發(fā)表于 08-22 09:28 ?1708次閱讀

    fpga開(kāi)發(fā)板電路圖

    最全面的fpga開(kāi)發(fā)板電路圖,一共有10多份fpga開(kāi)發(fā)板電路圖。
    發(fā)表于 04-19 12:50 ?133次下載
    <b class='flag-5'>fpga</b><b class='flag-5'>開(kāi)發(fā)板</b>電路圖

    Digilent公司basys2開(kāi)發(fā)板的全套開(kāi)發(fā)例程

    Digilent公司basys開(kāi)發(fā)板的全套開(kāi)發(fā)例程,感興趣的小伙伴們可以看看。
    發(fā)表于 07-29 17:46 ?258次下載

    Digilent公司發(fā)布新款FPGA開(kāi)發(fā)板

    Digilent公司宣布了新款FPGA開(kāi)發(fā)板,歸屬于其Nexys產(chǎn)品線——Nexys4——上集成一個(gè)賽靈思Artix-7100T FPGA
    發(fā)表于 02-09 14:09 ?1737次閱讀

    利用FPGA開(kāi)發(fā)板進(jìn)行ASIC原型開(kāi)發(fā)的技巧

    )要求一個(gè)基于多個(gè)FPGA的原型開(kāi)發(fā)板。 在不太遙遠(yuǎn)的過(guò)去,對(duì)ASIC設(shè)計(jì)團(tuán)隊(duì)而言,在這類情況下主要的解決方案就是在內(nèi)部建立他們自己的定制多個(gè)FPGA的原型開(kāi)發(fā)板。
    發(fā)表于 11-25 09:05 ?1252次閱讀

    采用FPGA的原型開(kāi)發(fā)板進(jìn)行ASIC驗(yàn)證與開(kāi)發(fā)設(shè)計(jì)

    在不太遙遠(yuǎn)的過(guò)去,對(duì)ASIC設(shè)計(jì)團(tuán)隊(duì)而言,在這類情況下主要的解決方案就是在內(nèi)部建立他們自己的定制多個(gè)FPGA的原型開(kāi)發(fā)板。然而,今天,使用現(xiàn)成的多個(gè)FPGA原型開(kāi)發(fā)板——例如,由Syn
    的頭像 發(fā)表于 05-16 08:07 ?3671次閱讀
    采用<b class='flag-5'>FPGA</b>的原型<b class='flag-5'>開(kāi)發(fā)板</b><b class='flag-5'>進(jìn)行</b>ASIC驗(yàn)證與<b class='flag-5'>開(kāi)發(fā)</b>設(shè)計(jì)

    digilent JTAG編程電線特點(diǎn)

    產(chǎn)品特點(diǎn):   低成本JTAG配置解決方案   專為非Digilent FPGA開(kāi)發(fā)板設(shè)計(jì)
    的頭像 發(fā)表于 11-13 17:04 ?2560次閱讀
    <b class='flag-5'>digilent</b> JTAG<b class='flag-5'>編程</b>電線特點(diǎn)

    digilent支持Python編程的Zynq開(kāi)發(fā)板介紹

    PYNQ-Z1開(kāi)發(fā)板支持PYNQ項(xiàng)目,這是一個(gè)新的開(kāi)源框架,使嵌入式編程人員能夠在無(wú)需設(shè)計(jì)可編程邏輯電路的情況下即可充分發(fā)揮Xilinx Zynq All Programmable SoC
    的頭像 發(fā)表于 11-18 16:41 ?4147次閱讀
    <b class='flag-5'>digilent</b>支持Python<b class='flag-5'>編程</b>的Zynq<b class='flag-5'>開(kāi)發(fā)板</b>介紹

    digilent Spartan-7開(kāi)源創(chuàng)客開(kāi)發(fā)板介紹

    Arty S7 開(kāi)發(fā)板搭載 Xilinx 最新的 Spartan-7 FPGA 芯片,是 DIGILENT Arty 家族系列產(chǎn)品的最新成員,該家族系列產(chǎn)品專門面向創(chuàng)客和FPGA興趣
    的頭像 發(fā)表于 11-19 14:38 ?3208次閱讀
    <b class='flag-5'>digilent</b> Spartan-7開(kāi)源創(chuàng)客<b class='flag-5'>開(kāi)發(fā)板</b>介紹

    digilent Artix-7 FPGA開(kāi)發(fā)板簡(jiǎn)介

    Nexys 4 DDR是一款Digilent多孔R(shí)AM-based Nexys開(kāi)發(fā)板的簡(jiǎn)易替代品。
    的頭像 發(fā)表于 11-19 14:43 ?3919次閱讀
    <b class='flag-5'>digilent</b> Artix-7 <b class='flag-5'>FPGA</b><b class='flag-5'>開(kāi)發(fā)板</b>簡(jiǎn)介

    利用FPGA開(kāi)發(fā)板進(jìn)行ASIC原型開(kāi)發(fā)的技巧

    )要求一個(gè)基于多個(gè)FPGA的原型開(kāi)發(fā)板。 在不太遙遠(yuǎn)的過(guò)去,對(duì)ASIC設(shè)計(jì)團(tuán)隊(duì)而言,在這類情況下主要的解決方案就是在內(nèi)部建立他們自己的定制多個(gè)FPGA的原型開(kāi)發(fā)板。然而,今天,使用現(xiàn)成
    的頭像 發(fā)表于 06-04 16:50 ?1855次閱讀

    fpga開(kāi)發(fā)板與linux開(kāi)發(fā)板區(qū)別

    (Field-Programmable Gate Array)是一種可編程邏輯器件,它可以通過(guò)編程改變硬件邏輯電路的功能和結(jié)構(gòu)。FPGA采用了可編程的門極,可以根據(jù)需要重新配置內(nèi)部電路
    的頭像 發(fā)表于 02-01 17:09 ?3764次閱讀

    fpga開(kāi)發(fā)板使用教程

    FPGA開(kāi)發(fā)板的使用教程主要包括以下幾個(gè)關(guān)鍵步驟。
    的頭像 發(fā)表于 03-14 15:50 ?2240次閱讀

    fpga開(kāi)發(fā)板是什么?fpga開(kāi)發(fā)板有哪些?

    FPGA開(kāi)發(fā)板是一種基于FPGA(現(xiàn)場(chǎng)可編程門陣列)技術(shù)的開(kāi)發(fā)平臺(tái),它允許工程師通過(guò)編程來(lái)定義和
    的頭像 發(fā)表于 03-14 18:20 ?4105次閱讀