vivado中创建一个zynq嵌入式系统

根据zedboard_CTT_v2013_2_130807 的P17创建一个嵌入式系统
添加ZYNQ7
1、双击以自定义处理系统设置
在重新定制IP窗口的默认视图显示了处理ZYNQ系统框图。该窗口可以编辑ZYNQ的任何财产PS。点击每个页面导航选项的左侧审查在PS属性可编辑。点击在顶栏的预设按钮,选择ZedBoard发展董事会模板,然后单击取消。你不需要申请任何ZedBoard预设,因为这已经为你做。这是重置ZYNQ的好方法处理系统(PS),以用于ZedBoard的默认选项。

  1. For the scope of this exercise, we will not need most of the selected I/O Peripherals. Click on the MIO Configuration page under the Page Navigator. Expand I/O Peripherals and de-select everything except UART1. Expand
    GPIO and de-select GPIO MIO.
  2. While still being in the MIO Configuration page, expand Memory Interfaces and de-select everything. Expand Application Processor Unit, de-select everything.
  3. Click on the Clock Configuration page, expand PL Fabric Clocks, de-select
    FCLK_CLK0.
  4. Click on the PS-PL Configuration page, expand GP Master AXI Interface, de-select M AXI GP0 interface.
  5. Also within the PS-PL Configuration page, expand General > Enable Clock
    Resets, de-select FCLK_RESET0_N.

[Drc 23-20] Rule violation (NSTD-1) Unspecified I/O Standard - 32 out of 162 logical ports use I/O standard (IOSTANDARD) value ‘DEFAULT’, instead of a user assigned specific value. This may cause I/O contention or incompatibility with the board power or connectivity affecting performance, signal integrity or in extreme cases cause damage to the device or the components to which it is connected. To correct this violation, specify all I/O standards. This design will fail to generate a bitstream unless all logical ports have a user specified I/O standard value defined. To allow bitstream creation with unspecified I/O standard values (not recommended), use this command: set_property SEVERITY {Warning} [get_drc_checks NSTD-1]. NOTE: When using the Vivado Runs infrastructure (e.g. launch_runs Tcl command), add this command to a .tcl file and add that file as a pre-hook for write_bitstream step for the implementation run. Problem ports: gpio_rtl_tri_io[31:0].
建立一个ZYNQ平台
参考HW LAB1和LAB2 step by step
创建
ADD ip 选择zynq
Run Block Automation之后该向导会自动检测到它需要连接外部接口FIXED_IO和DDR接口。
启用和映射ZYNQ PS UART外设
•配置内存和时钟的PS ZYNQ
•建立硬件平台
•Export设计到SDK
UART外设
MIO 配置;
在MIO Configuration 窗口顶部, 电压设置. Set Bank 0 I/O Voltage to LVCMOS 3.3V and Bank 1 I/O Voltage toLVCMOS 1.8V.
有两个UART可用。检查UART1框。点击为I/ O下拉。注意,UART1可以放在几个MIO位置以及延伸MIO(EMIO)。将I/ O,以MIO48..49,这恰好是默认的。
There are two UARTs available. Check the box for UART1. Click the pull-down for the I/O. Notice that UART1 can be placed on several MIO locations as well as extended MIO (EMIO). Set the I/O to MIO48 .. 49, which happens to be the default.
Zedboard原理图中

这样在 zynq block design中显示uart1已结连接

在Zynq Block Design 窗口, 单击 General Settings选择 PS-PL Configuration.
UART1波特率设置为115200 115200

配置存储和时钟
Configure the Memory GUI for a 32-bit interface using Micron DDR3 memory components. Configure the clocks to operate the CPU at 667 MHz and the memory at 533 MHz.
所使用的DDR:MT41K128M16JT-125XIT
16meg*16*8banks,256MB,共两个
Clock Generation
默认的配置如下
Input frequency is 33.33333 MHz
o CPU frequency is 666.666666 MHz
o DDR frequency is 533.333333 MHz
存储器的配置
In the DDR Controller Configuration section, the Effective DRAM Bus Width must be assigned to 32-bits as we are using a 2x16 DDR3 configuration.
配置完成

Lab3 MIO外设
启用和映射在IP集成所有的默认外设
•设置在PS时钟为PS外设和PL
•创建和运行C程序
最重要的是引导设备。 ZYNQ允许你只选择1 QSPI,或者NAND。需要注意的是SD卡也是一个启动选项,将在列表中显示出来。无论MicroZed和ZedBoard配备了板载的Spansion四路SPI闪存。
注意,SRAM / NOR闪存和NAND闪存接口不能进行检查。这是由于只有一个存储器接口从所述允许ZYNQ PS。

USB实际上是最不灵活。这需要更少的引脚,但USB必须映射到MIO,就像闪光灯。以太网可以映射到EMIO。
启用USB0看看下拉菜单。请注意,MIO[28-39]现在映射,设置为IOSTANDARD LVCMOS1.8V。

Next, enable ENET 0 by clicking on the checkbox. 11. Map to MIO[16-27] by clicking on the pull-down arrow and selecting MIO[16- 27]. 12. Expand ENET 0 then enable MDIO by clicking its checkbox. Change the mapping to MIO[52-53]. Notice that the I/O Type is set to LVCMOS 1.8V.
在UART之前选择。剩余未使用的I / O是用于在PSPMOD(8个I / O),一个LED(1 I / O),以及一个PB(1 I / O)。 LED和PB将是个GPIO我们将设置最后一次。现在我们将看看PS PMOD。
该MicroZed和ZedBoard设计团队选择指定8 MIOS到PS PMOD。这8个I / O的仔细映射到MIO[0,9-15]。 MIOS的连续跨度是所希望的,但是,这是不可能的。 MIO[7]和MIO[8]不包括因为它们是特殊的MIO只能被用作输出。因此,MIO[7]是什么我们连接到ZedBoard LED和USB0复位上MicroZed。 MIO[8]是用于四路SPI闪存接口。 MicroZed连接一个LED到MIO[47]和一个按钮以MIO[51]。 ZedBoard提供7用户GPIO按钮的Zynq-7000 AP SoC的;五个在PL侧和两个上的PS侧; MIO[50:51]。
接口配置完成

接下来配置PS时钟为新启用的外设。设置PL面料作为时钟以及CPU和DDR时钟。
回想一下,ZYNQ PS有三个锁相环 - ARM,DDR和I / O。每个使用相同的输入参考时钟,这是33.3333兆赫MicroZed和ZedBoard。
每个PLL必须设置在一个特定的频率范围内工作,如由下式给出的数据表。注意,对于-1设备,这个范围是780兆赫至1600兆赫。一旦PLL输出频率设置,那么你是整数分频器来限制生成所需的时钟。
回顾以前输入/核实为PS时钟的设置。
A。输入频率=33.33333兆赫
B。 CPU频率=666.666666兆赫
C。 DDR频率=533.333333兆赫
这些设置已经决定PLL输出频率为ARM和DDR锁相环,这两者必须是33.333兆赫的倍数。由于CPU频率必须的ARM PLL的整数除法运算,我们知道,在ARM锁相环必须被设置为1333.33兆赫(33.333兆赫*40)和CPU时钟分频器必须是2的DDR PLL输出频率可以是1600兆赫(33.333*48)或1066.667兆赫(33.333*32)。由默认情况下,工具将设置为1066.667和使用的2分频。使用这些PLL的一切,现在必须使用组输出的整数除法频率。同样的原则也将适用于I / O PLL。类似于在CPU和DDR作为决定因素为ARM和DDR锁相环,在I / O锁相环也具有一定的优先依赖性。最具统治力的人在这个设计是以太网。以太网功能是依赖于具有准确的时钟。
默认情况下,QSPI外设使用的IO PLL作为时钟源。该QSPI外围接口工作在100MHz的最大速率。该QSPI外围有一个内部分频器,其默认设置为2,而我们不是要改变这种状况。因此,QSPI输入时钟被设定为200兆赫。

你可能感兴趣的:(zynq,ZYNQ学习之路)