本人歷經3個多月的辛苦設計的一款開發板,定位於初學者的入門學習以及功能開發驗證使用。從原理圖設計,PCB設計,PCB加工,貼裝,板卡終於到手,正在進行介面功能除錯,除錯完成後將送出一波福利,歡迎大家關注。
友情提示:文件內容較長,電腦端閱讀體驗更佳!
0,文件管理
此文件由【數字積木】編寫 。本文件採用git工具進行管理,文件託管地址為
https://github.com/Digital-Blocks-design/ZYNQ_CORE_484
訪問該地址,檢視最新版的文件資訊。如在閱讀使用過程中發現文件內容描述有誤,歡迎在github上提交 issue ,issue連結 :
https://github.com/Digital-Blocks-design/ZYNQ_CORE_484/issues
或直接聯絡作者本人 ,作者聯絡方式如下 :
郵箱:digital_blocks@163.com ,
QQ號:1455117034 。
歡迎關注微信公眾號【數字積木】,更精彩的內容等著你!
1,板卡概述
此款開發板使用的是 Xilinx 公司的 Zynq7000 系列的晶片,型號為 XC7Z020-2CLG484I,484 個引腳的 FBGA 封裝。ZYNQ7000 晶片可成處理器系統部分 Processor System(PS)和可程式設計邏輯部分 Programmable Logic(PL)。在 該開發板上,ZYNQ7000 的 PS部分和 PL 部分都搭載了豐富的外部介面和裝置,方便使用者的使用和功能驗證。另外開發板上整合了 JTAG_UART 下載器電路,使用者只用一個 USB 線就可以對開發板進行下載和除錯。下圖為整個板卡的系統組成圖 :
該開發平臺定位於初學者的入門學習以及功能開發驗證使用。
開發平臺所能含有的介面和功能如下:
- USB TYPE-C電源輸入介面,支援DP協議電源輸入 ,支援5V,9V,12V 等電壓配置,預設輸入配置為12V ;
- 採用 TI的型號為 TPS82130SILT的 MicroSiP 電源模組 ,為板上提供 1.0V, 1.5V,1.8V,3.3V,5.0V等多路供電 ;
- Xilinx ARM+FPGA 晶片 Zynq-7000 XC7Z020-2CLG484I
- 兩片大容量的 4Gbit(共 8Gbit)高速 DDR3 SDRAM,可作為 ZYNQ 晶片資料的快取,也可以作為作業系統執行的記憶體 , DDR型號為 MT41K256M16TW-107IT 。
- 一片 256Mbit 的 QSPI FLASH, 可用作 ZYNQ 晶片的系統檔案和使用者資料的儲存 ,flash型號為 N25Q128A13ESE40F ;
- 1 路 Micro SD 卡座,用於儲存作業系統映象和檔案系統。
- 一片EMMC晶片 ,容量為 8Gbytes , 用於儲存作業系統映象和檔案系統 , 型號為 MTFC8GAKAJCN-4M。
- 一路10/100M/1000M乙太網RJ45介面, 可用於和電腦或其它網路裝置進行乙太網資料交換;
- 一路 HDMI 影像影片輸出介面, 能實現 1080P 的影片影像傳輸;
- 板載一個 33.333Mhz 的有源晶振,給 PS 系統提供穩定的時鐘源,一個 50MHz 的有源晶振,為 PL 邏輯提供額外的時鐘;
- 一路 USB JTAG 口,整合有JTAG和UART功能,透過 USB 線及板載的 JTAG 電路對 ZYNQ 系統進行除錯和下載。
- 一片 IIC 介面的 EEPROM ,型號為 M24C08-WDW6TP , 容量為 1Kbytes;
- 透過跳線帽進行啟動模式修改,支援JTAG,SD卡,FLASH啟動模式,方便使用者開發除錯 。
- 一路USB介面 , 可用於開發板連線滑鼠、鍵盤和 U 盤等 USB 外設;
- 2個FPGA狀態指示燈(DONE , INIT_B),用於方便檢視FPGA的狀態 。
- 2 個系統復位按鍵, 採用專用的復位晶片,用於控制晶片的系統復位 ;
- 4 個使用者發光二極體 LED,包括2個單色LED和2個RBG LED ,均連線在PL端進行控制;
- 2 個FPGA狀態指示燈 ,連線到FPGA的DONE和INIT引腳上,用於標識FPGA配置完成以及初始化狀態。
- 3個電源狀態指示燈,分別用於標識電源輸入有效,除錯口輸入有效,以及電源模式輸出有效。
- 2 個 PL 控制按鍵,4個微型撥碼開關,均連線在PL端。
- 一片IIC介面的溫度感測器晶片,可用於檢測環境溫度。
- LCD螢幕介面,採用RGB888時序介面,支援顯示螢幕 以及觸控功能。
- 板卡設計有OLCD螢幕介面,採用IIC介面,支援簡單內容的顯示。
- 一路風扇控制介面,12V供電,支援PWM風扇調速 。
- 2 路 40 針的擴充套件口(2.54mm 間距),用於擴充套件 ZYNQ 的 PL 部分的 IO。
2,結構尺寸
開發板的尺寸為精簡的 80mm x 75mm, PCB 採用 10 層板設計。板子四周有 4 個螺絲定位孔,用於固定開發板,定位孔的孔徑為 2.5mm(直徑),下圖為整個板卡的結構示意圖:
板卡實物圖如下 :
3,電源設計
3.1 電源輸入
採用USB TYPE-C電源輸入為板卡供電,供電的USB聯結器位號為 J21,LED9為電源輸入指示燈 ,當電源輸入有效時,LED9點亮 。
3.2 PD協議
透過CH224K晶片提供 PD 供電支援 ,支援5V,9V,12V 等電壓請求,預設輸入配置為12V 。
CH224 單晶片整合 USB PD 等多種快充協議,支援 PD3.0/2.0,BC1.2 等升壓快充協議,支援 4V 至 22V 輸入電壓,自動檢測VCONN 及模擬 E-Mark 晶片,最高支援 100W 功率,內建 PD 通訊模組,整合度高,外圍精簡。整合輸出電壓檢測功能,並且提供過溫、過壓保護等功能。可廣泛應用於各類電子裝置擴充高功率輸入如無線充電器、電動牙刷、充電剃鬚刀、鋰電池電動工具等各類應用場合。
CH224K 使用 Type-C 母口供電,電平配置支援 5/9/12/15/20V(圖中電平方式配置為 12v),透過修改 CFG1 ,CFG2,CFG3的連線關係來配置請求電壓 ,使用者可修改 CFG 引腳的配置來調整輸入請求電壓 。實際請求的電壓取決於電源介面卡支援的輸出模式 。
3.3 排針供電
板卡還設計有一路排針的電源介面 ,可作為電源輸入或輸出使用 。排針位號為 J6 , 為 2.54mm 間距的 4PIN 單排排針 。
當使用者不方便使用 Type-C 介面供電時, 也可使用該排針介面為板卡進行供電 ,輸入電壓支援 5V- 15V 範圍 。
或者使用 Type-C 介面供電時,該介面也可支援為其他模組提供供電 。
3.4 電源模組
採用 TI的型號為 TPS82130SILT的 MicroSiP 電源模組 ,為板上提供 1.0V, 1.5V,1.8V,3.3V,5.0V等多路供電 ;透過 TI 的 TPS51200 生成 DDR3 需要的 VTT 和 VREF 電壓。
TPS82130 是一款 17V 輸入 3A 降壓轉換器 MicroSiP 電源模組,經最佳化具有小解決方案尺寸和高效率等特性。該模組整合了一個同步降壓轉換器和一個電感器,以簡化設計、減少外部元件數量並縮小 PCB 面積。該模組採用緊湊的薄型封裝,適合透過標準表面貼裝裝置進行自動組裝。
TPS51200 器件是一款灌電流和拉電流雙倍資料速率 (DDR) 終端穩壓器,專門針對低輸入電壓、低成本、低噪聲的空間受限型系統而設計。
各個電源分配的功能如下表所示:
電源 | 功能 |
---|---|
+1.0V | ZYNQ的核心電壓 |
+1.5V | DDR3 , ZYNQ Bank502 |
+1.8V | ZYNQ 輔助電壓, ZYNQ PLL, ZYNQ Bank501 VCCIO, 乙太網,USB2.0 等 |
+3.3V | ZYNQ VCCIO, 乙太網,串列埠,HDMI ,FLASH, EEPROM , SD card 等 |
+5.0V | LCD ,HDMI , 擴充套件介面 |
VREF, VTT | DDR3 |
因為 ZYNQ 的 PS 和 PL 部分的電源有上電順序的要求,在電路設計中,按照ZYQN 的電源要求設計,上電依次為 1.0V -> 1.5V -> 1.8 V -> 3.3V -> 5.0V 。下圖為電源的電路設計:
3.5 FPGA供電系統
ZYNQ 晶片的電源分 PS 系統部分和 PL邏輯部分,兩部分的電源分別是獨立工作。PS 系統部分的電源和 PL 邏輯部分的電源都有上電 順序,不正常的上電順序可能會導致 ARM 系統和 FPGA 系統無法正常工作。
PS 部分的電源有 VCCPINT、VCCPAUX、VCCPLL 和 PS VCCO。VCCPINT 為 PS 核心供電引腳,接 1.0V;VCCPAUX 為 PS 系統輔助供電引腳,接 1.8V;VCCPLL 為 PS 的內部時鐘PLL 的電源供電引腳,也接 1.8V;PS VCCO 為 BANK 的電壓,包含 VCCO_MIO0,CCO_MIO1 和 VCCO_DDR,根據連線的外設不同,連線的電源電源也會不同,在該核心板上,VCC_MIO0 連線 3.3V, VCCO_MIO1 連線 1.8V,VCCO_DDR 連線 1.5V。PS 系統要求上電順序分別為先 VCCPINT 供電,然後 VCCPAUX 和 VCCPLL,最後為 PS VCCO。斷電的順序則相反。
PL 部分的電源有 VCCINT, VCCBRAM, VCCAUX 和 VCCO。VCCPINT 為 FPGA 核心供電引腳,接 1.0V;VCCBRAM 為 FPGA Block RAM 的供電引腳;接 1.0V;VCCAUX 為 FPGA輔助供電引腳, 接 1.8V;VCCO 為 PL 的各個 BANK 的電壓,包含 BANK13,BANK34,BANK35,在 AX7020 開發板上,BANK 的電壓連線 3.3V。PL 系統要求上電順序分別為先VCCINT 供電,再是 VCCBRAM, 然後是 VCCAUX,最後為 VCCO。如果 VCCINT 和 VCCBRAM的電壓一樣,可以同時上電。斷電的順序則相反。
4,ZYNQ7000
4.1 主晶片介紹
開發板使用的是 Xilinx 公司的 Zynq7000 系列的晶片,型號為 XC7Z020-2CLG484I。
zynq7000系列的結構如下圖所示。晶片的 PS 系統整合了兩個 ARM Cortex™-A9 處理器,AMBA®互連,內部儲存器,外部儲存器介面和外設,外設主要包括 USB 匯流排介面,乙太網介面,SD/SDIO 介面,I2C 匯流排介面,CAN 匯流排介面,UART 介面,GPIO 等。
PL端結構與A7系列相似,大體就包括電源模組、時鐘CMT、IO模組(IOB、GTP、memory interface、pcie)、CLB、BRAM、GTP、DSP、jtag除錯口等。
PS端包含1個APU單元,APU內有兩個cotex-a9核用於運算,一個SCU用於處理資料的一致性,然後包含L1、L2級快取,一個GIC用於中斷控制,一個256KB SRAM用於程式執行,另外包含TTC、看門狗、DAP除錯口等。PS端還包含一個Central Interconnect,用於互連IOP(CAN、SPI、UART、SD、USB、ETHERNET等外設),互連flash,互連DDR,互連OCM Interconnect。PS端還包含clock生成模組、復位模組等。
4.2 ZYNQ7000命名規則
Zynq其命名規則遵循一定的規則和約定。型號由系列代號,數字序列,速度等級,封裝型別,溫度等級等部分組成, 例如,Zynq-7000系列包括Zynq-7010、Zynq-7020、Zynq-7030、Zynq-7040、Zynq-7100、等型號,其中數字和字母的組合表示不同的晶片效能等級,速度等級包括 -1 ,-L1,-2 ,-L2,-3等,溫度等級支援商業級,工藝級等。詳細內容見於下圖 :
4.3 晶片資源
PS 系統部分的主要引數如下:
- 基於 ARM 雙核 CortexA9 的應用處理器
- 每個 CPU 32KB 1 級指令和資料快取,512KB 2 級快取 2 個 CPU 共享
- 片上 boot ROM 和 256KB 片內 RAM
- 外部儲存介面,支援 16/32 bit DDR2、DDR3 介面
- 兩個千兆網路卡支援:發散-聚集 DMA ,GMII,RGMII,SGMII 介面
- 兩個 USB2.0 OTG 介面,每個最多支援 12 節點
- 兩個 CAN2.0B 匯流排介面
- 兩個 SD 卡、SDIO、MMC 相容控制器
- 2 個 SPI,2 個 UARTs,2 個 I2C 介面
- 4 組 32bit GPIO,54(32+22)作為 PS 系統 IO,64 連線到 PL
- PS 內和 PS 到 PL 的高頻寬連線
PL 邏輯部分的主要引數如下:
- 邏輯單元 Logic Cells:85K
- 查詢表 LUTs: 53,200
- 觸發器(flip-flops): 106,400
- 乘法器 18x25MACCs:220
- Block RAM:4.9 Mb
- 兩個 AD 轉換器,可以測量片上電壓、溫度感應和高達 17 外部差分輸入通道,最大轉換速率為1MBPS
4.4 各bank電壓
該主晶片的各個BANK功能以及BANK描述如下 :
FPGA的器件管腳按照Bank進行劃分,每個Bank獨立供電,以使FPGA I/O適應不同電壓標準,增強I/O設計的靈活性。主晶片各個板卡的設計如下表:
BANK | 設計電壓 | 備註 |
---|---|---|
BANK0 | 3.3V | 配置BNAK |
BANK13 | 3.3V | PL_IO , HR BANK |
BANK33 | 3.3V | PL_IO , HR BANK |
BANK34 | 3.3V | PL_IO , HR BANK |
BANK35 | 1.8V | PL_IO , HR BANK |
BANK500 | 3.3V | PS_MIO |
BANK501 | 1.8V | PS_MIO |
BANK502 | 1.5V | PS_DDR |
4.5 除錯介面
板卡整合由一路 USB JTAG 口,整合有JTAG和UART功能,透過 USB 線及板載的 JTAG 電路對 ZYNQ 系統進行除錯和下載,無需外接模擬器和串列埠偵錯程式。使用者無需購買額外的下載器,只要一根 USB 線就能進行 ZYNQ 的開發和除錯了,除錯的USB介面位號為 J8 。當除錯USN輸入有效時,LED10會點亮。
透過 FT2232H 提供JTAG和UART支援 。FT2232H是一個USB2.0高速(每秒480兆位)至UART/FIFO 晶片。具有在多種工業標準序列或並行介面配置的能力。有兩個多協議同步序列引擎(MPSSE)允許使用JTAG,I2C和SPI兩個通道同時進行通訊。多協議同步序列引擎 (MPSSE) 是某些 FTDI 客戶端 IC 的一項功能,允許模擬多種同步序列協議,包括 SPI、I2C 和 JTAG。
5,時鐘配置
板上分別為 PS 系統和 PL 邏輯部分提供了有源時鐘, PS 系統和 PL 邏輯可以單獨工作。
5.1 PS系統時鐘源
ZYNQ 晶片透過開發板上的 X1 晶振為 PS 部分提供 33.333MHz 的時鐘輸入,3.3V 供電。時鐘的輸入連線到 ZYNQ 晶片的 BANK500 的 PS_CLK_500 的管腳上。其原理圖如圖 所示:
時鐘引腳分配:
訊號名稱 | ZYNQ 引腳 |
---|---|
PS_CLK_500 | F7 |
5.2 PL系統時鐘源
板上提供了單端 50MHz 的 PL 系統時鐘源,3.3V 供電。晶振輸出連線到FPGA 的全域性時鐘(MRCC),這個 GCLK 可以用來驅動 FPGA 內的使用者邏輯電路。該時鐘源的原理圖如圖所示
時鐘引腳分配:
訊號名稱 | ZYNQ 引腳 | ZYNQ IO 電平 |
---|---|---|
FPGA_CLK_50M | Y19 | 3.3V |
6,PS端設計
6.1 啟動模式配置
板卡支援三種啟動模式。這三種啟動模式分別是 JTAG 除錯模式,QSPI FLASH 和 SD 卡啟動模式。ZYNQ 晶片上電後會檢測響應 MIO 口的電平來決定那種啟動模式。使用者可以透過核心板上的跳線來選擇不同的啟動模式 。
ZYNQ7000 完整的啟動模式MIO配置如下表 (節選自UG585):
6.2 QSPI FLASH
開發板配有一片 256Mbit 大小的 Quad-SPI FLASH 晶片,型號為 N25Q128A13ESE40F ,它使用3.3V CMOS 電壓標準。由於 QSPI FLASH 的非易失特性,在使用中, 它可以作為系統的啟動裝置來儲存系統的啟動映象。這些映象主要包括 FPGA 的 bit 檔案、ARM 的應用程式程式碼以及其它的使用者資料檔案。
SPI FLASH 連線到 ZYNQ 晶片的 PS 部分 BANK500 的 GPIO 口上,在系統設計中需要配置這些 PS 端的 GPIO 口功能為 QSPI FLASH 介面。
配置晶片引腳分配:
訊號名稱 | ZYNQ 引腳名 | ZYNQ 引腳號 | ZYNQ IO 電平 |
---|---|---|---|
PS_CFG_SPI_CS | PS_MIO1_500 | A1 | 3.3V |
PS_CFG_SPI_DQ0 | PS_MIO2_500 | A2 | 3.3V |
PS_CFG_SPI_DQ1 | PS_MIO3_500 | F6 | 3.3V |
PS_CFG_SPI_DQ2 | PS_MIO4_500 | E4 | 3.3V |
PS_CFG_SPI_DQ3 | PS_MIO5_500 | A3 | 3.3V |
PS_CFG_SPI_SCLK | PS_MIO6_500 | A4 | 3.3V |
6.3 EMMC
板配有一片大容量的 8GB 大小的 eMMC FLASH 晶片,型號為MTFC8GAKAJCN-4M,它支援 JEDEC e-MMC V5.0 標準的 HS-MMC 介面,電平支援 1.8V或者 3.3V。eMMC FLASH 和 ZYNQ 連線的資料寬度為 4bit。
由於 eMMC FLASH 的大容量和非易失特性,在 ZYNQ 系統使用中,它可以作為系統大容量的儲存裝置,比如儲存 ARM 的應用程式、系統檔案以及其它的使用者資料檔案。
EMMC 連線到了 ZYNQ 的 PS 端介面,介面採用 SD 模式。EMMC 具備體積小,容量大,使用方便,速度快等優點,資料時鐘可以達到 50MHZ。由於直接焊接在板上,因此可以在震動或者環境相對惡劣的場合使用。
eMMC FLASH 連線到 ZYNQ 的 PS 部分 BANK500 的 GPIO 口上,在系統設計中需要配置這些 PS 端的 GPIO 口功能為 EMMC 介面。
EMMC 的電路設計如下:
EMMC 的引數如下:
- 晶片型別:MTFC8GAKAJCN-4M
- 容量:8G Byte
- 廠家:Micron
EMMC晶片引腳分配:
訊號名稱 | ZYNQ 引腳名 | ZYNQ 引腳號 | ZYNQ IO 電平 |
---|---|---|---|
SD1_EMMC_DATA0 | PS_MIO10 | G7 | 3.3V |
SD1_EMMC_DATA1 | PS_MIO13 | A6 | 3.3V |
SD1_EMMC_DATA2 | PS_MIO14 | B6 | 3.3V |
SD1_EMMC_DATA3 | PS_MIO15 | E6 | 3.3V |
SD1_EMMC_CLK | PS_MIO12 | C5 | 3.3V |
SD1_EMMC_CMD | PS_MIO11 | B4 | 3.3V |
SD1_EMMC_RST | PS_MIO9 | C4 | 3.3V |
6.4 乙太網
板卡設計有一路10/100M/1000M乙太網RJ45介面, 可用於和電腦或其它網路裝置進行乙太網資料交換;
板上透過 Realtek RTL8211E-VL 乙太網 PHY 晶片使用者提供網路通訊服務 ,RTL8211E是Realtek瑞昱推出的一款高整合的網路接收PHY晶片,它符合10Base-T,100Base-TX和1000Base-T IEEE802.3標準,該晶片在網路通訊中屬於物理層,用於MAC與PHY之間的資料通訊。目前有RTL8211E-VB-CG、RTL8211E-VL-CG、RTL8211EG-VB-CG等三個版本。
乙太網 PHY 晶片是連線到 ZYNQ 的 PS 端 BANK501 的 GPIO 介面上。RTL8211E-VL 晶片支援 10/100/1000 Mbps 網路傳輸速率,透過 RGMII 介面跟 Zynq7000 PS 系統的 MAC 層進行資料通訊。RTL8211E-VL 支援MDI/MDX 自適應,各種速度自適應,Master/Slave 自適應,支援 MDIO 匯流排進行 PHY 的暫存器管理。
RTL8211E的電路設計如下:
RTL8211E-VL 上電會檢測一些特定的 IO 的電平狀態,從而確定自己的工作模式。配置電路以及配置項如下圖所示:
當網路連線到千兆乙太網時,FPGA 和 PHY 晶片 RTL8211E-VL 的資料傳輸時透過 RGMII匯流排通訊,傳輸時鐘為 125Mhz,資料在時鐘的上升沿和下降樣取樣。
當網路連線到百兆乙太網時,FPGA 和 PHY 晶片 RTL8211E-VL 的資料傳輸時透過 RMII匯流排通訊,傳輸時鐘為 25Mhz。資料在時鐘的上升沿和下降樣取樣。
乙太網引腳分配如下:
訊號名稱 | ZYNQ 引腳名 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|---|
ETH_GCLK | PS_MIO16_501 | D6 | 1.8V | RGMII 傳送時鐘 |
ETH_TXD0 | PS_MIO17_501 | E9 | 1.8V | 傳送資料 bit0 |
ETH_TXD1 | PS_MIO18_501 | A7 | 1.8V | 傳送資料 bit1 |
ETH_TXD2 | PS_MIO19_501 | E10 | 1.8V | 傳送資料 bit2 |
ETH_TXD3 | PS_MIO20_501 | A8 | 1.8V | 傳送資料 bit3 |
ETH_TXCTL | PS_MIO21_501 | F11 | 1.8V | 傳送使能訊號 |
ETH_RXCK | PS_MIO22_501 | A14 | 1.8V | RGMII 接收時鐘 |
ETH_RXD0 | PS_MIO23_501 | E11 | 1.8V | 接收資料 Bit0 |
ETH_RXD1 | PS_MIO24_501 | B7 | 1.8V | 接收資料 Bit1 |
ETH_RXD2 | PS_MIO25_501 | F12 | 1.8V | 接收資料 Bit2 |
ETH_RXD3 | PS_MIO26_501 | A13 | 1.8V | 接收資料 Bit3 |
ETH_RXCTL | PS_MIO27_501 | D7 | 1.8V | 接收資料有效訊號 |
ETH_MDC | PS_MIO52_501 | D10 | 1.8V | MDIO 管理時鐘 |
ETH_MDIO | PS_MIO53_501 | C12 | 1.8V | MDIO 管理資料 |
6.5 DDR
板上配有兩個的4Gbit(512MB)的DDR3晶片(共計8Gbit),型號為 MT41K256M16TW-107IT 。DDR的匯流排寬度共為32bit。該DDR3儲存系統直接連線到了ZYNQ處理系統(PS)的BANK 502的儲存器介面上。
DDR3 的硬體設計需要嚴格考慮訊號完整性,在電路設計和 PCB 設計的時候已經充分考慮了匹配電阻/終端電阻,走線阻抗控制,走線等長控制, 保證 DDR3 的高速穩定的工作。
DDR的電路設計如下圖 :
6.6 SD 卡
板包含了一個Micro型的SD卡介面,以提供使用者訪問SD卡儲存器,用於儲存ZYNQ晶片的BOOT程式,Linux作業系統核心, 檔案系統以及其它的使用者資料檔案。SDIO訊號與ZYNQ的PS BANK501的IO訊號相連,因為該BANK的VCCMIO設定為1.8V,但SD卡的資料電平為3.3V, 我們這裡透過 MAX13035EETE+ 電平轉換器來連線。
SD卡的電路設計如下:
SD 卡槽引腳分配
訊號名稱 | ZYNQ 引腳名 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|---|
SD0_SDIO_CLK | PS_MIO28 | A12 | 1.8V | SD時鐘訊號 |
SD0_SDIO_CMD | PS_MIO29 | E8 | 1.8V | SD命令訊號 |
SD0_SDIO_D0 | PS_MIO30 | A11 | 1.8V | SD資料Data0 |
SD0_SDIO_DATA1 | PS_MIO31 | F9 | 1.8V | SD資料Data1 |
SD0_SDIO_DATA2 | PS_MIO32 | C7 | 1.8V | SD資料Data2 |
SD0_SDIO_DATA3 | PS_MIO33 | G13 | 1.8V | SD資料Data3 |
SD0_SDIO_CATAD | PS_MIO34 | B12 | 1.8V | SD卡插入訊號 |
6.7 USB
板卡使用的USB2.0收發器是一個1.8V的,高速的支援ULPI標準介面的USB3320C-EZK。ZYNQ的USB匯流排介面和USB3320C-EZK收發器相連線,實現高速的USB2.0 Host模式和Slave模式的資料通訊。USB3320C的USB的資料和控制訊號連線到ZYNQ晶片PS端的BANK501的IO口上 。
USB2.0 引腳分配 :
訊號名稱 | ZYNQ 引腳名 | ZYNQ 引腳號 | 備註 |
---|---|---|---|
OTG_DATA4 | PS_MIO40 | E14 | USB 資料 Bit4 |
OTG_DIR | PS_MIO41 | C8 | USB 資料方向訊號 |
OTG_STP | PS_MIO42 | D8 | USB 停止訊號 |
OTG_NXT | PS_MIO43 | B11 | USB 下一資料訊號 |
OTG_DATA0 | PS_MIO44 | E13 | USB 資料 Bit0 |
OTG_DATA1 | PS_MIO45 | B9 | USB 資料 Bit1 |
OTG_DATA2 | PS_MIO46 | D12 | USB 資料 Bit2 |
OTG_DATA3 | PS_MIO47 | B10 | USB 資料 Bit3 |
OTG_CLK | PS_MIO48 | D11 | USB 時鐘訊號 |
OTG_DATA5 | PS_MIO49 | C14 | USB 資料 Bit5 |
OTG_DATA6 | PS_MIO50 | D13 | USB 資料 Bit6 |
OTG_DATA7 | PS_MIO51 | C10 | USB 資料 Bit7 |
OTG_RESETN | PS_MIO39 | C13 | USB 復位訊號 |
7,PL端外設
7.1 使用者LED
板卡設計有4 個使用者發光二極體 LED,包括2個單色LED和2個RBG LED ,均連線在PL端進行控制 ;
LED透過 TXS0108 電平轉換晶片連線到FPGA的引腳 , FPGA一側的的IO電壓為1.8V。當FPGA的IO電平為低時,LED點亮。
LED燈的電路設計如下 ;
LED的 引腳分配 :
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
PL_LED0 | B20 | 1.8V | 單色LED0 |
PL_LED1 | B21 | 1.8V | 單色LED1 |
PL_LED_R0 | A22 | 1.8V | RGB_LED0的紅色控制 |
PL_LED_G0 | A21 | 1.8V | RGB_LED0的綠色控制 |
PL_LED_B0 | B22 | 1.8V | RGB_LED0的藍色控制 |
PL_LED_R1 | E20 | 1.8V | RGB_LED1的紅色控制 |
PL_LED_G1 | D21 | 1.8V | RGB_LED1的綠色控制 |
PL_LED_B1 | E21 | 1.8V | RGB_LED1的藍色控制 |
7.2 按鍵
板卡設計有 2 個 PL 控制按鍵 ,連線在PL端 , FPGA一側的的IO電壓為1.8V ,當按鍵按下時,FPGA側檢測到高電平,按鍵鬆開時,檢測到低電平。按鍵的電路設計如下:
按鍵的引腳分配如下:
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
PL_BUTTON0 | C19 | 1.8V | |
PL_BUTTON1 | C22 | 1.8V |
7.3 編碼開關
板卡設計有4個微型撥碼開關,連線在PL端,FPGA一側的的IO電壓為1.8V 。
編碼開關的引腳分配如下:
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
PL_DIP_SW0 | C20 | 1.8V | |
PL_DIP_SW1 | D20 | 1.8V | |
PL_DIP_SW2 | D22 | 1.8V | |
PL_DIP_SW3 | E19 | 1.8V |
7.4 除錯串列埠
除錯串列埠設計在PL端,連線到FT2232晶片的串列埠收發引腳上,IO電平為3.3V。
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
PL_UART0_RX | V7 | 3.3V | ZYNQ_UART的RX端 |
PL_UART0_TX | V8 | 3.3V | ZYNQ_UART的TX端 |
7.5 EEPROM
板卡設計有一片 IIC 介面的 EEPROM ,型號為 M24C08-WDW6TP , 容量為 1Kbytes;
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
EEPROM_SDA | AB14 | 3.3V | |
EEPROM_SCL | AB15 | 3.3V |
7.6 風扇控制
板卡設計有一路風扇控制介面,12V供電,支援PWM風扇調速 。風扇的控制由 ZYNQ 晶片來控制,控制管腳連線到 FPGA的 IO ,如果 IO 電平輸出為高,MOSFET 管導通,風扇工作,如果 IO 電平輸出為低,風扇停止。板上的風扇設計圖如下圖 所示:
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
FAN_PWM_3V3 | W5 | 3.3V | 風扇控制,PWM訊號 |
7.7 OLED介面
板卡設計有OLCD螢幕介面,採用IIC介面,支援簡單內容的顯示。採用4PIN 2.54間距的單排排針,包括3.3V供電,地,SDA,SCL訊號 。
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
EEPROM_SDA | AB14 | 1.8V | |
EEPROM_SCL | AB15 | 1.8V |
7.8 溫度感測器
板卡設計有一片IIC介面的溫度感測器晶片,可用於檢測環境溫度。
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
SDA_TEM | V22 | 3.3V | |
SCL_TEM | W22 | 3.3V |
7.9 HDMI
板卡設計有一路 HDMI 影像影片輸出介面, 能實現 1080P 的影片影像傳輸;開發板上透過 FPGA 的差分 IO直接連線到 HDMI 介面的差分訊號和時鐘,在 FPGA 內部實現 HMDI 訊號的差分轉並行再進行編解碼,實現 DMI 數字影片輸入和輸出的傳輸解決方案,最高支援 1080P@60Hz 的輸入和輸出的功能。
板卡上採用 TPD12S016RKTR 晶片作為HDMI的介面防護晶片 。TPD12S016 是一款單晶片高畫質多媒體介面 (HDMI) 器件,具有自動方向感應 I2C 電壓電平轉換緩衝器、負載開關和整合式低電容高速靜電放電 (ESD) 瞬態電壓抑制 (TVS) 保護二極體。透過 55mA 限流 5V 輸出 (5V_OUT) 為 HDMI 電力線供電。5V_OUT 和熱插拔檢測 (HPD) 電路的控制與 LS_OE 控制訊號無關,其透過 CT_HPD 引腳進行控制,使得在啟用 HDMI 鏈路前即可啟用檢測方案(5V_OUT 和 HPD)。SDA、SCL 和 CEC 線路上拉到 A 側的 VCCA。在 B 側,CEC_B 引腳上拉到內部 3.3V 電源軌,SCL_B 和 SDA_B 均上拉到 5V 電源軌 (5V_OUT)。SCL 和 SDA 引腳滿足 I2C 規範,可驅動高達 750pF 電容負載,超出了 HDMI 1.4 規範。HPD_B 埠配有毛刺脈衝濾波器,可在插入 HDMI 聯結器時避免由插座跳起引起的錯誤檢測。TPD12S016 的 5V_OUT 引腳具有反向電流阻斷功能。系統斷電時,SCL_B、SDA_B 和 CEC_B 引腳也具有反向電流阻斷功能。
HDMI介面的引腳定義如下 :
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
HDMI_CLK_P | L18 | 3.3V | |
HDMI_CLK_N | L19 | 3.3V | |
HDMI_DATA_P0 | M15 | 3.3V | |
HDMI_DATA_N0 | M16 | 3.3V | |
HDMI_DATA_P1 | J15 | 3.3V | |
HDMI_DATA_N1 | K15 | 3.3V | |
HDMI_DATA_P2 | K16 | 3.3V | |
HDMI_DATA_N2 | L16 | 3.3V | |
HDMI_LOS_CE | P16 | 3.3V | |
HDMI_CT_HPD | H15 | 3.3V | |
HDMI_HPD | P15 | 3.3V | |
HDMI_SCL_3V3 | R16 | 3.3V | |
HDMI_SDA_3V3 | R15 | 3.3V | |
HDMI_CEC | N15 | 3.3V |
7.10 RGB_LCD
板卡設計有LCD螢幕介面,採用RGB888時序介面,支援顯示螢幕以及觸控功能 。採用FPC聯結器和螢幕相連線,FPC引腳定義相容正點原子的LCD RGB螢幕介面,使用者可自行購買正點原子的RGB LCD顯示螢幕進行開發除錯 。
RGB_LCD介面的引腳定義如下 :
訊號名稱 | ZYNQ 引腳號 | ZYNQ IO 電平 | 備註 |
---|---|---|---|
LCD_R0 | W21 | 3.3V | 8 位 RED 資料線0 |
LCD_R1 | V20 | 3.3V | 8 位 RED 資料線1 |
LCD_R2 | AB22 | 3.3V | 8 位 RED 資料線2 |
LCD_R3 | W20 | 3.3V | 8 位 RED 資料線3 |
LCD_R4 | AB21 | 3.3V | 8 位 RED 資料線4 |
LCD_R5 | AA22 | 3.3V | 8 位 RED 資料線5 |
LCD_R6 | Y21 | 3.3V | 8 位 RED 資料線6 |
LCD_R7 | AA21 | 3.3V | 8 位 RED 資料線7 |
LCD_G0 | Y20 | 3.3V | 8 位 GREEN 資料線0 |
LCD_G1 | AB20 | 3.3V | 8 位 GREEN 資料線1 |
LCD_G2 | V18 | 3.3V | 8 位 GREEN 資料線2 |
LCD_G3 | AA18 | 3.3V | 8 位 GREEN 資料線3 |
LCD_G4 | AB17 | 3.3V | 8 位 GREEN 資料線4 |
LCD_G5 | AA17 | 3.3V | 8 位 GREEN 資料線5 |
LCD_G6 | AB16 | 3.3V | 8 位 GREEN 資料線6 |
LCD_G7 | AA16 | 3.3V | 8 位 GREEN 資料線7 |
LCD_B0 | Y16 | 3.3V | 8 位 BLUE 資料線0 |
LCD_B1 | Y15 | 3.3V | 8 位 BLUE 資料線1 |
LCD_B2 | U21 | 3.3V | 8 位 BLUE 資料線2 |
LCD_B3 | U20 | 3.3V | 8 位 BLUE 資料線3 |
LCD_B4 | U19 | 3.3V | 8 位 BLUE 資料線4 |
LCD_B5 | V19 | 3.3V | 8 位 BLUE 資料線5 |
LCD_B6 | Y18 | 3.3V | 8 位 BLUE 資料線6 |
LCD_B7 | V17 | 3.3V | 8 位 BLUE 資料線7 |
LCD_CLK | W16 | 3.3V | 畫素時鐘。 |
LCD_HSYNC | W15 | 3.3V | 水平同步訊號。 |
LCD_VSYNC | AA14 | 3.3V | 垂直同步訊號。 |
LCD_DE | Y14 | 3.3V | 資料使能訊號。 |
LCD_BL | V15 | 3.3V | 背光控制訊號。 |
LCD_RESET | U16 | 3.3V | LCD 復位訊號(低電平有效) |
TP_CS | U22 | 3.3V | 電容觸控式螢幕復位訊號(CT_RST) |
TP_MOSI | U17 | 3.3V | 電容觸控式螢幕 IIC_SDA 訊號(CT_SDA) |
TP_MISO | T21 | 3.3V | NC,電容觸控式螢幕未用到 |
TP_SCK | V13 | 3.3V | 電容觸控式螢幕 IIC_SCL 訊號(CT_SCL) |
TP_PEN | T22 | 3.3V | 電容觸控式螢幕中斷訊號(CT_INT) |
7.11 擴充套件口
擴充套件口 J2 和J30J均為 40 管腳的 2.54mm 的雙排聯結器,為使用者擴充套件更多的外設和介面,擴充套件口上包含 5V 電源 1 路,3.3V 電源 2 路,地 3 路,IO 口 34 路。IO 口的訊號連線到 ZYNQ PL 的 BANK13 和 BANK34 上,電平為 3.3V。
切勿直接跟 5V 裝置直接連線,以免燒壞 FPGA。如果要接 5V 裝置,需要接電平轉換晶片。
在擴充套件口和 FPGA 連線之間串聯了 ESD (Electro-Static discharge , 靜電放電) 防護晶片 ,用於保護 FPGA 以免外界電壓或電流過高造成損壞。
PCB 設計上 P 和 N 的走線使用差分走線,控制差分阻抗為 100 歐姆。擴充套件口(J2 J3),ESD的電路如圖 下所示:
J2 擴充套件口原理圖
J3 擴充套件口原理圖
ESD防護晶片原理圖(部分)
ESD防護晶片具有靜電和浪湧保護功能,選用型號為:RCLAMP0524P , 具體的引數如下。
屬性 | 引數值 |
---|---|
商品型別 | 靜電和浪湧保護(TVS/ESD) |
反向截止電壓(Vrwm) | 5V |
最大鉗位電壓 | 12V |
峰值脈衝電流(Ipp)@10/1000us | 3.5A@8/20us |
擊穿電壓 | 5.5V |
型別 | TVS |
J2擴充套件口引腳分配
J2引腳 | 訊號名稱 | ZYNQ引腳名 | ZYNQ引腳號 | 備註 |
---|---|---|---|---|
PIN1 | GND | 地 | ||
PIN2 | VCC5V0 | 5.0V電源輸出 | ||
PIN3 | IO0_N1 | W12 | ||
PIN4 | IO0_P1 | V12 | ||
PIN5 | IO0_N2 | AB12 | ||
PIN6 | IO0_P2 | AA12 | ||
PIN7 | IO0_N3 | Y10 | ||
PIN8 | IO0_P3 | Y11 | ||
PIN9 | IO0_N4 | AB11 | ||
PIN10 | IO0_P4 | AA11 | ||
PIN11 | IO0_N13 | U9 | ||
PIN12 | IO0_P13 | U10 | ||
PIN13 | IO0_N6_CC | AA8 | 連線到ZYNQ的CC引腳上 | |
PIN14 | IO0_P6_CC | AA9 | 連線到ZYNQ的CC引腳上 | |
PIN15 | IO0_N7_CC | Y8 | 連線到ZYNQ的CC引腳上 | |
PIN16 | IO0_P7_CC | Y9 | 連線到ZYNQ的CC引腳上 | |
PIN17 | IO0_N8_CC | Y5 | 連線到ZYNQ的CC引腳上 | |
PIN18 | IO0_P8_CC | Y6 | 連線到ZYNQ的CC引腳上 | |
PIN19 | IO0_N9 | W10 | ||
PIN20 | IO0_P9 | W11 | ||
PIN21 | IO0_N10 | AB4 | ||
PIN22 | IO0_P10 | AB5 | ||
PIN23 | IO0_N5 | AB9 | ||
PIN24 | IO0_P5 | AB10 | ||
PIN25 | IO0_N12 | AA4 | ||
PIN26 | IO0_P12 | Y4 | ||
PIN27 | IO0_N11 | V9 | ||
PIN28 | IO0_P11 | V10 | ||
PIN29 | IO0_N14 | AB1 | ||
PIN30 | IO0_P14 | AB2 | ||
PIN31 | IO0_N16 | AB6 | ||
PIN32 | IO0_P16 | AB7 | ||
PIN33 | IO0_N15 | AA6 | ||
PIN34 | IO0_P15 | AA7 | ||
PIN35 | IO0_N17 | V4 | ||
PIN36 | IO0_P17 | V5 | ||
PIN37 | DGND | - | - | 地 |
PIN38 | DGND | - | - | 地 |
PIN39 | VCC3V3 | - | - | 3.3V電源輸出 |
PIN40 | VCC3V3 | - | - | 3.3V電源輸出 |
J3擴充套件口引腳分配
J3引腳 | 訊號名稱 | ZYNQ引腳名 | ZYNQ引腳號 | 備註 |
---|---|---|---|---|
PIN1 | GND | - | - | 地 |
PIN2 | VCC5V0 | - | - | 5.0V電源輸出 |
PIN3 | IO0_N18 | K18 | ||
PIN4 | IO0_P18 | J18 | ||
PIN5 | IO0_N19 | J17 | ||
PIN6 | IO0_P19 | J16 | ||
PIN7 | IO0_N20 | M17 | ||
PIN8 | IO0_P20 | L17 | ||
PIN9 | IO0_N21 | J22 | ||
PIN10 | IO0_P21 | J21 | ||
PIN11 | IO0_N22 | M18 | ||
PIN12 | IO0_P22 | N18 | ||
PIN13 | IO0_N23 | K20 | 連線到ZYNQ的CC引腳上 | |
PIN14 | IO0_P23 | K19 | 連線到ZYNQ的CC引腳上 | |
PIN15 | IO0_N24 | N20 | 連線到ZYNQ的CC引腳上 | |
PIN16 | IO0_P24 | N19 | 連線到ZYNQ的CC引腳上 | |
PIN17 | IO0_N25 | M20 | 連線到ZYNQ的CC引腳上 | |
PIN18 | IO0_P25 | M19 | 連線到ZYNQ的CC引腳上 | |
PIN19 | IO0_N26 | R21 | ||
PIN20 | IO0_P26 | R20 | ||
PIN21 | IO0_N27 | L22 | ||
PIN22 | IO0_P27 | L21 | ||
PIN23 | IO0_N28 | T19 | ||
PIN24 | IO0_P28 | R19 | ||
PIN25 | IO0_N29 | M22 | ||
PIN26 | IO0_P29 | M21 | ||
PIN27 | IO0_N30 | P18 | ||
PIN28 | IO0_P30 | P17 | ||
PIN29 | IO0_N31 | P22 | ||
PIN30 | IO0_P31 | N22 | ||
PIN31 | IO0_N32 | T17 | ||
PIN32 | IO0_P32 | T16 | ||
PIN33 | IO0_N33 | P21 | ||
PIN34 | IO0_P33 | P20 | ||
PIN35 | IO0_N34 | T18 | ||
PIN36 | IO0_P34 | R18 | ||
PIN37 | DGND | - | - | 地 |
PIN38 | DGND | - | - | 地 |
PIN39 | VCC3V3 | - | - | 3.3V電源輸出 |
PIN40 | VCC3V3 | - | - | 3.3V電源輸出 |
8,其他資源
8.1 供電以及狀態燈
板卡設計有2 個FPGA狀態指示燈 ,連線到FPGA的DONE和INIT引腳上,用於標識FPGA配置完成以及初始化狀態。
板卡設計有3個電源狀態指示燈,分別用於標識電源輸入有效,除錯口輸入有效,以及電源模式輸出有效。
LED位號 | 功能 |
---|---|
LED5 | 3.3V電源輸出有效 |
LED6 | DONE訊號指示 |
LED7 | INIT訊號指示 |
LED8 | PS端復位這狀態 |
LED9 | 電源輸入有效 |
LED10 | USB_JTAG除錯輸入有效 |
8.2 對外介面
板卡對外介面列表如下:
位號 | 說明 |
---|---|
J21 | USB_TYPE_C電源輸入 |
J8 | USB_TYPE_C除錯輸入 |
P2 | HDMI輸出 |
P1 | RJ45網路介面 |
J5 | PL_UART,4PIN單排排針,2.54間距 |
J1 | 啟動模式選擇,4PIN單排排針,2.54間距 |
J6 | 電源輸入/輸出,4PIN單排排針,2.54間距 |
J7 | OLED顯示螢幕,4PIN單排排針,2.54間距 |
J2 | 擴充套件IO,40PIN排針 |
J3 | 擴充套件IO,40PIN排針 |
J4 | 風扇控制介面 |
J20 | RGB_LCD介面,FPC聯結器 |
9,技術交流
9.1 公眾號
歡迎關注微信公眾號【數字積木】,更精彩的內容等著你!
9.2 QQ群
【FPGA_ZYNQ】交流1群 :810689010
【FPGA_ZYNQ】交流2群 :606727905
如無法加群,可新增標註個人QQ號 :1455117034
9.3 github
數字積木github主頁連結如下:
https://github.com/Digital-Blocks-design
github主頁用於技術資料分享, 歡迎加星關注。