草庐IT

ic_launcher

全部标签

【数字IC设计/FPGA】FIFO与流控机制

流控,简单来说就是控制数据流停止发送。常见的流控机制分为带内流控和带外流控。FIFO的流水反压机制一般来说,每一个fifo都有一个将满阈值afull_value(almostfull)。当fifo内的数据量达到或超过afull_value时,将满信号afull从0跳变为1。上游发送模块感知到afull为1时,则停止发送数据。在afull跳变成1后,fifo需要能够缓存路径上的data以及上游发送模块停止发流之前发出的所有data。这就是fifo的流控机制。下图是fifo流控机制的示意图。如下图所示,数据data和有效信号vld从模块A产生,经过N拍延时后,输入到FIFO,FIFO产生将满信号a

【数字IC精品文章收录】近500篇文章-学习路线-基础知识-接口-总线-脚本语言-芯片求职-安全-EDA-工具-低功耗设计-Verilog-低功耗-STA-设计-验证-FPGA-架构-AMBA-书籍-

数字IC全站文章索引demo版(建议收藏慢慢看)*一、项目说明*1.1索引目的1.2收录原则1.3投稿方式1.4版本迭代二、数字IC学习路线三、通用技能篇*3.1数字电路3.2硬件描述语言(Verilog)3.3linux操作系统3.4C语言3.5微机原理3.6汇编语言3.7计算机组成原理3.8计算机体系架构3.9STA静态时序分析3.10SystemVerilog3.11UVM3.12SVA3.13信号与系统3.14数字信号处理四、总线、接口与协议*4.1UART协议4.2SPI协议4.3I2C协议4.4AMBA协议*4.4.1AHB4.4.2APB4.4.3AXI4.4.4AXI-stre

【FPGA/IC】CRC电路的Verilog实现

前言在通信过程中由于存在各种各样的干扰因素,可能会导致发送的信息与接收的信息不一致,比如发送数据为1010_1010,传输过程中由于某些干扰,导致接收方接收的数据却成了0110_1010。为了保证数据传输的正确性,工程师们发明了一些检错方法,比如奇偶校验和CRC校验。CRC校验(CyclicRedundancyCheck,循环冗余校验)是数据传输过程中常用的一种检错方法,针对要发送的数据,其使用一些特定的多项式可以计算出CRC检验结果,CRC校验结果与原始数据一起传输到接收端。接收端在接收数据的同时按照相同的多项式对接收数据进行校验预算,并将校验结果和接收的结果进行对比,如果二者相同则认为没有

OpenHarmony系统解决方案 - 配置屏幕方向导致开机动画和Launcher显示异常

问题现象配置设备默认方向,例如修改为横屏显示,修改文件display_manager_config.xml的buildInDefaultOrientation参数值为2(Orientation::HORIZONTAL)。源码中文件位于foundation/window/window_manager/resources/config/rk3568/display_manager_config.xml。系统中文件位于/etc/window/resources/display_manager_config.xml。系统启动后开机动画横竖屏切换,Launcher显示异常(偶现,去掉锁屏应用和锁屏服务后

【FPGA/IC】RAM-Based Shift Register Xilinx IP核的使用

前言一般来讲,如果要实现移位寄存器的话,通常都是写RTL用reg来构造,比如1bit变量移位一个时钟周期就用1个reg,也就是一个寄存器FF资源,而移位16个时钟周期就需要16个FF,这种方法无疑非常浪费资源。XilinxFPGA的SLICEM中的一个查找表LUT可以配置为最多移位32个时钟周期的移位寄存器,这比直接用FF来搭省了31个FF资源。这种方法可以通过调用原语SRL16E(最多16个周期)和SRLC32E(最多32个周期)来实现。SRL16E#(.INIT(16'h0000),//Initialcontentsofshiftregister.IS_CLK_INVERTED(1'b0)

位置和url_launcher插件之间的冲突

我正在开发一个应用程序,该应用程序围绕用户的位置找到兴趣点。要获取用户的位置,我使用地点插件非常好。我要实现的下一件事是一个按钮,可以打开默认映射应用程序,以导航用户到POI。我使用url_launcher插件和Android和地图的GEO:URL方案:iOS方案。彼此独立于两个插件按预期工作。一旦我在项目中都有两个插件开始,问题就开始了。使用的默认设置fluttercreate我收到以下错误:Launchinglib/main.dartoniPhone6indebugmode...Runningpodinstall...CocoaPods'output:↳PreparingAnalyzing

数字IC手撕代码-握手信号(READY-VALID)

 前言:        本专栏旨在记录高频笔面试手撕代码题,以备数字前端秋招,本专栏所有文章提供原理分析、代码及波形,所有代码均经过本人验证。目录如下:1.数字IC手撕代码-分频器(任意偶数分频)2.数字IC手撕代码-分频器(任意奇数分频)3.数字IC手撕代码-分频器(任意小数分频)4.数字IC手撕代码-异步复位同步释放5.数字IC手撕代码-边沿检测(上升沿、下降沿、双边沿)6.数字IC手撕代码-序列检测(状态机写法)7.数字IC手撕代码-序列检测(移位寄存器写法)8.数字IC手撕代码-半加器、全加器9.数字IC手撕代码-串转并、并转串10.数字IC手撕代码-数据位宽转换器(宽-窄,窄-宽转换

【IC设计】ZC706板卡点灯入门(含Verilog代码,xdc约束,实验截图)

文章目录假定已知的前置知识需求:注意点:代码实现:顶层模块led闪烁模块xdc约束这篇博客将针对AMDZynq7000SoCZC706EvaluationKit板卡(对应Vivado创建工程时FPGA型号:XC7Z045ffg900-2)实现基本的点灯程序。假定已知的前置知识本文对以下内容不再介绍,使用Vivado进行综合、实现、生成比特流并烧录FPGAFPGA的概念、Verilog的基础语法需求:板卡时钟为200MHz,让板子上的一个LED灯保持0.5秒亮,0.5秒灭。注意点:①板卡使用JTAG接口烧录时,必须将SW4拨为01,如图所示:②ZC706的时钟都是差分时钟,必须使用Verilog

【数字IC手撕代码】Verilog无毛刺时钟切换电路|题目|原理|设计|仿真

芯片设计验证社区·芯片爱好者聚集地·硬件相关讨论社区·数字verifier星球四社区联合力荐!近500篇数字IC精品文章收录!【数字IC精品文章收录】学习路线·基础知识·总线·脚本语言·芯片求职·EDA工具·低功耗设计Verilog·STA·设计·验证·FPGA·架构·AMBA·书籍Verilog无毛刺时钟切换电路一、前言二、题目三、原理3.1有毛刺时钟切换3.2无毛刺时钟切换四、RTL设计五、仿真六、仿真分析一、前言本系列旨在提供100%准确的数字IC设计/验证手撕代码环节的题目,原理,RTL设计,Testbench和参考仿真波形,每篇文章的内容都经过仿真核对。快速导航链接如下:1.奇数分频

数字IC与模拟IC到底哪个更适合你?一文为你讲清楚(内附学习视频)

选数字IC还是模拟IC?这是很多同学进入IC行业的一个难题,后台也有很多同学问模拟IC和数字IC的区别。本文就从大家比较关心的内容入手,分析这两个方向的异同。(文末有免费学习视频哦~)这里放个入口:IC入行了解分别研究什么?首先要有模拟信号和数字信号的概念。在时间和幅值上都是连续的信号,就是模拟信号。而在时间和幅值上均离散(不连续)的信号,就叫数字信号。相应的,处理模拟信号的电子电路就是模拟电路,处理数字信号的就是数字电路。模拟电路一般研究的重点是信号在处理过程中的波形变化以及器件和电路对信号波形的影响。所追求的并不是最高的工艺节点,而是工艺、设计、版图、模型、封装等所有产业链上面各个部分的完