月落乌啼霜满天@3760
码龄6年
关注
提问 私信
  • 博客:88,366
    动态:61
    88,427
    总访问量
  • 27
    原创
  • 1,794,258
    排名
  • 73
    粉丝
  • 0
    铁粉
  • 学习成就
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
  • 加入CSDN时间: 2019-02-22
博客简介:

weixin_44681954的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    4
    当前总分
    540
    当月
    12
个人成就
  • 获得134次点赞
  • 内容获得37次评论
  • 获得539次收藏
  • 代码片获得1,906次分享
创作历程
  • 6篇
    2023年
  • 10篇
    2022年
  • 10篇
    2021年
  • 1篇
    2020年
成就勋章
TA的专栏
  • linux
    2篇
  • 嵌入式
    6篇
  • IC验证
    1篇
  • VCS\VERDI
    2篇
  • 硬件
    13篇
  • SOC-外设
    1篇
  • 调试
    2篇
  • 服务器
    1篇
  • 综合
    2篇
  • #时序
    1篇
兴趣领域 设置
  • 嵌入式
    单片机嵌入式硬件
  • 硬件开发
    fpga开发
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

180人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

从Keil迁移到SDCC

当前,在单片机开发领域,Keil是广泛被采用的开发工具。然而,其编辑器功能相较于现代的VScode显得相当陈旧和不足。过去,我也曾试验过使用platformIO,其核心理念是对SDCC和stcgal进行封装,从而提供一个更加集成的开发环境。现在,我们将基于SDCC和stcgal来搭建一个全新的单片机开发环境。我们将现有代码从Keil迁移到SDCC,确保原有的Keil代码能够在新环境中顺畅运行。
原创
发布博客 2023.12.29 ·
1889 阅读 ·
27 点赞 ·
1 评论 ·
38 收藏

perl使用find函数踩坑

写了一个脚本可以同时检查多个仿真log文件,并生成html表格。按照文件修改时间从新到旧排序。然后一直无法使用stath函数获取ctime。find函数会改变程序执行的当前目录函数是在$dir目录下运行的。
原创
发布博客 2023.12.26 ·
1693 阅读 ·
21 点赞 ·
0 评论 ·
24 收藏

Linux 配置RealVNC远程访问

官网现在是收费的,官方提供的免费试用,但是只能通过互联网云端进行连接,无法本地连接。7.XX版本之后无法使用序列号进行破解,推荐使用6.XX版本。
原创
发布博客 2023.11.19 ·
3836 阅读 ·
6 点赞 ·
3 评论 ·
29 收藏

在systemverilog中使用断言(assert)进行复位检查

考虑以下场景:复位触发后,需要检查端口信号或内部关键信号是否被正确复位。复位的验证不应该依赖于某个特定的case, 应该贯穿验证的整个阶段。的检测,用于判断复位触发时,端口信号是否是复位值。推荐使用断言进行复位检查。
原创
发布博客 2023.11.14 ·
758 阅读 ·
0 点赞 ·
2 评论 ·
2 收藏

vcs\verdi三步编译VIVADO库

使用vcs仿真带vivado的IP的设计的时候,经常需要联合编译,vivado的库有的是VHDL文件,这时又需要vcs进行三步编译。VCS三步编译是将两步编译的第一步,拆分成了Analysis+Elaboration,这样做的好处是可以编译VHDL文件。若使用一条命令编译源文件和uvm环境,则uvm环境会默认在最后开始编译,这就导致前面编译源文件的时候会报错,所以。我们刚才使用vivaod生成了一个synopsys_sim.setup文件,该文件主要指定了Xilinx的库。文件的时候,才会使用三步编译。
原创
发布博客 2023.08.28 ·
2680 阅读 ·
6 点赞 ·
6 评论 ·
31 收藏

VCS编译参数说明

VCS常见的编译参数说明
原创
发布博客 2023.08.28 ·
2300 阅读 ·
5 点赞 ·
0 评论 ·
38 收藏

Generate for生成 一系列有细微不同的模块

遇到一个关于Generate 的问题。
原创
发布博客 2022.11.14 ·
302 阅读 ·
0 点赞 ·
1 评论 ·
1 收藏

数字二倍频电路

以异或门为例进行分析。t0时刻:Q=0;此时clk_o = clk ^ Q = clk ^ 0 = clk;t1时刻:clk 时钟上升沿来临,传递到寄存器时钟端。clk_o 拉高,寄存器状态更新。Q=1;t2时刻:Q=1的状态传递到寄存器的时钟端。此时clk 仍然处于高电平状态。clk_o开始拉低。触发器状态不更新。所以clk_o的高电平持续时间就是t2-t1。t3时刻:clk 下降沿来临,此时clk_o = clk ^ Q = clk ^ 1 = ~clk;......
原创
发布博客 2022.08.29 ·
3262 阅读 ·
3 点赞 ·
1 评论 ·
22 收藏

DCM和PLL和MMCM的差别

前言之前移植接触的都是Xilinx7系列的板子。项目需要使用Xilinx5系列的板子,两者的时钟单元不一样。在网上搜集了一些资料,总结一下DCM\PLL\MMCM之间的差别。环境无正文​ 在 Xilinx FPGA 中,时钟管理器称为时钟管理,简称 CMT。我们使用的DCM /PLL/MMCM都包含在CMT中。​ DCM是旧技术,在Spartan-3和Virtex-4系列中使用。Spartan-6和 Virtex-5系列同时使用PLL和DCM。在Virtex-6系列中开始使用MMCM,且V
原创
发布博客 2022.05.14 ·
1241 阅读 ·
1 点赞 ·
0 评论 ·
17 收藏

ISE 14.7 无法启动:segmentation fault (code dump)

解决ISE启动出现segment fault的问题
原创
发布博客 2022.05.01 ·
708 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

镁光nor flash 开源控制器调教记录

前言​ 懒癌发作,项目早就结束了。但是一直不想写。😄先占个坑,以后再写完整。​ 项目需要用到一个镁光的flash,需要一个开源的qspi-flash控制器,连接到CPU上作为CPU外设。感谢开源qspi-flash 控制器已经提供了比较完善的架构。我需要做的主要有:根据flash型号的差别迁移flash 的指令根据项目需要将控制器的ahb接口转接到apb接口迁移原项目中使用的IP,看不到源代码的IP都要被替换替换项目中的存储器ram,与公司项目整体保持一致搭建仿真环境,上板验证。
原创
发布博客 2022.04.09 ·
1641 阅读 ·
2 点赞 ·
0 评论 ·
7 收藏

开源APB2WisnBone UART IP 的使用

前言项目需要使用一个较为完成的UART IP。OpenCores有不少开源的UART IP。但是大多是WishBone总线,项目接口时APB,需要进行一个转换。而且项目使用的IP需要有源码。Github 上WishboneAXI和wb2axip这两个项目都可以进行转换。其中WishboneAXI是以Xilinx IP的形式提供的,使用非常方便。但是我在使用WishboneAxI的时候Vivado仿真失败。最后还是决定自己写一个APB 到 WishBone的总线转换。学习工程中的一大困扰就是网上的资
原创
发布博客 2022.03.03 ·
3397 阅读 ·
5 点赞 ·
0 评论 ·
13 收藏

ARM 外部中断的过程

前言ARM的中断和51单片机的中断有不少不同的地方,这里梳理一下ARM外部中断的实现过程。环境ARM单片机:公司设计的EM537单片机ARM指令集型号:V7-A正文一、ARM中断类型首先参考《ARM体系结构与编程》第九章异常中断处理章节中的内容。ARM中断可以分为以下几种类型:ARM中断向量的地址和优先级表格ARM共有8种类型的中断,中断的数目可以扩展。EM537中通过TZIC模块,将IRQ中断数目扩展至128。FIQ的中断,优先级高,延迟低。常用于DMA类型的中断。我
原创
发布博客 2022.02.23 ·
1618 阅读 ·
1 点赞 ·
0 评论 ·
8 收藏

51学习(2):vscode+ Embedded IDE开发环境搭建

前言platformIO虽然可以用于编译8051,但是修改头文件包含路径,以及编译器选项都较为麻烦。Embedded IDE界面类似Visual Studio,设置较为方便。环境单片机:普中-STC89C516RD+正文一,安装Embedded IDE和SDCC编译器platformIO使用的也是SDCC编译器,但是Embedded IDE需要自己下载安装SDCC编译器下载安装SDCC编译器:sdcc官方网页sdcc-4.1.0-x64-setup.exeEmbedded ID
原创
发布博客 2022.02.23 ·
5143 阅读 ·
2 点赞 ·
0 评论 ·
12 收藏

51学习(1):vscode+platformIO 开发环境搭建

前言目前单片机开发大都使用Keil。但是Keil的编辑器很落后,和VScode比差远了。今天用vscode+platformIO插件搭建单片机开发环境。环境单片机:普中-STC89C516RD+正文一,安装vscode 和 platform点击链接下载安装vscode: vscode官方下载地址vscode 搜索安装 PlatformIO IDE安装时间较长二,platform 使用可以设置板子型号stc89c52。板子的型号并不重要,因为型号决定板子支持的下载方式,支
原创
发布博客 2022.02.23 ·
9282 阅读 ·
3 点赞 ·
12 评论 ·
36 收藏

嵌入式学习

1 安装 qemu1.1 命令wget https://download.qemu.org/qemu-6.2.0.tar.xztar xvJf qemu-6.2.0.tar.xzcd qemu-6.2.0./configure --target-list=arm-softmmu,arm-linux-user --enable-debugmake1.2 报错与修复1.2.1 ERROR: Cannot find Ninjasudo apt-get install ninja-build
原创
发布博客 2022.02.23 ·
1772 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

解决嵌入式arm编译除法,报error:__umodsi3和__udivsi3的问题

这里写自定义目录标题前言问题1:不支持除法问题2:bl跳转问题问题3:no memory region specified for参考文献前言SOC原型验证,编译程序的时候遇到不支持除法的问题。网上没有一个方便的解决方法,我利用sed替换实现了一个好一点的方法。文章以遇到问题的顺序来记录。问题1:不支持除法这个问题的乐音还是比较简单的,网上讲的很清楚,arm是精简指令集,本身不支持除法需要调用第三方的库软件实现。这里调用lgcc的库,需要再连接的时候加上,如下图所示。这里-l 后面加库名gcc
原创
发布博客 2021.12.26 ·
1685 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

FRP反向代理 连接内网服务器上的jupyter

前言服务器只能校内登录,现在都在校外实习挺麻烦的。利用FRP可以反向代理,然后利用SSH端口映射。不用新开端口就可以直接访问jupyter notebook。文章目录前言FRP反向代理公网中继服务器端内网服务器端外网客户端参考文献FRP反向代理公网中继服务器端编辑配置文件 frps.ini[common]bind_port = 7000运行命令nohup ./frps -c frps.ini &内网服务器端编辑配置文件frpc.ini[common]server_add
原创
发布博客 2021.12.15 ·
1091 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

调代码发现有一个信号没有停止,然后改代码做实验,忙活了4个小时。然后又回头测试了一下原始代码,咦竟然是正常的。。。。。。我是谁,我在哪,我在干吗? 以后到点就午睡,脑子不清醒,很容易出问题。

发布动态 2021.12.14

模块深层调用-避免端口层层穿出的两种方法

前言有的时候,比如设计中调用了DDR。DDR控制器的芯片相关的端口需要连接到管脚上,如果一路穿出来的话太麻烦。然后就想能不能不用引出利用IP约束直接在内部绑定到管脚。约束文件顺序首先IP约束的优先级高于用户约束,IP约束里面的设置可以覆盖用户里面的设置。...
原创
发布博客 2021.12.08 ·
656 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏
加载更多