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

一種基于fpga/cpld的程序下載器的制作方法

文檔序號:6364753閱讀:170來源:國知局
專利名稱:一種基于fpga/cpld的程序下載器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種可編程邏輯器件的編程工具,尤其是一種基于FPGA/CPLD的程序下載器。
背景技術(shù)
FPGA和CPLD均為可編程邏輯器件,其邏輯功能按照用戶對器件編程來確定,因此集成度很高,足以滿足設(shè)計(jì)一般的數(shù)字系統(tǒng)的需要,可以由設(shè)計(jì)人員自行編程而把一個(gè)數(shù)字系統(tǒng)集成在一片器件上,而不必去請芯片制造廠商設(shè)計(jì)和制作專用集成電路芯片,從而降低了設(shè)計(jì)研發(fā)成本推動了數(shù)字系統(tǒng)的發(fā)展。對FPGA/CPLD器件進(jìn)行編程需要使用專用的程序下載器,現(xiàn)有FPGA/CPLD程序下載器的硬件電路一般由USB控制芯片和器件本身共同完成USB協(xié)議到IEEE1149. I協(xié)議的轉(zhuǎn)換,硬件電路固化,并且必須在線下載,實(shí)際應(yīng)用對同時(shí)下載多個(gè)FPGA/CPLD器件以及下載不同型號FPGA/CPLD器件存在限制。此外FPGA/CPLD器件的特性使其在數(shù)字電路系統(tǒng)廣泛使用,在一塊電路板或者一個(gè)陣列系統(tǒng)中常常集成了多個(gè)FPGA/CPLD器件,在此情勢下使用現(xiàn)有的程序下載器會非常麻煩,需要對每個(gè)FPGA/CPLD器件進(jìn)行單獨(dú)編程。雖然針對這種情況推出了支持多器件的程序下載器,如“ JTAG下載方式下FPGA邏輯代碼的下載方法”(中國專利公開號CN102043747)公開的發(fā)明方案,其在FPGA/CPLD程序下載器后續(xù)增加了 CPLD芯片,用來支持多FPGA的程序下載,但只支持在JTAG下載方式下FPGA邏輯代碼的下載,這樣會造成硬件電路復(fù)雜,成本高,體積大,不便于攜帶且應(yīng)用單一。

發(fā)明內(nèi)容
針對現(xiàn)有的FPGA/CPLD程序下載器所存在的上述問題,本發(fā)明提供一種支持多器件同時(shí)下載的基于FPGA/CPLD的程序下載器。本發(fā)明解決技術(shù)問題所采用的技術(shù)手段為
一種基于FPGA/CPLD的程序下載器,包括主機(jī)、傳輸裝置和通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件,所述傳輸裝置與所述主機(jī)以及所述通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件分別連接,其中,所述傳輸裝置包括USB控制模塊、協(xié)議轉(zhuǎn)換模塊、緩沖器模塊和輸出端口 ;
所述USB控制模塊與所述主機(jī)的USB接口連接,所述協(xié)議轉(zhuǎn)換模塊與所述USB控制模塊連接,所述緩沖器模塊與所述協(xié)議轉(zhuǎn)換模塊連接,所述協(xié)議轉(zhuǎn)換模塊與所述輸出端口連接,所述輸出端口與所述通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件的輸入端口連接;
所述USB控制模塊用于與所述主機(jī)之間進(jìn)行數(shù)據(jù)傳輸;
所述協(xié)議轉(zhuǎn)轉(zhuǎn)換模塊用于在所述USB控制模塊和所述輸出端口之間進(jìn)行協(xié)議轉(zhuǎn)換; 所述緩沖器模塊用于在所述USB控制模塊與所述輸出端口之間進(jìn)行數(shù)據(jù)緩沖。上述基于FPGA/CPLD的程序下載器,其中,所述傳輸裝置的協(xié)議轉(zhuǎn)換模塊主要由可編成邏輯器件以編程方式形成。
上述基于FPGA/CPLD的程序下載器,其中,所述輸出端口有多個(gè),多個(gè)所述輸出端口與多個(gè)通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件連接,所述緩沖器模塊包括數(shù)據(jù)隔離與協(xié)調(diào)部件,所述緩沖器模塊的數(shù)據(jù)隔離與協(xié)調(diào)部件用于在對多個(gè)通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件進(jìn)行數(shù)據(jù)傳輸時(shí)隔離與協(xié)調(diào)各個(gè)端口的數(shù)據(jù)信號。上述基于FPGA/CPLD的程序下載器,其中,還包括儲存模塊,所述儲存模塊與所述協(xié)議轉(zhuǎn)換模塊連接,所述儲存模塊用于儲存經(jīng)所述協(xié)議轉(zhuǎn)換模塊轉(zhuǎn)換后的數(shù)據(jù)并于所述 USB控制模塊與所述主機(jī)的USB接口斷開連接時(shí)將儲存的數(shù)據(jù)發(fā)送至所述輸出端口。上述基于FPGA/CPLD的程序下載器,其中,所述主機(jī)為PC機(jī)。
上述基于FPGA/CPLD的程序下載器,其中,所述USB控制模塊主要由CYC768013A芯片形成。
上述基于FPGA/CPLD的程序下載器,其中,所述通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件為FPGA器件或者CPLD器件。
上述基于FPGA/CPLD的程序下載器,其中,所述協(xié)議轉(zhuǎn)換模塊為IEEE1149. I協(xié)議轉(zhuǎn)換器件。
上述基于FPGA/CPLD的程序下載器,其中,所述緩沖器模塊主要由MAX3378芯片形成。
上述基于FPGA/CPLD的程序下載器,其中,所述輸出端口主要為符合JTAG標(biāo)準(zhǔn)的端口。
上述基于FPGA/CPLD的程序下載器,其中,所述儲存模塊主要由FLASH儲存器件形成。
本發(fā)明的有益效果是
支持多種電壓的FPGA/CPLD器件;支持器件種類多;支持NIOS調(diào)試,支持NIOS下的 FLASH燒寫;支持AS、PS和JTAG等下載模式;與傳統(tǒng)的FPGA/CPLD程序下載器相比,硬件電路簡化,穩(wěn)定性增強(qiáng),且小巧靈活,支持多FPGA或CPLD的同時(shí)下載;可充分利用FPGA的并行處理能力使得USB時(shí)序到JTAG時(shí)序的轉(zhuǎn)換速率可以完全滿足USB高速端口的480M/S的通信速率;支持FPGA/CPLD器件的離線程序下載。


圖I是本發(fā)明一種基于FPGA/CPLD的程序下載器的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施例對本發(fā)明作進(jìn)一步說明,但不作為本發(fā)明的限定。如圖I所示,本發(fā)明一種基于FPGA/CPLD的程序下載器,包括主機(jī)、傳輸裝置和通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件,傳輸裝置與主機(jī)以及通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件分別連接,其中,傳輸裝置包括USB控制模塊、協(xié)議轉(zhuǎn)換模塊、緩沖器模塊和輸出端口 ;USB控制模塊與主機(jī)的USB接口連接,協(xié)議轉(zhuǎn)換模塊與USB控制模塊連接,緩沖器模塊與協(xié)議轉(zhuǎn)換模塊連接,協(xié)議轉(zhuǎn)換模塊與輸出端口連接,輸出端口與通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件的輸入端口連接;USB控制模塊用于與主機(jī)之間進(jìn)行數(shù)據(jù)傳輸; 協(xié)議轉(zhuǎn)轉(zhuǎn)換模塊用于在USB控制模塊和輸出端口之間進(jìn)行協(xié)議轉(zhuǎn)換;緩沖器模塊用于在USB控制模塊與輸出端口之間進(jìn)行數(shù)據(jù)緩沖。主機(jī)可以是PC機(jī)、筆記本電腦或其他嵌入式設(shè)備,可配置器件為FPGA/CPLD器件;USB控制模塊接收主機(jī)的USB接口輸出USB數(shù)據(jù),USB 控制模塊用于將USB數(shù)據(jù)轉(zhuǎn)換為8位并行數(shù)據(jù)隨之輸出;協(xié)議轉(zhuǎn)換模塊接收USB控制模塊輸出的8位并行數(shù)據(jù),將其轉(zhuǎn)換為符合IEEE1149. I標(biāo)準(zhǔn)的編程的數(shù)據(jù)和指令同時(shí)輸出,至此FPGA模塊就完成了對程序固化文件的USB時(shí)序到JTAG時(shí)序的轉(zhuǎn)換,傳輸裝置的協(xié)議轉(zhuǎn)換模塊主要由可編成邏輯器件以編程方式形成,較優(yōu)的選擇是以ALTERA公司的Cyclone IV系列的EP4CE6E22I7L芯片形成協(xié)議轉(zhuǎn)換模塊,EP4CE6E22I7L芯片具有低供電、低功耗和高性能,它的并行處理能力使得USB時(shí)序到JTAG時(shí)序的轉(zhuǎn)換速率可以完全滿足USB高速端口的480M/S的通信速率的要求。緩沖器模塊接收FPGA模塊輸出的符合IEEEl 149. I標(biāo)準(zhǔn)的編程的數(shù)據(jù)和指令,對其進(jìn)行緩沖,使其能夠支持I. 8V,2. 5V,3. 3V和5. OV的不同供電電壓的FPGA/CPLD器件下載,輸出端口可以有多個(gè),多個(gè)輸出端口與多個(gè)FPGA/CPLD器件連接, 緩沖器模塊包括數(shù)據(jù)隔離與協(xié)調(diào)部件,緩沖器模塊的數(shù)據(jù)隔離與協(xié)調(diào)部件用于在對多個(gè) FPGA/CPLD器件進(jìn)行數(shù)據(jù)傳輸時(shí)隔離與協(xié)調(diào)各個(gè)端口的數(shù)據(jù)信號。緩沖器模塊較優(yōu)的可選用MAX3378芯片,MAX3378芯片在系統(tǒng)中的選用數(shù)量可根據(jù)待下載程序的FPGA/CPLD器件數(shù)量的不同而靈活選用;最后FPGAl (CPLD1)、FPGA2 (CPLD2)、……,FPGAn (CPLDn)接收緩
沖器輸出至輸出端口的相應(yīng)的 TMS_1、TCK_1、TDI_1、TMS_2、TCK_2、TDI_2、......TMS_n、TCK_
n、TDI_n、TD0_n信號,完成程序在線下載。這里可根據(jù)不同的需求軟件配置AS、PS和JTAG 三種下載模式或NIOS調(diào)試狀態(tài)。在反饋回路中,F(xiàn)PGAl (CPLD1)、FPGA2 (CPLD2)、……、
FPGAn (CPLDn)通過相應(yīng)的TD0_1、TD0_2、......TD0_n端口輸出符合IEEEl 149. I標(biāo)準(zhǔn)的校
驗(yàn)數(shù)據(jù)至輸出端口,緩沖器模塊接收校驗(yàn)數(shù)據(jù)并對其進(jìn)行緩沖、隔離和協(xié)調(diào)處理后輸出,協(xié)議轉(zhuǎn)換模塊接收緩沖器處理后的校驗(yàn)數(shù)據(jù),并將校驗(yàn)數(shù)據(jù)轉(zhuǎn)換為8位并行數(shù)據(jù)隨之輸出; USB控制模塊接收協(xié)議轉(zhuǎn)換模塊輸出的8位并行數(shù)據(jù),將其轉(zhuǎn)換為USB數(shù)據(jù)隨之輸出;主機(jī)模塊的USB接口接收USB控制模塊輸出的USB數(shù)據(jù),并由主機(jī)對USB數(shù)據(jù)進(jìn)行實(shí)施校驗(yàn)。進(jìn)一步的,其中,還包括儲存模塊,儲存模塊與協(xié)議轉(zhuǎn)換模塊連接,儲存模塊用于儲存經(jīng)協(xié)議轉(zhuǎn)換模塊轉(zhuǎn)換后的數(shù)據(jù)并于USB控制模塊與主機(jī)的USB接口斷開連接時(shí)將儲存的數(shù)據(jù)發(fā)送至輸出端口。在離線下載程序狀態(tài)下,首先將主機(jī)中的USB數(shù)據(jù)下載到傳輸裝置中,傳輸裝置中的USB控制模塊接收主機(jī)輸出的USB數(shù)據(jù)并將其轉(zhuǎn)化為8位并行數(shù)據(jù)隨之暫存到儲存模塊中,當(dāng)為FPGAl (CPLD1)、FPGA2 (CPLD2)、……、FPGAn (CPLDn)需離線下載程序時(shí),傳輸裝置通過軟件啟動程序?qū)Υ婺K中的8位并行數(shù)據(jù)上載到協(xié)議轉(zhuǎn)換模塊當(dāng)中,協(xié)議轉(zhuǎn)換模塊將其轉(zhuǎn)換為符合IEEE1149. I標(biāo)準(zhǔn)的編程的數(shù)據(jù)和指令,再經(jīng)緩沖器緩沖、隔離和協(xié)調(diào)處理,最后將此數(shù)據(jù)和指令通過輸出端口輸出到要編程的相應(yīng)的FPGAl
(CPLDl )、FPGA2 (CPLD2)、......、FPGAn (CPLDn),這樣即可實(shí)現(xiàn)在離線情況下對 FPGA/CPLD
器件反復(fù)下載預(yù)先存于儲存模塊中的程序。若想更新儲存模塊中的程序,只需連接主機(jī)重新下載新程序即可。其中,儲存模塊可以由FLASH儲存器件形成。以上所述僅為本發(fā)明較佳的實(shí)施例,并非因此限制本發(fā)明的申請專利范圍,所以凡運(yùn)用本發(fā)明說明書及圖示內(nèi)容所作出的等效結(jié)構(gòu)變化以及本領(lǐng)域技術(shù)人員慣用的技術(shù)手段替換,均包含在本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種基于FPGA/CPLD的程序下載器,包括主機(jī)、傳輸裝置和通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件,所述傳輸裝置與所述主機(jī)以及所述通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件分別連接,其特征在于,所述傳輸裝置包括USB控制模塊、協(xié)議轉(zhuǎn)換模塊、緩沖器模塊和輸出端口;所述USB控制模塊與所述主機(jī)的USB接口連接,所述協(xié)議轉(zhuǎn)換模塊與所述USB控制模塊連接,所述緩沖器模塊與所述協(xié)議轉(zhuǎn)換模塊連接,所述協(xié)議轉(zhuǎn)換模塊與所述輸出端口連接,所述輸出端口與所述通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件的輸入端口連接;所述USB控制模塊用于與所述主機(jī)之間進(jìn)行數(shù)據(jù)傳輸;所述協(xié)議轉(zhuǎn)轉(zhuǎn)換模塊用于在所述USB控制模塊和所述輸出端口之間進(jìn)行協(xié)議轉(zhuǎn)換;所述緩沖器模塊用于在所述USB控制模塊與所述輸出端口之間進(jìn)行數(shù)據(jù)緩沖。
2.如權(quán)利要求I所述基于FPGA/CPLD的程序下載器,其特征在于,所述傳輸裝置的協(xié)議轉(zhuǎn)換模塊主要由可編成邏輯器件以編程方式形成。
3.如權(quán)利要求I所述基于FPGA/CPLD的程序下載器,其特征在于,所述輸出端口有多個(gè),多個(gè)所述輸出端口與多個(gè)通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件連接,所述緩沖器模塊包括數(shù)據(jù)隔離與協(xié)調(diào)部件,所述緩沖器模塊的數(shù)據(jù)隔離與協(xié)調(diào)部件用于在對多個(gè)通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件進(jìn)行數(shù)據(jù)傳輸時(shí)隔離與協(xié)調(diào)各個(gè)端口的數(shù)據(jù)信號。
4.如權(quán)利要求I所述基于FPGA/CPLD的程序下載器,其特征在于,還包括儲存模塊,所述儲存模塊與所述協(xié)議轉(zhuǎn)換模塊連接,所述儲存模塊用于儲存經(jīng)所述協(xié)議轉(zhuǎn)換模塊轉(zhuǎn)換后的數(shù)據(jù)并于所述USB控制模塊與所述主機(jī)的USB接口斷開連接時(shí)將儲存的數(shù)據(jù)發(fā)送至所述輸出端口。
5.如權(quán)利要求1-4中任一所述基于FPGA/CPLD的程序下載器,其特征在于,所述主機(jī)為 PC機(jī)。
6.如權(quán)利要求1-4中任一所述基于FPGA/CPLD的程序下載器,其特征在于,所述USB控制模塊主要由CYC768013A芯片形成。
7.如權(quán)利要求1-4中任一所述基于FPGA/CPLD的程序下載器,其特征在于,所述通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件為FPGA器件或者CPLD器件。
8.如權(quán)利要求1-4中任一所述基于FPGA/CPLD的程序下載器,其特征在于,所述緩沖器模塊主要由MAX3378芯片形成。
9.如權(quán)利要求1-4中任一所述基于FPGA/CPLD的程序下載器,其特征在于,所述輸出端口主要為符合JTAG標(biāo)準(zhǔn)的端口。
10.如權(quán)利要求1-4中任一所述基于FPGA/CPLD的程序下載器,其特征在于,所述儲存模塊主要由FLASH儲存器件形成。
全文摘要
本發(fā)明公開了一種基于FPGA/CPLD的程序下載器,包括主機(jī)、傳輸裝置和通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件,所述傳輸裝置與所述主機(jī)以及所述通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件分別連接,其中,所述傳輸裝置包括USB控制模塊、協(xié)議轉(zhuǎn)換模塊、緩沖器模塊和輸出端口;所述USB控制模塊與所述主機(jī)的USB接口連接,所述協(xié)議轉(zhuǎn)換模塊與所述USB控制模塊連接,所述緩沖器模塊與所述協(xié)議轉(zhuǎn)換模塊連接,所述協(xié)議轉(zhuǎn)換模塊與所述輸出端口連接,所述輸出端口與所述通過編程方式構(gòu)造硬件結(jié)構(gòu)的可配置器件的輸入端口連接。
文檔編號G06F9/445GK102609288SQ20121003235
公開日2012年7月25日 申請日期2012年2月14日 優(yōu)先權(quán)日2012年2月14日
發(fā)明者葉華, 胡金平, 賀姍姍 申請人:上海三一精機(jī)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
阜南县| 绥阳县| 新绛县| 陆河县| 丰城市| 孟村| 建阳市| 铜山县| 资兴市| 清新县| 南通市| 南澳县| 高碑店市| 龙游县| 阿鲁科尔沁旗| 封开县| 兴文县| 正蓝旗| 邯郸市| 泾川县| 德昌县| 许昌市| 营口市| 新密市| 敖汉旗| 盐边县| 辽宁省| 延安市| 龙江县| 高唐县| 思茅市| 边坝县| 安吉县| 张北县| 阿瓦提县| 洛川县| 彰化市| 乌拉特前旗| 山东| 泰兴市| 株洲市|