18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

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

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

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

基于zynq7000的linux系統(tǒng)搭建設(shè)計(jì)

電子設(shè)計(jì) ? 來源:AI加速微信公眾號 ? 作者:AI加速微信公眾號 ? 2020-11-30 11:56 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Zynq器件將armFPGA結(jié)合,利用了兩者各自的優(yōu)勢,arm可以實(shí)現(xiàn)靈活的控制,而FPGA部分可以實(shí)現(xiàn)算法加速,這大大擴(kuò)展了zynq的應(yīng)用。比如深度學(xué)習(xí)加速,圖像處理等等。PL側(cè)表示FPGA的邏輯部分,PS側(cè)為arm端以及一些AXI接口控制部分,二者實(shí)際上通過AXI接口實(shí)現(xiàn)通信和互聯(lián)。PS可以通過AXI來對PL邏輯部分進(jìn)行配置和控制,PL側(cè)通過AXI和PS進(jìn)行數(shù)據(jù)交互。本章基于zynq7020器件來搭建Linux系統(tǒng),描述搭建Linux系統(tǒng)過程中PL側(cè)的配置以及對u-boot,kenel,桌面系統(tǒng)的配置和編輯。

1. vivado工程創(chuàng)建

本文使用的是黑金的zynq7020開發(fā)板。搭建一個(gè)最基本的linux系統(tǒng)需要以下基本配置:

1)arm核的添加和配置。

打開vivado,新建工程。然后創(chuàng)建block,添加zynq processing system。圖中iic是后邊在開發(fā)IIC驅(qū)動(dòng)時(shí)添加的,最基本的linux系統(tǒng)可以不適用IIC。

圖1.1 添加zynq系統(tǒng)

2) bankIO電壓設(shè)置。

根據(jù)原理圖設(shè)置bank IO的電壓。如圖1.2所示。SD卡配置。

Linux系統(tǒng)安裝在SD卡中,所以需要完成SD卡配置,根據(jù)原理圖選擇SD卡的使用引腳。

圖1.2 IO電壓和SD卡配置

3) UART口配置。

需要用到串口進(jìn)行調(diào)試,所以配置串口MIO引腳。

圖1.3 串口引腳配置

4) DDR配置。

內(nèi)存是必須的。這里面已經(jīng)有內(nèi)存型號供你選擇,不需要在對DDR參數(shù)做配置,只選擇MT41J256M16RE-125就行了。

圖1.4 DDR配置

這樣就完成了一個(gè)Linux系統(tǒng)啟動(dòng)需要的最基本配置。接下來對工程進(jìn)行綜合和實(shí)現(xiàn),生成bit,并在file菜單項(xiàng)中選擇export/export hardware,選擇include bitstream,點(diǎn)積OK就生成了linux系統(tǒng)需要的硬件工程。

接下來還需要生成啟動(dòng)u-boot的fsbl。這里簡單說一下linux系統(tǒng)啟動(dòng)的基本過程:

FSBL(完成IO電壓,SD卡,UART等硬件的檢測和基本配置,然后啟動(dòng)u-boot。)->U-boot(這個(gè)主要完成arm硬件的一些更進(jìn)一步檢測和配置,然后去啟動(dòng)kernel)->kernel(這個(gè)是linux系統(tǒng)需要的所有驅(qū)動(dòng))->文件系統(tǒng)。

我們launch SDK,打開SDK生成fsbl和需要的設(shè)備樹。

New->application project->zynq FSBL,然后進(jìn)行編譯,就生成了fsbl.elf文件。如果我們也已經(jīng)生成了u-boot文件,就可以用SDK來制作boot.bin。我們可以選擇fsbl的工程,右鍵create boot image,然后選擇u-boot的路徑,partition type選擇dtafile。然后create image就會(huì)生成boot.bin了。我們在fsbl工程目錄中的bootimage文件夾下看到boot.bin。

圖1.5 選擇u-boot路徑

生成devicetree需要zynq的基本divecetree文件,可以在git上下載:https://github.com/Xilinx/device-tree-xlnx。下載的設(shè)備樹文件添加到SDK中的repositories中:

圖1.6 添加設(shè)備樹文件來生成設(shè)備樹

然后new->board support package project->device_tree,這樣就生成了設(shè)備樹源文件。源文件有以下幾個(gè):

Zynq-7000.dtsi,這個(gè)是zynq-7000的默認(rèn)硬件配置,通常不需要修改。

pcw.dtsi,這個(gè)文件是針對自己的硬件平臺(tái)進(jìn)行進(jìn)一步配置的。比如在zynq-7000中sdhci都是不使能的,在pcw.dtsi中就需要進(jìn)行使能,并配置sdhci0的statue為okay。

System-top.dtsi,其配置一些別名,并配置chosen,這個(gè)主要是選擇在啟動(dòng)硬件的時(shí)候如何和操作系統(tǒng)進(jìn)行通信,比如stdout-path選擇boot輸出介質(zhì),一般都是串口輸出。

用這三個(gè)文件就可以了。

圖1.7 設(shè)備樹源文件生成

以上就完成了linux系統(tǒng)啟動(dòng)的硬件工程搭建,設(shè)備樹產(chǎn)生,以及fsbl產(chǎn)生。

2. u-boot編譯

下載u-boot源碼:https://github.com/Xilinx/u-boot-xlnx。

主要配置u-boot中的./configs/*_defconfig文件,這個(gè)主要是對arm端硬件進(jìn)行配置。這里我們就使用zynq_zc702_defconfig,當(dāng)然這里可以修改默認(rèn)設(shè)備樹文件和board_name. 比如將defconfig文件命名為board_name_defconfig,相應(yīng)有文件./include/configs/board_name.h來描述板卡信息。

然后在./include/configs中復(fù)制一份zynq_zc70x.h為你想要的板級名稱。這個(gè)時(shí)候我們需要修改zynq_common.h中的配置。由于我們的文件系統(tǒng)在SD卡的第二分區(qū),所以需要修改宏定義:CONFIG_EXTRA_ENV_SETTINGS,去除了ramdisk的啟動(dòng)。

然后建立uEnv.txt,在其中設(shè)置環(huán)境變量。如圖2.3所示。指定了文件系統(tǒng)所在位置為SD卡分區(qū)2。文件系統(tǒng)格式為ext3。

圖2.1 defconfig文件,紅框可以修改成為你的板卡的名字和設(shè)備樹名字


圖2.2 sdboot變量修改前和修改后

圖2.3 uEnv.txt中設(shè)置

接下來就是編譯u-boot了。需要用到交叉編譯工具arm-xilinx-linux-gnueabi。目前的vivado工具中已經(jīng)沒有這個(gè)交叉編譯工具了,可以到網(wǎng)上下載這個(gè)工具鏈。然后export PATH=$PATH: dir/bin??梢栽贛akefile中設(shè)置默認(rèn)的編譯工具:

圖2.4 Makefile中設(shè)置編譯工具

然后make board_name_defconfig進(jìn)行配置,最后make就可以編譯出u-boot了。根目錄下的u-boot.elf正是我們需要的文件,用于合成boot.bin。在1節(jié)中已經(jīng)介紹了。

3. 編譯kernel

Kernel可以到git上下載,kernel包含所有的驅(qū)動(dòng),如果進(jìn)行驅(qū)動(dòng)修改的話,可以在其中進(jìn)行配置。比如篩選某些驅(qū)動(dòng)。通常開發(fā)新的驅(qū)動(dòng),并不需要在其中進(jìn)行修改。因?yàn)轵?qū)動(dòng)可以通過命令行在系統(tǒng)啟動(dòng)后動(dòng)態(tài)加載。所以只僅僅對驅(qū)動(dòng)編譯就行了,在Makefile中添加編譯工具,這個(gè)核u-boot一樣。然后make uImage LOADADDR=0x00008000就可以了。編譯完成后再arch/arm/boot中產(chǎn)生uImage,這個(gè)是我們要用到的內(nèi)核文件。

設(shè)備樹文件的編譯也很簡單,就是通過設(shè)備樹編譯工具dtc將dtsi文件編為dtc文件就行了,這里注意dtc文件名稱要和在u-boot中zynq-common.h中的設(shè)備樹文件名稱一樣。通常都為devicetree。編譯命令為:

dtc –I dtx –O dtb –o devicetree.dtb your.dts

文件系統(tǒng)可以使用linaro Ubuntu文件系統(tǒng),從網(wǎng)上下載,解壓。這個(gè)時(shí)候需要對SD卡進(jìn)行分區(qū),1區(qū)為fat格式,有200M就夠了,存放boot.bin,uImage,devicetree.dtb,uEnv.txt文件。第二區(qū)用ext3格式,存放linaro Ubuntu文件系統(tǒng)。

4. linux系統(tǒng)啟動(dòng)過程

圖4.1 fsbl啟動(dòng)

圖4.2 fsbl完成

圖4.3 u-boot啟動(dòng):讀取env,uImage和設(shè)備樹

圖4.4 啟動(dòng)kernel

圖4.5 文件系統(tǒng)的啟動(dòng)

總結(jié)

本篇在zynq7000的基礎(chǔ)上,制作一個(gè)最基本的linux系統(tǒng)。整個(gè)流程包括工程創(chuàng)建,fsbl和設(shè)備樹生成,u-boot的配置和編譯,kernel編譯以及文件系統(tǒng)制作。

linux系統(tǒng)

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

    關(guān)注

    88

    文章

    11581

    瀏覽量

    217144
  • Zynq
    +關(guān)注

    關(guān)注

    10

    文章

    624

    瀏覽量

    49036
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

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

    ZYNQ PS與PL數(shù)據(jù)交互方式

    ZYNQ SoC 的 PS (Processing System) 和 PL (Programmable Logic) 之間的數(shù)據(jù)交互是系統(tǒng)設(shè)計(jì)的核心。
    的頭像 發(fā)表于 10-15 10:33 ?214次閱讀
    <b class='flag-5'>ZYNQ</b> PS與PL數(shù)據(jù)交互方式

    RTthread怎么加載zynq的支持包?

    RTthread有xilinx zynq的芯片支持包了么,SDK管理器里面怎么下載ZYNQ的支持包呢?求助
    發(fā)表于 09-23 06:05

    Zynq7100 BSP移植,MSH終端不能正確顯示是為什么?

    由于新版本的RT Thread的BSP不再提供Zynq7000的支持。所以同事從RT Thread(4.0.3)中的Zynq7000移植了一份Zynq 7100的BSP。但是MSH終端和串口輸出
    發(fā)表于 09-19 06:26

    fpga開發(fā)板 璞致ZYNQ 7000 系列之 PZ7035/PZ7045/PZ7100-FH 核心板與開發(fā)板用戶手冊

    本文介紹了Xilinx Zynq-7000系列可擴(kuò)展處理平臺(tái)及其開發(fā)板應(yīng)用。Zynq-7000采用雙核ARM Cortex-A9處理器與28nm FPGA架構(gòu),支持高性能嵌入式開發(fā)。開發(fā)板采用核心板
    的頭像 發(fā)表于 09-15 15:54 ?4904次閱讀
    fpga開發(fā)板 璞致<b class='flag-5'>ZYNQ</b> <b class='flag-5'>7000</b> 系列之 PZ7035/PZ7045/PZ7100-FH 核心板與開發(fā)板用戶手冊

    開發(fā)環(huán)境一鍵部署 | 如何搭建Docker環(huán)境編譯ARM程序?

    智能化科技領(lǐng)域,嵌入式系統(tǒng)開發(fā)占據(jù)著極為重要的地位。瑞迅科技RK3568、RK3588主板及核心板以其卓越的性能,為眾多應(yīng)用場景賦能?;?b class='flag-5'>Linux系統(tǒng)搭建其開發(fā)環(huán)境,為用戶開啟高效開
    的頭像 發(fā)表于 08-15 11:06 ?578次閱讀
    開發(fā)環(huán)境一鍵部署 | 如何<b class='flag-5'>搭建</b>Docker環(huán)境編譯ARM程序?

    正點(diǎn)原子Z15I ZYNQ 開發(fā)板資料發(fā)布!板載PCIe2.0、SPFx2、MIPI CSI等接口,資料豐富!

    USB2.0 Host接口和RGB LCD接口等外設(shè)。開發(fā)板提供了豐富的開發(fā)文檔和軟件資源,涉及FPGA開發(fā)、Vitis開發(fā)、Linux系統(tǒng)開發(fā)和PCle開發(fā)! 一、資料下載 正點(diǎn)原子Z15I
    發(fā)表于 05-30 16:59

    正點(diǎn)原子Z20 ZYNQ 開發(fā)板發(fā)布!板載FMC LPC、LVDS LCD和WIFI&amp;藍(lán)牙等接口,資料豐富!

    接口等外設(shè)。開發(fā)板提供了豐富的開發(fā)文檔和軟件資源,涉及FPGA開發(fā)、Vitis開發(fā)、Linux系統(tǒng)開發(fā)和Qt開發(fā)! 一、資料下載 正點(diǎn)原子Z20 ZYNQ開發(fā)板/核心板:http
    發(fā)表于 05-30 16:55

    不借助Linux系統(tǒng),在Windows下如何搭建ZMC900E交叉編譯環(huán)境

    不需要依賴笨重的虛擬機(jī),也不需要安裝雙系統(tǒng)。拋開繁瑣的環(huán)境準(zhǔn)備,在Windows上輕松搭建交叉編譯環(huán)境。本文將介紹如何在Windows上搭建交叉編譯環(huán)境,不借助Linux
    的頭像 發(fā)表于 05-21 11:34 ?539次閱讀
    不借助<b class='flag-5'>Linux</b><b class='flag-5'>系統(tǒng)</b>,在Windows下如何<b class='flag-5'>搭建</b>ZMC900E交叉編譯環(huán)境

    Zynq7000處理器的配置詳解

    添加好ZYNQ7 Processing System IP核后,需要對其進(jìn)行配置,雙擊彈出如下窗口。綠色部分表示ZYNQ PS部分中可配置的項(xiàng)目,可以雙擊轉(zhuǎn)向相應(yīng)的設(shè)置界面,也可以直接在左邊的導(dǎo)航列表中選擇。
    的頭像 發(fā)表于 03-27 09:37 ?1875次閱讀
    <b class='flag-5'>Zynq7000</b>處理器的配置詳解

    從零開始馴服Linux(一):ZYNQ-Linux啟動(dòng)文件構(gòu)建全解析

    源碼需要在linux系統(tǒng)(虛擬機(jī))中安裝相應(yīng)的交叉編譯工具鏈。安裝ZYNQ-7000系列芯片的交叉編譯工具鏈需要sdk.sh文件。把開發(fā)板資料盤B盤:\sdk\202002\sdk.sh拷貝到
    發(fā)表于 03-20 16:48

    迅為RK3588開發(fā)板實(shí)時(shí)系統(tǒng)編譯-Preemption系統(tǒng)/ Xenomai系統(tǒng)編譯-獲取Linux源碼包

    3.1 Preemption 系統(tǒng)/ Xenomai 系統(tǒng)編譯 3.1.1 獲取 Linux 源碼包 編譯環(huán)境說明: 本手冊使用的是迅為提供的編譯環(huán)境 ubuntu20.04,在網(wǎng)盤資料
    發(fā)表于 01-09 11:03

    基于Xilinx ZYNQ7000 FPGA嵌入式開發(fā)實(shí)戰(zhàn)指南

    電子發(fā)燒友網(wǎng)站提供《基于Xilinx ZYNQ7000 FPGA嵌入式開發(fā)實(shí)戰(zhàn)指南.pdf》資料免費(fèi)下載
    發(fā)表于 12-10 15:31 ?39次下載

    dac3174與xilinx zynq7000系列連接,fpga的案例參考代碼有沒有?

    dac3174與xilinx zynq7000系列連接,fpga的案例參考代碼有沒有? tsw1400_lvds_dac_sample_wise_restored的代碼寫的實(shí)在太難度了,一句注釋都沒有
    發(fā)表于 11-25 06:04

    使用ZYNQ驅(qū)動(dòng)評估板的子板搭建一個(gè)簡單采集系統(tǒng)遇到的幾個(gè)問題求解

    最近我們正想做一個(gè)多通道腦電采集系統(tǒng),使用ZYNQ驅(qū)動(dòng)評估板的子板搭建一個(gè)簡單采集系統(tǒng)。我們使用信號發(fā)生器產(chǎn)生正弦波,能夠采集到數(shù)據(jù)。但是還有如下幾個(gè)問題: 1、我們
    發(fā)表于 11-22 07:53

    當(dāng)ADC3663的LVDS輸出給到ZYNQ-7000的LVDS接收這兩者之間可以直連嗎?

    ADC3663的LVDS差分輸出與xilinx的ZYNQ-7000的LVDS輸入的電平匹配問題 ADC3663的供電是1.8V,ADC3663的LVDS輸出給到ZYNQ-7000的BANK12
    發(fā)表于 11-14 07:43