数字IC
文章平均质量分 65
IC学习者
没毕业,没有工作经验。对知识有好奇心,希望能涉猎多一些技术,记录自己的学习过程。
展开
-
逻辑运算的实现(汇总)
从卡诺图可以看出,当A = 1时,Y= B’;当A = 0时,Y= B。当 A = 0时,Y = B’;当A = 1时, Y = B。加上一个非门,两个mux可以实现异或。关键词,有1则1,有0则0。原创 2022-09-21 22:28:49 · 1071 阅读 · 0 评论 -
数字IC入门基础(汇总篇)
5)一致性验证(Formality)Synopsys的Formality。3)逻辑综合(DC)Synopsys的Design Compiler。3)时钟树综合 Synopsys的Physical Compiler。4)静态时序分析(PT)Synopsys的Prime Time。1)DFT Synopsys的DFT Compiler。6)版图物理验证 Synopsys的Hercules。2)布局规划 Synopsys的Astro。4)布线 Synopsys的Astro。2)功能仿真(VCS+Verdi)原创 2022-09-19 15:13:59 · 6143 阅读 · 1 评论 -
时钟有关概念汇总
时钟抖动,英文名叫做 Clock Jitter,是相对于理想时钟沿实际时钟存在不随时间积累的、时而超前、时而滞后的偏移称为时钟抖动(时钟脉冲宽度发生暂时变化,也就是 T cycle【时钟周期】 或大或小)。时序分析工具通过 Worst corner 来保证建立时间的时序,通过 Best corner 来保证保持时间的时序。时钟偏差, Clock Skew,是指同一个时钟域内的时钟信号到达数字电路各个部分(一般是指寄存器)所用时间的差异。建立时间:在时钟上升沿之前数据必须稳定的最短时间。原创 2022-09-19 12:00:40 · 953 阅读 · 0 评论 -
芯动力——硬件加速设计方法——学习笔记(1)
先加后选替换成先选后加,将加法器替换为选择器,节省了面积,但是控制通道的延迟增加。可是真正分析代码以后才明白,中间的选择器是为了保持之前的功能,很有必要。晶圆厂,无晶圆设计公司,EDA,设计服务,IP供应商,集成设计与制造。首先向邸志雄老师致谢,他的课讲得很好,本文只是他课程的学习笔记。适用于计数器的场景,等于运算符消耗的资源小于比较运算符。上面的图,初看可能感觉中间的选择器是多余的。使能信号只是使输出不再变化,时钟还是在变的。把延迟大的分支拿出来,放在靠近出口的位置。吧的信号来得晚,所以放在靠后的位置。原创 2022-09-19 00:03:22 · 793 阅读 · 0 评论 -
邸老师的时序分析笔记
若是向外部输出,输出的最大延时可以视为Tcomb(因为也是到达时间的一部分),此时不用考虑Tsu。若是向外部输出,输出的最小延时可以视为Tcomb(因为也是到达时间的一部分),此时不用考虑Thu。若是从外部输入而来,外部输入的最大值可以视为Tcomb(因为是到达时间的一部分)若是从外部输入而来,外部输入的最小值可以视为Tcomb(因为是到达时间的一部分)建立的数据是上一个时钟出来的,这个时钟的数据还没出来。这个时钟的数据,应该在上个时钟的数据保持完以后再变化。原创 2022-09-17 15:26:25 · 492 阅读 · 0 评论 -
低功耗学习记录
短路功耗(Internal Power ):CMOS在翻转过程中,PNMOS管同时导通小号的功耗(无效功耗)系统级,可以把数据从DDR放到SRAM,可以实现更低功耗。工艺越先进,电压越低,功耗也越低,时钟频率越来越高。DVS,DVFS,AVS,AVFS 动态电压调整。在漏和栅和衬底的三角区加绝缘介质来减小漏电流。翻转功耗:对负载电容进行充放电时消耗的功耗。I3 栅极漏电流,栅漏之间感应漏电流。后面讲的比较敷衍,也没有记下什么。工艺越先进,漏电流越大。原创 2022-09-15 16:40:37 · 658 阅读 · 0 评论 -
线性反馈移位寄存器的输出(未解出)
有几个寄存器,就是几级线性反馈移位寄存器一个n级的LFSR最多只能存储2^n-1种状态(这里是减去了LFSR中全为0的情况。因为当LFSR中只有000时,这是反馈函数反馈回的值也永远是0,输出序列将一直是0)一个n级LFSR的最大周期就是2n-1。我们把周期为2n-1的LFSR所生成的序列称为m序列。原创 2022-09-12 22:09:57 · 1590 阅读 · 0 评论 -
格雷码与普通二进制码的相互转换——学习笔记
文章中内容与图片大部分来自Reference,本文只是以方便自己理解的方式进行整理。原创 2022-09-12 21:21:51 · 2168 阅读 · 0 评论 -
将for循环从c转成verilog
将下面C函数改写成Verilog/VHDL代码。既然由于时序产生问题,为何不用组合呢?脑子想出来的代码是这样的。改完以后,啥毛病没有。原创 2022-09-08 21:50:30 · 683 阅读 · 0 评论 -
使用3个寄存器产生011序列
据我理解,应该有万能的公式,但是我不会,就枚举了一下首先,如果只有一个非是不行的,那会产生000111的序列如果没有非的话,就是0序列如果全部都是非的话,也不行,那样就等效于一个非所以是两个非reg clk;reg rst_n;clk = 0;rst_n = 0;endq3原创 2022-09-08 19:31:55 · 204 阅读 · 0 评论 -
从电路设计的角度入门VerilogHDL——学习记录
互连(connectivity ): wire型变量描述各个模块之间的端口与网线连接关系。时间(time):定义了绝对和相对的时间度量,可综合操作符具有物理延迟。并发(concurrency):可以有效地描述并行的硬件系统。取值时,需要先将存储单元取到寄存器,再对具体的位进行操作。Cell的内部是Pin,外部连的都是net。对于LATCH,如果D有毛刺,那么Q也有。两个加法一个选择与两个选择一个加法。延时在仿真时有效,逻辑综合时忽略掉。parameter最好给定位宽。例化的称为Cell(UX)原创 2022-09-02 12:09:16 · 289 阅读 · 0 评论 -
AHB与APB的接口 学习记录
如果数据总线在读取传输的设置周期中处于三态,并且每当总线处于空闲状态时,则在数据的不同驱动器之间总是发生整个时钟周期的转换。对于写入传输的突发,由于桥接器将在每次传输的设置周期中驱动数据,因此不存在周转,但这是完全可以接受的,因为桥接器是用于写入传输的数据总线的唯一驱动器,因此不需要周转期。事实上,在基于处理器的设计中,写后读并不经常发生,因为处理器将在两次传输之间执行指令提取,并且指令存储器不太可能驻留在APB上。桥接器负责对传输的地址和数据进行采样,然后在APB上的写传输期间保持这些值。...原创 2022-08-29 18:26:50 · 641 阅读 · 0 评论 -
横向进位阵列乘法器与 流水线横向进位阵列乘法器 Verilog
本文的知识来源于华中科技大学,谭志虎教授的计算机硬件系统设计,向他致敬原创 2022-08-08 21:55:13 · 684 阅读 · 0 评论 -
加法器与减法器verilog
减法器中也有类似于半减器、全减器、串行借位减法器之类的,但是为了实现简单和复用代码,计划采用加法器来实现减法器。原创 2022-08-07 16:42:19 · 5266 阅读 · 0 评论 -
verilog中的符号优先级
代码】verilog中的符号优先级。原创 2022-08-07 11:09:56 · 1011 阅读 · 0 评论 -
串行进位加法器与超前进位加法器 verilog
在vivado中被优化的不成样子,且vivado似乎不支持通过WIDTH的方式进行传参,但Modelsim支持的非常完美。原创 2022-08-07 10:55:27 · 1847 阅读 · 0 评论 -
手撕Verilog PWM呼吸灯
占空比从0增加到分频参数/(分频参数+1)pwm的频率通过parameter传递,对clk按(分频参数+1)进行分频,原创 2022-07-30 17:51:33 · 349 阅读 · 0 评论 -
基于verilog的CRC校验(汇总)
本来想整理一下关于CRC校验的内容,但是发现前辈们写的都很好,本文对内容进行整理汇总。原创 2022-07-29 17:16:12 · 7657 阅读 · 3 评论 -
FIFO深度计算学习记录(汇总)
本来打算整理一下自己的学习笔记,但是前辈们的笔记已经很详细了,所以就直接摘录了,所有来源均已标注。原创 2022-07-28 17:35:02 · 1567 阅读 · 0 评论 -
一段式、两段式和三段式状态机
这里写自定义目录标题一段式两段式三段式这张图片是mealy型状态机的结构,Moore型类似,输出与输入无关。一段式module moduleName ( input clk, input rst_n, input in, output reg [3:0] out);localparam s1=4'd0, s2=4'd1, s3=4'd2, s4=4'd3, s5=4'd4;reg [3:0] cur_state;reg [3:0] next_state;always @(po原创 2022-05-13 21:44:41 · 860 阅读 · 0 评论 -
AMBA APB学习记录(AMBA 3/4)
APB自发布以来,已经经过了多个版本的迭代最初的版本已经过时,目前使用的是三个修订版本amba2版本定义的是最简单的apbamba3相对2添加了PREADY/PSLVERR信号amba4相对3添加了PPROT/PSTRB信号本文实现了amba3定义的apb,即带PREADY/PSLVERR信号AMBAAPB学习记录(AMBA2.0)......原创 2022-07-28 14:27:16 · 594 阅读 · 0 评论 -
AMBA APB学习记录(AMBA 2.0)
APB自发布以来,已经经过了多个版本的迭代最初的版本已经过时,目前使用的是三个修订版本amba2版本定义的是最简单的apbamba3相对2添加了PREADY/PSLVERR信号amba4相对3添加了PPROT/PSTRB信号本文实现了amba2定义的apb。............原创 2022-07-28 11:27:17 · 688 阅读 · 0 评论 -
数学推理题:张王李赵陈五对夫妇聚会,见面握手
7号和0没握,和自己的夫妻没握,和其他人都握了。所以,剩下的人中(654321),每个人至少握了2次(与8、7),只有夫妻可以握1次。6号和0/1、自己夫妻没握,和其他人都握了,所以剩下的人中(5432),每个人都至少握了3次(与8、7、6),只有夫妻可以只握2次。8号和四对夫妻都握了手,(76543210),所以其他四对夫妻至少握了1次,只有8的夫妻可以1次不握。可以得到,王太太的4和前面的数据吻合。6和2是夫妻,2握了8、7。7和1是夫妻,1握的是8。...原创 2022-07-26 23:28:36 · 16094 阅读 · 0 评论 -
Fsm onehot 答题记录
题目没啥问题,只是没有描述清楚要求。在一遍遍的提交过程中逐渐明晰可以看ifdef的三种情况。原创 2022-07-25 23:56:12 · 242 阅读 · 0 评论 -
vcs与verdi学习记录
在波形窗口对信号进行Drag,在代码窗口进行Drop,可实现波形信号在代码窗口中的定位。-y指定一个库文件目录,目录下的文件名和module名要一致,且要用+libext+来指定文件类型,这里的.v文件里面就只能放一个和文件名同名的module,VCS会来这个目录下找源代码中例化的但在源代码中找不到的module。-v指定一个.v格式的库文件,VCS会来这个文件中找源代码中例化的但在源代码中找不到的module,这里一个文件可以里面包含很多module。这里只是简单提及,避免混淆。...原创 2022-07-21 13:34:20 · 8635 阅读 · 1 评论 -
以SPI的仿真文件学习TB写法
例化和复位与时钟信号的产生都是老生常谈,主要看task的产生和调用,与结果的检验。最后的等待ready高电平没有看懂,可能是为了健壮性。中间的begin和end大胆猜测,不要也罢。task的调用格式类似与c语言中的带参函数。等待时钟边沿==(不知道为啥用下降沿)==定义了他上课,名字为spi_cmd。wait表示等待ready为高电平。等待下一个时钟沿后发送结束信号。带输入参数,写在begin前。#时间后面的分号可加可不加。判断数据是否与输入数据一致。发送开始信号和相应数据。定义错误标志并赋初值。...原创 2022-07-19 14:55:20 · 667 阅读 · 2 评论 -
AMBA3 AHB-Lite学习笔记
这里写自定义目录标题AHBsignalsMASTERHTRANSHSIZEHBRUSTDecoderHSELxSlave响应HREADYHRESPARBITERHBUSREQHLOCKxHGRANTxHMASTERHMASTERLOCKHSPLITreferenceAHBsignalsMASTERHTRANS00 闲置两次burst之间的无效,下一次换新的burst01 忙碌两次burst之间的无效,下一次为同样的burst10 非连续突发的第一次传输或单个传输。地址和控制信号与之原创 2022-05-20 15:50:00 · 2742 阅读 · 0 评论 -
手撕RAM(单端口,简单双端口,真双端口)
这里写自定义目录标题单端口rtlsim简单双端口rtlsim真双端口rtlsim单端口rtlmodule hand_ram_sp #( parameter DATAWIDTH =8 , parameter ADDRSIZE =8)( input clka , input ena , input wea , input [ADDRSIZE-1:0] addra , input [DATAWIDTH-1:0] dina , ou原创 2022-05-18 20:31:58 · 605 阅读 · 0 评论 -
【开卷】第一期:2022海思提前批数字芯片(做题笔记)
这里写自定义目录标题知识点总结(未完待续)1 亚稳态毛刺竞争与冒险3 综合(synthesis)4 two 功能覆盖率与代码覆盖率6 STA7 格雷码1213单选题(2分)1.关于亚稳态的描述错误的是()2.一段程序如下,请问在45这个时刻上,A B的值各是多少()3.下列关于综合的说法哪项是不正确的()4.当功能覆盖率(Functional Coverage)达到100%,可以说明:()5.使用相同时钟沿的同步数字电路,以下因素和最高工作频率无关的是:( )6.同步电路设计中出现setup time不满足原创 2022-03-29 16:07:01 · 5123 阅读 · 0 评论