女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Zynq-7000的256KB OCM應(yīng)用程序運(yùn)行

454398 ? 來源:賽靈思中文社區(qū) ? 作者:賽靈思中文社區(qū) ? 2020-11-02 16:12 ? 次閱讀

某些應(yīng)用程序小,可以全部放在Zynq-7000的256KB OCM上運(yùn)行。這時(shí),修改FSBL,可以把APP和FSBL編譯成一個(gè)可執(zhí)行文件,F(xiàn)SBL初始化硬件后,就直接運(yùn)行應(yīng)用程序。

這種情況下,單板沒有DDR

1. DDR

缺省的FSBL,使用宏XPAR_PS7_DDR_0_S_AXI_BASEADDR屏蔽了很多代碼,不會(huì)初始化存儲(chǔ)設(shè)備,比如QSPI Flash,也不會(huì)加載FPGA。
對(duì)于只使用OCM上運(yùn)行程序的場(chǎng)景,需要減少宏XPAR_PS7_DDR_0_S_AXI_BASEADDR屏蔽的代碼,也就是只屏蔽DDRInitCheck()的定義和調(diào)用就可以了。

下面屏蔽DDRInitCheck()的調(diào)用

int main(void)
{
   ... ...
#ifdef XPAR_PS7_DDR_0_S_AXI_BASEADDR

    /*
     * DDR Read/write test 
     */
	Status = DDRInitCheck();
	if (Status == XST_FAILURE) {
		fsbl_printf(DEBUG_GENERAL,"DDR_INIT_FAIL /r/n");
		/* Error Handling here */
		OutputStatus(DDR_INIT_FAIL);
		/*
		 * Calling FsblHookFallback instead of Fallback
		 * since, devcfg driver is not yet initialized
		 */
		FsblHookFallback();
	}

#endif  // XPAR_PS7_DDR_0_S_AXI_BASEADDR

   ... ...
}

下面屏蔽DDRInitCheck()的定義

#ifdef XPAR_PS7_DDR_0_S_AXI_BASEADDR
u32 DDRInitCheck(void)
{
   ... ...
}
#endif  // XPAR_PS7_DDR_0_S_AXI_BASEADDR

2. 初始化QSPI

QSPI Flash大于16MB時(shí),超出了線性模式的尋址范圍。FSBL會(huì)把QSPI初始化為IO模式。
如果沒有DDR,會(huì)導(dǎo)致不能加載FPGA。為了解決這個(gè)問題,在加載FPGA前,強(qiáng)行把QSPI Flash設(shè)置成16MB大小,初始化為線性模式。加載FPGA后,再按正常模式初始化QSPI Flash。因此,F(xiàn)PGA的bit文件,必須放在QSPI Flash的前16MB里。

在第一次初始化QSPI Flash時(shí),強(qiáng)行把QSPI Flash初始化為線性模式,可以正常加載FPGA。

int main(void)
{
   ... ...

	if (BootModeRegister == QSPI_MODE) {
		fsbl_printf(DEBUG_GENERAL,"Boot mode is QSPI/n/r");
		InitQspi(1);
		MoveImage = QspiAccess;
		fsbl_printf(DEBUG_INFO,"QSPI Init Done /r/n");
	} 
   ... ...
}

3. 運(yùn)行應(yīng)用程序

在FsblHandoff()里,關(guān)閉看門狗后,執(zhí)行應(yīng)程序。執(zhí)行應(yīng)用程序前,按原來的模式初始化QSPI Flash,也就是小于等于16MB時(shí),初始化為線性模式;大于16MB時(shí),初始化為IO模式。

void FsblHandoff(u32 FsblStartAddr)
{
   ... ...

	/*
	 * FSBL user hook call before handoff to the application
	 */
	Status = FsblHookBeforeHandoff();
	if (Status != XST_SUCCESS) {
		fsbl_printf(DEBUG_GENERAL,"FSBL_HANDOFF_HOOK_FAIL/r/n");
 		OutputStatus(FSBL_HANDOFF_HOOK_FAIL);
		FsblFallback();
	}

#ifdef XPAR_XWDTPS_0_BASEADDR
	XWdtPs_Stop(&Watchdog);
#endif

	// Hank: Add customer's application code here
	// We can access FPGA register here.
	int main_app();
	InitQspi( 0 );
	main_app();

	/*
	 * Clear our mark in reboot status register
	 */
	ClearFSBLIn();
  ... ...

}

4. 進(jìn)一步優(yōu)化

還可以根據(jù)單板情況,進(jìn)一步優(yōu)化。比如,可以屏蔽NOR Flash的代碼,PCW_SILICON_VERSION_1和PCW_SILICON_VERSION_2的數(shù)據(jù)和代碼。FSBL的初始化代碼和數(shù)據(jù),只在上電時(shí)被使用,也可以釋放出來更應(yīng)用程序使用。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1643

    文章

    21957

    瀏覽量

    614028
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1663

    瀏覽量

    150976
  • DDR
    DDR
    +關(guān)注

    關(guān)注

    11

    文章

    731

    瀏覽量

    66371
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【Z-turn Board試用體驗(yàn)】+Zynq7000啟動(dòng)流程介紹

    256KbOCM,當(dāng)FSBL開始運(yùn)行后,器件就正式由咱自己控制了。Xilinx提供了一份FSBL代碼,如果沒什么特殊要求,可以直接使用。按照手冊(cè)說明,F(xiàn)SBL應(yīng)該完成以下幾件事。1). 使用XPS提供
    發(fā)表于 07-22 20:42

    Zynq-7000 SoC提供 FPGA 資源

    ArduZynq 和 TE0726-03M ZynqBerry SBC 中的 Zynq Z-7010 SoC 的 FPGA 容量存在顯著差異。雖然所有 Zynq-7000 SoC 都采用雙核 Arm
    發(fā)表于 08-31 14:43

    如何為Zynq-7000 soc尋找USB主機(jī)驅(qū)動(dòng)程序

    親愛的先生,我們正在為Zynq-7000 soc尋找USB主機(jī)驅(qū)動(dòng)程序。請(qǐng)為此提供支持感謝致敬以上來自于谷歌翻譯以下為原文Dear Sir,we are loooking for USB host
    發(fā)表于 04-03 10:28

    Zynq-7000設(shè)置數(shù)字是什么意思?

    我正在使用Zynq-7000,選擇欲望頻率,我知道我應(yīng)該使用-g ConfigRate,但這些設(shè)置數(shù)字是什么意思?例如,默認(rèn)數(shù)字是3,這意味著頻率是300KHz?謝謝
    發(fā)表于 08-05 13:14

    Zynq-7000是什么?Zynq-7000能干什么?

    Zynq-7000是什么?Zynq-7000能干什么?有何作用?
    發(fā)表于 06-30 06:22

    Xilinx Zynq-7000特性參數(shù)

    CPUCPU為Xilinx Zynq-7000SOC,兼容XC7Z035/XC7Z045/XC7Z100,平臺(tái)升級(jí)能力強(qiáng),以下為Xilinx Zynq-7000特性參數(shù):電源接口和開關(guān)采用12V3A
    發(fā)表于 12-30 07:55

    Zynq-7000系列特征概述

    相比較經(jīng)典的FPGA,Zynq-7000系列最大的特點(diǎn)是將處理系統(tǒng)PS和可編程資源PL分離開來,固化了PS系統(tǒng)的存在,實(shí)現(xiàn)了真正意義上的SOC(System On Chip)。 1.
    發(fā)表于 11-18 05:11 ?2w次閱讀
    <b class='flag-5'>Zynq-7000</b>系列特征概述

    基于Zynq-7000平臺(tái)運(yùn)行SoftPLC的解決方案

    基于Zynq-7000平臺(tái)運(yùn)行SoftPLC的解決方案,集成了KW-SoftPLC,PowerLink實(shí)時(shí)以太網(wǎng)協(xié)議,Linux操作系統(tǒng),用以快速、精準(zhǔn)的實(shí)現(xiàn)工業(yè)控制應(yīng)用
    的頭像 發(fā)表于 06-05 09:46 ?5889次閱讀
    基于<b class='flag-5'>Zynq-7000</b>平臺(tái)<b class='flag-5'>運(yùn)行</b>SoftPLC的解決方案

    Xilinx Zynq-7000 EPP Showcased at Embedded World

    Xilinx Zynq-7000 EPP Showcased at Embedded World
    的頭像 發(fā)表于 06-04 13:46 ?3476次閱讀

    Zynq-7000 Extensible Processing Platform in Action

    Zynq-7000 Extensible Processing Platform in Action
    的頭像 發(fā)表于 05-24 16:47 ?3561次閱讀

    如何使用BootGen為Zynq-7000 AP SoC構(gòu)建完整的映像

    了解如何使用BootGen為Zynq-7000 All Programmable SoC構(gòu)建完整的映像。 引導(dǎo)映像通常包括第一級(jí)引導(dǎo)加載程序,至少一個(gè)軟件應(yīng)用程序和PL的比特流。
    的頭像 發(fā)表于 11-23 06:58 ?5796次閱讀

    如何使用Zynq-7000 VI進(jìn)行IP仿真驗(yàn)證和調(diào)試

    本視頻將向您講解如何使用Zynq-7000 VIP(驗(yàn)證IP)來高效地驗(yàn)證基于Zynq-7000處理系統(tǒng)的設(shè)計(jì)。另外,視頻還介紹了如何配置,以及如何使用范例項(xiàng)目進(jìn)行仿真的實(shí)施步驟。
    的頭像 發(fā)表于 11-22 06:48 ?4864次閱讀

    zynq-7000 SoC產(chǎn)品選型指南

    zynq-7000 SoC產(chǎn)品選型指南
    發(fā)表于 12-09 16:15 ?12次下載

    Zynq-7000 SoC數(shù)據(jù)手冊(cè)下載

    Zynq-7000 SoC數(shù)據(jù)手冊(cè)下載
    發(fā)表于 05-21 15:22 ?34次下載

    Zynq-7000 SoC:嵌入式設(shè)計(jì)教程

    電子發(fā)燒友網(wǎng)站提供《Zynq-7000 SoC:嵌入式設(shè)計(jì)教程.pdf》資料免費(fèi)下載
    發(fā)表于 09-13 09:20 ?4次下載
    <b class='flag-5'>Zynq-7000</b> SoC:嵌入式設(shè)計(jì)教程