《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > 采用EEPROM對大容量FPGA芯片數據實現串行加載

采用EEPROM對大容量FPGA芯片數據實現串行加載

2009-03-04
作者:范宏波 李一民 朱紅梅

  摘? 要: 通過對比多種FPGA數據加載方式,從可靠性、經濟性及PCB設計等幾個方面說明了串行加載的優越性,分析了目前串行加載所面臨的問題。為解決串行加載新面臨的問題,提出了采用EEPROM與9500系列CPLD相結合實現串行加載的構想,并通過實際設計,成功地實現了該構想。

  關鍵詞: FPGA? CPLD? EEPROM? 并-串轉換

?

  自大規?,F場可編程邏輯器件問世以來,先后出現了兩類器件,一類是基于SRAM體系結構的FPGA系列,如XILINX公司的4000系列和最新的Virtex系列;另一類是基于fastFLASH技術的CPLD器件,如XILINX公司的9500系列和Lattice公司的ispLSxx系列芯片。FPGA具有容量大、設計資源豐富、片內ROM及RAM設計靈活等特點[1],但是它們需要在每次上電時進行數據加載。目前實現加載的方法有以下三種:①采用PROM并行加載;②采用專用SROM串行加載;③采用單片機控制實現加載。第一種方式需要占用較多的FPGA管腳資源,雖然這些管腳在加載完成后可用作一般I/O口,但在加載時不允許這些管腳有其他任何外來信號源;另外數據存儲器PROM與FPGA之間的大量固定連線如8位數據線以及大量訪問PROM的地址線等,使得PCB設計不便。但是第一種方式有一個有利的方面,即PROM的容量較大、容易購置、價格低、技術支持(編程器)較好。第二種方式情況剛好與第一種方式相反,即占用資源少、PCB布板方便,但是容量小、價格較高、兼容性差。第三種方式采用單片機控制,由PROM中讀取并行數據,然后再串行送出。由于涉及到單片機編程,對于開發者來說較為不便;另外,如果單片機僅用來實現該任務,較為浪費硬件資源。CPLD的一個最大優點是采用計算機專用開發工具,通過JTAG口直接一次性實現編程數據加載,并永久保留,除非進行再次編程(與GAL器件相似)。該類器件比較適合在實驗室內進行現場調試,但是由于其數據的加載必須通過計算機,因此對于從事野外作業者來說會產生不便。

  通過上述比較,并結合實際工作情況,我們認為采用串行數據加載比較方便、可靠(這種可靠性得益于FPGA與SROM之間較少的接口線)。但隨著FPGA規模的不斷升級,其CONFIG數據量越來越大,截止到本文寫作時,CONFIG數據量最大已到6MBIT,雖然XILINX公司有相關的XC17X系列SROM提供使用,但皆為一次性芯片[2]、開發成本較高、代理商供貨周期長、價格較高,這給FPGA的應用及普及帶來很大的障礙。我們曾使用過AT&T公司的ATT17系列電可擦除SROM,但是該類SROM芯片能與XILINX系列FPGA芯片實現接口的種類不多,且容量小。由于種種原因,其價格往往是同樣存儲容量的EEPROM的五、六倍,甚至更高,并且來源困難。那么能不能結合并行加載與串行加載的優點,從而解決大容量FPGA數據加載的問題呢?我們在仔細分析了串行加載機制后,認為采用EEPROM作為數據存儲器,經過可控的并-串轉換,應該可以實現數據加載。下面以XILINX公司Virtex系列XCV100芯片為例,采用ATMEL公司1兆位的AT29C010A進行數據存儲,采用XILINX公司9500系列XC95108芯片作為加載控制器件進行設計。

1 原理設計

  原理性Master Serial模式串行加載時序如圖1所示。在該加載模式中,比較重要的幾個信號為/INIT、CCLK、DATAIN、DONE。/INIT表示FPGA芯片上電時或者當/PROGRAM信號為低時FPGA內部數據初始化過程,并作為外送信號給數據加載控制器件作為復位之用。當/INIT信號躍為高電平時,CCLK開始啟動。加載數據DATAIN在CCLK的上升沿打入,與通用串行通訊相類似,加載數據流也有開始位與結束位,且以數據幀的方式接收。一旦發生錯誤,FPGA立即停止接收數據,并將/INIT信號置為低電平,因此該信號又稱為錯誤指示信號。當數據全部接受并驗證無誤后,FPGA將DONE信號置為“1”[3]

?

?

  在分析了FPGA加載數據流特性后,可以得出這樣一個結論:保證CCLK與DATAIN之間的嚴格同步與連續性,就可以實現加載?;诖私Y論,在生成加載數據格式時,產生單片SROM串行格式,對于XILINX公司的FPGA系列,該格式為.MCS文件格式;然后用ALL07編程器以INTEL HEX數據格式將其寫入EEPROM中。余下的工作是在CCLK、/INIT、DATAIN的控制下完成并-串轉換。該控制過程采用一片CPLD之95系列XC95108芯片來承擔,在設計容量上采用一片XC9536即可完成,之所以采用XC95108是因為其尚需要完成其他任務。其原理框圖如圖2所示。

?

2 并-串轉換時序設計

  在時序設計上,關鍵在于要保持DATAIN加載數據的連續性、DATAIN與CCLK加載時鐘的同步性以及EEPROM訪問地址的復位問題。對于復位問題,采用上電時FPGA產生的/INIT信號對95108內部的EEPROM地址發生器復位。這樣做的原因是/INIT與FPGA之CCLK時鐘產生有著同步關系,但同時也默認上電加載是一次成功;在考慮串行DATAIN數據的連續性時,采用兩組移位寄存器,設定它們為R_shiftA和R_shiftB,當R_shiftA在進行移位操作時,R_shiftB由EEPROM中讀入八位并行數據,反之亦然;為保持DATAIN與CCLK時鐘的同步性,所有上述操作都以CCLK為同步時鐘,值得注意的是,由于DATAIN串行數據是在CCLK的上升沿打入FPGA,因此我們給予XC95108芯片設計的運轉時鐘是經過反相的CCLK時鐘,這樣就保證了CCLK與DATAIN的時間關系。

  以下是為該加載設計的VHDL硬件編程語言設計程序[4][5],其中的計數器及移位寄存器模塊用F2.1I設計軟件之LogicBlox模塊產生。整個程序經F2.1I開發軟件仿真、編譯成功后,經JTAG編程電纜寫入XC95108芯片。加電后便加載成功,經多次加電實驗,成功率為100%。

  雖然該程序是針對XCV100芯片及AT29C010A EEPROM設計的,但對于其他FPGA及EEPROM芯片同樣適用,不同的是針對不同容量的EEPROM,應改變其地址計數器的位數。

  library IEEE;

  use IEEE.std_logic_1164.all;

  use ieee.std_logic_arith.all;

  use ieee.std_logic_unsigned.all;

  entity v10sload is

?????? port (

?????? pDATA: in STD_LOGIC_VECTOR(7 downto 0);

?????? pADDRESS:inout STD_LOGIC_VECTOR(16

????????????????????????????????????????????downto 0);

????? ???? CCLKIN: in STD_LOGIC;

 ??????? ?RESET:in STD_LOGIC;

?????????? DATAIN:out STD_LOGIC

????????????? );

  end v10sload;

  architecture v10sload_arch of v10sload is

  signal:loadin,CE,nCE,CCLK8,nRESET,nCCLK,aDATAIN,

????????????? bDATAIN:std_logic;

  signal clkenable,CCLK:std_logic;

  signal ppDATA:std_logic_vector(7 downto 0);

  component clk_div8

????????????? PORT(

??? CLOCK,ASYNC_CTRL: IN std_logic;

??? CLK_OUT: OUT std_logic);

end component;

component R_shift8

  PORT(

???  D_IN: IN std_logic_vector(7 DOWNTO 0);

???  LOAD: IN std_logic;

???  CLK_EN: IN std_logic;

???  CLOCK: IN std_logic;

???  LS_OUT: OUT std_logic);

end component;

component BUFG

  port(I:in std_logic; O:out std_logic);

end component;

begin

??? -------------------------------????

--data-loading function statements here

nRESET<=not RESET;

init_data:process(RESET)

begin

  if(RESET='0') then

????ppDATA<=″00000000″;

????else ppDATA<=pDATA;

end if;

end process init_data;

L0:BUFG???? port map(I=>CCLKIN,O=>CCLK);

nCCLK<=not CCLK;

L1:counter17? portmap

????(CLOCK=>CCLK8,ASYNC_CTRL=>nRESET,

?????Q_OUT=>pADDRESS);

L2:clk_div8? portmap

?  (CLOCK=>nCCLK,ASYNC_CTRL=>nRESET,

????CLK_OUT=>CCLK8);

nCE<=not pADDRESS(0);

CE<=pADDRESS(0);

clkenable<='1';

L3:R_shift8??? portmap

??? (D_IN=>ppDATA,LOAD=>nCE,CLK_EN=>

????????????? ??? clkenable,CLOCK=>nCCLK,

??? LS_OUT=>aDATAIN);

L4:R_shift8??? portmap

????(D_IN=>ppDATA,LOAD=>CE,CLK_EN=>

????clkenable,CLOCK=>nCCLK,

??? LS_OUT=>bDATAIN);

process(aDATAIN,bDATAIN,CE)

begin

  if(CE='1') then DATAIN<=aDATAIN;

  else DATAIN<=bDATAIN;

end if;

end process;

end v10sload_arch;

?

參考文獻

1 XILINX 公司DATABOOK,1999:54~56

2 XILINX公司網站www.xilinx.com

3 王小軍.VHDL 簡明教程.北京:清華大學出版社,1997

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          久久深夜福利| 亚洲一区二区在线免费观看视频| 国产一区二区av| 一区二区日韩免费看| 久色成人在线| 激情久久五月| 国产精品男人爽免费视频1| 国产精品自拍三区| 欧美成人资源| 国产精品美女诱惑| 欧美一区网站| 欧美 亚欧 日韩视频在线| 国产精品国产精品| 国产精品极品美女粉嫩高清在线| 亚洲欧洲在线一区| 伊人久久亚洲美女图片| 欧美黄色一区二区| 亚洲欧美精品在线观看| 国产日韩一区二区三区| 农夫在线精品视频免费观看| 久久久精品久久久久| 黄色欧美日韩| 日韩一区二区精品| 亚洲一本大道在线| 亚洲国产mv| 久久成人国产精品| 99视频一区| 亚洲区一区二| 欧美日韩精品系列| 午夜亚洲性色福利视频| 亚洲开发第一视频在线播放| 影音先锋在线一区| 亚洲第一区在线| 欧美日韩色一区| 国产精品高清在线| 亚洲最新在线| 美女视频一区免费观看| 影音先锋在线一区| 欧美激情精品| 亚洲精品女人| 亚洲欧美日韩一区二区三区在线观看| 国产精品久久久一区二区三区| 欧美日韩久久| 国产精品分类| 亚洲黄色大片| 国产欧美日韩一区二区三区在线| 久久av在线| 欧美一进一出视频| 中文在线资源观看视频网站免费不卡| 欧美日本国产| 久久久久久亚洲综合影院红桃| 亚洲精品在线观看视频| 久久综合久色欧美综合狠狠| 欧美中文字幕在线视频| 国产精品美女久久久| 国产精品理论片| 暖暖成人免费视频| 国产精品福利久久久| 久久久久国产一区二区三区四区| 欧美黄网免费在线观看| 噜噜噜噜噜久久久久久91| 国产精品男女猛烈高潮激情| 亚洲一级一区| 亚洲精品国产精品国自产观看| 亚洲欧洲美洲综合色网| 亚洲天堂男人| 狠狠色丁香婷婷综合| 国产精品一二| 亚洲精品1区2区| 9色国产精品| 国产亚洲精久久久久久| 国产精品一区二区三区乱码| 亚洲一二三区精品| 欧美成人国产va精品日本一级| 另类尿喷潮videofree| 国产精品久久97| 91久久国产综合久久| 老司机精品视频网站| 中日韩视频在线观看| 亚洲高清在线精品| 亚洲第一搞黄网站| 亚洲网站在线播放| 欧美日韩视频在线一区二区观看视频| 欧美~级网站不卡| 亚洲第一天堂av| 国产亚洲精品aa| 国模叶桐国产精品一区| 久久riav二区三区| 久久精品系列| 国产精品乱码久久久久久| 午夜精品一区二区在线观看| 国产一区再线| 欧美特黄一级大片| 欧美日本在线看| 亚洲美女av电影| 国产精品久久久久久久久免费桃花| 久久久久99精品国产片| 欧美一级成年大片在线观看| a4yy欧美一区二区三区| 国产精品福利av| 欧美中文字幕在线视频| 免费一区二区三区| 久久久www免费人成黑人精品| 欧美国产一区视频在线观看| 国产一区激情| 久久久久这里只有精品| 日韩一级网站| 久久九九电影| 国产情人综合久久777777| 黄网站色欧美视频| 欧美激情导航| 亚洲天堂网在线观看| 欧美成人激情在线| 国产精品理论片在线观看| 日韩视频精品| 欧美国产乱视频| 国产日韩精品一区观看| 激情婷婷久久| 国产一区91| 亚洲在线观看| 国产精品一区二区你懂的| 欧美日韩精品一区二区三区四区| 免费成人av在线看| 在线播放豆国产99亚洲| 一卡二卡3卡四卡高清精品视频| 国产在线国偷精品产拍免费yy| 亚洲香蕉伊综合在人在线视看| 好吊日精品视频| 一区在线免费观看| 久久久久久久久久看片| 欧美三级中文字幕在线观看| 国产精品进线69影院| 欧美一级成年大片在线观看| 在线观看精品一区| 欧美无乱码久久久免费午夜一区| 噜噜噜在线观看免费视频日韩| 欧美激情在线有限公司| 影音先锋中文字幕一区| 国产日韩av在线播放| 亚洲欧美伊人| 亚洲精品一区在线观看香蕉| 国产精品久久久久9999吃药| 国产精品草草| 欧美精品福利在线| 模特精品在线| 欧美午夜片在线观看| 国产欧美日韩亚洲一区二区三区| 国产精品h在线观看| 麻豆精品传媒视频| 欧美成人四级电影| 夜夜嗨av一区二区三区中文字幕| 久久只精品国产| 日韩视频一区二区| 黄色精品一二区| 国产精品久久久久久av福利软件| 亚洲午夜精品| 国产精品网站在线观看| 国产精品国产三级国产普通话蜜臀| 欧美激情一区二区三区蜜桃视频| 永久免费毛片在线播放不卡| 午夜精品亚洲一区二区三区嫩草| 亚洲欧美另类中文字幕| 久久综合色一综合色88| 欧美大片在线看免费观看| 你懂的网址国产 欧美| 久久亚洲精选| 香蕉久久一区二区不卡无毒影院| 欧美91大片| 国产在线国偷精品产拍免费yy| 国产欧美一区二区色老头| 国产精品爽爽爽| 国产一区二区三区在线观看精品| 嫩模写真一区二区三区三州| 久久av老司机精品网站导航| 麻豆成人91精品二区三区| 国产精品成av人在线视午夜片| 免费亚洲一区二区| 国产精品美女久久久久av超清| 国产精品乱码人人做人人爱| 黄色在线一区| 国产一区二区日韩精品| 亚洲制服丝袜在线| 国产精品av久久久久久麻豆网| 久久影院亚洲| 激情懂色av一区av二区av| 欧美专区一区二区三区| 国产日韩精品视频一区二区三区| 久久精品导航| 一二美女精品欧洲| 在线亚洲自拍| 国产亚洲欧美日韩一区二区| 欧美日韩国产区| 欧美日韩伦理在线| 午夜亚洲视频| 久久综合久久综合久久| 国产精品免费视频观看| 中文在线资源观看网站视频免费不卡| 国产精品毛片在线看| 午夜日韩视频| 99国产精品国产精品毛片| 欧美福利一区| 免费一级欧美片在线观看| 国产欧美日本在线| 亚洲欧美日本日韩| 韩日精品视频| 亚洲黄色性网站| 国产美女精品人人做人人爽| 欧美午夜精品久久久| 国产综合色在线视频区| 欧美国产欧美综合| 国产日韩欧美精品综合| 欧美在线影院在线视频| 欧美综合第一页| 黄色日韩网站视频| 亚洲少妇诱惑| 欧美日韩国产999| 亚洲国产一区二区a毛片| 欧美日韩一区二区高清| 欧美日本中文字幕| 在线视频欧美一区| 久久久亚洲高清| 亚洲国产第一| 一区二区三区欧美在线| 99国产精品久久久久久久久久| 欧美国产1区2区| 亚洲精品五月天| 久热re这里精品视频在线6| 性高湖久久久久久久久| 日韩午夜视频在线观看| 欧美精品1区2区| 欧美日韩在线三级| 中日韩午夜理伦电影免费| 母乳一区在线观看| 久久美女艺术照精彩视频福利播放| 黑人操亚洲美女惩罚| 亚洲区免费影片| 欧美成人国产一区二区| 欧美视频在线观看视频极品| 亚洲午夜精品在线| 国产精品盗摄久久久| 欧美国产视频日韩| 久久精品五月婷婷| 六十路精品视频| 国产精品久久久久999| 久久久久久久久岛国免费| 一本久久综合| 亚洲女与黑人做爰| 久久精品国内一区二区三区| 亚洲第一页自拍| 99国产精品私拍| 国产精品嫩草影院一区二区| 久久精品一级爱片| 欧美三级日本三级少妇99| 亚洲欧美一级二级三级| 亚洲三级性片| 蜜桃av噜噜一区二区三区| 久久久www成人免费毛片麻豆| 久久不射2019中文字幕| 欧美一级久久久久久久大片| 国产精品综合色区在线观看| 欧美婷婷六月丁香综合色| 伊人久久男人天堂| 在线电影一区| 久久亚洲免费| 欧美激情欧美激情在线五月| 国产亚洲va综合人人澡精品| 欧美交受高潮1| 欧美私人网站| 亚洲欧美另类久久久精品2019| 国产视频一区二区在线观看| 欧美.日韩.国产.一区.二区| 亚洲精品久久久久久久久久久久久| 亚洲精品影视在线观看| 小黄鸭精品aⅴ导航网站入口| 亚洲主播在线| 久久综合色播五月| 亚洲第一黄网| 国产麻豆一精品一av一免费| 在线精品国产成人综合| 亚洲精品日韩精品| 精品福利免费观看| 欧美性一二三区| 欧美成人午夜激情在线| 国产主播一区二区三区四区| 欧美精品粉嫩高潮一区二区| 欧美激情一区二区三区| 精品999久久久| 国产欧美一区二区三区在线看蜜臀| 亚洲日本电影在线| 亚洲第一精品夜夜躁人人爽| 日韩一区二区精品葵司在线| 国产精品家教| 欧美成人影音| 黄色一区三区| 在线日韩日本国产亚洲| 午夜日韩激情| 欧美激情一区二区三区全黄| 欧美成人性网| 久久亚洲综合色| 亚洲精品国产精品乱码不99按摩| 欧美一区日韩一区| 亚洲国产成人在线视频| 亚洲美女免费精品视频在线观看| 国产精品国产三级国产普通话三级| 午夜国产精品影院在线观看| 欧美视频国产精品| 欧美成人69| 久久久久久久网站| 亚洲福利在线看| 亚洲国产综合在线看不卡| 国语自产精品视频在线看8查询8| 亚洲一区观看| 91久久精品国产91性色| 欧美一激情一区二区三区| 国产欧美日韩免费看aⅴ视频| 亚洲国产cao| 久久精品99国产精品| 狂野欧美激情性xxxx欧美| 在线天堂一区av电影| 日韩视频不卡| 亚洲黄色片网站| 久久久一本精品99久久精品66| 欧美系列亚洲系列| 久久久精品一区二区三区| 国产精品区免费视频| 黑人巨大精品欧美一区二区小视频| 亚洲自拍偷拍视频| 雨宫琴音一区二区在线|