<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > Zynq-7000的柔性直流輸電橋臂控制器設計

Zynq-7000的柔性直流輸電橋臂控制器設計

作者: 時(shí)間:2016-09-12 來(lái)源:網(wǎng)絡(luò ) 收藏

引言

本文引用地址:http://dyxdggzs.com/article/201609/304014.htm

柔性直流輸電技術(shù)是基于電壓源換流器(VSC)的新一代直流輸電技術(shù),通過(guò)控制IGBT的通斷來(lái)實(shí)現子模塊投切狀態(tài)的轉換。閥控系統的根據接收到的子模塊16位電容電壓和32位狀態(tài)信息,生成子模塊控制指令,并下發(fā)到每個(gè)子模塊。由于子模塊的數量比較多(一個(gè)橋臂為576個(gè)子模塊),需要傳輸的數據量比較大(總共27.6 Kb),并且閥控系統對控制周期有嚴格的要求(控制過(guò)程嚴格控制在100μs內)。

目前的普遍采用DSP+的設計架構,將接收到的數據處理后傳送給DSP,DSP對數據進(jìn)行故障判斷生成控制指令,讀取控制指令并通過(guò)光纖發(fā)送到子模塊。兩者之間采用32位數據總線(xiàn)進(jìn)行數據交互,數據傳輸速率低于1Gb/s,傳輸子模塊數據大概需要30μs,占用了控制周期較長(cháng)的時(shí)間,降低了閥控系統的控制實(shí)時(shí)性。

Xilinx的Zynq-7000系列芯片將FPGA和集成到一個(gè)芯片上,兩者之間可以通過(guò)64位的內存映射型AXI接口進(jìn)行雙向數據傳輸,理論帶寬為9.6 Gb/s。和FPGA直接通過(guò)數據總線(xiàn)進(jìn)行通信,理論數據線(xiàn)寬度達到1 024位,對于突發(fā)長(cháng)度,最多支持256位,能夠極大地提高FPGA和的數據通信傳輸率,保證系統實(shí)時(shí)運行。

本文設計的采用Zynq-xc7z020芯片,使用總線(xiàn)取代了DSP+FPGA的數據總線(xiàn),同時(shí)利用ARM雙核Cortex—A9處理子系統和豐富的外設資源,進(jìn)一步提升了橋臂控制器的功能。

1 系統總體結構設計

本文所設計的橋臂控制器由集成在Zynq—xc7z020內的雙核ARM Cortex—A9 MPCore處理器(CPU0+CPU1)所控制,這兩個(gè)處理器可以同時(shí)運行各自獨立的操作系統和軟件程序,而且可以通過(guò)片內RAM進(jìn)行通信。

為了保證ARM對FPGA中斷的實(shí)時(shí)響應,將CPU1配置為運行裸機程序,執行中斷服務(wù)函數,主要完成故障檢測和控制指令生成。而CPU0運行操作系統,提供用戶(hù)控制圖形界面和網(wǎng)絡(luò )通信等功能。CPU0和CPU1通過(guò)片內256K的RAM進(jìn)行數據通信,這種雙核架構稱(chēng)為不對稱(chēng)的多處理機系統(Asymmetric MultiProcessing,AMP)模式。

Zynq-xc7z020芯片的FPGA接收到子模塊的電容電壓數據后,進(jìn)行排序及冗余處理,然后利用AXI_Master Connector的AXI總線(xiàn)IP核將數據轉換為總線(xiàn)數據格式,通過(guò)ARM與FPGA的64位AXI HP(High Performance)高速接口傳輸到外部的DDR3中,數據傳輸完畢后,FPGA向ARM的CPU1發(fā)送一個(gè)中斷請求。

ARM的CPU1接收到中斷后,從DDR3內存讀取數據并進(jìn)行故障判斷處理,同時(shí)通知CPU0的操作系統,在圖形界面實(shí)時(shí)顯示數據變化并通過(guò)網(wǎng)口向后臺發(fā)送事件信息。

CPU1數據處理完畢后,生成子模塊控制指令并寫(xiě)入DDR3指定內存區,FPGA通過(guò)AXI_Master_Connector總線(xiàn)IP核從DDR3讀取數據,并通過(guò)光纖發(fā)送到每個(gè)子模塊。

運行的CPU0作為主節點(diǎn),提供HDMI圖形界面,并負責系統上電硬件初始化、啟動(dòng)CPU1、將位配置文件燒寫(xiě)到FPGA中和升級系統軟件等工作。方案的整體框架如圖1所示。

Zynq-7000的柔性直流輸電橋臂控制器設計

2 硬件平臺設計

橋臂控制器的硬件平臺主要分為ARM和FPGA兩部分。使用Xilinx XPS硬件設計軟件,配置Zynq處理器中ARM部分的外設,如圖2所示。

Zynq-7000的柔性直流輸電橋臂控制器設計

程序代碼和FPGA的配置文件固化在外部Quad—SPI Flash中,Enet0用來(lái)與后臺進(jìn)行網(wǎng)絡(luò )通信,SD0可以?huà)旖覵D卡,I2C0用來(lái)掛接RTC8564JE芯片,I2C1控制器配置HDMI輸出芯片Sil9134,系統使用UART1輸出調試信息。

FPGA部分的硬件平臺包括數據預處理的IP核、AXI總線(xiàn)控制IP核(IN_AXI_MASTER和OUT_AXI_MASTER),以及產(chǎn)生中斷的irq_gen_0 IP核,構建了FPGA、ARM和DDR3的數據流通道,如圖3所示。

Zynq-7000的柔性直流輸電橋臂控制器設計

添加AXI總線(xiàn)控制IP核時(shí),需指定AXI協(xié)議為AXI4,數據帶寬為64位(最高1 024位),并將ARM與FPGA的64位AXI HP接口映射到DDR3內存的高端1 MB地址(0x3FF0 0000~0x3FFF FFFF),用來(lái)存儲接收到的子模塊數據以及生成的控制指令。

3 嵌入式軟件設計

Zynq-xc7z020芯片是以ARM作為核心的,上電后的運行流程如下:

①進(jìn)入FSBL(First Stage Boot Loader),對電路板進(jìn)行配置初始化;

②將位文件燒入FPGA,FPGA按照位中的方式運行;

③進(jìn)入SSBL(Second Stage Boot Loader),u-boot初始化操作系統的運行環(huán)境,引導Linux內核,隨后將控制權交給雙核ARM中的CPU0,CPU0負責啟動(dòng)響應FPGA中斷的CPU1。

3.1 FSBL軟件設計

FSBL主要完成Zynq—xc7z020芯片的啟動(dòng)、內存的初始化、I/O的中斷初始化,以及HDMI的配置。其中,HDMI接口芯片Sil9134通過(guò)IIC1來(lái)配置。

FSBL中I2C的主要C程序如下:

//初始化I2C控制器

XIicPs_LookupConfig(…);

XIicPs_CfgInitialize(…);

//設置I2C時(shí)鐘頻率

XIicPs_SetSClk(…);

//發(fā)送數據

iic_writex(…);

通過(guò)配置Sil9134的0x72基址和0x7A基址兩個(gè)寄存器,初始化芯片硬件,進(jìn)入正常工作模式。

3.2 啟動(dòng)AMP工作模式

Zynq—xc7z020芯片的ARM雙核共享1G的DDR3內存、512K的L2 Cache和中斷控制器,為了避免雙核同時(shí)訪(fǎng)問(wèn)這些資源導致沖突,系統采用了以下措施:

①在CPU0上運行的Linux使用DDR3內存的低端768 MB空間,CPU1使用隨后的255 MB內存空間,高端的1 MB空間用來(lái)存儲FPGA讀寫(xiě)的數據。

②CPU1禁用L2 Cache,CPU0上的Linux完全占用L2 Cache。

③FPGA發(fā)送給CPU1的中斷使用私有中斷控制器,發(fā)送給CPU0的中斷使用共享中斷控制器,兩者互不干擾。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>