欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于單片機(jī)的多功能USB?JTAG接口FPGA下載線的制作方法

文檔序號(hào):11153267閱讀:1211來源:國知局
基于單片機(jī)的多功能USB?JTAG接口FPGA下載線的制造方法與工藝

本發(fā)明涉及現(xiàn)場可編程邏輯門陣列FPGA下載線的技術(shù)領(lǐng)域,具體涉及一種基于單片機(jī)的多功能USB-JTAG接口FPGA下載線。



背景技術(shù):

業(yè)內(nèi)主流的兩大FPGA生產(chǎn)廠商為xilinx和altera,兩家的FPGA均支持JTAG接口的下載線進(jìn)行燒寫,但兩家的下載線都只支持對(duì)自家的芯片進(jìn)行配置,而無法混用,這不但給用戶帶來了使用上的不便,而且增加的成本。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明提出一種基于單片機(jī)(本發(fā)明采用的單片機(jī)型號(hào)為CY7C68013A)的USB-JTAG下載線,可支持對(duì)Xilinx、Altera的FPGA以及其它支持JTAG接口燒寫的芯片進(jìn)行配置。

本發(fā)明采用的技術(shù)方案為:一種基于單片機(jī)的多功能USB-JTAG接口FPGA下載線,其核心功能均通過單片機(jī)實(shí)現(xiàn),首先上位機(jī)程序通過USB接口加載單片機(jī)固件,單片機(jī)執(zhí)行固件程序,通過JTAG接口讀取FPGA芯片的ID號(hào),并返回給上位機(jī)程序,上位機(jī)獲得IDCODE后,按需轉(zhuǎn)換燒寫文件,發(fā)送給單片機(jī),并燒寫到FPGA中。

所述基于單片機(jī)的多功能USB-JTAG接口FPGA下載線,首先通過單片機(jī)讀取IDCODE,使?fàn)顟B(tài)機(jī)恢復(fù)到TEST-LOGIC-RESET。控制TMS和clock,使?fàn)顟B(tài)機(jī)經(jīng)過Run-Test/Idle、Select-DR-Scan、Select-IR-Scan、Capture-IR跳轉(zhuǎn)到SHIFT-IR狀態(tài)。給狀態(tài)機(jī)發(fā)送讀IDCODE的指令。

然后控制TMS和clock,使?fàn)顟B(tài)機(jī)經(jīng)過Exit1-IR、Updata-IR、Select-DR-Scan、Capture-IR來到Shift-DR狀態(tài),讀取IDCODE,返回給上位機(jī)。上位機(jī)獲得IDCODE后,按需轉(zhuǎn)換燒寫文件,發(fā)送給單片機(jī)(CY7C68013A),單片機(jī)(CY7C68013A)控制JTAG TAG把數(shù)據(jù)燒寫進(jìn)FPGA中即可。

本發(fā)明的原理在于:

本發(fā)明解決思路就是使用單片機(jī)模擬JTAG協(xié)議,實(shí)現(xiàn)相應(yīng)下載線的功能,同時(shí)上位機(jī)需要根據(jù)通過單片機(jī)獲取的FPGA的型號(hào),轉(zhuǎn)換燒寫文件,通過USB發(fā)送給單片機(jī),再由單片機(jī)發(fā)送給FPGA開發(fā)板。單片機(jī)的固件程序,模擬JTAG TAP狀態(tài)機(jī),讀取IDCODE,得到FPGA的型號(hào),返回給上位機(jī),上位機(jī)查詢程序數(shù)據(jù),得到更多信息,并作出選擇,轉(zhuǎn)換燒寫文件,發(fā)送給單片機(jī),繼續(xù)模擬JTAG協(xié)議燒寫文件。

本發(fā)明優(yōu)點(diǎn)和積極效果為:

(1)本發(fā)明優(yōu)勢是通用性,實(shí)現(xiàn)了一根線一個(gè)程序適應(yīng)多家FPGA開發(fā)板。

(2)本發(fā)明優(yōu)勢是低成本,本發(fā)明所采用單片機(jī)價(jià)格遠(yuǎn)遠(yuǎn)低于專用下載線所采用的芯片價(jià)格,可以大大降低下載線的總體價(jià)格。

(3)本發(fā)明優(yōu)勢是擴(kuò)展性,固件存放在PC端,上位機(jī)軟件在啟動(dòng)時(shí)將固件加載到單片機(jī),因此只需更新PC端的固件文件便可以實(shí)現(xiàn)下載線功能的升級(jí)或擴(kuò)展。

附圖說明

圖1為現(xiàn)有技術(shù)中JTAG TAG狀態(tài)機(jī);

圖2為本發(fā)明下載線使用場景;

圖3為本發(fā)明工作流程;

圖4為本發(fā)明工作流程原理圖。

具體實(shí)施方式

下面結(jié)合附圖以及具體實(shí)施方式進(jìn)一步說明本發(fā)明。

如圖1所示,JTAG的核心為TAG狀態(tài)機(jī),在SHIFT-IR狀態(tài)寫入指令,然后再SHIFT-DR狀態(tài)讀取或者寫入數(shù)據(jù)。本發(fā)明中通過單片機(jī)控制JTAG接口時(shí)序,按照狀態(tài)跳轉(zhuǎn)圖,首先進(jìn)入SHIFT-IR狀態(tài),寫入控制指令(如讀取ID指令、寫入配置數(shù)據(jù)指令等),然后控制狀態(tài)機(jī)進(jìn)入SHIFT-DR狀態(tài),讀取或者寫入與控制指令對(duì)應(yīng)的數(shù)據(jù)(如芯片ID、配置數(shù)據(jù)等)。

如圖2所示,下載線一端通過USB接口連接到PC機(jī),另一端通過JTAG接口連接到FPGA的下載口,PC通過該下載線將配置文件燒寫到FPGA中。

如圖3與圖4所示,首先通過單片機(jī)讀取IDCODE,JTAG接口中的TMS信號(hào)置一,保持5個(gè)clock(實(shí)際操作為了確保復(fù)位,保持了10個(gè)clock),使?fàn)顟B(tài)機(jī)恢復(fù)到TEST-LOGIC-RESET。

控制TMS和clock,使?fàn)顟B(tài)機(jī)經(jīng)過Run-Test/Idle、Select-DR-Scan、Select-IR-Scan、Capture-IR跳轉(zhuǎn)到SHIFT-IR狀態(tài)。

設(shè)定TMS為0,控制TDI和clock,給狀態(tài)機(jī)發(fā)送讀IDCODE的指令,從最低位開始發(fā)送數(shù)據(jù)。

上述過程的最后一個(gè)周期讀入指令的最后一位0的同時(shí)跳轉(zhuǎn)狀態(tài)機(jī)狀態(tài),然后控制TMS和clock,使?fàn)顟B(tài)機(jī)經(jīng)過Exit1-IR、Updata-IR、Select-DR-Scan、Capture-IR來到Shift-DR狀態(tài)。

設(shè)定TMS為0,控制clock,從TDO中讀取32位數(shù)據(jù),返回給上位機(jī),得到IDCODE。

上位機(jī)獲得IDCODE后,按需轉(zhuǎn)換燒寫文件,發(fā)送給單片機(jī)控制JTAG TAG把數(shù)據(jù)燒寫進(jìn)FPGA中即可。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
霍城县| 普定县| 苏尼特右旗| 社旗县| 张掖市| 广饶县| 大姚县| 腾冲县| 平昌县| 石城县| 新兴县| 浏阳市| 彩票| 海晏县| 黑河市| 沧源| 社会| 华坪县| 安国市| 绍兴县| 靖安县| 彭州市| 横山县| 鄂伦春自治旗| 巴彦淖尔市| 西昌市| 金山区| 友谊县| 金昌市| 三穗县| 忻城县| 昆山市| 昌吉市| 绩溪县| 泾川县| 久治县| 巩留县| 普宁市| 漯河市| 忻州市| 崇信县|