Zynq系列處理器包含了ARM和FPGA,與ARM處理器+FPGA這種兩個(gè)處理器相比最大的特點(diǎn)就是兩種結(jié)構(gòu)的數(shù)據(jù)交互在芯片內(nèi)部進(jìn)行。既節(jié)約了接口,有提升了交互速度。
內(nèi)部交互主要是使用AXI接口。AXI是一種主從接口。雖然看起來(lái)很復(fù)雜,但也是主機(jī)發(fā)送地址然后讀寫(xiě)數(shù)據(jù)。PS端通過(guò)芯片內(nèi)控制器來(lái)發(fā)送或者接收AXI接口信號(hào),和SPI之類(lèi)的主從接口一樣。
PL端通過(guò)IP核或者自寫(xiě)的邏輯程序收發(fā)AXI接口程序。
通過(guò)如下的圖(ZYNQ7000系列的)可以看出PS端的GP AXI連接一個(gè)控制器,HP AXI連接一個(gè)控制器。
如上圖所示,這個(gè)型號(hào)的GP AXI可以作為主機(jī)也可以作為從機(jī),來(lái)與PL端交互數(shù)據(jù)。HP AXI的傳輸速度快,通過(guò)Programmable Logic to Memory Interconnect可以連接到DDR控制器,可以訪問(wèn)DDR數(shù)據(jù)。流程是:PL端的邏輯程序發(fā)出AXI接口的時(shí)序信號(hào),Programmable Logic to Memory Interconnect接收到后轉(zhuǎn)化成可以訪問(wèn)DDR控制器的信號(hào)來(lái)讀寫(xiě)數(shù)據(jù)。