加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

Zynq的AMP多核處理

2023/07/15
3740
閱讀需 3 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

寫(xiě)的是Zynq 7000系列的,arm有兩個(gè)核。主要有AMP和SMP兩種方式,SMP是兩個(gè)核運(yùn)行一個(gè)操作系統(tǒng),跑LINUX的話,使能SMP,資源會(huì)自動(dòng)分配給兩個(gè)核運(yùn)行。AMP是兩個(gè)核獨(dú)立運(yùn)行,每個(gè)核可以運(yùn)行操作系統(tǒng)也可以裸機(jī)運(yùn)行。

兩個(gè)CPU的啟動(dòng)方式是CPU0先運(yùn)行,然后根據(jù)需要啟動(dòng)CPU1。

ZYNQ會(huì)先運(yùn)行一個(gè)fsbl程序,再運(yùn)行應(yīng)用程序。因此啟動(dòng)CPU1的工作可以在fsbl中做,也可以在應(yīng)用程序中做。

1 在FSBL中啟動(dòng)CPU1

FSBL程序可以在VITIS這個(gè)軟件中生成。

在FSBL中添加以下程序來(lái)啟動(dòng)CPU1

Xil_Out32(0XFFFFFFF0, CPU1程序地址);dmb(); sev(); //喚醒 CPU1

此段程序加在FSBL程序的HandoffAddress = LoadBootImage()之后,LoadBootImage()的作用的是將程序拷貝到ddr中,先將程序拷貝到ddr中,程序才能跳轉(zhuǎn)運(yùn)行。

1.1 CPU0運(yùn)行裸機(jī)程序

fsbl啟動(dòng)兩個(gè)CPU的應(yīng)用程序

1.2?CPU0運(yùn)行操作系統(tǒng)(Linux

uboot就是CPU0的應(yīng)用程序

2 應(yīng)用程序啟動(dòng)CPU1

2.1 CPU0運(yùn)行裸機(jī)程序

在CPU0的應(yīng)用程序中喚醒CPU1,程序一樣,如下:

Xil_Out32(0XFFFFFFF0, CPU1程序地址);dmb(); sev(); //喚醒 CPU1

2.2 CPU0運(yùn)行操作系統(tǒng)(Linux)

可以在UBOOT中喚醒CPU1,也可以在運(yùn)行內(nèi)核后喚醒CPU1。

 

 

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
ABLS2-4.000MHZ-D4Y-T 1 Abracon Corporation CRYSTAL 4.0000MHZ 18PF SMD

ECAD模型

下載ECAD模型
$0.26 查看
SFH6186-4T 1 Vishay Intertechnologies Transistor Output Optocoupler, 1-Element, 5300V Isolation,
$0.97 查看
KSZ8863MLLI 1 Microchip Technology Inc DATACOM, LAN SWITCHING CIRCUIT, PQFP48
$5.09 查看

相關(guān)推薦

電子產(chǎn)業(yè)圖譜