自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(2384)
  • 收藏
  • 关注

转载 Verilog十大基本功3(testbench的设计 iout类型端口信号处理)

总体感觉, testbench 是个很难的事情, 这里讨论的只是一些最基本的东西。如果是在 ModelSim 中作为单独的模块仿真,那么在模块输出的时候,不能使用 force 命令将其设为高阻态,而是使用。也就是说, 在内部模块最好不要出现 inout,如果确实需要,那么用两个 port 实现,到顶层的时候再用三态实现。方法二: 使用 force 和 release 语句,但这种方法不能准确反映双向端口的信号变化,但这种方法可以反在块内。芯片外部引脚很多都使用 inout 类型的,为的是节省管腿。

2022-11-22 20:54:19 735

转载 Verilog十大基本功4 (FPGA四大设计要点)

的用处比我们平时想象的用处更广泛,原因在于其中集成的模块种类更多,而不仅仅是原来的简单逻辑单元(LE)。早期的FPGA相对比较简单,所有的功能单元仅仅由管脚、内部buffer、LE、RAM构建而成,LE由LUT(查找表)和D触发器构成,RAM也往往容量非常小。现在的FPGA不仅包含以前的LE,RAM也更大更快更灵活,管脚IOB也更加的复杂,支持的IO类型也更多,而且内部还集成了一些特殊功能单元,包括:DSP:实际上就是乘加器,FPGA内部可以集成多个乘加器,而一般的DSP芯片往往每个core只有一个。

2022-11-22 20:50:27 330

转载 Verilog十大基本功6 (关于Verilog的可综合性)关于Verilog的可综合性

(1)所有综合工具都支持的结 构:always,assign,begin,end,case,wire,tri,aupply0,supply1,reg,integer,default,for,function,and,nand,or,nor,xor,xnor,buf,not,bufif0,bufif1,notif0,notif1,if,inout,input,instantitation,module,negedge,posedge,operators,output,parameter。= DataOut;

2022-11-22 20:47:45 405

转载 Verilog十大基本功8 (flipflop和latch以及register的区别)

比如现在用一个clk接到latch的使能端(假设是高电平使能),这样需要的setup时间,就是数据在时钟的下降沿之前需要的时间,但是如果是一个DFF,那么setup时间就是在时钟的上升沿需要的时间。latch是电平触发,相当于有一个使能端,且在激活之后(在使能电平的时候)相当于导线了,随输出而变化,在非使能状态下是保持原来的信号,这就可以看出和flip-flop的差别,其实很多时候latch是不能代替ff的。锁存器的输出对输入透明的,输入是什么,输出就是什么,这就是锁存器不稳定的原因,

2022-11-22 20:42:44 917

转载 Verilog十大基本功0(阻塞赋值与非阻塞赋值)

阻塞与非阻塞赋值是 Verilog 语言中最基本的部分,也是让大部分 Verilog 新手最困惑的地方。关于阻塞与非阻塞的著作文章可谓汗牛充栋,这些文章对阻塞与非阻塞赋值的原理进行了非常详细的讲解,但新手读了之后依然有种似懂非懂的感觉,编码过程中一如既往的犯错。所以,本文的目的立足于提供一种实用化的解决方案,用最简单的语言和形象的类比让新手能够一目了然的明白正确的编码方式以及相应的电路行为逻辑,关于仿真细节的讲解不是本文重点,需要了解更多细节的朋友可以参考文后列举的参考文献。

2022-11-22 20:22:36 468

转载 ZYNQ-AXI_GP接口和AXI_HP接口的异同

对于GP接口(general purpose)通用目的接口,有四个接口(两个从端口,两个主端口);GP接口直接连接到的是中央互联区(central interconnect),然后由中央互联区再连接到OCM interconnect和存储器接口上;AXI_GP接口直接连接到主互连和从互连的端口,没有任何额外的FIFO缓冲,不像AXI_HP接口使用FIFO缓冲以提高性能和吞吐量。学习关于ZYNQ IP核中的GP接口和HP接口的异同,介绍关于AXI_GP接口和AXI_HP接口的相关内容。

2022-11-21 17:27:35 3162

转载 ZYNQ中PS、PL的含义

(Snoop Control Unit),用来保持双核之间的数据Cache的一致性,两个ARM-Cortex A9,如果一个写存储时只写进缓存,没写进主存,如果第二个A9读操作,涉及到第一个写脏了的数据段, SCU要保证第二个A9的缓存里是最新的数据。系统级看门狗定时器, 这个看门狗的时钟和复位信号,都可以来自于芯片外部, 这样,即使系统有严重故障,比如时钟频率本身都有问题了,仍然可以通过与系统无关的外部信号计数,计数满就复位。两部分,PS就是ARM的SOC部分,是整块板子的处理系统。

2022-11-21 17:25:50 1373

原创 zynq 资源表格

zynq

2022-11-21 12:44:53 148

原创 一篇文章讲清楚芯片设计全流程及相关岗位划分

IC是Integrated Circuit的缩写,即集成电路,是我们所说的芯片,IC设计就是芯片设计。这里就需要科普一个概念:一颗芯片是如何诞生的?就目前来说,有两种芯片产出的模式。1、一条龙全包IC制造商(IDM)自行设计,由自己的产业线进行加工、封装、测试、最终产出芯片。2、环节组合IC设计公司(Fabless)与IC制造公司(Foundry)相结合,设计公司将最终确定的物理版图交给Foundry加工制造,封装测试则交给下游厂商。而IC设计,即上游设计中所处的部分。

2022-11-18 22:01:17 2935

原创 从设计到流片丨芯片设计全流程及要用到的EDA工具

(对synopsys 的Astro 而言, 经过综合后生成的门级网表,时序约束文件 SDC 是一样的,Pad的定义文件–tdf , .tf 文件 --technology file,Foundry厂提供的标准单元、宏单元和I/O Pad的库文件 就与FRAM, CELL view, LM view形式给出(Milkway 参考库 and DB, LIB file)Foundry厂都有对金属密度的规定,使其金属密度不要低于一定的值,以防在芯片制造过程中的刻蚀阶段对连线的金属层过度刻蚀从而降低电路的性能。

2022-11-18 20:46:51 1499

转载 FPGA驱动eMMC系列(一)-------简介

由于项目需要使用到eMMC存储器,所以特地的去学习了一下。在网上也找了许多资料,但大多是介绍性的,以及对文档的翻译,没能很好的讲解如何从零编写Verilog代码来控制eMMC。看了很多文章,但大多大同小异,还是无从下手。故在这里分享我的学习例程,教大家如何编写eMMC驱动,以使用为主,至于一些理论和不相关就不作介绍了,同时可以作为参考,避免踩坑,同时欢迎大家与我交流,共同进步。本例基于JESD84-B50手册进行学习,也就是eMMC5.0,目前最新的好像是eMMC5.1,但差距应该不大。

2022-11-17 15:02:02 1325 1

原创 ARM 的 的 AMBA 总线

公司的CoreConnect总线、Silicore Corp公司的Wishbone总线以及Altera公司的Avalon。SoC 设计的需要。对 IP 核的准确评估和选择是 IP 集成的基础,高效灵活的 IP 核互连结构是 IP 集。AXI 总线的整体架构,选取了总线互联方式,设计了仲裁器模块并对 Decoder 模块、并且根据不同类型的连接对象,分别定义了 AHB、ASB 核 APB 三种类型的总线。第三章,AXI 总线的设计。不同的片上总线在不同的应用领域具有各自的优势,由于 ARM 公司的合作伙伴。

2022-11-17 11:57:50 649

原创 VALID/READY 握手机制

对于接收方编程来说,检测到 VALID 信号置起,如果系统正忙,完全可以让发送方等待,发送方在完成传输之前都不会置低 VALID 信号,不需要考虑发送方撤销传输的可能。,分别为写地址,写数据,写回应,读地址,读数据通道。机制,指的是发送方通过 VALID 信号置起控制发送速度的同时,接收方也可以通过 READY 信号的置起与否控制接收速度,反压发送方的发送速度。接收方按照协议可以依赖发送方,但如果此时发送方也依赖接收方,就会造成死锁的情况,所以协议在这里规定了 VALID 信号的主动性。

2022-11-17 05:33:31 1267

原创 AMBA 总线历史

构的 Cortex-A5,A7,A8,A9,A12,A15,ARMV8 架构的 Cortex-A53,A57,AMBA 第三代总线在 2003 年发布,在 AMBA3.0 中,对 APB 规范做了升级,另外 AMBA5.0 也陆续升级了其他的协议版本,如 AXI5,ACE5,AHB5,采用,因此本文主要基于 AMBA3.0 版本的 AHB、APB、AXI 总线规范进行设计,A72,AMBA 总线拥有众多的第三方支持,被 ARM 公司的 90%以上的合作伙伴。

2022-11-17 05:30:29 690

原创 eMMC5.1

Data Strobe: 数据锁存线,该信号由 eMMC 设备产生,用于 HS400 模式下的输出。地,在进入 8 位模式后,设备立即断开线路 DAT1–DAT7 的内部上拉。在进入 4 位模式后,设备立即断开线路 DAT1、DAT2 和 DAT3 的内部上拉。CLK:时钟信号线,由 FPGA 提供,用于 FPGA 控制模块与 eMMC 设备之间的通。在 eMMC5.1 协议中,仅对外部接口模块和内部控制器的功能和时序作了统一的规。模式:用于初始化模式的开漏和用于快速命令传输的推拉。

2022-11-17 05:22:44 2121

转载 DMA详解

DMA的英文拼写是“Direct Memory Access”,汉语的意思就是直接内存访问。DMA既可以指内存和外设直接存取数据这种内存访问的计算机技术,又可以指实现该技术的硬件模块(对于通用计算机PC而言,DMA控制逻辑由CPU和DMA控制接口逻辑芯片共同组成,嵌入式系统的DMA控制器内建在处理器芯片内部,一般称为DMA控制器,DMAC)。

2022-11-17 05:03:53 1868

原创 安装 candence

Ubuntu20.04 安装Cadence IC617(HotFix),Spectre,Calibre,Xceliummain安装synopsys EDA工具vcs+verdi license生成器Synopsys EDA Tools的安装 VCS2016+verdi2016+SpyGlass2016+Primetime2016+Formality2015Ubuntu18.04 LTS 安装 Synopsys VCS+Verdi问题解决

2022-11-15 16:47:47 260

转载 Vivado常见问题之实验箱连接出错 [Labtoolstcl 44-494] There is no active target available for server at localhost.

后来自己摸索了一下,发现竟然神奇般的解决了,而且屡试不爽。首先说一下我的实验环境,Win10系统,Vivado2018.3,电脑是联想ThinkPad系列,实验箱是龙芯中科生产的,型号为LS-CPU-EXB。6.Open target–> Auto Connect,重新进行连接,发现可以连接上了,下图为连接成功之后的样子。此方法对我的电脑有效,我也用我同学的电脑测试过一次,同样有效。3.上一步点了Open New Target后会出现下面的界面,点击Next。1.出现下面的错误之后,点击OK,回到主界面。

2022-11-13 20:02:17 3456 6

原创 万能串口驱动 USB20TORS232

https://softdown01.rbread04.cn/down/USB20TORS232.zip?timestamp=63708a04&auth_key=5b13d0dacd4a2952c9529ea0e289c5dcUSB20TORS232 下载链接

2022-11-13 18:36:15 394

原创 永久挂载 硬盘 linux 命令 df -h 查不到新添加的硬盘

主教程1副教程2副教程

2022-11-11 14:45:08 177

原创 我要上网啊

https://matnoble.me/tech/tofreeworld/

2022-11-11 12:13:53 125

原创 zynq soc 计划

文档git论文知乎nvdlaesp

2022-11-10 21:57:58 221

转载 论 做 AI 芯片的正确姿势

因为种种原因中断了自己的几个 AI 项目后,我去做了 AI 芯片以求一个 huge bless。也尝试了很多(ppt、code、optimize、AI 算法、IDE、软件、IP、架构),但终觉姿势不对而修不得。知之真切笃实处即是行,行之明觉精察处即是知。目前市面上号称 AI 芯片的公司百家不止,流片成功的也有不少,关于 AI 芯片的文章亦是全网乱飞,但大多对藏在细节里的魔鬼不惊不扰。同时看到不少关于 AI 芯片开源工程介绍,感觉更到位。

2022-11-09 20:36:24 1501

转载 Chrome 浏览器自带 谷歌翻译 再次失效/用不了的最新解决方法之二(10月22日)

9 月底谷歌关闭国内版翻译后,很多人用不了 Chrome 自带的全页翻译功能,我当时写了个教程:西柚秀:「技巧」Chrome 浏览器自带 谷歌翻译 失效/用不了/打不开 的解决方法之一258 赞同 · 251 评论文章不过可惜的是,谷歌目前在陆续关闭国内服务器上的谷歌翻译接口服务,因此 10月20日 后有大量用户向我反馈该解决方法已失效,折腾研究了两天后,终于有了一些想法,于是大半夜第一时间写个简单教程分享出来~目前想到了两个方法,均测试有效,为:找可用的谷歌国外 IP、重定向至第三方加速地址。

2022-11-09 19:41:17 1030

转载 Rocket-chip学习基础篇

系统软硬件协同设计实战指南 第2版》一书的第13章节 编译U-boot时会遇到2个错误。原因很简单,就从一开始的错误提示着手: fatal error: openssl/evp.h: 没有那个文件或目录。当然在网上也可以搜索到相关的解决方法。在此仅作为记录:如果你在编译时遇到这个错误,这可能是下面的原因:你尝试编译的程序使用OpenSSL,但是需要和OpenSSL链接的文件(库和头文件)在你Linux平台上缺少。因为原书貌似用的是Ubuntu12.04而我用的是14.04.所以要自己安装相关的文件。

2022-11-08 17:49:38 161

转载 编译u-boot 报错 openssl/evp.h: No such file or directory

系统软硬件协同设计实战指南 第2版》一书的第13章节 编译U-boot时会遇到2个错误。原因很简单,就从一开始的错误提示着手: fatal error: openssl/evp.h: 没有那个文件或目录。当然在网上也可以搜索到相关的解决方法。在此仅作为记录:如果你在编译时遇到这个错误,这可能是下面的原因:你尝试编译的程序使用OpenSSL,但是需要和OpenSSL链接的文件(库和头文件)在你Linux平台上缺少。因为原书貌似用的是Ubuntu12.04而我用的是14.04.所以要自己安装相关的文件。

2022-11-08 17:48:13 2077

原创 vivado链接不上开发板最有可能原因

工程开发的时候,往往会遇到这样的情况:明明我们的FPGA电路板和我们的计算机之间的物理链接没有任何问题,但是vivado就是识别不到我们的开发板。这个时候很有可能是vivado软件安装时候自带的一个驱动文件install_digilent.exe 没有安装成功,或者安装成功但是又被其它的第三方电脑管理软件错误卸载了。这个时候我们只需要到自己计算机vivado软件安装路径文件里边把install_digilent.exe文件重新安装一次即可。电脑中的install_digilent.exe被别的软件卸载了。

2022-11-07 16:40:43 2829

原创 e book website

全球大部分的网站,凡是带有.org、.com、.net域名的,都是由两家美国注册管理机构VERISIGN和PIR管理的,理论上美国司法部的一纸禁令可以没收掉任何一个网站。既然接受了人家的互联网霸权,就要接受人家把这种霸权折现的一天。等Zlibrary换一个“.ru”的域名烈火重生。虽然理论上,人家也可以直接没收整个“.ru”顶领域。伊朗的Presstv被禁的时候,可能没有人想到第二个受害者会是一家小小的电子书分享平台。发布于 2022-11-04 20:07。其次,“没收一个地址是怎么做到的。

2022-11-05 11:15:31 518

原创 arm 体系架构前沿p5

技术很好的迎合了市场的需要,并不是因为资源和经验丰富的小组实行了认真的计划和深思熟虑的决定来产生优化的解决方案,而是因为弱小,无经验的小组别无选择,只有进行小型且简单的设计,而这恰好是正确的答案,这不是运气,是天道

2022-11-04 13:06:31 60

原创 半导体初创企业中的RISC-V

目前,ARM体系架构共定义了8个版本,从版本1到版本8,ARM体系的指令集功能不断扩大,不同系列的ARM处理器,性能差别很大,应用范围和对象也不尽相同,但是,如果是相同的ARM体系架构,那么基于它们的应用软件是兼容的。当我们拿到一个新的SOC的datasheet,首先就要根据这个架构,来查看SOC的RAM空间、时钟频率、包括哪些外部设备的控制器,各个外设控制器的操作原理,各个外设对GPIO的引脚复用情况、各个控制器的SFR地址、中断控制器是如何管理众多中断源的等等。这就是典型的冯诺依曼系统。

2022-11-04 12:20:25 754

转载 ARM-CPU工作原理,基于ARM的SOC讲解

目前,ARM体系架构共定义了8个版本,从版本1到版本8,ARM体系的指令集功能不断扩大,不同系列的ARM处理器,性能差别很大,应用范围和对象也不尽相同,但是,如果是相同的ARM体系架构,那么基于它们的应用软件是兼容的。当我们拿到一个新的SOC的datasheet,首先就要根据这个架构,来查看SOC的RAM空间、时钟频率、包括哪些外部设备的控制器,各个外设控制器的操作原理,各个外设对GPIO的引脚复用情况、各个控制器的SFR地址、中断控制器是如何管理众多中断源的等等。这就是典型的冯诺依曼系统。

2022-11-04 11:37:45 1504

原创 linux umount用法

如果设备正忙,卸载即告失败。

2022-11-03 21:56:57 157

转载 Running a RISC-V Processor on the Arty A7

【代码】Running a RISC-V Processor on the Arty A7。

2022-11-03 14:57:23 211

转载 到底什么是Cortex、ARMv8、arm架构、ARM指令集、soc?一文帮你梳理基础概念【科普】

3、ARM处理器的内核是统一的,由ARM公司提供,而片内部件则是多样的,由各大半导体公司设计,这使得ARM设计嵌入式系统的时候,可以基于同样的核心,使用不同的片内外设,从而具有很大的优势。不同的SOC,架构不同(就是CPU如何和IP联系起来,有的以总线为核心,有的以DDR为核心)。其实就像我写了一篇文章,我告诉甲,你可以拿去修改后使用,便是架构层级授权,我告诉乙,你可以在你的文章中引用我的文章,便是内核级授权,我告诉丙,你只能对我的文章进行转发,不能更改,不能添油加醋,便是使用层级授权。

2022-10-31 23:10:03 3594 2

转载 RISCV学习笔记5.4--ubuntu18.04安装vivado

link

2022-10-30 15:41:03 132

原创 vivado的license

【代码】vivado的license。

2022-10-28 14:30:05 4616 2

原创 RISCV学习笔记5.4--ubuntu18.04安装vivado

今天就到了安装的时候啦。正点原子的达芬奇pro的教程使用的是vivado的2019.2的window版本,为了软件的兼容性,在ubuntu下我们依然安装vivado的2019.2版本。

2022-10-28 13:37:45 92

原创 2022年末经济局势总结

芯片 编译器 操作系统同时 构造自己的机器人系统。

2022-10-26 13:13:34 511

原创 ERROR: default sources list file already exists: /etc/ros/rosdep/sources.list.d/20-default.list

【代码】ERROR: default sources list file already exists: /etc/ros/rosdep/sources.list.d/20-default.list。

2022-10-25 21:57:48 1107

原创 解决opencv-python 在2k采集模式下,录制问题

问题:opencv-python 在2k采集模式下,画面卡顿厉害,而且录制成功后出现加速播放的效果,实际时常和录制时长相差太大。1:很多摄像头在高分辨率的情况下都不到15帧,以MJPG格式解码能达到30帧。经过几天的研究,发现只要设置几个地方,就能解决这个问题。2:保存的格式要和设置的格式一致。

2022-10-19 16:17:17 900

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除