ZYNQ双核运行简例

ZYNQ双核运行简例一、AMP运行模式从软件的角度来看,多核处理器的运行模式有三种:   AMP(非对称多进程):多个核心相对独立的运行不同的任务,每个核心可能运行不同的操作系统或裸机程序,但是有一个主要核心,用来控制整个系统以及其它从核心

一、AMP运行模式

从软件的角度来看,多核处理器的运行模式有三种: 
  AMP(非对称多进程):多个核心相对独立的运行不同的任务,每个核心可能运行不同的操作系统或裸机程序,但是有一个主要核心,用来控制整个系统以及其它从核心。
  SMP(对称多进程):一个操作系统同等的管理各个内核,例如PC机。
  BMP(受约束多进程):与SMP类似,但开发者可以指定将某个任务仅在某个指定内核上执行
默认情况下,ZYNQ仅运行一个CPU,这里主要研究AMP模式下,两个CPU同时运行。

本次实验目的:
  让zynq的两个核心跑不同的程序:
    1、CPU0用UART打印消息。
    2、CPU1跑流水灯的程序。

二、创建工程

1、创建并设置bd文件

根据自己的板子创建一个zynq工程、创建一个bd文件,添加zynq的核。双击打开、选中UART和SD卡:根据自己板子选择连接的IO
  再根据自己板子选择是否选择EMIO(如果LED连接到PL端则需要选择)和EMIO所需要的位数。
  完成设计之后如下
  创建完成之后:
  1、右击原理图,生成输出文件(Create HDL Wrapper) 
  2、右击原理图,生成顶层文件(Create Output Products…)
添加约束文件:

set_property PACKAGE_PIN N20 [get_ports { 
   GPIO_0_tri_io[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports { 
   GPIO_0_tri_io[0]}]

set_property PACKAGE_PIN P20 [get_ports { 
   GPIO_0_tri_io[1]}]
set_property IOSTANDARD LVCMOS33 [get_ports { 
   GPIO_0_tri_io[1]}]

set_property PACKAGE_PIN P19 [get_ports { 
   GPIO_0_tri_io[2]}]
set_property IOSTANDARD LVCMOS33 [get_ports { 
   GPIO_0_tri_io[2]}]

set_property PACKAGE_PIN Y19 [get_ports { 
   GPIO_0_tri_io[3]}]
set_property IOSTANDARD LVCMOS33 [get_ports { 
   GPIO_0_tri_io[3]}]

set_property PACKAGE_PIN V12 [get_ports { 
   GPIO_0_tri_io[

今天的文章ZYNQ双核运行简例分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/61319.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注