fly 100%
码龄10年
  • 401,690
    被访问
  • 190
    原创
  • 107,555
    排名
  • 622
    粉丝
关注
提问 私信

个人简介:大学专业微电子偏工艺设计第一份工作硬件:仿真过电路 设计过电路 画过PCB 做过FPGA三年verilog写程序第二份芯片驱动工作:arcleonarm芯片调试环境ip验证驱动开发脚本编写各种杂不专业

  • 目前就职: 上海富瀚微电子股份有限公司
  • 加入CSDN时间: 2012-05-03
博客简介:

喝水的面包

博客描述:
转不出的圈圈圈圈圈
查看详细资料
博客首页
  • 3
    领奖
    总分 384 当月 8
个人成就
  • 企业官方账号
  • 博客专家认证
  • 获得87次点赞
  • 内容获得55次评论
  • 获得486次收藏
创作历程
  • 4篇
    2021年
  • 36篇
    2020年
  • 22篇
    2019年
  • 16篇
    2018年
  • 12篇
    2017年
  • 20篇
    2016年
  • 14篇
    2015年
  • 66篇
    2014年
成就勋章
TA的专栏
  • 音频
    付费
    13篇
  • python
    付费
    9篇
  • 红外图像处理
    付费
    6篇
  • system verilog
    7篇
  • UVM基础
    3篇
  • ARM
    1篇
  • linux 外设驱动
    2篇
  • linux
    45篇
  • 驱动
    4篇
  • 工具
    31篇
  • windows
    5篇
  • ds-5
    8篇
  • arm汇编
    4篇
  • audio
    14篇
  • uboot
    11篇
  • rtc
    3篇
  • 人工智能
    2篇
  • IP
    2篇
  • rtthread
    1篇
  • 杂项
    6篇
兴趣领域 设置
  • 硬件开发
    fpga开发arm开发
微信二维码
  • 感悟
  • 坚持就有赢的可能
  • 支付宝打赏
  • 支付宝
  • 微信打赏
  • 微信
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

sv-semaphore

作用信号是通过初始化一定数量的许可证,通过限制获得许可证的线程数量来阻塞未获取许可证达的线程,达到限制对特定资源访问的线程数量。实现原理所有多线程访问的控制方式归根结底都是对可共享地址进行管理,可以是简单的类似全局变量做的计数器判断,可以共享内存的数据结构的操作。接口函数new(): Creat a semaphore with a specified number kerys;get(): OBtian one or more keys from the busket;put(
原创
发布博客 2021.10.07 ·
178 阅读 ·
0 点赞 ·
0 评论

c 产生随机数

c 库提供产生随机数的函数rand(),·
原创
发布博客 2021.05.02 ·
92 阅读 ·
0 点赞 ·
0 评论

收益捐赠

做的专栏已经积累几百的收益了,去除掉csdn 的分成就剩下一点了。开始做博客只是为了记录,后面有目的的去分享,中间真的帮助了一些人,对于额外剩余的这部分收益准备做点公益了,国内的组织就算了,不太敢信。个人每年都会想联合国儿童基金会捐,感觉更加靠谱一些,并且也有中国的项目,钱也算用在了同胞手里。先提现100 捐掉,后面不定时的继续将所有收益都捐到这个基金会。...
原创
发布博客 2021.04.27 ·
115 阅读 ·
2 点赞 ·
1 评论

UMV config_db机制

简介UVM 提供了一套全局数据存取的机制,通过这种机制可以实现数据存取和交换。典型应用传递interface传递数据,类似全局变量传递object接口说明发送数据config_db#(int )::set(this,“env.drv”,“pre_num”,100)第一个参数:数据类型 ,可以是变量类型,也可以是接口类型也可以是对象类型。第二个参数:uvm_compnent 实例的指针第三个参数:相对第二个参数的路径第四个参数:传递的实例名第五个参数: 传递的实例的值接收数据
原创
发布博客 2021.01.23 ·
244 阅读 ·
1 点赞 ·
0 评论

CSDN 博客主页加打赏功能

获取收款二维码微信和支付宝的支付功能的收款码,选择保存二维码 ,最好不要截图,不上上面一堆乱七八糟的信息都带出来了。上传二维码将二维码保存到服务器的方法还是通过创建一篇文章,将图片上传到文章中,图片同步就上传到了csdn的服务器了。创建栏目当前只能创建一个栏目,栏目中创建多个分块,有公众号的分块 有支付宝打赏分块 微信打赏分块,分块限制不清楚。<div id="custom_column_41051715" class="panel"><ul class="panel_
原创
发布博客 2020.12.08 ·
187 阅读 ·
0 点赞 ·
0 评论

CSDN 添加微信二维码

添加微信二维码到任意一篇博客复制二维码链接地址替换到img src 段中<ul class="panel_head"><span>感悟</span></ul><ul class="panel_body">坚持就有赢的可能<img src="https://img-blog.csdnimg.cn/20201203084648159.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5
原创
发布博客 2020.12.03 ·
185 阅读 ·
1 点赞 ·
2 评论

Python多模块写log文件

使用logging 构建log系统遇到一个问题,多个模块中使用同一个log文件,这样就涉及到多线程之间同步写log的问题了.其实多线程logging 已经帮助处理了,也有锁来控制了.文档中有说明:实际操作中就在住module 中构建一个logger 节点,创建console 和file的句柄,之后在每个子模块中加载logging ,然后使用logging 进行信息保存.log 的封装配置:test.pymain.py 调用log 方法生成logger 节点和console file 句柄,
原创
发布博客 2020.11.28 ·
348 阅读 ·
0 点赞 ·
0 评论

Python logging 实现log 系统

引子最常见的debug 方法就是打印,无论是console 还是写文件都比较简便.Python 使用最多的也是打印,print() 方法.print("INFO: xxx")读写log 文件fp = fopen("./log.txt",'a+')fwrite()说明这样的log 总归是比较简陋的,很多东西都需要自己实现,比如打印等级 格式 颜色 字符编码等,更难的是多module 多线程的调试信息保存,这里Python自带了一个module logging进行了封装,可以解决大部分的通
原创
发布博客 2020.11.28 ·
150 阅读 ·
0 点赞 ·
0 评论

python 查看module说明

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
原创
发布博客 2020.11.28 ·
398 阅读 ·
0 点赞 ·
0 评论

libpng 处理png图片

尝试最近遇到一个需求需要处理png 图片,由于处理过bmp 图片,所以想跟bmp 图片的处理过程一样直接去掉头信息,但是发现解开png之后发现头信息中数据长度和实际的的,data 数据量对不上,发现数据是压缩,跟bmp 的就不一样了。解决方案自己去解压数据肯定不现实,查到png 图片一般都是使用libpng 来处理,libpng 是一个开源库这个开源库有windows 和Linux 的版本,有编译库 有demo 在开源软件中算是一个比较完善的项目。编译现需要下载两个开源代码1.libpng
原创
发布博客 2020.11.26 ·
268 阅读 ·
0 点赞 ·
0 评论

shell 和csh 下 产生随机数

shell 中使用随机数,简单思路是打开/dev/random ,读取随机数,但是这个样就太过繁琐,shell 中有内建函数RANDOM,这个RANDOM应该是封装了读写/dev/random 的操作。#!/bin/shrand=$RANDOMecho $rand实验证明csh 中是没有这内建函数的,需要在csh 中调用sh 脚本,然后读取返回值。ran.sh#!/bin/shecho $RANDOMrand.csh#!/bin/cshset rand = ./shecho "
原创
发布博客 2020.11.19 ·
243 阅读 ·
0 点赞 ·
0 评论

shell下使用vim 文件处理

shell 本身具有文件处理的功能,包含部分内建函数,但毕竟不是编辑器,实现部分查找、匹配、替换的功能太过繁琐,这中应用常见编辑器反而更有优势。vim 有带参数的模式, 平时少有人关注,例如vim -v Vi modevim -e Ex modevim -D Debugging mode...shell 下主要使用的是vim -c <commond> 的命令模式,commond 就是在vim 下命令模式输入的命令,效果和vim ide 打开后: cm...
原创
发布博客 2020.11.18 ·
499 阅读 ·
0 点赞 ·
0 评论

python跨文件使用全局变量

Python 定义了全局变量的特性,使用global 关键字修饰global key_word但是他的一大缺陷就是只能本module 中也就是本文件中使用,跳出这个module就不行。try 1:使用一个更宏观的思路,全局变量就用全局加载的模块解决,很遗憾也是不行,file_1:global aa = "test"file 2:import file_1print(a)报错a没有定义try 2:file_1:global aa = "test"file 2:impo
原创
发布博客 2020.11.11 ·
2473 阅读 ·
2 点赞 ·
7 评论

vs studio main 函数参数初值

应用可是指定外部输入,包括 立即数 字符串和文件等,写法上有一个范式:void main(int arg,char *argv[]){}运行时赋值arg 是可变数组参数argv 的成员个数,argv 是输入的参数。可以,argv[]也可以不赋初值,遮掩就需要在运行是添加参数test.ext 1 2IDE 中赋值属性-设置调试-运行参数结果代码中赋值可以在代码中赋值,固定下来...
原创
发布博客 2020.11.06 ·
145 阅读 ·
0 点赞 ·
0 评论

python 数组基本操作

Python 没有数组概念 ,使用列表(list)来实现的,罗列几个基本操作:声明一维demo = [] 动态大小数组,成员数可变demo =[3],静态大小数组,三个成员,标号从0开始demo = [“a”,“b”] 数组初值二维demo = [[]*3]demo = [[“3”] [“4”]]增加成员demo = [] 声明动态数组demo.append(“a”) 增加一个成员清空demo = [“a”,“b”]demo.clear()拷贝Python中的数组虽然是可变变
原创
发布博客 2020.11.05 ·
340 阅读 ·
0 点赞 ·
0 评论

python 调用shell 发送命令

作为当前最火的跨平台脚本语言,Python的应用范围越来越广,已经开始取代批处理脚本。对于linux 下的替代shell 脚本,他需要提供一个调用shell 执行命令的接口传统的os库os.system()想用使用更多的:subprocess.call()...
原创
发布博客 2020.11.04 ·
226 阅读 ·
0 点赞 ·
0 评论

ubuntu18.08 下安装百度网盘

网盘现在只剩百度还能用了,但是在Linux平台已经都没有方案,对于仅有一个Ubuntu系统的开发环境就很麻烦了,幸好最近百度终于开发了Linux下的环境,但是还有一些限制。现在仅支持Ubuntu 18 ,旧版本都不支持,先下载,Ubuntu的安装程序 baidu…deb终端执行:sudo dekg -i baidunetdisk.....debenjoy...
原创
发布博客 2020.10.31 ·
167 阅读 ·
0 点赞 ·
0 评论

QT ubuntu安装和demo

下载在地址:http://download.qt.io/official_releases/qt/里面选一个版本就可以,这里选的/5.9/5.9.2/q下载完村房子啊Download 下#安装赋予执行权限chmod +x qt-opensource-linux-x64-5.9.2.run执行安装./qt-opensource-linux-x64-5.9.2.run弹出的对话框一路next,遇到申请装好就申请账号。安装完的样子demoNew Project-> Appl
原创
发布博客 2020.10.31 ·
149 阅读 ·
0 点赞 ·
0 评论

svn提交指定文件

svn 相比 git 没有暂存区的概念,所以提交之前需要区别那些事需要提交哪些仅仅是临时改动!提交所有改动:查看所有改动的命令svn status这时可以看到改动的文件有一个modify 的简写 M如果所有改动文件都需要改写直接使用命令svn -m 'xxxxx'提交改动文件中一个或多个,需要做一个文件列表,将需要提交的文件和完整路径写进去echo "sss/cc.c" >> targets.txt然后使用命令提交svn ci commit -m 'xxxxx' -
原创
发布博客 2020.10.08 ·
2182 阅读 ·
0 点赞 ·
0 评论

xcelium 编译过程

使用最新candece 仿真工具xcelium 进行编译仿真,需要了解具体的过程。第一步:compile:1.检查语法和语义错误2.建立设计数据的二进制数据结构(主要是verilog)3.创建sv 和vhdl 的二进制目标文件第二步:elabrate相当于软件的链接过程1.构建设计的结构和信号连接2.创建签名和verilog 的数据3.创建初始化仿真的快照第三步:simulate相当于执行编译仿真激励链接第二步生成的库...
原创
发布博客 2020.10.06 ·
732 阅读 ·
3 点赞 ·
0 评论
加载更多