新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > FPGA最小系統(tǒng)之:最小系統(tǒng)電路分析

FPGA最小系統(tǒng)之:最小系統(tǒng)電路分析

作者: 時間:2017-06-05 來源:網(wǎng)絡 收藏

本文引用地址:http://m.butianyuan.cn/article/201706/348851.htm

2.2.1 管腳設計

的管腳主要包括:用戶I/O(User I/O)、配置管腳、電源、時鐘及特殊應用管腳等。其中有些管腳可有多種用途,所以在設計電路之前,需要認真的閱讀相應FPGA的芯片手冊。

下面以公司的系列FPGA為例,介紹FPGA的各種功能管腳。

(1)用戶I/O。

I/Onum(LVDSnumn):可用作輸入或輸出,或者雙向口,同時可作為LVDS差分對的負端。其中num表示管腳序號。

一般在繪制FPGA原理圖時,將同一種功能和用途的管腳放在一個框圖中,如圖2.3所示是用戶I/O的原理圖。

(2)配置管腳。

  • MSEL[1..0]:用于選擇配置模式。FPGA有多種配置模式,比如主動、被動、快速、正常、串行、并行等,可以此管腳進行選擇。
  • DATA0:FPGA串行數(shù)據(jù)輸入,連接至配置器件的串行數(shù)據(jù)輸出管腳。
  • DCLK:FPGA串行時鐘輸出,為配置器件提供串行時鐘。
  • nCSO(I/O):FPGA片選信號輸出,連接至配置器件的nCS管腳。
  • ASDO(I/O):FPGA串行數(shù)據(jù)輸出,連接至配置器件的ASDI管腳。
  • nCEO:下載鏈器件使能輸出。在一條下載鏈(Chain)中,當?shù)谝粋€器件配置完成后,此信號將使能下一個器件開始進行配置。下載鏈的最后一個器件的nCEO應懸空。

圖2.3 FPGA用戶I/O原理圖

  • nCE:下載鏈器件使能輸入,連接至上一個器件的nCEO。下載鏈第一個器件的nCE接地。
  • nCONFIG:用戶模式配置起始信號。
  • nSTATUS:配置狀態(tài)信號。
  • CONF_DONE:配置結束信號。

如圖2.4所示是FPGA配置管腳原理圖。

圖2.4 FPGA配置管腳原理圖

(3)電源管腳。

  • VCCINT:內(nèi)核電壓。通常與FPGA芯片所采用的工藝有關,例如130nm工藝為1.5V,90nm工藝為1.2V。
  • VCCIO:端口電壓。一般為3.3V,還可以支持選擇多種電壓,如5V、1.8V、1.5V等。
  • VREF:參考電壓。
  • GND:信號地。

(4)時鐘管腳。

  • VCC_PLL:鎖相環(huán)管腳電壓,直接連VCCIO。
  • VCCA_PLL:鎖相環(huán)模擬電壓,一般通過濾波器接到VCCINT上。
  • GNDA_PLL:鎖相環(huán)模擬地。
  • GNDD_PLL:鎖相環(huán)數(shù)字地。
  • CLKnum(LVDSCLKnump):鎖相環(huán)時鐘輸入。支持LVDS時鐘輸入,p接正端,num表示PLL序號。
  • CLKnum(LVDSCLKnumn):鎖相環(huán)時鐘輸入。支持LVDS時鐘輸入,n接負端,num表示PLL序號。
  • PLLnum_OUTp(I/O):鎖相環(huán)時鐘輸出。支持LVDS時鐘輸入,p接正端,num表示PLL序號。
  • PLLnum_OUTn(I/O):鎖相環(huán)時鐘輸出。支持LVDS時鐘輸入,n接負端,num表示PLL序號。

如圖2.6所示是FPGA時鐘管腳原理圖。

圖2.5 FPGA電源管腳原理圖 圖2.6 FPGA時鐘管腳原理圖

另外,F(xiàn)PGA的管腳中,有一些是全局時鐘,這些管腳在FPGA中已經(jīng)做好了時鐘樹。使用這些管腳作為關鍵時鐘或信號的布線可以獲得最佳性能。

(5)特殊管腳。

  • VCCPD:用于選擇驅(qū)動電壓。
  • VCCSEL:用于控制配置管腳和鎖相環(huán)相關的輸入緩沖電壓。
  • PORSEL:上電復位選項。
  • NIOPULLUP:用于控制配置時所使用的用戶I/O的內(nèi)部上拉電阻是否工作。
  • TEMPDIODEn/p:用于關聯(lián)溫度敏感二極管。

2.2.2 下載配置與調(diào)試接口電路設計

FPGA是SRAM型結構,本身并不能固化程序。因此FPGA需要一片結構的配置芯片來存儲邏輯配置信息,用于進行上電配置。

公司的FPGA為例,配置芯片分為串行(EPCSx系列)和并行(EPCx系列)兩種。其中EPCx系列為老款配置芯片,體積較大,價格高。而EPCSx系列芯片與之相比,體積小、價格低。

另外,除了使用公司的配置芯片,也可以使用+的方式去配置FPGA。

在把程序固化到配置芯片之前,一般先使用JTAG模式去調(diào)試程序,也就是把程序下載到FPGA芯片上運行。雖然這種方式在斷電以后程序會丟失,但是充分利用了FPGA的無限擦寫性。

所以一般FPGA有兩個下載接口:JTAG調(diào)試接口和AS(或PS)模式下載接口。所不同的是前者下載至FPGA,后者是編程配置芯片(如EPCSx),然后再配置FPGA。

如圖2.7和圖2.8所示分別是JTAG模式和AS模式的電路原理圖。

圖2.7 JTAG模式原理圖

2.2.3 高速存儲器接口電路設計

可作為軟嵌入式系統(tǒng)的(NIOS II)的程序運行空間,或者作為大量數(shù)據(jù)的緩沖區(qū)。是通用的存儲設備,只要容量和數(shù)據(jù)位寬相同,不同公司生產(chǎn)的芯片都是兼容的。

一般比較常用的SDRAM包括現(xiàn)代HY57V系列、三星K4S系列和美光MT48LC系列。例如,4M×32位的SDRAM,現(xiàn)代公司的芯片型號為HY57V283220,三星公司的為K4S283232,美光公司的為MT48LC4M32。這幾個型號的芯片可以相互替換。SDRAM典型電路如圖2.9所示。

圖2.8 AS模式原理圖

圖2.9 SDRAM典型電路

2.2.4 異步SRAM(ASRAM)存儲器接口電路設計

由于ASRAM的讀寫時序相對比較簡單,因此一般使用SRAM作為數(shù)據(jù)的緩沖,但其成本相對SDRAM高。而且作為異步設備,ASRAM對于時鐘同步的要求也不高,可以在低速下運行。ASRAM主要為8位和16位數(shù)據(jù)寬度,用戶可根據(jù)需要進行選擇。ASRAM的典型電路如圖2.10所示。

圖2.10 ASRAM典型電路

2.2.5 存儲器接口電路設計

Flash可作為軟嵌入式系統(tǒng)的程序存儲空間,或者作為程序的固件空間。最常使用的是AMD公司或者Intel公司的Flash。在小容量的Flash選擇上,AMD公司的Flash性價比較高,而高容量的Flash選擇上,Intel公司的Flash性價比較高。

Flash同樣也可以通過設置實現(xiàn)8位和16位的數(shù)據(jù)位寬,下面是幾種典型的Flash應用。

16位模式下的(AMD)Flash連接如圖2.11所示。

8位模式下的(AMD)Flash連接如圖2.12所示。

8位模式下(Intel)Flash連接如圖2.13所示。

圖2.11 16位模式下(AMD)Flash連接

圖2.12 8位模式下(AMD)Flash連接

圖2.13 8位模式下(Intel)Flash連接

2.2.6 開關、按鍵與發(fā)光LED電路設計

發(fā)光LED參考電路如圖2.14所示。

圖2.14 數(shù)碼管參考電路

撥碼開關參考電路如圖2.15所示。

圖2.15 撥碼開關參考電路

按鍵開關參考電路如圖2.16所示。

圖2.16 按鍵開關參考電路

2.2.7 VGA接口電路設計

紅色颶風開發(fā)板提供了VGA顯示功能與接口,可以用普通的VGA電纜連接到計算機的顯示器上。VGA 連接器定義如圖2.17所示。

圖2.17 VGA連接器定義

包括的信號有Red(R)、Green(G)、Blue(B)、Horizontal Sync(水平掃描HS)以及Vertical Sync(垂直掃描 VS)。系統(tǒng)結構示意圖如圖2.18所示。

圖2.18 VGA接口結構示意圖

2.2.8 PS/2鼠標及鍵盤接口電路設計

早期的PS/2鼠標及鍵盤采用5V電壓標準,目前的PS/2鼠標及鍵盤主要采用3.3V電壓標準,如圖2.19所示的參考電路可以實現(xiàn)對兩種標準的兼容。

圖2.19 PS/2參考電路

2.2.9 RS-232串口

RS-232接口定義如表2.1所示。

表2.1 RS-232接口定義表

25芯

9芯

信號方向來自

縮 寫

描 述

2

3

PC

TXD

發(fā)送數(shù)據(jù)

3

2

調(diào)制解調(diào)器

RXD

接收數(shù)據(jù)

4

7

PC

RTS

請求發(fā)送

5

8

調(diào)制解調(diào)器

CTS

允許發(fā)送

6

6

調(diào)制解調(diào)器

DSR

通信設備準備好

7

5

GND

信號地

8

1

調(diào)制解調(diào)器

CD

載波檢測

20

4

PC

DTR

數(shù)據(jù)終端準備好

22

9

調(diào)制解調(diào)器

RI

響鈴指示器

DTE DCE設備信號電流方向如表2.2所示。

表2.2 DTE DCE設備信號電流方向表

9芯DTE

25芯DTE

電 流 方 向

縮寫DCE

描述DCE

3

2

DTE→DCE

2

3

2

3

DTE←DCE

3

2

7

4

DTE→DCE

4

7

8

5

DTE←DCE

5

8

6

6

DTE←DCE

6

6

5

7

DTE←DCE

7

5

1

8

DTE←DCE

8

1

4

20

DTE→DCE

20

4

9

22

DTE←DCE

22

9

RS-232參考電路如圖2.20所示。

圖2.20 RS-232參考電路

2.2.10 字符型液晶顯示器接口電路設計

字符型液晶顯示器電路原理圖如圖2.21所示。

第1腳:VSS為地電源。

第2腳:VDD接5V正電源。

第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10kW的電位器調(diào)整對比度。

第4腳:RS為寄存器選擇線,高電平時選擇數(shù)據(jù)寄存器低電平時選擇指令寄存器。

第5腳:RW為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當RS和RW共同為低電平時可以寫入指令或者顯示地址,當RS為低電平、RW為高電平時可以讀忙信號,當RS為高電平、RW為低電平時可以寫入數(shù)據(jù)。

第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。

第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。

圖2.21 字符型液晶顯示器電路原理圖

2.2.11 USB 2.0接口芯片CY7C68013電路設計

通過開發(fā)系統(tǒng)上的USB接口,可以用USB電纜直接將系統(tǒng)與主機(比如PC機)相連。USB接口使用了Cypress公司的CY7C68013芯片來實現(xiàn),其電路原理圖如圖2.22所示。

圖2.22 CY7C68013原理圖

1.芯片介紹

Cypress Semiconductor公司的EZ-USB FX2是世界上第一款集成USB 2.0的微處理器。它集成了USB 2.0收發(fā)器、SIE(智能串行引擎)、增強的8051微控制器和可編程的外圍接口。FX2這種獨創(chuàng)性結構可使數(shù)據(jù)傳輸率達到56MB/s,即USB 2.0允許的最大帶寬。

在FX2中,智能SIE可以硬件處理許多USB 1.1和USB 2.0協(xié)議,從而減少了開發(fā)時間和確保了USB的兼容性。GPIF(General Programmable Interface)和主/從端點FIFO(8位或16位數(shù)據(jù)總線)為ATA、UTOPIA、EPP、PCMCIA和DSP等提供了簡單和無縫連接接口。

CY7C68013集成了以下特性。

(1)USB 2.0收發(fā)器、SIE(智能串行引擎)和增強性8051微處理器。

(2)軟件運行。8051程序從內(nèi)部RAM開始運行,可借助下列幾種方式進行程序裝載。

  • 通過USB下載。
  • 從EEPROM中裝載。
  • 通過外部存儲器設備。

(3)4個可編程(BULK/INTERRUPT/ISOCHRONOUS)端點,可選雙緩沖、三緩沖和四緩沖。

(4)8位或16位外部數(shù)據(jù)接口。

(5)通用可編程接口(GPIF)。

  • 可以直接連接到并口,分為8位和16位。
  • 可編程波形描述符和配置寄存器。
  • 支持多個Ready輸入和Control輸出。

(6)集成標準8051內(nèi)核,且具有下列增強特性。

  • 可以達到48MHz時鐘。
  • 每條指令占4個時鐘周期。
  • 2個UARTS。
  • 3個定時/計數(shù)器。
  • 擴展的中斷系統(tǒng)。
  • 兩個數(shù)據(jù)指針。

(7)采用3.3V電源系統(tǒng)。

(8)矢量USB中斷。

(9)獨立的數(shù)據(jù)緩沖區(qū)供SETUP和DATA包控制傳輸。

(10)集成I2C控制器,運行速度可達100kHz。

(11)4個FIFO,可與ASIC和DSP等無縫連接。

(12)專門的FIFO和GPIF自動矢量中斷。

(13)可用于DSL Modems、ATA接口、相機、Home PNA、WLAN、MP3播放器、網(wǎng)絡等。

2.USB啟動方式和枚舉

上電時,內(nèi)部邏輯會檢查連接到I2C總線上的EEPROM中的第一個字節(jié)(0xC0或0xC2)。如果是0xC0,就會使用EEPROM中的VID/PID/DID來替代內(nèi)部存儲值;如果是0xC2,內(nèi)部邏輯就會把EEPROM中的內(nèi)容裝入到內(nèi)部RAM中;如果沒有檢查到EEPROM,F(xiàn)X2就會使用內(nèi)部存儲的描述符來枚舉。其缺省值是0x04B4/ 0x8613/ 0xxxyy。

當首次插入USB時,F(xiàn)X2會通過USB電纜自動枚舉并下載固件和USB描述符表。然后FX2將再次枚舉,通過下載的信息來定義設備。這兩個步驟就叫做重枚舉,當設備插入時它們就立即執(zhí)行。

3.程序/數(shù)據(jù)存儲器

(1)內(nèi)部數(shù)據(jù)RAM。

FX2的內(nèi)部數(shù)據(jù)RAM被分成3個不同的區(qū)域:低(LOW)128字節(jié),高(Upper)128字節(jié)和特殊功能寄存器(SFR)空間。低128字節(jié)和高128字節(jié)是通用RAM,SFR包括FX2控制和狀態(tài)寄存器。

(2)外部程序存儲器和數(shù)據(jù)存儲器。

FX2有8KB片上RAM(位于0x0000~0x1FFF范圍內(nèi))和512字節(jié)Scratch RAM(位于0xE000~0xE1FF)。盡管Scratch RAM從物理上來說位于片內(nèi),但是通過固件可以把它作為外部RAM一樣來尋址。FX2保留7.5KB(0xE200~0xFFFF)數(shù)據(jù)地址空間作為控制/狀態(tài)寄存器和端點緩沖器。

注意

只有數(shù)據(jù)內(nèi)存空間保留,而程序內(nèi)存(0xE000~0xFFFF)并不保留。

4.端點緩沖區(qū)

FX2包含3個64字節(jié)端點緩沖區(qū)和4KB可配置成不同方式的緩沖,其中3個64字節(jié)的緩沖區(qū)為EP0、EP1IN和EP1OUT。

EP0作為控制端點用,它是一個雙向端點,既可為IN也可為OUT。當需要控制傳輸數(shù)據(jù)時,F(xiàn)X2固件讀寫EP0緩沖區(qū),但是8個SETUP字節(jié)數(shù)據(jù)不會出現(xiàn)在這64字節(jié)EP0端點緩沖區(qū)中。

EP1IN和EP1OUT使用獨立的64字節(jié)緩沖區(qū),可配置為BULK、INTERRUPT或ISOCHRONOUS傳輸方式,這兩個端點和EP0一樣只能被固件訪問。這一點與大端點緩沖區(qū)EP2、EP4、EP6和EP8不同,這4個端點緩沖區(qū)主要用來和片上或片外進行高帶寬數(shù)據(jù)傳輸而無需固件的參與。EP2、EP4、EP6和EP8是高帶寬、大緩沖區(qū),它們可被設置成不同的方式來適應帶寬的需求。

5.外部FIFO接口

EP2、EP4、EP6和EP8大端點緩沖區(qū)主要用來進行高速(480Mbit/s)數(shù)據(jù)傳輸??梢酝ㄟ^FIFO數(shù)據(jù)接口與外部ASIC和DSP等處理器無縫連接來實現(xiàn)高速數(shù)據(jù)傳輸。它具有的通用接口有:Slave FIFO或GPIF(內(nèi)部主)、同步或異步時鐘、內(nèi)部或外部時鐘等。

6.中斷資源

FX2的中斷結構是在一個標準8051單片機的基礎上增強和擴展了部分中斷資源,中斷資源如表2.3所示。

表2.3 FX中斷資源表

FX2中斷

中 斷 來 源

中 斷 向 量

優(yōu) 先 級

IE0

INT0 Pin

0x0003

1

TF0

Timer0 Overflow

0x000B

2

IE1

INT1 Pin

0x0013

3

TF1

Timer1 Overflow

0x001B

4

RI_0 TI_0

USART0 Rx Tx

0x0023

5

TF2

Timer2 Overflow

0x002B

6

Resume

WAKEUP/WU2 Pin

0x0033

0

RI_1 TI_1

USART1 Rx Tx

0x003B

7

USBINT

USB

0x0043

8

I2CINT

I2C BUS

0x004B

9

IE4

GPIF/FIFOs/INT4 Pin

0x0053

10

IE5

INT5 Pin

0x005B

11

IE6

INT6 Pin

0x0063

12

其中27個USB請求共享USB中斷,14個FIFO/GPIF源共享INT4。

芯片的詳細介紹與使用方法可參看芯片數(shù)據(jù)手冊。

2.2.12 電源電路設計

電源是整個系統(tǒng)能夠正常工作的基本保證,如果電源電路設計的不好,系統(tǒng)有可能不能工作,或者即使能工作但是散熱條件不好,導致系統(tǒng)不穩(wěn)定等異常情況。所以如何選用合適的電源芯片,以及如何合理地對電源進行布局布線,都是值得下大功夫研究的。

在選用電源之前要仔細閱讀FPGA的芯片手冊,一般來說FPGA用到的管腳和資源越多,那么所需要的電流就越大,當電路啟動時FPGA的瞬間電流也比較大。通過數(shù)據(jù)手冊中提供的電氣參數(shù),確定FPGA最大需要多大的電流才能工作。

下面是幾種常使用的FPGA參考電源。

  • AS117可以提供1A電流,線型電源(適用144管腳以下、5萬邏輯門以下的FPGA)。
  • AS2830(或LT1085/6)可以提供3A電流,線性電源(適用240管腳以下、30萬邏輯門以下的FPGA)。
  • TPS54350可以提供3A電流,開關電源(適用大封裝大規(guī)模的高端FPGA)。

AS2830電源應用電路如圖2.23所示。

對于線性電源芯片,輸出電壓和輸入電壓的關系為:Vout=(1+RP3/RP2)×Vref。

Vref一般是1.25V,輸出假定輸入Vin為5V,Vout為1.5V,那么RP2/RP3=1/5,而RP3一般要求100~150W,那么可以選RP3=100W,RP2=500W。如果采用了固定電平輸出的芯片,只需要把RP3焊0W,RP2不焊接即可。

圖2.23 AS2830電源應用電路

2.2.13 復位電路設計

一般復位電路采用的是低電平復位,只有個別單片機采用高電平復位方式。

常見的電平復位電路分為芯片復位和阻容復位。前者的復位信號比較穩(wěn)定,而后者容易出現(xiàn)抖動。因此在成本允許的范圍內(nèi)我們一般推薦使用芯片復位。

常用的芯片復位有MAX708S/706S系列,它們可提供高、低電平兩種復位方式和電源監(jiān)控能力(監(jiān)控電源電壓低到一定程度自動復位)。

IMP811是一款比較低廉的復位芯片,只有低電平復位功能,但是其體積非常小。

阻容復位典型連接電路如圖2.24所示。

圖2.24 阻容復位典型連接電路

MAX708S典型連接電路如圖2.25所示。

圖2.25 MAX708S典型連接電路

IMP811典型連接電路如圖2.26所示。

圖2.26 IMP811典型連接電路

2.2.14 時鐘電路設計

時鐘電路典型連接如圖2.27所示。

圖2.27 時鐘電路典型連接



評論


相關推薦

技術專區(qū)

關閉