By Adam Taylor
在过去一周中,我接到了很多不同人的来信,他们正在使用以Zynq为基础的开发工具。他们非常想知道怎么样去把MicroZed系列博客教程应用到他们所选择的硬件平台上。加上Avnet MicroZed有许多其他一些的著名开发工具,这些工具都是基于Zynq版本。以下是一系列著名的Zynq-based开发板,这些开发板展示了Zynq SoC在每个板子上的变化:
MicroZed – XC7Z010
ZedBoard – XC7Z020
ZC702 – XC7Z020
ZC706 – XC7Z045
ZYBO – XC7Z010
为什么其他一些硬件工具的使用者不想按照网上非常好的Zynq博客教程走呢?事实上,这是很容易做的。让我们回到十二个月前我们这个系列教程的第一篇博客,在这篇博客里面,我们定义了我们要使用的硬件的配置信息。此时此刻,我们可以申明我们所用的板子和工程,如下图所示:
选择理想的板子来配置合适的SoC,外围环境和板上外设——比如,每一个外设应该连接到哪一个MIO pins上,连同一些对MIO pins来说需要的配置信息。最重要的是,这个选择也分配了DDR DRAM的地址位置和配置参数,这个避免我们手动输入信息。下图显示了MicroZed DDR的配置信息:
但是如果我们想用一个默认缺省built的板子该怎么办?在这种情况下,我们可以导入一个xml文件,这个文件中定义了我们打算使用的板子的配置信息。这个文件通常是由板子的制造商提供,如果没有的话,需要有一个。
导入这些文件之一很简单:
在你的开发板或者开发工具中,创建一个指向目标器件的工程。
创建一个新的框图(如这个系列的第一篇博客所示),然后从IP核库中添加一个新Zynq IP核。
双击框图打开重定制IP核窗口。
选择IMPORT XPS SETTINGS 选项。
指向vendor提供给你的XML文件。
导入文件如下图所示:
下图显示了Digilent Zybo板子上zynq的DDR配置:
一旦你的硬件成功地定义了,你就可以像我在这个系列日志中所做的一样搭建你的系统。我的日志大部分关注使用外设和模块。在这种情况下,不需要有什么变化。当日志使用外围设备——比如说LEDS或者按键开关——你需要适应MIO规范说明和你板子的输出引脚。但是,博客解释了怎样做这些尽管这些博客主要关注的是Avnet MicroZed板子。对任何板子,使用这些博客帖子是非常直接了当的,因为它们所用的原则都是一样的。
你可以在玩转MIcroZed系列博客中找到任何之前例子的代码。之前系列的博客列表如下面所示。
向那些发邮件问我的朋友们表示致谢!我希望你们在跟着这个系列博客学习Zynq SoC的过程中感到开心。
Adam Taylor玩转MicroZed系列博客:
Adam Taylor’s MicroZed Chronicles, Part 72: Multi-cycle Constraints
Adam Taylor’s MicroZed Chronicles, Part 70: Constraints—Clock Relationships and Avoiding Metastability
Adam Taylor’s MicroZed Chronicles, Part 70: Constraints—Introduction to timing and defining a clock
Adam Taylor’s MicroZed Chronicles Part 69: Zynq SoC Constraints Overview
Adam Taylor’s MicroZed Chronicles Part 68: AXI DMA Part 3, the Software
Adam Taylor’s MicroZed Chronicles Part 67: AXI DMA II
Adam Taylor’s MicroZed Chronicles Part 66: AXI DMA
Adam Taylor’s MicroZed Chronicles Part 65: Profiling Zynq Applications II
Adam Taylor’s MicroZed Chronicles Part 64: Profiling Zynq Applications
Adam Taylor’s MicroZed Chronicles Part 63: Debugging Zynq Applications
Adam Taylor’s MicroZed Chronicles Part 62: Answers to a question on the Zynq XADC
Adam Taylor’s MicroZed Chronicles Part 61: PicoBlaze Part Six
Adam Taylor’s MicroZed Chronicles Part 60: The Zynq and the PicoBlaze Part 5—controlling a CCD
Adam Taylor’s MicroZed Chronicles Part 59: The Zynq and the PicoBlaze Part 4
Adam Taylor’s MicroZed Chronicles Part 58: The Zynq and the PicoBlaze Part 3
Adam Taylor’s MicroZed Chronicles Part 57: The Zynq and the PicoBlaze Part Two
Adam Taylor’s MicroZed Chronicles Part 56: The Zynq and the PicoBlaze
Adam Taylor’s MicroZed Chronicles Part 55: Linux on the Zynq SoC
Adam Taylor’s MicroZed Chronicles Part 54: Peta Linux SDK for the Zynq SoC
Adam Taylor’s MicroZed Chronicles Part 53: Linux and SMP
Adam Taylor’s MicroZed Chronicles Part 52: One year and 151,000 views later. Big, Big Bonus PDF!
Adam Taylor’s MicroZed Chronicles Part 51: Interrupts and AMP
Adam Taylor’s MicroZed Chronicles Part 50: AMP and the Zynq SoC’s OCM (On-Chip Memory)
Adam Taylor’s MicroZed Chronicles Part 49: Using the Zynq SoC’s On-Chip Memory for AMP Communications
Adam Taylor’s MicroZed Chronicles Part 48: Bare-Metal AMP (Asymmetric Multiprocessing)
Adam Taylor’s MicroZed Chronicles Part 47: AMP—Asymmetric Multiprocessing on the Zynq SoC
Adam Taylor’s MicroZed Chronicles Part 46: Using both of the Zynq SoC’s ARM Cortex-A9 Cores
Adam Taylor’s MicroZed Chronicles Part 44: MicroZed Operating Systems—FreeRTOS
Adam Taylor’s MicroZed Chronicles Part 43: XADC Alarms and Interrupts?
Adam Taylor’s MicroZed Chronicles MicroZed Part 42: MicroZed Operating Systems Part 4
Adam Taylor’s MicroZed Chronicles MicroZed Part 41: MicroZed Operating Systems Part 3
Adam Taylor’s MicroZed Chronicles MicroZed Part 40: MicroZed Operating Systems Part Two
Adam Taylor’s MicroZed Chronicles MicroZed Part 39: MicroZed Operating Systems Part One
Adam Taylor’s MicroZed Chronicles MicroZed Part 38 – Answering a question on Interrupts
Adam Taylor’s MicroZed Chronicles Part 37: Driving Adafruit RGB NeoPixel LED arrays with MicroZed Part 8
Adam Taylor’s MicroZed Chronicles Part 36: Driving Adafruit RGB NeoPixel LED arrays with MicroZed Part 7
Adam Taylor’s MicroZed Chronicles Part 35: Driving Adafruit RGB NeoPixel LED arrays with MicroZed Part 6
Adam Taylor’s MicroZed Chronicles Part 34: Driving Adafruit RGB NeoPixel LED arrays with MicroZed Part 5
Adam Taylor’s MicroZed Chronicles Part 33: Driving Adafruit RGB NeoPixel LED arrays with the Zynq SoC
Adam Taylor’s MicroZed Chronicles Part 32: Driving Adafruit RGB NeoPixel LED arrays
Adam Taylor’s MicroZed Chronicles Part 31: Systems of Modules, Driving RGB NeoPixel LED arrays
?Adam Taylor’s MicroZed Chronicles Part 30: The MicroZed I/O Carrier Card
Zynq DMA Part Two – Adam Taylor’s MicroZed Chronicles Part 29
The Zynq PS/PL, Part Eight: Zynq DMA – Adam Taylor’s MicroZed Chronicles Part 28??
The Zynq PS/PL, Part Seven: Adam Taylor’s MicroZed Chronicles Part 27
The Zynq PS/PL, Part Six: Adam Taylor’s MicroZed Chronicles Part 26
The Zynq PS/PL, Part Five: Adam Taylor’s MicroZed Chronicles Part 25
The Zynq PS/PL, Part Four: Adam Taylor’s MicroZed Chronicles Part 24
The Zynq PS/PL, Part Three: Adam Taylor’s MicroZed Chronicles Part 23
The Zynq PS/PL, Part Two: Adam Taylor’s MicroZed Chronicles Part 22
The Zynq PS/PL, Part One: Adam Taylor’s MicroZed Chronicles Part 21
Introduction to the Zynq Triple Timer Counter Part Four: Adam Taylor’s MicroZed Chronicles Part 20
Introduction to the Zynq Triple Timer Counter Part Three: Adam Taylor’s MicroZed Chronicles Part 19
Introduction to the Zynq Triple Timer Counter Part Two: Adam Taylor’s MicroZed Chronicles Part 18
Introduction to the Zynq Triple Timer Counter Part One: Adam Taylor’s MicroZed Chronicles Part 17
The Zynq SoC’s Private Watchdog: Adam Taylor’s MicroZed Chronicles Part 16
Implementing the Zynq SoC’s Private Timer: Adam Taylor’s MicroZed Chronicles Part 15
MicroZed Timers, Clocks and Watchdogs: Adam Taylor’s MicroZed Chronicles Part 14
More About MicroZed Interrupts: Adam Taylor’s MicroZed Chronicles Part 13
MicroZed Interrupts: Adam Taylor’s MicroZed Chronicles Part 12
Using the MicroZed Button for Input: Adam Taylor’s MicroZed Chronicles Part 11
Driving the Zynq SoC's GPIO: Adam Taylor’s MicroZed Chronicles Part 10
Meet the Zynq MIO: Adam Taylor’s MicroZed Chronicles Part 9
MicroZed XADC Software: Adam Taylor’s MicroZed Chronicles Part 8
Getting the XADC Running on the MicroZed: Adam Taylor’s MicroZed Chronicles Part 7
A Boot Loader for MicroZed. Adam Taylor’s MicroZed Chronicles, Part 6?
Figuring out the MicroZed Boot Loader – Adam Taylor’s MicroZed Chronicles, Part 5
Running your programs on the MicroZed – Adam Taylor’s MicroZed Chronicles, Part 4
Zynq and MicroZed say “Hello World”-- Adam Taylor’s MicroZed Chronicles, Part 3
Adam Taylor’s MicroZed Chronicles: Setting the SW Scene
Bringing up the Avnet MicroZed with Vivado
原文链接:
?Copyright 2014 Xilinx Inc
如需转载,请注明出处
评论
查看更多