首页
论坛
电子技术基础
模拟技术
可编程器件
嵌入式系统与MCU
工程师职场
最新帖子
问答
版主申请
每月抽奖
商城免费换礼
社区有奖活动
博客
下载
评测
视频
文库
芯语
资源
2024国际航空电子大会
2024国际 AIoT 生态发展大会
3D IC 设计和Chiplet资料下载
车载总线测试和解码方案
新能源汽车三电测试技术中心
在线研讨会
EE直播间
小测验
白皮书
行业及技术活动
杂志免费订阅
免费在线工具
厂商资源中心
论坛
博文
电子工程专辑
电子技术设计
国际电子商情
资料
白皮书
研讨会
芯语
文库
登录|注册
登录
面包板社区
> >
标签
> >
zynq7000
标签: zynq7000
相关帖子
ZYNQ7035 PL Cameralink回环例程
xines广州星嵌
发表于
2023-2-24
最后回复
xines广州星嵌
2023-2-24 11:18
浏览
524
回复
0
Xilinx Zynq7035 PL SFP光口通信例程
xines广州星嵌
发表于
2023-2-20
最后回复
xines广州星嵌
2023-2-20 17:47
浏览
404
回复
0
ZYNQ7000板子上,PL端逻辑烧写到FLASH里面。怎么办?
xines广州星嵌
发表于
2023-2-13
最后回复
xines广州星嵌
2023-2-13 20:03
浏览
481
回复
0
基于ZYNQ的CameraLink图像采集与边缘检测开发详解
Tronlong
发表于
2020-9-17
最后回复
Tronlong
2020-9-17 09:45
浏览
2560
回复
0
更多...
相关博文
DSP+ZYNQ多核例程使用手册-XQTyer【开源】
热度
9
xines广州星嵌
2022-12-27 14:32
881 次阅读
|
0
个评论
【开源资料】 XQTyer评估板例程使用手册.pdf 链接:https://share.weiyun.com/8csewUvh 密码:8r9by7 XQ6657Z35/45-EVM 高速数据处理评估板(XQTyer 评估板)由广州星嵌电子科技有限公司自主研发,包含一片TI DSP TMS320C6657和一片Xilinx ZYNQ-7000 SoC 处理器XC7Z035-2FFG676I。适用于无人机蜂群、软件无线电系统,基带信号处理,无线仿真平台,高速图像采集、处理等领域。
Zynq7000网络驱动调试笔记
热度
23
用户1599256
2016-4-10 17:05
1395 次阅读
|
2
个评论
Zynq7000 的网络控制器与 Atmel 公司的 SAMA5D3x 处理器的千兆网控制器是相同的均是 Cadence 公司的的 IP ,很奇怪两个公司各自设计了一套驱动程序。不过看着 Zynq7000 中 Linux 的设备树文件, Zynq7000 并没有使用自己的驱动程序,而是使用 Atmel 编写的驱动程序 macb.c 。 在裸机代码上, Atmel 提供的裸机代码可阅读性比 Xilinx 的好很多(这里不得不吐槽下 Xilinx 的裸机程序代码,一个驱动程序竟然拆分在多个文件中,十分不方便阅读)。 通过参考 Atmel 的裸机代码很方便的将网络驱动移植到了 SylixOS 下,需要注意 Zynq7000 的中断需要手动清除,而 Atmel 的中断读取状态时就会自动清除。当然这个方便的前提是对 SylixOS 的驱动已经有了一定的了解,对 SylixOS 下的驱动建议参考 imx283 的驱动作为模板进行设计。不过由于是千兆网,这里没有使用 SylixOS 自带的 MII 库,而是根据 Atmel 裸机代码库自行编写了网络链接检测线程,具体方法可以参考 AM335x 的驱动文件。 但在网络完成基本的通信后,出现了两个较大的问题: l 对 GEM 的 DMA 发送描述符,总会莫名其妙的出现问题; l 不能实现 1000 和 100 状态切换,固化后发现如果 uboot 不初始化连通信都实现不了。 经过长时间调试,偶然间发现通过在网络发送函数里面加入 100us 延时,即触发网络发送数据后,延时 100us 。发送函数就工作正常了,这是一个巨大的进步,原来一直以为是 DMA 描述符的使用上有问题,这个现象说明在 DMA 描述符使用上是没有问题的。这个问题最终是由一个同事帮助解决,他查看了这个问题后,有听取了我之前各种测试方法。果断做了两个改动,一个是在 DMA 描述符中增加 volatile 关键字,随后将发送后延时更改为发送前检测,检测当前 DMA 是否是否能够使用。结果系统可以正常工作(之前测试时也有类似检查,但仍然是存在问题,因此总体分析应该是 volatile 起到了作用)。 在检测当前发送描述符是否可用时需要注意一个细节,如果当前不可以,可以使用 API_TimeSleep 函数等待一段时间,但不要将函数返回,频繁调用发送函数也会让网络无法正常工作,很奇怪这个问题,但现象就是这样。 对于 1000M 和 100M 状态切换问题,包括不使用 uboot 初始化就无法通信问题,开始一直以为是 PHY 的问题,以至于将 Linux 的 PHY 读写函数内加入调试信息,全程跟踪 Linux 的 PHY 初始化过程。并没有什么收获。同样是那个同事提醒, uboot 在探测网络连接后,不仅更改了 MAC 控制器的相关标志位,还更改了一个时钟类型的寄存器。经过跟着代码了解到, Zynq7000 的以太网控制器在状态切换时需要在 SCLR 控制器中更改其参考时钟频率。否则无法正常工作。由于代码配置十分复杂,这里通过读取相应状态的数据,在链接状态改变时写入相应寄存器。之后测试网络可以正常实现链接状态改变。 这里附上查找资料时的一个博客内容(根据博客内容,对 Zynq7000 的 GEM 就不要求那么高了): 使用 iperf 对 zynq 进行单 socket tcp 传输速率测试;无网络损伤时,单向网络带宽约为 600Mbps ,双向网络带宽相加约 400Mbps ; 50ms 延时, 1ms 抖动,无丢包时,单向网络带宽约为 155Mbps ,双向网络带宽相加约 40Mbps ;和内核版本无关,经技术支持确定为 PS GEM DMA 的双向传输存在缺陷。 总结 zynq7000 的 bsp 调试过程中历时较长,从年前到年后历时近 2 个月,除去中间一段时间做 IMX6Q 处理器的驱动, Zynq7000 的驱动共花费时间近 2 个月,而网络暂用了一多半的时间,前后请了两位同事协助也没能解决,最终在第三位同事的协助下仅仅使用三天时间得以完美解决。得到的最大的教训是第三位同事做事的严谨程度远高于我们,正式对一些细节抓住不放,是问题得到了很好的理解。而自己由于对细节把握不仔细,虽然考虑到过类似问题,竟然傻乎乎的认为关闭 Cache 能起到 volatile 相同的作用。
更多...
相关资源
专为Zynq-7000 系列FPGA设计的20W 电源电路设计
所需E币: 2
时间: 2023-6-16 11:05
大小: 9.89MB
上传者:
Argent
专为Zynq-7000系列FPGA设计的20W电源电路设计
Zynq-7000 MiZ702N SOC硬件使用手册20161213.pdf
所需E币: 1
时间: 2022-5-5 14:31
大小: 2.93MB
上传者:
西风瘦马
Zynq-7000MiZ702NSOC硬件使用手册20161213.pdf
Zynq7000启动流程介绍
所需E币: 1
时间: 2022-3-30 17:54
大小: 124.66KB
上传者:
Argent
Zynq7000启动流程介绍
Zynq7000术语详解,什么是PL,PS,APU,SCU?
所需E币: 1
时间: 2022-3-30 17:54
大小: 24.52KB
上传者:
Argent
Zynq7000术语详解,什么是PL,PS,APU,SCU?
从零开始,搭建zynq-7000的PS硬件平台--Ethernet
所需E币: 1
时间: 2022-3-30 17:55
大小: 331.79KB
上传者:
Argent
从零开始,搭建zynq-7000的PS硬件平台--Ethernet
从零开始,搭建zynq-7000的PS硬件平台--USB端口
所需E币: 1
时间: 2022-3-30 17:55
大小: 292.13KB
上传者:
Argent
从零开始,搭建zynq-7000的PS硬件平台--USB端口
基于Zynq7000嵌入式平台的Flash验证系统设计与实现
所需E币: 3
时间: 2022-1-6 09:36
大小: 6.37MB
上传者:
ZHUANG
基于Zynq7000嵌入式平台的Flash验证系统设计与实现
基于Zynq7000 FPGA的高速信号采集处理平台
所需E币: 0
时间: 2020-12-25 21:08
大小: 1.3MB
上传者:
czd886
基于Zynq+7000+FPGA的高速信号采集处理平台
ug585-Zynq-7000-TRM
所需E币: 0
时间: 2020-12-24 15:20
大小: 19.53MB
上传者:
西风瘦马
ug585-Zynq-7000-TRM
zynq-7000-product-selection-guide
所需E币: 0
时间: 2020-12-24 15:21
大小: 590.42KB
上传者:
西风瘦马
zynq-7000-product-selection-guide
ZYNQ7000全可编程SoC中的EMMC应用技术研究
所需E币: 0
时间: 2020-11-4 08:37
大小: 1.1MB
上传者:
czd886
ZYNQ7000全可编程SoC中的EMMC应用技术研究
Zynq-7000 SoC 开发入门
所需E币: 1
时间: 2020-8-18 15:43
大小: 5.26MB
上传者:
阿C
一篇Zynq-7000SoC开发入门的资料,通过对ZYNQ三种GPIO:MIO、EMIO和AXI_GPIO的基本输入输出操作,掌握Vivado、XSDK和SDx的开发方法和流程。
V3学院杯:全可编程SoC嵌入式系统设计大赛
所需E币: 4
时间: 2019-12-19 14:16
大小: 1.26MB
上传者:
微风DS
Zynq7000系列开发板面向机器视觉方向,传统的软件工程师、系统架构工程师、以及深度学习的视觉算法爱好者,可以适用软件定义的概念(SDSoC开发工具)进行开发,无需硬件描述语言。本次Zynq7000系列开发板免费试用活动,将提供威视锐公司EagleGo-HD、EagleGo-DSP和EaglePi套件,支持Vivado、Sdk、VivadoHLS、SDSoC开发工具。免费申请Zynq7000:http://forum.eepw.com.cn/forumevent/v3……
基于Zynq-7000的SRIO高速数据传输设计与实现
所需E币: 3
时间: 2019-6-4 22:27
大小: 1.49MB
上传者:
royalark_912907664
为了满足Zynq-7000系列芯片的SRIO数据传输要求,提出了一种基于FPGA控制DMA传输进行SRIO通信的设计方案,并完成了ARM与FPGA核间高吞吐率的数据交互操作。系统的FPGA部分主要用来控制DMA的数据传输和SRIO事务处理,ARM只进行简单的参数设置,能够完成SRIO各种事务类型的传输。实际应用表明,该系统具有操作简便、高效的特点,同时减轻了CPU的负担,达到了预期效果。
更多...
首页
论坛
电子技术基础
模拟技术
可编程器件
嵌入式系统与MCU
工程师职场
最新帖子
问答
版主申请
每月抽奖
商城免费换礼
社区有奖活动
博客
下载
评测
视频
文库
芯语
资源
2024国际航空电子大会
2024国际 AIoT 生态发展大会
3D IC 设计和Chiplet资料下载
车载总线测试和解码方案
新能源汽车三电测试技术中心
在线研讨会
EE直播间
小测验
白皮书
行业及技术活动
杂志免费订阅
免费在线工具
厂商资源中心
帖子
博文
返回顶部
×