【IntelCup】-08-08-比赛结束
最后一场答辩今天上午是Intel的最后一场答辩,效果应该说比前两次的要好一些。现场的展示非常的流畅,专家的提问都问在了想到的点上,技术方面的问题例如知识蒸馏、做多人检测等,对答如流,最后一次答辩就这样顺利结束了。
最后应该是国二等奖(上次蓝桥是国三,按照找规律,说不定下次再参加一个比赛就是国一了,hhh),整个比赛过程非常的流畅,我也发现了选择正确和好的工具的重要性,基于python的软件开发让我感受到了流畅和轻松。
总结一下这次整个IntelCup:
首先,系统学习一门课程或者技术的最好的方法是去阅读相关的专业入门书籍。正是通过一本专业的书籍和这个项目的实践,我才逐渐熟练起来了python编程。
闭环的总结非常重要(CodeSheep),通过这次比赛呢,我也认识到一件事情无论最后结果好还是坏,及时的总结总是大有裨益的。
最后一点是关于最近的状态问题,我觉得这两天好像有一点飘了。写点东西让自己静下来很重要。
【ZYNQ7010】-02-HDMI显示
想做HDMI实验还是按照官方的教程搭建这个HDMI显示的
换成Linux环境开发现在已经在linux环境下,安装好了Vitis套件,但是官方给出的启动方案(必须在制定的文件目录下,启动脚本运行才能够显示图形化界面)并不是很好用。
现在想要做的第一件事情是将这个命令添加到全局执行。
Vitis系列软件设置为全局启动
参考资料:
Linux下快速启动Xilinx Vivado方法
Ubuntu启动Xilinx Vivado
为什么粘贴链接时候不能够自动补全标题?换过编辑器(zettlr和vscode),这个问题还是存在,目前暂时认为是复制粘贴功能的问题
最后是参考了资料2的内容,直接在.bashrc中添加了source /tools/···
使用SDK固化FLASH代码固化今天还是先做一个简单的SDK固话FLASH的项目,将上次完成呼吸灯项目固化到flash当中。
debug流
报错
[Common 17-69] Command failed: write_hw_platform is only supported for synthesized, imple ...
【xup_summer_camp】-02-FIR滤波器实验
完成FIR滤波器实验记录,主要是跑一下例程,对麻鹬和麻雀的声音(两者的频谱上是分开的,能够通过FIR滤波器进行滤除)。
使用的仓库地址(fork了一下原仓库):PengXuanyao/XilinxSummerSchool2022 (github.com)
Vitis导出RTL有bug按照教程顺序进行操作时,无法生成IP,出现报错:ERROR: [IMPL 213-28] Failed to generate IP.。
查阅了一下,是一个普遍的问题,可能是由于系统时间溢出导致的(?不太确定),通过打上官方的补丁即可修复。
问题解决,注意:需要在Xilinx的根目录下运行补丁,而不是在\patch的目录下运行
笔记本跑起来明显有一点卡顿。
按照官方的文档,顺利地跑下来整个工程,总结一下如何使用pynq进行开发和验证:
实际生成硬件框架使用的是hls和vivado工具链,pynq是给与了一个调用和交互的接口,用户能够轻松地对硬件进行验证和可视化等操作。
使用jupyterbook的时候,是相当于在芯片PS端上运行了python环境,然后调用了PS端的接口,整个流程图如下(摘自这 ...
【xup_summer_camp】-01-Z2调试
调试Z2板卡第一次按照网上的教程烧录了V2.6的官方img文件,发现不能启动(只有电源灯亮起了,目测是烧录的时候出了问题)。下午听了xilinx的讲座,发现要用v2.7的img进行实验,故重新烧录测试。
第二次烧录成功使用的是V2.7的img,烧写时间大概为1至2分钟(在设备管理器中查看PYNQZ2的COM端口时突然正常)。
正常启动后,系统会亮起所有的按键上的LED。
在Z2跑例程JupyterNotebook
写好md之后,需要点击运行才会出现渲染之后的效果:
源代码(编辑模式):
点击运行(或者使用快捷键Ctrl + Enter):
渲染之后的效果(命令模式):
官方文档的说明:
快捷键:
在command模式下,有点类似vim的快捷键,使用Help–>Keyboard Shortcuts进行查看:
参考资料:
实验概述 - 深度学习体系结构(2021秋季) | 哈工大(深圳) (gitee.io)
【xup_summer_camp】-00-PYNQ-Z2-Start
今天开始搞Xilinx的暑期学校了,东西有点多,得先把板子摸一遍才行。
首先是看了一篇入门的博文,总结一下,需要准备的东西包括:
一根网线
一个Micro-USB数据线
一个SD卡
如何在Zettlr里面上传图片这个是个硬伤,以前用Typora用习惯了,上传图床实在是太方便了。
其实发现这样也不是很麻烦,直接手动通过Picgo上传吧(Ctrl + Shift + P),然后再把链接复制粘贴过来即可。
接着说PYNQ照着官网点店铺中的下载栏目的文档即可。
刚才过了一遍PYNQ-Z2的手册,里面有几个小地方需要注意一下:
首先是电源供电的问题:
电源供电有两个模式,一个是USB直接给板子供5V的电压;还有一种是输入板载的电源模块输入5V到12V的电压。
两个模式通过一个跳线帽J9来选择:
然后是Boot选择,到时候如果是从SD卡中启动的话,需要选择这里左边的SD卡。
【IntelCup】-08-03
做多人检测复测的时候,我们的想法是在原来的基础上,能够做到双人检测。实际在操作的过程中发现改动还是不太好弄,今天先把这个多人检测的界面写好,大概安排一下流程:
08-03:完成多人检测界面设计;08-04:完成实时更新界面视频;08-05:完成按键功能实现;08-06:完成多人检测;
今天pip安装出了问题,当时估计是pip已经被损坏了,就按照这个博客修复了一下。
完成界面,出了一点小毛病,发现是__init__打错了写成了__int__
【TI2022】混沌信号发生器
混沌信号发生器今天整个测评都已经结束,最后的结果时我们开始没有想到的,居然连一个波形都没有调出来,需要好好反思一下。首先是赛前的备赛阶段,这是最主要的原因:那就是没有花够时间,理由(借口)有很多,实习、夏令营和Intel杯占据了很多时间,再加之没有好好组织团队;然后就是比赛的选题阶段的失误,没有仔细考虑选题的问题,我们选择了其实是不擅长的模拟题(偏难了,对于我们来说),也考虑到我可能会被intel杯耽搁,不能写数字部分;同时这四天三夜里面,也没有花足够的时间,过于不紧张,中途甚至还外出吃饭去了(食堂关门比较早也是一个原因)。
在保证正常作息和兼顾intel的条件下,我只能说我尽力了。如果我们再选一次题目,我们会选择其他题目(陈老师说的这句话很有道理,看似简单的题不要选(要么有大坑等着,要么很卷),因此要选有一定难度但在接收范围内的题目为好)。
下面是当时比赛期间做的一些记录,继续向前看吧。
加快MS仿真速度调节仿真的单位时间步长:Multisim仿真波形变化太慢和报错_津野自渡的博客-CSDN博客_multisim示波器波形闪动太快
蔡氏电路官方文档学习Diagram这一节描述了蔡 ...
【python】-01-一个小游戏
Alien Invasion这个小游戏是《Python编程:入门到实践》中的一个小例子,希望能够过这个项目进一步熟悉Python。
Sublime中使用conda新建的环境:sublime text3 配置conda环境_执笔仗剑天涯的博客-CSDN博客,注意自己的文件路径要正确(window上的路径分隔符为\,这台电脑上的路径在D:\Users\admin.conda\envs)
创建类进行封装
【Zettlr】-00-使用Zettlr
Zettlr显示渲染之后的样子现在Zettlr出来的结果还不是我想要的,有几点不方便的地方;
表格怎么显示
图片是否直接可以上传图床
输出的PDF格式非常难看
如何同步博客
显示问题网上找了一圈,发现zettlr应该是不支持实时预览,只能这样显示了,不过也还好,看着不别扭。
图床问题这个上传图片好像还不能够直接复制粘贴自动上传,这就有点麻烦了。以后看有没有什么办法解决掉,现在暂时放一下
输出格式问题网上建议使用这个编辑器写文本,导出还是到Typora或者其他编辑器中去。以后设计到使用Latex再看怎么用这个导出吧。
如何同步博客使用hexo同步博客(和zettlr没有什么关系):
查阅了网上的各种方案,最后选择使用两个分支的方案来同步
以前没有弄好的原因是因为在主题的文件架里面有一个用于下载主题的仓库,不能够在一个仓库里面包含另一个仓库(利用Hexo在多台电脑上提交和更新github pages博客 - 简书 (jianshu.com))| (如何多端同步 Hexo 框架博客 - 腾讯云开发者社区-腾讯云 (tencent.com))(第二篇文章中有很多干货,最后是按照第二篇 ...
【xup_summer_camp】-07-18
HLS相关知识进程和线程:这个博客描述了这两个基本概念之间的区别和联系:一个进程可以包含一个或者多个线程(轻量级进程)进程和线程的区别(超详细)_ThinkWon的博客-CSDN博客_进程和线程的区别
还有一个协程:面试必考 | 进程和线程的区别 - 知乎 (zhihu.com)
如何进行算法优化:作为硬件加速的基本方法,就是要知道那些地方可以做并行计算,那些地方有数据关联,只能做串行计算。
将顺序程序运用转换成生产者消费者模式(Producer - Consumer Paradigm),中间加入Buffer缓冲,保持两者之间的吞吐量一致。
pics
Stream(流)的定义是指无界和连续更新
流水线
调度是指分析算法的流程,绑定指的是将变量映射到寄存器等硬件资源
控制逻辑提取需要在有循环的状态下产生